@font-face{font-family:Gravitas;src:url(fonts/Gravitas.woff2) format('woff2'),url(fonts/Gravitas.otf) format('opentype'),url(fonts/Gravitas.ttf) format('truetype');font-display:swap}
:root{--bg:#efebe4;--ink:#111;--ac:#ff4a1c}
*{box-sizing:border-box;margin:0}body{background:var(--bg);color:var(--ink);font:400 17px/1.6 'Instrument Sans',system-ui,sans-serif;transition:background .4s}
a{color:inherit}.d,h2,.idx b,h3{font-family:Gravitas,'Archivo Black',Impact,sans-serif;font-weight:400;text-transform:uppercase;line-height:.92}
nav{position:fixed;inset:0 0 auto;display:flex;justify-content:space-between;padding:18px 28px;z-index:9;mix-blend-mode:difference;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.08em}nav div{display:flex;gap:22px}nav a{text-decoration:none}nav a:hover{text-decoration:underline}
main{padding:0 28px}.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:120px 0 40px}.hero h1{font-size:clamp(3.4rem,13vw,14rem)}.hero p{max-width:34em;margin-top:32px;font-size:clamp(1.05rem,1.6vw,1.3rem)}
.mq{overflow:hidden;white-space:nowrap;border-block:2px solid var(--ink);margin:0 -28px;padding:10px 0;background:var(--ac)}.mq span{display:inline-block;animation:m 40s linear infinite;font-family:'Archivo Black',Gravitas,sans-serif;font-size:1.5rem;text-transform:uppercase}@keyframes m{to{transform:translateX(-50%)}}
.idx{padding:60px 0}.idx a{display:grid;grid-template-columns:4rem 1fr auto;align-items:baseline;gap:16px;padding:22px 0;border-top:2px solid var(--ink);text-decoration:none;transition:.25s}.idx a:last-child{border-bottom:2px solid var(--ink)}.idx a:hover{background:var(--ink);color:var(--bg);padding-inline:16px}.idx b{font-size:clamp(2rem,7vw,6.5rem)}
small,.lb{font-size:12px;letter-spacing:.1em;text-transform:uppercase}.lb{color:var(--ac);font-weight:600}
#pv{position:fixed;width:260px;aspect-ratio:3/4;pointer-events:none;z-index:8;opacity:0;transition:opacity .2s;background:center/cover var(--ac);transform:translate(-50%,-50%) rotate(-3deg)}
.ph{padding:140px 0 40px}.ph h1{font-size:clamp(3rem,10vw,10rem);margin:12px 0 28px}.lead{max-width:40em;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.4;margin-bottom:20px}.q{font-family:'Archivo Black',Gravitas,sans-serif;color:var(--ac)}
.sec{display:grid;grid-template-columns:1fr 2fr;gap:28px;border-top:2px solid var(--ink);padding:28px 0}h2{font-size:1.8rem}h3{font-size:1.4rem;margin:0 0 8px}.sec p{margin-bottom:1em;max-width:40em}.sec h3:not(:first-child){margin-top:28px}
.g{display:grid;gap:14px;margin:14px 0 50px}.g img{width:100%;display:block}.ph-slot{border:2px dashed var(--ink);padding:50px 16px;text-align:center;font-size:13px;opacity:.55}
.next{display:block;padding:70px 0;border-top:2px solid var(--ink);text-decoration:none}.next b{display:block;font-size:clamp(2.5rem,9vw,8rem);transition:.3s}.next:hover b{color:var(--ac);padding-left:20px}
.chips span{display:inline-block;border:2px solid var(--ink);border-radius:99px;padding:2px 14px;margin:0 6px 8px 0;font-size:15px}
.btn,button{font:600 14px 'Instrument Sans';text-transform:uppercase;letter-spacing:.08em;background:var(--ink);color:var(--bg);border:0;padding:14px 24px;text-decoration:none;display:inline-block;cursor:pointer}.btn:hover,button:hover{background:var(--ac);color:var(--ink)}
label{display:block;margin-bottom:18px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}input,textarea{display:block;width:100%;font:inherit;background:none;border:0;border-bottom:2px solid var(--ink);padding:8px 0;margin-top:4px;text-transform:none;letter-spacing:0}input:focus,textarea:focus{outline:0;border-color:var(--ac)}
.tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding-bottom:60px}.tools input{width:240px}
footer{border-top:2px solid var(--ink);margin-top:40px;padding:40px 28px;font-size:14px}footer .d{display:block;font-size:clamp(2.5rem,8vw,7rem);text-decoration:none;margin-bottom:24px}footer a:hover{color:var(--ac)}
.r{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s}.r.v{opacity:1;transform:none}
@media(max-width:760px){main{padding:0 16px}.mq{margin:0 -16px}nav{padding:14px 16px}nav div{gap:12px}.sec{grid-template-columns:1fr}.idx a{grid-template-columns:2.5rem 1fr}.idx a small:last-child{display:none}footer{padding:30px 16px}#pv{display:none}}
@media(prefers-reduced-motion:reduce){.r{opacity:1;transform:none;transition:none}.mq span{animation:none}}