@font-face{font-family:Antonio;src:url('assets/antonio-bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-semibold.ttf') format('truetype');font-weight:600 800;font-display:swap}
:root{color-scheme:dark;--black:#000;--surface:#000;--white:#f6f6f3;--orange:#ff5c00;--muted:#a0a09e;--pad:clamp(24px,4vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:#454545 #000}body{margin:0;background:var(--black);color:var(--white);font-family:Montserrat,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--orange);outline-offset:6px}button{cursor:pointer}button:active,.button:active{transform:translateY(1px)}.skip{position:fixed;left:24px;top:-100px;z-index:20;background:var(--orange);color:#000;padding:16px}.skip:focus{top:16px}

.destination-inner{width:min(1150px,100%);margin:auto}.destination .eyebrow{color:#b0b0a8;display:flex;align-items:center;gap:12px}.tick{width:7px;height:7px;background:var(--orange);display:inline-block}.destination h2{font-size:clamp(44px,5.5vw,88px);font-weight:600;letter-spacing:-.065em;line-height:1.08;margin:32px 0 55px}.destination h2 span{color:#81817a}.destination-body{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;border-top:1px solid #323330;padding-top:30px}.section-index{font-size:10px;letter-spacing:.12em;color:var(--orange)}.destination-body p{font-size:clamp(16px,1.6vw,23px);letter-spacing:-.025em;line-height:1.65;margin:0 0 20px;max-width:46ch}.destination-body .muted{font-size:13px;line-height:1.8;color:var(--muted)}.text-link{font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:30px;margin-top:10px}.text-link span{color:var(--orange);font-size:20px}

.process-section{padding:130px var(--pad) 40px;background:transparent;scroll-margin-top:40px}.process-heading{max-width:1150px;margin:0 auto 70px}.process-heading .eyebrow{color:var(--orange)}.process-heading h2{font-size:clamp(36px,4.5vw,66px);letter-spacing:-.055em;line-height:1.15;margin:20px 0}.process-rows,.end-row{max-width:1150px;margin:0 auto}.process-rows article{padding:32px 0;border-top:1px solid #30312e;display:grid;grid-template-columns:60px 1fr 1.2fr;gap:32px;align-items:baseline}.process-rows article>span{color:var(--orange);font-size:12px}.process-rows h3{font-size:27px;font-weight:600;letter-spacing:-.04em;margin:0}.process-rows p{font-size:14px;line-height:1.8;color:#b4b4ad;margin:0;max-width:50ch}.end-row{margin-top:50px;padding:35px 0;display:flex;justify-content:space-between;gap:25px;align-items:center}

/* Halftone footer, adapted from the component supplied by the user. */
.hwf-root{position:relative;width:100%;overflow:hidden;isolation:isolate;background:var(--surface);color:#e9e4da}
.hwf-art{position:relative;height:clamp(260px,31vw,590px);overflow:hidden}
.hwf-root .hwf-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;max-width:none;touch-action:pan-y}
.hwf-top{position:relative;z-index:1;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;padding:45px var(--pad) 0;font-family:Montserrat,Arial,sans-serif;font-size:10px;letter-spacing:.12em;text-transform:uppercase;line-height:1.9}
.hwf-brand strong{display:block;font-size:12px;font-weight:600;letter-spacing:.14em;margin-bottom:5px}.hwf-brand>span{display:block;color:#999b93;letter-spacing:.08em;font-size:9px}
.hwf-top .hwf-col{display:block;font-size:10px;font-weight:400}.hwf-col h3{font:inherit;color:#85877f;margin:0 0 5px}.hwf-col ul{list-style:none;margin:0;padding:0}.hwf-col a,.hwf-up{color:inherit;text-decoration:none;opacity:.8;background:none;border:0;padding:0;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background-image:linear-gradient(currentColor,currentColor);background-size:0% 1px;background-repeat:no-repeat;background-position:0 100%;transition:opacity .25s ease,background-size .35s cubic-bezier(.2,.7,.1,1)}
.hwf-col a:hover,.hwf-up:hover{opacity:1;background-size:100% 1px;color:#ff5c00}.hwf-col a:focus-visible,.hwf-up:focus-visible{outline:1px solid #ff5c00;outline-offset:4px;opacity:1}
.hwf-rule{position:relative;z-index:1;display:flex;justify-content:flex-end;align-items:center;gap:16px;margin:30px var(--pad) 0;padding:15px 0 22px;border-top:1px solid #30312d;font-size:9px;letter-spacing:.17em;text-transform:uppercase}.hwf-up{min-height:28px}.hwf-up span{margin-left:8px;color:#ff5c00}
.hwf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hwf-fallback{display:none;position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font-size:30vw;font-weight:600;letter-spacing:-.06em;line-height:1}.hwf-unavailable .hwf-fallback{display:block}
@media(max-width:720px){.hwf-art{height:clamp(180px,40vw,290px)}.hwf-top{grid-template-columns:1fr 1fr;row-gap:18px;padding-top:28px;font-size:9px}.hwf-brand{grid-column:1/-1}.hwf-brand strong{font-size:11px}.hwf-brand>span{font-size:8px}.hwf-top .hwf-col{font-size:8px;letter-spacing:.08em}.hwf-rule{margin-top:23px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.hwf-col a,.hwf-up{transition:none}}

/* Compact navigation beside the supplied brand mark. */
.header-start{position:relative;display:flex;align-items:center;gap:8px}
.header .wordmark{display:flex;align-items:center;line-height:1}
.wordmark img{display:block;width:106px;height:44px;object-fit:contain}
.menu-toggle{width:44px;height:44px;flex-shrink:0;align-self:center;transform:translateY(6px);border:0;background:transparent;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px;color:#a9aca9}
.menu-toggle span{display:block;width:19px;height:1.5px;background:currentColor;transition:transform .2s,opacity .2s}
.menu-toggle:hover{color:var(--orange)}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
.header .section-menu{position:absolute;left:114px;top:calc(100% + 20px);width:280px;max-width:calc(100vw - var(--pad) * 2);display:flex;flex-direction:column;gap:0;background:#181a19;border:1px solid #363835;padding:10px;box-shadow:0 18px 50px #0006;font-size:12px;font-weight:400}
.section-menu[hidden]{display:none!important}
.section-menu a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 14px;border-bottom:1px solid #30322f}
.section-menu a:last-child{border-bottom:0}
.section-menu a span{color:var(--orange)}
.section-menu a:hover{background:#ffffff06}
@media(max-width:700px){.header-start{gap:6px}.wordmark img{width:91px;height:38px}.menu-toggle{transform:translateY(5px)}.header .section-menu{left:0;top:calc(100% + 14px)}}
@media(prefers-reduced-motion:reduce){.menu-toggle span{transition:none}}

/* Glass X hero — normal document flow, with light framing the content. */
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:100svh;padding:108px var(--pad) 100px;background:transparent;text-align:center}
.header{position:absolute;z-index:8;top:0;left:var(--pad);right:var(--pad);height:92px;display:flex;align-items:center;justify-content:space-between}
.header-contact{display:flex;align-items:center;gap:22px;padding:12px 20px;border:1px solid #ffffff24;border-radius:30px;font-size:12px}.header-contact span{color:var(--orange);font-size:18px}.header-contact:hover{border-color:var(--orange)}
nav{display:flex;gap:40px;font-size:12px}nav a:hover,.text-link:hover{color:var(--orange)}
.hero-atmosphere{position:absolute;z-index:-2;inset:0;background:radial-gradient(ellipse at 50% 33%,#ff5c0010,transparent 37%)}
.hero-atmosphere:after{content:'';position:absolute;top:90px;left:15%;right:15%;height:430px;background-image:radial-gradient(#ff9d5738 .7px,transparent .9px);background-size:7px 7px;mask-image:radial-gradient(ellipse,#000 5%,transparent 68%);opacity:.6}
.hero-arcs{position:absolute;z-index:-1;inset:0;width:100%;height:100%;pointer-events:none}
.hero-content{position:relative;max-width:1100px;margin:auto}.brand-sculpture{position:relative;width:clamp(230px,29vw,400px);aspect-ratio:1;margin:-28px auto 10px;isolation:isolate}.brand-sculpture img{position:relative;display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:screen}.brand-orbit{position:absolute;inset:2%;border:1px solid #ffb27c30;border-radius:50%;box-shadow:-30px 0 55px -46px #ff9c58,30px 0 55px -46px #ff9c58}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:.21em;line-height:1.6;margin:0 0 20px}.hero .eyebrow{color:#e1c1ac;font-size:12px;letter-spacing:.2em}.hero h1{margin:0;font-size:clamp(36px,4.8vw,73px);font-weight:600;letter-spacing:-.065em;line-height:1.12;text-wrap:balance}.hero h1 span{color:#ff8b45}.hero-description{max-width:720px;margin:25px auto 28px;color:#d0cdc9;font-size:17px;line-height:1.8;letter-spacing:-.025em}.hero-actions{display:flex;justify-content:center;align-items:center;gap:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:51px;padding:14px 24px;border:1px solid #ffb38070;border-radius:40px;background:linear-gradient(115deg,#ff994d,#ff5c00 75%);color:#140900;font-size:12px;font-weight:600;box-shadow:0 4px 35px #ff5c0015;transition:filter .2s,transform .2s}.button:hover{filter:brightness(1.12)}.button span{font-size:20px}.hero-secondary{font-size:12px;display:flex;gap:12px;align-items:center}.hero-secondary span{color:#ff9a59}.hero-secondary:hover{color:#ff9a59}.scroll-hint{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;font-size:8px;letter-spacing:.18em;color:#b4aaa4}.scroll-hint span{font-size:19px;color:#ff9a59}
.destination{position:relative;background:transparent;padding:115px var(--pad) 80px;scroll-margin-top:20px}.destination-inner{max-width:1150px;margin:auto}.tick{width:6px;height:6px;background:var(--orange);display:inline-block}.destination .eyebrow{color:#b4aaa0}.destination h2{font-size:clamp(38px,5.5vw,78px);font-weight:600;letter-spacing:-.065em;line-height:1.1;margin:28px 0 48px}.destination h2 span{color:#81817a}
@media(min-width:1600px){.hero{padding-top:130px;padding-bottom:130px}.brand-sculpture{width:440px;margin-bottom:20px}}
@media(max-width:700px){.hero{padding:110px 24px 110px;min-height:850px}.header{height:83px}.header-contact{padding:10px 14px;font-size:11px;gap:14px}.brand-sculpture{width:min(76vw,310px);margin:-20px auto 22px}.hero h1{font-size:clamp(34px,8.5vw,52px);letter-spacing:-.06em}.hero .eyebrow{font-size:10px;letter-spacing:.16em}.hero-description{font-size:15px;margin:22px auto 26px;max-width:360px}.desktop-break{display:none}.hero-actions{flex-direction:column;gap:22px}.hero-arcs{width:180%;left:-40%;opacity:.85}.destination{padding:80px 24px 40px}.destination-body{grid-template-columns:1fr;gap:22px}.process-section{padding:75px 24px 30px}.process-rows article{grid-template-columns:26px 1fr;gap:16px}.process-rows p{grid-column:2}.process-rows h3{font-size:24px}.process-heading{margin-bottom:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.process-rows article:hover h3{transform:none}}
.brand-sculpture{isolation:auto;mix-blend-mode:screen}
@media(min-width:701px) and (max-height:850px){.hero{padding-top:95px;padding-bottom:95px}.brand-sculpture{width:min(34svh,300px);margin:-12px auto 14px}.hero h1{font-size:clamp(38px,4.3vw,65px)}.hero-description{margin:20px auto 23px}.hero .eyebrow{margin-bottom:17px}}

/* A single light field spans the hero and content, without a section seam. */
main{--hero-height:max(100svh,780px);background:radial-gradient(ellipse 58vw 620px at 50% var(--hero-height),#ff5c001c,transparent 100%),#000}
.hero{min-height:var(--hero-height)}
@media(max-width:700px){main{--hero-height:max(100svh,850px);background:radial-gradient(ellipse 95vw 650px at 50% var(--hero-height),#ff5c001c,transparent 100%),#000}}
.hero-arcs{mask-image:linear-gradient(#000 94%,transparent 100%)}
/* Compact brand capsule, matching the reference navigation. */
.header .wordmark{justify-content:center;padding:10px 20px;border:1px solid #ffffff26;border-radius:999px;background:linear-gradient(145deg,#ffffff06,transparent 70%);box-shadow:inset 0 1px 0 #ffffff08;min-height:51px;transition:border-color .2s}
.header .wordmark:hover{border-color:#ffffff50}
.header .wordmark img{width:82px;height:30px}
.header-start{gap:12px}
.menu-toggle{transform:none}
.header .section-menu{left:0}
@media(max-width:700px){.header .wordmark{padding:9px 16px;min-height:45px}.header .wordmark img{width:73px;height:26px}.header-start{gap:5px}.menu-toggle{transform:none}}
/* Shared framing and optical alignment for the brand and dropdown. */
.header-start{--frame-border:#ffffff26;--frame-fill:linear-gradient(145deg,#ffffff06,transparent 70%);align-items:center}
.header .wordmark{height:51px;min-height:0;padding:0 22px;border-color:var(--frame-border);background:var(--frame-fill)}
.header .wordmark img{width:75px;height:auto;transform:translateY(-1.5px)}
.header .section-menu{top:calc(100% + 14px);border:1px solid var(--frame-border);border-radius:24px;background:var(--frame-fill),#070707;box-shadow:inset 0 1px 0 #ffffff08,0 18px 50px #0009;padding:10px;overflow:hidden;text-align:left}
.section-menu a{padding:16px;border-bottom-color:#ffffff12}
.section-menu a:first-child{border-radius:15px 15px 0 0}
.section-menu a:last-child{border-radius:0 0 15px 15px}
@media(max-width:700px){.header .wordmark{height:45px;padding:0 19px}.header .wordmark img{width:67px;height:auto;transform:translateY(-1.25px)}}

/* Reference lighting: irregular point field, curved rim and a fine neon core. */
.hero-atmosphere{background:radial-gradient(ellipse at 50% 28%,#ff640014,transparent 48%)}
.hero-atmosphere:after{top:52px;left:0;right:0;height:460px;background:url('assets/hero-particles.svg') center center / min(1200px,110vw) 100% no-repeat;opacity:.95;mask-image:radial-gradient(ellipse 58% 53% at 50% 42%,#000 35%,transparent 100%)}
.brand-sculpture{isolation:isolate;mix-blend-mode:normal}
.brand-sculpture img{mix-blend-mode:screen;mask-image:radial-gradient(ellipse,#000 43%,transparent 72%)}
.brand-orbit{inset:0;border:1px solid #ff7b3659;box-shadow:none;background:none}
.brand-orbit:before{content:'';position:absolute;inset:-1px;border-radius:50%;background:conic-gradient(from 0deg,transparent 55deg,#ff7a26 75deg,#ffad64 90deg,#ff5c00 105deg,transparent 125deg,transparent 235deg,#ff7a26 255deg,#ffad64 270deg,#ff5c00 285deg,transparent 305deg);mask-image:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1px));filter:drop-shadow(0 0 4px #ff741f);width:auto;height:auto;top:-1px;left:-1px;transform:none;box-shadow:none}
.brand-orbit:after{content:'';position:absolute;inset:-24%;width:auto;height:auto;top:-24%;right:-24%;transform:none;border-radius:50%;background:radial-gradient(ellipse 12% 28% at 17% 50%,#ff5c00c0,#ff5c0055 35%,transparent 75%),radial-gradient(ellipse 12% 28% at 83% 50%,#ff5c00c0,#ff5c0055 35%,transparent 75%);filter:blur(9px);box-shadow:none;z-index:-1}
.arc-glow{opacity:.75;filter:url(#glow)}
@media(max-width:700px){.hero-atmosphere:after{left:-40%;right:-40%;top:75px;height:390px;background-size:auto 100%}.brand-orbit:after{filter:blur(8px)}}
.hero-atmosphere:after{filter:brightness(2.4);opacity:1}
.brand-orbit:after{filter:blur(8px)}

/* Subtle shared light preserves continuity against a predominantly black field. */
main{background:radial-gradient(ellipse 60vw 650px at 50% var(--hero-height),#ff5c0012,transparent 100%),#000}
.hero-atmosphere{background:radial-gradient(ellipse at 50% 28%,#ff64000e,transparent 45%);mask-image:linear-gradient(#000 55%,transparent 100%)}
.arc-glow{opacity:.95}
.hero-arcs g>path:last-child{filter:drop-shadow(0 0 3px #ff7a20) drop-shadow(0 0 7px #ff5c0080)}
@media(max-width:700px){main{background:radial-gradient(ellipse 95vw 700px at 50% var(--hero-height),#ff5c0012,transparent 100%),#000}}

/* Direct relationship with the two people behind REXAI. */
.about-section{padding:100px var(--pad);scroll-margin-top:35px}
.about-inner{max-width:1150px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid #ffffff20;padding-top:55px}
.about-heading .eyebrow{color:var(--orange)}
.about-heading h2{font-size:clamp(36px,4.1vw,62px);font-weight:600;line-height:1.12;letter-spacing:-.055em;margin:25px 0}
.about-heading h2 span{color:#92928c}
.about-copy>p{color:#aaa9a3;font-size:14px;line-height:1.85;margin:0 0 22px}
.about-copy .about-lead{color:var(--white);font-size:clamp(18px,1.6vw,23px);line-height:1.6;letter-spacing:-.025em}
.about-people{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;padding:26px 0;margin:30px 0}
.about-people h3{font-size:21px;font-weight:600;letter-spacing:-.035em;margin:0 0 10px;color:#ff8b45}
.about-people p{font-size:12px;color:#aaa9a3;line-height:1.8;margin:0}
@media(max-width:700px){.about-section{padding:70px 24px 30px}.about-inner{grid-template-columns:1fr;gap:12px;padding-top:35px}.about-heading h2{font-size:38px}.about-people{gap:22px}.about-copy>p{font-size:13px}.about-copy .about-lead{font-size:18px}}

/* Keep the light arcs from competing with the hero description. */
.hero-description{position:relative;isolation:isolate;color:#e2dfdb;text-shadow:0 1px 8px #000}
.hero-description:before{content:'';position:absolute;z-index:-1;inset:-22px -40px;pointer-events:none;background:radial-gradient(ellipse at center,#000 30%,#000e 55%,transparent 75%)}
@media(max-width:700px){.hero-description:before{inset:-18px -24px}}

/* Match the visibility of the hero's consultancy label. */
.scroll-hint{font-size:8px;font-weight:600;letter-spacing:.18em;color:#e1c1ac;text-shadow:0 1px 8px #000}
.scroll-hint span{font-size:19px;color:#ff9a59}

/* Portrait fills the left-hand space beside the introduction. */
.destination-body{align-items:start}
.destination-portrait{margin:0;width:100%}
.destination-portrait img{display:block;width:100%;height:auto;border-radius:12px}
@media(max-width:700px){.destination-portrait{max-width:400px;margin-inline:auto}}

/* Method and workshop image share one balanced layout. */
.process-layout{max-width:1150px;margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:start}
.process-details{min-width:0}
.process-layout .process-rows article{grid-template-columns:35px 1fr;gap:14px 20px;padding:28px 0}
.process-layout .process-rows p{grid-column:2}
.process-layout .end-row{margin-top:15px;padding:20px 0}
.process-photo{margin:0}
.process-photo img{display:block;width:100%;height:auto;border-radius:12px}
@media(max-width:700px){.process-layout{grid-template-columns:1fr;gap:30px}.process-photo{width:100%;max-width:400px;margin-inline:auto}.process-layout .process-rows article{grid-template-columns:26px 1fr;gap:16px}}

.os-showcase{margin-top:38px;border:1px solid #34393c;border-radius:12px;overflow:hidden;background:#0f1112}
.os-showcase-heading{padding:16px;display:flex;gap:14px;align-items:center;justify-content:space-between;border-bottom:1px solid #34393c}
.os-showcase-heading h3{font-size:12px;line-height:1.5;font-weight:600;margin:0}
.os-showcase-heading a{font-size:10px;white-space:nowrap;color:#ffab77}
.os-showcase iframe{width:100%;height:540px;display:block;border:0}
@media(max-width:700px){.os-showcase iframe{height:590px}.os-showcase-heading{flex-wrap:wrap}}

/* Keep the message and actions comfortably inside desktop viewports. */
@media(min-width:701px){
  .hero{padding-top:100px;padding-bottom:95px}
  .brand-sculpture{width:clamp(230px,32svh,350px);margin:-12px auto 12px}
  .hero .eyebrow{margin-bottom:18px}
  .hero-description{margin-top:20px;margin-bottom:23px}
}
@media(min-width:701px) and (max-height:750px){
  .hero{padding-top:90px}
  .brand-sculpture{width:clamp(180px,29svh,230px);margin-bottom:8px}
  .hero h1{font-size:clamp(36px,4vw,58px)}
}

/* Everyday business situations, expressed as an editorial map. */
.friction-section{padding:110px var(--pad) 80px}
.friction-inner{max-width:1150px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.friction-section .eyebrow{color:#e1c1ac;font-size:10px;letter-spacing:.2em}
.friction-copy h2{font-size:clamp(34px,3.6vw,54px);font-weight:600;line-height:1.12;letter-spacing:-.05em;margin:26px 0}
.friction-copy h2 span{color:#ff8b45}
.friction-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;color:#aaa9a3;max-width:42ch}
.friction-copy .friction-note{border-left:2px solid #ff5c00;padding-left:20px;margin-top:32px;color:#e2dfdb!important}
.friction-map{display:grid;grid-template-columns:1fr 1fr;gap:16px;position:relative}
.friction-map:before{content:'';position:absolute;inset:10% -8%;background:radial-gradient(ellipse,#ff5c0014,transparent 70%);z-index:-1;pointer-events:none}
.friction-card{padding:25px 22px;background:linear-gradient(140deg,#191714,#0b0b0b);border:1px solid #ffffff1a;border-radius:14px}
.friction-card:nth-child(even){transform:translateY(26px)}
.friction-card-label{font-size:8px;letter-spacing:.17em;color:#c2aaa0;margin:0 0 23px}
.friction-card h3{font-size:clamp(18px,1.65vw,24px);font-weight:600;line-height:1.3;letter-spacing:-.035em;margin:0 0 17px}
.friction-card>p:not(.friction-card-label){font-size:11px;line-height:1.8;color:#aaa9a3;margin:0 0 22px}
.friction-tag{display:inline-block;font-size:9px;line-height:1.6;padding:5px 9px;border:1px solid #ff8b4530;border-radius:6px;color:#ffab77;background:#ff5c0008}
.friction-map-footer{grid-column:1/-1;font-size:10px;color:#aaa9a3;line-height:1.7;margin:34px 0 0;display:flex;align-items:center;gap:12px}
.friction-map-footer>span{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#ff5c00}
@media(max-width:700px){.friction-section{padding:75px 24px 40px}.friction-inner{grid-template-columns:1fr;gap:30px}.friction-copy h2{font-size:38px}.friction-map{gap:12px}.friction-card{padding:20px 15px}.friction-card h3{font-size:18px}.friction-card:nth-child(even){transform:translateY(16px)}.friction-map-footer{margin-top:22px}}

/* Shared introduction above an aligned image-and-cards row. */
.friction-inner{gap:40px 60px;align-items:stretch}
.friction-copy{grid-column:1/-1;display:grid;grid-template-columns:.9fr 1.1fr;gap:0 60px;align-items:start}
.friction-copy .eyebrow{grid-column:1/-1;margin-bottom:20px}
.friction-copy h2{grid-column:1;grid-row:2/4;margin:0;font-size:clamp(34px,3.2vw,48px)}
.friction-copy>p:not(.eyebrow){grid-column:2;max-width:52ch;margin:0;line-height:1.8}
.friction-copy .friction-note{margin-top:22px!important}
.friction-photo{margin:0;min-height:0}
.friction-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:14px}
.friction-map{margin:0;grid-template-rows:1fr 1fr auto;gap:16px}
.friction-card{padding:20px}
.friction-card:nth-child(even){transform:none}
.friction-card-label{margin-bottom:16px}
.friction-card h3{font-size:clamp(18px,1.45vw,22px);margin-bottom:12px}
.friction-card>p:not(.friction-card-label){margin-bottom:16px}
.friction-map-footer{font-size:14px;font-weight:600;color:#e1c1ac;line-height:1.65;margin:6px 0 0;padding-top:18px;border-top:1px solid #ffffff20;align-self:end}
@media(max-width:700px){.friction-inner{grid-template-columns:1fr;gap:28px}.friction-copy{display:block}.friction-copy h2{font-size:36px;margin-bottom:24px}.friction-copy .eyebrow{margin-bottom:20px}.friction-photo{max-width:440px;width:100%;margin:auto}.friction-photo img{height:auto}.friction-card{padding:20px 15px}.friction-map-footer{font-size:13px;margin-top:12px}}

/* Give the interactive system the full introduction width. */
.destination-body{grid-template-columns:1fr}
.os-showcase{margin-top:32px}
.os-showcase-heading{padding:20px 24px}
.os-showcase-heading h3{font-size:15px}
.os-showcase-heading a{font-size:12px;padding:9px 12px;border:1px solid #ff8b4540;border-radius:6px}
.os-showcase iframe{height:650px}
@media(max-width:700px){.os-showcase-heading{padding:16px}.os-showcase-heading h3{font-size:13px}.os-showcase iframe{height:640px}}

.footer-wordmark{display:inline-block;margin-bottom:12px;line-height:0}.footer-wordmark img{display:block;width:55px;height:auto}
@media(max-width:720px){.footer-wordmark img{width:50px}}

/* Fixed navigation returns when the pointer approaches the top edge. */
.header{position:fixed;z-index:50;top:0;left:0;right:0;padding:0 var(--pad);transition:transform .25s ease,background .25s ease}
.header.is-scrolled{background:transparent;border:0;box-shadow:none}
.header.is-concealed{transform:translateY(-110%)}
.header:focus-within{transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.header{transition:none}}

.header-reveal-zone{position:fixed;top:0;left:0;right:0;height:24px;z-index:51;background:transparent}
@media(hover:none){.header-reveal-zone{display:none}}

/* Readability pass: preserve headings, strengthen supporting text and controls. */
.friction-copy>p:not(.eyebrow),.process-rows p,.about-copy>p{font-size:16px;color:#bdbbb5}
.friction-card>p:not(.friction-card-label){font-size:14px;color:#bdbbb5}
.friction-card-label{font-size:10px}.friction-tag{font-size:11px}
.about-people p{font-size:14px;color:#bdbbb5}
.destination-body .muted{font-size:15px;color:#bdbbb5}
.button,.hero-secondary,.text-link{font-size:14px}
.header-contact{font-size:13px}
.hwf-top .hwf-col{font-size:12px;letter-spacing:.06em}
.hwf-brand>span{font-size:11px;color:#aaa9a3}.hwf-rule{font-size:10px}
.hwf-col a{display:inline-block;padding-block:5px}
section[id]{scroll-margin-top:105px}
@media(max-width:700px){.friction-copy>p:not(.eyebrow),.process-rows p,.about-copy>p{font-size:15px}.about-copy .about-lead{font-size:18px}.hero-actions{gap:20px}.hero-secondary{min-height:44px}.hero h1{font-size:clamp(32px,8.5vw,52px)}.hero-content{overflow-wrap:break-word}.hwf-top .hwf-col{font-size:11px}.hwf-brand>span{font-size:10px}}

.contact-section{padding:110px var(--pad) 80px}
.contact-inner{max-width:1150px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}
.contact-intro .eyebrow{color:#e1c1ac}
.contact-intro h2{font-size:clamp(36px,3.8vw,58px);font-weight:600;line-height:1.12;letter-spacing:-.055em;margin:25px 0}
.contact-intro h2 span{color:#ff8b45}
.contact-intro>p:not(.eyebrow){font-size:16px;line-height:1.85;color:#c0beb8;max-width:40ch}
.contact-intro .contact-small{font-size:14px!important;color:#aaa9a3!important;margin-top:28px}
.contact-box{border:1px solid #ffffff24;border-radius:16px;background:#111110;padding:32px;min-width:0}
.contact-box [hidden],.contact-controls [hidden]{display:none!important}
.contact-progress{font-size:12px;color:#d5b49f;margin:0 0 14px}
.contact-track{height:3px;background:#343330;margin-bottom:30px}.contact-track span{display:block;width:25%;height:100%;background:#ff8b45}
.contact-box fieldset{border:0;margin:0;padding:0;min-width:0}
.contact-box legend{font-size:23px;line-height:1.4;font-weight:600;letter-spacing:-.035em;margin-bottom:24px;padding:0}
.contact-box label{display:block;font-size:14px;line-height:1.7;color:#e2dfdb;margin-bottom:8px}
.contact-box input:not([type=checkbox]):not([type=radio]),.contact-box textarea{width:100%;min-height:48px;background:#070707;border:1px solid #62615a;color:#f6f6f3;border-radius:7px;padding:12px;font:16px Montserrat,Arial,sans-serif;margin-bottom:22px}
.contact-box textarea{resize:vertical;line-height:1.6}
.contact-box input:focus-visible,.contact-box textarea:focus-visible{outline:2px solid #ff8b45;outline-offset:3px}
.contact-box .optional{font-size:12px;color:#aaa9a3}
.contact-options{display:grid;gap:10px}
.contact-options label{display:flex;gap:12px;align-items:center;border:1px solid #55534e;border-radius:7px;padding:13px;margin:0;cursor:pointer}
.contact-options label:has(input:checked){border-color:#ff8b45;background:#ff5c0010}
.contact-box input[type=checkbox],.contact-box input[type=radio]{width:18px;height:18px;flex-shrink:0;accent-color:#ff8b45;margin:0}
.contact-box .field-help{font-size:12px;color:#bdbbb5;line-height:1.8;margin:0 0 18px}
.contact-box .field-help:last-child{margin:20px 0 0}
.contact-box a:not(.button){color:#ffd0ad;text-decoration:underline;text-underline-offset:3px}
.contact-box .contact-consent{display:flex;gap:12px;align-items:flex-start;margin:4px 0 16px;font-size:12px}
.contact-consent input{margin-top:3px!important}
.contact-controls{display:flex;justify-content:space-between;gap:16px;margin-top:22px}
.contact-next{margin-left:auto;cursor:pointer}
.contact-back{background:none;border:1px solid #62615a;border-radius:30px;padding:12px 20px}
.contact-controls button:disabled{opacity:.65;cursor:wait}
.contact-error{color:#ffb596;font-size:13px;line-height:1.8;margin:14px 0 0}
.contact-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#contact-booking h3{font-size:28px;line-height:1.25;margin:20px 0}
#contact-booking>p:not(.eyebrow){font-size:15px;color:#c0beb8;line-height:1.8}
#booking-frame{display:block;border:0;width:100%;height:710px;background:#fff;border-radius:8px;margin-top:24px}
@media(max-width:700px){.contact-section{padding:75px 24px 50px}.contact-inner{grid-template-columns:1fr;gap:28px}.contact-box{padding:24px 18px}.contact-intro h2{font-size:38px}.contact-box legend{font-size:21px}.contact-options label{font-size:13px}.contact-next{font-size:12px;padding-inline:16px}.contact-back{font-size:12px;padding-inline:14px}}
@media(max-width:700px){body{overflow-x:clip}.hero{padding-top:100px}.brand-sculpture{width:min(64vw,250px);margin-top:-10px;margin-bottom:18px}.contact-intro h2{overflow-wrap:break-word}}

/* Lift the glass highlights while keeping the dark material. */
.brand-sculpture img{filter:brightness(1.25) saturate(1.08) drop-shadow(0 0 7px #ff5c0028)}

.os-showcase-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.os-showcase-actions button{font:inherit;font-size:12px;font-weight:600;padding:10px 14px;border:1px solid #ff8b45;border-radius:6px;background:#ff6b12;color:#090909;cursor:pointer}
.os-showcase-actions button:hover{background:#ff8b45}
.os-showcase-actions button:focus-visible{outline:2px solid white;outline-offset:4px}

.landing-legal-links{display:flex;flex-wrap:wrap;gap:16px 24px;padding:24px 0;font-size:13px;line-height:1.6;border-top:1px solid #252525}.landing-legal-links a{color:#bdbdbd}.landing-legal-links a:hover{color:#ffab77}
