@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--cream:#f6f2e9;--ink:#252820;--gold:#947340;--line:#d9d1c1;--serif:'Cormorant Garamond',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.06}h2{font-size:clamp(42px,4.4vw,66px);letter-spacing:-1.5px}h3{font-size:32px}em{font-weight:400;color:var(--gold)}p+p{margin-top:18px}.topline{padding:8px 5%;background:#eae3d5;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px}header{display:flex;align-items:center;justify-content:space-between;min-height:98px;padding:12px 5%;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:15px;font-family:var(--serif);font-size:25px;letter-spacing:2px;white-space:nowrap}.brand img{object-fit:contain;background:#000;border-radius:2px}.brand small{font-size:14px;letter-spacing:1px;border-left:1px solid #b2a382;padding-left:8px}nav{display:flex;align-items:center;gap:36px;font-size:14px}nav a:hover,.text-link:hover{color:var(--gold)}.nav-cta{border:1px solid #b9a98b;padding:10px 20px}.nav-cta span{margin-left:22px}.menu{display:none}.hero{position:relative;margin:0 20px;min-height:660px;height:calc(100svh - 185px);max-height:900px;color:#fff;isolation:isolate}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-photo{object-position:center 60%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(17,25,20,.7),rgba(17,25,20,.13) 80%),linear-gradient(0deg,rgba(10,18,13,.55),transparent 40%)}.hero-copy{padding:85px 6% 105px}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:600;line-height:1.6}.hero h1{font-size:clamp(70px,8.3vw,132px);letter-spacing:-3px;line-height:.94;margin:26px 0}.hero h1 em{color:#e4d0a9}.hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#edece5}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:55px;padding:14px 23px;font-size:12px;font-weight:600;margin-top:30px;transition:background .2s}.light{background:var(--cream);color:var(--ink)}.light:hover{background:#e2d4b8}.hero-bottom{position:absolute;bottom:25px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;align-items:center;border-top:1px solid #ffffff50;padding-top:22px}.hero-bottom a span{margin-left:22px;font-size:18px}.category-strip{display:flex;justify-content:center;align-items:center;gap:28px;padding:24px 5%;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:20px}.category-strip i{color:var(--gold);font-size:10px}.section{padding:95px 7%;scroll-margin-top:20px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.intro h2{margin-top:24px}.intro-copy{font-size:14px;color:#626358}.lead{font-family:var(--serif);font-size:27px;line-height:1.35;color:var(--ink)}.text-link{display:inline-flex;border-bottom:1px solid var(--gold);padding:15px 0 7px;gap:40px;font-size:12px;color:var(--ink)}.worlds{padding-top:22px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-heading h2{margin-top:18px;font-size:clamp(38px,4vw,58px)}.edition{font-size:10px;letter-spacing:2px;margin-bottom:8px}.feature-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:24px}.feature{height:495px;position:relative;overflow:hidden;color:white;isolation:isolate}.feature img{width:100%;height:100%;object-fit:cover;transition:transform .6s;position:absolute;z-index:-2}.feature:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#14160ee6,transparent 80%);z-index:-1}.feature:hover img{transform:scale(1.035)}.feature>div{position:absolute;bottom:30px;left:32px;right:25px}.feature h3{font-size:51px;margin:16px 0}.feature-link{font-size:12px;border-top:1px solid #ffffff55;display:block;padding-top:16px}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px;gap:0 40px}.category-grid article{padding:30px 0;border-top:1px solid var(--line);scroll-margin-top:30px}.number{font-size:11px;color:var(--gold)}.category-grid h3{margin:15px 0}.category-grid p{font-size:14px;color:#66665d}.brand-section{background:#22291f;color:#eee9dc;display:grid;grid-template-columns:1fr 1.1fr;gap:11%;position:relative}.brand-section .eyebrow{color:#ceb986}.brand-heading h2{margin:30px 0;font-size:clamp(52px,5.5vw,80px)}.brand-heading em{color:#c4ab76}.brand-heading>p:not(.eyebrow){max-width:390px;font-size:14px;color:#cccfc3}.gold{background:#d1bb8d;color:#22291f}.gold:hover{background:#e2cfa7}.services article{display:flex;gap:22px;padding:27px 0;border-top:1px solid #ffffff26}.services article>span{font-size:11px;color:#c4ab76}.services h3{font-size:29px;margin-bottom:12px}.services p{font-size:14px;color:#c3c9bc}.team-grid{display:grid;grid-template-columns:1.2fr 1fr .6fr;gap:45px;margin-top:27px;align-items:center}.team-grid h2{font-size:44px}.team-grid p:not(.lead){font-size:14px;color:#66665d}.stat{border-left:1px solid var(--line);padding-left:35px}.stat strong{font:90px var(--serif);color:var(--gold)}.stat strong span{font-size:45px}.city-line{border-top:1px solid var(--line);margin-top:50px;padding-top:26px;display:grid;grid-template-columns:1fr 3fr;gap:40px}.city-line>p:last-child{font-size:14px;margin:0;color:#626358}.faq{background:#eee7db;display:grid;grid-template-columns:1fr 1.5fr;gap:8%}.faq h2{margin-top:23px}.answers details{border-bottom:1px solid #cec4b2;padding:19px 0}.answers details:first-child{padding-top:0}.answers summary{font-size:14px;font-weight:500;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.answers summary::-webkit-details-marker{display:none}.answers summary:after{content:'+';color:var(--gold);font-size:21px;line-height:1}.answers details[open] summary:after{content:'−'}.answers p{font-size:14px;color:#606054;padding:18px 20px 0 0}.contact{text-align:center;padding-top:100px;padding-bottom:105px}.contact h2{font-size:clamp(48px,6vw,85px);margin:24px 0 35px}.contact-mail{font-size:clamp(20px,3vw,33px);border-bottom:1px solid #aa9270;padding-bottom:10px;display:inline-block}.contact-mail span{margin-left:35px}.contact>p:not(.eyebrow){font-size:11px;letter-spacing:1px;margin-top:24px;color:#68665a}.contact-person{display:flex;justify-content:center;gap:20px;font-size:14px;margin-top:7px}.divider{color:#b3a589}footer{background:#20241d;color:#dedbcc;padding:40px 5% 20px}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:32px}.footer-main p{font-family:var(--serif);font-size:22px}.footer-main>a:last-child{font-size:12px}.footer-bottom{border-top:1px solid #ffffff20;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#b7baad}.skip{position:absolute;top:-100px;z-index:10;background:var(--cream);padding:10px}.skip:focus{top:0}:focus-visible{outline:2px solid #b2894a;outline-offset:5px}@media(min-width:1600px){.section{padding-left:max(7%,calc((100vw - 1380px)/2));padding-right:max(7%,calc((100vw - 1380px)/2))}}@media(max-width:1000px){nav{gap:20px}.brand{font-size:20px}.brand img{width:52px;height:52px}.category-strip{gap:15px;font-size:17px}.section{padding:70px 6%}.intro{gap:6%}.edition{display:none}.team-grid{grid-template-columns:1fr 1fr}.stat{grid-column:1/-1;display:flex;gap:25px;align-items:center}.category-grid{gap:0 25px}.footer-main p{display:none}}@media(max-width:650px){html{scroll-padding-top:20px}.topline{font-size:8px;letter-spacing:1.4px}header{min-height:82px;position:relative;padding:12px 5%}.brand{font-size:18px;gap:10px;letter-spacing:1px}.brand img{width:48px;height:48px}.brand small{font-size:11px}.menu{display:block;background:none;border:0;font-size:12px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);z-index:10;padding:24px;box-shadow:0 10px 12px #0001}nav.open{display:flex;flex-direction:column;align-items:stretch}.hero{margin:0 10px;min-height:600px;height:75svh;max-height:760px}.hero-copy{padding:68px 7% 110px}.hero h1{font-size:76px;letter-spacing:-2px}.hero .eyebrow{font-size:9px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-bottom{left:7%;right:7%;font-size:8px;letter-spacing:1px}.hero-bottom>span:first-child{display:none}.hero-bottom a span{margin-left:10px}.category-strip{flex-wrap:wrap;gap:8px 15px;padding:20px 7%;font-size:17px}.category-strip i{display:none}.section{padding:58px 7%}.intro{grid-template-columns:1fr;gap:28px}.intro h2{font-size:45px}.lead{font-size:25px}.section-heading h2{font-size:41px}.feature-grid{grid-template-columns:1fr;gap:18px}.feature{height:395px}.feature h3{font-size:45px}.category-grid{grid-template-columns:1fr 1fr;gap:0 22px}.category-grid h3{font-size:27px}.category-grid p{font-size:14px}.brand-section{grid-template-columns:1fr;gap:40px}.brand-heading h2{font-size:62px}.team-grid{grid-template-columns:1fr;gap:28px}.team-grid h2{font-size:43px}.stat{padding-left:20px}.stat strong{font-size:72px}.city-line{grid-template-columns:1fr;gap:15px;margin-top:30px}.faq{grid-template-columns:1fr;gap:32px}.contact h2{font-size:51px}.contact-mail{font-size:22px}.contact-mail span{margin-left:15px}.footer-main .brand{font-size:16px}.footer-main img{width:50px;height:50px}.footer-bottom{flex-wrap:wrap;font-size:10px}.footer-bottom>span:first-child{flex-basis:100%}.eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.intro-copy,.category-grid p,.services p,.team-grid p:not(.lead),.city-line>p:last-child,.answers p,.brand-heading>p:not(.eyebrow){font-size:16px}

