:root{
  --charcoal:#191817;--charcoal-2:#24221F;--charcoal-3:#2E2B28;--night:#121110;
  --ivory:#F6F3ED;--white:#FCFAF7;--stone:#ECE6DC;--stone-2:#E2DACD;
  --ink:#22201E;--ink-2:#5E5852;--ink-3:#8A837B;
  --line:rgba(34,32,30,.13);--line-2:rgba(34,32,30,.24);--line-light:rgba(246,243,237,.14);--line-light-2:rgba(246,243,237,.3);
  --red:#B03028;--red-d:#962620;--ember:#B85030;--ember-l:#E58A62;--ember-xl:#F0B08F;
  --head:"Archivo","Helvetica Neue",Arial,sans-serif;--body:"Manrope","Segoe UI",system-ui,-apple-system,sans-serif;
  --inset:24px;--sec:clamp(64px,6vw,104px);--sec-s:clamp(56px,4.8vw,80px);--gap:clamp(20px,2.2vw,40px);
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .22 0 0 0 0 .18 0 0 0 0 .14 0 0 0 .5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --ease:cubic-bezier(.22,.7,.18,1);--ease-io:cubic-bezier(.7,0,.25,1);--fast:.2s;--med:.45s;
  --r:2px;--header:78px;
  interpolate-size:allow-keywords;
}
@media(min-width:768px){:root{--inset:clamp(32px,4.4vw,56px)}}
@media(min-width:1280px){:root{--inset:80px}}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 8px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 17px/1.62 var(--body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3,h4{font-family:var(--head);font-weight:640;letter-spacing:-.028em;margin:0;text-wrap:balance;font-kerning:normal}
h1{font-size:clamp(42px,5.5vw,84px);line-height:.98;letter-spacing:-.036em}
h2{font-size:clamp(32px,3.3vw,52px);line-height:1.04;letter-spacing:-.032em}
h3{font-size:clamp(24px,2.1vw,34px);line-height:1.12}
h4{font-size:22px;line-height:1.2}
p{margin:0}
.ic{width:1.15em;height:1.15em;flex:none;fill:currentColor;vertical-align:-.18em}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-60px;z-index:200;background:var(--charcoal);color:var(--ivory);padding:12px 18px;transition:top .2s}
.skip:focus{top:12px}
:focus-visible{outline:2px solid var(--ember);outline-offset:3px}
.wrap{width:100%;max-width:none;margin-inline:auto;padding-inline:var(--inset)}
.section{position:relative;padding-block:var(--sec);isolation:isolate}
.section-s{padding-block:var(--sec-s)}
.dark{background:var(--charcoal);color:var(--ivory)}
.br-lg{display:none}
@media(min-width:1024px){.br-lg{display:inline}}


.eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:18px;font:700 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.eyebrow::before{content:"";width:24px;height:2px;background:currentColor}
.eyebrow-light,.dark .eyebrow{color:var(--ember-l)}
.lede{font-size:clamp(17px,1.2vw,19px);line-height:1.62;color:var(--ink-2);max-width:54ch}
.dark .lede{color:rgba(246,243,237,.72)}
.sec-head{margin-bottom:clamp(32px,3.4vw,52px)}

.ruled{position:relative;padding-top:clamp(20px,2vw,28px)}
.ruled::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--line-2)}
.dark .ruled::before{background:var(--line-light-2)}
.sec-split{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:end}
@media(min-width:1024px){.sec-split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--gap)}.sec-split .lede{justify-self:end}}


.btn{--bg:transparent;--fg:currentColor;--bd:transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 26px;border:1px solid var(--bd);border-radius:var(--r);background:var(--bg);color:var(--fg);font:700 15px/1 var(--body);letter-spacing:.01em;text-decoration:none;white-space:nowrap;transition:background-color var(--fast) var(--ease),color var(--fast) var(--ease),border-color var(--fast) var(--ease),transform .25s var(--ease);position:relative;isolation:isolate}
.btn .ic{width:18px;height:18px;transition:transform .3s var(--ease)}
.btn:hover .ic{transform:translateX(3px)}
.btn:active{transform:translateY(1px)}
.btn-primary{--bg:var(--red);--fg:#fff}
.btn-primary:hover{--bg:var(--red-d)}
.btn-dark{--bg:var(--charcoal);--fg:var(--ivory)}
.btn-dark:hover{--bg:#33302C}
.btn-dark:disabled{opacity:.3;cursor:not-allowed}
.btn-outline{--bd:var(--line-2);--fg:var(--ink)}
.btn-outline:hover{--bd:var(--ink);--bg:rgba(34,32,30,.04)}
.btn-outline[aria-pressed=true]{--bd:var(--red);--fg:var(--red);--bg:rgba(176,48,40,.05)}
.btn-glass{--bd:var(--line-light-2);--fg:var(--ivory);--bg:rgba(246,243,237,.04)}
.btn-glass:hover{--bd:var(--ivory);--bg:rgba(246,243,237,.1)}
.btn-sm{min-height:46px;padding:0 20px;font-size:14px}
.text-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 2px;background:none;border:0;font-weight:700;font-size:15px;color:var(--ink-2);transition:color var(--fast)}
.text-btn:hover{color:var(--red)}
.link-arrow{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:700;font-size:15px;text-decoration:none;color:var(--red);background:linear-gradient(currentColor,currentColor) 0 calc(100% - 9px)/0 1px no-repeat;transition:color var(--fast),background-size .35s var(--ease)}
.link-arrow:hover{background-size:calc(100% - 30px) 1px}
.link-arrow .ic{width:17px;height:17px;transition:transform .3s var(--ease)}
.link-arrow:hover .ic{transform:translateX(3px)}
.dark .link-arrow{color:var(--ember-l)}
.icon-btn{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line);background:none;border-radius:50%;transition:border-color var(--fast)}
.icon-btn .ic{width:22px;height:22px}
.icon-btn:hover{border-color:var(--ink)}


:root{--hh:116px;--tb:0px}
@media(min-width:768px){:root{--tb:38px}}
body{padding-top:calc(var(--hh) + var(--tb))}

.topbar{height:var(--tb);overflow:hidden;background:var(--charcoal);color:rgba(246,243,237,.72);font-size:13px;transition:height .35s var(--ease)}
.is-scrolled .topbar{height:0}
.topbar-inner{height:38px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.tb-info{display:flex;align-items:center;gap:28px;min-width:0;margin:0}
.tb-info a,.tb-social a{display:inline-flex;align-items:center;gap:8px;min-height:38px;color:inherit;text-decoration:none;white-space:nowrap;transition:color .2s var(--ease)}
.tb-info a:hover,.tb-social a:hover{color:var(--ivory)}
.tb-info .ic{width:15px;height:15px;color:var(--ember-l)}
.tb-right{display:flex;align-items:center;gap:20px}
.tb-note{margin:0;white-space:nowrap;color:rgba(246,243,237,.55)}
.tb-social{display:flex;gap:2px;padding-left:16px;border-left:1px solid var(--line-light)}
.tb-social a{width:38px;justify-content:center}
.tb-social svg{width:14px;height:14px;fill:currentColor}
@media(max-width:767px){.topbar{display:none}}
@media(max-width:1099px){.tb-note{display:none}}
@media(max-width:899px){.tb-mail span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}}
.site-header{position:fixed;top:0;left:0;right:0;z-index:60;background:var(--ivory);border-bottom:1px solid var(--line);transition:background-color .3s var(--ease),box-shadow .3s var(--ease)}
.site-header.is-scrolled{box-shadow:0 14px 28px -22px rgba(25,24,23,.22)}
.header-inner{height:var(--hh);display:flex;align-items:center;gap:24px;transition:height .35s var(--ease)}
.is-scrolled .header-inner{height:var(--header)}
.brand{flex:none;justify-self:start;display:block;height:102px;transition:height .35s var(--ease)}
.brand img{height:100%;width:auto}
.is-scrolled .brand{height:66px}
.nav{display:none}
.nav ul{display:flex;gap:clamp(20px,1.8vw,30px);list-style:none;margin:0;padding:0}
.nav a{position:relative;display:flex;align-items:center;min-height:44px;font-size:15px;font-weight:500;letter-spacing:.005em;text-decoration:none;color:var(--ink-2);white-space:nowrap;transition:color .2s var(--ease)}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:1.5px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav a:hover,.nav a.is-active{color:var(--ink)}
.nav a:hover::after,.nav a.is-active::after{transform:scaleX(1)}
.header-actions{margin-left:auto;display:flex;align-items:center;gap:14px}
.header-tel{display:none;align-items:center;gap:10px;min-height:44px;min-width:44px;text-decoration:none;color:var(--ink)}
.tel-ic{flex:none;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line-2);border-radius:50%;color:var(--red);transition:background-color .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease)}
.tel-ic .ic{width:17px;height:17px}
.header-tel:hover .tel-ic{background:var(--red);border-color:var(--red);color:#fff}
.tel-txt{display:none;gap:5px;line-height:1}
.tel-lbl{white-space:nowrap;font:700 10.5px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.tel-num{font:640 17px/1 var(--head);letter-spacing:0;font-variant-numeric:tabular-nums;transition:color .25s var(--ease)}
.header-tel:hover .tel-num{color:var(--red)}
.shortlist-pill{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 14px;border:1px solid var(--line-2);border-radius:40px;text-decoration:none;font-size:14px;font-weight:600;transition:border-color .2s}
.shortlist-pill .ic{width:17px;height:17px}
.shortlist-pill:hover{border-color:var(--red)}
.shortlist-pill b{min-width:22px;height:22px;display:grid;place-items:center;border-radius:20px;background:var(--red);color:#fff;font-size:12px}
.header-cta{position:relative;display:none;align-items:stretch;height:48px;border-radius:var(--r);background:var(--red);color:#fff;text-decoration:none;font:700 14.5px/1 var(--body);letter-spacing:.02em;white-space:nowrap;transition:background-color .25s var(--ease)}
.hc-txt{display:flex;align-items:center;padding:0 18px 0 22px}
.hc-arr{display:grid;place-items:center;width:44px;border-left:1px solid rgba(255,255,255,.24);overflow:hidden}
.hc-arr .ic{width:17px;height:17px;transition:transform .35s var(--ease)}
.header-cta:hover{background:var(--red-d)}
.header-cta:hover .hc-arr .ic{transform:translateX(3px)}
.menu-toggle{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line-2);border-radius:50%;background:none;transition:border-color .2s,background-color .2s}
.menu-toggle:hover{border-color:var(--ink)}
.burger{display:grid;gap:6px;width:18px}
.burger span{display:block;height:1.5px;background:currentColor;transition:transform .3s var(--ease)}
.menu-toggle:hover .burger span:last-child{transform:scaleX(.6);transform-origin:right}
@media(min-width:640px){.header-cta{display:inline-flex}}
@media(min-width:768px){.header-tel{display:inline-flex}.tel-txt{display:grid}}

@media(min-width:1200px){
  .header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto}
  .nav{display:block;justify-self:center}
  .menu-toggle{display:none}
  .header-actions{margin:0}
}
@media(min-width:1200px){.tel-txt{display:none}}
@media(min-width:1400px){.tel-txt{display:grid}.header-tel{padding-right:20px;margin-right:6px;border-right:1px solid var(--line)}}
@media(max-width:639px){:root{--hh:84px;--header:84px}.shortlist-pill span{display:none}.brand,.is-scrolled .brand{height:70px}.is-scrolled .header-inner{height:var(--hh)}}


.drawer{position:fixed;inset:0;z-index:90;background:rgba(18,17,16,.5);display:flex;justify-content:flex-end;opacity:0;transition:opacity .3s var(--ease)}
.drawer.is-open{opacity:1}
.drawer-panel{width:min(420px,100%);height:100%;background:var(--ivory);display:flex;flex-direction:column;padding:0 var(--inset) calc(24px + env(safe-area-inset-bottom));transform:translateX(32px);transition:transform .45s var(--ease);overflow-y:auto;box-shadow:-30px 0 60px -40px rgba(0,0,0,.5)}
.drawer.is-open .drawer-panel{transform:none}
.drawer-top{display:flex;justify-content:space-between;align-items:center;min-height:var(--hh);margin-bottom:12px;border-bottom:1px solid var(--line)}
.drawer-logo{height:60px;width:auto}
.drawer-links{list-style:none;margin:0;padding:0}
.drawer-links li{opacity:0;transform:translateX(14px);transition:opacity .4s var(--ease),transform .4s var(--ease);transition-delay:calc(var(--i,0) * 40ms + 80ms)}
.drawer.is-open .drawer-links li{opacity:1;transform:none}
.drawer-links a{display:flex;align-items:center;gap:16px;min-height:56px;border-bottom:1px solid var(--line);font:600 22px/1.15 var(--head);letter-spacing:-.02em;text-decoration:none;transition:color .2s,padding .3s var(--ease)}
.drawer-links a span{width:22px;font:700 12px/1 var(--body);letter-spacing:.08em;color:var(--red)}
.drawer-links a:hover,.drawer-links a:focus-visible{color:var(--red);padding-left:4px}
.drawer-foot{margin-top:auto;display:grid;gap:10px;padding-top:28px}
.drawer-addr{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:14px;color:var(--ink-2)}
.drawer-addr .ic{color:var(--red);width:16px;height:16px}


.sheen::before{content:"";position:absolute;top:-10%;bottom:-10%;left:-50%;width:40%;z-index:2;pointer-events:none;background:linear-gradient(100deg,rgba(255,248,236,0),rgba(255,248,236,.26) 50%,rgba(255,248,236,0));transform:translateX(0) skewX(-14deg);opacity:0}
.sheen.is-pass::before{animation:sheen .9s var(--ease-io) both}
@keyframes sheen{0%{opacity:0;transform:translateX(0) skewX(-14deg)}12%{opacity:1}100%{opacity:0;transform:translateX(400%) skewX(-14deg)}}


.surf-plaster{background:var(--ivory)}
.surf-plaster::before,.surf-stone::before,.surf-grain::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:var(--grain);opacity:.22}
.surf-plaster::after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(70% 60% at 80% 0%,rgba(255,255,255,.7),rgba(255,255,255,0) 70%)}
.surf-stone{background:#E7E0D4;overflow:hidden}
.surf-stone::before{opacity:.5}

.surf-stone::after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:
  repeating-linear-gradient(112deg,rgba(255,255,255,0) 0 160px,rgba(255,252,246,.34) 160px 260px,rgba(255,255,255,0) 260px 420px),
  radial-gradient(80% 90% at 100% 0%,rgba(255,252,246,.55),rgba(255,252,246,0) 70%),
  radial-gradient(70% 80% at 0% 100%,rgba(110,90,70,.12),rgba(110,90,70,0) 70%);
  -webkit-mask-image:radial-gradient(90% 100% at 90% 10%,#000 30%,transparent 85%);mask-image:radial-gradient(90% 100% at 90% 10%,#000 30%,transparent 85%)}
.surf-grain{background:#EFEAE2}
.surf-grain::before{opacity:.42}

.surf-lines{background:var(--white)}
.surf-lines::before{content:"";position:absolute;inset:0 var(--inset);z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/calc((100% + var(--gap)) / 4) 100%;opacity:.55;-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent)}
@media(max-width:899px){.surf-lines::before{display:none}}

.hero{position:relative;background:var(--night);color:var(--ivory);overflow:hidden;isolation:isolate;--accent-h:#EC7A53}
.hero-slides{display:grid}
.slide{grid-area:1/1;position:relative;display:flex;align-items:flex-end;min-height:clamp(500px,calc(100svh - var(--hh) - var(--tb) - 170px),600px);visibility:hidden}
@media(min-width:768px){.slide{min-height:clamp(520px,calc(100svh - var(--hh) - var(--tb) - 200px),620px)}}
.slide.is-on{visibility:visible;z-index:2}
.slide.is-out{visibility:visible;z-index:1}
.slide-media{position:absolute;inset:0;overflow:hidden;background:var(--night)}
.slide-media picture,.slide-media img{position:absolute;inset:0;width:100%;height:100%}
.slide-media img{object-fit:cover;object-position:50% 40%;transform:scale(1.05)}
.slide.is-on .slide-media img{transform:none;transition:transform 9s cubic-bezier(.2,.6,.3,1)}
.slide.is-out .slide-media img{transform:none}

.slide-media::after{content:"";position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(18,17,16,.28) 0%,rgba(18,17,16,.2) 18%,rgba(18,17,16,.74) 50%,rgba(18,17,16,.94) 100%)}
@media(min-width:768px){
  
  .slide-media::after{background:
    radial-gradient(120% 95% at 0% 70%,rgba(18,17,16,.9) 0%,rgba(18,17,16,.72) 32%,rgba(18,17,16,.2) 62%,rgba(18,17,16,0) 80%),
    linear-gradient(0deg,rgba(18,17,16,.78) 0%,rgba(18,17,16,.3) 18%,rgba(18,17,16,0) 34%),
    linear-gradient(180deg,rgba(18,17,16,.32) 0%,rgba(18,17,16,0) 16%)}
}
@media(min-width:1024px){
  
  .slide-media{left:auto;width:min(44%,820px)}
  .slide-media::after{background:
    linear-gradient(90deg,var(--night) 0%,rgba(18,17,16,.55) 9%,rgba(18,17,16,0) 26%),
    linear-gradient(0deg,rgba(18,17,16,.7) 0%,rgba(18,17,16,0) 22%)}
}
@media(min-width:1024px) and (max-width:1279px){.slide-media{width:42%}}

@media(min-width:1024px){.slide-media::before{content:"";position:absolute;z-index:2;left:0;top:22%;width:2px;height:30%;background:var(--accent-h)}}


.slide-inner{position:relative;z-index:2;width:100%;padding-top:40px;padding-bottom:96px}
@media(min-width:768px){.slide-inner{padding-top:clamp(48px,7vh,80px);padding-bottom:118px}}
.slide-copy{max-width:680px;min-width:0}
.slide-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:20px;font:700 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;color:rgba(246,243,237,.82)}
.slide-kicker::before{content:"";width:28px;height:2px;background:var(--accent-h);margin-right:6px}
.slide-kicker span{opacity:.45}
.hero h1,.slide-title{font-size:clamp(40px,4.5vw,68px);line-height:1.02;letter-spacing:-.036em;font-weight:640;font-family:var(--head);margin:0}
.hero h1 span,.slide-title span{display:block;margin-top:.04em;color:var(--accent-h)}
.slide-lede{margin-top:20px;font-size:clamp(16px,1.15vw,18px);line-height:1.6;color:rgba(246,243,237,.86);max-width:50ch;text-wrap:pretty}
.slide-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.slide-actions .btn{min-height:52px}
.btn-veil{--bd:rgba(246,243,237,.42);--fg:var(--ivory);--bg:rgba(18,17,16,.28)}
@supports(backdrop-filter:blur(1px)){.btn-veil{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}}
.btn-veil:hover{--bg:var(--ivory);--fg:var(--charcoal);--bd:var(--ivory)}
@media(max-width:599px){.slide-actions .btn{flex:1 1 100%}}
@media(min-width:1024px){.slide-copy{max-width:min(680px,50vw)}}


.hero.is-anim .slide.is-on .s-line{animation:rise .6s var(--ease) both;animation-delay:calc(var(--sd,0) * 70ms + 180ms)}
.slide.is-out .s-line{animation:fadeOut .25s var(--ease) both}
.s-line:nth-child(2){--sd:1}.s-line:nth-child(3){--sd:2}.s-line:nth-child(4){--sd:3}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes fadeOut{to{opacity:0;transform:translateY(-6px)}}


.hero-ui{position:absolute;left:0;right:0;bottom:0;z-index:5;pointer-events:none}
.hero-ui-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:22px}
@media(min-width:768px){.hero-ui-inner{padding-bottom:30px}}
.hero-ui button{pointer-events:auto}
.chapters{display:flex;gap:8px;flex:1;max-width:540px}
.chapter{flex:1;display:grid;gap:9px;min-height:44px;align-content:center;padding:6px 0;border:0;background:none;color:rgba(246,243,237,.6);text-align:left;transition:color .3s var(--ease)}
.chapter:hover,.chapter.is-on{color:var(--ivory)}
.chapter-bar{position:relative;display:block;height:2px;background:rgba(246,243,237,.18);overflow:hidden;order:2}
.chapter-bar span{position:absolute;inset:0;background:var(--accent-h);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.chapter:not(.is-on):hover .chapter-bar span{transform:scaleX(.14)}
.chapter.is-on .chapter-bar span{transform:scaleX(1)}
.hero.is-auto:not(.is-paused) .chapter.is-on .chapter-bar span{animation:prog var(--dur,10s) linear both}
.hero.is-auto.is-paused .chapter.is-on .chapter-bar span{animation:prog var(--dur,10s) linear both;animation-play-state:paused}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.chapter-label{display:none;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.chapter-label b{font-weight:700;margin-right:10px;font-variant-numeric:tabular-nums}
.chapter.is-on .chapter-label b{color:var(--accent-h);opacity:1}
@media(min-width:900px){.chapters{gap:clamp(18px,1.8vw,28px)}.chapter-label{display:block}}
.hero-ctrls{display:flex;align-items:center;gap:4px;flex:none}
.hc-btn{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(246,243,237,.28);border-radius:50%;background:rgba(18,17,16,.24);color:var(--ivory);transition:background-color .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease)}
.hc-btn .ic{width:17px;height:17px}
.hc-btn:hover{background:rgba(246,243,237,.14);border-color:rgba(246,243,237,.7)}
.hc-btn:active{transform:scale(.94)}
.hc-toggle{border-color:transparent;background:none}
.hc-toggle .ic-play{display:none}
.hero.is-stopped .hc-toggle .ic-play,.hero.is-paused-user .hc-toggle .ic-play{display:block}
.hero.is-stopped .hc-toggle .ic-pause,.hero.is-paused-user .hc-toggle .ic-pause{display:none}
.hero-count{display:flex;align-items:baseline;gap:5px;min-width:56px;justify-content:center;font:600 13px/1 var(--head);letter-spacing:.04em;color:rgba(246,243,237,.5);font-variant-numeric:tabular-nums}
.hero-count b{font-weight:640;color:var(--ivory);font-size:14px}
@media(max-width:767px){.hero-count{min-width:46px}}


.hero.is-anim .slide.is-on .slide-media{animation:heroFade .9s var(--ease) both}
@keyframes heroFade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:no-preference){
  .hero.is-anim .slide.is-on .slide-media{animation:heroIn 1.1s var(--ease) both}
  .hero.is-anim[data-dir="prev"] .slide.is-on .slide-media{animation-name:heroInPrev}
  .hero.is-anim .slide.is-out .slide-media{animation:heroOut 1.1s var(--ease) both}
  .hero.is-anim[data-dir="prev"] .slide.is-out .slide-media{animation-name:heroOutPrev}
  .hero.is-anim .slide.is-on .slide-kicker::before{animation:heroRule .6s var(--ease-io) .1s both;transform-origin:left}
  
  @supports (animation-timeline: view()){
    @media(min-width:900px){
      .hero .slide-media{animation:heroDepth linear both;animation-timeline:view();animation-range:exit}
      .hero.is-anim .slide.is-on .slide-media,.hero.is-anim .slide.is-out .slide-media{animation-timeline:auto;animation-range:normal}
    }
  }
}
@keyframes heroIn{from{opacity:0;transform:translate3d(2.5%,0,0) scale(1.04)}to{opacity:1;transform:none}}
@keyframes heroInPrev{from{opacity:0;transform:translate3d(-2.5%,0,0) scale(1.04)}to{opacity:1;transform:none}}
@keyframes heroOut{from{transform:none}to{transform:translate3d(-1.5%,0,0)}}
@keyframes heroOutPrev{from{transform:none}to{transform:translate3d(1.5%,0,0)}}
@keyframes heroRule{from{transform:scaleX(0)}to{transform:none}}
@keyframes heroDepth{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,14%,0)}}

