@import url('/assets/fonts.css');
:root{--paper:#faf9f6;--ink:#1c1c1c;--text:#3c3c3c;--gold:#c5a358;--line:#dedbd3;--muted:#6a665f;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--sans)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05}h1{font-size:clamp(3.6rem,7.3vw,7rem);letter-spacing:-.045em}h2{font-size:clamp(2.6rem,4.3vw,4.3rem);letter-spacing:-.035em}h3{font-size:2rem;letter-spacing:-.025em}em{font-weight:400}p{color:var(--text)}.wrap{max-width:1440px;margin:auto;padding:0 6%}.skip{position:absolute;top:-100px;z-index:100;background:var(--paper);padding:15px}.skip:focus{top:0}.header{height:105px;border-bottom:1px solid var(--line);background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 4.5%;position:relative;z-index:10}.wordmark{display:inline-flex;flex-direction:column;align-items:center;line-height:.92}.wordmark strong{font:500 35px/.95 var(--serif);letter-spacing:.045em}.wordmark small{font-size:9px;letter-spacing:.44em;margin-top:9px;padding-left:4px}.nav{display:flex;align-items:center;gap:28px}.nav>a{font-size:14px;color:var(--text);position:relative;padding:8px 0}.nav>a:after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold);transition:width .2s}.nav>a:hover:after,.nav>a[aria-current=page]:after{width:100%}.head-actions{display:flex;gap:25px;align-items:center}.languages{display:flex;gap:8px;font-size:12px;white-space:nowrap}.languages a{color:var(--muted)}.languages a[aria-current=true]{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.head-cta{border:1px solid var(--ink);padding:11px 19px;font-size:13px;white-space:nowrap}.head-cta:hover{background:var(--ink);color:white}.menu-button{display:none;background:none;border:0;padding:10px;font-size:14px}.eyebrow{font:500 12px/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase}.gold{color:var(--gold)}.hero{display:grid;grid-template-columns:46% 54%;min-height:660px}.hero-copy{padding:82px 10% 60px 13%;display:flex;flex-direction:column;align-items:flex-start}.hero-copy h1{font-size:clamp(3.5rem,6.2vw,6.3rem);margin:27px 0 24px}.hero-copy h1 em{color:#927746}.hero-copy>p{max-width:355px;font-size:16px;line-height:1.85}.button{display:inline-flex;align-items:center;justify-content:center;gap:34px;padding:16px 25px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font-size:14px;line-height:1.5;transition:background .2s}.button:hover{background:#37332a}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.outline{background:transparent;color:var(--ink)}.button:disabled{opacity:.45}.hero-copy .button{margin-top:35px}.hero-footnote{margin-top:auto;padding-top:45px;display:flex;align-items:center;gap:15px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.hero-footnote:before{content:'';width:32px;height:1px;background:var(--gold)}.hero-visual{position:relative;overflow:hidden;background:#211d16;min-height:600px}.hero-visual>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-visual:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}.hero-caption{position:absolute;bottom:36px;left:35px;right:35px;z-index:1;color:white;display:flex;justify-content:space-between;align-items:end;gap:15px}.hero-caption span{font:italic 25px var(--serif)}.hero-caption small{font-size:12px;color:#e4d7be;text-transform:uppercase;letter-spacing:.15em;text-align:right}.values{display:flex;justify-content:space-between;gap:20px;padding:24px 6%;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.values span{display:flex;align-items:center;gap:13px}.values span:before{content:'✧';color:#98783c;font-size:19px}.section{padding-top:108px;padding-bottom:108px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-head .eyebrow{margin-bottom:17px}.text-link{display:inline-flex;gap:25px;align-items:center;font-size:14px;border-bottom:1px solid #93897a;padding-bottom:6px;white-space:nowrap}.text-link:hover{color:#927746}.intro{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}.intro .eyebrow{margin-bottom:23px}.intro h2{max-width:480px}.intro-copy{padding-top:35px}.intro-copy p+p{margin-top:18px}.intro-copy .text-link{margin-top:30px}.stats{display:flex;gap:50px;border-top:1px solid var(--line);margin-top:35px;padding-top:24px}.stats strong{display:block;font:400 36px var(--serif)}.stats span{display:block;font-size:12px;color:var(--muted);margin-top:3px}.techniques{background:#efede7}.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.tech-card .photo{height:310px;overflow:hidden;background:#d6cec0}.tech-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.tech-card:hover img{transform:scale(1.04)}.tech-card:nth-child(2) img{object-position:85% 45%;transform:scale(1.6)}.tech-card:nth-child(2):hover img{transform:scale(1.67)}.tech-title{display:flex;justify-content:space-between;align-items:center;margin:20px 0 12px}.tech-title span{font-size:13px;color:#867343}.tech-card p{font-size:14px;max-width:350px;line-height:1.8}.image-note{font-size:12px;color:var(--muted);margin-top:24px}.process-section{background:var(--ink);color:var(--paper)}.process-section p{color:#c1beb6}.process-section .text-link{color:#e1cfaa}.steps{display:grid;grid-template-columns:repeat(5,1fr);margin-top:55px;gap:30px}.step-number{font-family:var(--serif);font-size:30px;color:var(--gold);padding-bottom:20px;border-bottom:1px solid #575044;margin-bottom:25px;display:flex;align-items:center;justify-content:space-between}.step-number svg{width:25px;height:25px;stroke:var(--gold);stroke-width:1;fill:none}.step h3{font-size:25px;line-height:1.15;margin-bottom:15px;min-height:58px}.step p{font-size:14px;line-height:1.8}.portfolio-preview{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:22px;align-items:start}.blank{background:#eeece6;border:1px solid #e1ded6;aspect-ratio:4/5;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;color:#8a8173}.blank:before{content:'';position:absolute;inset:14px;border:1px solid #ddd8ce;pointer-events:none}.blank span{font:italic 23px var(--serif)}.blank small{position:absolute;bottom:27px;left:28px;font-size:12px;letter-spacing:.12em}.portfolio-preview>div:first-child .blank{aspect-ratio:5/4}.portfolio-preview>div:last-child{padding-top:55px}.portfolio-label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-top:15px;color:var(--muted)}.cta-section{text-align:center;background:#eae5db;padding:75px 20px}.cta-section .eyebrow{margin-bottom:18px}.cta-section h2{font-size:clamp(2.8rem,5vw,4.8rem)}.cta-section p{max-width:520px;margin:22px auto 28px}.footer{padding-top:60px;padding-bottom:28px;background:var(--ink);color:var(--paper)}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;padding-bottom:50px}.footer .wordmark{align-items:start}.footer .wordmark strong{font-size:43px}.footer .wordmark small{font-size:12px}.footer p{color:#aaa69f;font-size:14px;max-width:300px;margin-top:25px}.footer h3{font:500 12px var(--sans);text-transform:uppercase;letter-spacing:.15em;margin-bottom:20px;color:#c7b48a}.footer-links{display:grid;gap:9px;font-size:14px}.footer a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid #45413a;padding-top:25px;display:flex;justify-content:space-between;gap:20px;color:#aaa69f;font-size:12px}.footer-bottom div{display:flex;gap:25px}.page-intro{padding:75px 6% 65px;max-width:1440px;margin:auto}.page-intro .eyebrow{margin-bottom:22px}.page-intro h1{font-size:clamp(3.7rem,6vw,6rem);max-width:900px}.page-intro>p{max-width:640px;margin-top:25px;font-size:18px;line-height:1.8}.wide-image{height:480px;overflow:hidden;position:relative}.wide-image img{width:100%;height:100%;object-fit:cover}.wide-image .image-note{position:absolute;right:20px;bottom:15px;color:white;background:#1c1c1c99;padding:5px 10px}.story-block{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.story-block .eyebrow{margin-bottom:20px}.story-block p{margin-top:25px}.brand-art{background:#f2efe8;padding:25px}.brand-art img{width:100%;mix-blend-mode:multiply}.story-detail{border-top:1px solid var(--line);margin-top:70px;padding-top:45px;display:grid;grid-template-columns:1fr 1fr;gap:10%}.story-detail h3{margin-bottom:20px}.tech-detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:65px 0;border-top:1px solid var(--line);align-items:center}.tech-detail:nth-child(even) .detail-photo{order:2}.detail-photo{height:430px;overflow:hidden}.detail-photo img{height:100%;width:100%;object-fit:cover}.tech-detail h2{margin:20px 0}.tech-detail p{line-height:1.9}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.tags span{border:1px solid var(--line);font-size:12px;padding:7px 12px}.process-list{max-width:980px;margin:auto}.process-row{display:grid;grid-template-columns:100px 1fr;gap:40px;padding:45px 0;border-top:1px solid var(--line)}.process-row .big-number{font:400 58px var(--serif);color:#a38547}.process-row h2{font-size:38px;margin-bottom:18px}.process-row p{max-width:730px}.process-row .detail-line{font-size:13px;color:#7a6d55;border-left:2px solid var(--gold);padding-left:15px;margin-top:20px}.note-box{background:#efede7;padding:30px;margin-top:30px}.note-box h3{font-size:28px;margin-bottom:12px}.gallery-top{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:25px 0}.gallery-top p{font-size:14px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.gallery-item:nth-child(5n+1){grid-column:span 2}.gallery-item:nth-child(5n+1) .blank{aspect-ratio:1.64}.gallery-item .blank span{font-size:20px}.contact-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:9%;padding-top:0}.inquiry-tabs{display:flex;gap:25px;border-bottom:1px solid var(--line);margin-bottom:30px;flex-wrap:wrap}.inquiry-tabs button{padding:13px 0;background:none;border:0;border-bottom:2px solid transparent;font-size:14px;color:var(--muted)}.inquiry-tabs button[aria-selected=true]{color:var(--ink);border-color:var(--gold)}.notice{font-size:14px;padding:18px 20px;background:#eeebe3;color:#665b45;margin:20px 0 30px;border-left:2px solid var(--gold)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:14px}label span{display:block;margin-bottom:8px}input,select,textarea{width:100%;padding:13px;border:1px solid #d3cec4;background:transparent;border-radius:0;color:var(--ink)}textarea{resize:vertical;min-height:145px}.full{grid-column:1/-1}.form-note{font-size:12px;color:var(--muted);margin:18px 0}.location{border-top:1px solid var(--line);padding:28px 0}.location h3{margin:10px 0 15px}.location p{font-size:14px}.location .status{font-size:12px;margin-top:20px;color:#8b764c}.contact-aside{padding-top:15px}.call-panel{padding:30px;background:#eeebe3}.call-panel h3{margin-bottom:20px}.call-panel p{font-size:14px}.call-panel .button{margin-top:25px}.legal-copy{max-width:820px;padding-top:0}.legal-copy h2{font-size:32px;margin-top:35px;margin-bottom:17px}.legal-copy p+p{margin-top:18px}.legal-copy ul{color:var(--text)}.consent{display:flex;gap:12px;align-items:start;font-size:13px}.consent input{width:18px;min-width:18px;height:18px;margin:3px 0 0}.consent a{text-decoration:underline}.floating-contact{position:fixed;bottom:25px;right:25px;z-index:9;background:var(--ink);border:1px solid #8e7950;color:var(--paper);padding:13px 19px;display:flex;align-items:center;gap:10px;font-size:13px;box-shadow:0 4px 15px #0002}.floating-contact svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}
@media(min-width:1600px){.hero{max-width:1600px;margin:auto}.hero-copy{padding-left:15%}.hero-visual{min-height:710px}}
@media(max-width:1150px){.nav{gap:16px}.nav>a{font-size:14px}.head-actions{gap:15px}.header{padding:0 4%}.head-cta{padding:10px 12px}.hero-copy{padding-top:65px}.steps{gap:18px}.tech-card .photo{height:260px}}
@media(max-width:960px){.header{height:90px}.nav{display:none;position:absolute;top:90px;left:0;right:0;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line)}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:10px}.nav>a{font-size:17px}.menu-button{display:block}.head-cta{display:none}.hero{grid-template-columns:1fr 1fr;min-height:570px}.hero-copy{padding:55px 10% 40px 12%}.hero-copy h1{font-size:62px}.hero-visual{min-height:570px}.hero-caption{left:20px;right:20px;bottom:25px}.hero-caption small{display:none}.values{flex-wrap:wrap;justify-content:center;gap:10px 30px}.section{padding-top:75px;padding-bottom:75px}.intro{gap:7%}.steps{grid-template-columns:repeat(3,1fr);gap:35px}.tech-grid{gap:20px}.tech-card .photo{height:230px}.tech-title h3{font-size:28px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item:nth-child(5n+1){grid-column:auto}.gallery-item:nth-child(5n+1) .blank{aspect-ratio:4/5}.contact-layout{gap:6%}.footer-main{gap:30px}}
@media(max-width:640px){.wrap{padding-left:6%;padding-right:6%}.header{height:82px;padding:0 6%}.wordmark strong{font-size:31px}.nav{top:82px}.head-actions{gap:16px}.hero{grid-template-columns:1fr}.hero-copy{padding:49px 6% 43px}.hero-copy h1{font-size:clamp(3rem,12.8vw,4.25rem);line-height:1.04;max-width:380px;margin-top:24px}.hero-copy>p{max-width:350px}.hero-copy .button{margin-top:27px}.hero-footnote{padding-top:32px}.hero-visual{min-height:440px}.hero-caption{left:25px;bottom:26px}.hero-caption small{display:block}.values{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;padding:22px 6%;font-size:12px;letter-spacing:.07em}.values span{gap:7px}.section{padding-top:62px;padding-bottom:62px}.intro{grid-template-columns:1fr;gap:0}.intro-copy{padding-top:26px}.stats{gap:45px}.section-head{display:block;margin-bottom:30px}.section-head .text-link{margin-top:24px}.tech-grid{grid-template-columns:1fr;gap:37px}.tech-card .photo{height:330px}.tech-card p{max-width:none}.tech-title h3{font-size:34px}.steps{grid-template-columns:1fr;gap:28px;margin-top:35px}.step-number{margin-bottom:15px;padding-bottom:12px}.step h3{min-height:0;font-size:30px;margin-bottom:10px}.step p{font-size:15px}.portfolio-preview{grid-template-columns:1fr 1fr;gap:17px}.portfolio-preview>div:first-child{grid-column:1/-1}.portfolio-preview>div:last-child{padding-top:0}.blank span{font-size:20px}.portfolio-label{font-size:12px}.cta-section{padding:60px 6%}.footer-main{grid-template-columns:1fr 1fr;gap:38px 25px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;font-size:12px;padding-bottom:55px}.footer-bottom div{flex-wrap:wrap;gap:15px}.page-intro{padding-top:50px;padding-bottom:45px}.page-intro h1{font-size:57px}.page-intro>p{font-size:16px}.wide-image{height:330px}.story-block,.story-detail{grid-template-columns:1fr;gap:35px}.story-detail{margin-top:40px}.brand-art{padding:0}.tech-detail{grid-template-columns:1fr;gap:30px;padding:40px 0}.tech-detail:nth-child(even) .detail-photo{order:0}.detail-photo{height:340px}.process-row{grid-template-columns:50px 1fr;gap:15px;padding:30px 0}.process-row .big-number{font-size:39px}.process-row h2{font-size:31px}.gallery-top{align-items:start;gap:20px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:15px}.gallery-item .blank span{font-size:16px}.blank small{left:22px;bottom:22px;font-size:12px}.gallery-item .blank{padding:18px}.contact-layout{grid-template-columns:1fr;padding-top:0;gap:45px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.inquiry-tabs{gap:20px}.inquiry-tabs button{font-size:13px}.floating-contact{bottom:16px;right:16px;padding:11px 15px}.legal-copy{padding-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.brand-lockup{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand-icon{width:42px;height:45px;overflow:hidden;mix-blend-mode:multiply;display:block}.brand-icon img{width:160px;max-width:none;height:auto;margin:-10px 0 0 -63px}.footer .brand-icon{display:none}.hero-copy,.intro>div,.tech-card,.tech-detail>div,.process-row>div,.contact-layout>div{min-width:0}h1,h2,h3{overflow-wrap:break-word}
