@font-face{font-family:Onest;src:url('fonts/onest.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Oswald;src:url('fonts/oswald.ttf') format('truetype');font-weight:200 700;font-display:swap}
:root{--bg:#171717;--surface:#202020;--ink:#efeee8;--muted:#aaa8a3;--accent:#ed673a;--line:#41403e;--body:Onest,Arial,sans-serif;--display:Oswald,'Arial Narrow',sans-serif;--space:clamp(64px,8vw,120px);color-scheme:dark;scroll-behavior:smooth;scroll-padding-top:96px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.55}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:3px solid var(--accent);outline-offset:6px}html{scrollbar-color:var(--accent) var(--bg)}.container{width:100%;max-width:1440px;margin-inline:auto;padding-inline:48px}.section{padding-block:var(--space)}.accent{color:var(--accent)}.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:16px 28px;background:var(--accent);border:1px solid var(--accent);border-radius:2px;color:var(--bg);font-size:18px;font-weight:700;line-height:1.2;transition:background .2s,transform .2s}.button:active{transform:translateY(2px)}.text-link{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:1px;font-size:18px}.skip{position:fixed;left:20px;top:-100px;background:var(--accent);color:var(--bg);padding:12px;z-index:30}.skip:focus{top:15px}.header{position:relative;z-index:10;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{height:80px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:750;white-space:nowrap;letter-spacing:-.04em}.header nav{display:flex;gap:34px}.header nav a,.nav-cta{font-size:20px;font-weight:700}.nav-cta{padding:12px 22px;min-height:48px;background:transparent;border-color:var(--line);color:var(--ink)}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:690px;height:calc(100svh - 80px);max-height:850px}.hero-photo{position:absolute;inset:0 0 0 39%;z-index:-1}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 39%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(23,23,23,.86) 6%,rgba(23,23,23,.18) 32%,transparent 58%)}.hero-content{padding-top:54px;padding-bottom:48px;height:100%;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.hero-intro{font-size:15px;letter-spacing:.02em;margin-bottom:22px}.hero h1{font-family:var(--display);font-weight:600;font-size:clamp(106px,11.5vw,166px);line-height:.99;letter-spacing:-.025em}.hero h1 span{color:var(--accent)}.hero-description{margin-top:30px;font-size:19px;max-width:380px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px}.hero-actions .text-link{font-size:17px}.section-heading{margin-bottom:54px}h2{font-family:var(--display);font-size:clamp(54px,6.7vw,96px);font-weight:500;line-height:1.08;letter-spacing:-.025em}.section-heading p{margin-top:24px;color:var(--muted);max-width:450px}.gallery{display:grid;grid-template-columns:1.12fr 1fr;gap:62px 8%;align-items:start}.work-photo{display:block;position:relative;overflow:hidden;background:var(--surface)}.work-photo img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.work-item-offset{margin-top:148px}.work-item-last{margin-top:128px}.work-item:nth-child(3){width:86%}.work-item figcaption{padding-top:18px}.work-item h3{font-weight:500;font-size:23px;line-height:1.3}.work-item figcaption>span{display:block;color:var(--muted);font-size:15px;margin-top:5px}.photo-action{position:absolute;bottom:18px;right:18px;padding:8px 14px;background:var(--bg);font-size:14px;opacity:0;transition:opacity .2s}.work-photo:focus-visible .photo-action{opacity:1}.more-work{display:inline-block;margin-top:52px}.about{background:var(--surface)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.about-portrait{max-width:480px;transform:rotate(-3deg);position:relative}.about-portrait:before{content:'';position:absolute;top:-16px;left:38%;width:100px;height:34px;background:#d4c9b8bb;transform:rotate(8deg);z-index:1}.about-portrait img{width:100%;height:auto}.about-copy h2{font-size:clamp(60px,6.5vw,92px)}.about-copy p{max-width:430px;margin-top:24px;color:var(--muted)}.about-copy .about-name{color:var(--ink);font-size:21px}.about-copy .button{margin-top:34px}.contacts{padding-block:130px 100px}.contacts h2{font-size:clamp(56px,7.4vw,104px)}.mobile-break{display:none}.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end;margin-top:50px}.contact-bottom p{margin-bottom:26px}.contact-channel{display:block;color:var(--muted);font-size:14px;margin-top:12px}address{font-style:normal;display:flex;flex-direction:column;align-items:flex-start;gap:12px}address>span{font-size:16px;color:var(--muted)}address strong{font-size:27px;font-weight:500}address .text-link{margin-top:10px}.footer{padding-top:44px;padding-bottom:28px;border-top:1px solid var(--line)}.footer-top,.footer-menu,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-top .brand small{display:block;color:var(--muted);font-size:12px;font-weight:400;letter-spacing:0;margin-bottom:3px}.social-link{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--line);border-radius:2px}.footer-menu{margin-block:32px}.footer-menu nav{display:flex;gap:30px}.footer-menu a{font-size:15px}.footer-menu>a{text-decoration:underline;text-underline-offset:4px;color:var(--muted)}.footer-bottom{padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.developer{margin-top:26px;font-size:13px;color:var(--muted);text-align:right}.developer a{text-decoration:underline;text-underline-offset:3px}.cookie{position:fixed;z-index:20;bottom:max(16px,env(safe-area-inset-bottom));left:24px;right:24px;max-width:920px;margin-inline:auto;background:#292929;border:1px solid #595650;border-radius:8px;box-shadow:0 12px 36px #0005;padding:18px 22px;display:flex;align-items:center;gap:26px}.cookie[hidden]{display:none}.cookie p{font-size:13px;line-height:1.6}.cookie-accept{flex-shrink:0;background:var(--ink);color:var(--bg);border:0;border-radius:2px;font-size:18px;font-weight:600;min-height:44px;padding:10px 22px}.lightbox{border:0;padding:60px 20px 20px;background:var(--bg);color:var(--ink);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);width:auto;overflow:auto}.lightbox::backdrop{background:rgba(0,0,0,.88)}.lightbox-image{height:auto;max-height:calc(100dvh - 170px);max-width:100%;width:auto;object-fit:contain;margin:auto}.lightbox-close{position:absolute;top:8px;right:15px;background:none;border:0;min-height:44px;display:flex;align-items:center;gap:16px;font-size:18px}.lightbox-close span{font-size:32px}.lightbox-caption{text-align:center;margin-top:14px;font-size:17px}.privacy-main{max-width:860px;padding-top:64px;padding-bottom:100px}.privacy-main h1{font-family:var(--display);font-size:clamp(40px,6vw,68px);line-height:1.15;font-weight:500;margin-block:45px 28px;overflow-wrap:anywhere}.privacy-main h2{font-family:var(--body);font-size:24px;letter-spacing:0;margin:36px 0 12px}.privacy-main p{color:var(--muted);margin:16px 0}.privacy-main a{text-decoration:underline;text-underline-offset:5px}.privacy-note{border:1px solid var(--line);padding:20px}.back{display:inline-flex;align-items:center;gap:12px;min-height:44px}.back svg{width:22px;height:22px}
@media(hover:hover){.button:hover{background:#ff8156;border-color:#ff8156}.nav-cta:hover{color:var(--bg)}.text-link:hover,.header nav a:hover,.footer a:hover{color:var(--accent)}.work-photo:hover img{transform:scale(1.025)}.work-photo:hover .photo-action{opacity:1}.cookie-accept:hover{background:var(--accent)}}
@media(min-width:1600px){.hero-photo{left:45%}}
@media(max-width:1100px){.container{padding-inline:32px}.header-inner{gap:22px}.header nav{gap:20px}.brand{font-size:19px}.nav-cta{padding-inline:16px}.hero{min-height:640px}.hero h1{font-size:126px}.hero-photo{left:35%}.hero-description{max-width:320px}.hero-actions{gap:22px}.hero-actions .text-link{font-size:15px}.gallery{column-gap:6%}.about-grid{gap:7%}}
@media(max-width:850px){.header-inner{height:72px}.header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--bg);padding:24px 32px;border-bottom:1px solid var(--line);flex-direction:column;gap:24px}.header nav.is-open{display:flex}.menu-toggle{display:flex;align-items:center;gap:12px;background:none;border:0;font-weight:700;font-size:20px;min-height:44px;margin-left:auto}.menu-bars{width:20px;height:12px;border-block:2px solid var(--ink)}.nav-cta{display:none}.hero{height:710px;min-height:0}.hero h1{font-size:112px}.hero-photo{left:25%;opacity:.85}.hero-photo:after{background:linear-gradient(90deg,var(--bg),rgba(23,23,23,.65) 24%,transparent 85%)}.hero-content{justify-content:center}.hero-actions{align-items:flex-start;flex-direction:column;gap:24px}.about-grid{gap:7%}.about-copy h2{font-size:60px}.about-copy p{font-size:16px}.work-item-offset{margin-top:100px}.work-item-last{margin-top:90px}.contact-bottom{gap:32px}address strong{font-size:24px}.footer-menu{align-items:flex-start}.footer-menu nav{gap:20px}}
@media(max-width:600px){.container{padding-inline:22px}.brand{font-size:20px}.brand img{width:30px;height:30px}.hero{height:auto;min-height:760px;display:flex;align-items:flex-end}.hero-photo{inset:0 0 0 10%;opacity:1;height:530px}.hero-photo img{object-position:50% 40%}.hero-photo:after{background:linear-gradient(0deg,var(--bg) 0%,rgba(23,23,23,.18) 45%,transparent 80%),linear-gradient(90deg,var(--bg),transparent 35%)}.hero-content{padding-top:280px;padding-bottom:48px;justify-content:flex-end;position:relative}.hero-intro{font-size:12px;margin-bottom:16px}.hero h1{font-size:clamp(90px,25vw,140px);line-height:1.02}.hero-description{font-size:16px;margin-top:22px;max-width:none}.hero-actions{flex-direction:row;align-items:center;gap:22px;margin-top:25px;flex-wrap:wrap}.hero-actions .button{font-size:18px;padding-inline:20px}.hero-actions .text-link{font-size:15px}.hero h1 span{color:var(--ink)}.section-heading{margin-bottom:32px}h2{font-size:60px}.section-heading p{font-size:16px;margin-top:18px}.gallery{grid-template-columns:1fr;gap:36px}.work-item-offset,.work-item-last{margin-top:0}.work-item:nth-child(3){width:100%}.work-item figcaption{padding-top:14px}.work-item h3{font-size:21px}.work-item figcaption>span{font-size:14px}.photo-action{display:none}.more-work{margin-top:34px;font-size:16px}.about-grid{grid-template-columns:1fr;gap:44px}.about-portrait{max-width:350px;width:86%;margin-inline:auto;transform:rotate(-3deg)}.about-copy h2{font-size:70px}.about-copy p{max-width:none;font-size:17px}.about-copy .about-name{font-size:20px}.contacts{padding-block:74px 64px}.contacts h2{font-size:clamp(43px,10.5vw,62px)}.mobile-break{display:block}.contact-bottom{grid-template-columns:1fr;gap:44px;margin-top:32px}.contact-bottom p{font-size:16px}.contact-bottom address{border-top:1px solid var(--line);padding-top:32px}.footer-top{align-items:center}.footer-menu{flex-direction:column;gap:24px;margin-block:28px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}.developer{text-align:left;margin-top:24px}.cookie{left:12px;right:12px;bottom:12px;padding:15px;gap:14px;align-items:flex-start}.cookie p{font-size:11px}.cookie-accept{font-size:18px;padding:10px 14px}.privacy-main{padding-top:34px}.privacy-main h1{font-size:45px}.privacy-main p{font-size:16px}}
@media(max-width:360px){.cookie{flex-direction:column}.cookie-accept{align-self:flex-end}.hero{min-height:780px}.hero-actions{gap:20px}.hero-intro{font-size:11px}.brand{font-size:18px}.menu-toggle{font-size:18px}.contacts h2{font-size:41px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Keep the complete brand name visible on narrow phones. */
.hero-intro{margin-top:22px;margin-bottom:0}.hero-description{margin-top:16px}
@media(max-width:600px){.hero-intro{margin-top:18px;margin-bottom:0}.hero-description{margin-top:12px}}
@media(max-width:360px){.hero h1{font-size:80px}.hero-intro{font-size:11px}}

/* User-approved expanded copy. */
.hero-intro{font-size:21px;max-width:440px;letter-spacing:0}.hero-description{max-width:450px;font-size:17px}.hero{min-height:760px}.address-block h3{font-family:var(--display);font-size:36px;font-weight:500;line-height:1.2;margin-bottom:24px}.contact-bottom{align-items:start}.contact-bottom p{max-width:560px}.about-copy p{max-width:480px}
@media(max-width:850px){.hero{height:auto;min-height:760px}.hero-description{max-width:360px}.hero-content{padding-block:46px}.contacts h2{font-size:clamp(44px,7vw,80px)}}
@media(max-width:600px){.hero-content{padding-top:280px;padding-bottom:48px}.hero-intro{font-size:18px;max-width:100%}.hero-description{font-size:16px;max-width:100%}.contacts h2{font-size:clamp(34px,8vw,48px)}.address-block{border-top:1px solid var(--line);padding-top:32px}.contact-bottom address{border:0;padding-top:0}.address-block h3{font-size:30px}}

/* Updated landing rules: light navigation and a three-row footer. */
.header nav a,.nav-cta,.menu-toggle{font-size:18px;font-weight:400}
.header nav a{display:inline-flex;align-items:center;min-height:44px}
.nav-cta{padding:12px 24px}
.hero-actions .text-link,.more-work{font-size:18px;display:inline-flex;align-items:center;min-height:48px}
.text-link{display:inline-flex;align-items:center;min-height:44px}
.footer-socials{display:flex;align-items:center;gap:12px}
.social-link{width:48px;height:48px;border:0}
.social-link img{width:28px;height:28px;object-fit:contain}
.footer-menu nav a{display:inline-flex;align-items:center;min-height:44px}
.footer-menu{margin-block:24px}
.footer-bottom .developer{margin:0;text-align:right}
.cookie p{font-size:14px}
@media(max-width:600px){
 .header nav a,.menu-toggle{font-size:18px;font-weight:400}
 .hero-actions{gap:16px 24px}
 .hero-actions .text-link,.more-work{font-size:18px}
 .footer-top{flex-wrap:wrap;gap:22px}
 .footer-menu{gap:16px}
 .footer-bottom{gap:14px}
 .footer-bottom .developer{text-align:left}
 .cookie{align-items:center}
 .cookie p{font-size:13px;line-height:1.5}
}
@media(max-width:360px){.cookie{align-items:stretch}.cookie-accept{align-self:flex-end}}
