:root{--ink:#111818;--paper:#f2f0e9;--muted:#b9bcb6;--gold:#c8b792;--line:#ffffff25}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font:16px/1.7 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}header{height:100px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:5;top:0;width:100%;border-bottom:1px solid var(--line)}.brand{font:36px/1 Georgia,serif;letter-spacing:-3px;display:flex;align-items:center;gap:17px}.brand span{font:12px/1.3 Manrope,Arial,sans-serif;letter-spacing:4px}nav{display:flex;gap:34px;align-items:center;font-size:14px}nav a{transition:color .2s}nav a:hover{color:var(--gold)}.nav-contact{border-bottom:1px solid var(--gold);padding:8px 0}.menu{display:none}.hero{min-height:850px;height:100svh;max-height:1150px;position:relative;overflow:hidden;display:flex;align-items:center}.hero-image{position:absolute;height:100%;width:100%;object-fit:cover;object-position:72% center;animation:slowzoom 16s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#071011eb 0%,#091112b5 37%,#09111210 78%),linear-gradient(0deg,#111818 0%,transparent 25%)}.hero-content{position:relative;width:100%;padding:100px 8% 70px}.eyebrow,.section-label{font-size:12px;font-weight:500;letter-spacing:2.4px;color:var(--gold)}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h1{font-size:clamp(58px,5.6vw,88px);line-height:1.04;letter-spacing:-1.5px;margin:30px 0}em{font-weight:400;color:var(--gold)}.intro{color:#e0e2dc;font-size:17px;line-height:1.9;margin:28px 0 42px}.button{display:inline-block;font-size:14px;letter-spacing:.5px;padding:17px 26px;border:1px solid #b9b7a9;transition:background .25s,color .25s}.button:hover{background:var(--paper);color:var(--ink)}.hero-bottom{position:absolute;bottom:35px;left:8%;right:8%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.5px;color:var(--muted)}.hero-bottom a{font-size:14px;letter-spacing:0}.section{padding:115px 8%;display:grid;grid-template-columns:20% 1fr;gap:40px}.section-label{padding-top:7px;color:#969f99;letter-spacing:1.5px}h2{font-size:clamp(42px,4.4vw,66px);line-height:1.12;margin:23px 0 40px;letter-spacing:-.6px}.two-text{display:grid;grid-template-columns:1fr 1fr;gap:50px;color:#bac2bc;max-width:870px}.two-text p{margin:0}.signature{font:28px 'Cormorant Garamond',Georgia,serif;margin-top:40px}.signature span{display:block;font:12px Manrope,Arial,sans-serif;letter-spacing:1.6px;color:#8f9991;margin-top:12px}.studio{border-bottom:1px solid var(--line)}.skills{background:#eff0e9;color:var(--ink)}.skills .eyebrow{color:#776749}.skills em{color:#837052}.accordion{margin-top:55px}details{border-top:1px solid #17201b33}details:last-child{border-bottom:1px solid #17201b33}summary{cursor:pointer;display:flex;align-items:center;gap:25px;font:32px/1.3 'Cormorant Garamond',Georgia,serif;padding:25px 0;list-style:none}summary::-webkit-details-marker{display:none}summary span{font:12px Manrope,Arial,sans-serif;color:#6d786f}summary i{margin-left:auto;font:24px Manrope,Arial,sans-serif;font-style:normal;transition:transform .2s}details[open] summary i{transform:rotate(45deg)}.detail{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;padding:0 0 32px 40px;color:#48564b}.detail p{margin:0}.detail ul{margin:0;padding-left:20px;font-size:14px}.detail li{padding-bottom:8px}.detail-banner{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:#192220}.crop{overflow:hidden;min-height:500px}.crop img{width:100%;height:100%;object-fit:cover;object-position:85% center;transform:scale(1.15)}.banner-copy{padding:100px 12%;align-self:center}.banner-copy h2{font-size:52px}.banner-copy p:last-child{color:#bac2bc}.method{border-bottom:1px solid var(--line)}.steps{display:grid;grid-template-columns:1fr 1fr;gap:35px 55px}.steps article{border-top:1px solid var(--line);padding-top:24px}.steps span{font-size:12px;color:var(--gold)}.steps h3{font-size:33px;margin:12px 0}.steps p{color:#bac2bc;margin:0}.contact{background:#e8e5db;color:var(--ink)}.contact .eyebrow,.contact em{color:#7e6b48}.contact-intro{color:#586157;margin-bottom:30px}.contact-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.light{border-color:#7e806e;background:var(--ink);color:var(--paper)}.light:hover{background:#344039;color:white}.text-link{font-size:14px;border-bottom:1px solid #8e947f;padding:8px 0}.contact-details{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:25px;border-top:1px solid #1b281a33;margin-top:65px;padding-top:32px}.contact-details span{display:block;font-size:12px;letter-spacing:1.8px;color:#6e776b;margin-bottom:12px}.contact-details p{margin:0;font-size:14px}.contact-details a{font-size:14px}footer{display:flex;align-items:center;gap:35px;justify-content:space-between;padding:45px 8%;color:#a2aca3}footer p,footer>span{font-size:12px}footer .brand{color:var(--paper)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}section{scroll-margin-top:25px}@keyframes slowzoom{from{transform:scale(1.05)}to{transform:scale(1)}}
@media(max-width:900px){header{height:85px;padding:0 6%}nav{gap:20px}nav a{font-size:12px}.hero{min-height:760px}.section{grid-template-columns:1fr;gap:20px;padding:80px 7%}.section-label{margin-bottom:0}.detail-banner{grid-template-columns:1fr 1fr}.banner-copy{padding:65px 10%}.banner-copy h2{font-size:40px}.contact-details{gap:18px}footer{flex-wrap:wrap}}
@media(max-width:620px){header{height:78px}.brand{font-size:30px}.menu{display:block;color:var(--paper);background:none;border:1px solid #ffffff55;padding:7px 13px;font-size:14px}nav{display:none;position:absolute;top:78px;left:0;right:0;background:#111818;padding:25px 7%;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}nav a{font-size:16px}.hero{height:90svh;min-height:700px;max-height:none}.hero-image{object-position:68% center}.hero-shade{background:linear-gradient(90deg,#071011d9,#07101165),linear-gradient(0deg,#111818,transparent 60%)}.hero-content{padding:100px 7% 70px}.eyebrow{font-size:12px;letter-spacing:1.4px}h1{font-size:54px;letter-spacing:-1px}.intro{font-size:16px}.hero-bottom{left:7%;right:7%;bottom:25px}.hero-bottom>span{font-size:10px;letter-spacing:1px}.hero-bottom a{font-size:12px}.section{padding:65px 7%}h2{font-size:42px;margin:20px 0 30px}.two-text{grid-template-columns:1fr;gap:22px}.detail{grid-template-columns:1fr;padding-left:0;gap:18px}summary{font-size:27px;gap:16px}.accordion{margin-top:35px}.detail-banner{grid-template-columns:1fr}.crop{height:380px;min-height:0}.banner-copy{padding:55px 7%}.banner-copy h2{font-size:42px}.steps{grid-template-columns:1fr;gap:28px}.contact-details{grid-template-columns:1fr;gap:27px;margin-top:45px}footer{padding:35px 7%;gap:20px;flex-direction:column;align-items:flex-start}footer p{margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-image{animation:none}*{transition:none!important}}

.technology{background:#18201e;border-bottom:1px solid var(--line)}.technology-intro{max-width:720px;color:#bac2bc;margin-bottom:45px}.technology-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.technology figure{margin:0}.tech-image{height:350px;overflow:hidden;background:#e9e8e2;display:flex;align-items:center;justify-content:center}.tech-image img{display:block;width:100%;height:100%;object-fit:cover}.machine .tech-image img{object-fit:contain;padding:20px}.technology figcaption{padding:25px 0}.technology figcaption>span{font-size:12px;letter-spacing:1.8px;color:var(--gold)}.technology h3{font-size:32px;line-height:1.2;margin:14px 0}.technology figcaption p{color:#bac2bc;font-size:14px;margin:0}.image-credit{font-size:12px;color:#a4aca5;margin:5px 0 30px}.image-credit a{text-decoration:underline}.technology .text-link{display:inline-block}@media(max-width:1100px){nav{gap:20px}.tech-image{height:280px}}@media(max-width:620px){.technology-grid{grid-template-columns:1fr;gap:20px}.tech-image{height:320px}}

.aesthetic{display:grid;grid-template-columns:1.15fr 1fr;background:#0d1413}.aesthetic-image{display:flex;align-items:center;background:#101615;padding:30px 0}.aesthetic-image img{width:100%;height:auto;display:block}.aesthetic-copy{padding:85px 12% 85px 10%;align-self:center}.aesthetic-copy h2{font-size:clamp(40px,3.5vw,57px)}.aesthetic-copy>p:not(.eyebrow):not(.section-label){color:#bac2bc}.aesthetic-copy .eyebrow{margin-top:32px}.aesthetic-note{border-top:1px solid var(--line);padding-top:22px;margin:30px 0}.aesthetic-note span{font-size:12px;letter-spacing:1.7px;color:var(--gold)}.aesthetic-note p{font-size:14px;color:#bac2bc}.aesthetic .text-link{display:inline-block}@media(max-width:900px){.aesthetic{grid-template-columns:1fr}.aesthetic-image{padding:0}.aesthetic-image img{max-height:650px;object-fit:contain}.aesthetic-copy{padding:60px 7%}}

.project-form{margin:40px 0 45px;padding:35px 0;border-top:1px solid #1b281a33;border-bottom:1px solid #1b281a33}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project-form label{display:block;font-size:14px;color:#344034}.project-form input,.project-form select,.project-form textarea{display:block;width:100%;margin-top:9px;padding:14px 15px;background:#f4f2eb;color:#172018;border:1px solid #8b938280;border-radius:0;font:16px/1.5 Manrope,Arial,sans-serif}.project-form textarea{resize:vertical;min-height:150px}.project-form>label{margin-top:25px}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{outline:2px solid #7e6b48;outline-offset:2px}.form-info,.form-note{font-size:12px;line-height:1.7;color:#586157;max-width:650px}.form-info{margin:23px 0}.project-form button{cursor:pointer}.form-note{margin-bottom:0}@media(max-width:620px){.form-grid{grid-template-columns:1fr;gap:20px}}

.brand{display:block;line-height:0;flex-shrink:0}.official-logo{display:block;width:220px;height:90px;object-fit:contain;filter:brightness(0) saturate(100%) invert(94%) sepia(9%) saturate(420%) hue-rotate(345deg) brightness(101%) contrast(89%)}footer .official-logo{width:200px;height:82px}@media(max-width:1100px){nav{gap:17px}.official-logo{width:195px;height:80px}}@media(max-width:620px){.official-logo{width:180px;height:74px}footer .official-logo{width:185px;height:76px}}

/* Service pages and search-friendly navigation, matched to the studio identity. */
.service-links{display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:32px}.service-links a{font-size:14px;border-bottom:1px solid #837052;padding-bottom:6px}
.faq-section{background:#192220}.faq-list details{border-color:var(--line)}.faq-list summary{font:500 18px/1.5 Manrope,Arial,sans-serif;gap:20px}.faq-list p{color:#bac2bc;margin:0 0 25px;max-width:760px}.faq-list i{flex-shrink:0}
.service-page header{position:relative}.service-opening{padding:55px 8% 80px;border-bottom:1px solid var(--line)}.breadcrumbs{color:#a5b0a6;font-size:13px;margin:0 0 42px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.service-opening h1{font-size:clamp(44px,5.2vw,76px);max-width:1000px}.service-intro{max-width:730px;color:#bac2bc;font-size:18px;margin:30px 0}.service-body{padding:75px 8%;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:70px}.service-body article section{margin-bottom:45px}.service-body h2{font-size:38px;margin:0 0 22px}.service-body p,.service-body li{color:#bac2bc}.service-body li{margin-bottom:12px}.service-body article a{color:var(--gold);text-decoration:underline;text-underline-offset:4px}.service-photo{margin:0 0 38px}.service-photo img{display:block;width:100%;height:auto}.service-photo figcaption{font-size:13px;color:#b0b8ae;margin:14px 0}.service-contact,.related-services{border-top:1px solid var(--line);padding-top:25px;margin-top:35px}.service-contact h2{font-size:32px}.service-contact a,.related-services a{display:block;color:var(--gold);margin:14px 0;font-size:16px}.service-cta{padding:70px 8%;background:#1b2722}.service-cta h2{margin:18px 0}.service-cta p:not(.eyebrow){color:#bac2bc}.service-cta .button{margin-top:20px}
@media(max-width:900px){.service-body{grid-template-columns:1fr;gap:30px}.service-aside{display:grid;grid-template-columns:1fr 1fr;gap:30px}.service-photo{grid-column:1/-1;max-width:650px}.service-opening{padding:35px 7% 55px}.service-body{padding:55px 7%}}
@media(max-width:620px){.hero h1{font-size:46px}.service-opening h1{font-size:44px;letter-spacing:-.7px}.service-aside{display:block}.service-links{display:grid;gap:18px}.service-links a{width:fit-content}.service-body h2{font-size:34px}.faq-list summary{font-size:16px}}
