:root{--sage:#1f4f78;--sage-2:#2d6f9f;--olive:#5d8bb3;--olive-soft:#5d8bb32e;--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%,#5d8bb338,#0000 28%),linear-gradient(#f7f5eb 0%,#edf4fa 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(#0f263bb8,#0f263b14);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:#1f4f78a3;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-original-1600.webp) 1x type("image/webp"),url(/images/villa-hero-original.jpg) 1x type("image/jpeg")) 50%/cover no-repeat;background:image-set("/images/optimized/villa-hero-original-1600.webp" 1x type("image/webp"),"/images/villa-hero-original.jpg" 1x type("image/jpeg")) 50%/cover no-repeat;width:100%;height:100%;position:absolute;inset:0;transform:none}@media (max-width:700px){.hero-media{background-image:-webkit-image-set(url(/images/optimized/villa-hero-original-960.webp) 1x type("image/webp"),url(/images/villa-hero-original.jpg) 1x type("image/jpeg"));background-image:image-set("/images/optimized/villa-hero-original-960.webp" 1x type("image/webp"),"/images/villa-hero-original.jpg" 1x type("image/jpeg"))}}.hero-overlay{background:radial-gradient(circle at 78% 18%,#76b8c83d,#0000 30%),radial-gradient(circle at 18% 72%,#5d8bb347,#0000 34%),linear-gradient(90deg,#070b0f8f,#070b0f3d 48%,#070b0f0f);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 #0d24382e}.button.secondary{color:var(--cream);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#1f4f7880;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 #1020331f}.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,#1f4f78c7,#76b8c842);border:1px solid #ffffff3d;border-radius:28px;padding:32px;box-shadow:0 24px 80px #10203324}.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 #10203314}.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%,#5d8bb333,#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 #10203312}.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 #10203314}.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 #10203312}.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,#5d8bb32e,#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 #1020331a}.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 #1020331f}.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 #10203314}.chef-feature img{object-fit:cover;border-radius:38px;width:100%;height:100%;min-height:420px;box-shadow:0 24px 80px #1020331f}.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,#1f4f78db,#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 (max-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 #1020331a}.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:#1f4f78c2;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 #1020331f}.booking-link:hover{background:#1f4f78db;transform:translateY(-4px)}.booking-link.primary-booking{background:linear-gradient(135deg,#1f4f78e0,#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 #10203314}.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%,#5d8bb329,#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 #1020330f}.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,#1f4f78f0,#1f4f78c7 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 #10203338}.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 #1020331a}.final-booking{color:var(--cream);background:linear-gradient(135deg,#1f4f78db,#76b8c84d)}.final-booking p{color:#edebe2d1}.final-booking .booking-link{background:#edebe224}.final-booking .booking-link.primary-booking{background:#edebe238}@media (max-width:1100px){.quick-stats{grid-template-columns:repeat(3,1fr)}}@media (max-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 (min-width:901px){h1{font-size:clamp(58px,8vw,104px)}.hero{min-height:92svh}}@media (max-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 #10203314}.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%,#5d8bb32e,#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 #10203314}.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 (max-width:1100px){.final-booking .booking-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-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 (max-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 (max-width:1100px){.portal-strip{grid-template-columns:1fr}.portal-strip .booking-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.portal-strip .booking-actions{grid-template-columns:1fr}}@media (min-width:901px){.hero{min-height:86svh}}.menu-page{background:linear-gradient(#f7f5eb 0%,#edf4fa 100%)}.menu-hero{min-height:72svh;color:var(--cream);isolation:isolate;background:radial-gradient(circle at 78% 18%,#76b8c84d,#0000 30%),radial-gradient(circle at 15% 78%,#a67c3f47,#0000 32%),linear-gradient(135deg,#16324bf5,#1f4f78d1 50%,#76b8c866);align-items:end;padding:150px clamp(20px,4vw,56px) 64px;display:grid;position:relative;overflow:clip}.menu-hero:before{content:"";z-index:-2;background:url(/images/chef-fresh-fish.jpg) 50%/cover no-repeat;position:absolute;inset:0;transform:scale(1.04)}.menu-hero:after{content:"";z-index:-1;background:radial-gradient(circle at 78% 18%,#76b8c83d,#0000 30%),linear-gradient(90deg,#182116e0,#16324b9e 48%,#1f4f782e);position:absolute;inset:0}.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 #10203314}.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}.visual-menu-block{grid-template-columns:.85fr 1.15fr;align-items:stretch;gap:24px;display:grid}.visual-menu-block.reverse{grid-template-columns:1.15fr .85fr}.visual-menu-block.reverse .menu-photo-card{order:2}.menu-list-content{min-width:0}.menu-photo-card{border:1px solid var(--glass-border);background:#fffaf09e;border-radius:34px;min-height:100%;margin:0;position:relative;overflow:hidden;box-shadow:0 24px 80px #1020331a}.menu-photo-card img{object-fit:cover;width:100%;height:100%;min-height:420px;transition:transform .9s}.menu-photo-card:hover img{transform:scale(1.045)}.menu-photo-card figcaption{color:var(--cream);letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#16324b94;border:1px solid #ffffff38;border-radius:18px;padding:12px 14px;font-size:13px;font-weight:850;position:absolute;bottom:18px;left:18px;right:18px}.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 #10203312}.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{max-width:260px;color:var(--sage);white-space:normal;text-align:center;background:#1f4f781a;border-radius:999px;align-self:start;padding:10px 14px;line-height:1.35}.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 (max-width:900px){.menu-hero{min-height:66svh;padding-top:118px}.menu-intro,.menu-notes,.menu-item,.visual-menu-block,.visual-menu-block.reverse{grid-template-columns:1fr}.visual-menu-block.reverse .menu-photo-card{order:0}.menu-photo-card img{height:300px;min-height:300px}.menu-item strong{white-space:normal;justify-self:start}}

/* OpenClaw performance patch: keep the same design, make it smoother. */
.hero-media{background:-webkit-image-set(url(/images/optimized/villa-hero-original-1600.webp) 1x type("image/webp"),url(/images/villa-hero-original.jpg) 1x type("image/jpeg")) 50%/cover no-repeat;background:image-set("/images/optimized/villa-hero-original-1600.webp" 1x type("image/webp"),"/images/villa-hero-original.jpg" 1x type("image/jpeg")) 50%/cover no-repeat;transform:none!important;will-change:auto;filter:none!important}.hero-overlay{background:radial-gradient(circle at 78% 18%,#76b8c820,#0000 30%),radial-gradient(circle at 18% 72%,#5d8bb32e,#0000 34%),linear-gradient(90deg,#05070ae8,#08101a9e 48%,#070b0f35)!important}.site-header{transform:translateZ(0)}.reveal{transition:opacity .42s ease,transform .42s ease!important;will-change:auto}.quick-stats div,.info-card,.standard,.standard-card,.season-card,.cut,.feature-panel,.booking-panel,.final-booking,.tour-card,.chef-mini,.chef-card,.about-source{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.section,.cut,.season-card,.tour-card,.feature-panel,.location-compact,.chef-feature{content-visibility:auto;contain-intrinsic-size:1px 720px}.season-card img,.cut img,.menu-photo-card img{transition:transform .45s ease!important}.season-card:hover img,.cut:hover img,.menu-photo-card:hover img{transform:none!important}.hero:after,.section.intro:before,.standard:before,.cuts-section:before,.amenities:before{display:none!important}@media (max-width:900px){.site-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.hero{min-height:86svh}.hero-media{background-image:-webkit-image-set(url(/images/optimized/villa-hero-original-960.webp) 1x type("image/webp"),url(/images/villa-hero-original.jpg) 1x type("image/jpeg"));background-image:image-set("/images/optimized/villa-hero-original-960.webp" 1x type("image/webp"),"/images/villa-hero-original.jpg" 1x type("image/jpeg"))}.quick-stats div,.info-card,.standard,.standard-card,.season-card,.cut,.feature-panel,.booking-panel,.final-booking,.tour-card,.chef-mini,.chef-card,.about-source{box-shadow:0 14px 38px #10203312!important}}


/* OpenClaw smooth-scroll patch: remove scroll-jank sources while preserving layout. */
html{scroll-behavior:auto!important}.progress{display:none!important}.reveal,.reveal.visible{opacity:1!important;transform:none!important;transition:none!important;will-change:auto!important}.site-header,.site-header.scrolled{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transition:none!important}.brand img,.site-header.scrolled .brand img{transition:none!important}.hero-media{background-position:50% 50%!important;will-change:auto!important}.section,.cut,.season-card,.tour-card,.feature-panel,.location-compact,.chef-feature{content-visibility:visible!important;contain-intrinsic-size:auto!important}.quick-stats div,.info-card,.standard,.standard-card,.season-card,.cut,.feature-panel,.booking-panel,.final-booking,.tour-card,.chef-mini,.chef-card,.about-source,.season-source-card,.portal-strip,.featured-chef{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.season-card img,.cut img,.menu-photo-card img,.tour-card img,.location-compact img,.chef-feature img{transition:none!important;transform:none!important;will-change:auto!important}.season-card:hover img,.cut:hover img,.menu-photo-card:hover img,.standard-card:hover,.feature-panel div:hover,.portal-grid a:hover,.booking-link:hover{transform:none!important}@media (prefers-reduced-motion:no-preference){.reveal{transition:none!important}}


/* OpenClaw no-filter hero patch: original photo, neutral overlay only. */
.hero-media{filter:none!important;background:-webkit-image-set(url(/images/optimized/villa-hero-original-1600.webp) 1x type("image/webp"),url(/images/villa-hero-original.jpg) 1x type("image/jpeg")) 50%/cover no-repeat!important;background:image-set("/images/optimized/villa-hero-original-1600.webp" 1x type("image/webp"),"/images/villa-hero-original.jpg" 1x type("image/jpeg")) 50%/cover no-repeat!important}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.54),rgba(0,0,0,.18) 52%,rgba(0,0,0,.04))!important}.hero:after{display:none!important}@media (max-width:700px){.hero-media{background-image:-webkit-image-set(url(/images/optimized/villa-hero-original-960.webp) 1x type("image/webp"),url(/images/villa-hero-original.jpg) 1x type("image/jpeg"))!important;background-image:image-set("/images/optimized/villa-hero-original-960.webp" 1x type("image/webp"),"/images/villa-hero-original.jpg" 1x type("image/jpeg"))!important}}


/* OpenClaw hero-only no-filter patch 2026-05-16: no color filter on main image only. */
.hero-media{filter:none!important;mix-blend-mode:normal!important;opacity:1!important;background:-webkit-image-set(url(/images/optimized/villa-hero-original-1600.webp) 1x type("image/webp"),url(/images/villa-hero-original.jpg) 1x type("image/jpeg")) 50%/cover no-repeat!important;background:image-set("/images/optimized/villa-hero-original-1600.webp" 1x type("image/webp"),"/images/villa-hero-original.jpg" 1x type("image/jpeg")) 50%/cover no-repeat!important;}
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.48),rgba(0,0,0,.16) 50%,rgba(0,0,0,.02))!important;mix-blend-mode:normal!important;}
.hero:after{display:none!important;}
@media (max-width:700px){.hero-media{background-image:-webkit-image-set(url(/images/optimized/villa-hero-original-960.webp) 1x type("image/webp"),url(/images/villa-hero-original.jpg) 1x type("image/jpeg"))!important;background-image:image-set("/images/optimized/villa-hero-original-960.webp" 1x type("image/webp"),"/images/villa-hero-original.jpg" 1x type("image/jpeg"))!important;}}


