/* Groupe Echennah — direction artistique 2026
   Architectural luxury × editorial design × cinematic storytelling */

:root{
 --ink:#090a0c;--paper:#f7f4ec;--gold:#b28e3e;--champagne:#d2be79;
 --graphite:#232427;--stone:#6d6963;--sand:#ddd8cf;
 --hairline:rgba(210,190,121,.28);--page-x:clamp(24px,5.6vw,108px);
 --display:'Cormorant Garamond',Georgia,serif;--ui:Inter,Arial,sans-serif;
}

html{background:var(--ink);scroll-behavior:smooth}
body{background:var(--ink);font-family:var(--ui);font-size:16px;line-height:1.72;letter-spacing:-.005em}
body:before{content:'';position:fixed;inset:0;z-index:30;pointer-events:none;border:1px solid rgba(210,190,121,.14)}
::selection{background:var(--gold);color:var(--ink)}
.site-scroll{scrollbar-width:thin;scrollbar-color:var(--gold) var(--ink)}
.site-scroll::-webkit-scrollbar{width:8px}.site-scroll::-webkit-scrollbar-track{background:var(--ink)}.site-scroll::-webkit-scrollbar-thumb{background:var(--gold)}

h1,h2{font-family:var(--display);font-weight:400;letter-spacing:-.035em;line-height:.94;text-wrap:balance}
h3{letter-spacing:-.02em;text-wrap:balance}p{text-wrap:pretty}
.eyebrow{display:flex;align-items:center;gap:12px;font:600 11px/1.2 var(--ui);letter-spacing:.2em;text-transform:uppercase}
.eyebrow:before{content:'';width:24px;height:1px;background:currentColor;opacity:.75}
.small-note{font:500 11px/1.3 var(--ui);letter-spacing:.18em}

.header{height:112px;padding:10px var(--page-x);background:linear-gradient(180deg,rgba(9,10,12,.88),rgba(9,10,12,.18) 78%,transparent);border-bottom:0;transition:height .45s ease,background .45s ease,box-shadow .45s ease}
.header:after{content:'';position:absolute;left:0;bottom:0;width:calc(var(--page-progress,0)*100%);height:1px;background:linear-gradient(90deg,var(--gold),var(--champagne));box-shadow:0 0 16px rgba(210,190,121,.45)}
.header.scrolled{height:82px;background:rgba(9,10,12,.91);box-shadow:0 18px 60px rgba(0,0,0,.18);backdrop-filter:blur(18px)}
.brand{min-width:90px}.brand img{width:92px;height:92px;filter:drop-shadow(0 8px 26px rgba(0,0,0,.22));transition:width .4s ease,height .4s ease}.header.scrolled .brand img{width:68px;height:68px}
.desktop-nav{gap:clamp(22px,2.6vw,48px);font-size:13px}.desktop-nav a{position:relative;padding:12px 0;letter-spacing:.025em}.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:5px;height:1px;background:var(--champagne);transition:right .35s ease}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{right:0}.desktop-nav a[aria-current=page]{color:var(--champagne)}
.nav-contact,.button{border-radius:0;min-height:50px;padding:14px 26px;text-transform:uppercase;letter-spacing:.09em;font-size:11px;transition:background .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease}.nav-contact:hover,.button:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(9,10,12,.18)}
.header-actions{display:flex;align-items:center;flex-wrap:nowrap;gap:12px;flex:0 0 auto;white-space:nowrap}.instagram-link{display:inline-flex;align-items:center;justify-content:center;color:var(--champagne);transition:opacity .3s ease,transform .3s ease,color .3s ease}.instagram-link img{width:21px;height:21px}.instagram-link--header{flex:0 0 38px;width:38px;height:50px}.instagram-link--header:hover{transform:translateY(-2px) scale(1.06);opacity:.78}
.mobile-menu{background:rgba(9,10,12,.98);backdrop-filter:blur(24px);padding:34px var(--page-x) 44px}.mobile-menu a{border-bottom:1px solid rgba(210,190,121,.16);padding:15px 0;font-family:var(--display);font-size:28px}