.bespoke-grid,.studio-main,.showroom-grid,.faq-grid,.enquiry-grid,.finder-shell,.finder-launch,.steps,.explorer{grid-template-columns:minmax(0,1fr)}


.routes{display:grid;gap:var(--gap)}
.route{position:relative;display:flex;flex-direction:column;min-width:0;text-decoration:none;color:var(--ink)}
.route-media{position:relative;display:block;overflow:hidden;border-radius:var(--r);background:var(--stone);aspect-ratio:4/3}
.route-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.03);transition:transform 1.1s var(--ease),filter .5s var(--ease)}
.route:hover .route-img,.route:focus-visible .route-img{transform:scale(1.04);filter:saturate(1) contrast(1.03)}

.route-body{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto 1fr;column-gap:16px;row-gap:8px;padding:20px 0 18px;border-bottom:1px solid var(--line-2)}
.route-body::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.route:hover .route-body::after,.route:focus-visible .route-body::after{transform:scaleX(1)}
.route-num{grid-row:1;font:700 12px/1 var(--body);letter-spacing:.1em;color:var(--red);padding-top:.5em}
.route-title{grid-column:2;grid-row:1;font:640 clamp(20px,1.6vw,26px)/1.15 var(--head);letter-spacing:-.025em}
.route-text{grid-column:2;grid-row:2;font-size:15px;line-height:1.5;color:var(--ink-2);max-width:40ch}
.route-arrow{grid-column:3;grid-row:1/span 2;align-self:start;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line-2);border-radius:50%;transition:background-color .3s var(--ease),border-color .3s var(--ease),color .3s var(--ease)}
.route-arrow .ic{width:18px;height:18px;transition:transform .35s var(--ease)}
.route:hover .route-arrow,.route:focus-visible .route-arrow{background:var(--red);border-color:var(--red);color:#fff}
.route:hover .route-arrow .ic,.route:focus-visible .route-arrow .ic{transform:translateX(3px)}
.route:focus-visible{outline-offset:6px}
@media(min-width:1024px){
  .rt{display:block}
  .route-title{min-height:2.3em}
}

@media(max-width:767px){
  .routes{grid-auto-flow:column;grid-auto-columns:84%;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;margin-inline:calc(var(--inset) * -1);padding:0 var(--inset) 6px;scroll-padding-inline:var(--inset);scrollbar-width:none}
  .routes::-webkit-scrollbar{display:none}
  .route{scroll-snap-align:start}
}
@media(min-width:768px){.routes{grid-template-columns:repeat(2,minmax(0,1fr))}.route-lead{grid-column:1/-1}.route-lead .route-media{aspect-ratio:2/1}}
@media(min-width:1024px){.routes{grid-template-columns:repeat(3,minmax(0,1fr))}.route-lead{grid-column:auto}.route-lead .route-media{aspect-ratio:4/3}}


.finder{margin-top:clamp(24px,2.4vw,36px)}
.finder-launch{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px 18px;align-items:center;padding:16px clamp(16px,2vw,24px);border-radius:var(--r);background:rgba(34,32,30,.045)}
@media(min-width:768px){.finder-launch{grid-template-columns:auto minmax(0,1fr) auto}}
.fl-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);color:var(--red)}
.fl-mark .ic{width:20px;height:20px}
.fl-title{font-size:clamp(18px,1.3vw,21px);letter-spacing:-.015em}
.fl-text{margin-top:2px;font-size:15px;line-height:1.5;color:var(--ink-2)}
@media(max-width:767px){.fl-btn{grid-column:1/-1;width:100%}}
.fl-btn .ic{transition:transform .35s var(--ease)}
.fl-btn[aria-expanded=true] .ic{transform:rotate(180deg)}
.fl-btn:hover .ic{transform:translateY(2px)}
.fl-btn[aria-expanded=true]:hover .ic{transform:rotate(180deg) translateY(2px)}
.finder-tool{margin-top:10px;animation:toolIn .5s var(--ease)}
@keyframes toolIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.finder-shell{display:grid;background:var(--white);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
@media(min-width:1024px){.finder-shell{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}}
.finder-visual{position:relative;background:var(--charcoal);min-height:0}
.finder-frame{position:relative;aspect-ratio:16/9;overflow:hidden}
@media(min-width:1024px){.finder-frame{position:absolute;inset:0;aspect-ratio:auto}}
.finder-caption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:40px 20px 14px;font-size:14px;font-weight:600;color:rgba(246,243,237,.9);background:linear-gradient(0deg,rgba(18,17,16,.82),transparent)}
.finder-panel{padding:clamp(20px,2.6vw,40px);display:flex;flex-direction:column}
.finder-ind{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.finder-ind button{width:100%;display:grid;gap:8px;min-height:44px;padding:0 0 4px;border:0;background:none;text-align:left;color:var(--ink-3);cursor:default}
.fi-bar{display:block;height:3px;border-radius:3px;background:var(--line);position:relative;overflow:hidden}
.fi-bar::after{content:"";position:absolute;inset:0;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.fi-name{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:color .2s}
.fi-val{font-size:13px;font-weight:600;color:var(--ink-2);min-height:1.3em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.finder-ind li.is-on .fi-name,.finder-ind li.is-done .fi-name{color:var(--ink)}
.finder-ind li.is-on .fi-bar::after,.finder-ind li.is-done .fi-bar::after{transform:scaleX(1)}
.finder-ind button:not(:disabled){cursor:pointer}
.finder-ind button:not(:disabled):hover .fi-name{color:var(--red)}
.finder-step-label{margin-top:8px;font-size:14px;color:var(--ink-2)}
.finder-form{margin-top:16px;display:flex;flex-direction:column;flex:1}
.finder-step{border:0;margin:0;padding:0;min-width:0}
.finder-step.is-active{animation:stepIn .4s var(--ease)}
@keyframes stepIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
.finder-step legend{font:640 clamp(21px,1.7vw,27px)/1.2 var(--head);letter-spacing:-.025em;padding:0;margin-bottom:16px}
.choice-list{display:grid;gap:10px}
@media(min-width:560px){.choice-list{grid-template-columns:1fr 1fr}}
.choice{display:block;position:relative;cursor:pointer}
.choice input{position:absolute;opacity:0;pointer-events:none}
.choice-row{position:relative;display:grid;gap:3px;min-height:74px;padding:14px 48px 14px 18px;border:1px solid var(--line-2);border-radius:var(--r);background:var(--white);transition:border-color .2s,background-color .2s,box-shadow .2s}
.choice-row::after{content:"";position:absolute;right:16px;top:16px;width:20px;height:20px;border:1.5px solid var(--line-2);border-radius:50%;transition:border .25s var(--ease),background-color .25s}
.choice-name{font-weight:700;font-size:16px;line-height:1.3}
.choice-note{font-size:14px;line-height:1.45;color:var(--ink-2)}
.choice:hover .choice-row{border-color:var(--ink)}
.choice input:checked+.choice-row{border-color:var(--red);background:#FBF3F0;box-shadow:inset 0 0 0 1px var(--red)}
.choice input:checked+.choice-row::after{border:6px solid var(--red)}
.choice input:focus-visible+.choice-row{outline:2px solid var(--ember);outline-offset:2px}
.finder-nav{margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.finder-nav [data-finder-next]{margin-left:auto}
.finder-result{animation:stepIn .4s var(--ease);outline:none}
.finder-result-eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.finder-result-title{margin-top:8px;font-size:clamp(26px,2.2vw,36px);letter-spacing:-.03em}
.finder-result-tags{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}
.finder-result-tags span{font-size:13px;font-weight:700;padding:6px 12px;border-radius:30px;background:var(--stone);color:var(--ink)}
.finder-result-text{margin-top:14px;color:var(--ink-2);max-width:60ch}
.finder-note{margin-top:12px;font-size:14px;color:var(--ink-2);padding-left:14px;border-left:2px solid var(--stone-2);max-width:62ch}
.finder-result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.finder-result-links{display:flex;flex-wrap:wrap;gap:4px 22px;margin-top:8px}
.text-btn .ic{width:17px;height:17px}


.finder-frame img,.style-frame img,.style-inset img,.explorer-frame img,.studio-frame img,.sg-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity .5s var(--ease),transform 1.1s var(--ease)}
.finder-frame img.is-on,.style-frame img.is-on,.style-inset img.is-on,.explorer-frame img.is-on,.studio-frame img.is-on,.sg-frame img.is-on{opacity:1;transform:none}


.bespoke-grid{position:relative;display:grid;gap:clamp(36px,5vw,64px);align-items:center}
@media(min-width:1024px){.bespoke-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(64px,6.5vw,120px)}}
.bespoke-copy h2{margin-bottom:16px}
.style-block{margin-top:24px;padding-top:22px;border-top:1px solid var(--line-2)}
.style-switch{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:40px;background:rgba(252,250,247,.8);box-shadow:inset 0 0 0 1px var(--line)}
.style-switch button{position:relative;z-index:1;min-height:44px;padding:0 24px;border:0;background:none;border-radius:40px;font-weight:700;font-size:15px;color:var(--ink-2);transition:color .3s}
.style-switch button.is-on{color:var(--ivory)}
.style-switch-ind{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:var(--charcoal);border-radius:40px;transition:transform .4s var(--ease)}
.style-switch[data-on=contemporary] .style-switch-ind{transform:translateX(100%)}
.style-text{margin-top:14px;color:var(--ink-2);max-width:50ch;min-height:3.2em;transition:opacity .25s}
.spec-line{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px;font-weight:600;color:var(--ink)}
.spec-line li{display:flex;align-items:center;gap:9px}
.spec-line li::before{content:"";width:5px;height:5px;background:var(--red)}
.bespoke-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:28px}
.bespoke-media{position:relative;margin:0;min-width:0}
.style-stage{position:relative}
.style-frame{position:relative;aspect-ratio:3/2;overflow:hidden;border-radius:var(--r);background:var(--stone-2);--curtain:#E7E0D4}
.style-inset{position:absolute;right:12px;bottom:12px;width:30%;aspect-ratio:4/5;overflow:hidden;border-radius:var(--r);background:var(--stone-2);box-shadow:0 0 0 clamp(5px,.6vw,9px) #E7E0D4,0 26px 50px -28px rgba(25,24,23,.55)}
@media(min-width:1024px){.style-inset{right:auto;left:calc(clamp(36px,4vw,76px) * -1);bottom:clamp(28px,3vw,48px);width:25%}}
.style-caption{margin-top:12px;font-size:14px;color:var(--ink-2)}
@media(min-width:1024px){.style-caption{text-align:right;padding-left:30%}}


.fires{background:var(--charcoal);overflow:hidden}
.explorer{display:grid;gap:clamp(28px,3vw,48px)}
@media(min-width:1024px){.explorer{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:stretch;gap:clamp(40px,4.4vw,80px)}}
.explorer-media{margin:0;display:flex;flex-direction:column;min-width:0}
.explorer-frame{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--r);background:var(--charcoal-2)}
@media(min-width:1024px){.explorer-frame{aspect-ratio:auto;flex:1;min-height:420px}}
.explorer-frame::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(246,243,237,.06);background:linear-gradient(0deg,rgba(18,17,16,.25),rgba(18,17,16,0) 30%)}
.explorer-caption{margin-top:12px;font-size:14px;color:rgba(246,243,237,.6)}
.explorer-side{display:flex;flex-direction:column;min-width:0}
.explorer-head{margin-bottom:clamp(20px,2vw,28px)}
.explorer-head h2{font-size:clamp(34px,3.2vw,50px)}
.explorer-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.explorer-tabs button{position:relative;display:flex;align-items:center;gap:12px;min-height:56px;padding:10px 12px;border:1px solid var(--line-light);border-radius:var(--r);background:none;text-align:left;color:rgba(246,243,237,.66);font:600 15px/1.2 var(--head);letter-spacing:-.01em;transition:color .25s var(--ease),background-color .25s var(--ease),border-color .25s var(--ease),padding .35s var(--ease)}
.explorer-tabs button:hover{color:var(--ivory)}
.explorer-tabs button.is-on{color:var(--ivory);border-color:var(--ember-l);background:rgba(246,243,237,.05)}
.tab-ind{display:none}
@media(min-width:1024px){
  .explorer-tabs{grid-template-columns:1fr;gap:0;border-top:1px solid var(--line-light)}
  .explorer-tabs button{min-height:58px;padding:12px 4px;border:0;border-bottom:1px solid var(--line-light);border-radius:0;font-size:clamp(18px,1.4vw,22px)}
  .explorer-tabs button.is-on{padding-left:18px;background:none}
  .tab-ind{display:block;position:absolute;left:0;top:0;z-index:1;width:2px;height:var(--h,58px);background:var(--ember-l);transform:translateY(var(--y,0));transition:transform .38s var(--ease),height .38s var(--ease)}
}
.t-num{font:700 12px/1 var(--body);letter-spacing:.08em;color:var(--ember-l)}
.t-name{flex:1}
.t-arrow{width:20px;height:20px;opacity:0;transform:translateX(-8px);transition:opacity .3s,transform .35s var(--ease)}
@media(min-width:1024px){.explorer-tabs button.is-on .t-arrow,.explorer-tabs button:hover .t-arrow{opacity:1;transform:none}}
@media(max-width:1023px){.t-arrow{display:none}.explorer{display:flex;flex-direction:column}.explorer-side{display:contents}.explorer-head{order:-2;margin-bottom:0}.explorer-tabs{order:-1}}
.explorer-panel{margin-top:clamp(18px,2vw,26px);outline:none}
.explorer-panel.is-swap>*{animation:stepIn .4s var(--ease) both}
.explorer-panel.is-swap>*:nth-child(3){animation-delay:40ms}.explorer-panel.is-swap>*:nth-child(4){animation-delay:80ms}.explorer-panel.is-swap>*:nth-child(5){animation-delay:120ms}
.explorer-panel>p{color:rgba(246,243,237,.76);max-width:52ch}
.ex-sub{margin-top:18px!important;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ember-l)!important}
.ex-list{list-style:none;margin:8px 0 24px;padding:0;display:grid;gap:0 22px}
@media(min-width:600px){.ex-list{grid-template-columns:1fr 1fr}}
.ex-list li{display:flex;gap:11px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line-light);font-size:15px;line-height:1.45;color:rgba(246,243,237,.86)}
.ex-list li::before{content:"";flex:none;width:5px;height:5px;margin-top:8px;background:var(--ember-l)}