/* OpenClaw footer polish 2026-05-16 */
footer{width:min(1160px,calc(100% - 40px))!important;margin:34px auto 0!important;padding:0 0 54px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;color:var(--muted)!important;}
footer>div{min-width:0!important;display:grid!important;gap:6px!important;padding:24px 0!important;}
footer strong{color:var(--ink)!important;font-family:Georgia,serif!important;font-size:clamp(26px,3vw,38px)!important;line-height:1!important;letter-spacing:-.03em!important;}
footer span{color:var(--muted)!important;font-size:15px!important;}
footer a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding:0 18px!important;border-radius:999px!important;background:rgba(31,79,120,.12)!important;border:1px solid rgba(31,79,120,.22)!important;color:var(--sage)!important;font-weight:900!important;text-decoration:none!important;white-space:nowrap!important;box-shadow:0 12px 34px rgba(16,32,51,.08)!important;}
footer a:hover{background:rgba(31,79,120,.18)!important;}
footer:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(31,79,120,.22),transparent);}
footer{position:relative!important;}
@media (max-width:700px){footer{width:calc(100% - 32px)!important;margin-top:22px!important;padding-bottom:42px!important;display:grid!important;align-items:start!important;}footer>div{padding:22px 0 0!important;}footer a{justify-self:start!important;width:auto!important;}}


