@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f3f0e8;--ink:#242620;--muted:#66685f;--gold:#dfb745;--line:#c9c9be;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #96701b;outline-offset:6px}::selection{background:var(--gold);color:var(--ink)}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--gold);padding:15px}.skip:focus{top:10px}.icon{display:inline-grid;place-items:center;flex-shrink:0;width:24px;height:24px;line-height:0}.icon svg{width:100%;height:100%;display:block}.diagonal{transform:rotate(-45deg)}.down{transform:rotate(90deg)}.up{transform:rotate(-90deg)}header{height:105px;padding:0 4.7%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:10;background:var(--paper);gap:30px}.brand{display:flex;align-items:center;gap:13px;font-family:Manrope,sans-serif;font-size:19px;font-weight:800;letter-spacing:-.6px}.brand small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:2.1px;margin-top:5px}.brand-mark{display:flex;align-items:center;font-family:var(--serif);font-style:italic;font-size:52px;letter-spacing:-10px;width:51px;line-height:.7}.brand-mark span{transform:translateY(5px)}nav{display:flex;gap:35px;font-size:13px}nav a{position:relative}nav a:after{content:'';position:absolute;bottom:-7px;height:1px;background:currentColor;left:0;right:100%;transition:.25s}nav a:hover:after{right:0}.header-right{display:flex;align-items:center;gap:28px}.languages{display:flex;align-items:center;gap:7px;font-size:11px}.languages button{border:0;padding:10px 3px;background:none;opacity:.45}.languages button[aria-pressed=true]{opacity:1;text-decoration:underline;text-underline-offset:5px}.header-call{font-size:13px;display:flex;align-items:center;gap:14px}.header-call .icon{width:36px;height:36px;border:1px solid var(--line);padding:8px;border-radius:50%}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;padding:55px 4.7% 48px;gap:45px;min-height:740px}.hero-copy{display:flex;align-items:flex-start;flex-direction:column;padding:27px 0 0}.eyebrow{font-size:10px;letter-spacing:1.8px;line-height:1.6;font-weight:600;text-transform:uppercase;margin:0 0 30px;display:flex;align-items:center;gap:10px}.dot{height:6px;width:6px;background:#89712a;border-radius:50%;box-shadow:0 0 0 4px #dfb74526}h1,h2,h3,p{margin-top:0}h1{font-family:Manrope,sans-serif;letter-spacing:-4px;font-weight:500;font-size:clamp(45px,4.7vw,78px);line-height:1.1;position:relative;margin-bottom:29px}em{font-family:var(--serif);font-weight:400;letter-spacing:-.055em}h1 em{display:inline-block;white-space:nowrap;font-size:1.07em}.intro{max-width:365px;color:var(--muted);font-size:16px;line-height:1.8;margin-bottom:33px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 22px;background:var(--ink);color:var(--paper);font-size:12px;min-height:58px;transition:background .2s,transform .2s}.button:hover{background:#45473c;transform:translateY(-2px)}.button .icon{width:22px}.text-link{display:inline-flex;align-items:center;gap:17px;font-size:12px;border-bottom:1px solid #a2a298;padding-bottom:8px}.hero-copy>.text-link{margin-top:23px}.hero-bottom{margin-top:auto;padding-top:46px;width:100%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1px;color:var(--muted)}.hero-bottom a{display:flex;align-items:center;gap:12px}.hero-bottom .icon{width:16px}.hero-visual{position:relative;padding-bottom:27px;min-width:0}.image-wrap{height:100%;min-height:590px;overflow:hidden;background:#363935;position:relative}.image-wrap:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#10150d40,transparent 25%,transparent 75%,#10150d90);pointer-events:none}.image-wrap img{width:100%;height:100%;object-fit:cover;position:absolute;animation:photoEnter 1.3s ease-out both;object-position:50% 50%}.photo-top,.photo-bottom{position:absolute;left:27px;right:27px;display:flex;justify-content:space-between;color:#fff;z-index:1;font-size:9px;letter-spacing:1.7px}.photo-top{top:27px}.photo-bottom{bottom:52px;align-items:center}.tiny-cross{font-size:26px}.photo-caption{position:absolute;bottom:0;left:0;font-size:9px;color:var(--muted);margin:0;letter-spacing:.5px}.craft-seal{position:absolute;left:-42px;bottom:70px;width:118px;height:118px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;transform:rotate(-12deg);border:1px dashed #53491a;outline:7px solid var(--gold);z-index:2}.craft-seal span{font-size:7px;letter-spacing:1px}.craft-seal b{font:italic 37px var(--serif);line-height:1}.service-ribbon{display:flex;justify-content:space-between;align-items:center;background:var(--gold);padding:26px 4.7%;gap:18px;font:500 17px Manrope,sans-serif}.service-ribbon i{font-style:normal;font-size:25px}.section{padding:105px 7.4%}.services{display:grid;grid-template-columns:1fr 1.08fr;gap:90px}.section-heading{max-width:420px}h2{font:500 clamp(40px,4.3vw,66px)/1.09 Manrope,sans-serif;letter-spacing:-2.5px;margin-bottom:28px}.section-intro{font-size:15px;line-height:1.9;color:var(--muted);max-width:355px}.service-list{padding-top:10px}details{border-bottom:1px solid var(--line)}details:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:20px;padding:25px 0}summary::-webkit-details-marker{display:none}summary h3{font:500 24px Manrope,sans-serif;letter-spacing:-.8px;margin:0}.number{font-size:10px;color:var(--muted);align-self:center;width:23px}.expand{margin-left:auto;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;padding:5px;transition:transform .25s,background .25s}details[open] .expand{transform:rotate(45deg);background:var(--gold);border-color:var(--gold)}.detail-body{padding:0 0 28px 43px;max-width:420px}.micro{font-size:9px;letter-spacing:1.7px}.detail-body p{font-size:14px;line-height:1.8;color:var(--muted);margin:12px 0 0}.manifesto{padding:85px 7.4%;background:var(--ink);color:var(--paper);position:relative;overflow:hidden}.manifesto .eyebrow{color:var(--gold)}.manifesto h2{font-size:clamp(47px,5.8vw,85px);line-height:1.1;position:relative;z-index:1}.manifesto p:last-of-type{font-size:14px;line-height:1.8;color:#b6b7ad;margin-bottom:0;position:relative;z-index:1}.manifesto em{color:var(--gold)}.needle{position:absolute;right:7%;top:40px;width:32%;height:85%;color:var(--gold);opacity:.7;transform:rotate(-6deg)}.stitch{position:absolute;inset:18px;border:1px dashed #b5b6a844;pointer-events:none}.work-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:50px}.work-heading h2{margin-bottom:0}.work-heading .section-intro{margin:0;max-width:340px}.work-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px}.work-grid figure{margin:0}.work-grid img{display:block;width:100%;height:auto}.work-grid figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:16px;font-size:11px}.work-grid figcaption span:last-child{font-size:9px;color:var(--muted)}.work-second{padding-top:110px}.work-second figure{max-width:390px;margin-left:auto}.work-second .micro{margin-top:38px;margin-bottom:20px;color:var(--muted);text-align:right;font-size:8px}.work-second>.text-link{float:right}.process{background:#e8e6dc}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin:55px 0 80px}.steps article{border-top:1px solid #b7b8ac;padding-top:25px}.step-number{font:italic 36px var(--serif);color:#797c69}.steps h3{font:500 23px Manrope,sans-serif;margin:25px 0 13px;letter-spacing:-.7px}.steps p{font-size:14px;line-height:1.85;color:var(--muted)}.faq{display:grid;grid-template-columns:1fr 2fr;gap:55px;border-top:1px solid #b7b8ac;padding-top:40px}.faq>h3{font:400 30px var(--serif)}.faq details:first-child{border-top:0}.faq summary{font-size:14px;padding:18px 0}.faq details>p{font-size:13px;color:var(--muted);line-height:1.8;max-width:540px;padding-right:35px}.contact{display:grid;grid-template-columns:1.2fr 1fr;padding:90px 7.4%;gap:100px;background:var(--ink);color:var(--paper)}.contact-main>.eyebrow{color:var(--gold)}.contact-main h2{font-size:clamp(45px,4.6vw,70px)}.contact-main>p:not(.eyebrow){line-height:1.8;color:#b6b7ad;font-size:14px}.phone-link{display:flex;align-items:center;gap:30px;font:400 clamp(26px,3.1vw,44px) Manrope,sans-serif;letter-spacing:-1px;padding:14px 0;width:fit-content;border-bottom:1px solid #6d7064;margin-top:26px}.phone-link .icon{width:42px;height:42px;background:var(--gold);color:var(--ink);padding:10px;border-radius:50%;transition:transform .2s}.phone-link:hover .icon{transform:rotate(-45deg)}.address-card{border:1px solid #5f6355;padding:35px;position:relative;align-self:center}.address-card .pin{color:var(--gold);position:absolute;right:25px;top:25px}.address-card .eyebrow{font-size:8px}.address-card h3{font:400 30px/1.3 Manrope,sans-serif;letter-spacing:-1px}.address-card>p:not(.eyebrow){font-size:11px;line-height:1.7;color:#b6b7ad;max-width:250px}.address-card .button{background:var(--gold);color:var(--ink);width:100%;margin-top:15px}.address-card .button:hover{background:#edc85f}.contact-socials{display:flex;justify-content:space-between;gap:15px;margin-top:26px;font-size:10px}.contact-socials a{display:inline-flex;align-items:center;gap:6px}.contact-socials svg{width:14px;height:14px;transform:rotate(-45deg)}footer{background:var(--ink);color:var(--paper);padding:10px 4.7% 30px}.footer-logo{font:800 clamp(45px,12.7vw,195px)/1.15 Manrope,sans-serif;letter-spacing:-.07em;display:flex;align-items:start;justify-content:space-between;border-bottom:1px solid #4d5147;padding-bottom:25px}.footer-logo span{font-size:.3em;line-height:1.4;letter-spacing:0;color:var(--gold)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px;font-size:8px;letter-spacing:1px;color:#a9aca1}.footer-bottom a{display:flex;align-items:center;gap:10px}.footer-bottom .icon{width:16px}.animate{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.animate.visible{opacity:1;transform:none}@keyframes photoEnter{from{transform:scale(1.06);opacity:.3}to{transform:scale(1);opacity:1}}
@media(min-width:1600px){header,.hero,.service-ribbon,.section,.contact,.manifesto,footer{padding-left:max(7%,calc((100vw - 1450px)/2));padding-right:max(7%,calc((100vw - 1450px)/2))}.hero{grid-template-columns:1.1fr 1fr}h1{font-size:76px}}
@media(max-width:1050px){header{gap:15px;padding:0 5%;height:88px}nav{gap:20px}.header-call{display:none}.hero{padding:35px 5%;gap:24px;min-height:640px}h1{font-size:46px;letter-spacing:-2.5px}.eyebrow{font-size:8px;letter-spacing:1.2px}.image-wrap{min-height:530px}.hero-copy{padding-top:17px}.craft-seal{width:90px;height:90px;left:-22px}.craft-seal span{font-size:5px}.craft-seal b{font-size:30px}.intro{font-size:14px;max-width:290px}.section{padding:75px 6%}.services{gap:45px}summary h3{font-size:21px}.work-grid{gap:35px}.contact{gap:45px;padding:75px 6%}.address-card{padding:25px}.steps{gap:30px}.work-heading{gap:35px}h2{font-size:45px}.work-heading .section-intro{max-width:280px}}
@media(max-width:700px){html{scroll-padding-top:20px}header{height:82px;padding:0 6%;gap:10px}.brand{font-size:16px;gap:10px}.brand-mark{font-size:43px;width:40px}.brand small{font-size:6px;letter-spacing:1.8px}.header-right{gap:16px}.languages{font-size:10px;gap:5px}.menu-toggle{display:grid;place-content:center;gap:6px;border:1px solid var(--line);background:none;width:38px;height:38px;padding:9px}.menu-toggle span{display:block;width:18px;height:1px;background:var(--ink);transition:transform .2s}.menu-open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:25px 6%;font-size:18px;box-shadow:0 8px 14px #2426200a}.menu-open nav{display:flex;flex-direction:column;gap:26px}.hero{display:flex;flex-direction:column;padding:33px 6% 27px;gap:35px;min-height:0}.hero-copy{padding:0}.hero .eyebrow{font-size:7px;letter-spacing:1.1px;margin-bottom:24px}.hero h1{font-size:clamp(36px,9vw,57px);letter-spacing:-2px;margin-bottom:21px;line-height:1.14}.intro{font-size:14px;line-height:1.8;max-width:330px;margin-bottom:25px}.button{font-size:11px;min-height:54px;padding:15px 19px;gap:21px}.hero-copy>.text-link{font-size:11px;margin-top:19px}.hero-bottom{display:none}.hero-visual{padding-bottom:25px;margin-left:15px}.image-wrap{height:440px;min-height:0}.photo-top,.photo-bottom{left:20px;right:20px;font-size:7px}.photo-top{top:20px}.photo-bottom{bottom:45px}.craft-seal{left:-24px;bottom:57px;width:88px;height:88px}.photo-caption{font-size:8px}.service-ribbon{padding:20px 6%;gap:10px;display:grid;grid-template-columns:1fr 20px 1fr 20px;font-size:13px}.service-ribbon i{font-size:21px;text-align:center}.section{padding:65px 6%}.services{display:block}.section-heading{max-width:none}.section-intro{font-size:14px;max-width:340px}h2{font-size:40px;letter-spacing:-1.8px;line-height:1.13}.eyebrow{font-size:8px;margin-bottom:22px}.service-list{margin-top:32px}summary{padding:22px 0;gap:13px}summary h3{font-size:21px}.number{width:20px}.detail-body{padding-left:33px}.manifesto{padding:60px 6% 65px}.manifesto h2{font-size:43px}.manifesto p:last-of-type{font-size:12px}.needle{width:140px;height:210px;right:-28px;top:128px;opacity:.2}.stitch{inset:10px}.work-heading{display:block;margin-bottom:33px}.work-heading h2{margin-bottom:23px}.work-heading .section-intro{max-width:none}.work-grid{grid-template-columns:1fr;gap:42px}.work-grid figcaption{font-size:10px}.work-second{padding-top:0;padding-left:30px}.work-second figure{max-width:none}.work-second .micro{text-align:left;font-size:7px;margin-top:25px}.work-second>.text-link{float:none;font-size:11px}.steps{grid-template-columns:1fr;gap:27px;margin:35px 0 45px}.steps article{display:grid;grid-template-columns:42px 1fr;gap:10px 17px;padding-top:23px}.step-number{grid-row:span 2;font-size:30px}.steps h3{margin:0;font-size:21px}.steps p{grid-column:2;margin:0;font-size:13px}.faq{grid-template-columns:1fr;gap:5px;padding-top:30px}.faq>h3{font-size:28px;margin-bottom:15px}.faq summary{font-size:13px;gap:15px}.faq details>p{font-size:12px;padding-right:10px}.contact{grid-template-columns:1fr;gap:40px;padding:60px 6%}.contact-main h2{font-size:46px}.contact-main>p:not(.eyebrow){font-size:13px}.phone-link{font-size:32px;gap:22px;margin-top:20px}.address-card{padding:28px}.address-card h3{font-size:29px}.contact-socials{font-size:10px}footer{padding:0 6% 25px}.footer-logo{font-size:12vw;padding-bottom:20px}.footer-bottom{display:grid;grid-template-columns:1fr auto;gap:18px;font-size:7px}.footer-bottom>span:nth-child(2){grid-column:1;grid-row:2}.footer-bottom>a{grid-column:2;grid-row:1/3}.animate{transform:translateY(16px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.animate{opacity:1;transform:none}}
