:root{--black: #0b0b0b;--white: #f7f6f2;--paper: #ebe9e3;--line: #b9b6ae;--red: #ef3b1f;--muted: #5f5d57;font-family:Helvetica Neue,Yu Gothic,YuGothic,Hiragino Kaku Gothic ProN,Arial,sans-serif;color:var(--black);background:var(--white);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);font-size:16px;line-height:1.75}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;padding:.75rem 1rem;background:var(--red);color:#fff}.skip-link:focus{top:1rem}.site-header{position:fixed;inset:0 0 auto;z-index:20;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 2.5vw;border-bottom:1px solid rgba(255,255,255,.25);color:#fff;background:#080808ad;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:flex;align-items:baseline;gap:.8rem;letter-spacing:.08em;font-weight:700}.brand small{font-size:.62rem;font-weight:500;opacity:.65}.site-nav{display:flex;align-items:center;gap:1.7rem;font-size:.72rem;letter-spacing:.08em}.site-nav a{position:relative}.site-nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-.4rem;height:1px;background:var(--red);transition:right .2s}.site-nav a:hover:after{right:0}.nav-cta{padding:.55rem .9rem;border:1px solid rgba(255,255,255,.7)}.menu-button{display:none;color:#fff;background:none;border:0;letter-spacing:.12em}.hero{position:relative;min-height:760px;height:100svh;color:#fff;overflow:hidden;background:#050505}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#000000e8,#0000009e 35%,#0000000d 74%),linear-gradient(0deg,rgba(0,0,0,.4),transparent 45%)}.hero-content{position:relative;z-index:2;width:min(760px,88vw);padding:20vh 0 8vh 5vw}.eyebrow,.section-index{margin:0 0 2rem;color:var(--red);font-size:.68rem;font-weight:700;letter-spacing:.2em}.hero h1{margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(3.2rem,7vw,7.3rem);font-weight:500;line-height:1.15;letter-spacing:-.04em}.hero-lead{max-width:580px;margin:2rem 0 0;font-size:clamp(.95rem,1.3vw,1.15rem);line-height:2;color:#ffffffc7}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2.6rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:.85rem 1.35rem;border:1px solid currentColor;cursor:pointer;font-weight:700;letter-spacing:.05em;transition:transform .18s,background .18s;border-radius:0}.button:hover{transform:translateY(-2px)}.button-primary{border-color:var(--red);background:var(--red);color:#fff}.text-link{display:inline-block;padding-bottom:.25rem;border-bottom:1px solid currentColor;font-size:.8rem;font-weight:700;letter-spacing:.06em}.text-link.light{color:#fff}.hero-note{position:absolute;z-index:2;right:2.5vw;bottom:2.3rem;margin:0;writing-mode:vertical-rl;font-size:.65rem;letter-spacing:.22em;opacity:.72}.section{padding:9rem 5vw}.section-light{background:var(--white)}.section-muted{background:var(--paper)}.section-dark{background:var(--black);color:#fff}.section-heading{display:grid;grid-template-columns:minmax(250px,1fr) minmax(300px,1fr);gap:8vw;align-items:end;margin-bottom:5rem}.section-heading h2,.contact-copy h2{margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(2.5rem,5vw,5.5rem);font-weight:500;line-height:1.15;letter-spacing:-.04em}.section-heading>p{max-width:620px;margin:0;color:var(--muted)}.section-dark .section-heading>p{color:#ffffff94}.section-index{grid-column:1 / -1;margin-bottom:.7rem}.split-heading .section-index{grid-column:auto}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:80px minmax(220px,.8fr) 1.5fr;gap:2vw;padding:2.2rem 0;border-bottom:1px solid var(--line);align-items:baseline}.service-list span{color:var(--red);font-size:.72rem;font-weight:700}.service-list h3{margin:0;font-size:clamp(1.3rem,2vw,2rem)}.service-list p{margin:0;color:var(--muted)}.deliverables{display:grid;grid-template-columns:160px 1fr;gap:2rem;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--black)}.deliverables>p{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.1em}.deliverables ul{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin:0;padding:0;list-style:none}.deliverables li:before{content:"＋";color:var(--red);margin-right:.35rem}.price-list{border-top:1px solid rgba(255,255,255,.3)}.price-list>div{display:grid;grid-template-columns:1fr .85fr 1fr;align-items:center;gap:2rem;padding:2.2rem 0;border-bottom:1px solid rgba(255,255,255,.3)}.price-list>div>span{font-size:1.35rem;font-weight:700}.price-list strong{font-size:clamp(2.2rem,4vw,4.5rem);line-height:1;letter-spacing:-.04em}.price-list strong small{font-size:.9rem;margin-left:.3rem}.price-list p{margin:0;color:#ffffff8c}.price-note{max-width:780px;margin:2rem 0 0 auto;font-size:.72rem;color:#ffffff80}.flow-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.flow-list li{display:grid;grid-template-columns:100px 1fr;gap:1.5rem;padding:2rem 0;border-bottom:1px solid var(--line)}.flow-list li>span{color:var(--red);font-size:1.5rem;font-weight:700}.flow-list h3{margin:0 0 .25rem;font-size:1.35rem}.flow-list p{margin:0;color:var(--muted)}.format-strip{display:grid;grid-template-columns:100px 1fr;gap:1.5rem;margin-top:3rem;font-size:.82rem}.format-strip span{font-weight:700}.format-strip p{margin:0}.works-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5vw;margin-bottom:3rem}.work-image{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:#111}.work-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%);transition:filter .3s,transform .5s}.work:hover .work-image img{filter:grayscale(0%);transform:scale(1.015)}.work-image span{position:absolute;right:0;bottom:0;padding:.55rem .8rem;background:var(--red);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.08em}.work-meta{margin:1.2rem 0 .2rem;color:var(--red);font-size:.67rem;font-weight:700;letter-spacing:.16em}.work h3{margin:0;font-family:Yu Mincho,serif;font-size:clamp(1.8rem,3vw,3.4rem);font-weight:500}.work>p:last-child{margin:.4rem 0 0;color:var(--muted)}.profile-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;background:var(--black);color:#fff}.profile-main h2{margin:0 0 2rem;font-family:Yu Mincho,serif;font-size:clamp(2.7rem,5vw,5rem);font-weight:500;line-height:1.15}.profile-main h2 small{font-family:inherit;font-size:.3em;letter-spacing:.12em;color:#ffffff85}.profile-main>p:last-child{color:#ffffffb3}.business-info{margin:0;border-top:1px solid rgba(255,255,255,.3)}.business-info div{display:grid;grid-template-columns:135px 1fr;gap:1.5rem;padding:1.25rem 0;border-bottom:1px solid rgba(255,255,255,.3)}.business-info dt{color:#ffffff85;font-size:.75rem}.business-info dd{margin:0}.business-info a{border-bottom:1px solid var(--red)}.contact-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}.contact-copy{position:sticky;top:120px;align-self:start}.contact-copy>p:not(.section-index){color:var(--muted)}.small-note{margin-top:2rem;font-size:.75rem}.contact-form{border-top:1px solid var(--black)}.contact-form label{display:grid;gap:.45rem;margin-top:1.3rem;font-size:.75rem;font-weight:700;letter-spacing:.04em}.contact-form label>span{color:var(--red);font-size:.62rem;margin-left:.4rem}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}input,select,textarea{width:100%;padding:.85rem .25rem;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--black);outline:0;border-radius:0}input:focus,select:focus,textarea:focus{border-bottom-color:var(--red)}textarea{resize:vertical}.consent{display:flex!important;grid-template-columns:auto 1fr;align-items:flex-start;gap:.7rem!important;font-weight:400!important}.consent input{width:auto;margin-top:.35rem;accent-color:var(--red)}.consent span{color:var(--black)!important;font-size:.72rem!important;margin:0!important}.honeypot{position:absolute;left:-10000px}.submit-button{width:100%;margin-top:1.5rem}.form-status{min-height:1.5em;font-size:.78rem}.form-status.error{color:#b32715}.form-status.success{color:#17673a}.legal-section{padding-top:0}.legal-section details{border-top:1px solid var(--line)}.legal-section details:last-child{border-bottom:1px solid var(--line)}.legal-section summary{padding:1.5rem 0;cursor:pointer;font-weight:700}.legal-section details div{max-width:850px;padding-bottom:1.5rem;color:var(--muted)}.site-footer{display:flex;align-items:flex-end;justify-content:space-between;padding:3rem 5vw;background:var(--black);color:#fff;border-top:1px solid rgba(255,255,255,.25)}.site-footer div{display:grid;gap:.2rem}.site-footer span,.site-footer p{font-size:.62rem;letter-spacing:.12em;color:#ffffff80}@media(max-width:900px){.site-header{height:64px;padding:0 5vw}.menu-button{display:block}.site-nav{position:absolute;inset:64px 0 auto;display:none;padding:1.5rem 5vw 2rem;background:var(--black);flex-direction:column;align-items:flex-start;gap:1.1rem}.site-nav.open{display:flex}.hero{min-height:700px}.hero-image{object-position:61% center}.hero-content{padding:18vh 6vw 8vh}.hero h1{font-size:clamp(3rem,14vw,5rem)}.hero-shade{background:linear-gradient(90deg,#000000d1,#00000040),linear-gradient(0deg,rgba(0,0,0,.62),transparent 65%)}.hero-note{display:none}.section{padding:6.5rem 6vw}.section-heading,.split-heading,.profile-section,.contact-section{grid-template-columns:1fr;gap:2rem}.section-heading{margin-bottom:3rem}.service-list article{grid-template-columns:42px 1fr}.service-list article p{grid-column:2}.price-list>div{grid-template-columns:1fr auto}.price-list p{grid-column:1 / -1}.works-grid{grid-template-columns:1fr;gap:4rem}.contact-copy{position:static}}@media(max-width:560px){.brand small{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.2rem}.section{padding-left:5vw;padding-right:5vw}.service-list article{grid-template-columns:34px 1fr;gap:.5rem}.deliverables,.format-strip{grid-template-columns:1fr;gap:.6rem}.price-list>div{gap:.7rem}.price-list strong{font-size:2.35rem}.flow-list li{grid-template-columns:55px 1fr}.field-row{grid-template-columns:1fr;gap:0}.business-info div{grid-template-columns:95px 1fr;gap:.8rem}.site-footer{align-items:flex-start;flex-direction:column;gap:2rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