/* Readable labels and resilient layouts at narrow widths and increased text sizes. */
.topline,.eyebrow,.edition,.number,.services article>span,.footer-bottom,.hero-bottom,.contact>p:not(.eyebrow){font-size:12px}
.button,.text-link,.feature-link,.footer-main>a:last-child,.menu{font-size:14px}
.hero-copy>p:not(.eyebrow){font-size:16px}
.category-strip{flex-wrap:wrap}
.section-heading{gap:24px}
.edition{flex-shrink:0}
.hero{height:auto;min-height:max(660px,calc(100svh - 185px));max-height:none}
.hero-copy{padding-bottom:140px}
.hero-bottom{gap:18px;flex-wrap:wrap}
.hero-bottom>a{min-height:36px;display:flex;align-items:center}
.intro>*,.category-grid>*,.team-grid>*,.brand-section>*,.faq>*{min-width:0}
.answers summary{min-height:44px;align-items:center}
.menu{min-height:44px;min-width:56px}
.footer-main,.contact-person{flex-wrap:wrap}
@media(max-width:850px){
 header{position:relative}
 .menu{display:block;background:none;border:0}
 nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);z-index:10;padding:24px;box-shadow:0 10px 12px #0001}
 nav.open{display:flex;flex-direction:column;align-items:stretch}
 nav a{padding:10px}
}
@media(max-width:650px){
 .topline{font-size:10px;letter-spacing:1px;gap:16px;flex-wrap:wrap}
 .hero{min-height:600px}
 .hero h1{font-size:clamp(58px,19vw,76px)}
 .hero .eyebrow,.hero-bottom{font-size:12px;letter-spacing:1px}
 .hero-bottom>span:last-child{display:none}
 .hero-copy{padding-bottom:140px}
 .category-strip a{padding:6px 0}
 .footer-bottom{font-size:12px}
}
@media(max-width:380px){
 .category-grid{grid-template-columns:1fr}
 .contact h2{font-size:44px}
 .brand-heading h2{font-size:54px}
}