.studio-main{display:grid;gap:clamp(28px,3.4vw,56px)}
@media(min-width:1024px){.studio-main{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(48px,5vw,96px)}}
@media(max-width:1023px){.studio-main{display:flex;flex-direction:column}.studio-info{display:contents}.studio-intro{order:-2}.studio-stage{order:-1}}
.studio-intro h2{margin-bottom:14px}
.mat-detail{margin-top:clamp(22px,2.4vw,30px);padding-top:20px;border-top:1px solid var(--line-2)}
@media(max-width:1023px){.mat-detail{margin-top:0}}
.mat-detail.is-swap>*{animation:stepIn .4s var(--ease) both}
.studio-type{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:8px}
.mat-detail h3{font-size:clamp(26px,2.1vw,34px);margin-bottom:10px}
.mat-detail>p{color:var(--ink-2);max-width:52ch}
.mat-facts{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.mat-facts li{font-size:13px;font-weight:700;padding:7px 12px;border-radius:30px;background:rgba(252,250,247,.8);box-shadow:inset 0 0 0 1px var(--line)}
.studio-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
@media(max-width:1023px){.studio-actions{margin-top:-8px}}
.studio-stage{min-width:0}
.studio-figure{margin:0}
.studio-frame{position:relative;aspect-ratio:3/2;overflow:hidden;border-radius:var(--r);background:var(--stone);--curtain:#EFEAE2}
.studio-figure figcaption{margin-top:10px;font-size:14px;color:var(--ink-2)}
.studio-swatches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}
.swatch{display:grid;gap:2px;min-width:0;padding:8px 8px 12px;border:1px solid var(--line);border-radius:var(--r);background:rgba(252,250,247,.66);text-align:left;transition:border-color .2s var(--ease),background-color .2s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
.swatch:hover{border-color:var(--ink-3);transform:translateY(-2px)}
.swatch.is-on{border-color:var(--ink);background:var(--white);box-shadow:inset 0 -3px 0 var(--red)}
.swatch-chip{display:block;height:clamp(44px,4.2vw,72px);margin-bottom:8px;border-radius:1px;background:center/cover;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);transition:filter .3s}
.swatch:not(.is-on) .swatch-chip{filter:saturate(.7) brightness(.96)}
.swatch-name{font:640 16px/1.2 var(--head);letter-spacing:-.01em;padding-inline:4px}
.swatch-type{font-size:12px;line-height:1.35;color:var(--ink-3);padding-inline:4px}

.inspiration{background:var(--night)}
.insp-head{display:grid;gap:20px;margin-bottom:clamp(24px,2.6vw,36px)}
@media(min-width:1024px){.insp-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--gap)}}
.insp-head .lede{margin-top:14px}
.filter-bar{display:flex;flex-wrap:wrap;gap:8px}
.filter-bar button{min-height:44px;padding:0 18px;border:1px solid var(--line-light);border-radius:40px;background:none;color:rgba(246,243,237,.74);font-weight:700;font-size:15px;transition:background-color .2s,color .2s,border-color .2s}
.filter-bar button span{opacity:.5;font-weight:600;margin-left:6px}
.filter-bar button:hover{border-color:var(--line-light-2);color:var(--ivory)}
.filter-bar button.is-on{background:var(--ivory);color:var(--charcoal);border-color:var(--ivory)}
.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;grid-auto-flow:dense}
.g-item{position:relative;overflow:hidden;border-radius:var(--r);background:var(--charcoal-2);aspect-ratio:4/5;animation:gIn .6s var(--ease) both;animation-delay:calc(var(--i,0) * 60ms)}
@keyframes gIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.g-item.is-big,.g-item.s12{grid-column:span 2;aspect-ratio:16/10}
@media(max-width:1023px){.g-item.m2,.g-item.s6{grid-column:span 2;aspect-ratio:16/10}}
@media(min-width:768px){.gallery{gap:12px}}
@media(min-width:768px) and (max-width:1023px){.g-item:not(.is-big):not(.s12):not(.s6):not(.m2){aspect-ratio:1}}
@media(min-width:1024px){
  .gallery{grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;grid-auto-rows:clamp(170px,13.4vw,270px)}
  .g-item{aspect-ratio:auto;grid-column:span 3}
  .g-item.is-big{grid-column:span 6;grid-row:span 2;aspect-ratio:auto}
  .g-item.is-big.is-right{grid-column:7/span 6}
  .g-item.is-tall{grid-row:span 2}
  .g-item.s4{grid-column:span 4}.g-item.s6{grid-column:span 6}.g-item.s12{grid-column:span 12;aspect-ratio:auto}
}
.g-open{position:absolute;inset:0;width:100%;border:0;padding:0;background:none;cursor:zoom-in}
.g-open img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),filter .5s var(--ease)}
.g-item:hover .g-open img{transform:scale(1.04);filter:brightness(.88)}
.g-tag{position:absolute;left:10px;bottom:10px;z-index:1;display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:var(--r);background:rgba(18,17,16,.72);color:var(--ivory);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;transition:background-color .3s var(--ease)}
.g-tag .ic{width:14px;height:14px;opacity:0;width:0;transition:opacity .3s var(--ease),width .3s var(--ease)}
.g-item:hover .g-tag,.g-open:focus-visible~.g-tag{background:var(--red)}
.g-item:hover .g-tag .ic,.g-open:focus-visible~.g-tag .ic{opacity:1;width:14px}
.save-btn{position:absolute;top:10px;right:10px;z-index:2;width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(246,243,237,.25);border-radius:50%;background:rgba(18,17,16,.5);color:var(--ivory);transition:background-color .2s,border-color .2s,transform .25s var(--ease)}
@supports(backdrop-filter:blur(1px)){.save-btn{backdrop-filter:blur(8px)}}
.save-btn .ic{width:19px;height:19px}
.save-btn:hover{background:rgba(18,17,16,.8);border-color:var(--ivory)}
.save-btn[aria-pressed=true]{background:var(--red);border-color:var(--red)}
.save-btn.is-pop{animation:pop .4s var(--ease)}
@keyframes pop{50%{transform:scale(1.16)}}
.gallery-more{display:flex;justify-content:center;margin-top:24px}


.lightbox{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:rgba(12,11,10,.97);color:var(--ivory)}
.lightbox::backdrop{background:rgba(12,11,10,.8)}
.lightbox[open]{animation:lbIn .3s var(--ease)}
@keyframes lbIn{from{opacity:0}to{opacity:1}}
.lb-inner{position:relative;height:100%;display:grid;grid-template-rows:auto 1fr;padding:16px var(--inset) 24px}
.lb-top{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:56px}
.lb-count{font:600 14px/1 var(--head);letter-spacing:.06em;color:rgba(246,243,237,.6);font-variant-numeric:tabular-nums}
.lb-top-actions{display:flex;gap:10px;align-items:center}
.lb-figure{margin:0;display:grid;justify-items:center;align-content:center;gap:16px;min-height:0;padding:12px 0 72px}
@media(min-width:768px){.lb-figure{padding:12px 80px 24px}}
.lb-figure img{max-width:100%;max-height:calc(100svh - 190px);width:auto;height:auto;object-fit:contain;border-radius:var(--r);transition:opacity .35s var(--ease),transform .45s var(--ease)}
.lb-figure img.is-loading{opacity:.35;transform:scale(.99)}
.lb-figure figcaption{font-size:15px;color:rgba(246,243,237,.8);text-align:center}
.lb-btn{width:52px;height:52px;display:grid;place-items:center;border:1px solid var(--line-light-2);border-radius:50%;background:rgba(25,24,23,.6);color:var(--ivory);transition:background-color .2s,border-color .2s,transform .2s var(--ease)}
.lb-btn .ic{width:22px;height:22px}
.lb-btn:hover{background:rgba(246,243,237,.12);border-color:var(--ivory)}
.lb-btn:active{transform:scale(.94)}
.lb-prev,.lb-next{position:absolute;top:50%;margin-top:-26px}
.lb-prev{left:var(--inset)}.lb-next{right:var(--inset)}
.lb-save{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;border:1px solid var(--line-light-2);border-radius:40px;background:none;color:var(--ivory);font-weight:700;font-size:14px;transition:background-color .2s,border-color .2s}
.lb-save .ic{width:18px;height:18px}
.lb-save:hover{border-color:var(--ivory)}
.lb-save[aria-pressed=true]{background:var(--red);border-color:var(--red)}
@media(max-width:767px){.lb-prev,.lb-next{top:auto;bottom:24px;margin-top:0}}
::view-transition-group(lb-photo){animation-duration:.45s;animation-timing-function:cubic-bezier(.22,.7,.18,1)}


.process .sec-head{margin-bottom:clamp(28px,3vw,44px)}
.process h2{font-size:clamp(30px,2.9vw,46px)}
@media(min-width:1024px){.process .sec-split{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}
.steps{--mk:46px;--cg:14px;list-style:none;margin:0;padding:0;display:grid}
.step{position:relative;display:grid;grid-template-columns:var(--mk) minmax(0,1fr);column-gap:18px;align-content:start;padding-bottom:28px}
.step>*:not(.step-num){grid-column:2}
.step-num{grid-row:1/span 4;position:relative;z-index:1;width:var(--mk);height:var(--mk);display:grid;place-items:center;border:1.5px solid var(--ink-3);border-radius:50%;background:var(--white);font:600 15px/1 var(--head);letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--red);border-color:var(--red)}

.step:not(:last-child)::before,.step:not(:last-child)::after{content:"";position:absolute;left:calc(var(--mk) / 2 - .5px);top:calc(var(--mk) + var(--cg));bottom:var(--cg);width:1px;background:var(--line-2)}
.step:not(:last-child)::after{background:var(--red);opacity:.55}
.step:last-child{padding-bottom:0}
.step h3{font-size:clamp(19px,1.4vw,22px);line-height:1.25;letter-spacing:-.02em;margin:11px 0 6px}
.step>p{color:var(--ink-2);font-size:15.5px;line-height:1.55;max-width:34ch}
@media(min-width:900px){
  
  .steps{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto auto auto auto auto;column-gap:var(--gap)}
  .step{grid-row:span 5;grid-template-rows:subgrid;grid-template-columns:minmax(0,1fr);padding:0}
  .step>*:not(.step-num){grid-column:1}
  .step-num{grid-row:auto;margin-bottom:20px}
  .step h3{margin:0 0 8px}
  
  .step:not(:last-child)::before,.step:not(:last-child)::after{top:calc(var(--mk) / 2 - .5px);bottom:auto;left:calc(var(--mk) + var(--cg));right:calc(var(--cg) - var(--gap));width:auto;height:1px}
}
.step-more{justify-self:start;display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:4px;padding:0;border:0;background:none;font-weight:700;font-size:14px;color:var(--red);transition:color .2s}
.step-more:hover{color:var(--red-d)}
.pm{position:relative;width:20px;height:20px;border:1px solid currentColor;border-radius:50%;transition:background-color .25s var(--ease)}
.pm::before,.pm::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:1.5px;margin:-.75px 0 0 -4px;background:currentColor;transition:transform .3s var(--ease)}
.pm::after{transform:rotate(90deg)}
.step-more[aria-expanded=true] .pm::after{transform:rotate(0)}
.step-more:hover .pm{background:rgba(176,48,40,.08)}
.step-detail{font-size:15px;line-height:1.55;color:var(--ink-2);padding:12px 14px;margin-top:6px;background:var(--ivory);border-left:2px solid var(--red);animation:stepIn .3s var(--ease);max-width:40ch}
.process-cta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:clamp(28px,3vw,40px);padding-top:20px;border-top:1px solid var(--line);font-size:15px;color:var(--ink-2)}