/* OpenClaw blue hue patch 2026-05-16: replace green/olive accent with blue, keep hero photo unfiltered. */
:root{--sage:#1f4f78!important;--sage-2:#2d6f9f!important;--olive:#5d8bb3!important;--olive-soft:#5d8bb32e!important;--sea:#76b8c8!important;--sea-soft:#76b8c838!important;--sky-glass:#d7edf8a8!important;}
body,.menu-page{background:radial-gradient(circle at 12% 8%,#76b8c840,#0000 30%),radial-gradient(circle at 86% 18%,#5d8bb338,#0000 28%),linear-gradient(#f7f5eb 0%,#edf4fa 42%,#f8f4ea 100%)!important;}
.site-header.scrolled{background:#1f4f78a3!important;}
.menu-hero{background:radial-gradient(circle at 78% 18%,#76b8c84d,#0000 30%),radial-gradient(circle at 15% 78%,#a67c3f47,#0000 32%),linear-gradient(135deg,#102033f5,#1f4f78d1 50%,#76b8c866)!important;}
.menu-hero:after{background:radial-gradient(circle at 78% 18%,#76b8c83d,#0000 30%),linear-gradient(90deg,#08101ae0,#1020339e 48%,#1f4f782e)!important;}
footer a{background:rgba(31,79,120,.12)!important;border-color:rgba(31,79,120,.22)!important;color:#1f4f78!important;box-shadow:0 12px 34px rgba(16,32,51,.08)!important;}
footer a:hover{background:rgba(31,79,120,.18)!important;}
footer:before{background:linear-gradient(90deg,transparent,rgba(31,79,120,.22),transparent)!important;}


/* Menu page chef contact card - 2026-05-16 */
.chef-profile-card{grid-column:1/-1;margin:6px 0 0;border:1px solid var(--glass-border);border-radius:30px;overflow:hidden;background:#fffaf0b8;box-shadow:0 18px 60px #10203312;position:relative;max-width:720px}
.chef-profile-card img{width:100%;height:clamp(280px,42vw,460px);object-fit:cover;object-position:50% 45%;display:block}
.chef-profile-card figcaption{position:absolute;left:18px;right:18px;bottom:18px;color:var(--cream);letter-spacing:.08em;text-transform:uppercase;background:#102033a3;border:1px solid #ffffff38;border-radius:18px;padding:12px 14px;font-size:13px;font-weight:850;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
@media (max-width:900px){.chef-profile-card{max-width:100%}.chef-profile-card img{height:300px}}

/* Audit fix 2026-05-16: older mobile compatibility + robust media rendering. */
.tour-card picture,.tour-card img{display:block}.tour-card img{background:#e8edf1}


/* Platter price layout fix 2026-05-16 */
.menu-item-tiered{grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:start}
.menu-item .price-tiers{max-width:none;width:100%;white-space:normal;text-align:left;border-radius:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;background:#1f4f7812}
.price-tiers span{display:flex;justify-content:space-between;align-items:center;gap:10px;white-space:nowrap;background:#fffaf0d9;border:1px solid #1f4f7814;border-radius:999px;padding:9px 12px;line-height:1.15}
@media (max-width:900px){.menu-item-tiered{grid-template-columns:1fr}.menu-item .price-tiers{grid-template-columns:repeat(2,minmax(0,1fr));justify-self:stretch}.price-tiers span{font-size:13px;padding:9px 10px}}
@media (max-width:430px){.menu-item .price-tiers{grid-template-columns:1fr}.price-tiers span{font-size:14px}}


/* Google Maps + consent layer 2026-05-16 */
.map-consent-section{padding-top:64px}.map-card{position:relative;min-height:430px;border:1px solid var(--glass-border);border-radius:38px;overflow:hidden;background:#fffaf0b8;box-shadow:0 24px 80px #1020331a}.map-card iframe{width:100%;height:430px;border:0;display:block;background:#edf4fa}.map-placeholder{z-index:2;position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:28px;background:linear-gradient(135deg,#fffaf0f2,#ceebeeed)}.map-placeholder[hidden]{display:none}.map-placeholder strong{color:var(--sage);font-family:Georgia,serif;font-size:clamp(28px,4vw,44px);line-height:1.05;max-width:720px}.map-placeholder span{color:var(--muted);font-size:16px;line-height:1.55;max-width:620px;margin:12px auto 20px}.privacy-note{font-size:14px;color:var(--muted);margin:18px 0 0}.privacy-footer-link{margin-left:auto}.cookie-consent{position:fixed;z-index:100;left:16px;right:16px;bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:980px;margin:0 auto;padding:16px;border:1px solid #ffffff75;border-radius:24px;background:#16324be8;color:var(--cream);box-shadow:0 24px 80px #1020334d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.cookie-consent strong{display:block;margin-bottom:4px}.cookie-consent span{display:block;color:#edebe2d8;font-size:14px;line-height:1.45}.cookie-actions{display:flex;gap:10px;flex-shrink:0}.cookie-consent .button{min-height:42px;padding:0 16px;border:0;cursor:pointer}.cookie-consent .button.secondary{background:#edebe226;color:var(--cream);border:1px solid #ffffff66}.cookie-consent .button.primary{color:var(--sage);background:#fffaf0}@media (max-width:760px){.cookie-consent{display:grid}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.map-card,.map-card iframe{min-height:360px;height:360px}.privacy-footer-link{margin-left:0}}

/* Direct booking option: same card style, subtly stronger hue */
.portal-strip .booking-link.primary-booking{background:linear-gradient(135deg,#edebe23f,#76b8c86b)!important;border-color:#ffffff68!important}.portal-strip .booking-link.primary-booking:hover{background:linear-gradient(135deg,#edebe24b,#76b8c87d)!important}



/* Menu page spacing fix - 2026-05-17 */
.menu-page .menu-intro{margin-top:clamp(24px,5vw,56px)}
@media (max-width:700px){.menu-page .menu-intro{margin-top:28px}}


/* Private chef lead-time emphasis - 2026-05-17 */
.chef-lead-time{display:block;margin-top:10px;color:var(--sage);font-weight:900}
.menu-notes li.chef-lead-time-note{color:var(--sage);font-weight:900;background:rgba(31,79,120,.10);border:1px solid rgba(31,79,120,.18);border-radius:16px;margin-top:10px;padding:10px 14px}


/* Private chef lead-time as standalone note - 2026-05-17 */
.menu-notes .chef-lead-time-note{color:var(--sage);font-weight:900;background:rgba(31,79,120,.10);border:1px solid rgba(31,79,120,.18);border-radius:18px;margin:20px 0 0;padding:13px 16px;line-height:1.45}

/* SEO landing page: private pool villa Istria - 2026-05-28 */
.seo-page .site-header{background:linear-gradient(#0f263bd1,#0f263b2b)}
.seo-hero{min-height:78svh;color:var(--cream);isolation:isolate;align-items:end;padding:150px clamp(20px,4vw,56px) 70px;display:grid;position:relative;overflow:clip;background:linear-gradient(135deg,#16324bf0,#1f4f78c7 52%,#76b8c875)}
.seo-hero:before{content:"";z-index:-2;background:url(/images/villa-pool.jpg) 50% 58%/cover no-repeat;position:absolute;inset:0;transform:scale(1.04)}
.seo-hero:after{content:"";z-index:-1;background:radial-gradient(circle at 78% 18%,#76b8c840,#0000 30%),linear-gradient(90deg,#05070ae8,#08101aa8 48%,#070b0f35);position:absolute;inset:0}
.seo-hero-copy{width:min(980px,100%)}
.seo-hero .eyebrow,.seo-hero p{color:#fffaf0e0}.seo-hero h1{max-width:940px;font-size:clamp(54px,7.6vw,104px)}
.seo-intro{border:1px solid var(--glass-border);background:#fffaf0b8;border-radius:38px;grid-template-columns:.8fr 1.2fr;align-items:start;gap:34px;padding:clamp(30px,5vw,54px);display:grid;box-shadow:0 24px 80px #10203314}
.seo-intro h2{font-size:clamp(36px,4.5vw,58px)}
.seo-highlight-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}
.seo-highlight{border:1px solid var(--glass-border);background:radial-gradient(circle at 100% 0,#76b8c838,#0000 42%),#fffaf0b3;border-radius:30px;padding:28px;box-shadow:0 18px 60px #10203312}
.seo-highlight strong{color:var(--sage);font-family:Georgia,serif;font-size:clamp(30px,3.4vw,44px);line-height:1.05;display:block}.seo-highlight p{font-size:16px;margin-bottom:0}
.seo-split{grid-template-columns:1fr 1fr;align-items:center;gap:28px;display:grid}.seo-split img{object-fit:cover;border-radius:38px;width:100%;height:460px;box-shadow:0 24px 80px #1020331f}.seo-split-copy{border:1px solid var(--glass-border);background:#fffaf0b3;border-radius:38px;padding:clamp(30px,5vw,54px);box-shadow:0 24px 80px #10203314}
.seo-faq{display:grid;gap:14px}.seo-faq details{border:1px solid var(--glass-border);background:#fffaf0b8;border-radius:24px;padding:22px 24px;box-shadow:0 14px 44px #1020330f}.seo-faq summary{color:var(--sage);cursor:pointer;font-weight:900}.seo-faq p{margin-bottom:0;font-size:16px}.seo-page .final-booking{margin-bottom:30px}
@media (max-width:900px){.seo-hero{min-height:72svh;padding-top:118px}.seo-intro,.seo-highlight-grid,.seo-split{grid-template-columns:1fr}.seo-split img{height:320px}.seo-hero h1{font-size:clamp(48px,14vw,76px)}}
