:root{--bg:#0c0a08;--surface:#181512;--ink:#fff;--muted:#b7b1a8;--accent:#c9a45a;--text:#e2dbd0;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--edge:clamp(22px,4.2vw,76px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--serif);font-size:18px;line-height:1.5}button,a{font:inherit}a{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400;letter-spacing:-.035em;line-height:1.04}h1{font-size:clamp(56px,7.5vw,124px)}h2{font-size:clamp(42px,5vw,80px)}h3{font-size:clamp(35px,4vw,60px)}p{color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip{position:absolute;left:10px;top:-100px;z-index:50;background:var(--accent);color:var(--bg);padding:10px}.skip:focus{top:10px}
.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:27px var(--edge);font-family:var(--sans)}.wordmark{font-size:23px;font-weight:800;letter-spacing:-.07em;text-decoration:none;white-space:nowrap}.wordmark-mark,.site-footer strong span{color:var(--accent)}.site-header nav{display:flex;gap:clamp(18px,3vw,55px)}.site-header nav a{font-size:13px;text-decoration:none;transition:color .2s}.site-header nav a:hover,.text-link:hover{color:var(--accent)}.language{background:var(--surface);color:var(--ink);border:0;padding:9px 12px;cursor:pointer;font-size:12px;line-height:1}.language:hover{background:var(--ink);color:var(--bg)}
.hero{min-height:810px;height:100svh;position:relative;display:grid;grid-template-columns:43% 57%;overflow:hidden}.hero-copy{z-index:2;position:relative;padding:clamp(170px,19vh,235px) 0 70px var(--edge);max-width:680px}.hero-location,.contact-kicker{font:700 13px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.hero h1{max-width:680px;margin:35px -2.5em 38px 0;position:relative;z-index:2;pointer-events:none;text-wrap:balance}.hero-intro{font-size:clamp(18px,1.5vw,23px);line-height:1.5;max-width:450px;margin-bottom:38px}.text-link{display:inline-block;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:8px;font:600 15px/1.2 var(--sans);transition:color .2s}.hero-image{height:100%;width:100%;overflow:hidden}.hero-image img{object-position:61% center}.hero-side{position:absolute;z-index:2;right:var(--edge);bottom:32px;writing-mode:vertical-rl;font:600 12px var(--sans);letter-spacing:.16em;color:#fff}.shutter img{animation:shutter 1.05s cubic-bezier(.2,.65,.25,1) both}@keyframes shutter{from{clip-path:inset(0 100% 0 0);transform:scale(1.1)}to{clip-path:inset(0 0 0 0);transform:scale(1)}}
.section-frame{padding:135px var(--edge) 120px}.section-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:8vw;align-items:end;margin-bottom:80px}.section-heading h2{max-width:820px;margin:0}.section-heading p{font-size:19px;max-width:480px;margin:0}.selector{display:flex;gap:24px;margin:0 0 32px;font-family:var(--sans)}.selector-button{padding:11px 0;border:0;border-bottom:2px solid transparent;background:transparent;color:#8f8a84;font:600 15px var(--sans);cursor:pointer;transition:color .2s,border-color .2s}.selector-button:hover,.selector-button.active{color:var(--ink);border-color:var(--accent)}.product-stage{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(25px,5vw,90px);align-items:start}.product-main-image{height:min(70vw,780px);min-height:530px;overflow:hidden;background:#2b2620}.product-main-image img{object-position:center 36%;transition:opacity .2s}.product-copy{padding:clamp(0px,5vw,70px) 0 0}.product-type{font:700 12px var(--sans);letter-spacing:.12em;color:var(--accent);margin-bottom:28px}.product-copy h3{max-width:550px;margin-bottom:25px}.product-copy>p:not(.product-type){max-width:400px;color:var(--muted);font-size:18px}.product-detail-image{margin:70px 0 0 auto;width:min(83%,390px);height:340px;background:#eee;overflow:hidden}.product-detail-image img{object-fit:cover}.image-note{font:13px/1.5 var(--sans);color:var(--muted);margin:24px 0 0;max-width:800px}
.approach{display:grid;grid-template-columns:46% 54%;min-height:760px;background:var(--surface)}.approach-photo{min-height:760px}.approach-photo img{object-position:center 35%}.approach-copy{padding:clamp(75px,10vw,160px) var(--edge) 90px clamp(55px,8vw,140px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.approach-copy h2{max-width:700px;margin-bottom:50px}.approach-copy p{max-width:550px;font-size:18px;color:var(--muted)}.approach-copy .approach-lead{font-size:clamp(22px,2vw,29px);color:var(--ink)}.approach-copy .text-link{margin-top:24px}
.contact{position:relative;min-height:790px;display:flex;align-items:center;justify-content:flex-end;padding:80px var(--edge);overflow:hidden;background:#242322}.contact-image{position:absolute;inset:0}.contact-image img{object-position:35% 41%;filter:brightness(.57)}.contact-card{position:relative;z-index:1;width:min(100%,480px);padding:clamp(30px,4vw,60px);background:var(--bg)}.contact-card h2{font-size:clamp(39px,4vw,59px);margin:35px 0 27px}.contact-card p:not(.contact-kicker){color:var(--muted);font-size:18px}.contact-button{display:block;margin-top:43px;background:var(--accent);color:var(--bg);padding:19px 23px;text-align:center;text-decoration:none;font:700 15px/1.2 var(--sans);transition:background .2s,transform .2s}.contact-button:hover{background:#e0bf7b;transform:translateY(-2px)}
.site-footer{padding:60px var(--edge) 28px;background:var(--bg);display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px}.site-footer p,.site-footer a,.site-footer small{font:14px var(--sans);color:var(--muted)}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--ink)}.site-footer strong{display:block;width:100%;font:800 clamp(85px,17.4vw,300px)/.9 var(--sans);letter-spacing:-.09em;margin:25px 0 0;white-space:nowrap}.site-footer small{width:100%}
@media (max-width:900px){.hero{grid-template-columns:47% 53%;min-height:700px}.hero h1{font-size:clamp(54px,7vw,83px)}.section-heading{gap:40px}.product-stage{gap:30px}.approach-copy{padding:70px 35px}.approach-photo{min-height:650px}.approach{min-height:650px}}
@media (max-width:680px){body{font-size:16px}.site-header{padding:22px var(--edge)}.site-header nav{gap:16px}.site-header nav a{font-size:12px}.site-header nav a:nth-child(2){display:none}.wordmark{font-size:19px}.hero{min-height:780px;height:auto;display:flex;flex-direction:column}.hero-copy{padding:126px var(--edge) 35px}.hero h1{font-size:clamp(52px,13vw,76px);margin:23px 0 23px;max-width:520px}.hero-location{font-size:11px}.hero-intro{font-size:17px;margin-bottom:25px}.hero-image{height:390px;min-height:0}.hero-image img{object-position:65% 43%}.hero-side{right:var(--edge);bottom:17px;font-size:10px}.section-frame{padding:85px var(--edge)}.section-heading{display:block;margin-bottom:40px}.section-heading h2{margin-bottom:25px}.section-heading p{font-size:17px}.selector{gap:22px}.selector-button{font-size:14px}.product-stage{display:flex;flex-direction:column;gap:35px}.product-main-image{height:500px;min-height:0;width:100%}.product-copy{padding:0}.product-copy h3{font-size:42px}.product-detail-image{margin:35px 0 0 auto;width:65%;height:280px}.image-note{font-size:13px}.approach{display:flex;flex-direction:column}.approach-photo{height:520px;min-height:0}.approach-copy{padding:70px var(--edge) 80px}.approach-copy h2{margin-bottom:35px}.approach-copy p{font-size:17px}.contact{min-height:700px;padding:330px 18px 55px;align-items:flex-end}.contact-image img{object-position:43% 25%}.contact-card{width:100%;padding:28px}.contact-card h2{font-size:41px}.site-footer{padding-top:55px}.site-footer strong{font-size:17.3vw}}
@media (max-width:380px){.site-header nav a:nth-child(3){display:none}.hero-image{height:330px}.product-main-image{height:420px}.contact-card h2{font-size:35px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.shutter img{animation:none}.contact-button,.selector-button,.site-header nav a,.text-link{transition:none}}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.65,.2,1)}.reveal.in-view{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