.reviews-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(32px,4vw,56px);align-items:center}
@media(min-width:1024px){.reviews-grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(48px,5vw,96px)}}
.reviews-copy{position:relative}

.reviews-mark{position:absolute;left:-.06em;top:-.42em;z-index:-1;font:700 clamp(150px,13vw,220px)/1 var(--head);color:var(--red);opacity:.1;pointer-events:none;user-select:none}
.reviews-copy h2{margin-bottom:16px}
.reviews-copy .lede{max-width:36ch}
.reviews-actions{margin-top:28px}
.reviews-source{display:flex;align-items:center;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line-2);font-size:13px;color:var(--ink-2);max-width:36ch}
.reviews-source svg{flex:none;width:15px;height:15px;fill:var(--ink-2)}
.reviews-panel{position:relative;min-width:0;padding:clamp(16px,2vw,28px);background:var(--white);border-radius:var(--r);box-shadow:0 1px 0 var(--line),0 28px 60px -34px rgba(45,35,25,.38)}

.reviews-panel::before{content:"";position:absolute;left:clamp(16px,2vw,28px);top:0;width:56px;height:2px;background:var(--red)}

.reviews-widget{position:relative;min-height:340px}
.reviews-widget.is-ready{min-height:0}
.reviews-fallback{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;color:var(--ink-2);font-size:15px}
.reviews-fallback a{color:var(--red);font-weight:700}
.reviews-fallback[hidden]{display:none}


.showroom-grid{display:grid;gap:28px;grid-template-areas:"head" "gallery" "details"}
@media(min-width:1024px){.showroom-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"gallery head" "gallery details";grid-template-rows:auto 1fr;column-gap:clamp(48px,5vw,96px);row-gap:28px;align-items:start}}
.showroom-head{grid-area:head;min-width:0}
.showroom-gallery{grid-area:gallery;display:grid;gap:10px;min-width:0}
.showroom-details{grid-area:details;min-width:0}
.showroom-head .lede{margin-top:14px}
.visit-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
@media(max-width:479px){.visit-actions .btn{flex:1 1 100%}}
.sg-main{margin:0;position:relative}
.sg-frame{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--r);background:var(--stone);--curtain:var(--ivory)}
@media(min-width:1024px){.sg-frame{aspect-ratio:auto;height:clamp(360px,31vw,540px)}}
.sg-main figcaption{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none}
.sg-main figcaption>span{padding:8px 12px;background:rgba(18,17,16,.74);color:var(--ivory);font-size:14px;font-weight:600;border-radius:var(--r)}
.sg-count{font:600 13px/1 var(--head)!important;letter-spacing:.06em;font-variant-numeric:tabular-nums;color:rgba(246,243,237,.7)!important}
.sg-count b{color:var(--ivory);font-weight:640}
.sg-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sg-thumbs button{position:relative;min-width:0;display:grid;gap:6px;padding:0;border:0;background:none;text-align:left;color:var(--ink-2);font-size:14px;font-weight:700;transition:color .2s}
.sg-thumbs button img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r);opacity:.55;transition:opacity .3s,filter .3s}
.sg-thumbs button span{display:flex;align-items:center;gap:8px;min-height:24px}
.sg-thumbs button span::before{content:"";width:0;height:2px;background:var(--red);transition:width .35s var(--ease)}
.sg-thumbs button:hover img{opacity:.9}
.sg-thumbs button.is-on{color:var(--ink)}
.sg-thumbs button.is-on img{opacity:1}
.sg-thumbs button.is-on span::before{width:18px}
.visit-card{display:grid;border-top:1px solid var(--line-2)}
@media(min-width:600px){.visit-card{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);column-gap:24px}}
.visit-row{display:grid;gap:4px;align-content:start;padding:16px 0;border-bottom:1px solid var(--line)}
.visit-label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.visit-addr{font-size:16px;font-weight:600;line-height:1.5;text-decoration:none;transition:color .2s}
.visit-tel{font:640 clamp(22px,1.8vw,28px)/1.15 var(--head);letter-spacing:-.02em;text-decoration:none;transition:color .2s}
.visit-addr:hover,.visit-tel:hover{color:var(--red)}
.visit-note{font-size:13px;line-height:1.45;color:var(--ink-2)}


.faq{background:var(--white);border-top:1px solid var(--line)}
.faq-grid{display:grid;gap:28px}
@media(min-width:1024px){.faq-grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(48px,5vw,96px)}}
.faq-intro h2{font-size:clamp(30px,2.6vw,42px)}
.faq-intro .lede{margin-top:14px;margin-bottom:8px;font-size:16px}
.accordion{border-top:1px solid var(--line-2)}
.accordion details{border-bottom:1px solid var(--line)}
.accordion summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:62px;padding:14px 0;cursor:pointer;font:620 clamp(17px,1.25vw,19px)/1.35 var(--head);letter-spacing:-.012em;transition:color .2s}
.accordion summary::-webkit-details-marker{display:none}
.accordion summary:hover{color:var(--red)}
.acc-ic{position:relative;flex:none;width:34px;height:34px;border:1px solid var(--line-2);border-radius:50%;transition:background-color .3s var(--ease),border-color .3s var(--ease),transform .35s var(--ease)}
.acc-ic::before,.acc-ic::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;background:currentColor;transition:transform .35s var(--ease)}
.acc-ic::after{transform:rotate(90deg)}
.accordion summary:hover .acc-ic{border-color:var(--red)}
.accordion details[open] .acc-ic{background:var(--charcoal);border-color:var(--charcoal);color:var(--ivory)}
.accordion details[open] .acc-ic::after{transform:rotate(0)}
.accordion details::details-content{block-size:0;overflow:hidden;opacity:0;transition:block-size .35s var(--ease),opacity .35s var(--ease),content-visibility .35s allow-discrete}
.accordion details[open]::details-content{block-size:auto;opacity:1}
.acc-body{padding:0 56px 20px 0;color:var(--ink-2);max-width:66ch}
.acc-body a{color:var(--red);font-weight:700}


.enquiry{position:relative;background:var(--charcoal);color:var(--ivory)}
.enquiry-grid{display:grid}
@media(min-width:1024px){.enquiry-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.enquiry-intro{position:relative;overflow:clip;isolation:isolate;padding:clamp(56px,6vw,88px) var(--inset) clamp(36px,4vw,56px)}
@media(min-width:1024px){.enquiry-intro{padding:clamp(56px,5.4vw,96px) var(--gap) clamp(56px,5.4vw,96px) var(--inset)}}
.enquiry-bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.enquiry-bg img{width:100%;height:100%;object-fit:cover;opacity:.28;filter:grayscale(.2)}
.enquiry-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(25,24,23,.7),rgba(25,24,23,.94) 72%)}
.amb-sm span:nth-child(1){width:min(70vw,760px);left:-34%;bottom:-58%}
.enquiry-intro-inner{max-width:500px}
@media(min-width:1024px){.enquiry-intro-inner{position:sticky;top:calc(var(--header) + 40px)}}
.enquiry-intro .lede{margin-top:16px;color:rgba(246,243,237,.76)}
.enquiry-tel{display:grid;gap:4px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line-light);font:640 clamp(26px,2.3vw,34px)/1.1 var(--head);letter-spacing:-.02em;text-decoration:none;color:var(--ivory);transition:color .2s}
.enquiry-tel span{font:700 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ember-l)}
.enquiry-tel:hover{color:var(--ember-xl)}
.enquiry-panel{background:var(--ivory);color:var(--ink);padding:clamp(28px,3.4vw,48px) var(--inset) clamp(40px,4vw,64px)}
@media(min-width:1024px){.enquiry-panel{padding:clamp(48px,4.6vw,80px) var(--inset) clamp(48px,4.6vw,80px) clamp(40px,4vw,72px)}}
.enquiry-panel-inner{max-width:760px}
.summary{margin-bottom:20px;padding:14px 16px 16px;background:var(--white);border:1px solid var(--line);border-left:3px solid var(--red);border-radius:var(--r);animation:stepIn .35s var(--ease)}
.summary-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.summary-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700}
.summary-title .ic{color:var(--red);width:18px;height:18px}
.summary-title b{min-width:22px;height:22px;display:grid;place-items:center;padding:0 6px;border-radius:20px;background:var(--red);color:#fff;font-size:12px}
.summary-clear{min-height:40px;font-size:14px}
.summary-hint{font-size:13px;color:var(--ink-3);margin:2px 0 12px}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips li{display:inline-flex;align-items:center;gap:2px;max-width:100%;padding-left:12px;border:1px solid var(--line-2);border-radius:30px;background:var(--ivory);font-size:14px;font-weight:600;animation:gIn .3s var(--ease)}
.chips button{flex:none;width:40px;height:40px;display:grid;place-items:center;border:0;background:none;border-radius:50%;color:var(--ink-2);transition:color .2s,background-color .2s}
.chips button .ic{width:15px;height:15px}
.chips button:hover{color:var(--red);background:rgba(176,48,40,.08)}
.field-grid{display:grid;gap:0 14px}
@media(min-width:640px){.field-grid{grid-template-columns:1fr 1fr}}
.field{display:grid;gap:6px;margin-bottom:14px;align-content:start}
.field label{font-size:14px;font-weight:700}
.req{color:var(--red)}
.opt{font-weight:500;color:var(--ink-3);font-size:13px;margin-left:4px}
.field input,.field select,.field textarea{width:100%;min-height:50px;padding:11px 15px;border:1px solid var(--line-2);border-radius:var(--r);background:var(--white);font-size:16px;transition:border-color .2s,box-shadow .2s}
.field textarea{min-height:112px;resize:vertical;line-height:1.55}
.field input:hover,.field select:hover,.field textarea:hover{border-color:rgba(34,32,30,.45)}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(184,80,48,.2)}
.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}
.field-error{font-size:14px;font-weight:600;color:var(--red-d);display:flex;gap:6px;align-items:center;animation:stepIn .25s var(--ease)}
.field-error .ic{width:16px;height:16px}
.select{position:relative}
.select select{appearance:none;padding-right:44px;cursor:pointer}
.select .ic{position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none;width:16px;height:16px;color:var(--ink-2)}
.conditional{animation:stepIn .4s var(--ease);padding:14px 14px 0;margin-bottom:14px;background:var(--white);border:1px solid var(--line);border-radius:var(--r)}
.hint{font-size:14px;color:var(--ink-2)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-error{display:flex;gap:10px;align-items:center;margin:4px 0 16px;padding:12px 16px;border-left:3px solid var(--red);background:rgba(176,48,40,.07);color:var(--red-d);font-size:15px;font-weight:600;animation:stepIn .3s var(--ease)}
.form-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:6px;padding-top:18px;border-top:1px solid var(--line)}
.privacy-note{font-size:14px;color:var(--ink-2);max-width:40ch}
.privacy-note a{color:var(--ink);font-weight:700}
.btn-submit{min-width:210px}
.btn-submit .ic-spin{display:none}
.btn-submit.is-busy{pointer-events:none;opacity:.88}
.btn-submit.is-busy .ic-go{display:none}
.btn-submit.is-busy .ic-spin{display:block;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:639px){.form-foot .btn{width:100%}}
.form-success{outline:none;animation:stepIn .5s var(--ease)}
.success-icon .ic{width:52px;height:52px;color:var(--red)}
.form-success h3{margin:16px 0 10px;font-size:clamp(26px,2.3vw,34px)}
.form-success p{color:var(--ink-2);max-width:52ch}
.success-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}


.site-footer{position:relative;background:#121110;color:rgba(246,243,237,.7);padding:clamp(48px,4.8vw,72px) 0 calc(22px + env(safe-area-inset-bottom));font-size:15px;border-top:2px solid var(--red)}
.ft-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 24px}
.ft-brand,.footer-map{grid-column:1/-1}
@media(min-width:1200px){.ft-grid{grid-template-columns:minmax(0,4fr) minmax(0,2fr) minmax(0,2fr) minmax(0,4.4fr);align-items:stretch}.ft-brand,.footer-map{grid-column:auto}}
.footer-logo{height:64px;width:auto;filter:url(#logo-on-dark);margin-bottom:16px}
.ft-line{max-width:36ch;line-height:1.55}
.ft-contact{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:8px}
.ft-contact a{display:inline-block;line-height:1.5;color:rgba(246,243,237,.82);text-decoration:none;transition:color .2s var(--ease)}
.ft-contact a:hover{color:var(--ivory)}
.ft-tel{font:640 20px/1.3 var(--head);letter-spacing:-.01em;color:var(--ivory)!important}

.footer-map{position:relative;height:100%;min-height:280px;border-radius:var(--r);overflow:hidden;background:#fff;-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}
.footer-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:767px){.footer-map{min-height:220px}}
.footer-head{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ivory);margin:0 0 10px}
.footer-links{list-style:none;margin:0;padding:0;display:grid}
.footer-links a,.footer-utility a{text-decoration:none;transition:color .2s}
.footer-links a{display:inline-flex;min-height:40px;align-items:center}
.footer-links a:hover,.footer-utility a:hover{color:var(--ivory)}
.social{display:flex;gap:10px;margin-top:14px}
.social a{width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(246,243,237,.2);border-radius:50%;color:var(--ivory);transition:border-color .25s,color .25s}
.social a:hover{border-color:var(--ember-l);color:var(--ember-l)}
.social svg{width:18px;height:18px;fill:currentColor}
.footer-base{margin-top:clamp(32px,3.6vw,48px);padding-top:20px;border-top:1px solid rgba(246,243,237,.1);display:grid;gap:10px;font-size:13px}
.footer-company{color:rgba(246,243,237,.55)}
.footer-base-row{display:grid;gap:8px}
@media(min-width:1024px){.footer-base-row{grid-template-columns:1fr auto;gap:40px;align-items:start}}
.footer-utility{display:flex;flex-wrap:wrap;gap:0 20px}
.footer-utility a{display:inline-flex;min-height:44px;align-items:center;color:rgba(246,243,237,.72)}
@media(min-width:1024px){.footer-utility a{min-height:24px}}
.footer-legal{color:rgba(246,243,237,.55);max-width:110ch}
.footer-legal a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;transition:color .25s}
.footer-legal a:hover{color:var(--ivory)}


.mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:1fr 1.6fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(18,17,16,.95);border-top:1px solid rgba(246,243,237,.1);transform:translateY(110%);transition:transform .4s var(--ease)}
.mobile-bar.is-on{transform:none}
.mobile-bar a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:var(--r);text-decoration:none;font-weight:700;font-size:15px}
.mobile-bar .ic{width:18px;height:18px}
.mb-call{color:var(--ivory);border:1px solid rgba(246,243,237,.3)}
.mb-quote{background:var(--red);color:#fff}
@media(min-width:900px){.mobile-bar{display:none}}
@media(max-width:899px){body.has-bar .site-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))}html:has(body.has-bar){scroll-padding-bottom:90px}}
.toast{position:fixed;left:50%;bottom:calc(88px + env(safe-area-inset-bottom));z-index:95;display:flex;align-items:center;gap:10px;transform:translate(-50%,16px);opacity:0;pointer-events:none;padding:10px 10px 10px 20px;min-height:48px;border-radius:40px;background:var(--charcoal);color:var(--ivory);font-size:15px;font-weight:700;box-shadow:0 20px 40px -20px rgba(0,0,0,.6);transition:opacity .3s,transform .3s var(--ease);max-width:calc(100% - 32px)}
.toast:not(:has(.toast-act)){padding-right:20px}
.toast .ic{width:18px;height:18px;color:var(--ember-l);flex:none}
.toast.is-on{opacity:1;transform:translate(-50%,0)}
.toast.is-on .toast-act{pointer-events:auto}
.toast-act{flex:none;display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:30px;background:rgba(246,243,237,.12);color:var(--ivory);font-size:14px;text-decoration:none;transition:background-color .2s}
.toast-act:hover{background:rgba(246,243,237,.22)}
@media(min-width:900px){.toast{bottom:32px}}
.shortlist-pill.is-bump b{animation:pop .45s var(--ease)}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .s-line{opacity:1;transform:none}
  .slide-media img{transform:none!important}
  .amb span,.drift img{animation:none!important}
}








