/* The translucent material stays on navigation and controls; photographs remain clear. */
.site-header{transition:background .3s ease,padding .3s ease}
.site-header.is-scrolled{background:rgba(246,242,235,.90);padding:6px 0}
.nav-row{transition:height .3s ease,box-shadow .3s ease,background .3s ease}
.site-header.is-scrolled .nav-row{height:62px;background:rgba(255,255,255,.79);box-shadow:0 9px 30px rgba(28,22,18,.12),inset 0 1px rgba(255,255,255,.95)}
.site-header .brand,.nav-links a,.menu-toggle,.desktop-cta{touch-action:manipulation}

.home-hero .hero-photo{isolation:isolate}
.hero-slider:after{z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(15,13,11,.14),transparent 24%,transparent 56%,rgba(15,13,11,.42))}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transform:scale(1.055);transition:opacity .85s cubic-bezier(.2,.75,.2,1),transform 5.9s linear,visibility 0s .85s;will-change:opacity,transform}
.hero-slide.is-active{opacity:1;visibility:visible;transform:scale(1);transition:opacity .85s cubic-bezier(.2,.75,.2,1),transform 5.9s linear,visibility 0s}
.home-hero .hero-slide img{width:100%;height:100%;object-fit:cover;animation:none;filter:saturate(.88) contrast(1.025)}
.hero-slide:nth-child(1) img{object-position:center 44%}
.hero-slide:nth-child(2) img{object-position:center 53%}
.hero-slide:nth-child(3) img{object-position:center 47%}
.hero-slide:nth-child(4) img{object-position:center 48%}
.slider-edition{position:absolute;z-index:3;top:25px;left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;color:white;text-shadow:0 1px 12px rgba(0,0,0,.5);font-size:9px;font-weight:700;letter-spacing:.24em}
.slider-edition i{font-style:normal;letter-spacing:.16em}
.hero-slider .hero-glass{bottom:91px;z-index:3;min-height:71px;background:rgba(246,242,235,.82);border-color:rgba(255,255,255,.65);box-shadow:0 16px 42px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.8)}
.slider-controls{position:absolute;z-index:3;bottom:23px;left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.slide-tabs{display:flex;gap:9px;min-width:0;flex:1;max-width:300px}
.slide-tab{appearance:none;border:0;background:none;color:rgba(255,255,255,.75);cursor:pointer;display:flex;align-items:center;gap:7px;padding:8px 0;min-width:0;flex:1;text-align:left;touch-action:manipulation}
.slide-tab span{height:2px;flex:1;min-width:12px;overflow:hidden;background:rgba(255,255,255,.45);position:relative}
.slide-tab span:after{content:"";position:absolute;inset:0;background:white;transform:scaleX(0);transform-origin:left}
.slide-tab.is-active span{background:rgba(255,255,255,.35)}
.slide-tab.is-active span:after{transform:scaleX(1)}
.hero-slider.is-running .slide-tab.is-active span:after{animation:slide-progress 5.8s linear both}
.slide-tab b{font-size:9px;font-weight:600;letter-spacing:.08em}
@keyframes slide-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.slide-arrows{display:flex;gap:6px}
.slide-arrows button{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.53);background:rgba(246,242,235,.2);color:#fff;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);cursor:pointer;font-size:18px;transition:background .2s,transform .2s;touch-action:manipulation}
.slide-arrows button:hover{background:rgba(246,242,235,.37);transform:translateY(-2px)}
.slider-note{position:absolute;z-index:3;right:26px;bottom:77px;color:rgba(255,255,255,.85);font-size:9px;letter-spacing:.09em;text-shadow:0 1px 10px rgba(0,0,0,.5)}

.scroll-scene{height:145svh;min-height:800px;background:#e8dfd4;--scene-inset:0%;--scene-scale:1;--scene-shift:0px;--scene-opacity:1}
.scene-sticky{position:sticky;top:80px;height:calc(100svh - 80px);min-height:580px;overflow:hidden;background:#1b1816;color:var(--paper)}
.scene-photo{position:absolute;inset:0;overflow:hidden;clip-path:inset(var(--scene-inset) round 25px);transition:clip-path .08s linear}
.scene-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,15,14,.82) 5%,rgba(18,15,14,.42) 58%,rgba(18,15,14,.22)),linear-gradient(0deg,rgba(18,15,14,.25),transparent 55%)}
.scene-photo img{width:100%;height:100%;object-fit:cover;object-position:center 42%;transform:scale(var(--scene-scale));will-change:transform}
.scene-copy{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:4%;padding-bottom:8%;opacity:var(--scene-opacity);transform:translateY(var(--scene-shift));will-change:transform,opacity}
.scene-copy>span,.scene-index{font-size:10px;letter-spacing:.23em;font-weight:700}
.scene-copy h2{font-size:clamp(64px,8vw,142px);line-height:.92;letter-spacing:-.065em;font-weight:400;margin:30px 0;max-width:1000px}
.scene-copy h2 em{font-weight:400;color:#d8c3ac}
.scene-copy p{color:#e3d9ce;max-width:420px;font-size:15px}
.scene-copy a{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;border-bottom:1px solid #e9e1d8;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700}
.scene-index{position:absolute;z-index:1;right:5vw;bottom:26px;color:#e7ddd2}

@media(max-width:760px){
  .site-header.is-scrolled .nav-row{height:55px}
  .home-hero .hero-photo{height:53svh;min-height:390px}
  .slider-edition{top:20px;left:17px;right:17px;font-size:8px}
  .hero-slider .hero-glass{left:15px;right:15px;bottom:74px;min-height:56px;padding:10px 12px}
  .hero-slider .hero-glass strong{font-size:17px}
  .slider-controls{left:16px;right:16px;bottom:13px}
  .slide-arrows button{width:41px;height:41px}
  .slider-note{display:none}
  .scroll-scene{height:115svh;min-height:680px}
  .scene-sticky{top:68px;height:calc(100svh - 68px);min-height:570px}
  .scene-photo:after{background:linear-gradient(0deg,rgba(18,15,14,.85),rgba(18,15,14,.44) 65%,rgba(18,15,14,.2))}
  .scene-copy{justify-content:flex-end;padding-bottom:90px}
  .scene-copy h2{font-size:clamp(53px,11.6vw,82px);max-width:550px;margin:22px 0}
  .scene-copy p{font-size:13px;max-width:300px}
  .scene-index{right:18px;bottom:16px}
}
@media(max-width:460px){
  .slide-tab b{font-size:8px}.slide-tabs{max-width:178px;gap:6px}.slide-tab{gap:4px}
  .hero-slider .hero-glass strong{font-size:15px}
  .hero-slider .hero-glass .slide-label{display:none}
  .scene-copy h2{font-size:clamp(50px,12vw,70px)}
}
@media(prefers-reduced-motion:reduce){
  .hero-slide,.hero-slide.is-active,.scene-photo img,.scene-copy,.site-header,.nav-row{transition:none!important;animation:none!important;transform:none!important}
  .hero-slider.is-running .slide-tab.is-active span:after{animation:none!important}
  .scene-photo{clip-path:none!important}
}

/* Real customer words and the local editorial guide. */
.review-section{background:#dcd3c8;padding:clamp(75px,9vw,140px) 0;color:#181615}
.review-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:45px}
.review-heading h2{font-size:clamp(56px,6.4vw,100px);line-height:.94;letter-spacing:-.065em;margin:20px 0 0}
.review-heading h2 em{color:#8b7667;font-weight:400}
.review-heading>p{max-width:350px;color:#5c524a;line-height:1.65;margin:0 0 5px}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.review-grid figure{margin:0;border:1px solid rgba(24,22,21,.24);min-height:280px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(249,246,240,.34);border-radius:4px}
.review-grid figure:before{content:'“';font:400 52px/1 Georgia,serif;color:#695346}
.review-grid blockquote{font:400 clamp(25px,2.6vw,41px)/1.17 Georgia,serif;letter-spacing:-.035em;margin:20px 0}
.review-grid figcaption{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#675b50}
.review-foot{display:flex;justify-content:space-between;gap:30px;align-items:start;border-top:1px solid rgba(24,22,21,.34);padding-top:22px;margin-top:20px}
.review-foot>a{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:6px;white-space:nowrap}
.review-foot small{font-size:11px;line-height:1.6;color:#665d55;max-width:570px}.review-foot small a{text-decoration:underline}
.guide-preview{background:#f4efe8}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.guide-card{text-decoration:none;color:#171615;border-top:1px solid #9f958a;display:flex;flex-direction:column;padding-top:15px}
.guide-card img{width:100%;height:clamp(230px,27vw,390px);object-fit:cover;filter:saturate(.83);transition:filter .4s ease,transform .6s ease}
.guide-card:hover img{filter:saturate(1);transform:scale(.985)}
.guide-card>span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#6e6258;margin:24px 0 10px}
.guide-card h3{font:400 clamp(25px,2.5vw,38px)/1.13 Georgia,serif;letter-spacing:-.035em;margin:0 0 22px}
.guide-card b{font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-top:auto;border-bottom:1px solid #a9a098;padding-bottom:16px}
.guide-section{background:#f4efe8}.guide-section .guide-grid{row-gap:55px}
.guide-hero{background:#1b1917;color:#f5f0e9;padding:120px 0 70px}
.guide-hero .crumbs{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:28px}
.guide-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:7vw;align-items:center}
.guide-hero-grid>*{min-width:0}
.guide-hero h1{font-size:clamp(52px,6.2vw,95px);line-height:1;letter-spacing:-.055em;margin:37px 0 28px}
.guide-hero p{max-width:620px;font-size:clamp(17px,1.5vw,22px);line-height:1.5;color:#d2c9be}
.guide-hero img{width:100%;height:540px;object-fit:cover}
.guide-date{display:block;margin-top:40px;font-size:11px;letter-spacing:.08em;color:#b7aa9d}
.guide-body{display:grid;grid-template-columns:220px minmax(0,760px);gap:8vw;padding-top:95px;padding-bottom:115px}
.guide-aside{display:flex;flex-direction:column;gap:20px;border-top:1px solid #a59a8f;padding-top:20px;align-self:start;position:sticky;top:115px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.guide-aside span{color:#8a7f75}.guide-aside a{text-decoration:none;border-bottom:1px solid #b6aca2;padding-bottom:12px}
.guide-prose{font-size:17px;line-height:1.8;color:#413a34}.guide-prose .guide-lead{font:400 clamp(28px,3vw,43px)/1.35 Georgia,serif;color:#1d1a18;letter-spacing:-.025em;margin:0 0 70px}
.guide-prose section{border-top:1px solid #bfb5aa;padding-top:25px;margin-top:50px}.guide-prose h2{font:400 clamp(29px,3vw,43px)/1.17 Georgia,serif;color:#1d1a18;letter-spacing:-.035em;margin:0 0 20px}.guide-prose h3{font:400 24px/1.3 Georgia,serif;color:#1d1a18}
.guide-prose p{margin:0 0 20px}.guide-related{display:flex;flex-wrap:wrap;gap:10px;margin:60px 0 40px}.guide-related span{width:100%;font-size:10px;letter-spacing:.14em}.guide-related a{border:1px solid #a99e93;border-radius:100px;padding:8px 16px;font-size:12px;text-decoration:none}.guide-disclaimer{font-size:12px;color:#776d64}
@media(max-width:760px){.review-heading{display:block}.review-heading>p{margin:25px 0 0}.review-grid,.guide-grid{grid-template-columns:1fr}.review-grid figure{min-height:220px}.review-foot{display:block}.review-foot small{display:block;margin-top:25px}.guide-card img{height:300px}.guide-hero{padding:95px 0 45px}.guide-hero-grid{grid-template-columns:minmax(0,1fr);gap:35px}.guide-hero img{height:340px}.guide-hero h1{font-size:clamp(47px,11vw,72px)}.guide-body{display:block;padding-top:55px}.guide-aside{position:static;margin-bottom:45px}.guide-prose{font-size:16px}}

.consent-banner[hidden]{display:none!important}
.consent-banner{position:fixed;z-index:120;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));max-width:820px;margin:auto;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:26px;background:rgba(247,243,237,.97);color:#191715;border:1px solid rgba(255,255,255,.8);border-radius:20px;box-shadow:0 25px 80px rgba(0,0,0,.24);backdrop-filter:blur(24px)}
.consent-banner strong{font:400 21px/1.25 Georgia,serif}.consent-banner p{font-size:12px;line-height:1.5;color:#665d55;margin:8px 0 0}.consent-banner p a{text-decoration:underline}
.consent-actions{display:flex;gap:8px;flex-shrink:0}.consent-actions button{cursor:pointer;border:1px solid #171615;background:transparent;color:#171615;padding:13px 18px;border-radius:12px;font:700 11px/1 sans-serif;letter-spacing:.06em}.consent-actions button[data-consent="yes"]{background:#171615;color:#f6f2eb}
.consent-actions button[data-consent="no"]{background:#171615;color:#f6f2eb}
.consent-open .contact-dock{display:none}
@media(max-width:760px){.consent-banner{display:block;padding:18px}.consent-banner strong{font-size:18px}.consent-actions{margin-top:15px}.consent-actions button{flex:1}}