.site-background{background:var(--ink);overflow:hidden}.site-background>img{transform:scale(1.015);filter:saturate(.88) contrast(1.04);will-change:contents}.background-shade{background:linear-gradient(90deg,rgba(9,10,12,.72) 0%,rgba(9,10,12,.28) 34%,rgba(9,10,12,.04) 72%),linear-gradient(0deg,rgba(9,10,12,.64),transparent 48%,rgba(9,10,12,.12))}
.story{height:700svh}.stage{isolation:isolate;background:transparent}
.stage:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(247,244,236,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(247,244,236,.045) 1px,transparent 1px);background-size:100% 25%,25% 100%;mask-image:linear-gradient(90deg,black,transparent 72%)}
.stage:after{content:'';position:absolute;z-index:0;inset:clamp(104px,9vw,154px) var(--page-x) 96px;border:1px solid rgba(210,190,121,.14);pointer-events:none}
.scene-shade{z-index:0;background:linear-gradient(90deg,rgba(9,10,12,.54),transparent 58%),linear-gradient(0deg,rgba(9,10,12,.62),transparent 50%)}
.hero-top{top:132px;left:var(--page-x);right:var(--page-x);z-index:2;color:rgba(247,244,236,.72);font-size:10px;letter-spacing:.22em}
.story-copy{z-index:2;left:var(--page-x);top:27%;width:min(780px,58vw);max-width:none}
.story-copy .eyebrow{margin-bottom:30px;color:var(--champagne)}
.story-copy h1{font-size:clamp(66px,7.7vw,132px);line-height:.88;letter-spacing:-.055em;max-width:760px;text-shadow:0 16px 54px rgba(0,0,0,.25)}
.story-copy h1 em{display:inline-block;color:var(--champagne);font-style:italic}
.story-copy>p:last-child{font-size:clamp(16px,1.25vw,20px);line-height:1.55;max-width:450px;margin-top:30px;color:rgba(247,244,236,.82)}
.scroll-hint{z-index:2;left:var(--page-x);bottom:126px;color:rgba(247,244,236,.74);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.scroll-line{height:50px;background:linear-gradient(var(--champagne),transparent)}
.skip-story{z-index:2;right:var(--page-x);bottom:133px;border-bottom:0;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.skip-story:after{content:' ↘';color:var(--champagne)}
.timeline{z-index:2;left:var(--page-x);right:var(--page-x);bottom:34px}.timeline-track{background:rgba(247,244,236,.18)}.timeline-track span{height:2px;background:linear-gradient(90deg,var(--gold),var(--champagne));box-shadow:0 0 12px rgba(210,190,121,.45)}
.timeline-items{margin-top:17px}.timeline-items button{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(247,244,236,.58)}.timeline-items button span{font-size:10px}.timeline-items button[aria-current]{color:var(--champagne)}

.section{position:relative;padding:clamp(92px,10vw,168px) var(--page-x);border-top:1px solid rgba(210,190,121,.14)}
.section-heading{margin-bottom:clamp(58px,7vw,104px)}
.home-page .light{background:linear-gradient(112deg,rgba(247,244,236,.94) 0%,rgba(247,244,236,.86) 55%,rgba(247,244,236,.72) 100%);backdrop-filter:blur(2px)}
.home-page .light:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(178,142,62,.08) 1px,transparent 1px);background-size:25% 100%;opacity:.45}
.home-page .light>*{position:relative}
.home-page .light .eyebrow,.inner-page .light .eyebrow{border-left:0;padding-left:0;color:#725a27}
.home-page .light .eyebrow:before,.inner-page .light .eyebrow:before{background:var(--gold)}

.intro-v2{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:48px 10vw;align-items:end}.intro-v2 h2{font-size:clamp(56px,7vw,112px);max-width:1180px}.intro-subtitle{font-size:clamp(28px,3.1vw,48px);line-height:1.08}.intro-body{max-width:540px;margin-left:auto}.intro-body p{font-size:17px;line-height:1.9}

.manifesto,.engagements{background:linear-gradient(118deg,rgba(9,10,12,.91),rgba(9,10,12,.72));backdrop-filter:blur(2px)}
.manifesto:before,.engagements:before,.vision-v2:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 18%,rgba(178,142,62,.12),transparent 30%)}
.manifesto>* ,.engagements>* ,.vision-v2>*{position:relative}
.manifesto h2,.engagements h2{font-size:clamp(58px,7.2vw,114px);max-width:1080px;margin:32px 0 80px}
.manifesto-grid{grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,70px)}
.manifesto-grid article{position:relative;padding:30px 0 0;border-top:1px solid var(--hairline)}
.manifesto-grid article:before{content:'';position:absolute;top:-1px;left:0;width:52px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s ease}.manifesto-grid article:hover:before{transform:scaleX(1)}
.manifesto-grid h3{font-family:var(--display);font-weight:500;font-size:clamp(30px,2.8vw,46px);line-height:1.05;margin:30px 0 20px}.manifesto-grid p{font-size:15px;line-height:1.85;color:rgba(221,216,207,.78)}