/* A shared content edge keeps every section on the same page grid. */
.video-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:11%;align-items:start}
.video-intro h2{margin-top:24px}
.video-intro>div:last-child>p:not(.lead){font-size:16px;color:#626358}
.video-benefits-title{margin:45px 0 25px;font-size:32px}
.video-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.video-benefits article{border-top:1px solid var(--line);padding-top:20px}
.video-benefits h3{font-size:28px;margin:16px 0}
.video-benefits p{font-size:16px;color:#626358}
header{gap:24px}
nav{gap:22px}
nav>a{white-space:nowrap}
@media(max-width:1200px){
 header{position:relative}
 .menu{display:block;background:none;border:0}
 nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);z-index:10;padding:24px;box-shadow:0 10px 12px #0001}
 nav.open{display:flex;flex-direction:column;align-items:stretch}
 nav a{padding:10px}
}
@media(max-width:850px){.video-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}.video-intro{gap:7%}}
@media(max-width:650px){.video-intro{grid-template-columns:1fr;gap:28px}}
@media(max-width:380px){.video-benefits{grid-template-columns:1fr}}
:root{--page-gutter:7%}
.topline,header,.section,footer{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.hero-copy{padding-left:calc((100% + 40px)*.07 - 20px);padding-right:calc((100% + 40px)*.07 - 20px)}
.hero-bottom{left:calc((100% + 40px)*.07 - 20px);right:calc((100% + 40px)*.07 - 20px)}
.category-grid article{display:flex;flex-direction:column;align-items:flex-start}
.category-grid h3{min-height:1.06em}
.services article>span{flex:0 0 20px;padding-top:5px}
.footer-main{display:grid;grid-template-columns:1fr auto 1fr}
.footer-main>a:last-child{justify-self:end}
.footer-bottom{align-items:baseline}
@media(min-width:1600px){
 :root{--page-gutter:max(7%,calc((100vw - 1380px)/2))}
 .hero-copy{padding-left:calc(var(--page-gutter) - 20px);padding-right:calc(var(--page-gutter) - 20px)}
 .hero-bottom{left:calc(var(--page-gutter) - 20px);right:calc(var(--page-gutter) - 20px)}
}
@media(max-width:1000px){
 .footer-main{grid-template-columns:1fr auto}
}
@media(min-width:651px) and (max-width:850px){
 .feature-grid{grid-template-columns:1fr 1fr}
 .feature>div{left:24px;right:24px}
 .feature h3{font-size:42px}
 .feature-link{min-height:67px}
 .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .brand-section{gap:7%}
}
@media(max-width:650px){
 .hero-copy{padding-left:calc((100% + 20px)*.07 - 10px);padding-right:calc((100% + 20px)*.07 - 10px)}
 .hero-bottom{left:calc((100% + 20px)*.07 - 10px);right:calc((100% + 20px)*.07 - 10px)}
 .footer-main{gap:20px}
}
@media(max-width:380px){
 .footer-main{grid-template-columns:1fr;gap:16px}
 .footer-main>a:last-child{justify-self:start}
}
