:root{--sage:#3a4636;--sage-2:#4f5f4a;--olive:#73855f;--olive-soft:#73855f2e;--sea:#76b8c8;--sea-soft:#76b8c838;--sky-glass:#ceebee52;--cream:#edebe2;--paper:#f6f4ea;--gold:#a67c3f;--ink:#25251f;--muted:#68685d;--white:#fffaf0;--glass:#fffaf09e;--glass-strong:#fffaf0c7;--glass-border:#ffffff75;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;width:100%;max-width:100%;overflow-x:clip}body{color:var(--ink);background:radial-gradient(circle at 12% 8%,#76b8c840,#0000 30%),radial-gradient(circle at 86% 18%,#73855f38,#0000 28%),linear-gradient(#f7f5eb 0%,#eef5f1 42%,#f8f4ea 100%);width:100%;max-width:100%;margin:0;overflow-x:clip}a{color:inherit}img,picture{max-width:100%;display:block}img{height:auto}.progress{z-index:50;background:#edebe22e;height:3px;position:fixed;top:0;left:0;right:0}.progress span{background:linear-gradient(90deg, var(--olive), var(--sea), var(--gold));transform-origin:0;width:0;height:100%;transition:width .1s linear;display:block}.site-header{z-index:20;color:var(--cream);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#18251cb8,#18251c14);justify-content:space-between;align-items:center;gap:24px;padding:20px clamp(18px,4vw,56px);transition:background .35s,padding .35s,color .35s;display:flex;position:fixed;inset:0 0 auto}.site-header.scrolled{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#3a4636a3;border-bottom:1px solid #ffffff38;padding-top:12px;padding-bottom:12px}.brand{letter-spacing:.03em;text-shadow:0 2px 18px #00000059;align-items:center;gap:12px;font-weight:900;text-decoration:none;display:flex}.brand img{object-fit:contain;filter:drop-shadow(0 4px 16px #0000004d);width:56px;height:56px;transition:width .35s,height .35s}.site-header.scrolled .brand img{width:42px;height:42px}nav{align-items:center;gap:20px;font-size:15px;display:flex}nav a{opacity:.96;text-decoration:none}.nav-cta{background:#fffaf033;border:1px solid #edebe2ad;border-radius:999px;padding:9px 18px;box-shadow:inset 0 1px #ffffff47,0 10px 30px #0000001f}.hero{width:100%;min-height:100svh;color:var(--cream);isolation:isolate;place-items:center;display:grid;position:relative;overflow:clip}.hero-media{background:-webkit-image-set(url(/images/optimized/villa-hero-1600.webp) 1x type("image/webp"),url(/images/villa-hero.jpg) 1x type("image/jpeg")) 50%/cover no-repeat;background:image-set("/images/optimized/villa-hero-1600.webp" 1x type("image/webp"),"/images/villa-hero.jpg" 1x type("image/jpeg")) 50%/cover no-repeat;width:100%;height:100%;position:absolute;inset:0;transform:none}@media (width<=700px){.hero-media{background-image:-webkit-image-set(url(/images/optimized/villa-hero-960.webp) 1x type("image/webp"),url(/images/villa-hero.jpg) 1x type("image/jpeg"));background-image:image-set("/images/optimized/villa-hero-960.webp" 1x type("image/webp"),"/images/villa-hero.jpg" 1x type("image/jpeg"))}}.hero-overlay{background:radial-gradient(circle at 78% 18%,#76b8c83d,#0000 30%),radial-gradient(circle at 18% 72%,#73855f47,#0000 34%),linear-gradient(90deg,#1218108f,#1218103d 48%,#1218100f);position:absolute;inset:0}.hero:after{content:"";filter:blur(.2px);pointer-events:none;background:linear-gradient(135deg,#76b8c847,#fffaf014);border:1px solid #ffffff38;border-radius:48% 52% 42% 58%;width:420px;height:420px;position:absolute;bottom:-120px;right:-80px}.hero-content{width:min(1120px,100% - 40px);padding-top:56px;position:relative}.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.18em;color:var(--gold);font-size:13px;font-weight:800}.eyebrow.dark{color:var(--sage-2)}h1,h2,h3{letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:700;line-height:.98}h1{max-width:780px;font-size:clamp(64px,9.8vw,122px)}h2{font-size:clamp(40px,5vw,74px)}h3{font-size:clamp(34px,4vw,62px)}p{color:var(--muted);font-size:18px;line-height:1.65}.hero-text{color:#fffaf0f5;max-width:680px;font-size:clamp(19px,2vw,24px)}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.button{border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:0 22px;font-weight:800;text-decoration:none;display:inline-flex}.button.primary{color:var(--sage);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffaf0d1;border:1px solid #ffffff8c;box-shadow:0 18px 50px #14231c2e}.button.secondary{color:var(--cream);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#3a463680;border:1px solid #ffffffa8;box-shadow:inset 0 1px #ffffff2e,0 12px 40px #00000029}.scroll-hint{color:var(--cream);letter-spacing:.18em;text-transform:uppercase;writing-mode:vertical-rl;opacity:.85;font-size:12px;text-decoration:none;position:absolute;bottom:34px;right:clamp(18px,4vw,56px)}.scroll-hint:after{content:"";background:var(--cream);width:1px;height:56px;margin-top:12px;animation:1.8s ease-in-out infinite pulse-line;display:inline-block}@keyframes pulse-line{0%,to{opacity:.45;transform:scaleY(.35)}50%{opacity:1;transform:scaleY(1)}}.section{width:min(1160px,100% - 40px);margin:0 auto;padding:84px 0}.quick-stats{grid-template-columns:repeat(4,1fr);gap:14px;padding:36px 0 0;display:grid}.quick-stats div{background:var(--glass);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:28px;padding:28px;transition:transform .35s;box-shadow:0 24px 80px #1e261a1f}.quick-stats div:hover{transform:translateY(-6px)}.quick-stats strong{color:var(--sage);font-family:Georgia,serif;font-size:46px;line-height:1;display:block}.quick-stats span{color:var(--muted)}.intro-grid{grid-template-columns:1fr 370px;align-items:end;gap:56px;margin-top:16px;display:grid}.info-card{color:var(--cream);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(135deg,#3a4636c7,#76b8c842);border:1px solid #ffffff3d;border-radius:28px;padding:32px;box-shadow:0 24px 80px #1e261a24}.info-card p{color:#edebe2c7;margin-bottom:0}.info-card strong{font-family:Georgia,serif;font-size:32px;line-height:1.1;display:block}.small-title{text-transform:uppercase;letter-spacing:.14em;margin:0 0 8px;font-size:12px;font-weight:800}.standard{grid-template-columns:.92fr 1.08fr;align-items:stretch;gap:24px;display:grid;position:relative}.standard-copy{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffaf0b8,#ceebee57);border-radius:38px;padding:clamp(28px,5vw,54px);box-shadow:0 24px 80px #1e261a14}.standard-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.standard-card{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:radial-gradient(circle at 100% 0,#76b8c838,#0000 42%),radial-gradient(circle at 0 100%,#73855f33,#0000 46%),#fffaf09e;border-radius:30px;flex-direction:column;justify-content:flex-end;min-height:260px;padding:22px;transition:transform .35s,background .35s;display:flex;box-shadow:0 22px 70px #1e261a12}.standard-card:hover{background-color:#fffaf0c2;transform:translateY(-6px)}.standard-card span{color:var(--sage);font-family:Georgia,serif;font-size:30px;line-height:1.05}.standard-card p{margin-bottom:0;font-size:16px}.season-block{gap:22px;display:grid}.season-card{background:var(--glass);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:42px;grid-template-columns:1.05fr .95fr;align-items:center;gap:44px;padding:22px;display:grid;overflow:hidden;box-shadow:0 24px 80px #1e261a14}.season-card.reverse{grid-template-columns:.95fr 1.05fr}.season-card.reverse img{order:2}.season-card img{object-fit:cover;border-radius:30px;width:100%;height:520px;transition:transform .9s}.season-card:hover img{transform:scale(1.035)}.season-card div{padding:clamp(16px,4vw,46px)}.section-heading{max-width:820px;margin-bottom:34px;position:relative}.section-heading:after{content:"";background:linear-gradient(90deg, var(--olive), var(--sea));opacity:.9;border-radius:999px;width:118px;height:3px;margin-top:24px;display:block}.section-heading p:last-child{max-width:720px}.cut-list{gap:18px;display:grid}.cut{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf0ad;border-radius:36px;grid-template-columns:90px 1fr 380px;align-items:center;gap:26px;min-height:420px;padding:22px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 70px #1e261a12}.cut-number{color:var(--gold);align-self:start;padding-top:10px;font-family:Georgia,serif;font-size:48px}.cut-copy{max-width:560px}.cut img{object-fit:cover;border-radius:28px;width:100%;height:360px;transition:transform .8s;transform:scale(1.02)}.cut:hover img{transform:scale(1.07)}.cut:before{content:"";pointer-events:none;opacity:.65;background:radial-gradient(circle at 0 0,#73855f2e,#0000 38%),radial-gradient(circle at 100% 100%,#76b8c829,#0000 32%);position:absolute;inset:0}.amenities{grid-template-columns:1.05fr .95fr;align-items:center;gap:68px;display:grid}.checks{color:var(--ink);gap:14px;margin:28px 0;padding:0;font-size:17px;list-style:none;display:grid}.checks li:before{content:"•";color:var(--gold);margin-right:10px;font-weight:900}.feature-panel{background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--glass-border);border-radius:36px;grid-template-columns:repeat(2,1fr);gap:14px;padding:24px;display:grid;box-shadow:0 24px 80px #1e261a1a}.feature-panel div{background:#ffffff85;border-radius:24px;padding:26px;transition:transform .35s}.feature-panel div:hover{transform:translateY(-5px)}.feature-panel span{color:var(--muted);margin-bottom:8px;font-size:14px;display:block}.feature-panel strong{color:var(--sage);font-family:Georgia,serif;font-size:42px}.location{grid-template-columns:.9fr 1.1fr;align-items:center;gap:54px;display:grid}.location img{object-fit:cover;border-radius:38px;width:100%;height:520px;box-shadow:0 24px 80px #1e261a1f}.chef-feature{grid-template-columns:1fr .9fr;align-items:stretch;gap:24px;display:grid}.chef-copy{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffaf0bd,#76b8c82e);border-radius:38px;flex-direction:column;justify-content:center;min-height:420px;padding:clamp(28px,5vw,54px);display:flex;box-shadow:0 24px 80px #1e261a14}.chef-feature img{object-fit:cover;border-radius:38px;width:100%;height:100%;min-height:420px;box-shadow:0 24px 80px #1e261a1f}.text-link{color:var(--sage);border-bottom:2px solid #76b8c8a6;align-self:flex-start;margin-top:18px;padding-bottom:4px;font-weight:900;text-decoration:none;display:inline-flex}.booking-strip{color:var(--cream);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(135deg,#3a4636db,#76b8c84d);border:1px solid #ffffff38;border-radius:42px;grid-template-columns:.9fr 1.1fr;align-items:stretch;gap:26px;padding:clamp(30px,5vw,54px);display:grid}.booking-strip p{color:#edebe2d1}.booking-copy{flex-direction:column;justify-content:center;display:flex}.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.portal-grid a{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#edebe221;border:1px solid #edebe247;border-radius:28px;flex-direction:column;justify-content:flex-end;gap:10px;min-height:220px;padding:28px;text-decoration:none;transition:transform .35s,background .35s;display:flex}.portal-grid a:hover{background:#edebe22e;transform:translateY(-5px)}.portal-grid strong{font-family:Georgia,serif;font-size:clamp(34px,4vw,48px);line-height:1}.portal-grid span{color:#edebe2c7;text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:800}.portal-grid em{color:#edebe2c7;font-style:normal;line-height:1.5}.section.intro,.standard,.cuts-section,.amenities,.chef-feature,.location,.season-block{position:relative}.section.intro:before,.standard:before,.cuts-section:before,.amenities:before{content:"";z-index:-1;background:radial-gradient(circle, var(--sea-soft), transparent 68%);filter:blur(2px);pointer-events:none;border-radius:40% 60% 55% 45%;width:260px;height:260px;position:absolute}.section.intro:before{top:30px;right:-80px}.standard:before{background:radial-gradient(circle, var(--sea-soft), transparent 68%);bottom:-80px;right:25%}.cuts-section:before{background:radial-gradient(circle, var(--olive-soft), transparent 68%);top:120px;left:-110px}.amenities:before{bottom:80px;right:-90px}footer{width:min(1160px,100% - 40px);color:var(--muted);justify-content:space-between;gap:20px;margin:0 auto;padding:42px 0 64px;display:flex}footer div{gap:4px;display:grid}footer strong{color:var(--ink)}footer a{color:var(--sage);font-weight:800}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(34px)}.reveal.visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.12s}.cut.visible:nth-child(2n){transition-delay:80ms}.cut.visible:nth-child(3n){transition-delay:.14s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}.hero-media{transform:none}}@media (width<=900px){.site-header{align-items:flex-start;position:absolute}nav{display:none}.hero{align-items:end;min-height:90svh;padding-bottom:44px}.hero-text{font-size:18px}.scroll-hint{display:none}h1{font-size:clamp(54px,17vw,82px)}.quick-stats,.intro-grid,.standard,.standard-grid,.season-card,.season-card.reverse,.amenities,.chef-feature,.location,.booking-strip,.portal-grid{grid-template-columns:1fr}.season-card.reverse img{order:0}.section{padding:58px 0}.season-card img,.location img{height:360px}.cut{grid-template-columns:1fr;min-height:auto}.cut-number{padding-top:0;font-size:34px}.cut img{height:320px}.feature-panel{grid-template-columns:1fr}.booking-strip{padding:30px}.portal-grid a{min-height:auto}.chef-feature img{min-height:340px}footer{display:grid}.hero:after{display:none}}.booking-panel,.final-booking{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffaf0c7,#76b8c838);border-radius:34px;grid-template-columns:.8fr 1.2fr;align-items:center;gap:24px;margin-top:26px;padding:28px;display:grid;box-shadow:0 24px 80px #1e261a1a}.booking-panel h2,.final-booking h2{font-size:clamp(34px,4.6vw,56px)}.booking-panel .eyebrow,.final-booking .eyebrow{margin-top:0}.booking-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.booking-link{min-height:138px;color:var(--cream);background:#3a4636c2;border:1px solid #ffffff3d;border-radius:26px;flex-direction:column;justify-content:flex-end;gap:8px;padding:24px;text-decoration:none;transition:transform .28s,background .28s;display:flex;box-shadow:0 18px 50px #1e261a1f}.booking-link:hover{background:#3a4636db;transform:translateY(-4px)}.booking-link.primary-booking{background:linear-gradient(135deg,#3a4636e0,#76b8c86b)}.booking-link span{text-transform:uppercase;letter-spacing:.14em;opacity:.78;font-size:12px;font-weight:800}.booking-link strong{font-family:Georgia,serif;font-size:clamp(32px,4vw,48px);line-height:1}.quick-stats{grid-template-columns:repeat(6,1fr);padding-top:34px}.quick-stats div{padding:22px}.quick-stats strong{font-size:clamp(30px,4vw,44px)}.villa-tour{padding-top:54px}.tour-stack{gap:18px;display:grid}.tour-card{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf0ad;border-radius:42px;grid-template-columns:1.15fr .85fr;gap:0;min-height:540px;display:grid;overflow:hidden;box-shadow:0 24px 80px #1e261a14}.tour-card picture{height:100%;min-height:540px}.tour-card img{object-fit:cover;width:100%;height:100%;min-height:540px}.tour-copy{background:radial-gradient(circle at 100% 0,#76b8c82e,#0000 42%),radial-gradient(circle at 0 100%,#73855f29,#0000 46%);flex-direction:column;justify-content:center;padding:clamp(28px,5vw,56px);display:flex}.tour-copy>span{color:var(--gold);margin-bottom:20px;font-family:Georgia,serif;font-size:42px}.tour-copy h3{font-size:clamp(38px,4.8vw,64px)}.tour-copy ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:28px 0 0;padding:0;list-style:none;display:grid}.tour-copy li{color:var(--sage);background:#ffffff8a;border-radius:999px;padding:10px 13px;font-size:14px;font-weight:800}.amenities-compact{padding-top:60px}.amenity-chips{flex-wrap:wrap;gap:12px;display:flex}.amenity-chips span{border:1px solid var(--glass-border);color:var(--sage);background:#fffaf0b8;border-radius:999px;padding:13px 16px;font-weight:800;box-shadow:0 12px 40px #1e261a0f}.chef-mini{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf09e;border-radius:34px;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:34px;display:grid}.featured-chef{width:min(1160px,100% - 40px);color:var(--cream);background:radial-gradient(circle at 88% 12%,#76b8c857,#0000 34%),radial-gradient(circle at 10% 92%,#a67c3f4d,#0000 34%),linear-gradient(135deg,#3a4636f0,#3a4636c7 48%,#76b8c875);border:1px solid #ffffff52;margin-top:34px;margin-bottom:12px;padding:clamp(28px,5vw,54px);position:relative;overflow:hidden;box-shadow:0 28px 90px #1e261a38}.featured-chef:after{content:"";pointer-events:none;border:1px solid #ffffff1f;border-radius:26px;position:absolute;inset:16px}.chef-badge{color:var(--sage);text-transform:uppercase;letter-spacing:.16em;background:#fffaf0eb;border-radius:999px;margin-bottom:14px;padding:9px 15px;font-size:12px;font-weight:900;display:inline-flex;box-shadow:0 14px 42px #00000029}.featured-chef .eyebrow{color:#fffaf0db;margin-top:0}.chef-mini h2{font-size:clamp(34px,4vw,54px)}.featured-chef h2{max-width:760px;color:var(--cream);font-size:clamp(44px,5.8vw,78px)}.featured-chef p{color:#fffaf0e0;max-width:760px}.chef-mini p:last-child{margin-bottom:0}.featured-chef .button.primary{color:var(--sage);background:#fffaf0f0}.featured-chef .text-link{color:var(--cream);border-bottom-color:#fffaf0b8}.location-compact{grid-template-columns:.95fr 1.05fr;align-items:center;gap:34px;display:grid}.location-compact picture{width:100%}.location-compact img{object-fit:cover;border-radius:34px;width:100%;height:420px;box-shadow:0 24px 80px #1e261a1a}.final-booking{color:var(--cream);background:linear-gradient(135deg,#3a4636db,#76b8c84d)}.final-booking p{color:#edebe2d1}.final-booking .booking-link{background:#edebe224}.final-booking .booking-link.primary-booking{background:#edebe238}@media (width<=1100px){.quick-stats{grid-template-columns:repeat(3,1fr)}}@media (width<=900px){.booking-panel,.final-booking,.tour-card,.location-compact,.chef-mini,.booking-actions{grid-template-columns:1fr}.booking-link{min-height:auto}.quick-stats{grid-template-columns:repeat(2,1fr)}.tour-card{min-height:auto}.tour-card picture,.tour-card img{height:320px;min-height:320px}.tour-copy ul{grid-template-columns:1fr}.chef-mini .button{justify-self:start}}.hero:after{display:none}.hero-layout{grid-template-columns:minmax(0,1fr) 350px;align-items:end;gap:clamp(24px,5vw,70px);display:grid}.hero-copy{min-width:0}.hero-booking{color:var(--ink);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#fffaf0b8;border:1px solid #ffffff85;border-radius:32px;padding:22px;box-shadow:0 24px 80px #0000002e}.hero-booking .eyebrow{color:var(--sage-2);margin-top:0}.hero-booking h2{color:var(--sage);font-size:clamp(34px,4vw,48px)}.hero-booking-actions{grid-template-columns:1fr;margin-top:22px}.hero-booking .booking-link{min-height:82px;padding:18px}.hero-booking .booking-link strong{font-size:30px}nav .nav-cta{opacity:1;color:var(--cream)}@media (width>=901px){h1{font-size:clamp(58px,8vw,104px)}.hero{min-height:92svh}}@media (width<=900px){.hero-layout{grid-template-columns:1fr;align-items:end;gap:18px}.hero-booking{padding:20px}.hero-booking-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-booking .booking-link{min-height:auto;padding:16px}.hero-booking .booking-link strong{font-size:26px}}.about-source{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf0a8;border-radius:34px;grid-template-columns:.72fr 1.28fr;align-items:center;gap:34px;padding:42px;display:grid;box-shadow:0 24px 80px #1e261a14}.about-source h2{font-size:clamp(36px,4.5vw,58px)}.about-source p:last-child{margin:0}.seasons-source{padding-top:62px}.season-source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.season-source-card{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:radial-gradient(circle at 100% 0,#76b8c838,#0000 42%),radial-gradient(circle at 0 100%,#73855f2e,#0000 46%),#fffaf0a8;border-radius:38px;flex-direction:column;justify-content:flex-end;min-height:360px;padding:clamp(28px,4vw,42px);display:flex;box-shadow:0 24px 80px #1e261a14}.season-source-card h3{font-size:clamp(40px,4.6vw,64px)}.chef-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;display:flex}.final-booking .booking-actions{grid-template-columns:repeat(5,minmax(0,1fr))}.final-booking .booking-link{min-height:142px;padding:20px}.final-booking .booking-link strong{font-size:clamp(24px,2vw,34px)}.compact-booking-actions{gap:10px}.compact-booking-actions .booking-link{min-height:74px}.compact-booking-actions .booking-link strong{font-size:26px}@media (width<=1100px){.final-booking .booking-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.about-source,.season-source-grid{grid-template-columns:1fr}.about-source{padding:28px}.season-source-card{min-height:auto}.chef-actions{justify-content:flex-start}.final-booking .booking-actions,.hero-booking-actions.compact-booking-actions{grid-template-columns:1fr}}.tour-card,.tour-card img{min-height:430px}.tour-copy{padding-top:34px;padding-bottom:34px}.villa-tour{padding-top:42px;padding-bottom:54px}.seasons-source,.amenities-compact{padding-top:48px;padding-bottom:54px}@media (width<=900px){.tour-card img{height:300px;min-height:300px}}.hero-content:not(.hero-layout){max-width:940px}.hero-content:not(.hero-layout) .hero-actions{margin-top:30px}.portal-strip{grid-template-columns:320px 1fr}.portal-strip h2{font-size:clamp(34px,4vw,52px)}.portal-strip .booking-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.portal-strip .booking-link{min-height:120px}@media (width<=1100px){.portal-strip{grid-template-columns:1fr}.portal-strip .booking-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.portal-strip .booking-actions{grid-template-columns:1fr}}@media (width>=901px){.hero{min-height:86svh}}.menu-page{background:linear-gradient(#f7f5eb 0%,#eef5f1 100%)}.menu-hero{min-height:72svh;color:var(--cream);background:radial-gradient(circle at 78% 18%,#76b8c84d,#0000 30%),radial-gradient(circle at 15% 78%,#a67c3f47,#0000 32%),linear-gradient(135deg,#232d1ff5,#3a4636d1 50%,#76b8c866);align-items:end;padding:150px clamp(20px,4vw,56px) 64px;display:grid}.menu-hero-copy{width:min(980px,100%)}.menu-hero .eyebrow,.menu-hero p{color:#fffaf0e0}.menu-hero h1{max-width:920px}.menu-intro,.menu-notes{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf0b3;border-radius:38px;grid-template-columns:.85fr 1.15fr;align-items:start;gap:34px;padding:clamp(30px,5vw,54px);display:grid;box-shadow:0 24px 80px #1e261a14}.menu-intro ul,.menu-notes ul{color:var(--muted);margin:0;padding-left:20px;font-size:18px;line-height:1.8}.menu-list-block{width:min(1160px,100% - 40px);margin:0 auto;padding:44px 0}.menu-list-block h2{margin-bottom:24px}.menu-items{gap:14px;display:grid}.menu-item{border:1px solid var(--glass-border);background:#fffaf0b8;border-radius:28px;grid-template-columns:minmax(0,1fr) auto;gap:22px;padding:24px;display:grid;box-shadow:0 18px 60px #1e261a12}.menu-item h3{letter-spacing:-.035em;font-size:clamp(28px,3vw,42px)}.menu-item p{margin:8px 0 0;font-size:16px}.menu-item strong{color:var(--sage);white-space:nowrap;background:#3a46361a;border-radius:999px;align-self:start;padding:10px 14px}.menu-notes{margin-top:24px}.menu-cta{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:18px;margin-top:12px;display:flex}.menu-cta span{color:var(--sage);font-weight:800}@media (width<=900px){.menu-hero{min-height:66svh;padding-top:118px}.menu-intro,.menu-notes,.menu-item{grid-template-columns:1fr}.menu-item strong{white-space:normal;justify-self:start}}