.residence-heading{margin-bottom:clamp(60px,7vw,105px)}.residence-heading h2{font-size:clamp(55px,6.6vw,104px);max-width:850px}.residence-heading>p{max-width:390px;line-height:1.8}
.editorial-projects{gap:clamp(86px,11vw,170px)}
.editorial-project{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(44px,7vw,110px)}
.editorial-project.alternate{grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr)}
.project-visual{aspect-ratio:16/10;border:0;background:var(--graphite);box-shadow:0 30px 80px rgba(9,10,12,.16);transition:transform .6s cubic-bezier(.2,.75,.25,1),box-shadow .6s ease}
.project-visual:hover{transform:translateY(-7px);box-shadow:0 42px 100px rgba(9,10,12,.23)}
.project-monogram{padding:clamp(28px,4vw,58px);background:linear-gradient(145deg,#191a1d,#2c2d31);overflow:hidden;color:var(--champagne)}
.project-monogram:before{content:'ECHENNAH';position:absolute;left:-3%;top:50%;transform:translateY(-50%);font:500 clamp(54px,8vw,142px)/1 var(--display);letter-spacing:.02em;color:transparent;-webkit-text-stroke:1px rgba(210,190,121,.13);white-space:nowrap}
.project-monogram:after{inset:24px;border-color:rgba(210,190,121,.22);transform:none}
.project-monogram strong{font:500 clamp(88px,12vw,190px)/.8 var(--display);letter-spacing:-.07em;text-shadow:0 10px 40px rgba(0,0,0,.25)}
.project-monogram span{letter-spacing:.16em;text-transform:uppercase;font-size:10px}
.project-editorial{align-self:center}.project-editorial h3{font-family:var(--display);font-weight:400;font-size:clamp(46px,5.2vw,82px);line-height:.95;margin:25px 0 28px}.project-editorial>p{font-size:16px;line-height:1.8;color:var(--stone)}
.project-card-facts{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 4px}.project-card-facts span{padding:8px 11px;border:1px solid rgba(178,142,62,.3);color:#6f5725;font:600 10px/1.2 var(--ui);letter-spacing:.09em;text-transform:uppercase}
.text-link{position:relative;border:0;padding:0 28px 8px 0;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.text-link:before{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform-origin:left;transition:transform .35s ease}.text-link:after{content:'↗';position:absolute;right:0;color:var(--gold)}.text-link:hover:before{transform:scaleX(.45)}

.vision-v2{min-height:78svh;background:linear-gradient(105deg,rgba(9,10,12,.82),rgba(9,10,12,.46));justify-content:center}.vision-v2 h2{font-size:clamp(62px,7.3vw,118px);max-width:1100px;margin:35px 0 42px}.vision-v2 .lead{font-size:clamp(19px,1.6vw,25px);max-width:760px;color:rgba(247,244,236,.76)}.vision-words{gap:10px;margin-top:55px}.vision-words span{padding:10px 16px;border:1px solid rgba(210,190,121,.28);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.craft-heading{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:10vw;align-items:end}.craft-heading h2{font-size:clamp(56px,7vw,108px)}.craft-heading p{font-size:17px;line-height:1.9}.craft-list{margin-top:88px}.craft-list article{grid-template-columns:54px minmax(170px,.45fr) 1fr;align-items:start;padding:30px 0;border-color:rgba(35,36,39,.22);transition:padding-left .35s ease,background .35s ease}.craft-list article:hover{padding-left:18px;background:linear-gradient(90deg,rgba(178,142,62,.08),transparent)}.craft-list h3{font-family:var(--display);font-weight:500;font-size:clamp(30px,3vw,45px)}.craft-list p{line-height:1.75}
.commitment-list{grid-template-columns:repeat(4,1fr);gap:24px}.commitment-list article{min-height:250px;padding:28px 0 0;border-top:1px solid rgba(210,190,121,.32)}.commitment-list h3{font-family:var(--display);font-weight:500;font-size:clamp(31px,2.7vw,43px);margin:36px 0 18px}.commitment-list p{font-size:14px;line-height:1.8;color:rgba(221,216,207,.74)}
.contact-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:10vw;align-items:start}.contact-grid h2{font-size:clamp(56px,7vw,110px)}.contact-details .lead{font-size:clamp(19px,1.5vw,24px)}.contact-phone{font-family:var(--display);font-size:clamp(35px,4.6vw,72px);line-height:1}.contact-mail{font-size:17px;margin:20px 0 30px}

.inner-page .site-scroll{background:var(--ink)}
.inner-page .header{background:linear-gradient(180deg,rgba(9,10,12,.96),rgba(9,10,12,.76))}
.page-heading{min-height:72svh;padding:clamp(180px,17vw,245px) var(--page-x) clamp(90px,10vw,150px);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:linear-gradient(120deg,#090a0c,#17181b)}
.page-heading:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(210,190,121,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(210,190,121,.055) 1px,transparent 1px);background-size:25% 25%;mask-image:linear-gradient(115deg,black,transparent 75%)}
.page-heading:after{content:'';position:absolute;width:38vw;aspect-ratio:1;right:-8vw;top:10%;border:1px solid rgba(210,190,121,.16);transform:rotate(35deg)}
.page-heading>*{position:relative;z-index:1}.page-heading h1{font-size:clamp(62px,7.5vw,122px);max-width:1200px;margin:36px 0 30px}.page-heading .lead{max-width:720px;color:rgba(247,244,236,.72)}
.inner-page .light{padding-top:clamp(100px,11vw,170px);padding-bottom:clamp(100px,11vw,170px);background:var(--paper)}
.inner-page .group-grid h2,.inner-page .light>h2{font-size:clamp(52px,6.5vw,98px)}
.group-history{padding-top:28px;margin-top:38px;border-top:1px solid rgba(35,36,39,.16);color:var(--stone)}
.editorial-measure{max-width:880px;margin:46px 0;font-size:clamp(20px,1.7vw,26px)}
.project-hero{min-height:82svh;padding:170px var(--page-x) 90px;background:linear-gradient(135deg,#090a0c 15%,#27282b);border-bottom:1px solid var(--hairline)}
.project-hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(210,190,121,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(210,190,121,.05) 1px,transparent 1px);background-size:20% 25%}
.project-hero:after{background:radial-gradient(circle at 78% 30%,rgba(178,142,62,.18),transparent 28%),linear-gradient(90deg,rgba(9,10,12,.9),rgba(9,10,12,.22))}
.project-hero--photo:after{background:linear-gradient(90deg,rgba(9,10,12,.91) 0%,rgba(9,10,12,.58) 44%,rgba(9,10,12,.16) 78%),linear-gradient(0deg,rgba(9,10,12,.6),transparent 55%)}
.project-hero--photo .project-hero-photo{filter:saturate(.88) contrast(1.03)}
.project-hero h1{font-size:clamp(66px,8.2vw,132px);line-height:.88;max-width:1100px}.project-hero .lead{font-size:clamp(19px,1.7vw,26px);color:rgba(247,244,236,.72)}
.breadcrumbs{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:rgba(247,244,236,.56)}
.project-intro>.eyebrow{margin-bottom:65px}.project-intro h2{font-size:clamp(48px,5.8vw,90px)}
.project-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:64px;padding-top:0;border:1px solid rgba(178,142,62,.25)}.project-facts>div{min-height:145px;padding:27px;border-right:1px solid rgba(178,142,62,.2)}.project-facts>div:last-child{border-right:0}.project-facts dt{font:600 10px/1.3 var(--ui);letter-spacing:.13em;text-transform:uppercase;color:#725a27}.project-facts dd{font:500 clamp(27px,2.5vw,39px)/1.08 var(--display);margin:18px 0 0;color:var(--ink)}
.lifestyle-section{background:linear-gradient(120deg,#111214,#202124)}.lifestyle-section h2{font-size:clamp(54px,6.5vw,104px);max-width:950px;margin:30px 0 65px}.lifestyle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.lifestyle-grid article{min-height:190px;padding:26px;border:1px solid rgba(210,190,121,.24);background:rgba(247,244,236,.025)}.lifestyle-grid span{color:var(--champagne);font-size:11px;letter-spacing:.13em}.lifestyle-grid h3{font:500 clamp(26px,2.3vw,38px)/1.08 var(--display);margin:35px 0 14px}.lifestyle-grid p{font-size:14px;line-height:1.72;color:rgba(247,244,236,.66)}
.phase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}.phase-grid article{padding:25px;border-top:1px solid rgba(178,142,62,.36);background:linear-gradient(135deg,rgba(178,142,62,.08),transparent)}.phase-grid span{font:600 10px/1.2 var(--ui);letter-spacing:.13em;text-transform:uppercase;color:#725a27}.phase-grid strong{display:block;margin-top:20px;font:500 clamp(29px,2.5vw,40px)/1 var(--display)}.data-note{margin-top:24px;color:var(--stone);font-size:12px}
.other-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:52px}.other-project-card{position:relative;min-height:245px;padding:28px;border:1px solid rgba(210,190,121,.2);background:linear-gradient(145deg,#16171a,#242529);display:flex;flex-direction:column;justify-content:space-between;transition:transform .35s ease,border-color .35s ease}.other-project-card:hover{transform:translateY(-5px);border-color:rgba(210,190,121,.58)}.other-project-card span{color:var(--champagne);font:600 10px/1.2 var(--ui);letter-spacing:.13em;text-transform:uppercase}.other-project-card h3{font:500 clamp(28px,2.5vw,42px)/1.05 var(--display);margin:30px 0}.other-project-card p{font-size:13px;color:rgba(247,244,236,.62)}
.direct-contact{padding:28px;border:1px solid rgba(178,142,62,.38);margin-top:0}.direct-contact p{font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:16px}.direct-contact a{font-family:var(--display);font-size:clamp(22px,2.2vw,34px);padding:5px 0}
.legal-copy{max-width:none}.legal-copy h2{font-family:var(--display);font-size:clamp(32px,3vw,46px);font-weight:500}.legal-copy p{max-width:900px}

.footer{position:relative;padding:88px var(--page-x) 28px;background:linear-gradient(145deg,#090a0c,#151619);border-top:1px solid var(--hairline);overflow:hidden}
.footer:before{content:'';position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(210,190,121,.045) 1px,transparent 1px);background-size:25% 100%;pointer-events:none}.footer>*{position:relative}.footer>img{width:170px;height:170px}.footer-signature{font-family:var(--display);font-size:clamp(34px,4vw,62px);letter-spacing:-.02em;margin:10px 0 45px}.footer-links{gap:14px 38px;flex-wrap:wrap;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.footer-contact{margin-top:38px}.footer-bottom{margin-top:52px;padding-top:24px;border-color:rgba(210,190,121,.18)}
.footer-links .instagram-link--footer{gap:9px}.footer-links .instagram-link--footer img{width:18px;height:18px}.footer-links .instagram-link--footer:hover{color:var(--champagne)}
.whatsapp-float{position:fixed;right:clamp(18px,2.4vw,34px);bottom:max(22px,env(safe-area-inset-bottom));z-index:40;display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 12px 34px rgba(0,0,0,.3);transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.whatsapp-float img{width:29px;height:29px}.whatsapp-float:hover{transform:translateY(-4px) scale(1.04);background:#20bd5a;box-shadow:0 17px 42px rgba(0,0,0,.38)}.whatsapp-float:focus-visible{outline:2px solid #fff;outline-offset:4px}.home-page .playback-status{right:calc(var(--page-x) + 68px)}

.js-ready .reveal-target{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.75,.25,1)}
.js-ready .reveal-target.is-visible{opacity:1;transform:none}
.js-ready .reveal-target:nth-child(2){transition-delay:.08s}.js-ready .reveal-target:nth-child(3){transition-delay:.14s}.js-ready .reveal-target:nth-child(4){transition-delay:.2s}

@media(max-width:1100px){
 .header{height:98px}.brand img{width:78px;height:78px}.header.scrolled{height:76px}.header.scrolled .brand img{width:62px;height:62px}
 .header .header-actions .nav-contact{display:none!important}.instagram-link--header{height:44px}
 .story-copy{width:min(720px,68vw)}.commitment-list{grid-template-columns:repeat(2,1fr)}
 .editorial-project,.editorial-project.alternate{grid-template-columns:1.1fr .9fr}.page-heading{min-height:66svh}
}

@media(max-width:760px){
 :root{--page-x:24px}.header,.header.scrolled{height:82px;padding:4px var(--page-x)}.brand,.brand img,.header.scrolled .brand img{width:70px;height:70px}.menu-toggle{display:block}.mobile-menu{top:82px}
 .header-actions{margin-left:auto;gap:6px}.instagram-link--header{flex-basis:42px;width:42px;height:42px}.instagram-link--header img{width:20px;height:20px}.whatsapp-float{right:18px;bottom:max(18px,env(safe-area-inset-bottom));width:52px;height:52px}.whatsapp-float img{width:26px;height:26px}.home-page .playback-status{right:78px}
 .story{height:560svh!important}.stage:after{inset:96px 18px 88px}.hero-top{top:102px}.story-copy{left:var(--page-x);right:var(--page-x);width:auto;top:auto;bottom:168px}.story-copy h1{font-size:clamp(52px,15.2vw,72px);line-height:.9}.story-copy>p:last-child{font-size:14px;line-height:1.55;margin-top:20px;max-width:310px}.story-copy .eyebrow{margin-bottom:18px}
 .site-background>img{object-position:center center}.background-shade{background:linear-gradient(0deg,rgba(9,10,12,.9) 3%,rgba(9,10,12,.65) 30%,rgba(9,10,12,.06) 72%),linear-gradient(90deg,rgba(9,10,12,.3),transparent)}
 .scroll-hint{bottom:118px}.skip-story{display:none}.timeline{left:var(--page-x);right:var(--page-x);bottom:28px}.timeline-items button{min-width:22px}.timeline-items button span{display:none!important}
 .section{padding:82px var(--page-x)}.section-heading{margin-bottom:48px;align-items:flex-start}.section-heading .text-link{margin-top:0}
 .intro-v2,.craft-heading,.contact-grid,.editorial-project,.editorial-project.alternate{grid-template-columns:1fr;gap:32px}.intro-v2 h2{font-size:53px}.intro-subtitle{font-size:29px}.intro-body{margin-left:0}
 .manifesto h2,.engagements h2,.vision-v2 h2{font-size:54px;margin-bottom:52px}.manifesto-grid{grid-template-columns:1fr;gap:45px}.manifesto-grid h3{font-size:34px}
 .residence-heading{display:block}.residence-heading h2{font-size:54px}.residence-heading>p{margin-top:24px}.editorial-projects{gap:80px}.editorial-project.alternate .project-visual{order:0}.project-visual{aspect-ratio:4/3}.project-editorial h3{font-size:47px}.project-monogram strong{font-size:105px}
 .vision-v2{min-height:72svh}.vision-words span{font-size:9px}.craft-heading h2{font-size:52px}.craft-list{margin-top:55px}.craft-list article{grid-template-columns:28px 1fr;padding:23px 0}.craft-list p{grid-column:2}.craft-list article:hover{padding-left:0}.commitment-list{grid-template-columns:1fr}.commitment-list article{min-height:0}.contact-grid h2{font-size:54px}
 .page-heading{min-height:62svh;padding:145px var(--page-x) 70px}.page-heading h1{font-size:55px;line-height:.94}.page-heading:after{width:70vw;right:-35vw}.inner-page .light{padding:82px var(--page-x)}.inner-page .group-grid{grid-template-columns:1fr}.inner-page .group-grid h2,.inner-page .light>h2{font-size:51px}
 .project-hero{min-height:72svh;padding:125px var(--page-x) 58px}.project-hero h1{font-size:57px}.project-intro>.eyebrow{margin-bottom:40px}.project-facts{grid-template-columns:1fr 1fr}.project-facts>div{min-height:118px}.project-facts>div:nth-child(2){border-right:0}.project-facts>div:nth-child(-n+2){border-bottom:1px solid rgba(178,142,62,.2)}.lifestyle-grid,.phase-grid,.other-project-grid{grid-template-columns:1fr}.lifestyle-grid article,.other-project-card{min-height:0}
 .footer{padding:70px var(--page-x) 24px}.footer>img{width:140px;height:140px}.footer-signature{font-size:37px}.footer-bottom{justify-content:center}
}

@media(max-width:380px){
 :root{--page-x:20px}.story-copy h1{font-size:49px}.intro-v2 h2,.manifesto h2,.engagements h2,.vision-v2 h2,.residence-heading h2,.craft-heading h2,.contact-grid h2,.page-heading h1{font-size:46px}.project-editorial h3{font-size:42px}
}

@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}.js-ready .reveal-target{opacity:1;transform:none;transition:none}.project-visual,.craft-list article,.nav-contact,.button{transition:none!important}
}

/* Premium refinement — header, residences, responsive rhythm and social actions */
:root{--pad:var(--page-x);--header-x:clamp(18px,4.4vw,84px)}
html,body,.site-scroll{max-width:100%;overflow-x:hidden}
@supports(overflow:clip){html,body,.site-scroll{overflow-x:clip}}
.site-scroll{scrollbar-gutter:stable;overscroll-behavior-x:none}
.section,.page-heading,.project-hero,.footer{overflow-wrap:break-word}

.header{padding-inline:var(--header-x);gap:clamp(14px,2vw,34px)}
.header .brand{flex:0 0 auto}
.desktop-nav{margin-left:auto}
.header-actions{gap:14px}
.nav-contact,.button{min-height:48px;line-height:1.15}
.instagram-link,.instagram-link:hover,.instagram-link:focus{border:0!important;background:transparent!important;box-shadow:none!important;text-decoration:none}
.instagram-link--header{width:40px;height:48px;flex-basis:40px;padding:0}
.instagram-link--header img{display:block;width:22px;height:22px;object-fit:contain}
.instagram-link--header:hover{transform:translateY(-2px);color:var(--champagne);opacity:1}
.menu-toggle{flex:0 0 42px;margin:0;padding:7px}
.menu-toggle span{width:28px;margin-inline:auto;transition:transform .25s ease,opacity .25s ease}

.section{padding-block:clamp(94px,9.5vw,158px)}
.section-heading{margin-bottom:clamp(52px,6vw,88px)}
.section-heading,.residence-heading,.craft-heading,.contact-grid{column-gap:clamp(36px,7vw,112px)}
.intro-body p,.project-editorial>p,.craft-heading p,.contact-details,.legal-copy p{max-width:62ch}
.manifesto-grid,.commitment-list,.lifestyle-grid,.other-project-grid{align-items:stretch}
.manifesto-grid article,.commitment-list article,.lifestyle-grid article,.other-project-card{transition:transform .35s ease,border-color .35s ease,background-color .35s ease}
.manifesto-grid article:hover,.commitment-list article:hover{transform:translateY(-4px)}

.editorial-projects{gap:clamp(96px,10vw,160px)}
.editorial-project{align-items:center}
.project-visual{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(178,142,62,.18)}
.project-visual:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 68%,rgba(9,10,12,.18));opacity:.55;transition:opacity .45s ease}
.project-visual img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.75,.25,1),filter .75s ease}
.project-visual:hover img{transform:scale(1.035);filter:saturate(1.03) contrast(1.015)}
.project-visual:hover:after{opacity:.25}
.project-editorial{max-width:650px}
.project-editorial h3 a{background-image:linear-gradient(var(--gold),var(--gold));background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;transition:background-size .45s ease}
.project-editorial h3 a:hover{background-size:100% 1px}
.project-card-facts{gap:9px;margin-top:28px}
.project-card-facts span{min-height:34px;display:inline-flex;align-items:center;padding:8px 12px;background:rgba(178,142,62,.045)}

.project-facts{box-shadow:0 24px 70px rgba(9,10,12,.06)}
.project-facts>div{display:flex;flex-direction:column;justify-content:space-between;gap:14px}
.lifestyle-grid article,.other-project-card{box-shadow:inset 0 0 0 1px rgba(247,244,236,.012)}
.lifestyle-grid article:hover,.other-project-card:hover{background-color:rgba(210,190,121,.045);border-color:rgba(210,190,121,.48)}
.phase-grid article{transition:transform .35s ease,background .35s ease}
.phase-grid article:hover{transform:translateY(-3px);background:linear-gradient(135deg,rgba(178,142,62,.13),transparent)}

.footer{padding-top:clamp(76px,8vw,118px)}
.footer-links a{min-height:36px;display:inline-flex;align-items:center}
.footer-contact a,.direct-contact a{transition:color .25s ease}
.footer-contact a:hover,.direct-contact a:hover{color:var(--champagne)}
.footer-links .instagram-link--footer{gap:10px;padding:0}
.footer-links .instagram-link--footer img{flex:0 0 auto;width:18px;height:18px}

.whatsapp-float{position:fixed;right:max(20px,calc(env(safe-area-inset-right) + 14px));bottom:max(22px,calc(env(safe-area-inset-bottom) + 16px));z-index:60;width:58px;height:58px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(210,190,121,.78);border-radius:50%;background:rgba(24,25,28,.96);color:var(--champagne);box-shadow:0 14px 38px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.025);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);isolation:isolate;transition:transform .28s cubic-bezier(.2,.75,.25,1),border-color .28s ease,background .28s ease,box-shadow .28s ease}
.whatsapp-float:before{content:'';position:absolute;inset:5px;border:1px solid rgba(210,190,121,.12);border-radius:inherit;pointer-events:none}
.whatsapp-float img{display:block;width:27px;height:27px;object-fit:contain}
.whatsapp-float:hover{transform:translateY(-3px);border-color:var(--champagne);background:#202124;box-shadow:0 18px 48px rgba(0,0,0,.4),0 0 0 4px rgba(210,190,121,.065)}
.whatsapp-float:active{transform:translateY(-1px) scale(.97)}
.whatsapp-float:focus-visible{outline:2px solid var(--paper);outline-offset:5px}

.site-background>img{contain:paint;backface-visibility:hidden;transform:translateZ(0) scale(1.012)}
.stage{contain:paint}
.story-copy,.timeline,.hero-top{will-change:transform}

@media(max-width:1100px){
 .header{padding-inline:clamp(18px,3vw,34px);gap:14px}.desktop-nav{gap:clamp(15px,2vw,24px);font-size:12px}.header-actions{gap:8px}
 .lifestyle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.other-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.other-project-card:last-child{grid-column:1/-1}
 .project-facts>div{padding:23px 20px}.project-facts dd{font-size:clamp(24px,2.7vw,34px)}
}

@media(max-width:760px){
 :root{--header-x:max(14px,env(safe-area-inset-left))}
 body:before{display:none}
 .header,.header.scrolled{height:82px;padding-left:max(14px,calc(env(safe-area-inset-left) + 10px));padding-right:max(12px,calc(env(safe-area-inset-right) + 8px));gap:6px}
 .header .brand{min-width:0;width:62px;height:68px}.header .brand img,.header.scrolled .brand img{width:62px;height:62px}
 .header-actions{margin-left:auto;gap:5px}
 .header .header-actions .nav-contact{display:inline-flex!important;min-height:40px;padding:9px 11px;font-size:9px;letter-spacing:.075em;white-space:nowrap}
 .instagram-link--header{width:38px;height:42px;flex-basis:38px}.instagram-link--header img{width:20px;height:20px}
 .menu-toggle{display:block;width:38px;height:42px;flex-basis:38px;padding:6px 4px}
 .mobile-menu{top:82px;padding-top:25px;padding-bottom:max(34px,calc(env(safe-area-inset-bottom) + 24px));max-height:calc(100svh - 82px);overflow-y:auto}
 .mobile-menu a{padding:14px 0;font-size:26px}
 .story{height:560svh!important}.stage:after{inset:92px 16px 84px}.hero-top{top:99px}
 .story-copy{bottom:164px}.story-copy h1{font-size:clamp(48px,14.4vw,68px)}.story-copy>p:last-child{max-width:34ch}
 .section{padding-block:clamp(78px,21vw,104px)}.section-heading{gap:22px;margin-bottom:48px}
 .intro-body p,.project-editorial>p,.craft-heading p{font-size:15.5px;line-height:1.82}
 .editorial-projects{gap:82px}.editorial-project,.editorial-project.alternate{gap:30px}.project-visual{aspect-ratio:4/3}.project-editorial h3{margin-block:20px 22px}.project-card-facts{margin-top:22px}
 .lifestyle-grid,.other-project-grid{grid-template-columns:1fr}.other-project-card:last-child{grid-column:auto}.lifestyle-grid{gap:13px}.lifestyle-grid article{padding:24px;min-height:0}
 .project-facts{grid-template-columns:1fr}.project-facts>div,.project-facts>div:nth-child(2){min-height:104px;border-right:0;border-bottom:1px solid rgba(178,142,62,.2)}.project-facts>div:last-child{border-bottom:0}.project-facts dd{font-size:29px}
 .phase-grid{grid-template-columns:1fr}.phase-grid article{padding:23px 20px}
 .footer{padding-bottom:max(26px,calc(env(safe-area-inset-bottom) + 20px))}.footer-links{gap:7px 22px}.footer-contact{font-size:13px;line-height:1.9}.footer-bottom{gap:12px 24px}
 .whatsapp-float{right:max(14px,calc(env(safe-area-inset-right) + 10px));bottom:max(16px,calc(env(safe-area-inset-bottom) + 12px));width:52px;height:52px}.whatsapp-float img{width:24px;height:24px}.whatsapp-float:before{inset:4px}
 .home-page .playback-status{right:76px}
}

@media(max-width:380px){
 .header,.header.scrolled{padding-left:max(10px,calc(env(safe-area-inset-left) + 7px));padding-right:max(8px,calc(env(safe-area-inset-right) + 6px));gap:3px}
 .header .brand{width:55px}.header .brand img,.header.scrolled .brand img{width:55px;height:55px}
 .header .header-actions .nav-contact{min-height:38px;padding:8px 9px;font-size:8.5px}.instagram-link--header{width:34px;flex-basis:34px}.menu-toggle{width:34px;flex-basis:34px}
 .story-copy h1{font-size:46px}.footer-links{column-gap:16px}
}

@media(hover:none){
 .project-visual:hover,.manifesto-grid article:hover,.commitment-list article:hover,.phase-grid article:hover,.other-project-card:hover{transform:none}
}
