@font-face{font-family:Barlow;src:url('assets/display.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Hanken;src:url('assets/body.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--red:#c82032;--ink:#171717;--paper:#faf9f6;--muted:#6e6c69;--line:#d9d6d1;--display:Barlow,'Arial Narrow',Impact,sans-serif;--body:Hanken,Arial,sans-serif;--gutter:clamp(24px,6vw,100px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--body)}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--red);outline-offset:6px}::selection{background:var(--red);color:white}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:-.025em}h2{font-size:clamp(52px,6.8vw,108px);line-height:.95}em{font-style:normal;color:var(--red)}img{display:block;max-width:100%}.skip-link{position:fixed;z-index:100;top:0;left:20px;padding:12px;background:white;transform:translateY(-110%)}.skip-link:focus{transform:translateY(0)}.header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 3.7%;background:var(--paper);position:sticky;top:0;z-index:30;border-bottom:1px solid transparent;transition:border-color .3s,height .3s}.header.scrolled{border-color:var(--line);height:76px}.brand{display:inline-flex;align-items:center;gap:8px;font-weight:900;font-size:42px;line-height:1;letter-spacing:-2.8px}.brand sup{font-size:11px;letter-spacing:0;align-self:flex-start;margin-top:7px}.brand-symbol{color:var(--red);font-style:italic;font-family:Georgia,serif;position:relative;font-size:54px;line-height:.8;margin-right:5px}.brand-symbol span{font-size:27px;position:absolute;left:13px;top:9px}.nav{display:flex;align-items:center;gap:40px;font-size:14px;font-weight:600}.nav a{position:relative;padding:10px 0}.nav a:after{content:'';position:absolute;bottom:4px;left:0;width:100%;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s}.nav a:hover:after,.nav a[aria-current]:after{transform:scaleX(1)}.nav a:last-child{margin-left:45px}.nav a:last-child span{margin-left:28px;color:var(--red);font-size:22px}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:660px;height:calc(100svh - 92px);max-height:980px;color:#fff;background:#242424;padding:45px var(--gutter) 28px;display:flex;flex-direction:column;justify-content:space-between}.hero-photo{position:absolute;z-index:-3;inset:-5%;background:#333 url('assets/hero.webp') center 54%/cover no-repeat;will-change:transform}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.13) 68%),linear-gradient(0deg,rgba(0,0,0,.48),transparent 50%)}.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.095em;font-weight:700;line-height:1.5}.eyebrow i{width:7px;height:7px;background:var(--red)}h1{font-size:clamp(70px,9.8vw,158px);line-height:.91;margin:30px 0 0;letter-spacing:-.025em}h1 span{display:block}.hero-heading{will-change:transform}.hero-copy{max-width:260px;font-size:17px;line-height:1.6;margin:0 0 24px}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:60px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:16px 23px;font-size:14px;font-weight:700;min-height:56px;transition:background .25s,transform .25s}.button-red{background:var(--red);color:white}.button:hover{background:#a51c2b;transform:translateY(-3px)}.button span{font-size:23px;line-height:1;transition:transform .25s}.button:hover span{transform:translate(3px,-3px)}.scroll-cue{display:flex;align-items:center;gap:24px;font-size:10px;letter-spacing:.08em}.arrow-down{display:grid;place-items:center;width:48px;height:48px;border:1px solid #fff7;border-radius:50%;font-size:22px}.hero-caption{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.045em;margin-top:44px;font-weight:600}.ribbon{background:var(--red);color:white;overflow:hidden;padding:18px 0}.ribbon-track{display:flex;align-items:center;justify-content:space-around;gap:65px;min-width:max-content;animation:marquee 32s linear infinite;font-size:11px;letter-spacing:.09em;font-weight:700}.ribbon b{font-size:25px;font-weight:400;line-height:1}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:115px var(--gutter)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:35px 0 55px;gap:40px}.section-heading>p{max-width:270px;font-size:15px;color:var(--muted)}.about{background:#eeece8}.contact{background:var(--red);color:#fff}.contact h2{margin-top:32px}footer{padding:50px var(--gutter) 28px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:35px;background:var(--ink);color:var(--paper)}footer p{font-size:11px;letter-spacing:.08em}footer>a:last-of-type{font-size:13px}footer>a:last-of-type span{padding-left:24px}footer small{grid-column:1/-1;border-top:1px solid #ffffff25;padding-top:23px;color:#aaa;font-size:11px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{display:flex;flex-direction:column;padding:25px 28px 28px;background:#f0eeea;border:1px solid transparent;transition:transform .45s,border-color .3s,background .3s}.service-card:nth-child(2){background:#e9e7e3}.service-card:nth-child(3){background:var(--ink);color:var(--paper)}.service-card:hover{transform:translateY(-8px);border-color:var(--red)}.card-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:700;letter-spacing:.05em}.card-arrow{font-size:23px}.service-visual{position:relative;height:215px;display:grid;place-items:center;isolation:isolate}.service-visual svg{width:80px;height:80px;color:var(--red);transition:transform .6s}.service-card:hover .service-visual svg{transform:rotate(-8deg) scale(1.08)}.service-word{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font:700 clamp(45px,5.9vw,90px)/1 var(--display);letter-spacing:-.04em;color:#00000009;z-index:-1}.service-card:nth-child(3) .service-word{color:#ffffff0b}.service-card h3{font-size:34px;line-height:1.1;margin-bottom:14px}.service-card>p{font-size:14px;line-height:1.65;color:#64615e;max-width:280px}.service-card:nth-child(3)>p{color:#bab7b2}.card-link{display:flex;justify-content:space-between;border-top:1px solid #0002;margin-top:30px;padding-top:18px;font-size:12px;font-weight:600}.service-card:nth-child(3) .card-link{border-color:#fff3}.card-link span{color:var(--red);font-size:18px}.section-note{display:flex;justify-content:space-between;gap:24px;font-size:9px;letter-spacing:.065em;margin-top:23px;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px 30px;overflow:hidden;padding-top:145px;padding-bottom:65px}.about-copy{position:relative;z-index:2}.asterisk{font-size:25px;color:var(--red);margin-left:20px}.about h2{font-size:clamp(54px,5.6vw,88px);margin-top:34px}.about-description{margin-top:30px;max-width:420px;color:#62605c;font-size:15px;line-height:1.9}.text-link{display:inline-flex;gap:60px;align-items:center;border-bottom:1px solid var(--ink);font-size:13px;font-weight:700;padding:8px 0;margin-top:27px}.text-link span{font-size:22px;color:var(--red);transition:transform .3s}.text-link:hover span{transform:translate(4px,-4px)}.photo-stack{position:relative;min-height:590px;margin-top:5px}.polaroid{position:absolute;background:#fff;padding:13px 13px 0;box-shadow:0 10px 26px #00000013;width:70%;margin:0;will-change:transform}.polaroid img{width:100%;height:295px;object-fit:cover}.polaroid figcaption{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.04em;padding:16px 3px}.polaroid figcaption span{font-size:21px;color:var(--red)}.photo-back{top:0;right:0;transform:translateY(var(--drift,0px)) rotate(9deg)}.photo-back img{object-position:75%}.photo-front{top:200px;left:0;transform:translateY(var(--drift,0px)) rotate(-9deg);z-index:2}.photo-front img{object-position:54%}.round-stamp{position:absolute;right:-8px;bottom:25px;z-index:3;background:var(--red);color:#fff;width:138px;height:138px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:translateY(var(--drift,0px)) rotate(12deg);border:1px solid #861623;box-shadow:0 3px 0 #0001}.round-stamp>span{font-size:34px;line-height:1.2}.round-stamp p{text-align:center;font-size:9px;letter-spacing:.05em;margin-top:10px;line-height:1.4}.about-values{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #17171730;padding-top:30px;gap:30px}.about-values>span{font-size:11px;font-weight:700;letter-spacing:.03em}.about-values small{display:block;font-size:12px;font-weight:400;letter-spacing:0;margin-top:7px;color:var(--muted)}.contact{padding-bottom:75px}.contact-heading{display:flex;justify-content:space-between;align-items:end;gap:50px}.contact h2{font-size:clamp(85px,12vw,185px);line-height:.86;letter-spacing:-.025em}.contact-intro{width:29%;padding-bottom:10px}.big-arrow{font-family:Arial,sans-serif;font-size:150px;line-height:1;display:block;margin-bottom:50px;transition:transform .4s}.contact-intro p{font-size:17px;line-height:1.6}.contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;margin-top:80px;padding-top:32px;border-top:1px solid #ffffff55}.contact-grid>div{min-width:0}.contact-label{display:block;font-size:9px;font-weight:600;letter-spacing:.09em;margin-bottom:13px}.contact-value{font-size:clamp(15px,1.5vw,23px);line-height:1.3;overflow-wrap:anywhere}.contact-grid small{display:block;font-size:12px;margin-top:10px}.contact-grid a{text-decoration:underline;text-decoration-color:#ffffff77;text-underline-offset:7px}.contact-grid a:hover{text-decoration-color:white}.js-motion .reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.3,1)}.js-motion .reveal.visible{opacity:1;transform:none}.service-card:nth-child(2){transition-delay:.06s}.service-card:nth-child(3){transition-delay:.12s}.hero-heading{animation:arrive 1s cubic-bezier(.2,.7,.3,1) both}.hero-bottom{animation:arrive 1s .15s both}@keyframes arrive{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
@media(min-width:1700px){.hero-heading{max-width:1600px}.hero{padding-top:65px}}
@media(min-width:761px) and (max-width:1050px){.nav{gap:23px}.nav a:last-child{margin-left:15px}.service-card{padding:20px}.service-card h3{font-size:29px}.service-visual{height:180px}.about{gap:70px 15px}.photo-stack{min-height:540px}.polaroid{width:77%}.polaroid img{height:240px}.round-stamp{right:-8px;bottom:35px;width:110px;height:110px}.about h2{font-size:58px}}
@media(max-width:760px){html{scroll-padding-top:72px}.header,.header.scrolled{height:72px;padding:0 23px}.brand{font-size:35px}.brand-symbol{font-size:44px}.brand-symbol span{font-size:23px;left:11px}.menu-toggle{display:flex;align-items:center;gap:13px;background:none;border:0;padding:12px 0;font-size:13px}.menu-lines{width:23px;height:12px;border-top:1px solid;border-bottom:1px solid}.nav{display:none;position:absolute;top:71px;left:0;right:0;background:var(--paper);padding:20px 24px 32px;box-shadow:0 15px 20px #0001;gap:10px;flex-direction:column;align-items:stretch}.nav.is-open{display:flex}.nav a{padding:10px 0;font-size:18px}.nav a:last-child{margin-left:0}.nav a:last-child span{float:right}.hero{height:calc(100svh - 72px);min-height:660px;max-height:900px;padding-top:32px}.hero-photo{background-position:61% center}.hero-shade{background:linear-gradient(90deg,#000a,#0002),linear-gradient(0deg,#0008,transparent)}h1{font-size:clamp(60px,12vw,91px);margin-top:32px}.hero .eyebrow{font-size:9px}.hero-bottom{margin-top:65px}.hero-copy{font-size:15px;max-width:240px}.scroll-cue{display:none}.hero-caption{font-size:9px;margin-top:45px}.hero-caption span:last-child{display:none}.section{padding:80px var(--gutter)}.section-heading{display:block;margin:26px 0 36px}.section-heading>p{margin-top:24px}.ribbon-track{gap:35px}.ribbon{padding:15px 0}footer{grid-template-columns:1fr auto;gap:30px}footer p{display:none}}
@media(max-width:760px){.service-grid{grid-template-columns:1fr}.service-card{padding:25px}.service-visual{height:160px}.service-word{font-size:100px}.service-card h3{font-size:35px}.service-card>p{max-width:100%}.section-note{font-size:8px;gap:20px}.section-note span{max-width:50%}.section-note span:last-child{text-align:right}.about{display:block;padding-top:80px;padding-bottom:45px}.about h2{font-size:clamp(55px,10vw,80px)}.about-description{max-width:100%}.photo-stack{margin:70px 7px 20px;min-height:580px}.polaroid{width:70%}.polaroid img{height:260px}.photo-front{top:195px}.round-stamp{width:115px;height:115px;right:0;bottom:30px}.round-stamp>span{font-size:29px}.round-stamp p{font-size:8px}.about-values{grid-template-columns:1fr;gap:19px;margin-top:50px}.about-values>span{display:flex;justify-content:space-between;gap:15px;font-size:9px}.about-values small{margin:0;font-size:10px;text-align:right}.contact-heading{display:block}.contact h2{font-size:clamp(83px,16.5vw,125px)}.contact-intro{display:flex;align-items:center;justify-content:space-between;flex-direction:row-reverse;gap:30px;width:100%;margin-top:35px}.big-arrow{font-size:90px;margin:0}.contact-intro p{font-size:15px}.contact-grid{grid-template-columns:1fr;gap:27px;margin-top:38px}.contact-value{font-size:21px}.contact-label{margin-bottom:7px}}
@media(max-width:390px){h1{font-size:57px}.hero{min-height:620px}.photo-stack{min-height:500px}.polaroid img{height:220px}.photo-front{top:175px}.about h2{font-size:51px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-photo,.hero-heading{transform:none!important}.js-motion .reveal{opacity:1;transform:none}.polaroid,.round-stamp{--drift:0px!important}}
