/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-800:oklch(47.6% .114 61.907);--color-green-100:oklch(96.2% .044 156.743);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-800:oklch(44.8% .119 151.328);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-lg:32rem;--container-4xl:56rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:var(--color-primary,#1d3557);--color-secondary:var(--color-secondary,#457b9d);--color-accent:var(--color-accent,#e63946);--color-brand-primary:#1d3557;--color-brand-secondary:#457b9d;--color-brand-accent:#e63946;--color-surface-light:#f1faee;--color-surface-muted:#a8dadc;--color-warm-cream:#faf8f5;--color-warm-sand:#f5f0e8;--color-text-body:#5a6672;--color-bg:var(--color-bg,#faf8f5);--color-surface:var(--color-surface,#fff);--color-border:var(--color-border,#e5e7eb);--color-text:var(--color-text,#1d3557);--color-text-muted:var(--color-text-muted,#5a6672);--color-heading:var(--color-heading,#1d3557);--color-link:var(--color-link,#e63946);--color-button-bg:var(--color-button-bg,#e63946);--color-button-text:var(--color-button-text,#fff);--color-success:var(--color-success,#16a34a);--color-success-light:#ecfdf5;--color-success-dark:#065f46;--color-success-border:#a7f3d0;--color-warning:var(--color-warning,#f59e0b);--color-warning-light:#fef3c7;--color-warning-dark:#92400e;--color-danger:var(--color-danger,#dc2626);--color-danger-light:#fef2f2;--color-danger-dark:#991b1b;--color-danger-border:#fecaca;--font-heading:"Cormorant Garamond",Georgia,serif;--font-body:"Source Sans 3",system-ui,sans-serif;--shadow-card:0 4px 6px -1px #1d355712,0 2px 4px -1px #1d35570a;--shadow-card-hover:0 20px 40px -12px #1d355733;--shadow-elevated:0 25px 50px -12px #1d355726;--radius-card:var(--card-radius,0);--width-container:var(--max-width,1200px)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{font-size:var(--font-base-px,16px);scroll-behavior:smooth;line-height:1.6}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);letter-spacing:.01em;font-weight:400}body:before{content:"";opacity:.03;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");position:fixed;inset:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-heading);letter-spacing:-.02em;font-weight:600;line-height:1.2}a{color:var(--color-link);text-decoration:none}a:hover{text-decoration:underline}}@layer components{.container{max-width:var(--width-container);margin-inline:auto;padding-inline:1rem}.btn{letter-spacing:.08em;text-transform:uppercase;font-size:.9rem;font-weight:500;font-family:var(--font-body);cursor:pointer;border:none;padding:1.1rem 2.8rem;text-decoration:none;display:inline-block;position:relative;overflow:hidden}.btn:hover{text-decoration:none}.btn.animated{transition:all .4s cubic-bezier(.16,1,.3,1)}.btn--primary{background:var(--color-brand-accent);color:#fff}.btn--primary:before{content:"";opacity:0;background:linear-gradient(135deg,#fff3 0%,#0000 50%);transition:opacity .3s;position:absolute;inset:0}.btn--primary:hover{transform:translateY(-3px);box-shadow:0 15px 40px #e6394659}.btn--primary:hover:before{opacity:1}.btn-primary{background:var(--color-brand-accent);color:#fff}.btn-secondary{background-color:var(--color-secondary);color:#fff}.btn-outline{border-style:var(--tw-border-style);border-width:2px;border-color:var(--color-primary);color:var(--color-primary);background-color:#0000}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.card-shadow{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.property-card{box-shadow:var(--shadow-card);aspect-ratio:4/3;position:relative;overflow:hidden}.property-card.animated{transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s cubic-bezier(.16,1,.3,1)}.property-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-8px)}.property-card__link{width:100%;height:100%;color:inherit;text-decoration:none;display:block;position:relative}.property-card__cover{position:absolute;inset:0;overflow:hidden}.property-card__cover img,.property-card__cover picture,.property-card__cover picture img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1)}.property-card:hover .property-card__cover img,.property-card:hover .property-card__cover picture img{transform:scale(1.05)}.property-card__cover--placeholder{background:var(--color-brand-primary,#1d3557);color:#ffffff4d;justify-content:center;align-items:center;display:flex}.property-card__overlay{pointer-events:none;background:linear-gradient(#0000 30%,#0006 60%,#000c 100%);transition:background .4s;position:absolute;inset:0}.property-card:hover .property-card__overlay{background:linear-gradient(#0000001a 25%,#00000080 55%,#000000d9 100%)}.property-card__shortlist{z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;cursor:pointer;will-change:transform;background:#00000073;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:background .2s,box-shadow .2s,transform .15s;display:flex;position:absolute;top:1rem;left:1rem}.property-card__shortlist:hover{background:#0009;transform:scale(1.05)}.property-card__shortlist--active{background:var(--color-accent,#e63946);box-shadow:0 2px 8px #e6394666}.property-card__shortlist--active:hover{background:var(--color-accent,#e63946)}@supports (color:color-mix(in lab, red, red)){.property-card__shortlist--active:hover{background:color-mix(in srgb,var(--color-accent,#e63946)85%,black)}}.property-card__shortlist--active svg{fill:#fff;stroke:#fff}@media (pointer:coarse){.property-card__shortlist{width:44px;height:44px}}.property-card__badge{z-index:2;letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:.4rem .75rem;font-size:.65rem;font-weight:600;position:absolute;top:1rem}.property-card__badge--availability{background:var(--color-border,#e2e8f0);color:var(--color-primary,#1d3557);left:auto;right:1rem}.property-card__badge--available{background:var(--color-border,#e2e8f0);color:var(--color-primary,#1d3557)}.property-card__badge--unavailable{background:var(--color-danger,#dc2626)}@supports (color:color-mix(in lab, red, red)){.property-card__badge--unavailable{background:color-mix(in srgb,var(--color-danger,#dc2626)95%,transparent)}}.property-card__badge--unavailable{color:#fff}.property-card__content{z-index:2;color:#fff;padding:1.5rem;position:absolute;bottom:0;left:0;right:0}.property-card__name{font-family:var(--font-heading);color:#fff;text-shadow:0 2px 4px #0000004d;margin-bottom:.5rem;font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:500;line-height:1.2}.property-card__details{color:#ffffffe6;flex-wrap:wrap;gap:1rem;margin-top:.5rem;font-size:.85rem;display:flex}.property-card__details span{align-items:center;gap:.4rem;display:flex}.property-card__details svg{color:var(--color-frosted-blue,#a8dadc);flex-shrink:0;width:1rem;height:1rem}.property-card__rate{color:#ffffffe6;margin-top:.75rem;font-size:.95rem}.property-card__rate strong{color:#fff;font-size:1.25rem;font-weight:600}@media (min-width:640px) and (max-width:1200px){.property-card__content{padding:1rem}.property-card__name{margin-bottom:.25rem;font-size:clamp(.95rem,1.8vw,1.25rem)}.property-card__details{gap:.5rem;margin-top:.25rem;font-size:.75rem}.property-card__details svg{width:.85rem;height:.85rem}.property-card__rate{margin-top:.4rem;font-size:.8rem}.property-card__rate strong{font-size:1rem}}@media (max-width:640px){.property-card__content{padding:1rem}.property-card__name{margin-bottom:.25rem;font-size:1.1rem}.property-card__details{gap:.5rem;margin-top:.25rem;font-size:.75rem}.property-card__details svg{width:.85rem;height:.85rem}.property-card__rate{margin-top:.4rem;font-size:.8rem}.property-card__rate strong{font-size:1rem}}.property-card__title{color:#fff;margin-bottom:.5rem;font-size:1.5rem}.property-card__location{color:#fffc;font-size:.9rem}.block-hero{color:#fff;background-position:50%;background-size:cover;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.block-hero__overlay{background:linear-gradient(#1d355726 0%,#1d355766 100%),linear-gradient(135deg,#1d355766 0%,#0000 60%);position:absolute;inset:0}.block-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#457b9d4d 0%,#0000 70%);width:60%;height:60%;position:absolute;bottom:-20%;right:-10%}.block-hero--compact{background-color:var(--color-brand-primary,#1d3557);min-height:320px}.block-hero--compact:after{display:none}.block-hero--compact .block-hero__headline{margin-bottom:.75rem;font-size:clamp(2rem,5vw,3.5rem)}.block-hero--compact .block-hero__subheadline{margin-bottom:0}@media (max-width:768px){.block-hero--compact{min-height:240px}}.block-hero__content{z-index:10;text-align:center;max-width:900px;padding:2rem;position:relative}.block-hero__eyebrow{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;opacity:.85;color:var(--color-surface-muted);margin-bottom:1.5rem;font-size:.8rem;font-weight:500}.block-hero__headline{letter-spacing:-.03em;color:#fff;margin-bottom:1.5rem;font-size:clamp(3rem,8vw,5.5rem);font-weight:500;line-height:1.05}.block-hero__subheadline{opacity:.9;max-width:600px;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;font-size:clamp(1.1rem,2vw,1.35rem);font-weight:300;line-height:1.7}.block-rich-text{background:#fff;max-width:720px;margin:0 auto 4rem;padding:6rem 2rem}@media (max-width:768px){.block-rich-text{margin-bottom:2rem;padding:3rem 1.5rem}.block-rich-text h1{font-size:2rem}.block-rich-text h2{font-size:1.75rem}.block-rich-text p:first-of-type:first-letter{font-size:3rem}}.block-rich-text h1{font-family:var(--font-heading);color:var(--color-brand-primary);text-align:center;margin-bottom:1.5rem;font-size:3rem;font-weight:500}.block-rich-text h2{font-family:var(--font-heading);color:var(--color-brand-primary);text-align:center;margin-bottom:1.5rem;font-size:2.5rem;font-weight:500}.block-rich-text p{color:var(--color-text-body);margin-bottom:1.75rem;font-size:1.1rem;line-height:1.9}.block-rich-text p:first-of-type:first-letter{font-family:var(--font-heading);float:left;color:var(--color-brand-primary);padding-right:.75rem;font-size:4rem;font-weight:500;line-height:.8}.block-cta-ribbon{background:var(--color-brand-primary);text-align:center;margin-bottom:4rem;padding:5rem 2rem;position:relative;overflow:hidden}.block-cta-ribbon--accent{background:var(--color-brand-accent)}.block-cta-ribbon:before{content:"";pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.block-cta-ribbon__content{max-width:700px;margin:0 auto;position:relative}.block-cta-ribbon__message{font-family:var(--font-heading);color:#fff;margin-bottom:2rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:500;line-height:1.3}.block-cta-ribbon .btn--primary{color:var(--color-brand-primary);background:#fff}.block-cta-ribbon .btn--primary:hover{box-shadow:0 15px 40px #0003}.block-cta-ribbon--accent .btn--primary:hover{background:var(--color-brand-primary);color:#fff}@media (max-width:768px){.block-cta-ribbon{margin-bottom:2rem;padding:3rem 1.5rem}.block-cta-ribbon__message{margin-bottom:1.5rem;font-size:1.5rem}}.block-faq{background:var(--color-warm-cream);max-width:800px;margin:0 auto;padding:7rem 2rem}.block-faq__heading{text-align:center;color:var(--color-brand-primary);margin-bottom:3.5rem;font-size:clamp(2.5rem,5vw,3rem)}.block-faq__item{box-shadow:var(--shadow-card);will-change:box-shadow;background:#fff;margin-bottom:1rem;transition:box-shadow .3s;overflow:hidden}.block-faq__item[open]{box-shadow:var(--shadow-card-hover)}.block-faq__question{font-family:var(--font-heading);cursor:pointer;color:var(--color-brand-primary);justify-content:space-between;align-items:center;padding:1.5rem 2rem;font-size:1.25rem;font-weight:600;list-style:none;display:flex}.block-faq__question::-webkit-details-marker{display:none}.block-faq__question:after{content:"+";font-family:var(--font-body);color:var(--color-brand-secondary);font-size:1.5rem;font-weight:300;transition:transform .3s}.block-faq__item[open] .block-faq__question:after{transform:rotate(45deg)}.block-faq__answer{color:var(--color-text-body);padding:0 2rem 1.75rem;font-size:1.05rem;line-height:1.8}.faq-page__header{background:var(--color-warm-cream);text-align:center;padding:5rem 2rem 3rem}.faq-page__title{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1rem;font-size:clamp(2.5rem,5vw,3.5rem)}.faq-page__intro{max-width:640px;color:var(--color-text-body);margin:0 auto 2rem;font-size:1.125rem;line-height:1.8}.faq-page__nav{flex-wrap:wrap;justify-content:center;gap:.75rem;max-width:800px;margin:0 auto;display:flex}.faq-page__nav-pill{border:1px solid var(--color-brand-secondary);color:var(--color-brand-secondary);border-radius:9999px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.faq-page__nav-pill:hover{background:var(--color-brand-secondary);color:#fff}.faq-page__category{max-width:800px;margin:0 auto;padding:3rem 2rem 1rem;scroll-margin-top:6rem}.faq-page__category-title{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1.5rem;font-size:clamp(1.75rem,3vw,2.25rem)}.faq-page__cta{text-align:center;background:var(--color-warm-cream);margin-top:2rem;padding:4rem 2rem}.faq-page__cta-text{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1.5rem;font-size:clamp(1.5rem,3vw,2rem)}.faq-page__cta-btn{background:var(--color-brand-accent);color:#fff;border-radius:.375rem;padding:.875rem 2.5rem;font-weight:600;text-decoration:none;transition:opacity .2s;display:inline-block}.faq-page__cta-btn:hover{opacity:.9}.block-gallery{background:#fff;padding:7rem 2rem}.block-gallery__heading{text-align:center;color:var(--color-brand-primary);margin-bottom:3rem;font-size:2.5rem}.block-gallery__items{grid-template-columns:repeat(4,1fr);gap:1rem;max-width:1200px;margin:0 auto;display:grid}@media (max-width:768px){.block-gallery__items{grid-template-columns:repeat(2,1fr)}}.block-gallery__item{margin:0;position:relative;overflow:hidden}.block-gallery__item img{object-fit:cover;width:100%;height:280px;transition:transform .6s cubic-bezier(.16,1,.3,1)}.block-gallery__item:hover img{transform:scale(1.08)}.block-testimonial{background:var(--color-brand-primary);color:#fff;text-align:center;margin:0;padding:6rem 4rem;position:relative;overflow:hidden}.block-testimonial:before{content:"“";font-family:var(--font-heading);color:#ffffff08;pointer-events:none;font-size:20rem;line-height:1;position:absolute;top:1rem;left:50%;transform:translate(-50%)}.block-testimonial__quote{font-family:var(--font-heading);max-width:800px;margin:0 auto 2.5rem;font-size:clamp(1.5rem,3vw,2.25rem);font-style:italic;font-weight:400;line-height:1.6;position:relative}.block-testimonial__footer{flex-direction:column;align-items:center;gap:.25rem;display:flex}.block-testimonial__author{font-family:var(--font-body);letter-spacing:.05em;font-size:1rem;font-style:normal;font-weight:600}.block-testimonial__source{opacity:.6;font-size:.85rem;font-weight:300}.block-trust-stats{background:#fff;padding:6rem 2rem;position:relative}.block-trust-stats:before{content:"";background:linear-gradient(90deg,transparent,var(--color-brand-secondary),transparent);width:120px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.block-trust-stats__items{text-align:center;grid-template-columns:repeat(4,1fr);gap:2rem;max-width:1000px;margin:0 auto;display:grid}@media (max-width:768px){.block-trust-stats{padding:3rem 1.5rem}.block-trust-stats__items{grid-template-columns:repeat(2,1fr);gap:.5rem}.block-trust-stats__item{padding:.75rem .25rem}.block-trust-stats__value{font-size:2rem}.block-trust-stats__label{font-size:.65rem}}.block-trust-stats__item{padding:2rem 1rem;position:relative}.block-trust-stats__item:not(:last-child):after{content:"";background:linear-gradient(180deg,transparent,var(--color-surface-muted),transparent);width:1px;height:50%;position:absolute;top:50%;right:0;transform:translateY(-50%)}@media (max-width:768px){.block-trust-stats__item:nth-child(2):after{display:none}}.block-trust-stats__value{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:.5rem;font-size:4rem;font-weight:500;line-height:1;display:block}.block-trust-stats__label{letter-spacing:.05em;text-transform:uppercase;color:var(--color-brand-secondary);font-size:.85rem;font-weight:500;display:block}.block-region-intro{grid-template-columns:1.1fr .9fr;align-items:center;gap:6rem;max-width:1400px;margin:0 auto;padding:8rem 6rem;display:grid}@media (max-width:968px){.block-region-intro{grid-template-columns:1fr;gap:3rem;padding:4rem 2rem}}.block-region-intro__image{position:relative}.block-region-intro__image:before{content:"";border:2px solid var(--color-surface-muted);z-index:-1;position:absolute;inset:2rem -2rem -2rem 2rem}.block-region-intro__image img{width:100%;height:auto;box-shadow:var(--shadow-elevated);display:block}.block-region-intro__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-brand-accent);margin-bottom:1rem;font-size:.75rem;font-weight:600}.block-region-intro__name{color:var(--color-brand-primary);margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,3.5rem);line-height:1.1}.block-region-intro__description{color:var(--color-text-body);margin-bottom:2rem;font-size:1.1rem;line-height:1.9}.block-region-intro__link{color:var(--color-brand-primary);letter-spacing:.02em;align-items:center;gap:.75rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:gap .3s;display:inline-flex}.block-region-intro__link:hover{gap:1.25rem;text-decoration:none}.block-region-intro__link:after{content:"→";font-size:1.2em;transition:transform .3s}.block-region-intro__link:hover:after{transform:translate(4px)}.block-property-grid{background:var(--color-warm-cream);padding:7rem 2rem}.block-property-grid__heading{text-align:center;color:var(--color-brand-primary);margin-bottom:1rem;font-size:clamp(2.5rem,5vw,3.5rem)}.block-property-grid__subheading{text-align:center;color:var(--color-text-body);max-width:500px;margin:0 auto 4rem;font-size:1.1rem}.block-property-grid__items{grid-template-columns:repeat(3,1fr);gap:2.5rem;max-width:1200px;margin:0 auto;display:grid;position:relative}@media (max-width:968px){.block-property-grid__items{grid-template-columns:1fr;max-width:500px}}.block-property-grid--list .block-property-grid__items{grid-template-columns:1fr}.block-activity-grid{padding-block:calc(var(--spacing)*8)}.block-activity-grid__items{gap:calc(var(--spacing)*6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.block-restaurant-grid{padding-block:calc(var(--spacing)*8)}.block-restaurant-grid__items{gap:calc(var(--spacing)*6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.restaurant-hero{background:var(--color-brand-primary);color:#fff;text-align:center;justify-content:center;align-items:center;min-height:50vh;display:flex;position:relative;overflow:hidden}.restaurant-hero__image{position:absolute;inset:0}.restaurant-hero__image img{object-fit:cover;width:100%;height:100%}.restaurant-hero__overlay{background:linear-gradient(135deg,#1d3557e6 0%,#457b9db3 100%);position:absolute;inset:0}.restaurant-hero--has-image .restaurant-hero__overlay{background:linear-gradient(#00000026 0%,#0000004d 50%,#0009 100%)}.restaurant-hero__content{z-index:10;max-width:700px;padding:4rem 2rem;position:relative}.restaurant-hero__eyebrow{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;opacity:.8;color:var(--color-surface-muted);margin-bottom:1rem;font-size:.8rem;font-weight:500}.restaurant-hero--has-image .restaurant-hero__eyebrow{color:var(--color-frosted-blue,#a8dadc);opacity:1}.restaurant-hero__headline{letter-spacing:-.02em;color:#fff;margin-bottom:1rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:500;line-height:1.1}.restaurant-hero--has-image .restaurant-hero__headline{color:#fff;text-shadow:0 2px 8px #0006}.restaurant-hero__subheadline{opacity:.9;font-size:1.1rem;font-weight:300;line-height:1.7}.restaurant-filters{border-bottom:1px solid var(--color-border);z-index:50;background:#fff;padding:1rem 2rem;position:sticky;top:0}.restaurant-filters__container{flex-wrap:nowrap;justify-content:center;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;display:flex}.restaurant-filters__divider{background:var(--color-border,#e5e7eb);flex-shrink:0;width:1px;height:1.5rem}.restaurant-filters__group{align-items:center;gap:.5rem;display:flex}.restaurant-filters__label{color:var(--color-brand-primary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.restaurant-filters__pills{gap:.35rem;display:flex}.restaurant-filters__pill{background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);color:var(--color-text-muted,#5a6672);cursor:pointer;white-space:nowrap;border-radius:2rem;padding:.3rem .7rem;font-size:.8rem;font-weight:500;transition:all .2s}.restaurant-filters__pill:hover{border-color:var(--color-brand-secondary);color:var(--color-brand-secondary)}.restaurant-filters__pill--active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:#fff}.restaurant-filters__dropdown{position:relative}.restaurant-filters__dropdown-btn{border:1px solid var(--color-border,#e5e7eb);color:var(--color-text-body,#374151);cursor:pointer;white-space:nowrap;background:#fff;border-radius:2rem;align-items:center;gap:.4rem;padding:.4rem .9rem;font-size:.85rem;transition:all .2s;display:flex}.restaurant-filters__dropdown-btn:hover{border-color:var(--color-brand-secondary)}.restaurant-filters__dropdown-btn[aria-expanded=true]{border-color:var(--color-brand-primary);box-shadow:0 0 0 1px var(--color-brand-primary)}.restaurant-filters__dropdown-btn--active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:#fff}.restaurant-filters__dropdown-btn--active .restaurant-filters__dropdown-label,.restaurant-filters__dropdown-btn--active .restaurant-filters__dropdown-icon{color:#ffffffb3}.restaurant-filters__dropdown-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-primary);font-size:.7rem;font-weight:600}.restaurant-filters__dropdown-value{font-weight:500}.restaurant-filters__dropdown-icon{color:var(--color-text-muted,#9ca3af);transition:transform .2s}.restaurant-filters__dropdown-btn[aria-expanded=true] .restaurant-filters__dropdown-icon{transform:rotate(180deg)}.restaurant-filters__dropdown-menu{border:1px solid var(--color-border,#e5e7eb);z-index:100;background:#fff;border-radius:.75rem;min-width:200px;max-height:320px;margin:0;padding:.35rem;list-style:none;display:none;position:absolute;top:calc(100% + .5rem);left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 10px 25px #0000001a,0 4px 10px #0000000d}.restaurant-filters__dropdown-menu--open{animation:.15s ease-out filterDropdownIn;display:block}@keyframes filterDropdownIn{0%{opacity:0;transform:translate(-50%)translateY(-4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.restaurant-filters__dropdown-item{color:var(--color-text-body,#374151);cursor:pointer;white-space:nowrap;border-radius:.5rem;padding:.5rem .75rem;font-size:.85rem;transition:background .15s}.restaurant-filters__dropdown-item:hover{background:var(--color-warm-cream,#faf8f5)}.restaurant-filters__dropdown-item--active{background:var(--color-brand-primary);color:#fff;font-weight:500}.restaurant-filters__dropdown-item--active:hover{background:var(--color-brand-primary)}@media (max-width:768px){.restaurant-filters{padding:.75rem 1rem}.restaurant-filters__container{flex-wrap:wrap;justify-content:flex-start;gap:.5rem}.restaurant-filters__divider{display:none}.restaurant-filters__pills{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.restaurant-filters__dropdown-menu{left:0;transform:none}@keyframes filterDropdownIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}}.filter-sheet{z-index:1000;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.filter-sheet[hidden]{display:none}.filter-sheet__backdrop{opacity:0;background:#00000080;transition:opacity .3s;position:absolute;inset:0}.filter-sheet--open .filter-sheet__backdrop{opacity:1}.filter-sheet__content{background:#fff;border-radius:1rem 1rem 0 0;flex-direction:column;width:100%;max-width:500px;max-height:70vh;transition:transform .3s;display:flex;position:relative;transform:translateY(100%)}.filter-sheet--open .filter-sheet__content{transform:translateY(0)}.filter-sheet__header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.filter-sheet__title{color:var(--color-brand-primary);margin:0;font-size:1.1rem;font-weight:600}.filter-sheet__close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:.5rem;padding:.5rem;transition:background .2s}.filter-sheet__close:hover{background:var(--color-warm-cream)}.filter-sheet__body{flex:1;padding:.5rem;overflow-y:auto}.filter-sheet__option{text-align:left;width:100%;color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:.5rem;padding:.875rem 1rem;font-size:1rem;transition:background .2s;display:block}.filter-sheet__option:hover{background:var(--color-warm-cream)}.filter-sheet__option--active{background:var(--color-brand-primary);color:#fff}.filter-sheet__option--active:hover{background:var(--color-brand-primary)}@media (min-width:768px){.filter-sheet{display:none}}.restaurant-grid-section{background:var(--color-warm-cream);padding:4rem 2rem}.restaurant-grid{grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1200px;margin:0 auto;display:grid}@media (max-width:968px){.restaurant-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.restaurant-grid{grid-template-columns:1fr;max-width:400px}}.restaurant-grid__empty,.restaurant-grid__empty-filters{text-align:center;color:var(--color-text-body);grid-column:1/-1;padding:4rem 2rem}.restaurant-grid__empty-filters h3{color:var(--color-brand-primary);margin:1rem 0 .5rem}.restaurant-grid__empty-filters svg{color:var(--color-brand-secondary);opacity:.5}.restaurant-card{box-shadow:var(--shadow-card);cursor:pointer;aspect-ratio:4/3;position:relative;overflow:hidden}.restaurant-card.animated{transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1)}.restaurant-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-8px)}.restaurant-card:focus{outline:2px solid var(--color-brand-accent);outline-offset:2px}.restaurant-card__cover{position:absolute;inset:0;overflow:hidden}.restaurant-card__cover img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1)}.restaurant-card:hover .restaurant-card__cover img{transform:scale(1.05)}.restaurant-card__cover--placeholder{background:var(--color-brand-primary,#1d3557);color:#ffffff4d;justify-content:center;align-items:center;display:flex}.restaurant-card__overlay{pointer-events:none;background:linear-gradient(#0000 30%,#0006 60%,#000c 100%);transition:background .4s;position:absolute;inset:0}.restaurant-card:hover .restaurant-card__overlay{background:linear-gradient(#0000001a 25%,#00000080 55%,#000000d9 100%)}.restaurant-card__badge{z-index:2;background:var(--color-brand-accent);color:#fff;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .6rem;font-size:.65rem;font-weight:600;position:absolute;top:.75rem;left:.75rem}.restaurant-card__content{z-index:2;color:#fff;padding:1.25rem;position:absolute;bottom:0;left:0;right:0}.restaurant-card__meta{align-items:center;gap:.75rem;margin-bottom:.35rem;font-size:.75rem;display:flex}.restaurant-card__cuisine{color:var(--color-frosted-blue,#a8dadc);font-weight:500}.restaurant-card__price{color:#ffffffe6;font-weight:600}.restaurant-card__name{font-family:var(--font-heading);color:#fff;text-shadow:0 2px 4px #0000004d;margin-bottom:.35rem;font-size:clamp(1.1rem,2vw,1.35rem);font-weight:500;line-height:1.2}.restaurant-card__location{color:#ffffffd9;align-items:center;gap:.4rem;margin:0;font-size:.8rem;display:flex}.restaurant-card__location svg{color:var(--color-frosted-blue,#a8dadc);flex-shrink:0}.restaurant-panel{z-index:3000;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;position:fixed;inset:0}.restaurant-panel[aria-hidden=false]{pointer-events:auto;opacity:1;visibility:visible}.restaurant-panel__backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1d355799;position:absolute;inset:0}.restaurant-panel__content{width:480px;max-width:100%;box-shadow:var(--shadow-elevated);background:#fff;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;overflow-y:auto}@media (max-width:520px){.restaurant-panel__content{width:100%}}.restaurant-panel__close{z-index:10;cursor:pointer;background:#fff;border:none;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem;box-shadow:0 2px 8px #00000026}.restaurant-panel__close:hover{background:var(--color-brand-accent);color:#fff}.restaurant-panel__hero{flex-shrink:0;height:240px;position:relative;overflow:hidden}.restaurant-panel__hero img{object-fit:cover;width:100%;height:100%}.restaurant-panel__hero-overlay{background:linear-gradient(#0000 0%,#fff 100%);height:50%;position:absolute;bottom:0;left:0;right:0}.restaurant-panel__body{flex:1;padding:1.5rem 2rem 2rem}.restaurant-panel__meta{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.restaurant-panel__cuisines{color:var(--color-brand-secondary);font-size:.85rem;font-weight:500}.restaurant-panel__price{color:var(--color-text-body);background:var(--color-warm-sand);padding:.25rem .5rem;font-size:.85rem;font-weight:600}.restaurant-panel__location-badge{color:var(--color-text-body);font-size:.8rem}.restaurant-panel__name{color:var(--color-brand-primary);margin-bottom:1rem;font-size:2rem;line-height:1.15}.google-rating{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.google-rating__stars{align-items:center;gap:.125rem;display:flex}.google-rating__star{font-size:1rem;line-height:1}.google-rating__star--full{color:var(--color-warning)}.google-rating__star--half{color:var(--color-warning);opacity:.6}.google-rating__star--empty{color:var(--color-border,#e5e7eb)}.google-rating__star--full svg,.google-rating__star--half svg,.google-rating__star--empty svg{fill:currentColor}.google-rating__score{color:var(--color-brand-primary);font-size:.95rem;font-weight:600}.google-rating__count{color:var(--color-text-muted);font-size:.85rem}.google-rating--detail{margin-bottom:0}.place-reviews{margin-top:3rem;margin-bottom:3rem}.place-reviews__heading{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.place-reviews__grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.place-review-card{background:var(--color-cream,#faf8f5);border:1px solid #0000000f;border-radius:.75rem;padding:1.5rem}.place-review-card__header{justify-content:space-between;align-items:baseline;margin-bottom:.5rem;display:flex}.place-review-card__author{color:var(--color-brand-primary);font-size:.95rem;font-weight:600}.place-review-card__time{color:var(--color-text-muted);font-size:.8rem}.place-review-card__text{color:var(--color-text-body);margin-top:.75rem;font-size:.9rem;line-height:1.6}.restaurant-panel__description{color:var(--color-text-body);margin-bottom:1.5rem;font-size:1rem;line-height:1.7}.restaurant-panel__hours{background:var(--color-warm-sand);margin-bottom:1.5rem;padding:1rem 1.25rem}.restaurant-panel__hours h3{text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-primary);margin-bottom:.5rem;font-size:.85rem;font-weight:600}.restaurant-panel__hours div{color:var(--color-text-body);font-size:.9rem;line-height:1.6}.restaurant-panel__contact{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.restaurant-panel__address,.restaurant-panel__phone{color:var(--color-text-body);align-items:center;gap:.75rem;font-size:.95rem;display:flex}.restaurant-panel__address svg,.restaurant-panel__phone svg{color:var(--color-brand-secondary);flex-shrink:0}.restaurant-panel__phone a{color:var(--color-brand-primary);font-weight:500}.restaurant-panel__phone a:hover{color:var(--color-brand-accent)}.restaurant-panel__map{margin-bottom:1.5rem}.restaurant-panel__map-container{background:var(--color-warm-sand);height:180px}.restaurant-panel__actions{flex-direction:column;gap:.75rem;margin-top:auto;display:flex}.restaurant-panel__reserve-btn{text-align:center;letter-spacing:.05em;text-transform:uppercase;border:2px solid var(--color-brand-primary);color:var(--color-brand-primary);background:0 0;padding:.9rem 2rem;font-size:.85rem;font-weight:600;transition:all .3s;display:block}.restaurant-panel__reserve-btn:hover{background:var(--color-brand-primary);color:#fff;text-decoration:none}.restaurant-detail{background:var(--color-warm-cream);min-height:100vh}.restaurant-detail__hero{opacity:0;height:70vh;min-height:600px;max-height:800px;position:relative;overflow:hidden}.restaurant-detail__hero-image{z-index:1;position:absolute;inset:0}.restaurant-detail__hero-image img{object-fit:cover;width:100%;height:100%}.restaurant-detail__hero-overlay{z-index:2;background:linear-gradient(#1d355733 75%,#1d3557d9 100%);align-items:flex-end;display:flex;position:absolute;inset:0}.restaurant-detail__hero-content{z-index:3;color:#fff;width:100%;max-width:900px;padding:3rem 1.5rem 2.5rem;position:relative}@media (min-width:768px){.restaurant-detail__hero-content{padding:4rem 2rem 3rem}}.restaurant-detail__meta{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.restaurant-detail__cuisines{flex-wrap:wrap;gap:.5rem;display:flex}.restaurant-detail__cuisine-pill{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-size:.8125rem;font-weight:500;font-family:var(--font-body);white-space:nowrap;background:#ffffff26;border-radius:9999px;align-items:center;padding:.375rem .875rem;display:inline-flex}.restaurant-detail__meta-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-size:.875rem;font-weight:500;font-family:var(--font-body);background:#ffffff26;border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1rem;display:inline-flex}.restaurant-detail__meta-badge svg{flex-shrink:0}.restaurant-detail__meta-badge--price{color:var(--color-brand-accent,#e63946);background:#fffffff2;font-size:1rem;font-weight:600}.restaurant-detail__title{font-size:clamp(2.5rem,6vw,4rem);font-weight:500;font-family:var(--font-heading);color:#fff;text-shadow:0 2px 20px #0009,0 4px 40px #0006;margin-bottom:.75rem;line-height:1.1}.restaurant-detail__subtitle{color:#fff;opacity:.95;text-shadow:0 1px 8px #00000080;max-width:700px;font-size:1.125rem;line-height:1.6}.restaurant-detail__main{grid-template-columns:1fr 350px;gap:3rem;padding-block:4rem;display:grid}@media (max-width:968px){.restaurant-detail__main{grid-template-columns:1fr;gap:2rem;padding-block:2rem}}.restaurant-detail__sidebar{order:2}@media (max-width:968px){.restaurant-detail__sidebar{order:1;grid-template-columns:1fr 1fr;gap:1rem;display:grid}}@media (max-width:640px){.restaurant-detail__sidebar{grid-template-columns:1fr}}.restaurant-detail__card{background:#fff;border-radius:.5rem;margin-bottom:1.5rem;padding:2rem;box-shadow:0 2px 8px #00000014}.restaurant-detail__card-title{font-size:1.25rem;font-weight:600;font-family:var(--font-heading);color:var(--color-brand-primary);border-bottom:2px solid var(--color-brand-accent);margin-bottom:1.5rem;padding-bottom:.75rem}.restaurant-detail__info-section{margin-bottom:1.5rem}.restaurant-detail__info-section:last-child{margin-bottom:0}.restaurant-detail__info-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:flex}.restaurant-detail__info-label svg{color:var(--color-brand-secondary);flex-shrink:0}.restaurant-detail__info-text{color:var(--color-text-body);font-size:.938rem;line-height:1.6}.restaurant-detail__phone-link{color:var(--color-brand-primary);font-weight:500}.restaurant-detail__phone-link:hover{color:var(--color-brand-accent);text-decoration:underline}.restaurant-detail__actions{flex-direction:column;gap:.75rem;display:flex}.restaurant-detail__action-btn{text-align:center;border-radius:.375rem;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:.938rem;font-weight:600;text-decoration:none;transition:all .3s;display:flex}.restaurant-detail__action-btn svg{flex-shrink:0}.restaurant-detail__action-btn--primary{background:var(--color-brand-primary);color:#fff}.restaurant-detail__action-btn--primary:hover{background:var(--color-brand-secondary);transform:translateY(-2px);box-shadow:0 4px 12px #1d35574d}.restaurant-detail__action-btn--secondary{color:var(--color-brand-primary);border:2px solid var(--color-brand-primary);background:0 0}.restaurant-detail__action-btn--secondary:hover{background:var(--color-brand-primary);color:#fff}.restaurant-detail__content{order:1}@media (max-width:968px){.restaurant-detail__content{order:2}}.restaurant-detail__description{background:#fff;border-radius:.5rem;margin-bottom:2rem;padding:2.5rem;box-shadow:0 2px 8px #00000014}.restaurant-detail__description h2{font-size:1.5rem;font-weight:600;font-family:var(--font-heading);color:var(--color-brand-primary);margin-top:2rem;margin-bottom:1rem}.restaurant-detail__description h2:first-child{margin-top:0}.restaurant-detail__description h3{font-size:1.25rem;font-weight:600;font-family:var(--font-heading);color:var(--color-brand-primary);margin-top:1.5rem;margin-bottom:.75rem}.restaurant-detail__description p{color:var(--color-text-body);margin-bottom:1rem;line-height:1.7}.restaurant-detail__description ul,.restaurant-detail__description ol{margin-bottom:1rem;padding-left:1.5rem}.restaurant-detail__description li{color:var(--color-text-body);margin-bottom:.5rem;line-height:1.7}.restaurant-detail__section-title{font-size:1.75rem;font-weight:600;font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1.5rem}.restaurant-detail__gallery{background:#fff;border-radius:.5rem;margin-bottom:2rem;padding:2.5rem;box-shadow:0 2px 8px #00000014}.restaurant-detail__gallery-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}@media (max-width:968px){.restaurant-detail__gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.restaurant-detail__gallery-grid{grid-template-columns:1fr}}.restaurant-detail__gallery-item{aspect-ratio:4/3;border-radius:.375rem;position:relative;overflow:hidden}.restaurant-detail__gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.restaurant-detail__gallery-item:hover img{transform:scale(1.05)}.restaurant-detail__gallery-caption{color:#fff;background:linear-gradient(#0000,#000000b3);padding:.5rem .75rem;font-size:.813rem;line-height:1.4;position:absolute;bottom:0;left:0;right:0}.restaurant-detail__map-section{background:#fff;border-radius:.5rem;margin-bottom:2rem;padding:2.5rem;box-shadow:0 2px 8px #00000014}.restaurant-detail__map-container{background:var(--color-warm-sand);border-radius:.375rem;height:400px;overflow:hidden}.restaurant-detail__location-card{background:var(--color-warm-sand);border-left:4px solid var(--color-brand-accent);border-radius:.375rem;gap:1rem;padding:1.5rem;display:flex}.restaurant-detail__location-card svg{color:var(--color-brand-secondary);flex-shrink:0;margin-top:.25rem}.restaurant-detail__location-name{color:var(--color-brand-primary);margin-bottom:.25rem;font-weight:600}.restaurant-detail__location-address{color:var(--color-text-body);line-height:1.5}.restaurant-detail__related{background:#fff;padding:4rem 0}.restaurant-detail__related-title{font-size:2rem;font-weight:600;font-family:var(--font-heading);color:var(--color-brand-primary);text-align:center;margin-bottom:2.5rem}.restaurant-detail__related-grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.restaurant-detail__related-grid .restaurant-card{color:inherit;text-decoration:none;display:block}.restaurant-detail__related-grid .restaurant-card__meta{margin-bottom:.6rem;font-size:1.15rem;font-weight:500}.restaurant-detail__related-grid .restaurant-card__name{margin-bottom:.5rem;font-size:clamp(1.25rem,2.5vw,1.5rem)}.restaurant-detail__related-grid .restaurant-card__location{font-size:.9rem}@media (max-width:968px){.restaurant-detail__related-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.restaurant-detail__related-grid{grid-template-columns:1fr}}.restaurant-detail__nav{padding:2rem 0 4rem}.restaurant-detail__back-link{color:var(--color-brand-primary);background:#fff;border-radius:.375rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex;box-shadow:0 2px 8px #00000014}.restaurant-detail__back-link svg{flex-shrink:0}.restaurant-detail__back-link:hover{background:var(--color-brand-primary);color:#fff;transform:translate(-4px);box-shadow:0 4px 12px #1d355733}.site-header{z-index:1000;pointer-events:none;justify-content:space-between;align-items:flex-start;padding:1.5rem 2.5rem;display:flex;position:fixed;top:0;left:0;right:0}.site-header>*{pointer-events:auto}.site-header__logo{align-items:center;display:flex}.site-header__logo img{filter:brightness(0)invert()drop-shadow(0 2px 8px #0000004d);width:auto;height:200px;transition:filter .4s}.site-header--scrolled .site-header__logo img{height:64px}@media (max-width:968px){.site-header__logo img{height:64px}.site-header--scrolled .site-header__logo img{height:48px}}.site-header__nav{flex-direction:column;align-items:flex-start;gap:.4rem;padding-top:.25rem;display:flex}@media (max-width:968px){.site-header__nav{display:none}}.site-header__nav a{letter-spacing:.01em;color:#fff;opacity:.8;text-shadow:0 1px 4px #0006;padding-left:1rem;font-size:1.25rem;font-weight:400;text-decoration:none;transition:opacity .3s;position:relative}.site-header__nav a:hover{opacity:1;text-decoration:none}.site-header__nav a.active{opacity:1}.site-header__nav a.active:before{content:"";background:var(--color-brand-accent);border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:0;transform:translateY(-50%);box-shadow:0 0 6px #e6394680}.site-header--light-text .site-header__nav a,.site-header--light-text .mobile-menu-trigger{color:#fff;text-shadow:0 1px 3px #0000004d}.site-header--light-text .mobile-menu-trigger__icon span{background:#fff}.site-header--dark-text .site-header__nav a,.site-header--dark-text .mobile-menu-trigger{color:var(--color-brand-primary,#1d3557);text-shadow:none}.site-header--dark-text .mobile-menu-trigger__icon span{background:var(--color-brand-primary,#1d3557)}.site-header--dark-text .site-header__logo img{filter:brightness(0)drop-shadow(0 2px 8px #0000001a)}.site-header__nav a,.mobile-menu-trigger,.mobile-menu-trigger__icon span{transition:color .4s,background .4s}.site-header__logo img{transition:filter .4s}.site-header--topbar{background:var(--color-surface,#faf8f5);align-items:center;padding:.75rem 2.5rem;box-shadow:0 1px 3px #00000014}.site-header--topbar .site-header__logo img{filter:brightness(0)drop-shadow(0 1px 2px #0000000d);height:48px}.site-header--topbar .site-header__nav{flex-direction:row;align-items:center;gap:2rem;padding-top:0}.site-header--topbar .site-header__nav a{color:var(--color-brand-primary,#1d3557);text-shadow:none;opacity:.7;padding-left:0;font-size:.95rem}.site-header--topbar .site-header__nav a:hover,.site-header--topbar .site-header__nav a.active{opacity:1}.site-header--topbar .site-header__nav a.active:before{top:-8px;left:50%;transform:translate(-50%)}.site-header--topbar.site-header--light-text .site-header__nav a,.site-header--topbar.site-header--dark-text .site-header__nav a{color:var(--color-brand-primary,#1d3557);text-shadow:none}.site-header--topbar.site-header--light-text .site-header__logo img,.site-header--topbar.site-header--dark-text .site-header__logo img{filter:brightness(0)drop-shadow(0 1px 2px #0000000d)}.mobile-menu-trigger{cursor:pointer;color:#fff;text-shadow:0 1px 3px #0000004d;background:0 0;border:none;align-items:center;gap:.75rem;padding:.5rem;display:none}@media (max-width:968px){.mobile-menu-trigger{display:flex}}.mobile-menu-trigger__text{letter-spacing:.02em;font-size:.9rem;font-weight:400}.mobile-menu-trigger__icon{flex-direction:column;gap:4px;width:20px;display:flex}.mobile-menu-trigger__icon span{background:#fff;border-radius:1px;height:1.5px;transition:transform .3s,opacity .3s;display:block}.mobile-menu{z-index:2000;background:var(--color-brand-primary);color:#fff;visibility:hidden;flex-direction:column;padding:1.5rem 2.5rem 2.5rem;display:flex;position:fixed;inset:0;overflow-y:auto}@media (orientation:landscape) and (max-height:500px){.mobile-menu{padding:1rem 2rem 1.5rem}.mobile-menu__header{margin-bottom:1.5rem}.mobile-menu__nav{gap:.375rem;margin-bottom:1.5rem}.mobile-menu__nav a{font-size:1.5rem}.mobile-menu__cta{margin-bottom:1.5rem}}.mobile-menu.is-open{visibility:visible}.mobile-menu__header{justify-content:space-between;align-items:flex-start;margin-bottom:3rem;display:flex}.mobile-menu__logo img{filter:brightness(0)invert();width:auto;height:56px}.mobile-menu__close{cursor:pointer;color:#fff;background:0 0;border:none;align-items:center;gap:.75rem;padding:.5rem;display:flex}.mobile-menu__close-text{letter-spacing:.02em;font-size:.9rem;font-weight:400}.mobile-menu__close-icon{font-size:1.5rem;font-weight:300;line-height:1}.mobile-menu__nav{flex-direction:column;gap:.75rem;margin-bottom:2.5rem;display:flex}.mobile-menu__nav a{font-family:var(--font-heading);color:#fff;opacity:.9;font-size:2rem;font-weight:500;text-decoration:none;transition:opacity .2s}.mobile-menu__nav a:hover{opacity:1;text-decoration:none}.mobile-menu__nav a.active:before{content:"•";color:var(--color-brand-accent);margin-right:.75rem}.mobile-menu__cta{align-items:center;gap:1rem;margin-bottom:3rem;display:inline-flex}.mobile-menu__contact{margin-top:auto}.mobile-menu__contact-item{margin-bottom:.5rem}.mobile-menu__contact-item a{color:#fff;opacity:.85;font-size:1.1rem;text-decoration:none;transition:opacity .2s}.mobile-menu__contact-item a:hover{opacity:1;text-decoration:none}.mobile-menu__location{border-top:1px solid #ffffff1a;margin-top:2rem;padding-top:1.5rem}.mobile-menu__location-label{letter-spacing:.1em;text-transform:uppercase;opacity:.5;margin-bottom:.5rem;font-size:.75rem;font-weight:500}.mobile-menu__location-address{opacity:.85;font-size:.95rem;line-height:1.5}.site-footer{background:var(--color-brand-primary);color:#fff;padding:5rem 2rem 2rem}.site-footer__content{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;max-width:1200px;margin:0 auto;display:grid}@media (max-width:968px){.site-footer__content{grid-template-columns:1fr 1fr}}@media (max-width:600px){.site-footer__content{text-align:center;grid-template-columns:1fr}}.site-footer__brand{flex-direction:column;gap:1.5rem;display:flex}@media (max-width:600px){.site-footer__brand{align-items:center}}.site-footer__logo{filter:brightness(0)invert();max-width:180px;height:auto}.site-footer__tagline{opacity:.8;max-width:280px;font-size:.95rem;line-height:1.7}.site-footer__heading{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-surface-muted);margin-bottom:1.25rem;font-size:.8rem;font-weight:600}.site-footer__column ul{margin:0;padding:0;list-style:none}.site-footer__column li{margin-bottom:.75rem}.site-footer__column a{color:#fff;opacity:.75;font-size:.95rem;text-decoration:none;transition:opacity .2s}.site-footer__column a:hover{opacity:1;text-decoration:none}.site-footer__bottom{opacity:.6;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;max-width:1200px;margin:4rem auto 0;padding-top:2rem;font-size:.85rem;display:flex}@media (max-width:600px){.site-footer__bottom{text-align:center;flex-direction:column;gap:1rem}}.site-footer__bottom a{color:#fff;text-decoration:none}.site-footer__bottom a:hover{text-decoration:underline}.language-switcher{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.language-switcher__icon{opacity:.75;width:1rem;height:1rem}.language-switcher__options{align-items:center;gap:.25rem;display:flex}.language-switcher__link{color:#fff;opacity:.85;padding:.25rem .5rem;text-decoration:none;transition:opacity .2s}.language-switcher__link:hover{opacity:1}.language-switcher__link--active{opacity:1;font-weight:600}.language-switcher__separator{opacity:.5}.testimonial-carousel{background:var(--color-brand-primary);padding:5rem 0;position:relative;overflow:hidden}.testimonial-carousel__header{text-align:center;margin-bottom:3rem}.testimonial-carousel__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-surface-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:600}.testimonial-carousel__title{font-family:var(--font-heading);color:#fff;font-size:clamp(2rem,4vw,2.5rem);font-weight:500}.testimonial-carousel__stage{perspective:1200px;perspective-origin:50%;justify-content:center;align-items:center;height:420px;display:flex;position:relative}.testimonial-carousel__track{width:100%;height:100%;transform-style:preserve-3d;position:relative}.testimonial-card{width:90%;max-width:500px;transform-style:preserve-3d;cursor:pointer;background:#fff;padding:2.5rem;transition:opacity .1s;position:absolute;top:50%;left:50%;box-shadow:0 25px 80px #0006}.testimonial-card:before{content:"“";font-family:var(--font-heading);color:var(--color-brand-primary);opacity:.08;pointer-events:none;font-size:8rem;line-height:1;position:absolute;top:-1rem;left:1.5rem}.testimonial-card__quote{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1.5rem;font-size:1.35rem;font-style:italic;line-height:1.7;position:relative}.testimonial-card__author{font-family:var(--font-body);color:var(--color-brand-primary);margin-bottom:.25rem;font-size:1rem;font-weight:600}.testimonial-card__source{color:var(--color-brand-secondary,#457b9d);font-size:.85rem}.testimonial-card__rating{gap:.25rem;margin-bottom:1rem;display:flex}.testimonial-card__rating svg{width:18px;height:18px;fill:var(--color-warning,#f59e0b)}.testimonial-carousel__nav{justify-content:center;align-items:center;gap:2rem;margin-top:2rem;display:flex}.testimonial-carousel__arrow{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s;display:flex}.testimonial-carousel__arrow:hover{background:#fff3;border-color:#fff6}.testimonial-carousel__arrow svg{width:20px;height:20px}.testimonial-carousel__dots{gap:0;display:flex}.testimonial-carousel__dot{cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:10px;min-width:44px;height:10px;min-height:44px;padding:0;transition:all .3s;display:flex;position:relative}.testimonial-carousel__dot:after{content:"";background:#ffffff4d;border-radius:50%;width:10px;height:10px;transition:all .3s}.testimonial-carousel__dot:hover:after{background:#ffffff80}.testimonial-carousel__dot.active:after{background:var(--color-brand-accent);transform:scale(1.2)}.testimonial-carousel__dot:focus-visible{outline:2px solid var(--color-brand-accent);outline-offset:2px}.testimonial-carousel__arrow:focus-visible{outline-offset:2px;outline:2px solid #fff}.testimonial-carousel__progress{background:var(--color-brand-accent);transform-origin:0;width:100%;height:3px;position:absolute;bottom:0;left:0;transform:scaleX(0)}.testimonial-carousel__pause-hint{letter-spacing:.1em;text-transform:uppercase;color:#fff6;opacity:0;font-size:.7rem;transition:opacity .3s;position:absolute;top:1rem;right:1rem}.testimonial-carousel:hover .testimonial-carousel__pause-hint{opacity:1}@media (max-width:768px){.testimonial-carousel__stage{height:380px}.testimonial-card{width:85%;padding:2rem}.testimonial-card__quote{font-size:1.15rem}.testimonial-carousel__arrow{width:40px;height:40px}}.testimonial-card:first-child{opacity:1;z-index:10;transform:translate(-50%)translateY(-50%)}.testimonial-carousel.js-enabled .testimonial-card:first-child{opacity:0;transform:none}.region-carousel{background:var(--color-surface-warm);padding:6rem 0;position:relative;overflow:hidden}.region-carousel__header{text-align:center;margin-bottom:4rem;padding:0 2rem}.region-carousel__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent,#e63946);margin-bottom:.75rem;font-size:.75rem;font-weight:600}.region-carousel__title{font-family:var(--font-heading);color:var(--color-brand-primary);font-size:clamp(2rem,4vw,3rem);font-weight:500}.region-carousel__viewport{max-width:1400px;margin:0 auto;padding:0 4rem 2rem;position:relative;overflow:visible}.region-carousel__track{position:relative}.region-slide{opacity:0;pointer-events:none;grid-template-columns:1.1fr .9fr;align-items:center;gap:5rem;display:grid;position:absolute;top:0;left:0;right:0}.region-slide.active{opacity:1;pointer-events:auto;position:relative}.region-slide__image{background:var(--color-surface-warm);position:relative}.region-slide__image:before{content:"";border:1px solid var(--color-border);pointer-events:none;z-index:0;position:absolute;inset:2rem -2rem -2rem 2rem}.region-slide__image img{width:100%;height:auto;box-shadow:var(--shadow-elevated);z-index:1;display:block;position:relative}.region-slide__content{padding:2rem 0}.region-slide__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-brand-accent);margin-bottom:1rem;font-size:.75rem;font-weight:600}.region-slide__name{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:500;line-height:1.1}.region-slide__description{color:var(--color-text-body);margin-bottom:2rem;font-size:1.1rem;line-height:1.9}.region-slide__link{color:var(--color-brand-primary);align-items:center;gap:.75rem;font-weight:600;text-decoration:none;transition:gap .3s;display:inline-flex}.region-slide__link:after{content:"→";font-size:1.2em;transition:transform .3s}.region-slide__link:hover{gap:1.25rem;text-decoration:none}.region-slide__link:hover:after{transform:translate(4px)}.region-carousel__nav{justify-content:center;align-items:center;gap:2rem;margin-top:3rem;display:flex}.region-carousel__arrow{border:1px solid var(--color-brand-primary);color:var(--color-brand-primary);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s;display:flex}.region-carousel__arrow:hover{background:var(--color-brand-primary);color:#fff}.region-carousel__arrow:disabled{opacity:.3;cursor:not-allowed}.region-carousel__arrow svg{width:20px;height:20px}.region-carousel__dots{gap:0;display:flex}.region-carousel__dot{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:10px;min-width:44px;height:10px;min-height:44px;padding:0;transition:all .3s;display:flex;position:relative}.region-carousel__dot:after{content:"";background:var(--color-brand-secondary);opacity:.3;border-radius:50%;width:10px;height:10px;transition:all .3s}.region-carousel__dot:hover:after{opacity:.5}.region-carousel__dot.active:after{background:var(--color-brand-accent);opacity:1;transform:scale(1.2)}.region-carousel__dot:focus-visible{outline:2px solid var(--color-brand-accent);outline-offset:2px}.region-carousel__arrow:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}@media (max-width:968px){.region-slide{grid-template-columns:1fr;gap:2.5rem}.region-carousel__viewport{padding:0 2rem 1.5rem}.region-slide__image:before{inset:1.5rem -1.5rem -1.5rem 1.5rem}}@media (max-width:640px){.region-carousel{padding:4rem 0}.region-carousel__header{margin-bottom:2.5rem}.region-carousel__viewport{padding:0 1.5rem 1.5rem}.region-slide__content{padding:1rem 0}.region-carousel__arrow{width:40px;height:40px}.region-carousel__nav{gap:1.5rem}}.region-slide:first-child{opacity:1;pointer-events:auto}.region-carousel.js-enabled .region-slide:first-child{opacity:0;pointer-events:none}.region-carousel.js-enabled .region-slide.active{opacity:1;pointer-events:auto}.property-index-hero{background:linear-gradient(135deg,var(--color-brand-primary)0%,#2d4a6f 100%);color:#fff;justify-content:center;align-items:center;min-height:50vh;display:flex;position:relative;overflow:hidden}.property-index-hero__overlay{background:radial-gradient(at 30% 70%,#457b9d4d 0%,#0000 50%),radial-gradient(at 70% 30%,#a8dadc26 0%,#0000 40%);position:absolute;inset:0}.property-index-hero__content{z-index:10;text-align:center;max-width:800px;padding:6rem 2rem;position:relative}.property-index-hero__eyebrow{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;opacity:.85;color:var(--color-surface-muted);margin-bottom:1rem;font-size:.8rem;font-weight:500}.property-index-hero__headline{letter-spacing:-.02em;color:#fff;margin-bottom:1.5rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:500;line-height:1.1}.property-index-hero__intro{opacity:.9;max-width:600px;margin:0 auto;font-size:1.15rem;font-weight:300;line-height:1.7}.property-index-hero__intro p{color:#ffffffe6;margin:0}.property-index-intro{background:var(--color-surface-base);text-align:center;padding:3rem 2rem}.property-index-intro .container{max-width:800px;margin:0 auto}.property-index-intro p{font-family:var(--font-heading);color:var(--color-text-body);margin:0;font-size:1.5rem;font-style:italic;font-weight:400;line-height:1.7}.property-index-intro:after{content:"";background:radial-gradient(ellipse at center,var(--color-brand-secondary)0%,transparent 70%);opacity:.6;width:100%;max-width:300px;height:3px;margin:2.5rem auto 0;display:block}.property-index-grid{background:var(--color-warm-cream);padding:5rem 2rem 6rem}.property-index-grid__container{max-width:1200px;margin:0 auto}.property-index-grid__preamble{font-family:var(--font-body,"Source Sans 3",sans-serif);font-size:var(--text-sm);color:var(--color-text-muted,#5a6672);margin-bottom:1.5rem}.property-index-grid__items{grid-template-columns:repeat(3,1fr);gap:2.5rem;display:grid}@media (max-width:1024px){.property-index-grid__items{grid-template-columns:repeat(2,1fr);gap:2rem}}@media (max-width:640px){.property-index-grid{padding:3rem 1.5rem 4rem}.property-index-grid__items{grid-template-columns:1fr;max-width:400px;margin:0 auto}}.property-card__location{color:#fffc;align-items:center;gap:.35rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.property-card__location svg{color:var(--color-frosted-blue,#a8dadc);flex-shrink:0}.property-index-grid__empty{text-align:center;max-width:500px;margin:0 auto;padding:6rem 2rem}.property-index-grid__empty-icon{color:var(--color-surface-muted);margin-bottom:2rem}.property-index-grid__empty h2{color:var(--color-brand-primary);margin-bottom:1rem;font-size:2rem}.property-index-grid__empty p{color:var(--color-text-body);margin-bottom:2rem;font-size:1.1rem;line-height:1.7}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.right-0{right:calc(var(--spacing)*0)}.isolate{isolation:isolate}.z-50{z-index:50}.col-1{grid-column:1}.col-2{grid-column:2}.col-3{grid-column:3}.col-4{grid-column:4}.col-5{grid-column:5}.col-6{grid-column:6}.col-7{grid-column:7}.col-span-full{grid-column:1/-1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-12{margin-top:calc(var(--spacing)*12)}.mr-1{margin-right:calc(var(--spacing)*1)}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-\[16\/9\]{aspect-ratio:16/9}.size-full{width:100%;height:100%}.h-0{height:calc(var(--spacing)*0)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-20{height:calc(var(--spacing)*20)}.h-24{height:calc(var(--spacing)*24)}.h-\[18px\]{height:18px}.h-full{height:100%}.min-h-\[60vh\]{min-height:60vh}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-\[18px\]{width:18px}.w-full{width:100%}.w-px{width:1px}.max-w-4xl{max-width:var(--container-4xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-xs{max-width:var(--container-xs)}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.columns-3{columns:3}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-accent,.border-accent\/30{border-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.border-accent\/30{border-color:color-mix(in oklab,var(--color-accent)30%,transparent)}}.border-brand-primary{border-color:var(--color-brand-primary)}.border-brand-secondary{border-color:var(--color-brand-secondary)}.border-gray-300{border-color:var(--color-gray-300)}.border-surface-muted{border-color:var(--color-surface-muted)}.bg-black{background-color:var(--color-black)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-brand-accent{background-color:var(--color-brand-accent)}.bg-brand-primary{background-color:var(--color-brand-primary)}.bg-brand-secondary{background-color:var(--color-brand-secondary)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-100{background-color:var(--color-green-100)}.bg-red-100{background-color:var(--color-red-100)}.bg-surface-muted{background-color:var(--color-surface-muted)}.bg-warm-cream{background-color:var(--color-warm-cream)}.bg-white{background-color:var(--color-white)}.bg-yellow-100{background-color:var(--color-yellow-100)}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.py-16{padding-block:calc(var(--spacing)*16)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-8{padding-top:calc(var(--spacing)*8)}.text-center{text-align:center}.font-heading{font-family:var(--font-heading)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-accent{color:var(--color-accent)}.text-brand-primary{color:var(--color-brand-primary)}.text-brand-secondary{color:var(--color-brand-secondary)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-800{color:var(--color-green-800)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-800{color:var(--color-red-800)}.text-text-muted{color:var(--color-text-muted)}.text-white{color:var(--color-white)}.text-yellow-800{color:var(--color-yellow-800)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.\[xml\:lang\]{xml:lang}@media (hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:border-brand-secondary:hover{border-color:var(--color-brand-secondary)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-gray-800:hover{color:var(--color-gray-800)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-brand-secondary:focus{border-color:var(--color-brand-secondary)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (min-width:40rem){.sm\:px-6{padding-inline:calc(var(--spacing)*6)}}@media (min-width:48rem){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:px-8{padding-inline:calc(var(--spacing)*8)}.lg\:py-24{padding-block:calc(var(--spacing)*24)}.lg\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}.demo-spacer{background:linear-gradient(90deg,transparent,var(--color-surface-muted),transparent);max-width:200px;height:1px;margin:0 auto}.demo-label{text-align:center;background:var(--color-brand-primary);color:#fff;text-transform:uppercase;letter-spacing:.15em;margin:2rem 0 0;padding:.75rem 1.5rem;font-size:.7rem;font-weight:600;display:inline-block;position:relative;left:50%;transform:translate(-50%)}.fade-in{opacity:0}.slide-up{opacity:0;transform:translateY(30px)}.slide-left{opacity:0;transform:translate(30px)}.slide-right{opacity:0;transform:translate(-30px)}.scale-in{opacity:0;transform:scale(.95)}.block-hero__eyebrow,.block-hero__headline,.block-hero__subheadline,.block-hero__cta{opacity:0;transform:translateY(20px)}.block-hero__headline{transform:translateY(50px)}.block-hero__subheadline{transform:translateY(30px)}.block-trust-stats__item{opacity:0;transform:translateY(30px)}.block-region-intro__image{opacity:0;transform:translate(-50px)}.block-region-intro__content{opacity:0;transform:translate(50px)}.block-testimonial{opacity:0;transform:scale(.95)}.block-property-grid__heading,.block-property-grid__subheading{opacity:0;transform:translateY(20px)}.block-property-grid__items>*{opacity:0;transform:translateY(40px)}.block-cta-ribbon{opacity:0;transform:translateY(30px)}.block-gallery__heading{opacity:0;transform:translateY(20px)}.block-gallery__item{opacity:0;transform:scale(.9)}.block-faq__heading{opacity:0;transform:translateY(20px)}.block-faq__item{opacity:0;transform:translate(-20px)}.block-rich-text{opacity:0;transform:translateY(20px)}[data-animate=fade-up]{opacity:0;transform:translateY(30px)}[data-animate=fade-in]{opacity:0}@media (prefers-reduced-motion:reduce){.block-hero__eyebrow,.block-hero__headline,.block-hero__subheadline,.block-hero__cta,.block-trust-stats__item,.block-region-intro__image,.block-region-intro__content,.block-testimonial,.block-property-grid__heading,.block-property-grid__subheading,.block-property-grid__items>*,.block-cta-ribbon,.block-gallery__heading,.block-gallery__item,.block-faq__heading,.block-faq__item,.block-rich-text,[data-animate=fade-up],[data-animate=fade-in]{opacity:1;transform:none}}.prose-container{max-width:65ch;margin-inline:auto}.section{padding-block:calc(var(--spacing)*12)}@media (min-width:48rem){.section{padding-block:calc(var(--spacing)*16)}}.sr-only{border-style:var(--tw-border-style);width:1px;height:1px;padding:calc(var(--spacing)*0);white-space:nowrap;clip:rect(0,0,0,0);border-width:0;margin:-1px;position:absolute;overflow:hidden}}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400 700;font-display:swap;src:url("/static/fonts/cormorant-garamond.ec4225ec161b.woff2")format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url("/static/fonts/cormorant-garamond-italic.95f875e7d230.woff2")format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:300 600;font-display:swap;src:url("/static/fonts/source-sans-3.fb6579a30024.woff2")format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.property-filters{background:var(--color-brand-primary);z-index:40;border-bottom:none;position:relative}.property-filters__mobile-bar{padding:1rem 1.5rem}.property-filters__toggle{background:var(--color-warm-cream);border:1px solid var(--color-border);width:100%;font-family:var(--font-body);color:var(--color-brand-primary);cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.875rem 1.25rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.property-filters__toggle:hover{background:var(--color-surface-light);border-color:var(--color-brand-secondary)}.property-filters__toggle[aria-expanded=true]{background:var(--color-brand-primary);color:#fff;border-color:var(--color-brand-primary)}.property-filters__badge{background:var(--color-accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.5rem;height:1.5rem;margin-left:auto;padding:0 .4rem;font-size:.75rem;font-weight:600;display:inline-flex}.property-filters__toggle[aria-expanded=true] .property-filters__badge{color:var(--color-brand-primary);background:#fff}.property-filters__panel{overflow:visible}@media (max-width:767px){.property-filters__panel{border-top:0 solid var(--color-border);height:0;overflow:hidden}.property-filters__panel.is-open{border-top-width:1px}}@media (min-width:768px){.property-filters__mobile-bar{display:none}.property-filters__panel{height:auto!important}}.property-filters__content{flex-direction:column;gap:1.5rem;max-width:1000px;margin:0 auto;padding:2rem 1.5rem;display:flex;position:relative}@media (min-width:768px){.property-filters__content{flex-flow:wrap;justify-content:center;align-items:flex-end;gap:2rem;padding:2.5rem 2rem}}.property-filters__close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.5rem;transition:all .15s;position:absolute;top:1rem;right:1rem}.property-filters__close:hover{background:var(--color-warm-cream);color:var(--color-brand-primary)}@media (min-width:768px){.property-filters__close{display:none}}.property-filters__primary{flex-direction:column;gap:1rem;display:flex}@media (min-width:768px){.property-filters__primary{flex-direction:row;gap:1.5rem}}.property-filters__field{flex-direction:column;gap:.375rem;display:flex}.property-filters__label{color:#ffffffd9;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;font-weight:600}.property-filters__select{font-family:var(--font-body);color:var(--color-brand-primary);cursor:pointer;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231D3557' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") right 1rem center no-repeat;border:2px solid #0000;border-radius:8px;min-width:140px;padding:.875rem 3rem .875rem 1.25rem;font-size:1.1rem;font-weight:500;transition:all .15s}.property-filters__select:hover{border-color:var(--color-accent)}.property-filters__select:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #e6394640}.property-filters__field--price{min-width:200px}@media (min-width:768px){.property-filters__field--price{min-width:240px}}.property-filters__price-display{color:#fff;margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.property-filters__price-separator{color:#ffffffb3;margin:0 .35rem}.property-filters__price-suffix{color:#ffffffb3;font-size:.95rem;font-weight:400}.property-filters__range-container{align-items:center;height:24px;display:flex;position:relative}.property-filters__range{appearance:none;pointer-events:none;background:0 0;width:100%;height:4px;position:absolute}.property-filters__range::-webkit-slider-thumb{appearance:none;background:var(--color-accent);cursor:pointer;pointer-events:auto;border:3px solid #fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;box-shadow:0 2px 6px #00000026}.property-filters__range::-webkit-slider-thumb:hover{transform:scale(1.15)}.property-filters__range::-moz-range-thumb{background:var(--color-accent);cursor:pointer;pointer-events:auto;border:3px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 6px #00000026}.property-filters__range-container:before{content:"";background:#ffffff4d;border-radius:3px;height:6px;position:absolute;left:0;right:0}.property-filters__field--date{min-width:180px}.property-filters__field--date .property-filters__date-wrapper{align-items:center;display:flex;position:relative}.property-filters__field--date .property-filters__date-input{width:100%;font-family:var(--font-body);color:var(--color-brand-primary);cursor:pointer;background:#fff;border:2px solid #0000;border-radius:8px;padding:.875rem 2.5rem .875rem 1rem;font-size:1.1rem;font-weight:500;transition:all .15s}.property-filters__field--date .property-filters__date-input:hover{border-color:var(--color-accent)}.property-filters__field--date .property-filters__date-input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #e6394640}.property-filters__field--date .property-filters__date-clear{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;transition:all .15s;position:absolute;right:.5rem}.property-filters__field--date .property-filters__date-clear:hover{background:var(--color-border);color:var(--color-brand-primary)}.property-filters__field--date date-picker{width:100%}.property-filters__field--date .date-picker__trigger{padding-right:2.5rem}.property-filters__field--date .property-filters__hint{color:#ffffffb3;margin-top:.25rem;font-size:.95rem}.date-picker{width:100%;display:inline-block;position:relative}.date-picker__trigger{width:100%;font-family:var(--font-body);color:var(--color-brand-primary);cursor:pointer;text-align:left;background:#fff;border:2px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.875rem 1rem;font-size:1.1rem;font-weight:500;transition:all .15s;display:flex}.date-picker__trigger:hover{border-color:var(--color-accent)}.date-picker__trigger:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #e6394640}.date-picker__trigger[aria-expanded=true]{border-color:var(--color-accent)}.date-picker__display{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.date-picker__display--placeholder{color:var(--color-text-muted)}.date-picker__icon{width:1.25rem;height:1.25rem;color:var(--color-secondary);flex-shrink:0;transition:color .15s}.date-picker__trigger:hover .date-picker__icon{color:var(--color-accent)}.date-picker__dropdown{z-index:100;background:var(--color-warm-cream,#faf8f5);border:1px solid var(--color-border);opacity:0;visibility:hidden;border-radius:0;min-width:min(300px,90vw);transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-8px);box-shadow:0 4px 20px #1d355726,0 2px 8px #00000014}.date-picker__dropdown:not([hidden]){opacity:1;visibility:visible;transform:translateY(0)}.date-picker__header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.75rem;display:flex}.date-picker__nav{width:36px;height:36px;color:var(--color-secondary);cursor:pointer;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.date-picker__nav:hover{background:var(--color-surface-muted);color:var(--color-brand-primary)}.date-picker__nav:focus{outline:none;box-shadow:0 0 0 2px #457b9d4d}.date-picker__nav:disabled{opacity:.3;cursor:not-allowed}.date-picker__nav:disabled:hover{color:var(--color-secondary);background:0 0}.date-picker__month-year{align-items:center;gap:.25rem;display:flex}.date-picker__month-select,.date-picker__year-select{font-family:var(--font-body);color:var(--color-brand-primary);cursor:pointer;appearance:none;background:0 0;border:none;border-radius:4px;padding:.375rem .5rem;font-size:.95rem;font-weight:600;transition:background .15s}.date-picker__month-select:hover,.date-picker__year-select:hover{background:var(--color-surface-light)}.date-picker__month-select:focus,.date-picker__year-select:focus{background:var(--color-surface-light);outline:none}.date-picker__month-select:focus-visible,.date-picker__year-select:focus-visible{box-shadow:0 0 0 2px #457b9d4d}.date-picker__notice{border-left:3px solid var(--color-accent,#e63946);font-family:var(--font-body);color:var(--color-accent,#e63946);background:#e6394614;align-items:center;gap:.5rem;margin:0 .75rem;padding:.625rem .875rem;font-size:.8125rem;font-weight:500;line-height:1.4;display:flex}.date-picker__notice[hidden]{display:none}.date-picker__calendar{padding:.5rem}.date-picker calendar-date::part(previous),.date-picker calendar-date::part(next),.date-picker calendar-date::part(heading){display:none}calendar-month{display:block}calendar-month::part(button){width:44px;height:44px;font-family:var(--font-body);color:var(--color-brand-primary);cursor:pointer;background:0 0;border:none;border-radius:0;margin:2px;padding:0;font-size:.9rem;font-weight:500;transition:all .15s}calendar-month::part(button):hover{background:var(--color-surface-muted)}calendar-month::part(selected){background:var(--color-accent);color:#fff}calendar-month::part(selected):hover{background:var(--color-accent)}calendar-month::part(today){box-shadow:inset 0 0 0 2px var(--color-secondary)}calendar-month::part(outside){opacity:.4}calendar-month::part(disabled){opacity:.3;cursor:not-allowed}calendar-month::part(disabled):hover{background:0 0}calendar-month::part(head){text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);padding:.5rem 0;font-size:.75rem;font-weight:600}calendar-month::part(range-start),calendar-month::part(range-end){background:var(--color-accent);color:#fff}calendar-month::part(range-inner){color:var(--color-brand-primary);background:#e6394626}@media (max-width:640px){.date-picker__dropdown{width:100%;min-width:unset;border-radius:16px 16px 0 0;max-height:85vh;position:fixed;inset:auto 0 0;overflow-y:auto;transform:translateY(100%)}.date-picker__dropdown:not([hidden]){transform:translateY(0)}calendar-month::part(button){width:44px;height:44px;font-size:1rem}.date-picker__nav{width:44px;height:44px}.date-picker__dropdown:before{content:"";background:var(--color-border);border-radius:2px;width:40px;height:4px;margin:.75rem auto 0;display:block}.date-picker__backdrop{z-index:99;opacity:0;visibility:hidden;background:#1d355780;transition:opacity .2s,visibility .2s;position:fixed;inset:0}.date-picker[data-open=true] .date-picker__backdrop{opacity:1;visibility:visible}}.date-picker__clear{width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:auto;padding:0;transition:all .15s;display:flex}.date-picker__clear:hover{background:var(--color-border);color:var(--color-brand-primary)}.date-picker__clear:focus{outline:none;box-shadow:0 0 0 2px #457b9d4d}.date-picker__footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.75rem;display:flex}.date-picker__today-btn{border:1px solid var(--color-border);font-family:var(--font-body);color:var(--color-secondary);cursor:pointer;background:0 0;border-radius:0;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s}.date-picker__today-btn:hover{background:var(--color-surface-light);border-color:var(--color-secondary);color:var(--color-brand-primary)}.date-picker__done-btn{background:var(--color-accent);font-family:var(--font-body);color:#fff;cursor:pointer;border:none;border-radius:0;padding:.5rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .15s}.date-picker__done-btn:hover{filter:brightness(.92)}.property-filters__secondary{flex-direction:column;gap:1rem;width:100%;display:flex}@media (min-width:768px){.property-filters__secondary{flex-direction:row;justify-content:center;align-items:flex-end;gap:1.5rem;width:100%}}.property-filters__more-toggle{font-family:var(--font-body);color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:1.05rem;font-weight:500;transition:all .15s;display:none}@media (min-width:768px){.property-filters__more-toggle{display:flex}}.property-filters__more-toggle:hover{background:#fff3;border-color:#ffffff80}.property-filters__more-toggle[aria-expanded=true]{background:var(--color-accent);border-color:var(--color-accent)}.property-filters__chevron{transition:transform .2s}.property-filters__more-toggle[aria-expanded=true] .property-filters__chevron{transform:rotate(180deg)}.property-filters__amenities{width:100%}@media (min-width:768px){.property-filters__amenities{border-top:1px solid #fff3;margin-top:.5rem;padding-top:1.5rem;display:none}.property-filters__amenities.is-open{display:block}}.property-filters__amenities-label{color:#ffffffb3;text-transform:uppercase;letter-spacing:.1em;border-top:1px solid var(--color-border);margin-bottom:1rem;padding-top:1rem;font-size:.8rem;font-weight:600}.property-filters__amenity-grid{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.property-filters__amenity-toggle{min-height:44px;font-family:var(--font-body);color:var(--color-brand-primary);cursor:pointer;white-space:nowrap;background:#fff;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;transition:all .2s;display:inline-flex}.property-filters__amenity-toggle svg{width:1rem;height:1rem}@media (min-width:768px){.property-filters__amenity-toggle{gap:.5rem;padding:.75rem 1.25rem;font-size:1rem}.property-filters__amenity-toggle svg{width:1.25rem;height:1.25rem}}.property-filters__amenity-toggle:hover{border-color:var(--color-accent);transform:translateY(-2px)}.property-filters__amenity-toggle[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.property-filters__amenity-toggle[aria-pressed=true]:hover{background:#c4303c}@supports (color:color-mix(in lab, red, red)){.property-filters__amenity-toggle[aria-pressed=true]:hover{background:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.property-filters__amenity-toggle[aria-pressed=true]:hover{border-color:#c4303c}@supports (color:color-mix(in lab, red, red)){.property-filters__amenity-toggle[aria-pressed=true]:hover{border-color:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.property-filters__search{width:100%}@media (min-width:768px){.property-filters__search{flex:1;max-width:450px}}.property-filters__search-wrapper{align-items:center;display:flex;position:relative}.property-filters__search-icon{color:var(--color-text-muted);pointer-events:none;position:absolute;left:1.25rem}.property-filters__search-input{width:100%;font-family:var(--font-body);color:var(--color-brand-primary);background:#fff;border:2px solid #0000;border-radius:8px;padding:.875rem 3rem;font-size:1.05rem;transition:all .15s}.property-filters__search-input::placeholder{color:var(--color-text-muted);font-weight:400}.property-filters__search-input:hover{border-color:var(--color-accent)}.property-filters__search-input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #e6394640}.property-filters__search-clear{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.5rem;transition:all .15s;position:absolute;right:.75rem}.property-filters__search-clear:hover{background:var(--color-border);color:var(--color-brand-primary)}.property-filters__hint{color:#ffffffb3;margin-top:.25rem;font-size:.95rem}.property-filters__hint .availability-loading{color:var(--color-frosted-blue,#a8dadc);align-items:center;gap:.4rem;display:inline-flex}.availability-spinner{border:2px solid var(--color-frosted-blue,#a8dadc);width:1rem;height:1rem;display:inline-block}@supports (color:color-mix(in lab, red, red)){.availability-spinner{border:2px solid color-mix(in srgb,var(--color-frosted-blue,#a8dadc)30%,transparent)}}.availability-spinner{border-top-color:var(--color-frosted-blue,#a8dadc);border-radius:50%;animation:.7s linear infinite availability-spin}@keyframes availability-spin{to{transform:rotate(360deg)}}.property-filters__hint .availability-error{color:var(--color-danger)}.property-filters__results{background:var(--color-brand-secondary);color:#fff;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;padding:.75rem 1.5rem;font-size:.875rem;display:flex}@media (min-width:768px){.property-filters__results{padding:1rem 2rem}}@media (min-width:1280px){.property-filters__results{padding-left:calc(50% - 600px);padding-right:calc(50% - 600px)}}#results-count strong{color:#fff;font-weight:700}.property-filters__clear-all{font-family:var(--font-body);color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff26;border:1px solid #ffffff4d;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .15s}.property-filters__clear-all:hover{color:var(--color-brand-primary);background:#fff;border-color:#fff}.property-filters__matrix-link{background:var(--color-brand-accent);color:#fff;white-space:nowrap;border-radius:6px;align-items:center;gap:.5rem;margin-left:auto;padding:.5rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.property-filters__matrix-link:hover{color:var(--color-brand-accent);background:#fff}.property-card.is-hidden{display:none}.property-card.is-filtering-out{opacity:0;transform:scale(.95)}.property-filters-empty{text-align:center;grid-column:1/-1;padding:4rem 2rem}.property-filters-empty__icon{justify-content:center;margin-bottom:1.5rem;display:flex}.property-filters-empty__title{color:var(--color-brand-primary);margin-bottom:.75rem;font-size:1.5rem;font-weight:500}.property-filters-empty__message{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:1rem}.property-filters-empty__button{background:var(--color-brand-secondary);color:#fff;font-family:var(--font-body);cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s;display:inline-flex}.property-filters-empty__button:hover{background:var(--color-brand-primary)}.shortlist-bar{z-index:1000;background:var(--color-brand-primary);position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -4px 20px #00000026}.shortlist-bar__content{align-items:center;gap:16px;max-width:1200px;margin:0 auto;padding:12px 20px;display:flex}.shortlist-bar__thumbs{flex-shrink:0;display:flex}.shortlist-bar__thumb{border:2px solid var(--color-brand-primary);object-fit:cover;border-radius:8px;width:40px;height:40px;margin-left:-8px}.shortlist-bar__thumb:first-child{margin-left:0}.shortlist-bar__text{flex:1;min-width:0}.shortlist-bar__count{color:#fff;font-size:.875rem;font-weight:600;display:block}.shortlist-bar__subtitle{color:var(--color-surface-muted);margin-top:2px;font-size:.75rem;display:block}.shortlist-bar__cta{background:var(--color-brand-accent);color:#fff;white-space:nowrap;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:10px 20px;font-size:.8125rem;font-weight:600;text-decoration:none;display:flex}.shortlist-bar__cta:hover{opacity:.9}.shortlist-bar__clear{color:var(--color-surface-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:.6875rem;text-decoration:underline}.shortlist-bar__clear:hover{color:#fff}@media (max-width:640px){.shortlist-bar__thumbs,.shortlist-bar__subtitle{display:none}.shortlist-bar__count{font-size:.875rem;font-weight:500}}.shortlist-pill{z-index:999;background:var(--color-brand-accent);color:#fff;cursor:pointer;opacity:0;border-radius:9999px;justify-content:center;align-items:center;width:3rem;height:3rem;text-decoration:none;display:flex;position:fixed;bottom:1.25rem;left:1.25rem;transform:translateY(.5rem);box-shadow:0 4px 12px #00000040}.shortlist-pill:hover{background:#c4303c}@supports (color:color-mix(in lab, red, red)){.shortlist-pill:hover{background:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.shortlist-pill:hover{color:#fff;transform:scale(1.05)}.shortlist-pill__icon{flex-shrink:0;width:1.25rem;height:1.25rem}.shortlist-pill__badge{background:var(--color-brand-primary);color:#fff;text-align:center;font-variant-numeric:tabular-nums;border-radius:9999px;min-width:1.25rem;height:1.25rem;padding:0 .25rem;font-size:.6875rem;font-weight:700;line-height:1.25rem;position:absolute;top:-.125rem;right:-.125rem}.about-hero{justify-content:center;align-items:center;min-height:70vh;display:flex;position:relative;overflow:hidden}.about-hero__image{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.about-hero__overlay{z-index:1;background:linear-gradient(#1d355733 0%,#1d355780 100%);position:absolute;inset:0}.about-hero__content{z-index:2;text-align:center;max-width:800px;padding:2rem;position:relative}.about-hero__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-surface-muted);margin-bottom:1rem;font-size:.75rem;font-weight:600}.about-hero__headline{font-family:var(--font-heading);color:#fff;margin-bottom:1.5rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:500;line-height:1.1}.about-hero__subheadline{color:#ffffffe6;max-width:600px;margin:0 auto;font-size:1.25rem;font-weight:300;line-height:1.8}.about-founders{background:var(--color-warm-cream);padding:8rem 2rem}.about-founders__header{text-align:center;max-width:700px;margin:0 auto 5rem}.about-founders__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-brand-accent);margin-bottom:1rem;font-size:.75rem;font-weight:600}.about-founders__title{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:500;line-height:1.1}.about-founders__intro{color:var(--color-text-body);font-size:1.15rem;line-height:1.8}.about-founders__grid{flex-direction:column;gap:6rem;max-width:1200px;margin:0 auto;display:flex}.about-founder{grid-template-columns:1fr 1.2fr;align-items:center;gap:4rem;display:grid}.about-founder--right{grid-template-columns:1.2fr 1fr}.about-founder__image-wrapper{position:relative}.about-founder__image-wrapper:before{content:"";border:2px solid var(--color-surface-muted);z-index:-1;position:absolute;inset:1.5rem -1.5rem -1.5rem 1.5rem}.about-founder--right .about-founder__image-wrapper:before{left:-1.5rem;right:1.5rem}.about-founder__image{aspect-ratio:4/5;object-fit:cover;width:100%;height:auto;box-shadow:var(--shadow-elevated);display:block}.about-founder__content{padding:1rem 0}.about-founder__name{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:.5rem;font-size:2rem;font-weight:500}.about-founder__role{letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-secondary);margin-bottom:1.5rem;font-size:.85rem;font-weight:600}.about-founder__bio{color:var(--color-text-body);margin-bottom:1.25rem;font-size:1.05rem;line-height:1.85}.about-founder__bio:last-child{margin-bottom:0}@media (max-width:968px){.about-founders{padding:5rem 1.5rem}.about-founders__header{margin-bottom:3rem}.about-founders__grid{gap:4rem}.about-founder,.about-founder--right{grid-template-columns:1fr;gap:2rem}.about-founder--right .about-founder__content{order:2}.about-founder--right .about-founder__image-wrapper{order:1}.about-founder__image-wrapper:before,.about-founder--right .about-founder__image-wrapper:before{inset:1rem -1rem -1rem 1rem}}.about-region{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.about-region__background{position:absolute;inset:0}.about-region__image{object-fit:cover;width:100%;height:100%}.about-region__overlay{background:linear-gradient(135deg,#1d3557d9 0%,#1d3557b3 50%,#1d355799 100%);position:absolute;inset:0}.about-region__content{z-index:2;text-align:center;max-width:800px;padding:6rem 2rem;position:relative}.about-region__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-surface-muted);margin-bottom:1rem;font-size:.75rem;font-weight:600}.about-region__title{font-family:var(--font-heading);color:#fff;margin-bottom:2rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:500;line-height:1.1}.about-region__description{margin-bottom:3rem}.about-region__description p{color:#ffffffe6;margin-bottom:1.5rem;font-size:1.15rem;line-height:1.9}.about-region__description p:last-child{margin-bottom:0}.about-region__stats{border-top:1px solid #fff3;justify-content:center;gap:4rem;padding-top:2rem;display:flex}.about-region__stat{text-align:center}.about-region__stat-number{font-family:var(--font-heading);color:#fff;margin-bottom:.5rem;font-size:2.5rem;font-weight:500;line-height:1;display:block}.about-region__stat-label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-surface-muted);font-size:.75rem;font-weight:600;display:block}@media (max-width:768px){.about-region__content{padding:4rem 1.5rem}.about-region__stats{flex-direction:column;gap:2rem}.about-region__stat-number{font-size:2rem}}.about-community{background:#fff;padding:8rem 2rem}.about-community__header{text-align:center;max-width:700px;margin:0 auto 5rem}.about-community__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-brand-accent);margin-bottom:1rem;font-size:.75rem;font-weight:600}.about-community__title{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:500;line-height:1.1}.about-community__intro{color:var(--color-text-body);font-size:1.15rem;line-height:1.8}.about-community__initiatives{grid-template-columns:repeat(3,1fr);gap:3rem;max-width:1100px;margin:0 auto;display:grid}.about-initiative{flex-direction:column;display:flex}.about-initiative__image-wrapper{margin-bottom:1.5rem;position:relative;overflow:hidden}.about-initiative__image{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .6s;display:block}.about-initiative:hover .about-initiative__image{transform:scale(1.05)}.about-initiative__content{flex:1}.about-initiative__title{font-family:var(--font-heading);color:var(--color-brand-primary);margin-bottom:1rem;font-size:1.5rem;font-weight:500}.about-initiative__description{color:var(--color-text-body);font-size:1rem;line-height:1.8}@media (max-width:968px){.about-community{padding:5rem 1.5rem}.about-community__header{margin-bottom:3rem}.about-community__initiatives{grid-template-columns:1fr;gap:3rem;max-width:500px}}.area-guide-intro{background:var(--color-warm-cream);text-align:center;padding:5rem 2rem}.area-guide-intro__content{max-width:700px;color:var(--color-text-body);margin:0 auto;font-size:1.15rem;line-height:1.8}.area-guide-section{background:#fff;padding:5rem 2rem}.area-guide-section--alt{background:var(--color-warm-cream)}.area-guide-section__container{max-width:1200px;margin:0 auto}.area-guide-section__heading{font-family:var(--font-heading);color:var(--color-deep-space);text-align:center;margin-bottom:3rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:500}.area-guide-section__grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.area-guide-card{background:#fff;border-radius:12px;transition:box-shadow .2s;overflow:hidden;box-shadow:0 1px 3px #00000014}.area-guide-section--alt .area-guide-card{box-shadow:0 2px 8px #0000000f}.area-guide-card:hover{box-shadow:0 4px 16px #0000001a}.area-guide-card__image-wrapper{aspect-ratio:5/3;overflow:hidden}.area-guide-card__image{object-fit:cover;width:100%;height:100%}.area-guide-card__body{padding:1.25rem}.area-guide-card__name{font-family:var(--font-heading);color:var(--color-deep-space);margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.area-guide-card__description{color:var(--color-text-body);margin-bottom:1rem;font-size:.9rem;line-height:1.6}.area-guide-card__details{flex-direction:column;gap:.4rem;margin-bottom:.75rem;display:flex}.area-guide-card__detail{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.area-guide-card__icon{width:1rem;height:1rem;color:var(--color-steel-blue);flex-shrink:0}.area-guide-card__link{color:var(--color-steel-blue);text-decoration:none}.area-guide-card__link:hover{text-decoration:underline}.area-guide-card__badge{color:var(--color-steel-blue);background:var(--color-frosted-blue-light,#a8dadc33);border-radius:100px;align-items:center;gap:.35rem;margin-bottom:.5rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.area-guide-card__badge-icon{width:.85rem;height:.85rem}.area-guide-card__website{color:var(--color-steel-blue);align-items:center;gap:.35rem;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.area-guide-card__website:hover{text-decoration:underline}@media (max-width:968px){.area-guide-section__grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.area-guide-section{padding:4rem 1.5rem}}@media (max-width:640px){.area-guide-section__grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}}[data-barba=wrapper]{position:relative;overflow:hidden}[data-barba=container]{transform-origin:50%}.barba-leave-active,.barba-enter-active{pointer-events:none}.contact-panel{z-index:3000;pointer-events:none;position:fixed;inset:0}.contact-panel[aria-hidden=false]{pointer-events:auto}.contact-panel__backdrop{opacity:0;background:#1d355799;position:absolute;inset:0}.contact-panel__content{background:var(--color-warm-cream,#faf8f5);width:100%;max-width:480px;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-10px 0 40px #1d355726}.contact-panel__close{color:var(--color-brand-primary,#1d3557);padding:.5rem;transition:color .2s;position:absolute;top:1.5rem;right:1.5rem}.contact-panel__close:hover{color:var(--color-brand-accent,#e63946)}.contact-panel__inner{padding:5rem 2rem 2rem}@media (max-width:480px){.contact-panel__content{max-width:100%}}.contact-pill{border:1px solid var(--color-brand-secondary,#457b9d);font-size:var(--font-base-px,13px);color:var(--color-brand-secondary,#457b9d);cursor:pointer;background:0 0;border-radius:9999px;padding:.375rem .875rem;line-height:1.4;transition:all .15s}.contact-pill:hover{background:var(--color-brand-secondary,#457b9d);color:#fff}.contact-pill[aria-pressed=true]{background:var(--color-brand-primary,#1d3557);border-color:var(--color-brand-primary,#1d3557);color:#fff}.contact-phone__label{font-size:.625rem}.contact-phone{text-decoration:none;transition:opacity .15s}.contact-phone:hover{opacity:.8}.contact-phone--whatsapp .contact-phone__number{color:#25d366}@media (max-width:480px){.contact-panel__phones{flex-direction:column;gap:.75rem}.contact-panel__divider{width:3rem;height:1px}}.property-hero{justify-content:center;align-items:flex-end;height:100vh;min-height:600px;max-height:900px;display:flex;position:relative;overflow:hidden}.property-hero__image{transition:transform 8s ease-out;position:absolute;inset:0;transform:scale(1.05)}.property-hero__image img,.property-hero__image picture{width:100%;height:100%;display:block}.property-hero__image img{object-fit:cover;object-position:center}.property-hero:hover .property-hero__image{transform:scale(1)}.property-hero__overlay{background:linear-gradient(#1d35570d 0%,#1d355740 75%,#1d3557b3 100%);position:absolute;inset:0}.property-hero__content{z-index:2;text-align:center;max-width:900px;padding:3rem 2rem 5rem;position:relative}.property-hero__badge{background:var(--color-brand-accent,#e63946);color:#fff;font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.5rem;padding:.5rem 1.25rem;font-size:.75rem;font-weight:600;display:inline-block}.property-hero__title{font-family:var(--font-heading);color:#fff;text-shadow:0 2px 20px #0000004d;margin-bottom:1rem;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:500;line-height:1.1}.property-hero__location{font-family:var(--font-body);color:#ffffffe6;justify-content:center;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:1.125rem;display:flex}.property-hero__stats{flex-wrap:wrap;justify-content:center;gap:1.5rem 2.5rem;display:flex}.property-hero__stat{font-family:var(--font-body);color:#ffffffe6;align-items:center;gap:.5rem;font-size:1rem;display:flex}.property-hero__stat--price{color:#fff;-webkit-backdrop-filter:blur(4px);background:#ffffff26;border:1px solid #ffffff40;border-radius:2rem;padding:.5rem 1rem;font-size:1rem}.property-hero__stat--price strong{font-size:1.375rem;font-weight:600}.property-hero__scroll-hint{color:#ffffffb3;letter-spacing:.1em;text-transform:uppercase;flex-direction:column;align-items:center;gap:.5rem;font-size:.875rem;animation:2s ease-in-out infinite float;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}@keyframes float{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-8px)}}.property-gallery{background:var(--color-warm-cream,#faf8f5);padding:5rem 0}.property-gallery__container{max-width:1400px;margin:0 auto;padding:0 2rem}.property-gallery__heading{font-family:var(--font-heading);letter-spacing:.15em;text-transform:uppercase;color:var(--color-brand-secondary,#457b9d);justify-content:center;align-items:center;gap:2rem;margin-bottom:3rem;font-size:2rem;font-weight:500;display:flex}.property-gallery__heading-line{background:var(--color-brand-secondary,#457b9d);opacity:.4;width:60px;height:1px}.property-gallery__grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.property-gallery__item{aspect-ratio:4/3;cursor:pointer;border-radius:4px;position:relative;overflow:hidden}.property-gallery__item--featured{grid-area:span 2/span 2}.property-gallery__item img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.property-gallery__item:hover img{transform:scale(1.05)}.property-gallery__caption{color:#fff;opacity:0;background:linear-gradient(#0000 0%,#000000b3 100%);padding:2rem 1rem 1rem;font-size:.875rem;transition:all .3s;position:absolute;bottom:0;left:0;right:0;transform:translateY(10px)}.property-gallery__item:hover .property-gallery__caption{opacity:1;transform:translateY(0)}.property-gallery__empty{color:var(--color-text-muted);flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;padding:4rem;display:flex}@media (max-width:1024px){.property-gallery__grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.property-gallery__grid{grid-template-columns:repeat(2,1fr)}.property-gallery__item--featured{grid-area:span 1/span 2}}.property-gallery__expand-wrap{text-align:center;margin-top:2rem}.property-gallery__expand-btn{font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-secondary,#457b9d);border:1px solid var(--color-brand-secondary,#457b9d);cursor:pointer;background:0 0;border-radius:2px;align-items:center;gap:.5rem;padding:.75rem 2rem;font-size:.875rem;font-weight:600;transition:background .3s,color .3s;display:inline-flex}.property-gallery__expand-btn:hover{background:var(--color-brand-secondary,#457b9d);color:#fff}.property-gallery__expand-btn[aria-expanded=true]{display:none}.property-gallery__extended{margin-top:1rem}.property-gallery__extended[hidden]{display:none}.property-rates{background:#fff;padding:5rem 0}.property-rates__container{grid-template-columns:1fr 380px;align-items:start;gap:3rem;max-width:1200px;margin:0 auto;padding:0 2rem;display:grid}.property-rates__heading{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);margin-bottom:1.5rem;font-size:3rem;font-weight:500}.property-rates__tabs{gap:.5rem;margin-bottom:1.5rem;display:flex}.property-rates__tab{border:1px solid var(--color-border,#e5e7eb);font-family:var(--font-body);color:var(--color-text-muted);cursor:pointer;background:0 0;padding:.75rem 1.5rem;font-size:1.3rem;font-weight:500;transition:all .2s}.property-rates__tab:hover{border-color:var(--color-brand-secondary,#457b9d);color:var(--color-brand-secondary,#457b9d)}.property-rates__tab--active{background:var(--color-brand-primary,#1d3557);border-color:var(--color-brand-primary,#1d3557);color:#fff}.property-rates__card{display:none}.property-rates__card--active{display:block}.property-rates__table{border-collapse:collapse;width:100%}.property-rates__table th{text-align:left;font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);border-bottom:2px solid var(--color-border);padding:1rem;font-size:.975rem;font-weight:600}.property-rates__table td{font-family:var(--font-body);border-bottom:1px solid var(--color-border);padding:1rem;font-size:1.1625rem}.property-rates__season{color:var(--color-brand-primary,#1d3557);font-weight:500}.property-rates__price{color:var(--color-brand-primary,#1d3557);font-weight:600}.property-rates__discounts{background:var(--color-surface-light,#f1faee);border-radius:4px;margin-top:1.5rem;padding:1.25rem}.property-rates__discounts h4{font-family:var(--font-body);color:var(--color-brand-primary,#1d3557);margin-bottom:.75rem;font-size:.875rem;font-weight:600}.property-rates__discounts ul{margin:0;padding:0;list-style:none}.property-rates__discounts li{color:var(--color-text-muted);padding:.25rem 0;font-size:.875rem}.property-rates__empty{text-align:center;color:var(--color-text-muted);padding:2rem}.property-booking__card{border:1px solid var(--color-border);background:#fff;border-radius:8px;padding:1.5rem;position:sticky;top:2rem;box-shadow:0 10px 40px #1d35571a}.property-booking__header{border-bottom:1px solid var(--color-border);margin-bottom:1.5rem;padding-bottom:1rem}.property-booking__price{font-family:var(--font-body);color:var(--color-text-muted);font-size:1rem}.property-booking__price strong{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);font-size:2rem;font-weight:500}.property-booking__price small{color:var(--color-text-muted);font-size:1rem}.property-booking__dates{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.property-booking__field{margin-bottom:1rem}.property-booking__field label{font-family:var(--font-body);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:block}.property-booking__field input,.property-booking__field select{border:1px solid var(--color-border);width:100%;font-family:var(--font-body);color:var(--color-brand-primary,#1d3557);border-radius:4px;padding:.875rem 1rem;font-size:1rem;transition:border-color .2s}.property-booking__field input:focus,.property-booking__field select:focus{border-color:var(--color-brand-secondary,#457b9d);outline:none;box-shadow:0 0 0 3px #457b9d26}.property-booking__summary{margin-bottom:1rem;padding:1rem 0}.property-booking__line{color:var(--color-text-muted);justify-content:space-between;padding:.375rem 0;font-size:.9375rem;display:flex}.property-booking__line--total{border-top:1px solid var(--color-border);color:var(--color-brand-primary,#1d3557);margin-top:.5rem;padding-top:.75rem;font-size:1.125rem;font-weight:600}.property-booking__submit{width:100%;padding:1rem;font-size:1rem}.property-booking__note{text-align:center;color:var(--color-text-muted);margin-top:1rem;font-size:.8125rem}@media (max-width:1024px){.property-rates__container{grid-template-columns:1fr}.property-booking__card{position:static}}.property-description{background:var(--color-warm-cream,#faf8f5);padding:5rem 0}.property-description__container{max-width:800px;margin:0 auto;padding:0 2rem}.property-description__heading{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);text-align:center;margin-bottom:2rem;font-size:2rem;font-weight:500}.property-description__content{font-family:var(--font-body);color:var(--color-text-body,#5a6672);font-size:1.125rem;line-height:1.8}.property-description__content p{margin-bottom:1.5rem}.property-reviews{background:var(--color-warm-cream,#faf8f5);padding:5rem 0}.property-reviews__container{max-width:1200px;margin:0 auto;padding:0 2rem}.property-reviews__heading{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);text-align:center;margin-bottom:2.5rem;font-size:2rem;font-weight:500}.property-reviews__grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;display:grid}.property-review{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 4px 20px #1d35570f}.property-review__stars{color:var(--color-warning);gap:.25rem;margin-bottom:1rem;display:flex}.property-review__quote{font-family:var(--font-body);color:var(--color-text-body);margin:0 0 1.25rem;font-size:1rem;font-style:italic;line-height:1.7}.property-review__author{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-top:1rem;display:flex}.property-review__name{color:var(--color-brand-primary,#1d3557);font-weight:600}.property-review__date{color:var(--color-text-muted);font-size:.8125rem}.property-location{background:#fff;padding:5rem 0}.property-location__container{max-width:1200px;margin:0 auto;padding:0 2rem}.property-location__heading{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);text-align:center;margin-bottom:1rem;font-size:2rem;font-weight:500}.property-location__description{text-align:center;color:var(--color-text-muted);max-width:600px;margin-bottom:2rem;margin-left:auto;margin-right:auto;font-size:1.125rem}.property-location__map{background:var(--color-surface-light,#f1faee);border-radius:8px;height:450px;overflow:hidden}.property-location__map-placeholder{height:100%;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.property-staff{background:var(--color-warm-cream,#faf8f5);padding:5rem 0}.property-staff__container{max-width:1200px;margin:0 auto;padding:0 2rem}.property-staff__heading{font-family:var(--font-heading);color:var(--color-brand-primary);text-align:center;margin-bottom:2.5rem;font-size:2rem;font-weight:500}.property-staff__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));justify-items:center;gap:2rem;display:grid}.property-staff__grid--few{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.property-staff__card{text-align:center;flex-direction:column;align-items:center;max-width:260px;display:flex}.property-staff__grid--few .property-staff__card{text-align:left;flex-direction:row;align-items:flex-start;gap:1.25rem;max-width:420px}.property-staff__grid--few .property-staff__photo-wrap{flex-shrink:0}.property-staff__grid--few .property-staff__info{padding-top:.25rem}.property-staff__photo-wrap{background:var(--color-surface-muted,#a8dadc);border-radius:50%;flex-shrink:0;width:112px;height:112px;margin-bottom:1rem;overflow:hidden}.property-staff__photo{object-fit:cover;width:100%;height:100%}.property-staff__photo-placeholder{color:#fff;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.property-staff__info{flex-direction:column;gap:.25rem;display:flex}.property-staff__name{font-family:var(--font-heading);color:var(--color-brand-primary);font-size:1.125rem;font-weight:600}.property-staff__role{color:var(--color-brand-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:500}.property-staff__bio{color:var(--color-text-muted);margin-top:.5rem;font-size:.875rem;line-height:1.5}.property-similar{background:var(--color-warm-cream,#faf8f5);padding:5rem 0}.property-similar__container{max-width:1200px;margin:0 auto;padding:0 2rem}.property-similar__heading{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);text-align:center;margin-bottom:2.5rem;font-size:2rem;font-weight:500}.property-similar__grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}@media (max-width:1024px){.property-similar__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.property-similar__grid{grid-template-columns:1fr}}.property-similar__cta{text-align:center;margin-top:2rem}.property-mobile-bar{z-index:50;border-top:1px solid var(--color-border);background:#fff;padding:1rem;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #1d35571a}.property-mobile-bar__content{justify-content:space-between;align-items:center;max-width:600px;margin:0 auto;display:flex}.property-mobile-bar__price{color:var(--color-text-muted);font-size:.9375rem}.property-mobile-bar__price strong{color:var(--color-brand-primary,#1d3557);font-size:1.25rem;font-weight:600}@media (max-width:1024px){.property-mobile-bar{display:block}.property-similar{padding-bottom:8rem}}.property-not-found{background:var(--color-warm-cream,#faf8f5);justify-content:center;align-items:center;min-height:60vh;display:flex}.property-not-found__content{text-align:center;padding:2rem}.property-not-found__content svg{color:var(--color-text-muted);margin-bottom:2rem}.property-not-found__content h1{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);margin-bottom:1rem;font-size:2.5rem}.property-not-found__content p{color:var(--color-text-muted);margin-bottom:2rem;font-size:1.125rem}.lightbox{z-index:2000;opacity:0;visibility:hidden;background:#000000f2;justify-content:center;align-items:center;transition:all .3s;display:flex;position:fixed;inset:0}.lightbox--active{opacity:1;visibility:visible}.lightbox__picture{display:contents}.lightbox__image{object-fit:contain;max-width:90vw;max-height:90vh}.lightbox__close{z-index:10;color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:background .2s;display:flex;position:absolute;top:2rem;right:2rem}.lightbox__close:hover{background:#fff3}.lightbox__nav{z-index:10;color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav:hover{background:#fff3}.lightbox__nav--prev{left:2rem}.lightbox__nav--next{right:2rem}.lightbox__caption{color:#fff;text-align:center;box-sizing:border-box;max-width:min(92%,60ch);margin-inline:auto;padding:0 .75rem;font-size:.9375rem;position:absolute;bottom:2rem;left:0;right:0}.property-booking__calendar{text-align:center;margin-bottom:1.5rem}.property-booking__calendar calendar-range{--color-accent:var(--color-brand-primary,#1d3557);--color-text-on-accent:white;font-family:var(--font-body);display:inline-block}.property-booking__calendar calendar-month{width:100%}.property-booking__calendar [part~=available]{position:relative}.property-booking__calendar [part~=available]:after{content:"";background:var(--color-brand-secondary,#457b9d);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.property-booking__calendar [part~=blocked],.property-booking__calendar [part~=no-rate]{color:var(--color-text-muted,#9ca3af);cursor:not-allowed}.property-booking__warning{background:var(--color-warning-light);color:var(--color-warning-dark);border-radius:.375rem;margin-bottom:1rem;padding:.75rem;font-size:.875rem}.property-booking__calendar calendar-month::part(table){font-size:1.15rem}.property-booking__guests{margin-bottom:1.5rem}.property-booking__label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary,#6b7280);margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:block}.property-booking__stepper{border-bottom:1px solid var(--color-border,#e5e7eb);justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.property-booking__stepper:last-child{border-bottom:none}.property-booking__stepper-label{color:var(--color-text-primary,#1f2937);font-size:.9375rem}.property-booking__stepper-controls{align-items:center;gap:1rem;display:flex}.property-booking__stepper-controls button{border:1px solid var(--color-border,#d1d5db);width:2rem;height:2rem;color:var(--color-text-primary,#1f2937);cursor:pointer;background:#fff;border-radius:50%;font-size:1.25rem;line-height:1;transition:all .15s}.property-booking__stepper-controls button:hover:not(:disabled){border-color:var(--color-brand-primary,#1d3557);color:var(--color-brand-primary,#1d3557)}.property-booking__stepper-controls button:disabled{opacity:.4;cursor:not-allowed}.property-booking__stepper-controls [data-count]{text-align:center;min-width:1.5rem;font-weight:500}.property-booking__breakdown{padding-top:1rem}.property-booking__loading{padding:var(--spacing-4)0;color:var(--color-muted);font-size:var(--text-sm);font-style:italic}.property-booking__line{justify-content:space-between;padding:.375rem 0;font-size:.9375rem;display:flex}.property-booking__line--discount{color:var(--color-success)}.property-booking__line--total{border-top:2px solid var(--color-brand-accent,#e63946);margin-top:.75rem;padding-top:.75rem;font-size:1.125rem;font-weight:600}.property-booking__confirmation{text-align:center;padding:2rem 1rem}.booking-panel{z-index:2100;pointer-events:none;visibility:hidden;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.booking-panel--active{pointer-events:auto;visibility:visible}@media (min-width:640px){.booking-panel{justify-content:flex-end;align-items:stretch}}.booking-panel__overlay{background:#00000040;position:absolute;inset:0}.booking-panel__property-name{font-family:var(--font-heading);color:var(--color-text-primary,#1f2937);margin:0 0 .25rem;font-size:1.125rem;font-weight:600}.booking-panel__dates,.booking-panel__guests-text{color:var(--color-text-secondary,#6b7280);margin:0 0 .25rem;font-size:.875rem}.booking-panel__total{color:var(--color-brand-primary,#1d3557);margin:.5rem 0 0;font-size:1.25rem;font-weight:600}.booking-panel__content{background:#fff;border-radius:1rem 1rem 0 0;width:100%;max-height:90vh;position:relative;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}@media (min-width:640px){.booking-panel__content{border-radius:.75rem 0 0 .75rem;width:65%;height:100vh;max-height:none;transform:translate(100%)}}@media (min-width:1024px){.booking-panel__content{width:40%}}.booking-panel__header{border-bottom:1px solid var(--color-border,#e5e7eb);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.booking-panel__title{font-family:var(--font-heading);margin:0;font-size:1.25rem;font-weight:600}.booking-panel__close{cursor:pointer;color:var(--color-text-secondary,#6b7280);background:0 0;border:none;margin:-.5rem;padding:.5rem;transition:color .15s}.booking-panel__close:hover{color:var(--color-text-primary,#1f2937)}.booking-panel__summary{background:var(--color-surface-secondary,#f9fafb);border-bottom:1px solid var(--color-border,#e5e7eb);padding:1rem 1.5rem}.booking-panel__form{padding:1.5rem}.booking-panel__row{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:480px){.booking-panel__row{grid-template-columns:1fr 1fr}}.booking-panel__field{margin-bottom:1rem}.booking-panel__field label{color:var(--color-text-primary,#1f2937);margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.required-mark{color:var(--color-accent,#e63946)}.booking-panel__field input,.booking-panel__field select,.booking-panel__field textarea{border:1px solid var(--color-border,#d1d5db);border-radius:.375rem;width:100%;padding:.625rem .75rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}.booking-panel__field input:focus,.booking-panel__field select:focus,.booking-panel__field textarea:focus{border-color:var(--color-brand-primary,#1d3557);outline:none;box-shadow:0 0 0 3px #1d35571a}.booking-panel__error{background:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.booking-panel__error{background:color-mix(in srgb,var(--color-danger)12%,white)}}.booking-panel__error{color:var(--color-danger);border-radius:.375rem;margin-bottom:1rem;padding:.75rem;font-size:.875rem}.booking-panel__submit{width:100%;margin-bottom:1rem}.booking-panel__note{text-align:center;color:var(--color-text-secondary,#6b7280);margin:0;font-size:.875rem}.booking-panel__guests{border-bottom:1px solid var(--color-border,#e5e7eb);margin-bottom:.5rem;padding-bottom:1rem}.booking-panel__stepper{border:1px solid var(--color-border,#d1d5db);border-radius:.375rem;align-items:center;display:inline-flex;overflow:hidden}.booking-panel__stepper button{background:var(--color-surface,#fff);width:36px;height:36px;color:var(--color-text,#1d3557);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:1.125rem;font-weight:500;transition:background .15s;display:flex}.booking-panel__stepper button:hover{background:var(--color-bg,#faf8f5)}.booking-panel__stepper [data-count]{text-align:center;min-width:36px;font-family:var(--font-body);color:var(--color-text,#1d3557);border-left:1px solid var(--color-border,#d1d5db);border-right:1px solid var(--color-border,#d1d5db);font-size:1rem;font-weight:600;line-height:36px}.booking-panel__consent{background:var(--color-surface-secondary,#f9fafb);border:1px solid var(--color-border,#e5e7eb);border-radius:.375rem;margin-bottom:1rem;padding:.75rem}.booking-panel__consent-label{color:var(--color-text-secondary,#6b7280);cursor:pointer;align-items:flex-start;gap:.625rem;font-size:.75rem;line-height:1.5;display:flex}.booking-panel__consent-label input[type=checkbox]{flex-shrink:0;margin-top:.125rem}.booking-panel__consent-label a{color:var(--color-link,#e63946);text-decoration:underline}.booking-panel__payment{padding:1rem 1.5rem}.payment-step__status{text-align:center;color:var(--color-text-secondary,#6b7280);margin-bottom:.75rem;font-size:.875rem}.payment-iframe{border:1px solid var(--color-border,#e5e7eb);border-radius:.5rem;width:100%;height:900px}.payment-step__result{text-align:center;padding:2rem 1rem}.payment-step__result--success{color:var(--color-success)}.payment-step__result--success h3{margin:1rem 0 .5rem;font-size:1.25rem;font-weight:600}.payment-step__result--success p{color:var(--color-text-secondary,#6b7280)}.payment-step__icon{color:var(--color-success)}.payment-step__result--error{background:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.payment-step__result--error{background:color-mix(in srgb,var(--color-danger)12%,white)}}.payment-step__result--error{color:var(--color-danger);border-radius:.5rem;padding:1rem;font-size:.875rem}.booking-panel__policies{border-top:1px solid var(--color-border,#e5e7eb);margin-bottom:1rem}.booking-panel__policy{border-bottom:1px solid var(--color-border,#e5e7eb)}.booking-panel__policy-header{cursor:pointer;width:100%;color:var(--color-text-primary,#1f2937);background:0 0;border:none;justify-content:space-between;align-items:center;padding:.875rem 0;font-size:.875rem;font-weight:500;transition:color .15s;display:flex}.booking-panel__policy-header:hover{color:var(--color-brand-primary,#1d3557)}.booking-panel__policy-title{align-items:center;gap:.5rem;display:flex}.booking-panel__policy-status{align-items:center;gap:.25rem;display:flex}.booking-panel__policy-chevron{transition:transform .3s}.booking-panel__policy-header[aria-expanded=true] .booking-panel__policy-chevron{transform:rotate(180deg)}.booking-panel__policy-check{color:var(--color-success,#10b981);opacity:0;transition:opacity .2s}.booking-panel__policy--acknowledged .booking-panel__policy-check{opacity:1}.booking-panel__policy-body{grid-template-rows:0fr;transition:grid-template-rows .3s;display:grid}.booking-panel__policy-body>*{overflow:hidden}.booking-panel__policy-scroll{max-height:200px;color:var(--color-text-secondary,#6b7280);padding:0 0 .75rem;font-size:.8125rem;line-height:1.6;overflow-y:auto}.booking-panel__policy-scroll::-webkit-scrollbar{width:4px}.booking-panel__policy-scroll::-webkit-scrollbar-thumb{background:var(--color-border,#d1d5db);border-radius:2px}.booking-panel__policy-acknowledge{color:var(--color-text-secondary,#6b7280);cursor:pointer;align-items:center;gap:.5rem;padding:.5rem 0 .75rem;font-size:.75rem;display:flex}.booking-panel__policy-acknowledge input[type=checkbox]{flex-shrink:0}.booking-panel__submit:disabled{opacity:.5;cursor:not-allowed}.booking-panel__gate-hint{text-align:center;color:var(--color-text-secondary,#6b7280);margin-bottom:.75rem;font-size:.8125rem;font-style:italic}.booking-stepper{border-bottom:1px solid var(--color-surface-muted);background:#fff;justify-content:center;align-items:center;padding:14px 20px;display:flex}.booking-stepper__step{align-items:center;gap:6px;display:flex}.booking-stepper__dot{background:var(--color-surface-muted);width:26px;height:26px;color:var(--color-brand-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.booking-stepper__step--active .booking-stepper__dot{background:var(--color-brand-primary);color:#fff}.booking-stepper__step--completed .booking-stepper__dot{background:var(--color-brand-secondary);color:#fff}.booking-stepper__label{color:var(--color-surface-muted);font-size:.75rem}.booking-stepper__step--active .booking-stepper__label{color:var(--color-brand-primary);font-weight:600}.booking-stepper__step--completed .booking-stepper__label{color:var(--color-brand-secondary);font-weight:600}.booking-stepper__connector{background:var(--color-surface-muted);width:28px;height:1px}@media (max-width:359px){.booking-stepper__label{display:none}}.booking-step__content{padding:20px}.booking-step__heading{text-transform:uppercase;letter-spacing:.5px;color:var(--color-brand-primary);margin-bottom:10px;font-family:Cormorant Garamond,Georgia,serif;font-size:.8125rem;font-weight:700}.booking-step__divider{background:var(--color-surface-muted);border:none;height:1px;margin:24px 0}.booking-step__section{margin-bottom:20px}.payment-methods{flex-direction:column;display:flex}.payment-methods__loading{color:var(--color-brand-secondary);justify-content:center;align-items:center;gap:8px;padding:20px;display:flex}.payment-methods__card{border:1px solid var(--color-surface-muted);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:10px;margin-bottom:6px;padding:12px 14px;transition:border-color .2s;display:flex}.payment-methods__card:hover:not(.payment-methods__card--disabled){border-color:var(--color-brand-secondary)}.payment-methods__card--selected{border:2px solid var(--color-brand-primary)}.payment-methods__card--disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.payment-methods__radio{border:2px solid var(--color-surface-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.payment-methods__card--selected .payment-methods__radio{border-color:var(--color-brand-primary)}.payment-methods__radio-dot{background:var(--color-brand-primary);border-radius:50%;width:9px;height:9px}.payment-methods__icon{color:var(--color-brand-secondary);flex-shrink:0}.payment-methods__card--selected .payment-methods__icon{color:var(--color-brand-primary)}.payment-methods__info{flex:1}.payment-methods__name{color:var(--color-brand-primary);font-size:.875rem;font-weight:600}.payment-methods__sublabel{color:var(--color-brand-secondary);margin-top:1px;font-size:.6875rem}.payment-methods__fee{text-align:right;flex-shrink:0}.payment-methods__fee-amount{color:var(--color-brand-primary);font-size:.8125rem;font-weight:600}.payment-methods__fee-label{color:var(--color-brand-secondary);font-size:.625rem}.booking-step__policy-card{border:1px solid var(--color-surface-muted);background:#fff;border-radius:8px;padding:14px 16px}.booking-step__tier-badge{background:var(--color-surface-muted);color:var(--color-brand-primary);text-transform:uppercase;letter-spacing:.5px;border-radius:4px;margin-bottom:8px;padding:2px 8px;font-size:.6875rem;font-weight:700;display:inline-block}.booking-step__policy-text{color:var(--color-brand-primary);font-size:.8125rem;line-height:1.5}.booking-step__scroll-region{max-height:200px;color:var(--color-brand-primary);font-size:.8125rem;line-height:1.6;overflow-y:auto}.booking-step__heading-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.booking-step__heading-row .booking-step__heading{margin-bottom:0}.booking-step__scroll-badge{text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:9999px;padding:2px 8px;font-size:.625rem;font-weight:700;transition:background-color .3s,color .3s;display:inline-block}.booking-step__scroll-badge--pending{background:var(--color-brand-accent);color:#fff}.booking-step__scroll-badge--reviewed{background:var(--color-success);color:#fff}.booking-step__terms-iframe{border:1px solid var(--color-surface-muted);border-radius:8px;height:250px;position:relative;overflow:hidden}.booking-step__terms-iframe-el{border:none;width:100%;height:100%;display:block}.booking-step__iframe-loading{background:var(--color-warm-cream);z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.booking-step__iframe-loading[hidden]{display:none}.booking-step__gate-hint{color:var(--color-brand-accent);margin:4px 0 0 26px;font-size:.75rem;font-style:italic;line-height:1.4}.booking-step__gate-hint[hidden]{display:none}.booking-step__partner-notice{border:1px solid var(--color-surface-muted);background:#a8dadc33;border-radius:8px;align-items:flex-start;gap:10px;padding:14px 16px;display:flex}.booking-step__partner-notice svg{color:var(--color-brand-secondary);flex-shrink:0;margin-top:1px}.booking-step__partner-notice p{color:var(--color-brand-primary);font-size:.8125rem;line-height:1.5}.booking-step__total{border:1px solid var(--color-surface-muted);background:#fff;border-radius:8px;margin-bottom:16px;padding:14px 16px}.booking-step__total-row{margin-bottom:6px;display:flex}.booking-step__total-label{color:var(--color-brand-secondary);flex:1;font-size:.75rem}.booking-step__total-amount{color:var(--color-brand-primary);font-size:.75rem}.booking-step__total-divider{background:var(--color-surface-muted);border:none;height:1px;margin:8px 0}.booking-step__total-row--total .booking-step__total-label{color:var(--color-brand-primary);font-family:Cormorant Garamond,Georgia,serif;font-size:.875rem;font-weight:700}.booking-step__total-row--total .booking-step__total-amount{color:var(--color-brand-primary);font-size:1rem;font-weight:700}.booking-step__deposit-note{background:var(--color-warm-cream);border:1px solid var(--color-surface-muted);text-align:center;color:var(--color-brand-secondary);border-radius:6px;margin-top:8px;padding:8px 10px;font-size:.75rem}.booking-step__deposit-note strong{color:var(--color-brand-accent)}.booking-step__agreement{align-items:flex-start;gap:8px;margin-bottom:16px;display:flex}.booking-step__agreement input[type=checkbox]{accent-color:var(--color-brand-primary);margin-top:3px}.booking-step__agreement span{color:var(--color-brand-secondary);font-size:.75rem;line-height:1.4}.booking-step__agreement a{color:var(--color-brand-accent);text-decoration:underline}.booking-panel__footer{border-top:1px solid var(--color-surface-muted);background:#fff;justify-content:space-between;align-items:center;padding:12px 20px;display:flex;position:sticky;bottom:0}.booking-panel__back{border:1px solid var(--color-surface-muted);color:var(--color-brand-primary);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:10px 18px;font-size:.8125rem;display:flex}.booking-panel__back:hover{border-color:var(--color-brand-secondary)}.booking-panel__next{background:var(--color-brand-accent);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;margin-left:auto;padding:10px 24px;font-size:.8125rem;font-weight:600;display:flex}.booking-panel__next:hover{opacity:.9}.booking-panel__next:disabled{opacity:.5;cursor:not-allowed}.booking-step__bank-transfer{padding:20px}.booking-step__bank-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.booking-step__bank-card{border-radius:8px;overflow:hidden}.booking-step__bank-field{padding:12px 16px}.booking-step__bank-field:last-child{border-bottom:none}.booking-step__bank-value-row{justify-content:space-between;align-items:center;display:flex}.booking-step__bank-instructions{padding:12px 16px}.booking-step__bank-instructions-text{white-space:pre-line;margin:4px 0 0}.booking-step__iframe-container{margin:0 -20px;padding:0}.booking-step__iframe-container iframe{border:none;border-top:1px solid var(--color-surface-muted);border-bottom:1px solid var(--color-surface-muted);border-radius:0;width:100%;height:500px}@media (min-width:640px){.booking-step__iframe-container{margin:0}.booking-step__iframe-container iframe{border:1px solid var(--color-surface-muted);border-radius:8px;height:650px}}.booking-step__loading{color:var(--color-brand-secondary);flex-direction:column;align-items:center;gap:8px;padding:40px;display:flex}.booking-step__error{border:1px solid var(--color-brand-accent);color:var(--color-brand-accent);background:#e639461a;border-radius:8px;padding:14px 16px;font-size:.8125rem}.property-booking-section{background:var(--color-surface-secondary,#faf8f5);padding:4rem 0}.property-booking-section__container{gap:2rem;max-width:1280px;margin:0 auto;padding:0 1.5rem;display:grid}@media (min-width:1024px){.property-booking-section__container{grid-template-columns:1fr 400px;align-items:start;gap:3rem}}.property-booking-section__info{flex-direction:column;gap:1.5rem;display:flex}@media (min-width:1024px){.property-booking-section__description{flex:1 1 0}}.property-amenities{margin-bottom:2rem}.property-amenities__heading{font-family:var(--font-heading);color:var(--color-brand-primary);margin:0 0 1rem;font-size:1.5rem;font-weight:500}.property-amenities__stats{border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:1.25rem 2rem;margin-bottom:1.5rem;padding-bottom:1.25rem;display:flex}.property-amenities__stat{color:var(--color-text);align-items:center;gap:.5rem;font-size:.95rem;display:inline-flex}.property-amenities__stat svg{color:var(--color-brand-secondary);flex-shrink:0}.property-amenities__groups{grid-template-columns:repeat(3,1fr);gap:1.5rem 2.5rem;display:grid}@media (max-width:968px){.property-amenities__groups{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.property-amenities__groups{grid-template-columns:1fr}}.property-amenities__group{flex-direction:column;display:flex;position:relative}.property-amenities__group-heading{font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-secondary);margin:0 0 .5rem;font-size:.75rem;font-weight:600}.property-amenities__list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.property-amenities__item{font-family:var(--font-body);color:var(--color-text);padding:0;font-size:.95rem;line-height:1.4;display:block}.property-amenities__more-btn{cursor:pointer;font-family:var(--font-body);color:var(--color-brand-secondary);text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;margin-top:.25rem;padding:0;font-size:.85rem;text-decoration:underline;text-decoration-thickness:1px}.property-amenities__more-btn:hover{color:var(--color-brand-primary)}.property-amenities__more-btn[aria-expanded=true]+.property-amenities__overflow{display:block}.property-amenities__overflow{z-index:10;border:1px solid var(--color-border);width:min(280px,90vw);box-shadow:var(--shadow-card-hover);background:#fff;margin-top:.5rem;padding:1.25rem 1.5rem;display:none;position:absolute;top:100%;left:0}.property-amenities__overflow[hidden]{display:none}.property-amenities__overflow ul{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.property-amenities__overflow li{font-family:var(--font-body);color:var(--color-text);font-size:.95rem;line-height:1.4}.property-bedrooms{border-top:1px solid #457b9d33;margin-top:1.5rem;padding-top:1.5rem}@supports (color:color-mix(in lab, red, red)){.property-bedrooms{border-top:1px solid color-mix(in srgb,var(--color-brand-secondary)20%,transparent)}}.property-bedrooms__heading{font-family:var(--font-heading);color:var(--color-text-primary,#1f2937);margin:0 0 .75rem;font-size:1.25rem;font-weight:600}.property-bedrooms__list{grid-template-columns:1fr;gap:.75rem 2.5rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:640px){.property-bedrooms__list{grid-template-columns:repeat(2,1fr)}}@media (min-width:968px){.property-bedrooms__list{grid-template-columns:repeat(3,1fr)}}.property-bedrooms__item{align-items:flex-start;gap:.75rem;padding:.5rem 0;display:flex}.property-bedrooms__icon{color:var(--color-brand-secondary);flex-shrink:0;margin-top:.125rem}.property-bedrooms__detail{flex-direction:column;line-height:1.4;display:flex}.property-bedrooms__label{color:var(--color-brand-primary);font-size:.875rem;font-weight:600}.property-bedrooms__beds{color:var(--color-text-primary,#1f2937);font-size:.875rem}@supports (color:color-mix(in lab, red, red)){.property-bedrooms__beds{color:color-mix(in srgb,var(--color-text-primary,#1f2937)70%,transparent)}}.property-booking-section__description{flex-direction:column;min-height:0;display:flex;position:relative}.property-booking-section__description-heading{font-family:var(--font-heading);color:var(--color-text-primary,#1f2937);flex-shrink:0;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.property-booking-section__description-content{color:var(--color-text-secondary,#4b5563);flex:1;padding-bottom:3rem;font-size:1.0625rem;line-height:1.75;overflow-y:auto}.property-booking-section__description-content p{margin:0 0 1rem}.property-booking-section__description-content p:last-child{margin-bottom:0}.property-booking-section__description-fade{background:linear-gradient(to bottom,transparent 0%,var(--color-surface-secondary,#faf8f5)70%);pointer-events:none;justify-content:center;align-items:flex-end;height:4rem;padding-bottom:.75rem;display:none;position:absolute;bottom:0;left:0;right:0}.property-booking-section__description-fade.is-visible{display:flex}.property-booking-section__description-fade span{letter-spacing:.05em;text-transform:uppercase;color:var(--color-brand-secondary,#457b9d);font-size:.75rem;font-weight:500}.property-los-discounts{background:var(--color-warm-cream);border:1px solid var(--color-surface-muted);border-radius:var(--radius-card,1rem);color:var(--color-brand-primary);padding:1rem 1.25rem}.property-los-discounts__message{align-items:center;gap:.5rem;margin:0;font-size:.9375rem;display:flex}.pricing-calendar{margin-bottom:1.5rem}.pricing-calendar__callout{background:var(--color-warm-sand,#e8f5e9);border:1px solid var(--color-brand-secondary,#457b9d);border-radius:.5rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.pricing-calendar__callout-header{font-family:var(--font-heading);color:var(--color-text-primary,#1f2937);align-items:center;gap:.5rem;margin-bottom:.375rem;font-size:1rem;font-weight:600;display:flex}.pricing-calendar__callout-header svg{width:1.125rem;height:1.125rem;color:var(--color-brand-secondary,#457b9d)}.pricing-calendar__callout-text{color:var(--color-text-secondary,#4b5563);margin:0;font-size:.875rem;line-height:1.5}.pricing-calendar__header{margin-bottom:1rem}.pricing-calendar__title{font-family:var(--font-heading);color:var(--color-text-primary,#1f2937);align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.25rem;font-weight:600;display:flex}.pricing-calendar__subtitle{color:var(--color-text-secondary,#6b7280);margin:0;font-size:.875rem}.pricing-calendar__nav{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.pricing-calendar__nav-btn{border:1px solid var(--color-border,#d1d5db);width:2.25rem;height:2.25rem;color:var(--color-text-primary,#1f2937);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex}.pricing-calendar__nav-btn:hover:not(:disabled){border-color:var(--color-brand-primary,#1d3557);color:var(--color-brand-primary,#1d3557)}.pricing-calendar__nav-btn:disabled{opacity:.4;cursor:not-allowed}.pricing-calendar__month-display{font-family:var(--font-heading);color:var(--color-text-primary,#1f2937);font-size:1.625rem;font-weight:600}.pricing-calendar__table{border:1px solid var(--color-border,#e5e7eb);border-radius:.5rem;overflow:hidden}.pricing-calendar__weekdays{text-align:center;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary,#6b7280);border-bottom:1px solid var(--color-border,#e5e7eb);background:#fff;grid-template-columns:repeat(7,1fr);padding:.75rem 0;font-size:.75rem;font-weight:600;display:grid}.pricing-calendar__grid{background:#fff;grid-template-columns:repeat(7,1fr);display:grid}.pricing-calendar__row{display:contents}.pricing-calendar__day{border:none;border-bottom:1px solid var(--color-border,#e5e7eb);cursor:pointer;background:#fff;flex-direction:column;justify-content:flex-start;align-items:center;min-height:70px;padding-top:.625rem;transition:background-color .15s;display:flex;position:relative}.pricing-calendar__day:nth-last-child(-n+7){border-bottom:none}.pricing-calendar__day:hover:not(:disabled){background:var(--color-surface-secondary,#f3f4f6)}.pricing-calendar__day-number{color:var(--color-text-primary,#1f2937);font-size:1rem;font-weight:500;line-height:1}.pricing-calendar__day-price{color:var(--color-brand-secondary,#457b9d);margin-top:.5rem;font-size:1rem;font-weight:600}.pricing-calendar__day--other-month{background:var(--color-surface-secondary,#f9fafb)}.pricing-calendar__day--other-month .pricing-calendar__day-number{color:var(--color-text-muted,#9ca3af)}.pricing-calendar__day--other-month .pricing-calendar__day-price{display:none}.pricing-calendar__day--next-month .pricing-calendar__day-number{color:var(--color-text-secondary,#6b7280)}.pricing-calendar__day--past{background:var(--color-surface-secondary,#f3f4f6);cursor:not-allowed}.pricing-calendar__day--past .pricing-calendar__day-number{color:var(--color-text-muted,#9ca3af)}.pricing-calendar__day--past .pricing-calendar__day-price{display:none}.pricing-calendar__day--today{background:#fff}.pricing-calendar__day--today .pricing-calendar__day-number{color:var(--color-brand-primary,#1d3557);font-weight:700}.pricing-calendar__day--unavailable{background:var(--color-surface-secondary,#f5f5f5);cursor:not-allowed}.pricing-calendar__day--unavailable .pricing-calendar__day-number{color:var(--color-text-muted,#9ca3af)}.pricing-calendar__day--unavailable .pricing-calendar__day-price{display:none}.pricing-calendar__day--checkout-ok{background:linear-gradient(to right,#fff 40%,var(--color-surface-secondary,#f5f5f5)80%);cursor:pointer}.pricing-calendar__day--checkout-ok .pricing-calendar__day-number{color:var(--color-text-muted,#9ca3af)}.pricing-calendar__day--checkout-ok .pricing-calendar__day-price{display:none}.pricing-calendar__day--checkout-ok:before{content:"";pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8'%3E%3Cpolyline points='2,1 8,4 2,7' fill='none' stroke='%23457B9D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' opacity='0.2'/%3E%3C/svg%3E");background-position:top;background-repeat:repeat-y;width:10px;position:absolute;top:3px;bottom:3px;left:50%;transform:translate(-50%)}.pricing-calendar__day--checkout-ok:after{content:"out";font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-secondary,#457b9d);opacity:0;pointer-events:none;font-size:.5rem;font-weight:700;transition:opacity .15s;position:absolute;bottom:.375rem;left:50%;transform:translate(-50%)}:root[lang=es] .pricing-calendar__day--checkout-ok:after{content:"sale"}.pricing-calendar__day--checkout-ok:hover:after{opacity:1}.pricing-calendar__day--checkout-ok:hover{background:linear-gradient(to right,#e3ebf0 40%,var(--color-surface-secondary,#f5f5f5)80%)}@supports (color:color-mix(in lab, red, red)){.pricing-calendar__day--checkout-ok:hover{background:linear-gradient(to right,color-mix(in srgb,#fff 85%,var(--color-brand-secondary))40%,var(--color-surface-secondary,#f5f5f5)80%)}}.pricing-calendar__day--pending{background:repeating-linear-gradient(45deg,#ebebeb,#ebebeb 3px,var(--color-warm-cream)3px,var(--color-warm-cream)8px);cursor:not-allowed}.pricing-calendar__day--pending .pricing-calendar__day-number{color:var(--color-text-muted,#9ca3af)}.pricing-calendar__day--pending .pricing-calendar__day-price{display:none}.pricing-calendar__day--available:hover{background:var(--color-surface-accent,#e8f5e9)}.pricing-calendar__day--in-range,.pricing-calendar__day--selected{background:#e6394633!important}.pricing-calendar__day--in-range .pricing-calendar__day-number,.pricing-calendar__day--selected .pricing-calendar__day-number,.pricing-calendar__day--in-range .pricing-calendar__day-price,.pricing-calendar__day--selected .pricing-calendar__day-price{color:var(--color-brand-accent,#e63946)}.pricing-calendar__day--checkin{background:var(--color-brand-accent,#e63946)!important}.pricing-calendar__day--checkin .pricing-calendar__day-number{color:#fff}.pricing-calendar__day--checkin .pricing-calendar__day-price{color:#ffffffe6}.pricing-calendar__day--checkout{background:var(--color-brand-primary,#1d3557)!important}.pricing-calendar__day--checkout .pricing-calendar__day-number{color:#fff}.pricing-calendar__day--checkout .pricing-calendar__day-price{color:#ffffffe6}.pricing-calendar__checkin-dot,.pricing-calendar__checkout-dot{letter-spacing:-.02em;z-index:2;white-space:nowrap;border-radius:2px;padding:2px 4px;font-size:.5625rem;font-weight:700;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.pricing-calendar__checkin-dot{color:var(--color-brand-secondary,#457b9d);background:#fffffff2;box-shadow:0 1px 2px #00000026}.pricing-calendar__checkin-dot:before{content:"IN"}.pricing-calendar__checkout-dot{color:var(--color-brand-secondary,#457b9d);background:#fffffff2;box-shadow:0 1px 2px #00000026}.pricing-calendar__checkout-dot:before{content:"OUT"}.pricing-calendar__validation{background:var(--color-warning-light);border:1px solid var(--color-warning);color:var(--color-warning-dark);border-radius:.375rem;margin-top:.75rem;padding:.75rem;font-size:.8125rem}.pricing-calendar__footer{margin-top:1rem;padding-top:.75rem}.pricing-calendar__legend{color:var(--color-text-secondary,#6b7280);flex-wrap:wrap;gap:1.5rem;font-size:.8125rem;display:flex}.pricing-calendar__clear-btn{background:var(--color-brand-accent,#e63946);color:#fff;font-family:var(--font-body);cursor:pointer;border:none;border-radius:9999px;margin-top:.75rem;padding:.25rem .875rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:background .15s;display:inline-block}.pricing-calendar__clear-btn:hover{background:#c4303c}@supports (color:color-mix(in lab, red, red)){.pricing-calendar__clear-btn:hover{background:color-mix(in srgb,var(--color-brand-accent,#e63946)85%,black)}}.pricing-calendar__legend-item{align-items:center;gap:.5rem;display:flex}.pricing-calendar__legend-dot{border:1px solid #0000001a;border-radius:.25rem;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.pricing-calendar__legend-price{font-family:var(--font-body);color:var(--color-brand-secondary,#457b9d);font-size:.6875rem;font-weight:600;line-height:1}.pricing-calendar__legend-dot--available{border:1px solid var(--color-border,#d1d5db);background:#fff}.pricing-calendar__legend-dot--unavailable{background:var(--color-surface-secondary,#f5f5f5);border:1px solid var(--color-border,#d1d5db)}.pricing-calendar__legend-dot--checkin{background:var(--color-brand-accent,#e63946);border:1px solid #0000001a}.pricing-calendar__legend-dot--checkout{background:var(--color-brand-primary,#1d3557);border:1px solid #0000001a}.pricing-calendar__legend-dot--in-range{background:#e6394633;border:1px solid #0000001a}.pricing-calendar__legend-dot--checkout-only{background:linear-gradient(to right,#fff 50%,var(--color-surface-secondary,#f5f5f5)50%);border:1px solid var(--color-border,#d1d5db);position:relative;overflow:hidden}.pricing-calendar__legend-dot--checkout-only:before{content:"";pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8'%3E%3Cpolyline points='2,1 8,4 2,7' fill='none' stroke='%23457B9D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' opacity='0.5'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;position:absolute;inset:0}.pricing-calendar__legend-dot--pending{background:repeating-linear-gradient(45deg,#ebebeb,#ebebeb 3px,var(--color-warm-cream)3px,var(--color-warm-cream)8px);border:1px solid var(--color-border,#d1d5db)}@media (max-width:480px){.pricing-calendar__day{min-height:48px;padding-top:.375rem}.pricing-calendar__day-number{font-size:.85rem}.pricing-calendar__day-price{font-size:.7rem}.pricing-calendar__weekdays{font-size:.65rem}.pricing-calendar__legend{flex-wrap:wrap;gap:.375rem}.pricing-calendar__legend-item{font-size:.7rem}}.property-booking__deposit{background:var(--color-warm-sand,#faf8f5);border:1px solid var(--color-border,#e5e7eb);color:var(--color-text-primary,#1f2937);border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.property-booking__deposit-icon{width:1.125rem;height:1.125rem;color:var(--color-brand-secondary,#457b9d);flex-shrink:0}.property-booking__deposit strong{color:var(--color-brand-secondary,#457b9d);font-weight:600}.property-booking__clear-btn{width:100%;color:var(--color-text-secondary,#6b7280);cursor:pointer;background:0 0;border:none;margin-top:1rem;padding:.5rem;font-size:.8125rem;text-decoration:underline;transition:color .15s;display:block}.property-booking__clear-btn:hover{color:var(--color-text-primary,#1f2937)}.property-booking__dates-summary{color:var(--color-text-primary,#1f2937);border-bottom:1px solid var(--color-border,#e5e7eb);margin-bottom:.5rem;padding-bottom:.75rem;font-size:.875rem;font-weight:500}.property-booking__divider{background:var(--color-brand-accent,#e63946);height:2px;margin:.75rem 0}.blog-index{min-height:100vh}.blog-hero{background:var(--color-brand-primary,#1d3557);color:#fff;text-align:center;padding:6rem 1.5rem;position:relative}@media (min-width:768px){.blog-hero{padding:8rem 2rem}}.blog-hero__eyebrow{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.3em;color:#fff9;margin:0 0 1.5rem;font-size:.75rem;font-weight:400}.blog-hero__headline{font-family:var(--font-heading);color:#fff;letter-spacing:-.02em;margin:0 0 1.5rem;font-size:clamp(3rem,8vw,5.5rem);font-weight:400;line-height:1}.blog-hero__subheadline{font-family:var(--font-body);color:#ffffffb3;max-width:540px;margin:0 auto;font-size:1.125rem;font-weight:300;line-height:1.7}.blog-featured{max-width:1000px;margin:3rem auto}.blog-featured__link{color:inherit;text-decoration:none;display:block}.blog-featured__image-wrapper{aspect-ratio:16/9;margin-bottom:1.5rem;position:relative;overflow:hidden}.blog-featured__image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.blog-featured__link:hover .blog-featured__image{transform:scale(1.02)}.blog-featured__content{padding:0 1rem}@media (min-width:768px){.blog-featured__content{padding:0}}.blog-featured__category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--color-brand-accent,#e63946);background:#e639461a;margin-bottom:.75rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.blog-featured__title{font-family:var(--font-heading);color:var(--color-heading,#1d3557);margin:0 0 .75rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;line-height:1.2}.blog-featured__intro{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 1rem;font-size:1rem;line-height:1.6;display:-webkit-box;overflow:hidden}.blog-featured__meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.blog-featured__read-more{font-family:var(--font-body);color:var(--color-brand-primary,#1d3557);align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;transition:color .2s;display:inline-flex}.blog-featured__read-more svg{transition:transform .2s}.blog-featured__link:hover .blog-featured__read-more{color:var(--color-brand-accent,#e63946)}.blog-featured__link:hover .blog-featured__read-more svg{transform:translate(4px)}.blog-featured__date{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);font-size:.8125rem}.blog-grid-section{padding:2rem 0 4rem}.blog-grid{grid-template-columns:1fr;gap:2rem;display:grid}@media (min-width:640px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:968px){.blog-grid{grid-template-columns:repeat(3,1fr)}}.blog-grid__empty{text-align:center;color:var(--color-text-muted,#5a6672);grid-column:1/-1;padding:4rem 2rem}.blog-card{background:#fff;transition:transform .3s,box-shadow .3s;box-shadow:0 1px 3px #00000014}.blog-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.blog-card__link{color:inherit;text-decoration:none;display:block}.blog-card__image-wrapper{aspect-ratio:4/3;position:relative;overflow:hidden}.blog-card__image-wrapper--placeholder{background:var(--color-warm-cream,#faf8f5);color:var(--color-text-muted,#5a6672);justify-content:center;align-items:center;display:flex}.blog-card__image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.blog-card:hover .blog-card__image{transform:scale(1.05)}.blog-card__content{padding:1.25rem}.blog-card__category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--color-brand-accent,#e63946);background:#e639461a;margin-bottom:.5rem;padding:.2rem .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.blog-card__title{font-family:var(--font-heading);color:var(--color-heading,#1d3557);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .5rem;font-size:1.25rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.blog-card__intro{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .75rem;font-size:.9rem;line-height:1.5;display:-webkit-box;overflow:hidden}.blog-card__date{font-family:var(--font-body);text-transform:uppercase;color:var(--color-text-muted,#5a6672);font-size:.8rem;font-weight:500;display:block}.blog-card--cover{aspect-ratio:4/3;color:#fff;background:var(--color-brand-primary);text-decoration:none;display:block;position:relative;overflow:hidden}.blog-card--cover .blog-card__cover{position:absolute;inset:0}.blog-card--cover .blog-card__cover img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.blog-card--cover:hover .blog-card__cover img{transform:scale(1.05)}.blog-card--cover .blog-card__cover--placeholder{background:var(--color-brand-secondary);color:#fff;opacity:.5;justify-content:center;align-items:center;display:flex}.blog-card--cover .blog-card__overlay{pointer-events:none;background:linear-gradient(#0000 0%,#0003 50%,#000000b3 100%);position:absolute;inset:0}.blog-card--cover .blog-card__content{z-index:1;padding:1.5rem;position:absolute;bottom:0;left:0;right:0}.blog-card--cover .blog-card__category{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff3}.blog-card--cover .blog-card__title{color:#fff;text-shadow:0 1px 3px #0000004d;margin:.5rem 0;font-size:clamp(1.1rem,2vw,1.35rem)}.blog-card--cover .blog-card__date{color:#ffffffd9;font-size:.75rem}.blog-index__intro{border-top:1px solid var(--color-border,#e5e7eb);text-align:center;max-width:720px;margin:2rem auto 0;padding:2rem 0}.blog-index__intro p{color:var(--color-text-muted,#5a6672)}.blog-cover-story{width:100%;height:50vh;min-height:400px;position:relative;overflow:hidden}@media (min-width:768px){.blog-cover-story{height:70vh;min-height:500px}}.blog-cover-story__link{width:100%;height:100%;color:inherit;text-decoration:none;display:block;position:relative}.blog-cover-story__image-wrapper{position:absolute;inset:0;overflow:hidden}.blog-cover-story__image{object-fit:cover;width:100%;height:100%;transition:transform .6s}.blog-cover-story__link:hover .blog-cover-story__image{transform:scale(1.02)}.blog-cover-story__overlay{pointer-events:none;background:linear-gradient(#0000 0%,#0006 60%,#000000b3 100%);position:absolute;inset:0}.blog-cover-story__content{color:#fff;z-index:1;padding:2rem 1.5rem;position:absolute;bottom:0;left:0;right:0}@media (min-width:768px){.blog-cover-story__content{max-width:800px;padding:3rem 4rem}}@media (min-width:1024px){.blog-cover-story__content{padding:4rem 6rem}}.blog-cover-story__category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.15em;color:#fff;background:var(--color-brand-accent,#e63946);margin-bottom:1rem;padding:.35rem .75rem;font-size:.7rem;font-weight:600;display:inline-block}.blog-cover-story__title{font-family:var(--font-heading);color:#fff;letter-spacing:-.02em;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 2px;margin:0 0 1rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:400;line-height:1.1;text-decoration:none;transition:background-size .4s}.blog-cover-story__link:hover .blog-cover-story__title{background-size:100% 2px}.blog-cover-story__intro{font-family:var(--font-body);color:#ffffffd9;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:600px;margin:0 0 1.25rem;font-size:1rem;font-weight:300;line-height:1.6;display:-webkit-box;overflow:hidden}@media (min-width:768px){.blog-cover-story__intro{font-size:1.125rem}}.blog-cover-story__meta{font-family:var(--font-body);color:#ffffffb3;align-items:center;gap:1rem;font-size:.8rem;display:flex}.blog-cover-story__date,.blog-cover-story__read-time{display:inline-block}.blog-cover-story__meta:before{content:none}.blog-cover-story__date:after{content:"·";margin-left:1rem}.blog-masonry{background:var(--color-surface-warm,#faf8f5);padding:3rem 0 4rem}@media (min-width:768px){.blog-masonry{padding:4rem 0 6rem}}.blog-masonry__container{max-width:1280px;margin:0 auto;padding:0 1.5rem}@media (min-width:768px){.blog-masonry__container{padding:0 2rem}}.blog-masonry__grid{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (min-width:768px){.blog-masonry__grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.blog-masonry__card--large{grid-column:span 2}}@media (min-width:1024px){.blog-masonry__grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:auto;gap:1.5rem}.blog-masonry__card--large{grid-area:span 2/span 8}.blog-masonry__card--medium,.blog-masonry__card--small{grid-column:span 4}}.blog-masonry__card{background:#fff;flex-direction:column;height:100%;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000000f}.blog-masonry__card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.blog-masonry__link{height:100%;color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.blog-masonry__image-wrapper{flex-shrink:0;position:relative;overflow:hidden}.blog-masonry__card--large .blog-masonry__image-wrapper{aspect-ratio:16/10}@media (min-width:768px) and (max-width:1023px){.blog-masonry__card--large .blog-masonry__image-wrapper{aspect-ratio:21/9}}.blog-masonry__image-wrapper--placeholder{background:var(--color-surface-light,#f1faee);color:var(--color-text-muted,#5a6672);justify-content:center;align-items:center;display:flex}.blog-masonry__image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.blog-masonry__card:hover .blog-masonry__image{transform:scale(1.05)}.blog-masonry__category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:#fff;background:var(--color-brand-accent,#e63946);z-index:1;padding:.3rem .6rem;font-size:.65rem;font-weight:600;position:absolute;top:1rem;left:1rem}.blog-masonry__cover{flex-direction:column;justify-content:flex-end;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.blog-masonry__cover-image{object-fit:cover;width:100%;height:100%;transition:transform .5s;position:absolute;top:0;left:0}.blog-masonry__card--medium:hover .blog-masonry__cover-image{transform:scale(1.05)}.blog-masonry__cover-overlay{pointer-events:none;background:linear-gradient(#0000 0%,#0006 50%,#000000bf 100%);height:70%;position:absolute;bottom:0;left:0;right:0}.blog-masonry__cover-date{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2;background:#00000080;padding:.35rem .6rem;font-size:.7rem;font-weight:600;position:absolute;top:1rem;left:1rem}.blog-masonry__cover-category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:#fff;background:var(--color-brand-accent,#e63946);z-index:2;padding:.3rem .6rem;font-size:.65rem;font-weight:600;position:absolute;top:1rem;right:1rem}.blog-masonry__cover-title{z-index:2;font-family:var(--font-heading);color:#fff;text-shadow:0 2px 4px #0000004d;margin:0;padding:1.25rem;font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:500;line-height:1.3;position:relative}@media (min-width:1024px){.blog-masonry__cover-title{padding:1.5rem;font-size:clamp(1.25rem,2vw,1.75rem)}}.blog-masonry__cover--placeholder{background:var(--color-brand-primary,#1d3557);color:#fff;justify-content:center;align-items:center}.blog-masonry__cover--placeholder .blog-masonry__cover-title{text-align:center;padding:2rem}.blog-masonry__cover--small{aspect-ratio:4/3}.blog-masonry__cover--small .blog-masonry__cover-title{padding:1rem;font-size:clamp(1rem,2vw,1.25rem)}.blog-masonry__cover--small .blog-masonry__cover-date{padding:.25rem .5rem;font-size:.6rem}.blog-masonry__cover--small .blog-masonry__cover-category{padding:.2rem .5rem;font-size:.55rem}.blog-masonry__card--small:hover .blog-masonry__cover-image{transform:scale(1.05)}.blog-masonry__content{flex-direction:column;flex:1;min-height:0;padding:1.25rem;display:flex}@media (min-width:768px){.blog-masonry__card--large .blog-masonry__content{padding:1.5rem}}.blog-masonry__title{font-family:var(--font-heading);color:var(--color-heading,#1d3557);margin:0 0 .5rem;font-weight:500;line-height:1.25;transition:color .2s}.blog-masonry__card--large .blog-masonry__title{font-size:clamp(1.5rem,3vw,2rem)}.blog-masonry__card--medium .blog-masonry__title{font-size:clamp(1.125rem,2vw,1.375rem)}.blog-masonry__card--small .blog-masonry__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1rem;display:-webkit-box;overflow:hidden}.blog-masonry__card:hover .blog-masonry__title{color:var(--color-brand-secondary,#457b9d)}.blog-masonry__intro{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex-grow:1;margin:0 0 1rem;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.blog-masonry__card--large .blog-masonry__intro{-webkit-line-clamp:unset;font-size:1rem;display:block;overflow:visible}.blog-masonry__text-wrapper{flex:1;display:none;overflow:hidden}@media (min-width:1024px){.blog-masonry__text-wrapper{display:block}.blog-masonry__intro--mobile-only{display:none!important}}.blog-masonry__pullquote{float:right;border-left:3px solid var(--color-brand-accent,#e63946);width:42%;font-family:var(--font-heading);color:var(--color-heading,#1d3557);margin:.25rem 0 .75rem 1.25rem;padding:.75rem 0 .75rem 1rem;font-size:1.15rem;font-style:italic;font-weight:400;line-height:1.45;position:relative}.blog-masonry__pullquote-mark{font-size:5rem;font-family:var(--font-heading);color:var(--color-brand-accent,#e63946);opacity:.2;font-style:normal;line-height:1;position:absolute;top:-1rem;left:.5rem}.blog-masonry__body{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);margin:0;font-size:1rem;line-height:1.7}.blog-masonry__body p{margin:0 0 .75rem}.blog-masonry__body p:last-child{margin-bottom:0}.blog-masonry__continue{color:var(--color-brand-secondary,#457b9d);font-style:italic;display:inline}@media (min-width:1200px){.blog-masonry__pullquote{padding:1rem 0 1rem 1.25rem;font-size:1.25rem}.blog-masonry__body{font-size:1.2rem;line-height:1.65}.blog-masonry__body p{margin:0 0 1rem}}.blog-masonry__date{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);margin-top:auto;font-size:.75rem}.blog-masonry__empty{text-align:center;color:var(--color-text-muted,#5a6672);font-family:var(--font-body);grid-column:1/-1;padding:4rem 2rem}.blog-detail{min-height:100vh}.blog-detail__hero{height:min(70vh,600px);position:relative;overflow:hidden}.blog-detail__hero-image{z-index:1;position:absolute;inset:0}.blog-detail__hero-image img{object-fit:cover;width:100%;height:100%}.blog-detail__hero-overlay{z-index:2;background:linear-gradient(#0000001a 0%,#0000004d 50%,#000000b3 100%);align-items:flex-end;display:flex;position:absolute;inset:0}.blog-detail__hero-content{z-index:3;color:#fff;width:100%;max-width:900px;padding:2rem 1.5rem;position:relative}@media (min-width:768px){.blog-detail__hero-content{padding:3rem 2rem}}.blog-detail__category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:9999px;margin-bottom:1rem;padding:.375rem .875rem;font-size:.75rem;font-weight:600;display:inline-block}.blog-detail__title{font-family:var(--font-heading);color:#fff;text-shadow:0 2px 20px #0000004d;margin:0 0 1rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:500;line-height:1.1}.blog-detail__meta{font-family:var(--font-body);color:#ffffffe6;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.blog-detail__meta-separator{opacity:.6}.blog-detail__article{max-width:720px;margin:0 auto;padding:2rem 1.5rem 4rem}@media (min-width:768px){.blog-detail__article{padding:4rem 2rem}}.blog-detail__intro{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);border-bottom:1px solid var(--color-border,#e5e7eb);margin:0 0 2rem;padding-bottom:2rem;font-size:1.25rem;line-height:1.7}.blog-detail__content{font-family:var(--font-body);color:var(--color-text,#1d3557);font-size:1.125rem;line-height:1.8}.blog-detail__content p{margin-bottom:1.5rem}.blog-detail__content h2{font-family:var(--font-heading);color:var(--color-heading,#1d3557);margin:3rem 0 1rem;font-size:1.75rem;font-weight:600;line-height:1.3}.blog-detail__content h3{font-family:var(--font-heading);color:var(--color-heading,#1d3557);margin:2rem 0 .75rem;font-size:1.35rem;font-weight:600;line-height:1.3}.blog-detail__content a{color:var(--color-brand-secondary,#457b9d);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .2s}.blog-detail__content a:hover{border-bottom-color:var(--color-brand-secondary,#457b9d)}.blog-detail__content ul,.blog-detail__content ol{margin:0 0 1.5rem 1.5rem}.blog-detail__content li{margin-bottom:.5rem}.blog-detail__content blockquote{border-left:3px solid var(--color-brand-accent,#e63946);background:var(--color-warm-cream,#faf8f5);margin:2rem 0;padding:1rem 0 1rem 1.5rem;font-size:1.1rem;font-style:italic}.blog-detail__content blockquote p:last-child{margin-bottom:0}.blog-detail__content img{max-width:100%;height:auto;margin:2rem 0}.blog-detail__content figure{margin:2rem 0}.blog-detail__content figcaption{color:var(--color-text-muted,#5a6672);text-align:center;margin-top:.5rem;font-size:.85rem}.blog-detail__related{background:var(--color-warm-cream,#faf8f5);padding:4rem 1.5rem}@media (min-width:768px){.blog-detail__related{padding:5rem 2rem}}.blog-detail__related-title{font-family:var(--font-heading);color:var(--color-heading,#1d3557);text-align:center;margin:0 0 2rem;font-size:1.75rem;font-weight:500}.blog-detail__related-grid{grid-template-columns:1fr;gap:2rem;max-width:1200px;margin:0 auto;display:grid}@media (min-width:640px){.blog-detail__related-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:968px){.blog-detail__related-grid{grid-template-columns:repeat(3,1fr)}}.blog-detail__nav{max-width:1200px;margin:0 auto;padding:2rem 1.5rem 4rem}@media (min-width:768px){.blog-detail__nav{padding:3rem 2rem 5rem}}.blog-detail__back-link{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);align-items:center;gap:.5rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.blog-detail__back-link:hover{color:var(--color-brand-primary,#1d3557)}.blog-detail__back-link svg{transition:transform .2s}.blog-detail__back-link:hover svg{transform:translate(-4px)}.toast-container{z-index:10000;pointer-events:none;flex-direction:column;gap:.75rem;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}@media (max-width:640px){.toast-container{bottom:1rem;left:1rem;right:1rem}}.toast{background:var(--color-surface,#fff);pointer-events:auto;opacity:0;border-radius:.5rem;align-items:flex-start;gap:.75rem;max-width:24rem;padding:1rem 1.25rem;transition:opacity .2s,transform .2s;display:flex;transform:translateY(1rem)scale(.95);box-shadow:0 10px 40px -10px #1d355740,0 4px 12px -4px #1d35571a}.toast--visible{opacity:1;transform:translateY(0)scale(1)}.toast--exiting{opacity:0;transform:translateY(-.5rem)scale(.95)}.toast__icon{flex-shrink:0;justify-content:center;align-items:center;margin-top:.125rem;display:flex}.toast--success .toast__icon{color:var(--color-success,#16a34a)}.toast--error .toast__icon{color:var(--color-danger,#dc2626)}.toast--info .toast__icon{color:var(--color-secondary,#457b9d)}.toast__message{font-family:var(--font-body);color:var(--color-text,#1d3557);flex:1;font-size:.9375rem;line-height:1.5}.toast__close{width:1.5rem;height:1.5rem;color:var(--color-text-muted,#5a6672);cursor:pointer;background:0 0;border:none;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;margin:-.25rem -.25rem -.25rem 0;padding:0;transition:color .15s,background-color .15s;display:flex}.toast__close:hover{color:var(--color-text,#1d3557);background-color:#0000000d}.toast__close:focus{outline:2px solid var(--color-secondary,#457b9d);outline-offset:2px}.field-error{font-family:var(--font-body);color:var(--color-danger,#dc2626);margin-top:.375rem;font-size:.8125rem;display:block}input.error,select.error,textarea.error{border-color:var(--color-danger,#dc2626)!important}.experiences-hero{background-color:var(--color-brand-primary,#1d3557);justify-content:center;align-items:center;min-height:50vh;display:flex;position:relative;overflow:hidden}.experiences-hero--has-image{min-height:60vh}.experiences-hero__image{z-index:0;position:absolute;inset:0}.experiences-hero__image img{object-fit:cover;width:100%;height:100%}.experiences-hero__overlay{z-index:1;background:linear-gradient(#1d355766 0%,#1d3557b3 100%);position:absolute;inset:0}.experiences-hero__content{z-index:2;text-align:center;opacity:0;max-width:800px;padding:2rem;position:relative}.experiences-hero__eyebrow{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-surface-muted,#a8dadc);margin-bottom:1rem;font-size:.875rem;font-weight:600}.experiences-hero__headline{font-family:var(--font-heading);color:#fff;margin:0 0 1rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:500;line-height:1.1}.experiences-hero__subheadline{font-family:var(--font-body);color:#ffffffe6;margin:0;max-width:600px;margin-inline:auto;font-size:1.125rem}.experiences-tabs{z-index:100;background-color:var(--color-surface,#fff);border-bottom:1px solid var(--color-border,#e5e7eb);position:sticky;top:0;box-shadow:0 2px 4px #0000000d}.experiences-tabs__container{max-width:var(--width-container,1200px);justify-content:center;gap:0;margin:0 auto;display:flex}.experiences-tabs__tab{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:color .2s,border-color .2s;display:flex}.experiences-tabs__tab:hover{color:var(--color-brand-secondary,#457b9d)}.experiences-tabs__tab:focus{outline:none}.experiences-tabs__tab:focus-visible{outline:2px solid var(--color-brand-secondary,#457b9d);outline-offset:-2px}.experiences-tabs__tab--active{color:var(--color-brand-primary,#1d3557);border-bottom-color:var(--color-brand-accent,#e63946)}.experiences-tabs__tab svg{flex-shrink:0}.experiences-panel{max-width:var(--width-container,1200px);margin:0 auto;padding:2rem 1rem}.experiences-panel[hidden]{display:none}.experiences-filters{margin-bottom:2rem}.experiences-filters__container{padding-top:.75rem;position:relative}.experiences-filters__container:after{content:"";background:linear-gradient(to right,transparent,var(--color-bg,#faf8f5));pointer-events:none;width:2rem;position:absolute;top:0;bottom:0;right:0}.experiences-filters__label{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);font-size:.875rem;font-weight:600}.experiences-filters__pills{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.experiences-filters__pills::-webkit-scrollbar{display:none}.experiences-filters__pill{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);cursor:pointer;white-space:nowrap;border-radius:2rem;flex-shrink:0;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.experiences-filters__pill:hover{border-color:var(--color-brand-secondary,#457b9d);color:var(--color-brand-secondary,#457b9d)}.experiences-filters__pill--active{background-color:var(--color-brand-primary,#1d3557);border-color:var(--color-brand-primary,#1d3557);color:#fff}.experiences-grid{grid-template-columns:repeat(1,1fr);gap:1.5rem;display:grid}@media (min-width:640px){.experiences-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.experiences-grid{grid-template-columns:repeat(3,1fr)}}.experiences-grid--small{grid-template-columns:repeat(1,1fr)}@media (min-width:640px){.experiences-grid--small{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.experiences-grid--small{grid-template-columns:repeat(3,1fr)}}.experiences-grid__empty,.experiences-grid__empty-filters{text-align:center;color:var(--color-text-muted,#5a6672);grid-column:1/-1;padding:4rem 2rem}.experiences-grid__empty-filters svg{color:var(--color-border,#e5e7eb);margin-bottom:1rem}.experiences-grid__empty-filters h2{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin-bottom:.5rem;font-size:1.5rem}.activity-card{border-radius:var(--radius-card,.5rem);background-color:var(--color-surface,#fff);box-shadow:var(--shadow-card);transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.activity-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.activity-card__link{color:inherit;text-decoration:none;display:block}.activity-card__cover{aspect-ratio:4/3;position:relative;overflow:hidden}.activity-card__cover img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.activity-card:hover .activity-card__cover img{transform:scale(1.05)}.activity-card__cover--placeholder{background-color:var(--color-surface-muted,#a8dadc);color:var(--color-brand-primary,#1d3557);justify-content:center;align-items:center;display:flex}.activity-card__badge{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;background-color:var(--color-brand-accent,#e63946);color:#fff;z-index:2;border-radius:2rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem;left:1rem}.activity-card__overlay{pointer-events:none;background:linear-gradient(#0000 40%,#1d3557cc 100%);position:absolute;inset:0}.activity-card__content{z-index:2;padding:1.25rem;position:absolute;bottom:0;left:0;right:0}.activity-card__category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--color-surface-muted,#a8dadc);margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:inline-block}.activity-card__name{font-family:var(--font-heading);color:#fff;max-width:calc(100% - 8rem);margin:0 0 .5rem;font-size:1.25rem;font-weight:500;line-height:1.2}.activity-card__price{color:var(--color-text,#1d3557);font-family:var(--font-body);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2;background:#fffffff2;border-radius:2rem;margin:0;padding:.375rem .75rem;font-size:.875rem;font-weight:700;position:absolute;bottom:1rem;right:1rem;box-shadow:0 1px 3px #0000001a}.activity-card__price span{opacity:.8;font-size:.75rem}.service-card{border-radius:var(--radius-card,.5rem);background-color:var(--color-surface,#fff);box-shadow:var(--shadow-card);transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.service-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.service-card__link{color:inherit;text-decoration:none;display:block}.service-card__cover{aspect-ratio:4/3;position:relative;overflow:hidden}.service-card__cover img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.service-card:hover .service-card__cover img{transform:scale(1.05)}.service-card__cover--placeholder{background-color:var(--color-surface-muted,#a8dadc);color:var(--color-brand-primary,#1d3557);justify-content:center;align-items:center;display:flex}.service-card__badge{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;background-color:var(--color-brand-accent,#e63946);color:#fff;z-index:2;border-radius:2rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem;left:1rem}.service-card__overlay{pointer-events:none;background:linear-gradient(#0000 40%,#1d3557cc 100%);position:absolute;inset:0}.service-card__content{z-index:2;padding:1.25rem;position:absolute;bottom:0;left:0;right:0}.service-card__category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--color-surface-muted,#a8dadc);margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:inline-block}.service-card__name{font-family:var(--font-heading);color:#fff;margin:0 0 .5rem;font-size:1.25rem;font-weight:500;line-height:1.2}.service-card__price{font-family:var(--font-body);color:#ffffffe6;margin:0;font-size:.875rem}.experiences-cta{background-color:var(--color-brand-primary,#1d3557);border-radius:var(--radius-card,.5rem);text-align:center;margin-top:3rem;padding:2rem}.experiences-cta__heading{font-family:var(--font-heading);color:#fff;margin:0 0 .75rem;font-size:1.75rem;font-weight:500}.experiences-cta__text{font-family:var(--font-body);color:#ffffffd9;margin:0 0 1.5rem;max-width:500px;margin-inline:auto;font-size:1rem}.magic-link-card{border:2px dashed var(--color-accent,#e63946);border-radius:.75rem;position:relative}@supports (color:color-mix(in lab, red, red)){.magic-link-card{border:2px dashed color-mix(in srgb,var(--color-accent,#e63946)30%,transparent)}}.magic-link-card{background-color:#faf8f580}@supports (color:color-mix(in lab, red, red)){.magic-link-card{background-color:color-mix(in srgb,var(--color-warm-cream,#faf8f5)50%,transparent)}}.magic-link-card{text-align:center;justify-content:center;align-items:center;min-height:300px;padding:2rem;display:flex}.magic-link-card__content{flex-direction:column;align-items:center;gap:1rem;max-width:20rem;display:flex}.magic-link-card__icon{color:var(--color-accent,#e63946)}.magic-link-card__title{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);margin:0;font-size:1.25rem}.magic-link-card__text{color:var(--color-brand-secondary,#457b9d);margin:0;font-size:.875rem;line-height:1.625}.magic-link-card__btn{margin-top:.5rem}.service-detail{background-color:var(--color-bg,#faf8f5)}.service-detail__hero{height:50vh;min-height:400px;position:relative;overflow:hidden}.service-detail__hero-image{object-fit:cover;width:100%;height:100%}.service-detail__hero-overlay{background:linear-gradient(#0000 0%,#1d35574d 50%,#1d3557cc 100%);position:absolute;inset:0}.service-detail__hero-content{max-width:var(--width-container,1200px);margin:0 auto;padding:2rem;position:absolute;bottom:0;left:0;right:0}.service-detail__category{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--color-surface-muted,#a8dadc);margin-bottom:.75rem;font-size:.875rem;font-weight:600;display:inline-block}.service-detail__title{font-family:var(--font-heading);color:#fff;margin:0 0 .75rem;font-size:clamp(2rem,5vw,3rem);font-weight:500;line-height:1.1}.service-detail__location{font-family:var(--font-body);color:#ffffffe6;align-items:center;gap:.5rem;margin:0;font-size:1rem;display:flex}.service-detail__main{max-width:var(--width-container,1200px);grid-template-columns:1fr;gap:2rem;margin:0 auto;padding:2rem 1rem;display:grid}@media (min-width:1024px){.service-detail__main{grid-template-columns:1fr 340px}.service-detail__sidebar{order:2}.service-detail__content{order:1}}.service-detail__sidebar{align-self:start;position:sticky;top:100px}.service-detail__card{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);box-shadow:var(--shadow-card);padding:1.5rem}.service-detail__pricing{border-bottom:1px solid var(--color-border,#e5e7eb);margin-bottom:1.5rem;padding-bottom:1.5rem}.service-detail__pricing-title{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted,#5a6672);margin:0 0 1rem;font-size:.75rem;font-weight:600}.service-detail__contact-pricing{font-family:var(--font-heading);color:var(--color-brand-secondary,#457b9d);margin:0;font-size:1.25rem}.pricing-tiers{flex-direction:column;gap:.75rem;display:flex}.pricing-tiers__item{background-color:var(--color-warm-cream,#faf8f5);border-radius:.25rem;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.75rem;display:flex}.pricing-tiers__label{font-family:var(--font-body);color:var(--color-text,#1d3557);font-size:.875rem}.pricing-tiers__price{font-family:var(--font-heading);color:var(--color-brand-primary,#1d3557);margin-left:auto;font-size:1.25rem;font-weight:600}.pricing-tiers__notes{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);flex-basis:100%;font-size:.75rem}.service-detail__facts{margin:0 0 1.5rem}.service-detail__fact{border-bottom:1px solid var(--color-border,#e5e7eb);justify-content:space-between;padding:.75rem 0;display:flex}.service-detail__fact:last-child{border-bottom:none}.service-detail__fact dt{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.service-detail__fact dd{font-family:var(--font-body);color:var(--color-text,#1d3557);margin:0;font-size:.875rem}.service-detail__availability{background-color:var(--color-surface-light,#f1faee);border-radius:.25rem;margin-bottom:1.5rem;padding:.75rem}.service-detail__availability p{font-family:var(--font-body);color:var(--color-text,#1d3557);align-items:flex-start;gap:.5rem;margin:0;font-size:.875rem;display:flex}.service-detail__availability svg{color:var(--color-brand-secondary,#457b9d);flex-shrink:0}.service-detail__inquiry-btn{width:100%}.service-detail__content{min-width:0}.service-detail__description{font-family:var(--font-body);color:var(--color-text,#1d3557);font-size:1rem;line-height:1.8}.service-detail__gallery{margin-top:2rem}.service-detail__gallery h2{font-family:var(--font-heading);margin-bottom:1rem;font-size:1.5rem}.service-detail__gallery-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (min-width:640px){.service-detail__gallery-grid{grid-template-columns:repeat(3,1fr)}}.service-detail__gallery-item{border-radius:var(--radius-card,.5rem);margin:0;overflow:hidden}.service-detail__gallery-item img{object-fit:cover;aspect-ratio:4/3;width:100%;height:100%}.service-detail__gallery-item figcaption{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);background-color:var(--color-surface,#fff);padding:.5rem;font-size:.8125rem}.service-detail__related{max-width:var(--width-container,1200px);margin-top:3rem;margin-inline:auto;padding:2rem 1rem}.service-detail__related h2{font-family:var(--font-heading);margin-bottom:1.5rem;font-size:1.75rem}.service-detail__nav{max-width:var(--width-container,1200px);margin:0 auto;padding:2rem 1rem}.service-detail__back{font-family:var(--font-body);color:var(--color-brand-secondary,#457b9d);align-items:center;gap:.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.service-detail__back:hover{color:var(--color-brand-primary,#1d3557)}.service-inquiry-modal{z-index:9999;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.service-inquiry-modal[hidden]{display:none}.service-inquiry-modal__backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#1d355799;position:absolute;inset:0}.service-inquiry-modal__container{width:100%;max-width:480px;max-height:90vh;position:relative;overflow-y:auto}.service-inquiry-modal__content{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);box-shadow:var(--shadow-elevated)}.service-inquiry-modal__header{border-bottom:1px solid var(--color-border,#e5e7eb);padding:1.5rem 1.5rem 1rem;position:relative}.service-inquiry-modal__title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0;font-size:1.5rem;font-weight:500}.service-inquiry-modal__subtitle{font-family:var(--font-body);color:var(--color-brand-secondary,#457b9d);margin:.25rem 0 0;font-size:.875rem}.service-inquiry-modal__close{width:2rem;height:2rem;color:var(--color-text-muted,#5a6672);cursor:pointer;background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:0;transition:color .2s,background-color .2s;display:flex;position:absolute;top:1rem;right:1rem}.service-inquiry-modal__close:hover{color:var(--color-text,#1d3557);background-color:#0000000d}.service-inquiry-modal__form{padding:1.5rem}.service-inquiry-modal__field{margin-bottom:1rem}.service-inquiry-modal__label{font-family:var(--font-body);color:var(--color-text,#1d3557);margin-bottom:.375rem;font-size:.875rem;font-weight:600;display:block}.service-inquiry-modal__label .required{color:var(--color-brand-accent,#e63946)}.service-inquiry-modal__input,.service-inquiry-modal__textarea{width:100%;font-family:var(--font-body);color:var(--color-text,#1d3557);background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:.375rem;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.service-inquiry-modal__input:focus,.service-inquiry-modal__textarea:focus{border-color:var(--color-brand-secondary,#457b9d);outline:none;box-shadow:0 0 0 3px #457b9d26}.service-inquiry-modal__input::placeholder,.service-inquiry-modal__textarea::placeholder{color:var(--color-text-muted,#5a6672);opacity:.6}.service-inquiry-modal__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.service-inquiry-modal__honeypot{opacity:0;pointer-events:none;position:absolute;left:-9999px}.service-inquiry-modal__actions{border-top:1px solid var(--color-border,#e5e7eb);justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.service-inquiry-modal__loading,.service-inquiry-modal__success,.service-inquiry-modal__error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:200px;padding:2rem;display:flex}.service-inquiry-modal__loading[hidden],.service-inquiry-modal__success[hidden],.service-inquiry-modal__error[hidden]{display:none}.service-inquiry-modal__spinner{border:3px solid var(--color-border,#e5e7eb);border-top-color:var(--color-brand-secondary,#457b9d);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.service-inquiry-modal__loading p{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);margin-top:1rem}.service-inquiry-modal__success svg{color:var(--color-success,#16a34a)}.service-inquiry-modal__success h3{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:1rem 0 .5rem;font-size:1.5rem}.service-inquiry-modal__success p{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);margin:0 0 1.5rem}.service-inquiry-modal__error svg{color:var(--color-danger,#dc2626)}.service-inquiry-modal__error h3{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:1rem 0 .5rem;font-size:1.5rem}.service-inquiry-modal__error p{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);margin:0 0 1.5rem}.matrix-hero{justify-content:center;align-items:center;height:280px;display:flex;position:relative;overflow:hidden}.matrix-hero__image{background-position:50%;background-size:cover;background-color:var(--color-brand-primary,#1d3557);position:absolute;inset:0}.matrix-hero__image--default{background:linear-gradient(135deg,var(--color-brand-primary)0%,var(--color-brand-secondary)100%)}.matrix-hero__overlay{background:linear-gradient(#1d355766,#1d3557b3);position:absolute;inset:0}.matrix-hero__content{z-index:10;text-align:center;color:#fff;padding:0 1rem;position:relative}.matrix-hero__title{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 .5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:500}.matrix-hero__subtitle{font-family:var(--font-body);opacity:.9;margin:0;font-size:1.125rem}.matrix-filters{background:var(--color-surface,#fff);border-bottom:1px solid var(--color-border,#e5e7eb);z-index:40;padding:1rem 0;position:sticky;top:0}.matrix-filters__container{max-width:var(--width-container,1200px);flex-wrap:wrap;align-items:center;gap:1rem;margin:0 auto;padding:0 1rem;display:flex}.matrix-filters__field{flex-direction:column;gap:.25rem;display:flex}.matrix-filters__label{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted,#5a6672);align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;display:flex}.matrix-filters__input,.matrix-filters__select{font-family:var(--font-body);border:1px solid var(--color-border,#e5e7eb);color:var(--color-text,#1d3557);background:#fff;border-radius:.375rem;min-width:140px;padding:.5rem .75rem;font-size:.875rem}.matrix-filters__input:focus,.matrix-filters__select:focus{border-color:var(--color-brand-secondary,#457b9d);outline:none;box-shadow:0 0 0 3px #457b9d1a}.matrix-filters__stepper{border:1px solid var(--color-brand-primary,#1d3557);background:var(--color-brand-primary,#1d3557);border-radius:.375rem;align-items:center;display:flex;overflow:hidden}.matrix-filters__stepper button{background:var(--color-brand-primary,#1d3557);width:32px;height:36px;color:var(--color-warm-cream,#faf8f5);cursor:pointer;border:none;font-size:1.125rem;font-weight:600;transition:background .15s}.matrix-filters__stepper button:hover{background:var(--color-brand-secondary,#457b9d)}.matrix-filters__stepper [data-count]{text-align:center;min-width:36px;font-family:var(--font-body);color:var(--color-warm-cream,#faf8f5);font-weight:500}.matrix-filters__clear{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;padding:.5rem .75rem;font-size:.875rem;transition:color .15s;display:flex}.matrix-filters__clear:hover{color:var(--color-brand-accent,#e63946)}.matrix-filters__field--date{z-index:50;position:relative}.matrix-filters__field--date date-picker{width:100%;min-width:160px}.matrix-filters__field--date .date-picker__trigger{min-height:38px;padding:.5rem .75rem;font-size:.875rem}.matrix-filters__field--date .date-picker__dropdown{z-index:200}.matrix-legend{background:var(--color-warm-cream,#faf8f5);border-bottom:1px solid var(--color-border,#e5e7eb);padding:.75rem 0}.matrix-legend__container{max-width:var(--width-container,1200px);flex-wrap:wrap;justify-content:center;gap:1.5rem;margin:0 auto;padding:0 1rem;display:flex}.matrix-legend__item{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.matrix-legend__swatch{border:1px solid #0000001a;border-radius:.25rem;width:20px;height:20px}.matrix-legend__swatch--available{background:var(--color-warm-cream,#faf8f5);justify-content:center;align-items:center;display:flex}.matrix-legend__price{font-family:var(--font-body);color:var(--color-brand-secondary,#457b9d);font-size:.6875rem;font-weight:600;line-height:1}.matrix-legend__swatch--checkout-only{background:var(--color-warm-cream,#faf8f5)}.matrix-legend__swatch--occupied{background:var(--color-border)}.matrix-legend__swatch--pending{background:repeating-linear-gradient(45deg,#d9dce0,#d9dce0 3px,var(--color-warm-cream)3px,var(--color-warm-cream)8px)}.matrix-legend__swatch--arrival{background:var(--color-brand-accent,#e63946)}.matrix-legend__swatch--departure{background:var(--color-brand-primary,#1d3557)}.matrix-legend__swatch--in-range{background:#e6394633}.matrix-calendar{padding:1rem 0 6rem;position:relative}.matrix-calendar__container{max-width:100%;margin:0 auto;position:relative}.matrix-calendar__nav{z-index:20;background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);width:40px;height:40px;box-shadow:var(--shadow-card);cursor:pointer;color:var(--color-text,#1d3557);border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.matrix-calendar__nav:hover{background:var(--color-surface-light,#f1faee);box-shadow:var(--shadow-card-hover)}.matrix-calendar__nav--prev{left:.5rem}.matrix-calendar__nav--next{right:.5rem}.matrix-calendar__scroll{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 280px);margin:0 3rem;position:relative;overflow:auto}@media (orientation:landscape) and (max-height:500px){.matrix-calendar{padding-bottom:2rem}.matrix-calendar__scroll{max-height:calc(100vh - 140px)}}@media (max-width:640px){.matrix-calendar__scroll{margin:0 .5rem}.matrix-calendar__scroll:after{content:"";pointer-events:none;background:linear-gradient(to right,transparent,var(--color-warm-cream,#faf8f5));float:right;width:2rem;margin-left:-2rem;position:sticky;top:0;bottom:0;right:0}}.matrix-calendar__scroll::-webkit-scrollbar{height:8px}.matrix-calendar__scroll::-webkit-scrollbar-track{background:var(--color-warm-cream,#faf8f5)}.matrix-calendar__scroll::-webkit-scrollbar-thumb{background:var(--color-brand-secondary,#457b9d);border-radius:4px}.matrix-calendar__table{border-collapse:separate;border-spacing:0;min-width:max-content}.matrix-calendar__month-row th:not(.matrix-calendar__property-header){z-index:20;position:sticky;top:0}.matrix-calendar__date-row th{z-index:20;position:sticky;top:34px}th.matrix-calendar__property-header{z-index:30;text-align:left;width:220px;min-width:220px;max-width:220px;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted,#5a6672);border-bottom:1px solid var(--color-border,#e5e7eb);border-right:1px solid var(--color-border,#e5e7eb);background-color:#fff;padding:.75rem 1rem;font-size:.75rem;font-weight:600;position:sticky;top:0;left:0;box-shadow:2px 0 8px #0000001a}.matrix-calendar__month{text-align:center;font-family:var(--font-heading);color:#fff;background:var(--color-brand-secondary,#457b9d);padding:.5rem .75rem;font-size:.9375rem;font-weight:500}.matrix-calendar__month--0{background:linear-gradient(90deg,#457b9d,#5a8dad)}.matrix-calendar__month--1{background:linear-gradient(90deg,#1d3557,#2a4a73)}.matrix-calendar__month--2{background:linear-gradient(90deg,#457b9d,#5a8dad)}.matrix-calendar__month--3{background:linear-gradient(90deg,#1d3557,#2a4a73)}.matrix-calendar__month--4{background:linear-gradient(90deg,#457b9d,#5a8dad)}.matrix-calendar__month--5{background:linear-gradient(90deg,#1d3557,#2a4a73)}.matrix-calendar__date{text-align:center;background:var(--color-surface,#fff);border-bottom:1px solid var(--color-border,#e5e7eb);min-width:58px;padding:.375rem .25rem}.matrix-calendar__date--weekend{background:var(--color-warm-cream,#faf8f5)}.matrix-calendar__date--today{background:#e639461a}.matrix-calendar__date-num{font-family:var(--font-body);color:var(--color-text,#1d3557);font-size:.875rem;font-weight:600;display:block}.matrix-calendar__date-day{font-family:var(--font-body);text-transform:uppercase;color:var(--color-text-muted,#5a6672);font-size:.625rem;display:block}.matrix-calendar__group-row{background:var(--color-warm-sand,#f5f0e8)}.matrix-calendar__group-label{z-index:15;background:var(--color-warm-sand,#f5f0e8);border-right:1px solid var(--color-border,#e5e7eb);width:220px;min-width:220px;max-width:220px;padding:0;position:sticky;left:0;box-shadow:2px 0 8px #0000001a}.matrix-calendar__group-fill{background:var(--color-warm-sand,#f5f0e8);padding:0}.matrix-calendar__group-toggle{text-align:left;width:100%;font-family:var(--font-heading);color:var(--color-text,#1d3557);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:.75rem 1rem;font-size:1rem;font-weight:500;transition:background .15s;display:block}.matrix-calendar__group-toggle:hover{background:#00000008}.matrix-calendar__property-row{transition:background .15s}.matrix-calendar__property-row:hover{background-color:#f5fafa}.matrix-calendar__property-cell{z-index:15;border-bottom:1px solid var(--color-border,#e5e7eb);border-right:1px solid var(--color-border,#e5e7eb);background-color:#fff;width:220px;min-width:220px;max-width:220px;padding:.75rem 1rem;position:sticky;left:0;box-shadow:2px 0 8px #0000001a}.matrix-calendar__property-row:hover .matrix-calendar__property-cell{background-color:#edf7f7}.matrix-calendar__property-inner{align-items:center;gap:.75rem;display:flex}.matrix-calendar__property-thumb{object-fit:cover;border-radius:.375rem;flex-shrink:0;width:48px;height:48px}.matrix-calendar__property-info{flex:1;min-width:0}.matrix-calendar__property-name{font-family:var(--font-heading);color:var(--color-text,#1d3557);white-space:nowrap;text-overflow:ellipsis;font-size:clamp(.95rem,1.5vw,1.25rem);font-weight:500;text-decoration:none;transition:color .15s;display:block;overflow:hidden}.matrix-calendar__property-name:hover{color:var(--color-brand-accent,#e63946)}.matrix-calendar__property-specs{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);margin:.125rem 0;font-size:.95rem}.matrix-calendar__property-price{font-family:var(--font-body);color:var(--color-brand-secondary,#457b9d);font-size:.75rem;font-weight:500}.matrix-cell{border-bottom:1px solid var(--color-border,#e5e7eb);cursor:pointer;border-right:1px solid #00000008;min-width:58px;height:52px;transition:all .15s;position:relative}.matrix-cell:hover{z-index:5;transform:scale(1.1);box-shadow:0 2px 8px #00000026}.matrix-cell--past{background:var(--color-border,#e5e7eb);opacity:.5;cursor:not-allowed}.matrix-cell--past:hover{box-shadow:none;transform:none}.matrix-cell--available,.matrix-cell--checkin-ok{background:var(--color-warm-cream,#faf8f5)}.matrix-cell--checkout-ok{background:linear-gradient(to right,var(--color-warm-cream,#faf8f5)50%,var(--color-border)50%);cursor:pointer}.matrix-cell--checkout-ok:before{content:"";pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8'%3E%3Cpolyline points='2,1 8,4 2,7' fill='none' stroke='%23457B9D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' opacity='0.2'/%3E%3C/svg%3E");background-position:top;background-repeat:repeat-y;width:10px;position:absolute;top:3px;bottom:3px;left:50%;transform:translate(-50%)}.matrix-cell--checkout-ok:after{content:"out";font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-secondary,#457b9d);opacity:0;pointer-events:none;justify-content:center;align-items:center;font-size:.625rem;font-weight:600;transition:opacity .15s;display:flex;position:absolute;inset:0}:root[lang=es] .matrix-cell--checkout-ok:after{content:"sale"}.matrix-cell--checkout-ok:hover:after{opacity:1}.matrix-cell--occupied{background:var(--color-border);cursor:not-allowed}.matrix-cell--occupied:hover{box-shadow:none;transform:none}.matrix-cell--pending{background:repeating-linear-gradient(45deg,#d9dce0,#d9dce0 3px,var(--color-warm-cream)3px,var(--color-warm-cream)8px);cursor:not-allowed}.matrix-cell--pending:hover{box-shadow:none;transform:none}.matrix-cell--arrival{box-shadow:0 0 0 2px var(--color-brand-accent,#e63946);background:var(--color-brand-accent,#e63946)!important}.matrix-cell--arrival:after{content:"in";font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-primary,#1d3557);background:var(--color-surface-muted,#a8dadc);pointer-events:none;border-radius:9999px;padding:.0625rem .375rem;font-size:.5625rem;font-weight:700;line-height:1.2;position:absolute;bottom:.125rem;left:50%;transform:translate(-50%)}:root[lang=es] .matrix-cell--arrival:after{content:"llegada"}.matrix-cell--departure{box-shadow:0 0 0 2px var(--color-brand-primary,#1d3557);background:var(--color-brand-primary,#1d3557)!important}.matrix-cell--departure:after{content:"out";font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-primary,#1d3557);background:var(--color-surface-muted,#a8dadc);pointer-events:none;border-radius:9999px;padding:.0625rem .375rem;font-size:.5625rem;font-weight:700;line-height:1.2;position:absolute;bottom:.125rem;left:50%;transform:translate(-50%)}:root[lang=es] .matrix-cell--departure:after{content:"sale"}.matrix-cell--in-range{background:#e6394633!important}.matrix-cell__price{height:100%;font-family:var(--font-body);color:var(--color-text-muted,#5a6672);justify-content:center;align-items:center;font-size:.8125rem;font-weight:600;line-height:1;display:flex}.matrix-cell--available .matrix-cell__price,.matrix-cell--checkin-ok .matrix-cell__price{color:var(--color-brand-secondary,#457b9d)}.matrix-cell--arrival .matrix-cell__price,.matrix-cell--departure .matrix-cell__price{color:#fff}.matrix-cell--in-range .matrix-cell__price{color:var(--color-brand-accent,#e63946)}.matrix-calendar__skeleton{padding:1rem}.matrix-calendar__skeleton-header,.matrix-calendar__skeleton-row{gap:2px;margin-bottom:2px;display:flex}.matrix-calendar__skeleton-cell{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;border-radius:.25rem;width:44px;height:44px;animation:1.5s infinite shimmer}.matrix-calendar__skeleton-cell--property{width:220px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.matrix-calendar__loading{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffe6;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex;position:absolute;inset:0}.matrix-calendar__loading[hidden]{display:none}.matrix-calendar__loading-spinner{border:3px solid var(--color-border,#e5e7eb);border-top-color:var(--color-brand-secondary,#457b9d);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.matrix-calendar__loading-text{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);font-size:.875rem}.matrix-calendar__message{z-index:50;background:var(--color-brand-primary,#1d3557);color:#fff;box-shadow:var(--shadow-elevated);font-family:var(--font-body);border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;display:flex;position:fixed;bottom:100px;left:50%;transform:translate(-50%)}.matrix-calendar__message-close{color:#fff;opacity:.7;cursor:pointer;background:0 0;border:none;padding:.25rem;transition:opacity .15s}.matrix-calendar__message-close:hover{opacity:1}.matrix-calendar__remove{color:#fff;cursor:pointer;opacity:0;background:#0000004d;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.875rem;line-height:1;transition:opacity .2s;display:flex;position:absolute;top:4px;right:4px}.matrix-calendar__property-row:hover .matrix-calendar__remove{opacity:1}.matrix-empty-state{text-align:center;color:var(--color-brand-secondary);padding:60px 20px}.matrix-empty-state svg{color:var(--color-surface-muted);margin:0 auto 16px}.matrix-empty-state h3{color:var(--color-brand-primary);margin-bottom:8px;font-family:Cormorant Garamond,Georgia,serif;font-size:1.25rem;font-weight:700}.matrix-empty-state p{margin-bottom:20px;font-size:.875rem}.matrix-empty-state .btn{display:inline-flex}.matrix-visor{z-index:45;background:var(--color-brand-primary,#1d3557);border-top:none;transition:transform .3s;position:fixed;bottom:0;left:0;right:0;transform:translateY(0);box-shadow:0 -4px 20px #00000040}.matrix-visor[hidden]{transform:translateY(100%);display:block!important}.matrix-visor__container{max-width:var(--width-container,1200px);flex-wrap:wrap;align-items:center;gap:1.5rem;margin:0 auto;padding:1rem;display:flex}.matrix-visor__property{align-items:center;gap:.75rem;min-width:180px;display:flex}.matrix-visor__thumb{object-fit:cover;border-radius:.5rem;width:56px;height:56px}.matrix-visor__property-name{font-family:var(--font-heading);color:var(--color-warm-cream,#faf8f5);margin:0;font-size:1.0625rem;font-weight:500}.matrix-visor__property-specs{font-family:var(--font-body);color:#faf8f5b3;margin:.125rem 0 0;font-size:.8125rem}.matrix-visor__dates{text-align:center;min-width:140px}.matrix-visor__date-range{font-family:var(--font-body);color:var(--color-warm-cream,#faf8f5);justify-content:center;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:500;display:flex}.matrix-visor__date-arrow{color:#faf8f580}.matrix-visor__nights{font-family:var(--font-body);color:#faf8f5b3;margin:.25rem 0 0;font-size:.8125rem}.matrix-visor__guests{gap:1rem;display:flex}.matrix-visor__stepper{flex-direction:column;align-items:center;gap:.25rem;display:flex}.matrix-visor__stepper-label{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:#faf8f5b3;font-size:.6875rem}.matrix-visor__stepper-controls{border:1px solid #faf8f54d;border-radius:.375rem;align-items:center;display:flex;overflow:hidden}.matrix-visor__stepper-controls button{width:28px;height:28px;color:var(--color-warm-cream,#faf8f5);cursor:pointer;background:#faf8f526;border:none;font-size:1rem;font-weight:600;transition:background .15s}.matrix-visor__stepper-controls button:hover{background:#faf8f540}.matrix-visor__stepper-controls [data-count]{text-align:center;min-width:28px;font-family:var(--font-body);color:var(--color-warm-cream,#faf8f5);font-size:.875rem;font-weight:500}.matrix-visor__pricing{min-width:120px}.matrix-visor__price-row{font-family:var(--font-body);color:#faf8f5b3;justify-content:space-between;gap:1rem;font-size:.8125rem;display:flex}.matrix-visor__price-row--total{color:var(--color-warm-cream,#faf8f5);border-top:1px solid #faf8f533;margin-top:.25rem;padding-top:.25rem;font-size:1rem;font-weight:600}.matrix-visor__actions{align-items:center;gap:.75rem;margin-left:auto;display:flex}.matrix-visor__book{white-space:nowrap}.matrix-visor__clear{color:#faf8f5b3;cursor:pointer;background:0 0;border:1px solid #faf8f54d;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .15s;display:flex}.matrix-visor__clear:hover{border-color:var(--color-brand-accent,#e63946);color:var(--color-brand-accent,#e63946);background:#e6394633}.matrix-visor__validation{background:var(--color-warning,#f59e0b);color:#fff;font-family:var(--font-body);white-space:nowrap;border-radius:.375rem;padding:.5rem 1rem;font-size:.8125rem;position:absolute;top:-2rem;left:50%;transform:translate(-50%)}@media (max-width:768px){.matrix-hero{height:200px}.matrix-filters__container{flex-direction:column;align-items:stretch}.matrix-filters__field{flex:1}.matrix-legend__container{gap:1rem}th.matrix-calendar__property-header,.matrix-calendar__property-cell,.matrix-calendar__group-label{width:160px;min-width:160px;max-width:160px}.matrix-calendar__property-thumb{width:36px;height:36px}.matrix-calendar__property-name{font-size:.8125rem}.matrix-cell{min-width:48px;height:44px}.matrix-calendar__date{min-width:48px}.matrix-cell__price{font-size:.6875rem}.matrix-visor__container{flex-direction:column;align-items:stretch;gap:1rem}.matrix-visor__property{min-width:auto}.matrix-visor__guests{justify-content:center}.matrix-visor__pricing{text-align:center}.matrix-visor__actions{justify-content:center;margin-left:0}}.legal-page{max-width:48rem;margin:0 auto;padding:4rem 1.5rem 6rem}.legal-page__title{font-family:var(--font-heading);color:var(--color-heading);margin-bottom:.5rem;font-size:2.5rem;font-weight:600}.legal-page__updated{color:var(--color-text-muted,#6b7280);margin-bottom:3rem;font-size:.875rem}.legal-page__content h2{font-family:var(--font-heading);color:var(--color-heading);margin:2.5rem 0 1rem;font-size:1.5rem;font-weight:600}.legal-page__content h3{color:var(--color-heading);margin:2rem 0 .75rem;font-size:1.125rem;font-weight:600}.legal-page__content p{color:var(--color-text-body,#5a6672);margin-bottom:1rem;font-size:1rem;line-height:1.75}.legal-page__content ul,.legal-page__content ol{color:var(--color-text-body,#5a6672);margin:.5rem 0 1.5rem 1.5rem;line-height:1.75}.legal-page__content li{margin-bottom:.375rem}.legal-page__content a{color:var(--color-link,#e63946);text-decoration:underline}.guest-context-bar{background-color:var(--color-brand-primary,#1d3557);color:#ffffffe6;font-family:var(--font-body);justify-content:space-between;align-items:center;padding:.75rem 1.5rem;font-size:.9rem;display:flex}.guest-context-bar__info{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.guest-context-bar__property{color:#fff;font-weight:600}.guest-context-bar__dates,.guest-context-bar__guests{color:#ffffffd9}.guest-context-bar__signout{color:#ffffffbf;font-size:.85rem;text-decoration:none;transition:color .2s}.guest-context-bar__signout:hover{color:#fff}.guest-context-bar__user-menu{position:relative}.guest-context-bar__avatar{background-color:var(--color-brand-secondary,#457b9d);color:#fff;width:2rem;height:2rem;font-family:var(--font-body);cursor:pointer;letter-spacing:.025em;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;transition:background-color .2s;display:flex}.guest-context-bar__avatar:hover{background-color:var(--color-brand-accent,#e63946)}.guest-context-bar__dropdown{border-radius:var(--radius-card,.5rem);z-index:100;background:#fff;min-width:12rem;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.guest-context-bar__dropdown-item{color:var(--color-text,#1d3557);align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;text-decoration:none;transition:background-color .15s;display:flex}.guest-context-bar__dropdown-item:hover{background-color:var(--color-surface-muted,#f1f5f9)}.guest-context-bar__dropdown-item svg{opacity:.6;flex-shrink:0}.guest-settings{max-width:48rem;margin:0 auto;padding:2rem 1.5rem}.guest-settings__title{font-family:var(--font-heading,"Cormorant Garamond",serif);color:var(--color-text,#1d3557);margin:0 0 .25rem;font-size:1.75rem;font-weight:600}.guest-settings__subtitle{color:var(--color-text-muted,#6b7280);margin:0 0 2rem;font-size:.95rem}.guest-settings__card{border:1px solid var(--color-border,#e5e7eb);border-radius:var(--radius-card,.5rem);background:#fff;margin-bottom:1.5rem;padding:1.5rem}.guest-settings__card-header{align-items:center;gap:.5rem;margin-bottom:1.25rem;display:flex}.guest-settings__card-header h2{font-family:var(--font-heading,"Cormorant Garamond",serif);color:var(--color-text,#1d3557);margin:0;font-size:1.25rem;font-weight:600}.guest-settings__card-header svg{color:var(--color-brand-secondary,#457b9d)}.guest-settings__form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:640px){.guest-settings__form-row{grid-template-columns:1fr}}.guest-settings__field{margin-bottom:1rem}.guest-settings__field label{color:var(--color-text-muted,#6b7280);margin-bottom:.375rem;font-size:.85rem;font-weight:500;display:block}.guest-settings__field input{border:1px solid var(--color-border,#e5e7eb);width:100%;font-family:var(--font-body);color:var(--color-text,#1d3557);box-sizing:border-box;border-radius:.375rem;padding:.625rem .75rem;font-size:.95rem;transition:border-color .2s}.guest-settings__field input:focus{border-color:var(--color-brand-secondary,#457b9d);outline:none;box-shadow:0 0 0 3px #457b9d1a}.guest-settings__field input:disabled{background-color:var(--color-surface-muted,#f1f5f9);color:var(--color-text-muted,#6b7280);cursor:not-allowed}.guest-settings__field-error{color:var(--color-brand-accent,#e63946);margin-top:.25rem;font-size:.8rem;display:block}.guest-settings__save-btn{background-color:var(--color-brand-primary,#1d3557);color:#fff;font-family:var(--font-body);cursor:pointer;border:none;border-radius:.375rem;align-items:center;gap:.5rem;margin-top:.5rem;padding:.625rem 1.25rem;font-size:.9rem;font-weight:600;transition:background-color .2s;display:inline-flex}.guest-settings__save-btn:hover{background-color:var(--color-brand-secondary,#457b9d)}.guest-settings__save-btn:disabled{opacity:.6;cursor:not-allowed}.guest-settings__message{border-radius:.375rem;margin-bottom:1rem;padding:.75rem;font-size:.9rem}.guest-settings__message--success{background-color:var(--color-success-light);color:var(--color-success-dark);border:1px solid var(--color-success-border)}.guest-settings__message--error{background-color:var(--color-danger-light);color:var(--color-danger-dark);border:1px solid var(--color-danger-border)}.guest-settings__toast{background-color:var(--color-danger-light);color:var(--color-danger-dark);border:1px solid var(--color-danger-border);border-radius:.375rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem;animation:5s ease-in-out guest-settings-toast-fade}@keyframes guest-settings-toast-fade{0%,80%{opacity:1}to{opacity:0}}.guest-settings__toggle-list{flex-direction:column;display:flex}.guest-settings__toggle-item{border-bottom:1px solid var(--color-border,#e5e7eb);justify-content:space-between;align-items:center;padding:1rem 0;display:flex}.guest-settings__toggle-item:last-child{border-bottom:none}.guest-settings__toggle-label{color:var(--color-text,#1d3557);font-size:.95rem;font-weight:500;display:block}.guest-settings__toggle-desc{color:var(--color-text-muted,#6b7280);margin-top:.125rem;font-size:.85rem;display:block}.guest-settings__toggle{flex-shrink:0;width:2.75rem;height:1.5rem;position:relative}.guest-settings__toggle input{opacity:0;width:0;height:0;position:absolute}.guest-settings__toggle-slider{background-color:var(--color-border,#e5e7eb);cursor:pointer;border-radius:1.5rem;transition:background-color .2s;position:absolute;inset:0}.guest-settings__toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:1.125rem;height:1.125rem;transition:transform .2s;position:absolute;bottom:.1875rem;left:.1875rem}.guest-settings__toggle input:checked+.guest-settings__toggle-slider{background-color:var(--color-brand-primary,#1d3557)}.guest-settings__toggle input:checked+.guest-settings__toggle-slider:before{transform:translate(1.25rem)}.guest-settings__coming-soon{color:var(--color-text-muted,#6b7280);text-align:center;margin-top:1rem;margin-bottom:0;font-size:.85rem;font-style:italic}body[class*=page-guest] .site-header{z-index:auto;pointer-events:auto;background:var(--color-surface,#faf8f5);align-items:center;padding:.75rem 2.5rem;position:relative;box-shadow:0 1px 3px #00000014}body[class*=page-guest] .site-header__logo img{filter:brightness(0)drop-shadow(0 1px 2px #0000000d);height:48px}body[class*=page-guest] .site-header__nav{flex-direction:row;align-items:center;gap:2rem;padding-top:0}body[class*=page-guest] .site-header__nav a{color:var(--color-brand-primary,#1d3557);text-shadow:none;opacity:.7;padding-left:0;font-size:.95rem}body[class*=page-guest] .site-header__nav a:hover,body[class*=page-guest] .site-header__nav a.active{opacity:1}body[class*=page-guest] .site-header__nav a.active:before{top:-8px;left:50%;transform:translate(-50%)}.guest-portal-nav{background-color:var(--color-surface,#fff);border-bottom:1px solid var(--color-border,#e5e7eb);font-family:var(--font-body);align-items:center;gap:1.5rem;padding:.5rem 1.5rem;font-size:.95rem;display:flex}@media (max-width:640px){.guest-portal-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.75rem;padding:.5rem 1rem;overflow-x:auto}.guest-portal-nav::-webkit-scrollbar{display:none}.guest-portal-nav__link{white-space:nowrap}}.guest-portal-nav__link{color:var(--color-brand-secondary,#457b9d);border-bottom:2px solid #0000;padding:.375rem 0;text-decoration:none;transition:color .2s,border-color .2s}.guest-portal-nav__link:hover{color:var(--color-text,#1d3557)}.guest-portal-nav__link--active{color:var(--color-text,#1d3557);border-bottom-color:var(--color-brand-accent,#e63946);font-weight:600}.guest-container{max-width:var(--width-container,1200px);margin:0 auto;padding:0 1.5rem}.guest-dashboard{max-width:var(--width-container,1200px);margin:0 auto;padding:2rem 1rem}.guest-dashboard__welcome{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 .5rem;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:500}.guest-dashboard__subtitle{color:var(--color-text-muted,#5a6672);margin:0 0 2rem;font-size:1.25rem}.guest-dashboard__property-card{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);box-shadow:var(--shadow-card);margin-bottom:2rem;overflow:hidden}.guest-dashboard__property-image{aspect-ratio:16/7;overflow:hidden}.guest-dashboard__property-image img{object-fit:cover;width:100%;height:100%}.guest-dashboard__property-info{padding:1.5rem}.guest-dashboard__property-name{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 .5rem;font-size:2rem;font-weight:500}.guest-dashboard__property-meta{color:var(--color-text-muted,#5a6672);flex-wrap:wrap;gap:2rem;font-size:1.05rem;display:flex}.guest-dashboard__actions{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem;display:grid}@media (min-width:768px){.guest-dashboard__actions{grid-template-columns:repeat(4,1fr)}}.guest-dashboard__action{background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:var(--radius-card,.5rem);color:var(--color-text,#1d3557);font-family:var(--font-body);flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:flex}.guest-dashboard__action:hover{border-color:var(--color-brand-secondary,#457b9d);box-shadow:var(--shadow-card)}.guest-dashboard__action--disabled{opacity:.5;pointer-events:none}.guest-dashboard__card{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);box-shadow:var(--shadow-card);margin-bottom:1.5rem;padding:1.5rem}.guest-dashboard__card-row{align-items:center;gap:.75rem;display:flex}.guest-dashboard__card-title{font-family:var(--font-heading);margin:0 0 .25rem;font-size:clamp(1.1rem,2vw,1.25rem);font-weight:500}.guest-dashboard__card-title--success{color:var(--color-success,#16a34a)}.guest-dashboard__card-text{color:var(--color-text-muted,#5a6672);margin:0;font-size:1rem}.guest-dashboard__card-text--sm{font-size:.95rem}.guest-dashboard__card-text--primary{color:var(--color-text,#1d3557)}.guest-dashboard__card-link{color:var(--color-brand-secondary,#457b9d);margin-top:.5rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.guest-dashboard__card-link:hover{color:var(--color-brand-primary,#1d3557)}.guest-dashboard__badge{background:var(--color-accent,#e63946);color:#fff;border-radius:999px;margin-left:4px;padding:0 6px;font-size:.75rem}.guest-dashboard__inline-icon{vertical-align:-2px;margin-right:4px;display:inline-block}.guest-portal__container{max-width:720px;margin:0 auto;padding:2rem 1rem}.guest-portal__back-link{color:var(--color-brand-secondary,#457b9d);font-weight:500;text-decoration:none}.guest-portal__page-title{font-family:var(--font-heading,"Cormorant Garamond",serif);color:var(--color-brand-primary,#1d3557);margin:.5rem 0 .25rem;font-size:1.75rem;font-weight:600}.guest-portal__page-subtitle{color:var(--color-text-muted,#6b7280);margin:0 0 1.5rem}.guest-payment__card{background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:.75rem;margin-bottom:1rem;padding:1.5rem}.guest-payment__card--service{margin-bottom:.75rem}.guest-payment__card-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.guest-payment__card-header-right{text-align:right}.guest-payment__card-title{font-family:var(--font-heading,"Cormorant Garamond",serif);color:var(--color-brand-primary,#1d3557);margin:0;font-size:1.25rem;font-weight:600}.guest-payment__card-subtitle{color:var(--color-brand-primary,#1d3557);margin:0 0 .25rem;font-weight:600}.guest-payment__card-dates{color:var(--color-text-muted,#6b7280);margin-top:.125rem;font-size:.85rem;display:block}.guest-payment__card-amount{color:var(--color-brand-primary,#1d3557);margin-top:.375rem;font-weight:600}.guest-payment__badge{text-transform:uppercase;letter-spacing:.05em;color:#fff;vertical-align:middle;border-radius:2rem;padding:.125rem .5rem;font-size:.65rem;font-weight:700;display:inline-block}.guest-payment__badge--paid{background-color:var(--color-brand-primary,#1d3557)}.guest-payment__badge--partial{background-color:var(--color-brand-secondary,#457b9d)}.guest-payment__badge--due{background-color:var(--color-accent,#e63946)}.guest-payment__badge--locked{background-color:var(--color-brand-secondary,#457b9d);color:#fff;opacity:.7}.guest-payment__toggle-wrapper{align-items:center;gap:.5rem;display:inline-flex}.guest-payment__toggle-label{font-size:var(--text-sm);color:var(--color-text-muted,#666)}.guest-payment__toggle{background-color:var(--color-border,#ccc);cursor:pointer;border:none;border-radius:9999px;width:2.5rem;height:1.375rem;padding:0;transition:background-color .2s;display:inline-block;position:relative}.guest-payment__toggle:after{content:"";background:#fff;border-radius:50%;width:1.125rem;height:1.125rem;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.guest-payment__toggle[aria-pressed=true]{background-color:var(--color-brand-primary,#1d3557)}.guest-payment__toggle[aria-pressed=true]:after{transform:translate(1.125rem)}.guest-payment__toggle-help{border:1px solid var(--color-border,#ccc);width:1.25rem;height:1.25rem;color:var(--color-text-muted,#999);cursor:help;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:600;display:inline-flex}.guest-payment__card--batch{border:1px dashed var(--color-border,#ddd)}.guest-payment__total-section{border-top:1px solid var(--color-border,#eee);margin-top:1rem;padding-top:1rem}.guest-payment__subtotal-row,.guest-payment__fee-row{font-size:var(--text-sm);color:var(--color-text-muted,#666);justify-content:space-between;padding:.25rem 0;display:flex}.guest-payment__btn--batch{width:100%;margin-top:1rem}.guest-payment__section{margin-bottom:1.5rem}.guest-payment__section-header{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.guest-payment__section-total{color:var(--color-brand-primary,#1d3557);font-weight:600}.guest-payment__services-note{color:var(--color-text-muted,#6b7280);margin-bottom:1rem;font-size:.9rem}.guest-payment__count-badge{background:var(--color-brand-accent,#a8dadc);color:var(--color-brand-primary,#1d3557);border-radius:9999px;padding:.125rem .625rem;font-size:.75rem;font-weight:600}.guest-payment__lines{border-top:1px solid var(--color-border,#f3f4f6);margin-bottom:.75rem;padding-top:.75rem}.guest-payment__line{color:var(--color-text,#374151);justify-content:space-between;padding:.25rem 0;font-size:.9rem;display:flex}.guest-payment__line-due{text-transform:uppercase;letter-spacing:.05em;background-color:var(--color-accent,#e63946);color:#fff;vertical-align:middle;border-radius:2rem;margin-left:.5rem;padding:.125rem .5rem;font-size:.65rem;font-weight:700;display:inline-block}.guest-payment__line-tax{color:var(--color-text-muted,#5a6672);margin-top:.125rem;font-size:.75rem;display:block}.guest-payment__line-amount--collected{color:var(--color-success,#166534)}.guest-payment__total{border-top:1px solid var(--color-border,#e5e7eb);color:var(--color-brand-primary,#1d3557);justify-content:space-between;padding:.75rem 0;font-weight:600;display:flex}.guest-payment__service-count{color:var(--color-text-muted,#6b7280);font-size:.85rem}.guest-payment__methods{border-top:1px solid var(--color-border,#f3f4f6);margin-top:1.25rem;padding-top:1rem}.guest-payment__methods-title{color:var(--color-brand-primary,#1d3557);margin:0 0 .75rem;font-size:.95rem;font-weight:600}.guest-payment__method-option{border:1px solid var(--color-border,#e5e7eb);cursor:pointer;border-radius:.5rem;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.75rem;transition:border-color .15s;display:flex}.guest-payment__method-option--selected{border-color:var(--color-brand-secondary,#457b9d);background:#457b9d0d;border-width:2px}@supports (color:color-mix(in lab, red, red)){.guest-payment__method-option--selected{background:color-mix(in srgb,var(--color-brand-secondary,#457b9d)5%,transparent)}}.guest-payment__method-logos{align-items:center;gap:.375rem;display:flex}.guest-payment__card-logo{width:auto;height:1.5rem}.guest-payment__method-fee{color:var(--color-accent,#e63946);margin-left:auto;font-size:.8rem}.guest-payment__provider-logo{opacity:.7;width:auto;height:.875rem}.guest-payment__powered-by{color:var(--color-text-muted,#9ca3af);justify-content:center;align-items:center;gap:.375rem;margin-top:.5rem;font-size:.75rem;display:flex}.guest-payment__fee-banner{background:#457b9d14;margin-top:.75rem;padding:.75rem}@supports (color:color-mix(in lab, red, red)){.guest-payment__fee-banner{background:color-mix(in srgb,var(--color-brand-secondary,#457b9d)8%,transparent)}}.guest-payment__fee-banner{color:var(--color-brand-primary,#1d3557);border-radius:.5rem;justify-content:space-between;font-size:.9rem;display:flex}.guest-payment__error{background:var(--color-danger-light);color:var(--color-error,#dc2626);border-radius:.5rem;margin-top:.75rem;padding:.75rem;font-size:.9rem}.guest-payment__actions{border-top:1px solid var(--color-border,#f3f4f6);margin-top:1rem;padding-top:.75rem}.guest-payment__btn{cursor:pointer;border:none;border-radius:.5rem;padding:.625rem 1.5rem;font-size:.9rem;font-weight:600;display:inline-block}.guest-payment__btn--pay{background:var(--color-brand-primary,#1d3557);color:var(--color-brand-cream,#faf8f5);text-align:center;width:100%}.guest-payment__btn--pay:hover{opacity:.9}.guest-payment__btn--pay:disabled{opacity:.6;cursor:not-allowed}.guest-payment__btn--receipt{background:var(--color-brand-secondary,#457b9d);color:#fff;text-align:center;justify-content:center;align-items:center;gap:.5rem;width:100%;text-decoration:none;display:inline-flex}.guest-payment__btn--receipt:hover{opacity:.9}.guest-payment__btn--disabled{background:var(--color-border,#e5e7eb);color:var(--color-text-muted,#9ca3af);cursor:not-allowed}.guest-payment__security-note{text-align:center;color:var(--color-text-muted,#9ca3af);justify-content:center;align-items:center;gap:.375rem;margin-top:1.5rem;font-size:.8rem;display:flex}.guest-payment-summary__row{border-bottom:1px solid var(--color-border,#f3f4f6);justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.guest-payment-summary__left{align-items:center;gap:.625rem;display:flex}.guest-payment-summary__label{color:var(--color-brand-primary,#1d3557);font-weight:600}.guest-payment-summary__badge{text-transform:uppercase;letter-spacing:.05em;color:#fff;vertical-align:middle;border-radius:2rem;padding:.125rem .5rem;font-size:.65rem;font-weight:700;display:inline-block}.guest-payment-summary__badge--paid{background-color:var(--color-brand-primary,#1d3557)}.guest-payment-summary__badge--partial{background-color:var(--color-brand-secondary,#457b9d)}.guest-payment-summary__badge--due{background-color:var(--color-accent,#e63946)}.guest-payment-summary__right{text-align:right;line-height:1.4}.guest-payment-summary__amount--paid{color:var(--color-brand-primary,#1d3557);font-weight:600}.guest-payment-summary__amount--partial{color:var(--color-brand-secondary,#457b9d);font-weight:600}.guest-payment-summary__amount--due{color:var(--color-accent,#e63946);font-weight:600}.guest-payment-summary__detail{color:var(--color-text-muted,#6b7280);font-size:.85rem;display:block}.guest-payment-summary__muted{color:var(--color-text-muted,#9ca3af)}.guest-payment-summary__footer{text-align:center;padding-top:.75rem}.guest-payment__overlay{z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.guest-payment__overlay-backdrop{background:#00000080;position:absolute;inset:0}.guest-payment__overlay-content{background:var(--color-surface,#fff);border-radius:.75rem;flex-direction:column;width:90%;max-width:520px;max-height:90vh;display:flex;position:relative;overflow:hidden}.guest-payment__overlay-header{border-bottom:1px solid var(--color-border,#e5e7eb);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.guest-payment__overlay-title{color:var(--color-brand-primary,#1d3557);align-items:center;gap:.5rem;font-weight:600;display:flex}.guest-payment__overlay-cancel{color:var(--color-text-muted,#6b7280);cursor:pointer;background:0 0;border:none;font-size:.9rem}.guest-payment__overlay-iframe{border:none;flex:1;width:100%;min-height:500px}.guest-arrival__edit-btn{color:var(--color-brand-secondary,#457b9d);cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:.95rem;font-weight:600}.guest-arrival__edit-btn:hover{color:var(--color-brand-primary,#1d3557)}.guest-arrival__prompt-row{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.guest-arrival__time-picker{align-items:center;gap:.375rem;display:flex}.guest-arrival__time-picker select{flex:1}.guest-arrival__time-separator{color:var(--color-text-muted,#5a6672);font-weight:600}.guest-arrival__form-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.guest-arrival__transport-link{color:var(--color-brand-secondary,#457b9d);align-items:center;gap:.35rem;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.guest-arrival__transport-link:hover{color:var(--color-brand-primary,#1d3557)}.guest-countdown{border-radius:var(--radius-card,.5rem);font-family:var(--font-body);align-items:center;gap:.75rem;margin-bottom:2rem;padding:1rem 1.25rem;font-size:1.05rem;display:flex}.guest-countdown--upcoming{color:var(--color-text,#1d3557);background-color:#a8dadc33}.guest-countdown--soon{color:var(--color-brand-accent,#e63946);background-color:#e6394614}.guest-countdown--today{color:var(--color-success);background-color:#16a34a1a}.guest-countdown--during{color:var(--color-text,#1d3557);background-color:#a8dadc33}.guest-countdown--past{background-color:var(--color-surface,#fff);color:var(--color-text-muted,#5a6672);border:1px solid var(--color-border,#e5e7eb)}.guest-countdown__icon{flex-shrink:0;width:24px;height:24px}.guest-countdown__text strong{font-weight:600}.guest-travel-party__header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.guest-travel-party__title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0;font-size:1.75rem;font-weight:500}.guest-travel-party__count{color:var(--color-text-muted,#5a6672);font-size:.875rem}.guest-travel-party__list{margin:0;padding:0;list-style:none}.guest-travel-party__member{border-bottom:1px solid var(--color-border,#e5e7eb);align-items:center;gap:.75rem;padding:.75rem 0;display:flex}.guest-travel-party__member:last-child{border-bottom:none}.guest-travel-party__avatar{background-color:var(--color-brand-secondary,#457b9d);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.8rem;font-weight:600;display:flex}.guest-travel-party__avatar--host{background-color:var(--color-brand-primary,#1d3557)}.guest-travel-party__name{color:var(--color-text,#1d3557);font-size:1rem}.guest-travel-party__badge{text-transform:uppercase;letter-spacing:.05em;background-color:var(--color-brand-primary,#1d3557);color:#fff;vertical-align:middle;border-radius:2rem;margin-left:.5rem;padding:.125rem .5rem;font-size:.65rem;font-weight:700;display:inline-block}.guest-travel-party__remove{color:var(--color-text-muted,#5a6672);cursor:pointer;opacity:.5;background:0 0;border:none;margin-left:auto;padding:.25rem;transition:opacity .2s}.guest-travel-party__remove:hover{opacity:1;color:var(--color-brand-accent,#e63946)}.guest-travel-party__add-form{align-items:center;gap:.5rem;padding-top:.75rem;display:flex}.guest-travel-party__add-form input{border:1px solid var(--color-border,#e5e7eb);font-family:var(--font-body);border-radius:.375rem;flex:1;padding:.5rem .75rem;font-size:.9rem}.guest-travel-party__add-form button{background-color:var(--color-brand-secondary,#457b9d);color:#fff;font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:.375rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:background-color .2s}.guest-travel-party__add-form button:hover{background-color:var(--color-brand-primary,#1d3557)}.guest-travel-party__hint{color:var(--color-text-muted,#5a6672);margin:-.5rem 0 1rem;font-size:.9rem;font-style:italic}.guest-travel-party__pronouns{color:var(--color-text-muted,#5a6672);margin-left:.25rem;font-size:.8rem}.guest-travel-party__child-tag{color:var(--color-text-muted,#5a6672);font-size:.85rem;display:block}.guest-travel-party__add-section{border-top:1px solid var(--color-border,#e5e7eb);flex-direction:column;gap:.75rem;padding-top:1rem;display:flex}.guest-travel-party__add-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.guest-travel-party__field label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text,#1d3557);margin-bottom:.25rem;font-size:.8rem;font-weight:600;display:block}.guest-travel-party__field input[type=text],.guest-travel-party__field input[type=email]{border:1px solid var(--color-border,#e5e7eb);width:100%;font-family:var(--font-body);box-sizing:border-box;border-radius:.375rem;padding:.5rem .75rem;font-size:.95rem}.guest-travel-party__field-hint{color:var(--color-text-muted,#5a6672);margin-top:.125rem;font-size:.8rem;display:block}.guest-travel-party__pronoun-pills{flex-wrap:wrap;gap:.5rem;display:flex}.guest-travel-party__pill{border:1px solid var(--color-border,#e5e7eb);font-family:var(--font-body);cursor:pointer;color:var(--color-text,#1d3557);background:0 0;border-radius:2rem;padding:.375rem .875rem;font-size:.9rem;transition:background-color .2s,border-color .2s,color .2s}.guest-travel-party__pill:hover{border-color:var(--color-brand-secondary,#457b9d)}.guest-travel-party__pill--active{background-color:var(--color-brand-secondary,#457b9d);border-color:var(--color-brand-secondary,#457b9d);color:#fff}.guest-travel-party__child-toggle{align-items:center;gap:.75rem;display:flex}.guest-travel-party__toggle-label{color:var(--color-text,#1d3557);cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.guest-travel-party__child-toggle input[type=number]{border:1px solid var(--color-border,#e5e7eb);width:80px;font-family:var(--font-body);border-radius:.375rem;padding:.375rem .5rem;font-size:.9rem}.guest-travel-party__add-actions{justify-content:flex-end;gap:.75rem;padding-top:.25rem;display:flex}.guest-travel-party__btn-primary{background-color:var(--color-brand-accent,#e63946);color:#fff;font-family:var(--font-body);cursor:pointer;border:none;border-radius:.375rem;padding:.5rem 1.5rem;font-size:.9rem;font-weight:600;transition:background-color .2s}.guest-travel-party__btn-primary:hover{background-color:#c4303c}@supports (color:color-mix(in lab, red, red)){.guest-travel-party__btn-primary:hover{background-color:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.guest-travel-party__btn-secondary{border:1px solid var(--color-border,#e5e7eb);font-family:var(--font-body);color:var(--color-text,#1d3557);cursor:pointer;background:0 0;border-radius:.375rem;padding:.5rem 1.25rem;font-size:.9rem;font-weight:500}.guest-travel-party__slot{border-bottom:1px solid var(--color-border,#e5e7eb);color:var(--color-text-muted,#5a6672);cursor:pointer;align-items:center;gap:.75rem;padding:.75rem 0;font-size:.95rem;transition:color .2s;display:flex}.guest-travel-party__slot:last-child{border-bottom:none}.guest-travel-party__slot:hover{color:var(--color-brand-secondary,#457b9d)}.guest-travel-party__slot-icon{border:2px dashed var(--color-border,#e5e7eb);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:border-color .2s;display:flex}.guest-travel-party__slot:hover .guest-travel-party__slot-icon{border-color:var(--color-brand-secondary,#457b9d)}.guest-travel-party__actions{margin-left:auto;position:relative}.guest-travel-party__menu-trigger{cursor:pointer;color:var(--color-text-muted,#5a6672);background:0 0;border:none;border-radius:50%;padding:.25rem;transition:background-color .2s}.guest-travel-party__menu-trigger:hover{background-color:#0000000d}.guest-travel-party__menu{background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);z-index:50;border-radius:.5rem;min-width:180px;padding:.375rem 0;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000001a}.guest-travel-party__menu button{width:100%;font-family:var(--font-body);color:var(--color-text,#1d3557);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;display:flex}.guest-travel-party__menu button:hover{background-color:#0000000a}.guest-travel-party__menu-danger{color:var(--color-brand-accent,#e63946)!important}.guest-arrival__status{align-items:center;gap:.75rem;display:flex}.guest-arrival__form{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.guest-arrival__form--compact{grid-template-columns:repeat(4,1fr)}@media (max-width:968px){.guest-arrival__form--compact{grid-template-columns:1fr 1fr}}@media (max-width:640px){.guest-arrival__form,.guest-arrival__form--compact{grid-template-columns:1fr}}.guest-arrival__form--full-width{grid-column:1/-1}.guest-arrival__field label{color:var(--color-text,#1d3557);margin-bottom:.25rem;font-size:.85rem;font-weight:600;display:block}.guest-arrival__field input,.guest-arrival__field select,.guest-arrival__field textarea{border:1px solid var(--color-border,#e5e7eb);width:100%;font-family:var(--font-body);box-sizing:border-box;border-radius:.375rem;padding:.5rem .75rem;font-size:.95rem}.guest-arrival__field textarea{resize:vertical;min-height:60px}.guest-arrival__actions{grid-column:1/-1;justify-content:flex-end;gap:.5rem;padding-top:.5rem;display:flex}.guest-arrival__actions button{font-family:var(--font-body);cursor:pointer;border-radius:.375rem;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600;transition:background-color .2s}.guest-arrival__btn-primary{font-family:var(--font-body);cursor:pointer;background-color:var(--color-brand-secondary,#457b9d);color:#fff;border:none;border-radius:.375rem;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600;transition:background-color .2s}.guest-arrival__btn-primary:hover{background-color:var(--color-brand-primary,#1d3557)}.guest-arrival__btn-secondary{border:1px solid var(--color-border,#e5e7eb);color:var(--color-text,#1d3557);background:0 0}.catalog-hero{background-color:var(--color-brand-primary,#1d3557);text-align:center;justify-content:center;align-items:center;min-height:220px;display:flex;position:relative;overflow:hidden}.catalog-hero__accent{pointer-events:none;border:1px solid #a8dadc1a;border-radius:50%;position:absolute}.catalog-hero__accent--1{width:300px;height:300px;top:-100px;right:-50px}.catalog-hero__accent--2{width:200px;height:200px;bottom:-60px;left:-30px}.catalog-hero__content{z-index:1;max-width:800px;padding:2rem;position:relative}.catalog-hero__eyebrow{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-surface-muted,#a8dadc);margin-bottom:.75rem;font-size:.875rem;font-weight:600}.catalog-hero__headline{font-family:var(--font-heading);color:#fff;margin:0 0 .75rem;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:500;line-height:1.1}.catalog-hero__subheadline{font-family:var(--font-body);color:#ffffffd9;max-width:500px;margin:0 auto;font-size:1.125rem}.catalog-detail{background-color:var(--color-bg,#faf8f5)}.catalog-detail__container{max-width:var(--width-container,1200px);margin:0 auto;padding:1.5rem 1rem}.catalog-detail__breadcrumb{color:var(--color-text-muted,#5a6672);margin-bottom:1rem;font-size:.85rem}.catalog-detail__breadcrumb a{color:var(--color-brand-secondary,#457b9d);text-decoration:none}.catalog-detail__breadcrumb a:hover{text-decoration:underline}.catalog-detail__hero-image{aspect-ratio:16/8;opacity:0;border-radius:0;margin-bottom:2rem;overflow:hidden}.catalog-detail__hero-image img{object-fit:cover;width:100%;height:100%}.catalog-detail__body{grid-template-columns:1fr;gap:2rem;display:grid}@media (min-width:1024px){.catalog-detail__body{grid-template-columns:1fr 340px}}.catalog-detail__main{order:1}.catalog-detail__sidebar{order:2}@media (min-width:1024px){.catalog-detail__sidebar{align-self:start;position:sticky;top:100px}}@media (max-width:1023px){.catalog-detail__sidebar{z-index:50;background:var(--color-surface,#fff);max-height:85vh;padding:0 1rem 1.5rem;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch;border-radius:1rem 1rem 0 0;transition:transform .35s cubic-bezier(.4,0,.2,1);position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%);box-shadow:0 -4px 24px #00000026}.catalog-detail__sidebar.is-open{transform:translateY(0)}.catalog-detail__main{padding-bottom:5rem}}.catalog-detail__panel-handle{display:none}@media (max-width:1023px){.catalog-detail__panel-handle{cursor:pointer;background:var(--color-surface,#fff);z-index:1;justify-content:center;padding:.75rem 0 .5rem;display:flex;position:sticky;top:0}.catalog-detail__panel-handle-bar{background:var(--color-border,#e5e7eb);border-radius:2px;width:2.5rem;height:.25rem}}.catalog-detail__mobile-bar{display:none}@media (max-width:1023px){.catalog-detail__mobile-bar{z-index:40;background:var(--color-surface,#fff);border-top:1px solid var(--color-border,#e5e7eb);padding:.75rem 5rem .75rem 1rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px));justify-content:space-between;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #00000014}}.catalog-detail__mobile-bar-info{flex-direction:column;gap:.125rem;display:flex}.catalog-detail__mobile-bar-price{font-family:var(--font-heading);color:var(--color-text,#1d3557);font-size:1.25rem;font-weight:600}.catalog-detail__mobile-bar-label{color:var(--color-text-muted,#5a6672);font-size:.8rem}.catalog-detail__mobile-bar-btn{font-family:var(--font-body);color:#fff;background-color:var(--color-brand-accent,#e63946);cursor:pointer;white-space:nowrap;border:none;border-radius:2rem;padding:.625rem 1.75rem;font-size:.95rem;font-weight:600;transition:background-color .2s}.catalog-detail__mobile-bar-btn:active{background-color:#c62d38}.catalog-detail__mobile-bar-btn--secondary{background-color:var(--color-brand-secondary,#457b9d)}.catalog-detail__mobile-bar-btn--secondary:active{background-color:#3b6985}@supports (color:color-mix(in lab, red, red)){.catalog-detail__mobile-bar-btn--secondary:active{background-color:color-mix(in srgb,var(--color-brand-secondary)85%,black)}}.catalog-detail__mobile-overlay{z-index:45;opacity:0;background:#0006;transition:opacity .3s;display:none;position:fixed;inset:0}.catalog-detail__mobile-overlay.is-visible{opacity:1;display:block}.catalog-detail__type{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--color-brand-secondary,#457b9d);margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:inline-block}.catalog-detail__title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 1rem;font-size:clamp(2.25rem,4.5vw,3rem);font-weight:500;line-height:1.15}.catalog-detail__facts{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.catalog-detail__fact{color:var(--color-text-muted,#5a6672);background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:2rem;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.85rem;display:inline-flex}.catalog-detail__fact--positive{color:var(--color-success);border-color:var(--color-success-border);background-color:var(--color-success-light)}.catalog-detail__section{margin-bottom:1.5rem}.catalog-detail__section-title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 .75rem;font-size:1.25rem;font-weight:500}.catalog-detail__list{margin:0;padding:0;list-style:none}.catalog-detail__list li{color:var(--color-text-muted,#5a6672);align-items:center;gap:.5rem;padding:.35rem 0;font-size:.9rem;display:flex}.catalog-detail__description{color:var(--color-text-muted,#5a6672);margin-bottom:2rem;font-size:.95rem;line-height:1.7}.catalog-detail__cancellation{color:var(--color-text-muted,#5a6672);background-color:#fef3c7;border:1px solid #fde68a;border-radius:.5rem;align-items:flex-start;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.85rem;display:flex}.catalog-detail__cancellation svg{color:var(--color-warning);flex-shrink:0;margin-top:.1rem}.catalog-detail__price-card{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);box-shadow:var(--shadow-card);padding:1.5rem}.catalog-detail__price-header{align-items:baseline;gap:.5rem;margin-bottom:1rem;display:flex}.catalog-detail__price-label{font-family:var(--font-heading);color:var(--color-text,#1d3557);font-size:1.75rem;font-weight:600}.catalog-detail__price-tiers{border-top:1px solid var(--color-border,#e5e7eb);margin-bottom:1rem;padding-top:.75rem}.catalog-detail__price-tier{color:var(--color-text-muted,#5a6672);justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.9rem;display:flex}.catalog-detail__price-info{border-top:1px solid var(--color-border,#e5e7eb);color:var(--color-text-muted,#5a6672);margin-bottom:.75rem;padding-top:.75rem;font-size:.85rem}.catalog-detail__price-info span+span{margin-left:1rem}.catalog-detail__guest-cta{border-top:1px solid var(--color-border,#e5e7eb);margin-top:1rem;padding-top:1rem}.catalog-detail__related{max-width:var(--width-container,1200px);margin:3rem auto 0;padding:0 1rem 3rem}.catalog-detail__related-title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 1.5rem;font-size:1.5rem;font-weight:500}.booking-widget{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);box-shadow:var(--shadow-card);padding:1.5rem}@media (max-width:1023px){.catalog-detail__sidebar .booking-widget{box-shadow:none;border-radius:0}}.booking-widget__price{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 1rem;font-size:2rem;font-weight:600}.booking-widget__tier{border-bottom:1px solid var(--color-border,#e5e7eb);justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.booking-widget__tier-label{color:var(--color-text,#1d3557);font-size:.9rem}.booking-widget__tier-price{color:var(--color-text-muted,#5a6672);font-size:.85rem}.booking-widget__stepper{align-items:center;gap:.75rem;display:inline-flex}.booking-widget__stepper-btn{border:1px solid var(--color-border,#e5e7eb);background:var(--color-surface,#fff);width:32px;height:32px;color:var(--color-text,#1d3557);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:border-color .2s;display:flex}.booking-widget__stepper-btn:hover{border-color:var(--color-brand-secondary,#457b9d)}.booking-widget__stepper-btn:disabled{opacity:.3;cursor:not-allowed}.booking-widget__stepper-btn svg{pointer-events:none}.booking-widget__stepper-count{text-align:center;min-width:1.5rem;font-size:1rem;font-weight:600}.booking-widget__total{border-top:2px solid var(--color-border,#e5e7eb);justify-content:space-between;align-items:center;margin-top:.5rem;padding:1rem 0;font-weight:600;display:flex}.booking-widget__total-label{color:var(--color-text-muted,#5a6672);font-size:.9rem}.booking-widget__total-amount{font-family:var(--font-heading);color:var(--color-text,#1d3557);font-size:1.5rem}.booking-widget__submit{border-radius:var(--radius-card,.5rem);width:100%;font-family:var(--font-body);cursor:pointer;border:none;margin-top:1rem;padding:.875rem;font-size:1rem;font-weight:600;transition:background-color .2s}.booking-widget__submit--primary{background-color:var(--color-brand-accent,#e63946);color:#fff}.booking-widget__submit--primary:hover{background-color:#c4303c}@supports (color:color-mix(in lab, red, red)){.booking-widget__submit--primary:hover{background-color:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.booking-widget__submit--secondary{border:2px solid var(--color-brand-secondary,#457b9d);color:var(--color-brand-secondary,#457b9d);background-color:#0000}.booking-widget__submit--secondary:hover{background-color:var(--color-brand-secondary,#457b9d);color:#fff}.booking-widget__hint{color:var(--color-text-muted,#5a6672);text-align:center;margin-top:.5rem;font-size:.8rem}.trip-services{max-width:var(--width-container,1200px);margin:0 auto;padding:2rem 1rem}.trip-services__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.trip-services__title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0;font-size:clamp(2.25rem,5vw,3rem);font-weight:500}.trip-services__section-header{border-bottom:1px solid var(--color-border,#e5e7eb);justify-content:space-between;align-items:baseline;gap:1rem;margin:2rem 0 1rem;padding-bottom:.5rem;display:flex}.trip-services__section-header .trip-services__section-title{border-bottom:none;margin:0;padding-bottom:0}.trip-services__section-title{font-family:var(--font-heading);color:var(--color-text,#1d3557);border-bottom:1px solid var(--color-border,#e5e7eb);margin:2rem 0 1rem;padding-bottom:.5rem;font-size:1.5rem;font-weight:500}.trip-services__calendar-btn{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-brand-secondary,#457b9d);border:1px solid var(--color-brand-secondary,#457b9d);white-space:nowrap;background:0 0;border-radius:2rem;align-items:center;gap:.375rem;padding:.3rem .75rem;font-weight:600;text-decoration:none;transition:background-color .2s,color .2s;display:inline-flex}.trip-services__calendar-btn:hover{background-color:var(--color-brand-secondary,#457b9d);color:#fff}.trip-services__empty{text-align:center;color:var(--color-text-muted,#5a6672);padding:4rem 2rem}.page-guest-services .service-card{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);box-shadow:var(--shadow-card);grid-template-columns:1fr;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem;display:grid}@media (min-width:768px){.page-guest-services .service-card{grid-template-columns:1fr 1fr}}.service-card__col-a{flex-direction:column;gap:.5rem;display:flex}.service-card__col-b{flex-direction:column;display:flex}.page-guest-services .service-card__image{aspect-ratio:16/9;border-radius:.5rem;width:100%;overflow:hidden}.page-guest-services .service-card__image img{object-fit:cover;width:100%;height:100%}.page-guest-services .service-card__badge{text-transform:uppercase;letter-spacing:.05em;border-radius:2rem;align-self:flex-start;padding:.3rem .85rem;font-size:.75rem;font-weight:700;display:inline-block}.page-guest-services .service-card__badge--confirmed{background-color:var(--color-success);color:#fff}.page-guest-services .service-card__badge--pending{background-color:var(--color-warning);color:#fff}.page-guest-services .service-card__badge--cancelled{background-color:var(--color-danger);color:#fff}.page-guest-services .service-card--cancelled{opacity:.45;box-shadow:none;border:1px dashed var(--color-border,#e5e7eb)}.page-guest-services .service-card--cancelled:hover{box-shadow:none;transform:none}.page-guest-services .service-card--cancelled .service-card__name,.page-guest-services .service-card--cancelled .service-card__price{text-decoration:line-through}.page-guest-services .service-card__name{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0;font-size:1.35rem;font-weight:500}.service-card__provider{color:var(--color-text-muted,#5a6672);margin:0;font-size:.9rem}.service-card__booking-row{color:var(--color-text-muted,#5a6672);flex-wrap:wrap;align-items:baseline;gap:.25rem 0;margin:.25rem 0;font-size:.9rem;display:flex}.service-card__booking-row>span+span:before{content:"·";color:var(--color-border,#ccc);margin:0 .5rem}.service-card__day{font-family:var(--font-heading);color:var(--color-text,#1d3557);font-size:1.25rem;font-weight:600}.service-card__day:after,.service-card__day+.service-card__date:before{content:none}.service-card__date{color:var(--color-text-muted,#5a6672);margin-left:.375rem;font-size:.95rem}.service-card__booking-row>.service-card__day+.service-card__date:before{content:none;margin:0}.service-card__price{color:var(--color-text,#1d3557);font-size:1.1rem;font-weight:600}.service-card__notes{color:var(--color-text-muted,#5a6672);margin:.25rem 0 0;font-size:.875rem;font-style:italic;line-height:1.5}.service-card__choose-date{font-family:var(--font-body);color:var(--color-brand-secondary,#457b9d);border:1px solid var(--color-brand-secondary,#457b9d);cursor:pointer;background:0 0;border-radius:2rem;align-items:center;gap:.375rem;margin-top:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:background-color .2s,color .2s;display:inline-flex}.service-card__choose-date:hover{background-color:var(--color-brand-secondary,#457b9d);color:#fff}.service-card__detail-section{border-bottom:1px solid var(--color-border,#e5e7eb)}.service-card__detail-section:last-child{border-bottom:none}.service-card__detail-section summary{color:var(--color-text,#1d3557);cursor:pointer;justify-content:space-between;align-items:center;padding:.625rem 0;font-size:.875rem;font-weight:600;list-style:none;display:flex}.service-card__detail-section summary:after{content:"+";color:var(--color-text-muted,#5a6672);font-size:1rem;transition:transform .2s}.service-card__detail-section[open] summary:after{content:"−"}.service-card__detail-section summary::-webkit-details-marker{display:none}.service-card__detail-section ul{margin:0;padding:0 0 .75rem;list-style:none}.service-card__detail-section li{color:var(--color-text-muted,#5a6672);padding:.25rem 0;font-size:.875rem}.service-card__detail-section li:before{content:"✓ ";color:var(--color-success,#16a34a);margin-right:.25rem}.service-card__detail-section>div,.service-card__detail-section>p{color:var(--color-text-muted,#5a6672);margin:0;padding:0 0 .75rem;font-size:.875rem;line-height:1.6}.service-card__cancel-btn{font-family:var(--font-body);color:var(--color-brand-accent,#e63946);border:1px solid var(--color-brand-accent,#e63946);cursor:pointer;background:0 0;border-radius:2rem;align-items:center;gap:.25rem;margin-top:.5rem;padding:.375rem .75rem;font-size:.8rem;font-weight:600;transition:background-color .2s,color .2s;display:inline-flex}.service-card__cancel-btn:hover{background:var(--color-brand-accent,#e63946);color:#fff}.view-toggle{background-color:var(--color-bg-muted,#f0f0f0);border-radius:20px;padding:3px;display:inline-flex}.view-toggle__btn{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);cursor:pointer;background:0 0;border:none;border-radius:18px;align-items:center;gap:5px;padding:6px 14px;font-size:.8125rem;font-weight:500;transition:background-color .2s,color .2s;display:inline-flex}.view-toggle__btn--active{background-color:var(--color-brand-primary,#1d3557);color:#fff}.view-toggle__btn:focus-visible{outline:2px solid var(--color-brand-secondary,#457b9d);outline-offset:2px}.service-card-compact{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);border-left:3px solid var(--color-brand-secondary,#457b9d);padding:1.125rem 1.25rem;box-shadow:0 1px 3px #00000014}.service-card-compact--cancelled{opacity:.45;background-color:var(--color-bg,#f1faee);box-shadow:none;border:1px dashed var(--color-border,#e5e7eb)}.service-card-compact--cancelled .service-card-compact__name,.service-card-compact--cancelled .service-card-compact__price{text-decoration:line-through;-webkit-text-decoration-color:var(--color-text-muted,#6b7280);-webkit-text-decoration-color:var(--color-text-muted,#6b7280);text-decoration-color:var(--color-text-muted,#6b7280)}.service-card-compact__header{justify-content:space-between;align-items:flex-start;display:flex}.service-card-compact__name{font-family:var(--font-body);color:var(--color-text,#1d3557);margin:0;font-size:1.05rem;font-weight:600}.service-card-compact__provider{color:var(--color-text-muted,#5a6672);margin:2px 0 0;font-size:.9rem}.service-card-compact__badge{white-space:nowrap;border-radius:10px;flex-shrink:0;padding:4px 10px;font-size:.8rem;font-weight:500}.service-card-compact__badge--confirmed{color:var(--color-brand-secondary,#457b9d);background-color:#457b9d1f}.service-card-compact__badge--pending{color:var(--color-brand-accent,#e63946);background-color:#e639461a}.service-card-compact__badge--cancelled{color:#6b7280;background-color:#9ca3af26;text-decoration:line-through}.service-card-compact__details{color:var(--color-text-muted,#5a6672);flex-wrap:wrap;gap:14px;margin-top:10px;font-size:.9rem;display:flex}.service-card-compact__price{color:var(--color-text,#1d3557);font-size:1rem;font-weight:600}.itinerary-timeline{margin:0;padding:0;list-style:none}.timeline-day{gap:16px;display:flex}.timeline-day__spine{flex-direction:column;flex-shrink:0;align-items:center;width:28px;display:flex}.timeline-day__dot{background-color:var(--color-brand-secondary,#457b9d);border-radius:50%;flex-shrink:0;width:10px;height:10px}.timeline-day--arrival .timeline-day__dot,.timeline-day--departure .timeline-day__dot{background-color:var(--color-brand-accent,#e63946);width:12px;height:12px}.timeline-day--free .timeline-day__dot{background-color:var(--color-frosted-blue,#a8dadc);width:8px;height:8px}.timeline-day__line{background-color:var(--color-frosted-blue,#a8dadc);flex:1;width:2px}.timeline-day__line--from-arrival{background:linear-gradient(to bottom,var(--color-brand-accent,#e63946),var(--color-frosted-blue,#a8dadc))}.timeline-day__line--to-departure{background:linear-gradient(to bottom,var(--color-frosted-blue,#a8dadc),var(--color-brand-accent,#e63946))}.timeline-day__content{flex:1;padding-bottom:20px}.timeline-day--free .timeline-day__content{padding-bottom:16px}.timeline-day--departure .timeline-day__content{padding-bottom:0}.timeline-day__date-row{align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.timeline-day--free .timeline-day__date-row{margin-bottom:0}.timeline-day__date{font-family:var(--font-heading);color:var(--color-text,#1d3557);font-size:1.25rem;font-weight:600}.timeline-day--free .timeline-day__date{color:#9ca3af;font-size:1.125rem;font-weight:500}.timeline-day__label{color:var(--color-text-muted,#5a6672);font-size:.9rem}.timeline-day__label--special{color:var(--color-brand-accent,#e63946);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.timeline-day--free .timeline-day__label{color:#bbb;font-style:italic}.timeline-day__cards{flex-direction:column;gap:8px;display:flex}.trip-services__browse-btn{font-family:var(--font-body);font-size:var(--text-sm);color:#fff;background-color:var(--color-brand-secondary,#457b9d);white-space:nowrap;border-radius:2rem;align-items:center;gap:.375rem;padding:.4rem 1rem;font-weight:600;text-decoration:none;transition:background-color .2s;display:inline-flex}.trip-services__browse-btn:hover{background-color:var(--color-brand-primary,#1d3557)}.trip-services__header-actions{align-items:center;gap:12px;display:flex}@media (prefers-reduced-motion:reduce){.timeline-day__line,.timeline-day__line--from-arrival,.timeline-day__line--to-departure,.view-toggle__btn{transition:none}}.activity-card__badge--requested{background-color:var(--color-brand-secondary,#457b9d)}.activity-card__badge--confirmed{background-color:var(--color-success)}.activity-card__badge--pending{background-color:var(--color-warning)}.activity-card__badge--cancelled{background-color:var(--color-danger)}.activity-card__wishlist-btn{z-index:2;cursor:pointer;width:36px;height:36px;color:var(--color-text-muted,#5a6672);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffd9;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background-color .2s,transform .15s;display:flex;position:absolute;top:.75rem;left:.75rem}.activity-card__wishlist-btn:hover{color:var(--color-brand-accent,#e63946);background:#fff;transform:scale(1.1)}.activity-card__wishlist-btn--active{background:var(--color-brand-accent,#e63946);color:#fff}.activity-card__wishlist-btn--active svg{fill:currentColor}.guest-login-hero{background-color:var(--color-brand-primary,#1d3557);text-align:center;justify-content:center;align-items:center;min-height:280px;display:flex;position:relative;overflow:hidden}.guest-login-hero__accent{pointer-events:none;border:1px solid #a8dadc1a;border-radius:50%;position:absolute}.guest-login-hero__accent--1{width:400px;height:400px;top:-150px;right:-80px}.guest-login-hero__accent--2{width:250px;height:250px;bottom:-80px;left:-50px}.guest-login-hero__content{z-index:1;max-width:600px;padding:3rem 2rem;position:relative}.guest-login-hero__eyebrow{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-surface-muted,#a8dadc);margin-bottom:.75rem;font-size:.875rem;font-weight:600}.guest-login-hero__headline{font-family:var(--font-heading);color:#fff;margin:0 0 .75rem;font-size:clamp(2rem,5vw,3rem);font-weight:500;line-height:1.1}.guest-login-hero__subheadline{font-family:var(--font-body);color:#ffffffd9;max-width:480px;margin:0 auto;font-size:1rem;line-height:1.6}.guest-login-form{z-index:2;max-width:440px;margin:-2rem auto 4rem;padding:0 1rem;position:relative}.guest-login-form__card{background-color:var(--color-surface,#fff);border-radius:var(--radius-card,.5rem);padding:2rem;box-shadow:0 4px 24px #0000001f}.guest-login-form__title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 .5rem;font-size:1.5rem;font-weight:500}.guest-login-form__subtitle{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.guest-login-form__field{margin-bottom:1.25rem}.guest-login-form__label{font-family:var(--font-body);color:var(--color-text,#1d3557);margin-bottom:.375rem;font-size:.9rem;font-weight:600;display:block}.guest-login-form__input{width:100%;font-family:var(--font-body);color:var(--color-text,#1d3557);border:2px solid var(--color-border,#e5e7eb);box-sizing:border-box;background-color:#fff;border-radius:.375rem;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s;display:block}.guest-login-form__input::placeholder{color:#9ca3af}.guest-login-form__input:focus{border-color:var(--color-brand-secondary,#457b9d);outline:none;box-shadow:0 0 0 3px #457b9d26}.guest-login-form__submit{width:100%;font-family:var(--font-body);color:#fff;background-color:var(--color-brand-accent,#e63946);cursor:pointer;border:none;border-radius:.375rem;margin-top:.5rem;padding:.875rem;font-size:1rem;font-weight:600;transition:background-color .2s,transform .1s;display:block}.guest-login-form__submit:hover{background-color:#c4303c}@supports (color:color-mix(in lab, red, red)){.guest-login-form__submit:hover{background-color:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.guest-login-form__submit:active{transform:scale(.99)}.guest-login-form__hint{color:var(--color-text-muted,#5a6672);text-align:center;margin:1rem 0 0;font-size:.85rem}.guest-villa-guide{max-width:800px;margin:0 auto;padding:2rem 1.5rem}.guest-villa-guide__title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 .25rem;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:500}.guest-villa-guide__subtitle{font-family:var(--font-body);color:var(--color-text-muted,#5a6672);margin:0 0 2rem;font-size:1rem}.guest-villa-guide__hero{background:var(--color-brand-primary,#1d3557);color:#fff;border-radius:.75rem;margin-bottom:1rem;padding:1.5rem}.guest-villa-guide__hero-title{font-family:var(--font-heading);margin:0 0 1rem;font-size:1.25rem;font-weight:500}.guest-villa-guide__hero-grid{flex-wrap:wrap;gap:1rem;display:flex}.guest-villa-guide__hero-item{flex:200px;align-items:center;gap:.5rem;display:flex}.guest-villa-guide__hero-label{text-transform:uppercase;letter-spacing:.05em;opacity:.7;min-width:5rem;font-size:.8rem}.guest-villa-guide__hero-value{font-family:monospace;font-size:1rem;font-weight:600}.guest-villa-guide__copy-btn{cursor:pointer;color:#fff;background:#ffffff26;border:none;border-radius:.25rem;flex-shrink:0;padding:.35rem;transition:background-color .2s}.guest-villa-guide__copy-btn:hover{background:#ffffff4d}.guest-villa-guide__copy-btn--copied{background:#16a34a66}.guest-villa-guide__emergency{background:var(--color-danger-light);border:1px solid var(--color-danger-border);border-radius:.75rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.guest-villa-guide__emergency-title{font-family:var(--font-heading);color:var(--color-text,#1d3557);margin:0 0 .75rem;font-size:1.2rem;font-weight:500}.guest-villa-guide__contact{justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.9rem;display:flex}.guest-villa-guide__contact+.guest-villa-guide__contact{border-top:1px solid var(--color-danger-border)}.guest-villa-guide__contact-role{color:var(--color-text-muted,#5a6672);margin-left:.5rem;font-size:.85rem}.guest-villa-guide__contact-phone{color:var(--color-brand-secondary,#457b9d);font-weight:600;text-decoration:none}.guest-villa-guide__accordion{flex-direction:column;gap:.25rem;display:flex}.guest-villa-guide__section{border:1px solid var(--color-border,#e5e7eb);border-radius:.5rem;overflow:hidden}.guest-villa-guide__section-header{width:100%;font-family:var(--font-heading);color:var(--color-text,#1d3557);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;padding:1rem 1.25rem;font-size:1.1rem;font-weight:500;display:flex}.guest-villa-guide__section-header:hover{background:var(--color-surface,#f8f9fa)}.guest-villa-guide__chevron{flex-shrink:0;transition:transform .2s}.guest-villa-guide__section-header[aria-expanded=true] .guest-villa-guide__chevron{transform:rotate(180deg)}.guest-villa-guide__section-body{max-height:0;padding:0 1.25rem;transition:max-height .3s;overflow:hidden}.guest-villa-guide__section-header[aria-expanded=true]+.guest-villa-guide__section-body{padding-bottom:1.25rem}.guest-villa-guide__section-body p{color:var(--color-text,#1d3557);margin:0 0 .5rem;font-size:.95rem;line-height:1.7}.guest-villa-guide__section-body p:last-child{margin-bottom:0}.guest-villa-guide__policies{grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:0;font-size:.95rem;display:grid}.guest-villa-guide__policies dt{color:var(--color-text,#1d3557);font-weight:600}.guest-villa-guide__policies dd{color:var(--color-text-muted,#5a6672);margin:0}.block-pm-hero{text-align:center;background:linear-gradient(170deg,var(--color-brand-primary)0%,#2d5173 60%,var(--color-brand-secondary)100%);justify-content:center;align-items:center;min-height:70vh;display:flex}@supports (color:color-mix(in lab, red, red)){.block-pm-hero{background:linear-gradient(170deg,var(--color-brand-primary)0%,color-mix(in srgb,var(--color-brand-primary)60%,var(--color-brand-secondary))60%,var(--color-brand-secondary)100%)}}.block-pm-hero{padding:5rem 1.5rem;position:relative;overflow:hidden}.block-pm-hero__image{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}.block-pm-hero:has(.block-pm-hero__image):before{content:"";z-index:2;pointer-events:none;background:#0006;position:absolute;inset:0}.block-pm-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#a8dadc26 0%,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute;top:-20%;right:-10%}.block-pm-hero__content{z-index:10;max-width:700px;position:relative}.block-pm-hero__eyebrow{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-surface-muted);margin-bottom:1rem;font-size:.8rem;font-weight:500}.block-pm-hero__headline{color:#fff;margin-bottom:1.25rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:400;line-height:1.15}.block-pm-hero__subheadline{color:var(--color-surface-muted);max-width:550px;margin-left:auto;margin-right:auto;font-size:clamp(1.05rem,2vw,1.25rem);font-weight:300;line-height:1.6}.block-pm-intro{padding:5rem 1.5rem}.block-pm-intro__inner{text-align:center;max-width:720px;margin:0 auto}.block-pm-intro__heading{color:var(--color-brand-primary);margin-bottom:1.25rem;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:400}.block-pm-intro__body{color:var(--color-text-muted);font-size:1.1rem;line-height:1.75}.block-pm-tiers{max-width:1100px;margin:0 auto;padding:0 1.5rem 5rem}.block-pm-tiers__grid{border-radius:12px;display:flex;overflow:hidden;box-shadow:0 12px 48px #1d35571a}@supports (color:color-mix(in lab, red, red)){.block-pm-tiers__grid{box-shadow:0 12px 48px color-mix(in srgb,var(--color-brand-primary)10%,transparent)}}@media (max-width:48rem){.block-pm-tiers__grid{flex-direction:column}}.pm-tier{flex-direction:column;flex:1;padding:3rem 2.25rem;display:flex}.pm-tier--essential,.pm-tier--signature{background:var(--color-warm-cream)}.pm-tier--prime{background:var(--color-brand-primary);color:#fff;flex:1.15}@media (max-width:48rem){.pm-tier--prime{flex:none}}.pm-tier__eyebrow{font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:#fff;background:var(--color-brand-secondary);margin-bottom:1rem;padding:.35rem .9rem;font-size:.65rem;font-weight:600;display:inline-block}.pm-tier--prime .pm-tier__eyebrow{background:var(--color-surface-muted);color:var(--color-brand-primary)}.pm-tier__headline{margin-bottom:.5rem;font-size:1.75rem;font-weight:400}.pm-tier--prime .pm-tier__headline{color:#fff}.pm-tier__tagline{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:.95rem;font-style:italic;line-height:1.5}.pm-tier--prime .pm-tier__tagline{color:var(--color-surface-muted)}.pm-tier__features{flex-grow:1;margin:0 0 1.75rem;padding:0;list-style:none}.pm-tier__features li{color:var(--color-text-muted);padding:.3rem 0 .3rem 1.25rem;font-size:.9rem;line-height:1.6;position:relative}.pm-tier--prime .pm-tier__features li{color:#fffc}.pm-tier__features li:before{content:"✓";color:var(--color-brand-secondary);font-weight:600;position:absolute;left:0}.pm-tier--prime .pm-tier__features li:before{color:var(--color-surface-muted)}.pm-tier__best-for{color:var(--color-brand-secondary);border-top:1px solid #457b9d33;margin-top:auto;padding-top:1rem;font-size:.85rem;font-style:italic}.pm-tier--prime .pm-tier__best-for{color:var(--color-surface-muted);border-top-color:#a8dadc40}.pm-tier__cta{cursor:pointer;border:1px solid var(--color-brand-primary);color:var(--color-brand-primary);text-align:center;background:0 0;margin-top:1.25rem;padding:.75rem 1.75rem;font-size:.9rem;font-weight:500;transition:all .25s;display:inline-block}.pm-tier__cta:hover{background:var(--color-brand-primary);color:#fff}.pm-tier__cta--accent{background:var(--color-brand-accent);border-color:var(--color-brand-accent);color:#fff}.pm-tier__cta--accent:hover{background:#c4303c}@supports (color:color-mix(in lab, red, red)){.pm-tier__cta--accent:hover{background:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.pm-tier__cta--accent:hover{border-color:#c4303c}@supports (color:color-mix(in lab, red, red)){.pm-tier__cta--accent:hover{border-color:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.block-pm-comparison{max-width:1100px;margin:0 auto;padding:5rem 1.5rem}.block-pm-comparison__heading{text-align:center;color:var(--color-brand-primary);margin-bottom:3rem;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:400}.block-pm-comparison__scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.block-pm-comparison__table{border-collapse:collapse;width:100%;min-width:600px}.block-pm-comparison__table thead th{font-family:var(--font-heading);text-align:center;border-bottom:2px solid var(--color-brand-primary);padding:1rem 1.25rem;font-size:1.1rem;font-weight:500}.block-pm-comparison__table thead th:first-child{text-align:left;width:40%}.block-pm-comparison__prime-col{background:#1d355708}@supports (color:color-mix(in lab, red, red)){.block-pm-comparison__prime-col{background:color-mix(in srgb,var(--color-brand-primary)3%,transparent)}}.block-pm-comparison__table thead th.block-pm-comparison__prime-col{background:var(--color-brand-primary);color:#fff;border-radius:8px 8px 0 0}.block-pm-comparison__category td{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-brand-secondary);border-bottom:1px solid #457b9d26;padding:1.5rem 1.25rem .5rem;font-size:.75rem;font-weight:600}.block-pm-comparison__table tbody tr:not(.block-pm-comparison__category) td{text-align:center;border-bottom:1px solid #0000000f;padding:.75rem 1.25rem;font-size:.9rem}.block-pm-comparison__table tbody tr:not(.block-pm-comparison__category) td:first-child{text-align:left;color:var(--color-text-muted)}.pm-check{color:var(--color-brand-secondary);font-size:1.1rem;font-weight:600}.pm-dash{color:var(--color-text-muted);opacity:.5}.pm-text-detail{color:var(--color-brand-secondary);font-size:.8rem}.block-pm-testimonials{background:var(--color-brand-primary);padding:5rem 1.5rem}.block-pm-testimonials__inner{max-width:1100px;margin:0 auto}.block-pm-testimonials__heading{color:#fff;text-align:center;margin-bottom:3rem;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:400}.block-pm-testimonials__grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}@media (max-width:48rem){.block-pm-testimonials__grid{grid-template-columns:1fr}}.pm-testimonial-card{background:#ffffff0f;border:1px solid #a8dadc26;padding:2rem}.pm-testimonial-card__quote{font-family:var(--font-heading);color:#ffffffe6;margin:0 0 1.5rem;font-size:1.15rem;font-style:italic;line-height:1.65}.pm-testimonial-card__quote:before{content:"“";color:var(--color-surface-muted);margin-bottom:.5rem;font-size:2.5rem;line-height:1;display:block}.pm-testimonial-card__author{color:#fff;font-size:.9rem;font-weight:500}.pm-testimonial-card__role{color:var(--color-surface-muted);margin-top:.125rem;font-size:.8rem}.block-pm-cta{text-align:center;max-width:600px;margin:0 auto;padding:5rem 1.5rem}.block-pm-cta__heading{color:var(--color-brand-primary);margin-bottom:1rem;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:400}.block-pm-cta__body{color:var(--color-text-muted);margin-bottom:2rem;font-size:1.05rem;line-height:1.6}.block-pm-cta__btn{background:var(--color-brand-accent);color:#fff;cursor:pointer;border:none;padding:1rem 2.5rem;font-size:1rem;font-weight:500;transition:all .25s;display:inline-block}.block-pm-cta__btn:hover{background:#c4303c}@supports (color:color-mix(in lab, red, red)){.block-pm-cta__btn:hover{background:color-mix(in srgb,var(--color-brand-accent)85%,black)}}.block-pm-cta__btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #e639464d}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
