@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Manrope:wght@300;400;500;600&display=swap');
:root{--bg:#11100e;--cream:#ede7da;--gold:#c9a16b;--muted:#aaa397;--line:#ffffff20}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--cream);font-family:'DM Sans',Arial,sans-serif;font-weight:300}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:var(--cream);color:#111;padding:12px}.skip:focus{top:10px}header{height:100px;position:absolute;inset:0 0 auto;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #ffffff12}.brand{display:flex;align-items:center;gap:16px;white-space:nowrap}.brand img{width:49px;height:49px;object-fit:contain}.brand span{font-size:17px;letter-spacing:5px}nav{display:flex;gap:36px;font-size:13px}nav a{color:#d1c9bc;transition:color .2s}nav a:hover{color:white}.header-cta{border:1px solid #c9a16b70;padding:13px 19px;font-size:12px}.header-cta span{margin-left:26px}#menu{display:none}.hero{min-height:760px;height:100svh;max-height:1150px;position:relative;overflow:hidden;background:#16120e}.hero-photo{position:absolute;inset:-3%;background:url('assets/hero.png') 60% center/cover;will-change:transform;transform:scale(1.04)}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#080908b8,transparent 80%),linear-gradient(0deg,#11100e,transparent 23%)}.light{position:absolute;inset:0;background:radial-gradient(ellipse at 76% 20%,#d3984520,transparent 50%);mix-blend-mode:screen}.hero-copy{position:relative;z-index:2;padding:clamp(170px,23vh,260px) 6% 130px}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--gold);font-weight:500;text-transform:uppercase;margin:0 0 28px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Manrope,Arial,sans-serif;font-weight:300;letter-spacing:-2.5px}h1{font-size:clamp(52px,6.5vw,100px);line-height:1.08;margin-bottom:28px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1 em{color:#eee2cd}p{line-height:1.75}.intro{font-size:15px;color:#c6beb0;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;background:#e8ddc7;color:#252016;padding:17px 22px;font-size:12px;font-weight:500;transition:background .3s,transform .3s}.button:hover{background:#fff5df;transform:translateY(-3px)}.hero-bottom{position:absolute;bottom:38px;left:6%;right:6%;z-index:2;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#c8ba9f}.hero-bottom a span{margin-left:22px}.section,.intro-section{padding:110px 6%;border-bottom:1px solid var(--line)}.intro-section{padding-top:90px;padding-bottom:90px}.intro-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:10%}.intro-grid h2{font-size:clamp(30px,3.1vw,48px);line-height:1.3}.intro-grid p{font-size:14px;color:var(--muted);max-width:440px}.intro-grid p:last-child{margin-bottom:0}h2{font-size:clamp(36px,4.2vw,66px);line-height:1.16;margin-bottom:30px}.section-heading{margin-bottom:55px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.material{height:320px;overflow:hidden;position:relative;perspective:700px;background:#1f1913}.material>span{position:absolute;bottom:20px;left:20px;color:#dac6a3;font-size:8px;letter-spacing:2px}.wood{background:radial-gradient(at 75% 0%,#9b7551,#261b14 65%)}.wood-object{position:absolute;inset:20% 18%;transform:rotate(-18deg) rotateY(-20deg);filter:drop-shadow(15px 25px 18px #0008);transition:transform 1s}.wood-object i{position:absolute;display:block;background:repeating-linear-gradient(2deg,#7d4a29 0px,#8b5632 2px,#714325 3px,#925d39 8px);box-shadow:inset 3px 3px 5px #d9a67970,12px 10px 0 #412819;border-radius:5px}.wood-object i:nth-child(1){inset:0 15% 0 50%}.wood-object i:nth-child(2){inset:38% 0 38% -20%}.wood-object i:nth-child(3){inset:42% 35% 40% 45%;background:#bba076;box-shadow:none}.service:hover .wood-object{transform:rotate(-8deg) rotateY(5deg)}.yacht{background:linear-gradient(110deg,#34251b,#a7845d)}.window{position:absolute;top:25px;right:-15px;width:75%;height:170px;border:13px solid #30251b;border-radius:80px 0 0 0;background:linear-gradient(#bed0d1 50%,#819899 51%,#657d7a 80%);box-shadow:0 0 20px #e9d6a430}.cabinet{position:absolute;bottom:-60px;left:-20px;width:90%;height:230px;border-radius:0 65% 0 0;background:repeating-linear-gradient(90deg,#513521,#795334 2px,#69452b 8px);border-top:18px solid #e1d0b2;transform:rotate(-10deg);box-shadow:20px 10px 40px #0009}.proto{background:radial-gradient(at 60% 20%,#6a6256,#282725 70%)}.proto-object{position:absolute;inset:23% 20%;transform:rotate(-20deg);filter:drop-shadow(20px 25px 12px #0009)}.proto-object i{position:absolute;background:repeating-linear-gradient(#d7d0bb 0 2px,#bdb5a4 2px 3px);box-shadow:12px 12px 0 #908979,inset 3px 3px 5px #f8edcd;border-radius:4px}.proto-object i:nth-child(1){inset:0 48% 5% 5%}.proto-object i:nth-child(2){inset:45% 0 5% 10%}.proto-object i:nth-child(3){width:25px;height:25px;top:20%;left:20%;border-radius:50%;background:#565043;box-shadow:inset 4px 4px 3px #24221b}.service-title{display:flex;align-items:baseline;gap:24px;margin:26px 0 15px}.service-title small{color:var(--gold);font-size:11px}.service-title h3{font-size:21px;font-weight:400;margin:0}.service p{font-size:13px;color:var(--muted);max-width:340px}.caption{font-size:10px;color:#807b71;margin-top:25px;margin-bottom:0}.atelier{display:grid;grid-template-columns: .85fr 1.15fr;gap:5%;background:radial-gradient(at 80% 50%,#282016,#11100e 65%)}.atelier-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:360px}.mode-buttons{display:flex;margin:30px 0 28px;gap:8px}.mode-buttons button{color:#b9ad99;background:transparent;border:1px solid #665239;padding:10px 18px;font-size:11px}.mode-buttons .active{background:#c8a46d;color:#17130e;border-color:#c8a46d}label{display:flex;justify-content:space-between;max-width:320px;font-size:12px}input[type=range]{display:block;width:min(320px,100%);margin:20px 0 12px;accent-color:var(--gold)}.range-labels{display:flex;justify-content:space-between;max-width:320px;color:#8e877b;font-size:10px}.model-wrap{position:relative;min-height:470px;border:1px solid #b9995f25;background:radial-gradient(ellipse at center,#99805710,transparent 70%)}canvas{width:100%;height:100%;position:absolute;touch-action:pan-y;cursor:grab}canvas:active{cursor:grabbing}.model-tag{position:absolute;top:22px;left:22px;font-size:9px;letter-spacing:2px;color:#a79576;pointer-events:none}.dot{display:inline-block;width:5px;height:5px;background:var(--gold);border-radius:50%;margin-right:8px}.model-hint{position:absolute;bottom:10px;left:22px;color:#978a73;font-size:10px}.model-hint span{margin-left:15px}#reset{position:absolute;bottom:22px;right:22px;background:transparent;border:0;color:var(--gold);font-size:11px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.steps article{border-top:1px solid #82694c;padding-top:25px}.steps span{font-size:11px;color:var(--gold)}.steps h3{font-size:21px;font-weight:400;margin:25px 0 15px}.steps p{font-size:13px;color:var(--muted)}.contact{position:relative;overflow:hidden;min-height:450px;background:radial-gradient(at 85% 100%,#5b3b1a50,transparent 60%)}.contact>div{position:relative}.contact-emblem{position:absolute;width:430px;height:430px;object-fit:contain;right:2%;top:50px;opacity:.14;transform:rotate(-15deg)}.email{display:block;color:#ada18e;font-size:12px;margin-top:24px}footer{display:flex;align-items:center;justify-content:space-between;padding:35px 6%;gap:30px}footer .brand img{width:34px;height:34px}footer .brand span{font-size:12px;letter-spacing:3px}footer p{font-family:Georgia,serif;font-style:italic;font-size:12px;letter-spacing:1px;color:#9e9382;margin:0}footer>a:last-child{font-size:10px;color:#a99b87}.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s,transform .9s}.js-motion .reveal.visible{opacity:1;transform:none}@media(min-width:1600px){.section,.intro-section{padding-left:max(6%,calc((100% - 1440px)/2));padding-right:max(6%,calc((100% - 1440px)/2))}}@media(max-width:850px){header{height:85px}nav{gap:20px}.header-cta{display:none}.hero{min-height:720px}.hero-copy{padding-top:200px}.hero-photo{background-position:65% center}.hero:after{background:linear-gradient(90deg,#080908df,#08090830),linear-gradient(0deg,#11100e,transparent 30%)}.intro-grid{gap:6%}.section,.intro-section{padding:75px 6%}.material{height:240px}.services{gap:18px}.atelier{grid-template-columns:1fr 1fr;gap:25px}.model-wrap{min-height:400px}.steps{gap:22px}.service-title{gap:12px}.service-title h3{font-size:18px}}@media(max-width:600px){header{height:80px}.brand img{width:40px;height:40px}.brand span{font-size:13px;letter-spacing:3px}#menu{display:block;background:none;border:1px solid #b2946240;color:var(--cream);font-size:20px;padding:7px 12px}nav{display:none;position:absolute;top:80px;left:0;right:0;padding:30px 6%;background:#14120ffa;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column}.hero{height:90svh;min-height:690px;max-height:900px}.hero-copy{padding-top:180px}.hero-photo{background-position:68% center;opacity:.8}.hero h1{font-size:53px;letter-spacing:-2px}.desktop{display:none}.eyebrow{font-size:8px;letter-spacing:2px}.intro{font-size:13px;max-width:280px}.intro br{display:none}.hero-bottom{bottom:28px;font-size:7px;letter-spacing:1px}.hero-bottom>span{max-width:150px;line-height:1.8}.hero-bottom a{max-width:130px;line-height:1.8;text-align:right}.intro-grid,.services,.atelier{grid-template-columns:1fr}.intro-grid{gap:20px}.intro-grid h2{font-size:32px}.section-heading{margin-bottom:35px}h2{font-size:37px;letter-spacing:-1.5px}.services{gap:32px}.material{height:300px}.service-title h3{font-size:22px}.service p{max-width:none}.atelier{gap:40px}.model-wrap{height:420px;min-height:0}.steps{grid-template-columns:1fr 1fr;gap:30px 24px}.steps h3{font-size:20px}.contact-emblem{width:330px;right:-120px;top:80px;opacity:.09}footer{flex-wrap:wrap;gap:24px}footer p{font-size:10px}footer>a:last-child{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.js-motion .reveal{opacity:1;transform:none}}
/* The original warm, editorial direction */
.hero-photo{inset:-3% -3% -3% 16%;background-image:url('assets/emblem-studio.png');background-position:center;background-size:cover}.hero:after{background:linear-gradient(90deg,#100e0b 0%,#100e0be0 16%,#100e0b65 39%,transparent 70%),linear-gradient(0deg,#11100e,transparent 25%)}.hero-copy{padding-top:clamp(200px,28vh,300px)}h1{font-size:clamp(50px,5.4vw,84px);max-width:950px;line-height:1.12}.hero h1 em{font-size:.94em}.hero-copy .intro{max-width:420px}.project-thumb{display:block;position:relative;overflow:hidden;height:330px;perspective:900px;background:#1d1811}.project-thumb img{height:100%;width:100%;object-fit:cover;transition:transform 1.3s cubic-bezier(.2,.7,.3,1),filter .8s;filter:brightness(.84)}.project-thumb:hover img{transform:scale(1.055);filter:brightness(1)}.project-thumb span{position:absolute;bottom:20px;left:18px;font-size:9px;letter-spacing:2px;text-shadow:0 1px 10px #000}.project-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:7%;align-items:center}.project-image-wrap{position:relative;overflow:hidden;background:#1a1510;aspect-ratio:1.3}.project-image-wrap img{width:100%;height:100%;object-fit:cover;animation:project-in .8s ease both}.project-image-wrap>span{position:absolute;bottom:22px;left:24px;letter-spacing:3px;font-size:10px}.project-story h3{font-family:Manrope,Arial,sans-serif;font-size:38px;line-height:1.25;font-weight:300;letter-spacing:-1px}.project-story>p:not(.eyebrow){color:var(--muted);font-size:14px}.project-tabs{display:flex;flex-direction:column;margin-top:35px}.project-tabs button{padding:17px 0;text-align:left;border:0;border-top:1px solid var(--line);background:transparent;color:#8e877a;font-size:12px;transition:color .3s,padding .3s}.project-tabs button.active{color:var(--gold);padding-left:14px}.model-choice{display:flex;gap:10px;margin-top:30px}.model-choice button{background:none;border:0;border-bottom:1px solid #58472f;color:#9e927e;padding:10px 0;margin-right:15px;font-size:12px}.model-choice button.active{color:#e2c48f;border-color:#e2c48f}.mode-buttons{margin-top:20px}.model-wrap{min-height:530px}.contact{background:linear-gradient(90deg,#11100ef5,#11100e70),url('assets/emblem-studio.png') center 75%/cover}.contact-emblem{opacity:.07}@keyframes project-in{from{opacity:.3;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@media(max-width:850px){.hero-photo{left:0;background-position:60%}.hero-copy{padding-top:220px}.hero:after{background:linear-gradient(90deg,#100e0beb,#100e0b44 80%),linear-gradient(0deg,#11100e,transparent 30%)}.project-thumb{height:270px}.project-layout{gap:5%}.project-story h3{font-size:30px}}@media(max-width:600px){.hero h1{font-size:46px}.hero-copy{padding-top:180px}.hero-photo{left:-25%;right:-25%;background-position:60%;opacity:.9}.hero:after{background:linear-gradient(90deg,#100e0bdd,#100e0b55),linear-gradient(0deg,#11100e,transparent 30%)}.hero-copy .intro{max-width:260px}.project-thumb{height:320px}.project-layout{grid-template-columns:1fr;gap:30px}.project-story h3{font-size:32px}.model-wrap{min-height:400px}.mode-buttons button{padding:10px 12px}.model-choice button{font-size:11px}}
.project-open{background:none;border:0;border-bottom:1px solid var(--gold);color:var(--cream);padding:12px 0;font-size:12px}.project-open span{margin-left:35px}.explode-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:25px}.explode-heading label{font-size:12px}#explode-toggle{background:#ceb17f;color:#1e180f;border:0;padding:9px 12px;font-size:10px}#assembly-controls{border-top:1px solid var(--line);padding-bottom:24px}#assembly-explode{width:100%}#part-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}#part-list button{font-size:9px;color:#b4a38a;background:transparent;border:1px solid #9f80533a;padding:6px 9px}#part-list button.active{background:#c5a16d;color:#19140c}.atelier{align-items:center}.model-wrap{height:650px;background:radial-gradient(ellipse at 50% 45%,#98774720,transparent 70%)}#project-dialog{padding:0 0 80px;border:1px solid #655237;width:min(1200px,94vw);max-height:94svh;background:#13110e;color:var(--cream);overscroll-behavior:contain}#project-dialog::backdrop{background:#080706ed;backdrop-filter:blur(12px)}#project-close{position:sticky;top:15px;float:right;margin:15px 20px -55px 0;z-index:5;background:#12100edb;border:1px solid #c7a36a70;color:var(--cream);padding:12px 20px;font-size:12px}.case-hero{position:relative;height:480px;overflow:hidden}.case-hero img{width:100%;height:100%;object-fit:cover}.case-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#13110e,transparent 90%)}.case-hero>div{position:absolute;bottom:20px;left:7%;right:7%;z-index:1}.case-hero h2{font-size:52px;max-width:700px;margin:0}.case-hero .eyebrow{margin-bottom:18px}#case-content{padding:45px 7%;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}#case-content h3{font-size:20px;font-weight:300}#case-content p{font-size:14px;color:#b2a898}#case-content small{font-size:10px;color:var(--gold);display:block;margin-bottom:20px}#project-dialog>.button{margin-left:7%}.hero-photo{animation:cinema-entry 3s cubic-bezier(.15,.6,.3,1) both}@keyframes cinema-entry{from{filter:brightness(.35);opacity:.2}to{filter:brightness(1);opacity:1}}@media(max-width:600px){.model-wrap{height:460px}.case-hero{height:370px}.case-hero h2{font-size:35px}#case-content{grid-template-columns:1fr;gap:25px}#project-dialog{width:96vw}.explode-heading{gap:8px}}
.case-bottom{padding:8px 7% 0;display:grid;grid-template-columns:1fr 2.15fr;gap:35px;align-items:start}.case-bottom>.button{justify-self:start;white-space:nowrap;gap:24px;margin-top:32px}.gallery-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:15px}.gallery-heading h3{font-size:12px;font-weight:400;letter-spacing:.6px;margin:0}.gallery-heading>span{font-size:10px;color:var(--gold)}#gallery-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gallery-thumb{min-width:0;padding:0;background:#201a12;border:1px solid #b28a4f35;text-align:left;color:var(--cream);overflow:hidden;transition:border-color .3s,transform .3s}.gallery-thumb:hover{border-color:#cfab70;transform:translateY(-3px)}.gallery-thumb img{width:100%;height:108px;display:block;object-fit:cover}.gallery-thumb>span{display:block;font-size:9px;line-height:1.5;padding:8px 9px;color:#c9b692}.gallery-thumb:focus-visible{outline-offset:3px}.case-gallery{min-width:0}@media(max-width:850px){.case-bottom{grid-template-columns:1fr;gap:28px}.case-bottom>.button{grid-row:2;margin-top:0}.gallery-thumb img{height:130px}}@media(max-width:600px){#gallery-thumbnails{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-thumb img{height:125px}.case-bottom{padding-top:0}#photo-dialog{padding:12px;width:96vw}.photo-stage{grid-template-columns:30px minmax(0,1fr) 30px;gap:4px}.photo-stage>button{width:30px;height:42px}.photo-stage>img{height:65svh}.gallery-heading h3{font-size:12px}}

.gallery-thumb.selected{border-color:#d8b377;box-shadow:0 0 0 1px #d8b377}.gallery-thumb.selected>span{color:#f0d5a2}.case-hero img{transition:opacity .3s}
.case-hero.gallery-photo img{object-fit:contain;object-position:right center;background:#17130f}.gallery-thumb img{object-fit:contain;background:#17130f}

.email-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;margin-top:24px;border:1px solid #b6946155;color:#d3b17d;transition:background .25s,color .25s}.email-icon:hover{background:#c8a46d;color:#17130e}.email-icon svg{display:block}

.site-footer{display:block;padding:35px 6% 24px}.footer-brand{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.footer-bottom small{font-size:11px}.footer-links{display:flex;align-items:center;gap:25px}.footer-links a:hover{color:var(--cream)}.footer-links .email-icon{margin:0;padding:0;border:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}.footer-links .email-icon svg{width:19px;height:19px}.privacy-page{max-width:850px;margin:auto;padding:65px 6% 90px}.privacy-page .brand{margin-bottom:65px}.privacy-page h1{font-size:48px}.privacy-page h2{font-size:23px;letter-spacing:-.5px;margin-top:35px;margin-bottom:15px}.privacy-page p{color:var(--muted);font-size:14px}.privacy-page a:not(.brand){text-decoration:underline;text-underline-offset:4px}.privacy-page .privacy-note{border-left:1px solid var(--gold);padding-left:20px}
@media(max-width:600px){.footer-brand{align-items:flex-start;flex-direction:column;gap:15px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:18px}.footer-links{width:100%;gap:24px}.footer-links>a:last-child{margin-left:auto}.privacy-page h1{font-size:38px}}

/* Safari/iOS: use vector arrows to prevent ↗ being displayed as a colored emoji. */
.ja-arrow{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;vertical-align:middle;line-height:0}
.ja-arrow svg{display:block;width:16px;height:16px}
.ja-arrow-inline svg{width:12px;height:12px}
.ja-arrow-scroll svg{width:12px;height:12px}
.ja-arrow-reverse svg{transform:rotate(180deg)}
.project-thumb .ja-arrow-inline svg{width:12px;height:12px;vertical-align:middle}
#explode-toggle .ja-arrow svg{width:11px;height:11px}