.sel-frame{position:relative;overflow:hidden;border-radius:var(--r);background:var(--stone)}
.sel-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity .5s var(--ease),transform 1.1s var(--ease)}
.sel-frame img.is-on{opacity:1;transform:none}
.sel-type{font:700 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:10px}
.dark .sel-type{color:var(--ember-l)}
[data-sel-panel].is-swap>*{animation:rise .5s var(--ease) both}
[data-sel-panel].is-swap>*:nth-child(2){animation-delay:40ms}[data-sel-panel].is-swap>*:nth-child(3){animation-delay:80ms}[data-sel-panel].is-swap>*:nth-child(n+4){animation-delay:120ms}
[data-sel-panel]:focus-visible{outline-offset:8px}
.tick-list{list-style:none;margin:18px 0 26px;padding:0;display:grid}
.tick-list li{position:relative;padding:10px 0 10px 26px;border-bottom:1px solid var(--line);font-size:16px;line-height:1.45}
.tick-list li::before{content:"";position:absolute;left:2px;top:17px;width:11px;height:6px;border-left:2px solid var(--red);border-bottom:2px solid var(--red);transform:rotate(-45deg)}
.dark .tick-list li{border-color:var(--line-light);color:rgba(246,243,237,.86)}
.dark .tick-list li::before{border-color:var(--ember-l)}




.inspiration.surf-grain{background:#EFEAE2}
.inspiration.surf-plaster{background:var(--ivory)}
.inspiration:not(.dark) .filter-bar button{border-color:var(--line-2);color:var(--ink-2)}
.inspiration:not(.dark) .filter-bar button:hover{border-color:var(--ink);color:var(--ink)}
.inspiration:not(.dark) .filter-bar button.is-on{background:var(--charcoal);border-color:var(--charcoal);color:var(--ivory)}
.inspiration:not(.dark) .g-item{background:var(--stone)}




.fp-bespoke-grid{display:grid;gap:40px}
@media(min-width:1024px){.fp-bespoke-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(48px,5.6vw,104px);align-items:center}}
.fp-bespoke-media{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}
.fpb-main{grid-column:1/span 11;grid-row:1;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;--curtain:#E7E0D4}
.fpb-main img,.fpb-detail img{width:100%;height:100%;object-fit:cover}
.fpb-detail{grid-column:8/span 5;grid-row:1;aspect-ratio:4/5;margin-bottom:-12%;border:8px solid #E7E0D4;border-radius:var(--r);overflow:hidden;box-shadow:0 30px 50px -36px rgba(25,24,23,.6)}
.fpb-cap{grid-column:1/span 7;margin-top:14px;font-size:14px;color:var(--ink-2)}
@media(max-width:599px){.fpb-detail{grid-column:7/span 6;border-width:5px}.fpb-cap{grid-column:1/span 12;margin-top:calc(12% + 14px)}}
.fp-bespoke-copy .lede{margin-top:16px}
.choose{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:28px 0 0}
.choose div{padding:14px 0;border-top:1px solid var(--line-2)}
.choose dt{font:640 19px/1.2 var(--head);letter-spacing:-.015em}
.choose dd{margin:4px 0 0;font-size:15px;line-height:1.45;color:var(--ink-2)}


.sel-styles{display:grid;gap:28px}
@media(min-width:1024px){
  .sel-styles{grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-rows:auto 1fr;column-gap:clamp(48px,5vw,96px);row-gap:28px;align-items:start}
  .sel-styles-head{grid-column:1;grid-row:1}
  .sel-styles-panel{grid-column:1;grid-row:2;align-self:end}
  .sel-styles-media{grid-column:2;grid-row:1/span 2}
}
.sel-styles-head h2{margin-bottom:24px}
.seg{position:relative;display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:4px;border:1px solid var(--line-2);border-radius:50px;background:var(--white)}
.seg button{position:relative;z-index:1;min-height:48px;padding:0 26px;border:0;background:none;border-radius:40px;font:700 15px/1 var(--body);color:var(--ink-2);transition:color .3s var(--ease)}
.seg button.is-on{color:var(--ivory)}
.seg button:not(.is-on):hover{color:var(--ink)}
.seg-ind{position:absolute;z-index:0;left:0;top:4px;bottom:4px;border-radius:40px;background:var(--charcoal);transition:transform .45s var(--ease),width .45s var(--ease)}
.sel-styles-media{margin:0}
.sel-styles-media .sel-frame{aspect-ratio:4/5;--curtain:var(--ivory)}
@media(min-width:1024px){.sel-styles-media .sel-frame{aspect-ratio:auto;height:clamp(540px,46vw,720px)}}
.sel-styles-media figcaption{margin-top:10px;font-size:14px;color:var(--ink-2)}
.sel-styles-panel h3{margin-bottom:12px}
.sel-styles-panel>p:not(.sel-type){color:var(--ink-2);max-width:52ch}




.journey{background:var(--white);border-top:1px solid var(--line)}
.journey-grid{display:grid;gap:32px}
@media(min-width:1024px){.journey-grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(48px,5vw,96px)}}
.journey-head h2{font-size:clamp(30px,2.6vw,42px)}
.journey-head .lede{margin-top:14px;font-size:16px}
.journey-head .lede a{color:var(--red);font-weight:700}
.ledger{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--ink)}
@media(min-width:600px){.ledger{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1200px){.ledger{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ledger li{display:grid;gap:12px;align-content:start;padding:20px 22px 24px 0;border-bottom:1px solid var(--line)}
@media(min-width:600px) and (max-width:1199px){.ledger li:nth-child(even){padding-left:22px;border-left:1px solid var(--line)}}
@media(min-width:1200px){.ledger li+li{padding-left:22px;border-left:1px solid var(--line)}}
.lg-n{font:640 13px/1 var(--head);letter-spacing:.06em;color:var(--red)}
.ledger h3{font-size:20px;line-height:1.2;margin-bottom:6px}
.ledger p{font-size:15px;line-height:1.5;color:var(--ink-2)}



.st-types .fuel-head{max-width:760px;margin-bottom:clamp(28px,3vw,44px)}
.st-types .fuel-head .lede{margin-top:14px}
.fuel-body{display:grid;gap:28px}
@media(min-width:1024px){.fuel-body{grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(40px,5vw,96px);align-items:stretch}}
.fuel-media{margin:0}
.fuel-media .sel-frame{aspect-ratio:4/5;--curtain:var(--ivory)}
@media(min-width:1024px){.fuel-media .sel-frame{aspect-ratio:auto;height:clamp(460px,38vw,600px)}}
.fuel-media figcaption{margin-top:10px;font-size:14px;color:var(--ink-2)}
.fuel-side{display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.fuel-tabs{display:grid;border-top:1px solid var(--ink)}
.ftab{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:16px;align-items:center;padding:18px 4px;border:0;border-bottom:1px solid var(--line-2);background:none;text-align:left;color:var(--ink-3);transition:color .25s var(--ease),padding .35s var(--ease)}
.ftab-name{font:640 clamp(26px,2.4vw,38px)/1.05 var(--head);letter-spacing:-.03em}
.ftab-sub{font-size:14px;color:var(--ink-3);margin-top:4px}
.ftab .ic{grid-row:1/span 2;grid-column:2;width:22px;height:22px;opacity:0;transform:translateX(-8px);transition:opacity .3s var(--ease),transform .3s var(--ease);color:var(--red)}
.ftab:hover{color:var(--ink-2)}
.ftab.is-on{color:var(--ink);padding-left:14px;box-shadow:inset 3px 0 0 var(--red)}
.ftab.is-on .ic{opacity:1;transform:none}
.fuel-panel h3{margin-bottom:12px}
.fuel-panel>p:not(.sel-type){color:var(--ink-2)}


.prep-grid{display:grid;gap:32px}
@media(min-width:1024px){.prep-grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(48px,5vw,96px);align-items:start}.prep-intro{position:sticky;top:calc(var(--header) + 32px)}}
.prep-intro .lede{margin-top:14px}
.prep-note{margin-top:18px;padding-left:14px;border-left:2px solid var(--line-2);font-size:14px;line-height:1.5;color:var(--ink-2);max-width:44ch}
.prep-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:clamp(8px,1.4vw,16px) clamp(18px,2.4vw,36px) clamp(20px,2vw,28px);box-shadow:0 30px 60px -48px rgba(25,24,23,.45)}
.prep-q{border:0;margin:0;padding:18px 0;border-bottom:1px solid var(--line)}
.prep-q legend{display:flex;align-items:baseline;gap:12px;float:left;width:100%;margin-bottom:12px;font:640 clamp(18px,1.4vw,21px)/1.25 var(--head);letter-spacing:-.015em}
.prep-q legend span{font:700 12px/1 var(--body);letter-spacing:.08em;color:var(--red)}
.chips-opt{clear:both;display:flex;flex-wrap:wrap;gap:8px;padding-left:28px}
.chips-opt label{position:relative;cursor:pointer}
.chips-opt input{position:absolute;opacity:0;width:1px;height:1px}
.chips-opt span{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid var(--line-2);border-radius:40px;font-size:15px;font-weight:600;color:var(--ink-2);transition:border-color .2s var(--ease),background-color .2s var(--ease),color .2s var(--ease)}
.chips-opt label:hover span{border-color:var(--ink);color:var(--ink)}
.chips-opt input:checked+span{background:var(--charcoal);border-color:var(--charcoal);color:var(--ivory)}
.chips-opt input:checked+span::before{content:"";width:9px;height:5px;margin-top:-3px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg)}
.chips-opt input:focus-visible+span{outline:2px solid var(--ember);outline-offset:3px}
@media(max-width:599px){.chips-opt{padding-left:0}}
.prep-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-top:20px}
.prep-count{font-size:14px;color:var(--ink-2);margin-right:auto}
.prep-count b{font:640 18px/1 var(--head);color:var(--ink)}
.has-answers .prep-count b{color:var(--red)}


.install{background:var(--white);border-top:1px solid var(--line)}
.install-copy .lede{margin-top:16px}
.install-more{margin-top:22px;font-size:15px;color:var(--ink-2)}
.install-more a{color:var(--red);font-weight:700}




.thick{background:var(--white);border-top:1px solid var(--line)}
.thick-grid{display:grid;gap:36px;align-items:center}
@media(min-width:1024px){.thick-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(48px,5vw,96px)}}
.thick-copy h2{font-size:clamp(34px,3.4vw,54px)}
.thick-copy .lede{margin-top:14px}
.thick-note{margin-top:18px;padding-left:14px;border-left:2px solid var(--red);font-size:15px;line-height:1.5;color:var(--ink-2);max-width:52ch}
.slabs{display:grid;gap:clamp(26px,2.6vw,40px);padding:clamp(28px,3vw,48px);background:var(--ivory);border:1px solid var(--line);border-radius:var(--r)}
.slab{display:grid;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:20px;--t:calc(var(--mm) * 2.4px)}
.slab-20{--mm:20}.slab-30{--mm:30}
.slab-top{display:none}
.slab-edge{position:relative;height:var(--t);border-radius:2px;background:linear-gradient(180deg,#F3EFE8 0 3px,#C9C0B1 3px,#B3A898 70%,#A39886);box-shadow:0 22px 28px -20px rgba(25,24,23,.55)}
.slab-edge::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 40px,rgba(255,255,255,.12) 40px 44px,rgba(255,255,255,0) 44px 90px);border-radius:inherit}
.slab-dim{display:flex;align-items:center;gap:4px;height:var(--t);min-height:44px;padding-left:16px;border-left:1.5px solid var(--ink);font:640 clamp(28px,2.4vw,38px)/1 var(--head);letter-spacing:-.03em}
.slab-dim small{font:700 12px/1 var(--body);letter-spacing:.08em;color:var(--ink-2)}
.slabs-cap{font-size:13px;color:var(--ink-2)}


.cmp{display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}
@media(min-width:768px){.cmp{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(16px,2vw,28px);align-items:start}}
.cmp-slot{position:relative;padding:clamp(16px,1.6vw,24px);background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 30px 60px -50px rgba(25,24,23,.5)}
.cmp-pick{display:block;margin-bottom:14px}
.cmp-pick select{width:100%;min-height:48px;padding:0 44px 0 14px;border:1px solid var(--line-2);border-radius:var(--r);background:var(--ivory);font-size:16px;font-weight:600;transition:border-color .2s}
.cmp-pick select:hover{border-color:var(--ink)}
.cmp-pick select:focus-visible{outline:2px solid var(--ember);outline-offset:2px}
.cmp-frame{position:relative;aspect-ratio:3/2;overflow:hidden;border-radius:var(--r);background:var(--stone);margin-bottom:16px}
.cmp-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s var(--ease),transform 1s var(--ease);transform:scale(1.03)}
.cmp-frame img.is-on{opacity:1;transform:none}
.cmp-empty{position:absolute;inset:0;display:grid;place-items:center;padding:20px;text-align:center;font-weight:600;color:var(--ink-3);background:repeating-linear-gradient(135deg,rgba(34,32,30,.04) 0 10px,transparent 10px 20px);opacity:0;transition:opacity .3s}
.is-empty .cmp-empty{opacity:1}
.cmp-type{font:700 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.is-empty .cmp-type{color:var(--ink-3)}
.cmp-slot h3{margin:6px 0 2px}
.cmp-slot .tick-list{margin:12px 0 8px}
.cmp-slot.is-swap>h3,.cmp-slot.is-swap>.tick-list{animation:rise .45s var(--ease) both}
.cmp-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;padding-top:8px}
.cmp-foot p{color:var(--ink-2);max-width:52ch}


.cut{background:var(--white);border-top:1px solid var(--line)}
.cutline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:0 clamp(16px,2vw,28px);position:relative}
.cutline li{position:relative;padding:34px 0 8px}
.cutline::before{content:"";position:absolute;left:0;right:0;top:9px;border-top:1.5px dashed var(--ink-3)}
.cl-mark{position:absolute;left:0;top:2px;width:16px;height:16px;border-radius:50%;background:var(--white);border:1.5px solid var(--ink)}
.cutline li:last-child .cl-mark{background:var(--red);border-color:var(--red)}
.cl-n{display:block;font:640 13px/1 var(--head);letter-spacing:.06em;color:var(--red);margin-bottom:10px}
.cutline h3{font-size:19px;line-height:1.2;margin-bottom:6px}
.cutline p{font-size:15px;line-height:1.5;color:var(--ink-2)}
@media(max-width:767px){
  .cutline::before{left:7px;right:auto;top:0;bottom:0;border-top:0;border-left:1.5px dashed var(--ink-3)}
  .cutline li{padding:6px 0 18px 36px}
  .cl-mark{top:8px}
}


.samples-grid{display:grid;gap:36px;align-items:center}
@media(min-width:1024px){.samples-grid{grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(48px,5vw,96px)}}
.samples-media{margin:0}
.samples-media>div{aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;--curtain:#EFEAE2}
.samples-media img{width:100%;height:100%;object-fit:cover}
.samples-media figcaption{margin-top:10px;font-size:13px;color:var(--ink-3)}
.big-num{display:block;font-size:clamp(64px,7vw,112px);line-height:.9;letter-spacing:-.05em;color:var(--red);margin-bottom:8px}
.samples-copy .lede{margin-top:16px}
.samples-addr{margin-top:16px;font-weight:600}



.story{background:var(--white);border-block:1px solid var(--line)}
.story-grid{display:grid;gap:28px}
@media(min-width:1024px){.story-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(48px,5.6vw,104px);align-items:end}}
.story-statement{font-size:clamp(30px,3vw,48px);line-height:1.1;letter-spacing:-.03em;font-weight:600;max-width:22ch}
.story-body p{color:var(--ink-2);max-width:56ch}
.story-body p+p{margin-top:14px}

.workshop{background:var(--night)}


.visit-reasons{list-style:none;margin:24px 0 0;padding:0;display:grid;border-top:1px solid var(--line-2)}
.visit-reasons li{padding:18px 0;border-bottom:1px solid var(--line-2)}
.visit-reasons h3{font-size:21px;margin-bottom:6px}
.visit-reasons p{font-size:16px;line-height:1.5;color:var(--ink-2);max-width:50ch}


.ct-main{background:var(--white);padding-block:clamp(40px,4vw,72px)}
.ct-grid{display:grid;gap:36px}
@media(min-width:1024px){.ct-grid{grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:clamp(40px,4.4vw,80px);align-items:start}}
.ct-form{max-width:820px}
.ct-form-head{margin-bottom:26px}
.ct-form-head h2{font-size:clamp(28px,2.6vw,40px);margin-bottom:10px}
.ct-form-head p:not(.eyebrow){color:var(--ink-2);max-width:60ch}
.ct-aside{display:grid;gap:16px}
@media(min-width:1024px){.ct-aside{position:sticky;top:calc(var(--header) + 24px)}}
.ct-card{padding:22px 24px;background:var(--ivory);border:1px solid var(--line);border-radius:var(--r)}
.ct-card-head{font:700 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:12px}
.ct-card address{font-style:normal}
.ct-card address a{display:block;font:600 18px/1.45 var(--head);letter-spacing:-.01em;text-decoration:none;transition:color .2s}
.ct-card address a:hover{color:var(--red)}
.ct-dl{margin:16px 0 0;display:grid;border-top:1px solid var(--line)}
.ct-dl div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--line)}
.ct-dl dt{font-size:13px;font-weight:700;color:var(--ink-2)}
.ct-dl dd{margin:0}
.ct-dl a{display:inline-flex;align-items:center;min-height:32px;font-weight:700;text-decoration:none;transition:color .2s}
.ct-dl a:hover{color:var(--red)}
.ct-note{margin-top:12px;font-size:14px;line-height:1.5;color:var(--ink-2)}
.ct-explore{padding:20px 24px 12px;border:1px solid var(--line);border-radius:var(--r)}
.ct-explore ul{list-style:none;margin:0;padding:0}
.ct-explore a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;border-top:1px solid var(--line);text-decoration:none;font-weight:600;font-size:15px;transition:color .2s}
.ct-explore a .ic{width:16px;height:16px;color:var(--red);transition:transform .3s var(--ease)}
.ct-explore a:hover{color:var(--red)}
.ct-explore a:hover .ic{transform:translateX(3px)}
.ct-map-grid{display:grid;gap:28px;align-items:center}
@media(min-width:1024px){.ct-map-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--gap)}}
.ct-map-copy .lede{margin-top:14px}
.ct-map{position:relative;height:clamp(300px,30vw,420px);border-radius:var(--r);overflow:hidden;background:#DCD4C6;-webkit-mask-image:-webkit-radial-gradient(#fff,#000);display:grid;place-items:center}
.ct-map-ph{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px) 0 0/48px 48px,
  linear-gradient(0deg,rgba(255,255,255,.35) 1px,transparent 1px) 0 0/48px 48px,
  linear-gradient(28deg,transparent 46%,rgba(255,255,255,.75) 46% 49%,transparent 49%),
  linear-gradient(-62deg,transparent 58%,rgba(255,255,255,.6) 58% 60%,transparent 60%),
  radial-gradient(60% 60% at 50% 50%,#E8E1D5,#D5CCBC)}
.mp-pin{position:absolute;left:50%;top:42%;transform:translate(-50%,-100%);color:var(--red)}
.mp-pin .ic{width:44px;height:44px;filter:drop-shadow(0 6px 8px rgba(0,0,0,.25))}
.mp-label{position:absolute;left:50%;top:44%;transform:translateX(-50%);padding:8px 14px;background:var(--white);border-radius:var(--r);font-weight:700;font-size:14px;line-height:1.3;text-align:center;white-space:nowrap;box-shadow:0 10px 24px -14px rgba(0,0,0,.4)}
.mp-label small{font-weight:600;color:var(--ink-2)}
.ct-map-load{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:2}
.ct-map-load:active{transform:translateX(-50%) translateY(1px)}
.ct-map-note{position:absolute;bottom:4px;left:0;right:0;text-align:center;font-size:11px;color:var(--ink-2);z-index:2}
.ct-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;opacity:0;transition:opacity .5s var(--ease)}
.ct-map.is-loaded iframe{opacity:1}
.ct-map.is-live .ct-map-note{display:none}


.legal{background:var(--white);padding-block:clamp(36px,3.6vw,64px) clamp(56px,5vw,96px)}
.legal-grid{display:grid;gap:28px}
@media(min-width:1024px){.legal-grid{grid-template-columns:minmax(220px,3fr) minmax(0,7fr) minmax(0,2fr);gap:clamp(40px,4.4vw,80px);align-items:start}}
.legal-toc{border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;background:var(--ivory)}
@media(min-width:1024px){.legal-toc{position:sticky;top:calc(var(--header) + 24px);background:none;border:0;padding:0}}
.toc-head{font:700 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:8px}
.legal-toc ol{list-style:none;margin:0;padding:0;display:grid}
.legal-toc a{display:flex;gap:10px;align-items:center;min-height:38px;padding:4px 0 4px 12px;border-left:2px solid var(--line);font-size:14px;font-weight:600;line-height:1.3;color:var(--ink-2);text-decoration:none;transition:color .2s var(--ease),border-color .2s var(--ease)}
.legal-toc a span{min-width:18px;font-size:12px;color:var(--ink-2)}
.legal-toc a:hover{color:var(--ink);border-color:var(--ink-3)}
.legal-toc a.is-on{color:var(--ink);border-color:var(--red)}
@media(max-width:1023px){.legal-toc ol{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));column-gap:16px}}
.legal-body{max-width:72ch;font-size:17px;line-height:1.7}
.legal-body h2{font-size:clamp(22px,1.8vw,27px);line-height:1.2;margin:44px 0 12px;scroll-margin-top:calc(var(--header) + 20px)}
.legal-body .clause:first-of-type h2,.legal-body .legal-intro+h2{margin-top:32px}
.legal-body p,.legal-body ul{color:var(--ink-2)}
.legal-body p+p,.legal-body p+ul,.legal-body ul+p{margin-top:12px}
.legal-body ul{padding-left:20px;margin:8px 0 0}
.legal-body li{margin:6px 0;padding-left:4px}
.legal-body li::marker{color:var(--red)}
.legal-body a{color:var(--red);font-weight:600;text-underline-offset:3px}
.legal-intro{font-size:clamp(18px,1.3vw,20px);line-height:1.6;color:var(--ink)!important;padding-bottom:24px;border-bottom:1px solid var(--line)}
.clause{scroll-margin-top:calc(var(--header) + 20px)}
.cl-num{color:var(--red)}
.sub{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px}
.sub-n{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.legal-addr{font-style:normal;margin-top:10px;padding:16px 20px;background:var(--ivory);border-left:3px solid var(--red);color:var(--ink)}
.legal-links{margin-top:40px!important;padding-top:20px;border-top:1px solid var(--line);font-size:15px}
.cookie-table{margin:18px 0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;font-size:15px;line-height:1.5}
.ck-row{display:grid;grid-template-columns:minmax(110px,1.1fr) minmax(0,3fr) minmax(90px,1fr);gap:16px;padding:12px 16px;border-top:1px solid var(--line);color:var(--ink-2)}
.ck-row b{color:var(--ink);font-weight:700;word-break:break-all}
.ck-head{border-top:0;background:var(--ivory);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
@media(max-width:639px){
  .ck-head{display:none}
  .ck-row{grid-template-columns:1fr;gap:4px}
  .ck-row:nth-child(2){border-top:0}
  .ck-row span[data-l]::before{content:attr(data-l);display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
}
@media(prefers-reduced-motion:reduce){[data-sel-panel].is-swap>*,.cmp-slot.is-swap>*{animation:none}}



.sf-char,.sf-ember,.sf-dstone{position:relative;isolation:isolate;color:var(--ivory);overflow:hidden;overflow:clip}
.sf-char{background:#151311}
.sf-ember{background:#17110E}
.sf-dstone{background:#181716}

.sf-char::before,.sf-ember::before,.sf-dstone::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:var(--grain);opacity:.32;mix-blend-mode:overlay}
.sf-dstone::before{opacity:.42;background-image:var(--grain),repeating-linear-gradient(118deg,rgba(255,255,255,0) 0 46px,rgba(255,255,255,.018) 46px 47px,rgba(255,255,255,0) 47px 120px),repeating-linear-gradient(32deg,rgba(255,255,255,0) 0 90px,rgba(255,255,255,.014) 90px 91px,rgba(255,255,255,0) 91px 200px)}

.sf-char::after,.sf-ember::after,.sf-dstone::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.sf-char::after{background:
  linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px) var(--inset) 0/calc((100% - 2 * var(--inset)) / 6) 100%,
  radial-gradient(70% 90% at 0% 0%,rgba(246,236,220,.07),rgba(246,236,220,0) 60%),
  radial-gradient(60% 70% at 100% 110%,rgba(184,80,48,.16),rgba(184,80,48,0) 70%)}
.sf-ember::after{background:
  radial-gradient(80% 70% at 15% 110%,rgba(206,96,52,.32),rgba(206,96,52,.08) 45%,rgba(206,96,52,0) 70%),
  radial-gradient(50% 60% at 90% 0%,rgba(240,176,143,.08),rgba(240,176,143,0) 70%),
  linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,0) 30%)}
.sf-dstone::after{background:
  radial-gradient(70% 80% at 85% 0%,rgba(226,218,205,.09),rgba(226,218,205,0) 65%),
  radial-gradient(60% 60% at 0% 100%,rgba(184,80,48,.1),rgba(184,80,48,0) 70%)}
.sf-char .lede,.sf-ember .lede,.sf-dstone .lede{color:rgba(246,243,237,.74)}
.sf-char .eyebrow,.sf-ember .eyebrow,.sf-dstone .eyebrow{color:var(--ember-l)}
.sf-char .link-arrow,.sf-ember .link-arrow,.sf-dstone .link-arrow{color:var(--ember-l)}


.crumbs{margin-bottom:clamp(18px,1.8vw,26px)}
.crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;list-style:none;margin:0;padding:0;font-size:13px;font-weight:600;letter-spacing:.02em}
.crumbs li{display:flex;align-items:center;gap:10px}
.crumbs li+li::before{content:"";width:5px;height:5px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);opacity:.5}
.crumbs a{display:inline-flex;align-items:center;min-height:32px;text-decoration:none;transition:color .2s var(--ease)}
.hx .crumbs li{color:rgba(246,243,237,.48)}
.hx .crumbs a{color:rgba(246,243,237,.72)}
.hx .crumbs a:hover{color:#fff}
.hx .crumbs [aria-current]{color:var(--ivory)}
.hx-light .crumbs li{color:var(--ink-3)}
.hx-light .crumbs a{color:var(--ink-2)}
.hx-light .crumbs a:hover{color:var(--red)}
.hx-light .crumbs [aria-current]{color:var(--ink)}


.hx{--hx-h:clamp(360px,31vw,470px);position:relative;isolation:isolate;overflow:hidden;background:#151311;color:var(--ivory)}
.hx::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:var(--grain);opacity:.3;mix-blend-mode:overlay}

.hx::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  linear-gradient(90deg,var(--hx-line,rgba(255,255,255,.05)) 1px,transparent 1px) var(--inset) 0/calc((100% - 2 * var(--inset)) / 6) 100%,
  radial-gradient(60% 90% at 0% 0%,var(--hx-light,rgba(246,236,220,.07)),transparent 60%),
  radial-gradient(55% 80% at 0% 100%,var(--hx-ember,rgba(184,80,48,.2)),transparent 70%)}
.hx-stone{--hx-light:rgba(226,218,205,.1);--hx-ember:rgba(184,80,48,.12);background:#171615}
.hx-light{background:#EDE7DD;color:var(--ink);--hx-line:rgba(34,32,30,.07);--hx-light:rgba(255,255,255,.7);--hx-ember:rgba(184,80,48,.07)}
.hx-light::before{mix-blend-mode:multiply;opacity:.35}
.hx-grid{display:grid;gap:28px;padding-block:clamp(26px,2.6vw,40px) 0}
@media(min-width:1024px){.hx-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,4.4vw,80px);align-items:center;min-height:var(--hx-h);padding-block:0}}
.hx-copy{position:relative;padding-block:0 clamp(8px,1vw,16px)}
@media(min-width:1024px){.hx-copy{padding-block:clamp(36px,3.4vw,56px)}}
.hx-kicker{display:flex;align-items:center;gap:12px;margin-bottom:16px;font:700 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;color:rgba(246,243,237,.8)}
.hx-kicker::before{content:"";width:28px;height:2px;background:#EC7A53}
.hx-light .hx-kicker{color:var(--ink-2)}
.hx-light .hx-kicker::before{background:var(--red)}
.hx h1{font-size:clamp(40px,4.4vw,68px);line-height:1.02;letter-spacing:-.036em;font-weight:640;margin:0;max-width:14ch}
.hx h1 span{display:block;color:#EC7A53}
.hx-light h1 span{color:var(--red)}
.hx-lede{margin-top:18px;max-width:44ch;font-size:clamp(17px,1.2vw,19px);line-height:1.58;color:rgba(246,243,237,.8);text-wrap:pretty}
.hx-light .hx-lede{color:var(--ink-2)}
.hx-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:26px}
@media(max-width:599px){.hx-actions .btn{flex:1 1 100%}}
.hx-actions .link-arrow{color:#EC7A53}
.hx-light .hx-actions .link-arrow{color:var(--red)}

.hx-media{position:relative;margin:0 calc(var(--inset) * -1);min-width:0}
.hx-frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:#211E1B}
.hx-light .hx-frame{background:#DCD4C6}
.hx-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hx-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(21,19,17,.35),rgba(21,19,17,0) 30%),linear-gradient(0deg,rgba(21,19,17,.45),rgba(21,19,17,0) 35%)}
.hx-light .hx-frame::after{background:linear-gradient(0deg,rgba(21,19,17,.3),rgba(21,19,17,0) 35%)}
.hx-cap{position:absolute;left:var(--inset);bottom:14px;z-index:2;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:rgba(255,255,255,.9);text-shadow:0 1px 8px rgba(0,0,0,.5)}
.hx-cap::before{content:"";width:18px;height:1.5px;background:#EC7A53}
@media(min-width:1024px){
  .hx-media{align-self:stretch;margin:0 calc(var(--inset) * -1) 0 0}
  .hx-frame{aspect-ratio:auto;height:100%;min-height:var(--hx-h)}
  .hx-media::before{content:"";position:absolute;z-index:3;left:0;top:18%;width:3px;height:34%;background:var(--red);transform-origin:top}
  .hx-cap{left:28px;bottom:22px}
}
@media(max-width:1023px){.hx-frame{max-height:300px;width:100%}}

@media(prefers-reduced-motion:no-preference){
  .js .hx-frame{animation:hxIn .7s var(--ease-io) both}
  .js .hx-media::before{animation:hxRule .6s var(--ease) .25s both}
}
@keyframes hxIn{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}
@keyframes hxRule{from{transform:scaleY(0)}to{transform:none}}

.hx-rail{position:relative;z-index:2;border-top:1px solid rgba(246,243,237,.14)}
.hx-light .hx-rail{border-color:var(--line-2)}
.hx-rail ul{display:flex;flex-wrap:wrap;gap:6px clamp(20px,3vw,48px);list-style:none;margin:0;padding:16px 0 18px}
.hx-rail li{display:flex;align-items:center;gap:10px;font-size:14px;color:rgba(246,243,237,.7)}
.hx-rail li::before{content:"";width:6px;height:6px;flex:none;background:#EC7A53;transform:rotate(45deg)}
.hx-rail b{color:var(--ivory);font-weight:700}
.hx-light .hx-rail li{color:var(--ink-2)}
.hx-light .hx-rail li::before{background:var(--red)}
.hx-light .hx-rail b{color:var(--ink)}
@media(max-width:1023px){.hx-rail{margin-top:0}.hx-rail ul{padding:14px 0}}
@media(max-width:599px){.hx-rail li:nth-child(n+2){display:none}}

.hx-pre{display:block;margin-bottom:16px;font:700 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;color:rgba(246,243,237,.8)}
.hx-pre::before{content:"";display:inline-block;vertical-align:middle;width:28px;height:2px;margin-right:12px;background:#EC7A53}
.hx-about h1{max-width:12ch}
.hx-about h1 em{font-style:normal;color:#EC7A53}
.hx-about h1 span.hx-pre{color:rgba(246,243,237,.8)}
.hx-index{display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:24px 0 0;padding:0;border-top:1px solid rgba(246,243,237,.16)}
.hx-index li{flex:1 1 0;min-width:0;border-bottom:1px solid rgba(246,243,237,.16)}
.hx-index li+li{border-left:1px solid rgba(246,243,237,.16)}
.hx-index a{display:flex;align-items:center;gap:10px;min-height:56px;padding:0 14px;font:640 17px/1.1 var(--head);color:var(--ivory);text-decoration:none;transition:background-color .25s var(--ease),color .25s var(--ease)}
.hx-index li:first-child a{padding-left:0}
.hx-index a span{font:700 11px/1 var(--body);letter-spacing:.08em;color:#EC7A53}
.hx-index a .ic{width:14px;height:14px;margin-left:auto;color:rgba(246,243,237,.5);transition:transform .3s var(--ease),color .3s var(--ease)}
.hx-index a:hover{color:#fff}
.hx-index a:hover .ic{transform:translateX(3px);color:#EC7A53}
@media(max-width:479px){.hx-index a{padding:0 10px;font-size:15px}.hx-index a .ic{display:none}}
.hx-inset{display:none}
@media(min-width:1024px){
  .hx-about{--hx-h:clamp(460px,38vw,580px)}
  .hx-inset{display:block;position:absolute;z-index:4;left:-54px;bottom:56px;width:clamp(120px,11vw,170px);aspect-ratio:4/5;overflow:hidden;border:6px solid #151311;box-shadow:0 30px 50px -30px rgba(0,0,0,.8)}
  .hx-inset img{width:100%;height:100%;object-fit:cover}
  .hx-about .hx-cap{left:150px}
  .js .hx-inset{animation:rise .6s var(--ease) .35s both}
}
@media(prefers-reduced-motion:reduce){.js .hx-inset{animation:none}}

.hx-compact{--hx-h:0px}
.hx-compact .hx-grid{padding-block:clamp(26px,2.6vw,40px) clamp(28px,2.6vw,40px);min-height:0}
.hx-compact .hx-copy{padding-block:0}
.hx-compact h1{font-size:clamp(36px,3.6vw,56px);max-width:none}
.hx-meta{margin-top:12px;font-size:14px;color:var(--ink-2)}
@media(min-width:1024px){.hx-compact .hx-grid{align-items:end}}


.hero .slide-media::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px) var(--inset) 0/calc((100% - 2 * var(--inset)) / 6) 100%}


.reel{padding-block:clamp(48px,4.6vw,76px)}
.reel-head{display:grid;gap:14px;margin-bottom:clamp(24px,2.4vw,36px)}
@media(min-width:900px){.reel-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--gap)}}
.reel-h{font-size:clamp(26px,2.4vw,38px)}
.reel-note{margin-top:10px;font-size:15px;line-height:1.55;max-width:56ch;color:rgba(246,243,237,.66)}
.reel-light .reel-note{color:var(--ink-2)}
.reel-ctrl{display:flex;align-items:center;gap:10px}
.reel-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid rgba(246,243,237,.28);border-radius:40px;background:none;color:inherit;font-size:14px;font-weight:700;transition:border-color .2s var(--ease),background-color .2s var(--ease)}
.reel-btn:hover{border-color:currentColor;background:rgba(246,243,237,.06)}
.reel-btn .ic{width:16px;height:16px}
.reel-btn .ic-play{display:none}
.reel.is-paused .reel-btn .ic-play{display:block}
.reel.is-paused .reel-btn .ic-pause{display:none}
.reel-light .reel-btn{border-color:var(--line-2)}
.reel-light .reel-btn:hover{border-color:var(--ink);background:rgba(34,32,30,.04)}

.reel{--cw:clamp(168px,14.2vw,214px);--rail:#F7F3ED;--hair:rgba(34,32,30,.12)}
.reel-view{position:relative;background:var(--hair);border-block:1px solid var(--hair);overflow:hidden;overflow:clip}
.reel-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:1px;list-style:none;margin:0;padding:0}
.rl-item{min-width:0;background:var(--rail)}
.rl-cell{position:relative;display:grid;place-items:center;aspect-ratio:200/112;text-decoration:none;background:var(--rail);outline-offset:-3px}
.lg{display:block;width:var(--lw);max-width:none;height:auto;mix-blend-mode:multiply;transform:translateY(calc(var(--dy,0) * 1.12%));transition:transform .45s var(--ease)}
a.rl-cell::after{content:"";position:absolute;left:24%;right:24%;bottom:14%;height:1.5px;background:var(--red);transform:scaleX(0);transition:transform .4s var(--ease)}
a.rl-cell:hover::after,a.rl-cell:focus-visible::after{transform:scaleX(1)}
a.rl-cell:hover .lg,a.rl-cell:focus-visible .lg{transform:translateY(calc(var(--dy,0) * 1.12% - 3px))}
a.rl-cell:focus-visible{outline:2px solid var(--red)}
.dark .reel-view{--hair:rgba(34,32,30,.5);box-shadow:0 1px 0 rgba(255,255,255,.06),0 30px 60px -40px rgba(0,0,0,.8)}

.reel.is-moving .reel-track{display:flex;width:max-content;animation:reel var(--reel-dur,90s) linear infinite}
.reel.is-moving .rl-item{flex:none;width:var(--cw)}
.reel.is-moving .reel-view::before,.reel.is-moving .reel-view::after{content:"";position:absolute;top:0;bottom:0;width:clamp(24px,4vw,56px);z-index:2;pointer-events:none}
.reel.is-moving .reel-view::before{left:0;background:linear-gradient(90deg,var(--rail),rgba(247,243,237,0))}
.reel.is-moving .reel-view::after{right:0;background:linear-gradient(270deg,var(--rail),rgba(247,243,237,0))}
.reel.is-moving .reel-view:hover .reel-track,.reel.is-moving .reel-view:focus-within .reel-track,.reel.is-paused .reel-track,.reel.is-off .reel-track{animation-play-state:paused}
@keyframes reel{to{transform:translateX(calc(-50% - .5px))}}
@media(max-width:599px){
  .reel{--cw:46vw}
  .reel-track{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:600px) and (max-width:899px){.reel-track{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:900px){.reel-five .reel-track{grid-template-columns:repeat(5,minmax(0,1fr))}}


.cta3{position:relative;isolation:isolate;overflow:hidden;background:#151311;color:var(--ivory)}
.cta3::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px) var(--inset) 0/calc((100% - 2 * var(--inset)) / 6) 100%,
  radial-gradient(70% 90% at 0% 100%,rgba(206,96,52,.26),rgba(206,96,52,0) 65%)}
.cta3-photo{position:absolute;top:0;right:0;bottom:0;width:52%;z-index:-2;overflow:hidden}
.cta3-photo img{width:100%;height:100%;object-fit:cover}
.cta3-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#151311 0%,rgba(21,19,17,.7) 30%,rgba(21,19,17,.15) 70%,rgba(21,19,17,.3) 100%)}
.cta3-grid{display:grid;padding-block:clamp(64px,6.4vw,112px)}
.cta3-copy{max-width:640px;position:relative}
.cta3-kicker{display:flex;align-items:center;gap:14px;margin-bottom:18px;font:700 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;color:#EC7A53}

.cta3-kicker::before{content:"";width:calc(var(--inset) + 40px);height:2px;margin-left:calc(var(--inset) * -1);background:currentColor;transform-origin:left}
.cta3 h2{font-size:clamp(40px,4.8vw,78px);line-height:.98;letter-spacing:-.04em}
.cta3 h2 span{display:block;color:#EC7A53}
.cta3-lede{margin-top:18px;max-width:46ch;font-size:clamp(17px,1.2vw,19px);line-height:1.58;color:rgba(246,243,237,.76)}
.cta3-carry[hidden]{display:none}
.cta3-carry{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;padding:10px 14px;border:1px solid rgba(236,122,83,.45);border-radius:var(--r);background:rgba(236,122,83,.08);font-size:14px;color:rgba(246,243,237,.86);animation:rise .5s var(--ease) both}
.cta3-carry .ic{width:16px;height:16px;color:#EC7A53}
.cta3-carry b{color:#fff}
.cta3-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:30px}
.cta3-actions .btn{min-height:58px;padding:0 30px;font-size:16px}
.cta3-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:700;color:var(--ivory);text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 calc(100% - 8px)/0 1px no-repeat;transition:background-size .35s var(--ease)}
.cta3-link:hover{background-size:100% 1px}
.cta3-link .ic{width:18px;height:18px;color:#EC7A53}

.cta3-stone{background:#E4DCCF;color:var(--ink)}
.cta3-stone::before{background:
  linear-gradient(90deg,rgba(34,32,30,.06) 1px,transparent 1px) var(--inset) 0/calc((100% - 2 * var(--inset)) / 6) 100%,
  radial-gradient(70% 90% at 0% 100%,rgba(255,255,255,.55),rgba(255,255,255,0) 65%)}
.cta3-stone .cta3-photo::after{background:linear-gradient(90deg,#E4DCCF 0%,rgba(228,220,207,.75) 30%,rgba(228,220,207,0) 70%)}
.cta3-stone .cta3-kicker{color:var(--red)}
.cta3-stone h2 span{color:var(--red)}
.cta3-stone .cta3-lede{color:var(--ink-2)}
.cta3-stone .cta3-link{color:var(--ink)}
.cta3-stone .cta3-link .ic{color:var(--red)}
.cta3-stone .cta3-carry{border-color:rgba(176,48,40,.35);background:rgba(176,48,40,.06);color:var(--ink-2)}
.cta3-stone .cta3-carry b{color:var(--ink)}
@media(max-width:899px){
  .cta3-photo{position:relative;width:auto;height:220px;margin:0}
  .cta3-photo::after{background:linear-gradient(0deg,#151311 0%,rgba(21,19,17,0) 70%)}
  .cta3-stone .cta3-photo::after{background:linear-gradient(0deg,#E4DCCF 0%,rgba(228,220,207,0) 70%)}
  .cta3-grid{padding-block:8px 64px}
}
@media(max-width:599px){.cta3-actions .btn{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.reel.is-moving .reel-track{animation:none}.lg{transition:none}.cta3-carry{animation:none}}




.hx-mats a{display:inline-flex;align-items:center;gap:0;min-height:44px;margin-block:-12px;color:inherit;text-decoration:none;transition:color .2s var(--ease)}
.hx-mats a .ic{width:14px;height:14px;margin-left:8px;color:#EC7A53;transition:transform .3s var(--ease)}
.hx-mats a:hover{color:var(--ivory)}
.hx-mats a:hover .ic{transform:translateY(2px)}
@media(max-width:599px){.hx .hx-mats li:nth-child(n+2){display:flex}.hx-mats{justify-content:space-between}.hm-d{display:none}}

.hx-quick{list-style:none;margin:0;padding:0;display:grid;gap:10px}
@media(min-width:600px) and (max-width:1023px){.hx-quick{grid-template-columns:repeat(3,minmax(0,1fr))}}
.hx-quick a{display:flex;align-items:center;gap:14px;min-height:64px;padding:12px 18px;background:rgba(252,250,247,.75);border:1px solid var(--line);border-radius:var(--r);color:var(--ink);font-weight:700;text-decoration:none;transition:border-color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
.hx-quick a:hover{border-color:var(--red);transform:translateY(-2px);box-shadow:0 16px 26px -22px rgba(25,24,23,.5)}
.hx-quick small{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);margin-bottom:2px}
.hq-ic{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--red);color:#fff}
.hq-ic .ic{width:19px;height:19px}
.hx-legal .hx-grid{padding-bottom:clamp(24px,2.4vw,36px)}


.fx{display:grid;gap:clamp(16px,1.6vw,24px)}
@media(min-width:900px){.fx{grid-template-columns:1fr 1fr}}
.fx-col{display:flex;flex-direction:column;background:rgba(246,243,237,.045);border:1px solid rgba(246,243,237,.12);border-radius:var(--r);overflow:hidden;transition:border-color .35s var(--ease),background-color .35s var(--ease)}
.fx-col:hover{border-color:rgba(236,122,83,.45);background:rgba(246,243,237,.065)}
.fx-img{aspect-ratio:16/10;overflow:hidden;--curtain:#17110E}
.fx-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.fx-col:hover .fx-img img{transform:scale(1.03)}
.fx-body{display:flex;flex-direction:column;flex:1;padding:clamp(20px,2.2vw,32px)}
.fx-type{font:700 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:#EC7A53;margin-bottom:8px}
.fx-body h3{font-size:clamp(24px,2vw,30px);margin-bottom:18px}
.fx-spec{margin:0 0 24px;display:grid;flex:1;align-content:start}
.fx-spec div{display:grid;grid-template-columns:minmax(110px,32%) minmax(0,1fr);gap:16px;padding:12px 0;border-top:1px solid rgba(246,243,237,.12)}
.fx-spec dt{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(246,243,237,.6);padding-top:2px}
.fx-spec dd{margin:0;font-size:16px;line-height:1.45;color:rgba(246,243,237,.9)}
.fx-body .btn{align-self:flex-start}
.fx-alt{margin-top:22px;font-size:15px;color:rgba(246,243,237,.7)}
.fx-alt a{color:#EC7A53;font-weight:700}
.reel-in{padding-bottom:0;margin-top:clamp(48px,4.8vw,80px);padding-top:clamp(36px,3.6vw,56px);border-top:1px solid rgba(246,243,237,.12)}
.reel-light.reel-in{border-color:var(--line-2)}


.install-top{display:grid;gap:28px;align-items:center}
@media(min-width:1024px){.install-top{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(48px,5vw,96px)}}
.install-media{margin:0}
.install-frame{aspect-ratio:3/2;border-radius:var(--r);overflow:hidden;--curtain:var(--white)}
.install-frame img{width:100%;height:100%;object-fit:cover}
.install-media figcaption{margin-top:10px;font-size:14px;color:var(--ink-2)}
.install-row{list-style:none;margin:clamp(32px,3.4vw,52px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:0 clamp(20px,2.4vw,40px)}
.install-row li{position:relative;padding:18px 0 4px;border-top:2px solid var(--ink)}
.install-row li::before{content:"";position:absolute;left:0;top:-2px;width:40px;height:2px;background:var(--red)}
.ir-n{display:block;font:640 13px/1 var(--head);letter-spacing:.06em;color:var(--red);margin-bottom:10px}
.install-row h3{font-size:19px;line-height:1.2;margin-bottom:6px}
.install-row p{font-size:15px;line-height:1.5;color:var(--ink-2)}


.prep-top{display:none}
.is-step .prep-top{display:flex;align-items:center;gap:18px;padding:16px 0 4px}
.prep-step{flex:none;font:700 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.prep-prog{flex:1;height:3px;background:var(--line);border-radius:3px;overflow:hidden}
.prep-prog span{display:block;height:100%;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.is-step .prep-q{display:none;border-bottom:0;padding-bottom:6px;min-height:150px}
.is-step .prep-q.is-cur{display:block}
.is-step .prep-q legend{font-size:clamp(21px,1.8vw,27px);letter-spacing:-.015em}
.prep-q.is-swap>*,.prep-sum.is-swap>*{animation:rise .45s var(--ease) both}
.prep-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 18px;border-bottom:1px solid var(--line)}
.prep-nav [data-prep-next]{margin-left:auto}
.prep-sum{padding:12px 0 8px}
.prep-sum:focus{outline:none}
.prep-sum h3{font-size:clamp(21px,1.8vw,27px);margin-bottom:10px}
.prep-sum ul{list-style:none;margin:0;padding:0}
.prep-sum li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 16px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.ps-q{grid-column:1;font-size:14px;color:var(--ink-2)}
.ps-a{grid-column:1;font-weight:700}
.prep-sum li.is-empty .ps-a{font-weight:400;color:var(--ink-3);font-style:italic}
.prep-sum .text-btn{grid-column:2;grid-row:1/span 2}


.story-glance{margin:26px 0 0;display:grid;border-top:1px solid var(--ink)}
.story-glance div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--line-2)}
.story-glance dt{font:640 17px/1.3 var(--head);letter-spacing:-.01em;color:var(--red)}
.story-glance dd{margin:0;color:var(--ink-2)}

.ws-head{max-width:640px;margin-bottom:clamp(32px,3.6vw,56px)}
.ws-head .lede{margin-top:14px}
.ws-scroll{display:grid;gap:0}
.ws-stage{display:none}
.ws-steps{list-style:none;margin:0;padding:0;border-top:1px solid rgba(246,243,237,.2)}
.ws-step{position:relative;padding:24px 0 28px;border-bottom:1px solid rgba(246,243,237,.12)}
.ws-n{display:flex;align-items:baseline;gap:6px;margin-bottom:12px;font:600 13px/1 var(--body);letter-spacing:.08em;color:rgba(246,243,237,.5)}
.ws-n b{font:640 15px/1 var(--head);color:#EC7A53;letter-spacing:.02em}
.ws-step h3{font-size:clamp(26px,2.4vw,36px);line-height:1.08;letter-spacing:-.025em;margin-bottom:10px}
.ws-step p{font-size:17px;line-height:1.55;color:rgba(246,243,237,.76);max-width:42ch}
.ws-step .link-arrow{margin-top:18px}
.ws-inl{margin-top:18px;aspect-ratio:16/10;border-radius:var(--r);overflow:hidden}
.ws-inl img{width:100%;height:100%;object-fit:cover}
@media(min-width:1024px){
  
  .ws-scroll{--st:min(68vh,600px);grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(48px,6vw,112px);align-items:start}
  .ws-stage{display:grid;grid-template-columns:minmax(0,1fr) 3px;gap:22px;position:sticky;top:max(calc(var(--header) + 24px),calc(50vh - var(--st) / 2 + var(--header) / 2));height:var(--st)}
  .ws-stack{position:relative;border-radius:var(--r);overflow:hidden;background:#211E1B}
  
  .ws-shot{position:absolute;inset:0;margin:0;z-index:1;clip-path:inset(100% 0 0 0);transition:clip-path 0s .8s}
  .ws-shot:first-child{clip-path:inset(0)}
  .ws-shot img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform .9s var(--ease)}
  .ws-shot.is-on{z-index:2;clip-path:inset(0);transition:clip-path .75s var(--ease-io)}
  .ws-shot.is-on img{transform:none}
  .ws-shot figcaption{position:absolute;left:20px;right:20px;bottom:18px;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6)}
  .ws-shot figcaption::before{content:"";width:18px;height:1.5px;background:#EC7A53}
  .ws-shot::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.45),rgba(0,0,0,0) 35%);pointer-events:none}
  .ws-prog{background:rgba(246,243,237,.14);border-radius:3px;overflow:hidden}
  .ws-prog span{display:block;height:100%;background:#EC7A53;transform:scaleY(.25);transform-origin:top;transition:transform .5s var(--ease)}
  
  @supports (animation-timeline: view()) and (timeline-scope: --a){
    .ws-scroll{timeline-scope:--ws}
    .ws-steps{view-timeline:--ws block}
    .ws-prog span{transition:none;animation:wsProg linear both;animation-timeline:--ws;animation-range:contain 0% contain 100%}
  }
  .ws-steps{border-top:0;padding-block:calc(var(--st) * .18) calc(var(--st) * .32)}
  .ws-step{padding:clamp(28px,3vw,44px) 0 clamp(28px,3vw,44px) 32px;border-bottom:0;border-left:1px solid rgba(246,243,237,.14);opacity:.5;transition:opacity .4s var(--ease)}
  .ws-step::before{content:"";position:absolute;left:-1px;top:0;bottom:0;width:2px;background:#EC7A53;transform:scaleY(0);transform-origin:top;transition:transform .5s var(--ease)}
  .ws-step.is-on{opacity:1}
  .ws-step.is-on::before{transform:none}
  .ws-inl{display:none}
}
@keyframes wsProg{from{transform:scaleY(.08)}to{transform:scaleY(1)}}
@media(prefers-reduced-motion:reduce){.ws-shot,.ws-shot.is-on,.ws-shot img,.ws-step,.ws-step::before{transition:none}}

.svc-index{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.svc-panel{position:relative;display:block;overflow:hidden;border-radius:var(--r);color:#fff;text-decoration:none;background:#211E1B;min-height:320px;isolation:isolate}
.svc-img{position:absolute;inset:0;z-index:-1}
.svc-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.svc-img::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,16,14,.88) 0%,rgba(18,16,14,.35) 55%,rgba(18,16,14,.15) 100%);transition:background-color .4s var(--ease)}
.svc-body{position:absolute;left:0;right:0;bottom:0;display:grid;gap:8px;padding:clamp(20px,2.2vw,32px)}
.svc-n{font:640 13px/1 var(--head);letter-spacing:.08em;color:#EC7A53}
.svc-name{font:640 clamp(30px,2.8vw,46px)/1 var(--head);letter-spacing:-.035em}
.svc-text{font-size:16px;line-height:1.5;color:rgba(255,255,255,.84);max-width:40ch}
.svc-go{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-weight:700;color:#fff}
.svc-go .ic{width:18px;height:18px;color:#EC7A53;transition:transform .3s var(--ease)}
.svc-panel:hover .svc-img img,.svc-panel:focus-visible .svc-img img{transform:scale(1.04)}
.svc-panel:hover .svc-go .ic,.svc-panel:focus-visible .svc-go .ic{transform:translateX(4px)}
.svc-panel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--red);transform:scaleY(0);transform-origin:bottom;transition:transform .45s var(--ease);z-index:2}
.svc-panel:hover::before,.svc-panel:focus-visible::before{transform:none}
@media(min-width:1024px){
  .svc-index{display:flex;gap:14px;height:clamp(460px,38vw,560px)}
  .svc-index li{flex:1;min-width:0;transition:flex-grow .6s var(--ease)}
  .svc-index:hover li,.svc-index:focus-within li{flex-grow:.8}
  .svc-index li:hover,.svc-index li:focus-within{flex-grow:1.9}
  .svc-panel{height:100%;min-height:0}
  .svc-text,.svc-go{opacity:0;transform:translateY(10px);transition:opacity .4s var(--ease),transform .5s var(--ease)}
  .svc-index:not(:hover):not(:focus-within) li:first-child .svc-text,.svc-index:not(:hover):not(:focus-within) li:first-child .svc-go,
  .svc-panel:hover .svc-text,.svc-panel:hover .svc-go,.svc-panel:focus-visible .svc-text,.svc-panel:focus-visible .svc-go{opacity:1;transform:none}
  .svc-index:not(:hover):not(:focus-within) li:first-child{flex-grow:1.6}
}
@media(prefers-reduced-motion:reduce){.svc-index li,.svc-text,.svc-go{transition:none}}

.sr-grid{display:grid;gap:36px}
@media(min-width:1024px){.sr-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(48px,5vw,96px);align-items:start}}
.sr-mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(8px,1vw,14px)}
.sr-mosaic figure{margin:0;border-radius:var(--r);overflow:hidden;--curtain:#E7E0D4}
.sr-mosaic img{width:100%;height:100%;object-fit:cover}
.sr-a{grid-column:1/span 7;grid-row:1/span 2;aspect-ratio:4/5}
.sr-b{grid-column:8/span 5;aspect-ratio:1}
.sr-c{grid-column:8/span 5;aspect-ratio:1}
.sr-cap{grid-column:1/-1;font-size:14px;color:var(--ink-2);margin-top:4px}
.sr-side .visit-reasons{margin-top:0}
.sr-side .visit-card{margin-top:26px;grid-template-columns:1fr!important}

.cta3-link-d{color:var(--ink)}
.cta3-link-d .ic{color:var(--red)}
.sr-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;margin-top:22px}

.drift img{scale:1.08}
@supports (animation-timeline: view()){
  @media(prefers-reduced-motion:no-preference) and (min-width:1024px){
    .drift img{animation:drift linear both;animation-timeline:view();animation-range:cover}
    .bespoke .style-inset{animation:insetDepth linear both;animation-timeline:view();animation-range:cover}
  }
  @media(prefers-reduced-motion:no-preference){
    .mat-reveal{animation:matReveal linear both;animation-timeline:view();animation-range:entry 0% cover 42%}
    .mat-reveal img.is-on{animation:matSettle linear both;animation-timeline:view();animation-range:entry 0% cover 42%}
  }
}
@keyframes drift{from{translate:0 -3%}to{translate:0 3%}}
@keyframes insetDepth{from{translate:0 36px}to{translate:0 -36px}}
@keyframes matReveal{from{clip-path:inset(0 0 26% 0)}to{clip-path:inset(0)}}
@keyframes matSettle{from{scale:1.1}to{scale:1}}



:root{
  --vein:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='1000' preserveAspectRatio='none'%3E%3Cfilter id='v'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.0022 .011' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 .42 0 0 0 0 .37 0 0 0 0 .31 0 0 0 -1.8 .95'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23v)'/%3E%3C/svg%3E");
  --window:linear-gradient(118deg,rgba(255,253,248,0) 0 18%,rgba(255,253,248,.38) 26%,rgba(255,253,248,0) 36%,rgba(255,253,248,0) 52%,rgba(255,253,248,.24) 60%,rgba(255,253,248,0) 70%);
}

.surf-stone{background:#E6DED1}
.surf-stone::after{background:
  var(--window),
  radial-gradient(90% 80% at 100% 100%,rgba(120,100,80,.12),rgba(120,100,80,0) 60%),
  var(--vein) center/cover no-repeat;opacity:.6}
.surf-plaster::after{background:
  radial-gradient(70% 60% at 85% 0%,rgba(255,255,255,.75),rgba(255,255,255,0) 70%),
  linear-gradient(180deg,rgba(255,255,255,0) 60%,rgba(120,100,80,.05))}
.surf-grain{background:#EDE7DE}
.surf-grain::after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:var(--window),var(--vein) center/cover no-repeat;opacity:.45}


.sf-photo{position:absolute;inset:0;z-index:-3;overflow:hidden;pointer-events:none}
.sf-photo img{width:100%;height:100%;object-fit:cover;opacity:.2;filter:grayscale(.55) contrast(1.1)}
.sf-photo::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,var(--sf-bg,#151311) 8%,rgba(21,19,17,.86) 42%,rgba(21,19,17,.6) 100%),
  linear-gradient(0deg,var(--sf-bg,#151311),rgba(21,19,17,0) 40%),
  linear-gradient(180deg,var(--sf-bg,#151311),rgba(21,19,17,0) 30%)}
.sf-photo-r::after{background:
  linear-gradient(270deg,var(--sf-bg,#151311) 8%,rgba(21,19,17,.86) 42%,rgba(21,19,17,.6) 100%),
  linear-gradient(0deg,var(--sf-bg,#151311),rgba(21,19,17,0) 40%),
  linear-gradient(180deg,var(--sf-bg,#151311),rgba(21,19,17,0) 30%)}
.sf-ember{--sf-bg:#17110E}
.sf-char{--sf-bg:#151311}
.sf-dstone{--sf-bg:#181716}

.sf-frame{position:absolute;inset:clamp(16px,2vw,28px) var(--inset);z-index:-1;pointer-events:none;border-top:1px solid rgba(246,243,237,.08);border-bottom:1px solid rgba(246,243,237,.08)}
.sf-frame::before{content:"";position:absolute;left:0;top:-1px;width:56px;height:1px;background:#EC7A53}


.amb{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.amb span{position:absolute;border-radius:50%}

.amb span:nth-child(1){width:min(88vw,1400px);aspect-ratio:1.4;left:-26%;bottom:-58%;background:radial-gradient(closest-side,rgba(206,96,48,.34),rgba(196,84,46,.12) 48%,rgba(196,84,46,0) 74%);opacity:.9}

.amb span:nth-child(2){width:min(56vw,900px);aspect-ratio:1;right:-16%;top:-52%;background:radial-gradient(closest-side,rgba(240,176,143,.12),rgba(240,176,143,0));opacity:.8}

.amb::before{content:"";position:absolute;width:min(40vw,640px);aspect-ratio:1.6;left:4%;bottom:-24%;border-radius:50%;background:radial-gradient(closest-side,rgba(236,122,83,.22),rgba(236,122,83,0));opacity:.6}
@media(prefers-reduced-motion:no-preference) and (min-width:900px){
  .amb span:nth-child(1){animation:ember1 24s ease-in-out infinite alternate paused}
  .amb span:nth-child(2){animation:ember2 19s ease-in-out infinite alternate paused}
  .amb::before{animation:ember3 7.5s ease-in-out infinite alternate paused}
  .amb.is-vis span,.amb.is-vis::before{animation-play-state:running}
}
@keyframes ember1{0%{transform:translate3d(0,0,0) scale(1);opacity:.78}50%{opacity:1}100%{transform:translate3d(6%,-4%,0) scale(1.08);opacity:.86}}
@keyframes ember2{0%{transform:translate3d(0,0,0);opacity:.55}100%{transform:translate3d(-7%,5%,0);opacity:.95}}
@keyframes ember3{0%{opacity:.42;transform:scale(1)}35%{opacity:.7}62%{opacity:.5}100%{opacity:.78;transform:scale(1.06)}}



@media(min-width:1024px){
  .routes{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto auto;column-gap:clamp(24px,2.4vw,40px);row-gap:clamp(20px,2vw,32px)}
  .route-lead{grid-row:1/span 2}
  .route-lead .route-media{aspect-ratio:auto;flex:1;min-height:0}
  .route-lead .route-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,17,16,.86) 0%,rgba(18,17,16,.45) 30%,rgba(18,17,16,0) 56%);pointer-events:none}
  .route-lead .route-body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:30px 32px 28px;border:0;color:var(--ivory)}
  .route-lead .route-body::after{left:32px;right:32px;bottom:0}
  .route-lead .route-num{color:#EC7A53}
  .route-lead .route-title{font-size:clamp(32px,3vw,48px);line-height:1.02;letter-spacing:-.035em;min-height:0}
  .route-lead .route-text{color:rgba(246,243,237,.84);font-size:16px}
  .route-lead .route-arrow{border-color:rgba(246,243,237,.45);color:var(--ivory);width:52px;height:52px}
  .route:not(.route-lead) .route-media{aspect-ratio:16/6.2}
  .route:not(.route-lead) .route-body{padding:16px 0 14px}
  .route:not(.route-lead) .route-title{min-height:0}
  .route:not(.route-lead) .rt{display:inline}
}


@media(min-width:1024px){
  .bespoke .style-frame{aspect-ratio:5/3}
  .bespoke .style-stage::before{content:"";position:absolute;z-index:-1;left:-28px;top:-28px;width:62%;height:70%;border-top:1px solid rgba(34,32,30,.28);border-left:1px solid rgba(34,32,30,.28);pointer-events:none}
  .bespoke .style-stage::after{content:"";position:absolute;z-index:3;left:-28px;top:-29px;width:56px;height:2px;background:var(--red);pointer-events:none}
}


.fires .explorer-frame{box-shadow:0 40px 80px -50px rgba(0,0,0,.9)}
@media(min-width:1024px){.fires .explorer-frame{min-height:clamp(480px,38vw,620px)}}



.save-btn::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:2px solid var(--red);opacity:0;pointer-events:none}
.save-btn[aria-pressed=true].is-pop::after{animation:ring .6s var(--ease) both}
@keyframes ring{from{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}


.reviews [data-reviews]{min-height:300px}
@media(max-width:767px){.reviews [data-reviews]{min-height:420px}}


.cta3 .amb span:nth-child(1){left:-30%;bottom:-80%}


img.img-whole{object-fit:contain!important;object-position:50% 50%!important;background:#1d1a17}