/* BLANK website (v2). Built from the design handoff "BLANK Website.dc.html".
   Tokens follow the BLANK design system; all layout lives here (no inline styles). */

/* ---------- Fonts ---------- */
@font-face{font-family:"GC Grind";src:url("../fonts/GCGrind.woff2") format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:"Editorial Today";src:url("../fonts/EditorialToday-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Editorial Today";src:url("../fonts/EditorialToday-Italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Editorial Today";src:url("../fonts/EditorialToday-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Editorial Today";src:url("../fonts/EditorialToday-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}

/* ---------- Tokens ---------- */
:root{
  --blank-halo:#171717;--blank-cream:#FEF9ED;--blank-red:#E14642;--blank-flare:#F33239;--blank-oxblood:#6F0F17;
  --blank-blush:#F5C1D2;--blank-butter:#F9DB85;--blank-sky:#92B9FF;--blank-volt:#0066FF;--blank-white:#FFFFFF;
  --blank-red-hover:#CC3934;--blank-red-press:#B32F2B;--blank-halo-2:#242424;--blank-halo-3:#323232;--blank-halo-line:#3A3A3A;
  --blank-cream-2:#F4EEDD;--blank-cream-line:#E6DEC8;
  --text-secondary:#4A4844;--text-muted:#76726A;
  --font-display:"GC Grind","Anton","Impact",sans-serif;
  --font-text:"Editorial Today","Georgia",serif;
  --ease-snap:cubic-bezier(.2,.9,.1,1);--ease-out:cubic-bezier(.16,1,.3,1);
  --dur-fast:120ms;--dur-base:200ms;--dur-slow:420ms;
  --pad-x:clamp(20px,4vw,32px);
  --sec-y:clamp(72px,10vw,144px);
}

/* ---------- Base ---------- */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--blank-cream);color:var(--blank-halo);font-family:var(--font-text);-webkit-font-smoothing:antialiased;overflow-x:clip}
*,*::before,*::after{box-sizing:border-box}
a{color:var(--blank-red);text-decoration:none}
a:hover{color:var(--blank-oxblood)}
img,svg{display:block}
button{font:inherit}
::selection{background:#E14642;color:#FEF9ED}
:focus-visible{outline:2px solid var(--blank-volt);outline-offset:2px}
.blank-cursor,.blank-cursor *{cursor:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip:focus{position:fixed;left:12px;top:12px;z-index:3000;width:auto;height:auto;clip:auto;margin:0;padding:10px 14px;background:var(--blank-halo);color:var(--blank-cream);font-family:var(--font-display);text-transform:uppercase}
.disp{font-family:var(--font-display);font-weight:400;line-height:.86;text-transform:uppercase}
.red{color:var(--blank-red)}
.logo{display:block;height:auto;fill:currentColor}
.wrap{max-width:1320px;margin:0 auto}
@keyframes blank-wipe{from{transform:translateY(105%)}to{transform:translateY(0)}}
@keyframes blank-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- Buttons (design-system Button) ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:48px;padding:0 22px;font-family:var(--font-display);font-size:19px;line-height:1;text-transform:uppercase;letter-spacing:.01em;
  color:var(--btn-fg);background:var(--btn-bg);border:2px solid var(--btn-bd);border-radius:0;cursor:pointer;
  transition:background var(--dur-fast) var(--ease-snap),transform var(--dur-fast) var(--ease-snap);
  --btn-bg:var(--blank-red);--btn-fg:var(--blank-cream);--btn-bd:var(--blank-red);--btn-hbg:var(--blank-red-hover);--btn-pbg:var(--blank-red-press)}
.btn:hover{background:var(--btn-hbg);color:var(--btn-fg)}
.btn:active{background:var(--btn-pbg);transform:translate(1px,1px)}
.btn--sm{height:36px;padding:0 14px;font-size:15px}
.btn--lg{height:64px;padding:0 32px;font-size:26px}
.btn--full{display:flex;width:100%}
.btn--secondary{--btn-bg:var(--blank-halo);--btn-fg:var(--blank-cream);--btn-bd:var(--blank-halo);--btn-hbg:var(--blank-halo-3);--btn-pbg:#000}
.btn--outline{--btn-bg:transparent;--btn-fg:currentColor;--btn-bd:currentColor;--btn-hbg:rgba(23,23,23,.06);--btn-pbg:rgba(23,23,23,.12)}
.btn--cream{--btn-bg:var(--blank-cream);--btn-fg:var(--blank-halo);--btn-bd:var(--blank-cream);--btn-hbg:#fff;--btn-pbg:var(--blank-cream-2)}

/* Section label row: [01] / Selected work ——— 5 brands */
.label{font-family:var(--font-display);font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.sec-head{display:flex;align-items:center;gap:16px;font-family:var(--font-display);font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.sec-head .rule{flex:1;height:2px;background:currentColor}
.sec-head .rule--hair{height:1px;background:var(--blank-halo-line)}

/* ---------- Header ---------- */
.site-header{position:fixed;top:0;left:0;right:0;z-index:60;background:var(--blank-cream);border-bottom:2px solid var(--blank-halo)}
.site-header__bar{height:68px;padding:0 var(--pad-x);display:flex;align-items:center;gap:32px}
.site-header__logo{display:flex;align-items:center;gap:14px;color:var(--blank-red)}
.site-header__logo .logo{height:28px;width:auto}
.site-nav{flex:1;display:flex;justify-content:center;gap:clamp(20px,3vw,44px)}
.site-nav a{display:flex;gap:4px;font-family:var(--font-display);font-size:20px;line-height:1;text-transform:uppercase;color:var(--blank-halo)}
.site-nav a:hover{color:var(--blank-red)}
.site-nav sup{font-size:10px;line-height:1;color:var(--blank-red);vertical-align:baseline;position:static}
.menu-btn{display:none;margin-left:auto;height:44px;padding:0 14px;align-items:center;gap:8px;background:var(--blank-halo);color:var(--blank-cream);border:none;border-radius:0;font-family:var(--font-display);font-size:18px;text-transform:uppercase;line-height:1;cursor:pointer}
.menu-btn span{color:var(--blank-red)}

/* Mobile menu */
.menu{position:fixed;inset:0;z-index:80;background:var(--blank-halo);color:var(--blank-cream);display:flex;flex-direction:column;clip-path:inset(0 0 100% 0);transition:clip-path 420ms var(--ease-snap);pointer-events:none;visibility:hidden}
.menu.is-open{clip-path:inset(0 0 0 0);pointer-events:auto;visibility:visible}
.menu:not(.is-open){transition:clip-path 420ms var(--ease-snap),visibility 0s 420ms}
.menu__bar{height:68px;padding:0 var(--pad-x);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--blank-halo-line)}
.menu__bar .logo{height:28px;width:auto;color:var(--blank-cream)}
.menu__close{height:44px;padding:0 14px;display:flex;align-items:center;gap:8px;background:var(--blank-red);color:var(--blank-cream);border:none;border-radius:0;font-family:var(--font-display);font-size:18px;text-transform:uppercase;line-height:1;cursor:pointer}
.menu__nav{flex:1;display:flex;flex-direction:column;justify-content:center}
.menu__nav a{display:flex;align-items:baseline;gap:14px;padding:6px var(--pad-x);border-bottom:1px solid var(--blank-halo-line);overflow:hidden;color:var(--blank-cream);font-family:var(--font-display);font-size:clamp(48px,13vw,140px);line-height:.9;text-transform:uppercase}
.menu__nav a:last-child{border-bottom:none}
.menu__nav a > span:first-child{display:block;transform:translateY(110%);transition:transform 420ms var(--ease-snap)}
.menu.is-open .menu__nav a > span:first-child{transform:translateY(0)}
.menu__nav a:nth-child(1)>span:first-child{transition-delay:60ms}.menu__nav a:nth-child(2)>span:first-child{transition-delay:110ms}.menu__nav a:nth-child(3)>span:first-child{transition-delay:160ms}.menu__nav a:nth-child(4)>span:first-child{transition-delay:210ms}.menu__nav a:nth-child(5)>span:first-child{transition-delay:260ms}
.menu__nav .num{font-size:14px;color:var(--blank-butter)}
.menu__nav a:nth-child(n+3) .num{color:var(--blank-red)}
.menu__nav a:nth-child(1):hover{background:var(--blank-red);color:var(--blank-cream)}
.menu__nav a:nth-child(2):hover{background:var(--blank-volt);color:var(--blank-cream)}
.menu__nav a:nth-child(3):hover{background:var(--blank-butter);color:var(--blank-halo)}
.menu__nav a:nth-child(4):hover{background:var(--blank-blush);color:var(--blank-halo)}
.menu__nav a:nth-child(5):hover{background:var(--blank-sky);color:var(--blank-halo)}
.menu__foot{padding:20px var(--pad-x) 28px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;border-top:1px solid var(--blank-halo-line);font-family:var(--font-display);font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.menu__foot a{color:var(--blank-cream)}
.menu__foot a:hover{color:var(--blank-red)}
.menu__foot span{color:var(--blank-red)}

/* Custom cursor */
.cursor{position:fixed;left:0;top:0;z-index:2000;pointer-events:none;display:none}
.blank-cursor .cursor{display:block}
.cursor__dot{width:14px;height:14px;background:var(--blank-volt);transform:translate(-50%,-50%)}
.cursor__label{display:none;transform:translate(-50%,-50%);gap:8px;background:var(--blank-volt);color:var(--blank-cream);font-family:var(--font-display);font-size:16px;line-height:1;text-transform:uppercase;padding:12px 14px;white-space:nowrap}
.cursor.has-label .cursor__dot{display:none}
.cursor.has-label .cursor__label{display:flex}

main{padding-top:70px}
section[id]{scroll-margin-top:70px}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:max(640px,calc(100svh - 70px));padding:clamp(20px,3vw,36px) var(--pad-x) clamp(24px,3vw,36px);display:flex;flex-direction:column;justify-content:space-between;gap:40px;overflow:hidden;background:var(--blank-cream)}
.hero__meta{position:relative;z-index:3;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px}
.hero__meta .clock{display:flex;gap:8px}
.hero__meta .clock span:first-child{color:var(--blank-red)}
.hero__meta .clock time{min-width:62px}
.hero__mid{position:relative;z-index:2;display:flex;align-items:center;gap:clamp(32px,4vw,64px)}
.hero__copy{flex:1;min-width:0}
.hero h1{margin:0;font-size:clamp(52px,8vw,168px);color:var(--blank-halo)}
.hero h1 .ln{display:block;overflow:hidden;padding-top:.04em}
.hero h1 .ln > span{display:block;transition:transform 800ms var(--ease-out)}
.hero h1 .ln:nth-child(2) > span{transition-delay:90ms}
.hero h1 .ln:nth-child(3) > span{transition-delay:180ms}
.hero h1 .ln--word > span{display:flex;flex-wrap:wrap;align-items:center}
.motion:not(.is-in) .hero h1 .ln > span{transform:translateY(105%)}
.hero h1 .br{color:var(--blank-red)}
.hero h1 .word{display:inline-block;overflow:hidden}
.hero h1 .word span{display:block;padding:.04em .08em 0;background:var(--blank-red);color:var(--blank-cream)}
.motion .hero h1 .word span.is-new{animation:blank-wipe 420ms var(--ease-snap) both}
.sheets{position:relative;flex:0 0 clamp(200px,22vw,360px);aspect-ratio:1;margin:0 clamp(40px,6vw,104px) 0 clamp(16px,2vw,32px);pointer-events:none}
.sheets__l{position:absolute;inset:0;transition:transform 600ms var(--ease-out)}
.sheets__l > div{position:absolute;inset:0}
.sheet--blush{background:var(--blank-blush);transform:rotate(-11deg) translate(-14%,6%)}
.sheet--butter{background:var(--blank-butter);transform:rotate(6deg) translate(9%,-5%)}
.sheet--red{background:var(--blank-red);box-shadow:8px 8px 0 var(--blank-halo);transform:rotate(-2deg);display:flex;flex-direction:column;justify-content:space-between;padding:7%;color:var(--blank-cream)}
.sheet--red .top{display:flex;justify-content:space-between;font-family:var(--font-display);font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.sheet--red .mid{display:flex;justify-content:center}
.sheet--red .mid .logo{height:120px;width:auto;max-width:100%;color:var(--blank-cream)}
.sheet--red .bot{font-family:var(--font-text);font-size:15px;line-height:1.2}
.hero__foot{position:relative;z-index:3;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px}
.hero__intro{display:flex;flex-direction:column;gap:24px;max-width:460px}
.hero__intro p{margin:0;font-size:clamp(18px,1.6vw,22px);line-height:1.3;text-wrap:pretty}
.hero__ctas{display:flex;flex-wrap:wrap;gap:12px}
.hero__ctas .btn--outline{color:var(--blank-halo)}
.hero__side{display:flex;align-items:flex-end;gap:40px}
.slash-list{list-style:none;margin:0;padding:0;font-family:var(--font-text);font-weight:700;font-size:16px;line-height:1.2}
.slash-list span{color:var(--blank-red)}
.scroll-cue{display:flex;flex-direction:column;align-items:center;gap:6px;font-family:var(--font-display);font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--blank-halo)}
.scroll-cue span:last-child{font-size:28px;line-height:1;color:var(--blank-red)}
.scroll-cue:hover{color:var(--blank-red)}

/* ---------- Marquee ---------- */
.marquee{background:var(--blank-red);color:var(--blank-cream);border-top:2px solid var(--blank-halo);border-bottom:2px solid var(--blank-halo);overflow:hidden;padding:22px 0 10px;display:flex;align-items:center}
.marquee__track{display:flex;width:max-content;white-space:nowrap;font-family:var(--font-display);font-size:clamp(48px,7vw,104px);line-height:1;text-transform:uppercase}
.motion .marquee__track{animation:blank-marquee 28s linear infinite}
.marquee__run{display:flex;flex-shrink:0;gap:.3em;padding-right:.3em}
.marquee__run .plus{color:var(--blank-oxblood)}

/* ---------- Section shell ---------- */
.sec{padding:var(--sec-y) var(--pad-x)}
.sec__inner{max-width:1320px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(40px,5vw,72px)}
.sec__intro{display:flex;flex-direction:column;gap:28px}
.sec__row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px}
.sec h2{margin:0;font-size:clamp(56px,10vw,168px)}
.sec__row p{margin:0;max-width:380px;font-size:18px;line-height:1.35;text-wrap:pretty}

/* ---------- Work ---------- */
.work{background:var(--blank-cream)}
.tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.2vw,16px)}
.tile{position:relative;aspect-ratio:16/11;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--bg);color:var(--ink);border:2px solid var(--blank-halo);border-radius:0;cursor:pointer;text-align:center;transition:transform 200ms var(--ease-snap),box-shadow 200ms var(--ease-snap)}
.tile:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--blank-halo)}
.tile:active{transform:translate(1px,1px);box-shadow:none}
.tile__idx{position:absolute;top:10px;left:12px;font-family:var(--font-display);font-size:12px;letter-spacing:.04em}
.tile__plus{position:absolute;top:8px;right:12px;font-family:var(--font-display);font-size:18px;line-height:1}
.tile img{display:block;width:var(--logo-w);max-height:62%;object-fit:contain;height:auto}
.strip{position:absolute;left:0;right:0;bottom:0;height:8px;display:flex}
.strip span:first-child{flex:2;background:var(--c1)}
.strip span:last-child{flex:1;background:var(--c2)}
.work__more{display:flex;justify-content:center}
.hint-touch{display:none}

/* Brand card (popup / bottom sheet) */
.pop{position:fixed;z-index:150;width:360px;max-width:calc(100vw - 24px);pointer-events:none;background:var(--blank-cream);color:var(--blank-halo);border:2px solid var(--blank-halo);box-shadow:8px 8px 0 var(--blank-red)}
.pop[hidden]{display:none}
.pop__head{position:relative;height:128px;display:flex;align-items:center;justify-content:center;background:var(--bg);border-bottom:2px solid var(--blank-halo)}
.pop__head img{display:block;width:var(--logo-w);max-height:70%;object-fit:contain}
.pop__close{display:none;position:absolute;top:8px;right:8px;width:44px;height:44px;align-items:center;justify-content:center;background:var(--blank-halo);color:var(--blank-cream);border:none;border-radius:0;font-family:var(--font-display);font-size:22px;line-height:1;cursor:pointer}
.pop__body{display:flex;flex-direction:column;gap:10px;padding:16px 20px 18px}
.pop__sector{font-family:var(--font-display);font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--blank-red)}
.pop__name{font-family:var(--font-display);font-size:36px;line-height:.86;text-transform:uppercase}
.pop__desc{font-size:17px;line-height:1.3}
.pop__story{font-size:15px;line-height:1.4;color:var(--text-secondary)}
.pop__foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;padding-top:10px;border-top:2px solid var(--blank-halo);font-family:var(--font-display);font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.pop__foot span:last-child{color:var(--blank-red)}
.pop--sheet{left:12px!important;top:auto!important;bottom:12px;width:calc(100vw - 24px);pointer-events:auto}
.pop--sheet .pop__head{height:104px}
.pop--sheet .pop__close{display:flex}

/* ---------- Manifesto ---------- */
.manifesto{position:relative;background:var(--blank-halo);color:var(--blank-cream);padding:clamp(80px,12vw,180px) var(--pad-x);overflow:hidden}
.manifesto__inner{max-width:1320px;margin:0 auto;display:flex;gap:48px;align-items:flex-start}
.manifesto__copy{flex:1;display:flex;flex-direction:column;gap:48px}
.manifesto__label{font-family:var(--font-display);font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--blank-butter)}
.manifesto__big{margin:0;font-family:var(--font-display);font-size:clamp(44px,7vw,120px);line-height:.9;text-transform:uppercase;text-wrap:balance}
.manifesto__big .beige{color:var(--blank-butter)}
.manifesto__big .nothing{display:inline-block;background:var(--blank-cream);color:var(--blank-halo);padding:0 .1em}
.manifesto__big .impossible{color:var(--blank-red)}
.manifesto__cols{display:flex;flex-wrap:wrap;gap:24px 64px;font-size:20px;line-height:1.3}
.manifesto__cols p{margin:0;max-width:380px}
.manifesto__cols p + p{color:var(--blank-sky)}
.manifesto__vert{flex:0 0 150px;width:150px;height:375px;position:relative;color:var(--blank-red)}
.manifesto__vert .logo{position:absolute;left:50%;top:50%;width:375px;height:150px;transform:translate(-50%,-50%) rotate(-90deg)}

/* ---------- Services ---------- */
.services{background:var(--blank-cream)}
.services .sec__row p{max-width:340px}
.acc{border-bottom:2px solid var(--blank-halo)}
.acc__item{border-top:2px solid var(--blank-halo)}
.acc__btn{width:100%;display:flex;align-items:center;gap:clamp(16px,3vw,40px);padding:clamp(16px,2vw,28px) 0;background:transparent;border:none;border-radius:0;color:var(--blank-halo);text-align:left;cursor:pointer;transition:padding 200ms var(--ease-snap)}
.acc__btn:hover{background:var(--hov);color:var(--hov-ink,var(--blank-halo));padding-left:24px;padding-right:24px}
.acc__num{font-family:var(--font-display);font-size:14px;width:40px;flex:none}
.acc__title{flex:1;font-family:var(--font-display);font-size:clamp(48px,8vw,128px);line-height:.86;text-transform:uppercase}
.acc__title span{color:var(--blank-red)}
.acc__sub{font-family:var(--font-text);font-weight:700;font-size:20px}
.acc__icon{font-family:var(--font-display);font-size:clamp(36px,4vw,56px);line-height:1;color:var(--blank-red);transition:transform 200ms var(--ease-snap)}
.acc__btn[aria-expanded="true"] .acc__icon{transform:rotate(45deg)}
.acc__item--web .acc__title span,.acc__item--web .acc__icon{color:inherit}
.acc__panel{margin:0 0 clamp(20px,2.4vw,32px);border:2px solid var(--blank-halo);background:var(--blank-cream-2);color:var(--blank-halo);display:flex;flex-direction:column}
.acc__panel[hidden]{display:none}
.acc__panel p{margin:0;padding:clamp(20px,2.6vw,32px);max-width:880px;font-size:clamp(18px,1.6vw,22px);line-height:1.35;text-wrap:pretty}
.acc__tags{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:10px clamp(18px,2.2vw,32px);padding:16px clamp(20px,2.6vw,32px);border-top:2px solid var(--blank-halo);margin:0;list-style:none}
.acc__tags li{display:flex;align-items:center;white-space:nowrap;font-family:var(--font-text);font-weight:700;font-size:17px;line-height:1.2}
.acc__tags li span{color:var(--blank-red)}

/* ---------- About ---------- */
.about{background:var(--blank-red);color:var(--blank-cream);overflow:hidden}
.about .sec__inner{gap:clamp(48px,6vw,88px)}
.about__grid{display:flex;flex-wrap:wrap;gap:56px clamp(40px,6vw,96px);align-items:flex-start}
.about__stack{flex:0 1 auto;display:flex;flex-direction:column;gap:6px}
.about__stack .logo{height:112px;width:auto}
.about__stack .logo:nth-child(1){color:var(--blank-cream)}
.about__stack .logo:nth-child(2){color:var(--blank-blush)}
.about__stack .logo:nth-child(3){color:var(--blank-butter)}
.about__copy{flex:1 1 420px;display:flex;flex-direction:column;gap:40px}
.about h2{font-size:clamp(52px,7.4vw,124px)}
.about h2 span{color:var(--blank-oxblood)}
.about__copy > p{margin:0;max-width:560px;font-size:22px;line-height:1.3;text-wrap:pretty}
.rules{display:flex;flex-direction:column;border-top:2px solid var(--blank-cream);margin:0;padding:0;list-style:none}
.rules li{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 24px;padding:18px 0;border-bottom:2px solid var(--blank-cream)}
.rules b{font-weight:400;font-family:var(--font-display);font-size:clamp(32px,3.4vw,48px);line-height:.9;text-transform:uppercase;min-width:260px}
.rules span{flex:1 1 240px;font-size:19px;line-height:1.3}

/* ---------- Clients ---------- */
.clients{background:var(--blank-halo);color:var(--blank-cream)}
.clients .sec__inner{gap:clamp(48px,6vw,88px)}
.clients .sec-head .end{color:var(--blank-butter)}
.client-list{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.42em;row-gap:.12em;margin:0;padding:0;list-style:none;font-family:var(--font-display);font-size:clamp(28px,3.6vw,56px);line-height:1;text-transform:uppercase}
.client-list li{display:flex;align-items:baseline;gap:.42em;white-space:nowrap}
.client-list .n{color:var(--blank-cream);transition:color 120ms}
.client-list li:nth-child(4n+1) .n:hover{color:var(--blank-red)}
.client-list li:nth-child(4n+2) .n:hover{color:var(--blank-blush)}
.client-list li:nth-child(4n+3) .n:hover{color:var(--blank-butter)}
.client-list li:nth-child(4n+4) .n:hover{color:var(--blank-sky)}
.client-list .sl{color:var(--blank-red)}
.client-list .yours{color:var(--blank-halo-3)}
.quote{margin:0;display:flex;flex-wrap:wrap;gap:24px 64px;align-items:flex-end;padding-top:clamp(32px,4vw,56px);border-top:1px solid var(--blank-halo-line)}
.quote blockquote{margin:0;flex:1 1 480px;font-family:var(--font-text);font-style:italic;font-size:clamp(28px,3.4vw,48px);line-height:1.12;text-wrap:pretty}
.quote figcaption{display:flex;flex-direction:column;gap:6px;font-family:var(--font-display);font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.quote figcaption span:first-child{color:var(--blank-butter)}

/* ---------- Contact ---------- */
.contact{background:var(--blank-sky);color:var(--blank-halo)}
.contact .sec__inner{gap:clamp(48px,6vw,88px)}
.contact__grid{display:flex;flex-wrap:wrap;gap:56px clamp(40px,6vw,96px);align-items:flex-start}
.contact__copy{flex:1 1 440px;display:flex;flex-direction:column;gap:32px}
.contact h2{font-size:clamp(64px,11vw,184px)}
.contact__copy p{margin:0;max-width:420px;font-size:22px;line-height:1.3}
.contact__mail{font-family:var(--font-display);font-size:clamp(28px,3.4vw,48px);line-height:1;text-transform:uppercase;color:var(--blank-halo);border-bottom:2px solid var(--blank-halo);align-self:flex-start;padding-bottom:4px;overflow-wrap:anywhere}
.contact__mail:hover{color:var(--blank-red);border-color:var(--blank-red)}
.brief{flex:1 1 400px;max-width:560px;display:flex;flex-direction:column;gap:24px;background:var(--blank-cream);border:2px solid var(--blank-halo);box-shadow:8px 8px 0 var(--blank-halo);padding:clamp(20px,3vw,36px);margin:0}
.brief__top{display:flex;justify-content:space-between}
.brief__top span:last-child{color:var(--blank-red)}
.brief fieldset{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:10px}
.brief legend{padding:0;margin-bottom:10px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{--btn-bg:transparent;--btn-fg:currentColor;--btn-bd:currentColor;--btn-hbg:rgba(23,23,23,.06);--btn-pbg:rgba(23,23,23,.12)}
.chip[aria-pressed="true"]{--btn-bg:var(--blank-red);--btn-fg:var(--blank-cream);--btn-bd:var(--blank-red);--btn-hbg:var(--blank-red-hover);--btn-pbg:var(--blank-red-press)}
.field{display:flex;flex-direction:column;gap:6px}
.field input{height:52px;padding:0 14px;border:2px solid var(--blank-halo);border-radius:0;background:var(--blank-white);color:var(--blank-halo);font-family:var(--font-text);font-size:17px;outline:none;width:100%;min-width:0;-moz-appearance:textfield}
.field input:focus{border-color:var(--blank-volt)}
.field input::placeholder{color:var(--text-muted)}
.field.has-error input{border-color:var(--blank-red)}
.field__err{font-family:var(--font-text);font-size:13px;color:var(--blank-red)}
.field__err:empty{display:none}
.brief__row{display:flex;flex-wrap:wrap;gap:24px 16px}
.brief__row .field:first-child{flex:2 1 220px;min-width:0}
.brief__row .field:last-child{flex:1 1 140px;min-width:0}
.brief .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.brief__status{font-family:var(--font-text);font-size:14px;color:var(--blank-red);margin:-8px 0 0}
.brief__status:empty{display:none}
.brief button[type=submit][disabled]{opacity:.6;cursor:wait}

/* ---------- Footer ---------- */
.site-footer{background:var(--blank-halo);color:var(--blank-cream);padding:clamp(48px,6vw,88px) var(--pad-x) 28px;display:flex;flex-direction:column;gap:clamp(40px,5vw,72px)}
.site-footer__cols{display:flex;flex-wrap:wrap;justify-content:space-between;gap:32px}
.site-footer__col{display:flex;flex-direction:column;gap:8px}
.site-footer__col .label{color:var(--blank-butter)}
.site-footer__col a{font-family:var(--font-display);font-size:22px;text-transform:uppercase;color:var(--blank-cream)}
.site-footer__col a:hover{color:var(--blank-red)}
.site-footer__col--cta{gap:12px;max-width:320px}
.site-footer__col--cta p{margin:0;font-size:19px;line-height:1.3}
.site-footer__col--cta a{color:var(--blank-red)}
.site-footer__col--cta a:hover{color:var(--blank-oxblood)}
.site-footer__mark{display:block;width:100%;height:auto}
.site-footer__base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:20px;border-top:1px solid var(--blank-halo-line);font-family:var(--font-display);font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.site-footer__base .made{font-family:var(--font-text);font-weight:700;font-size:14px;letter-spacing:.08em}
.site-footer__base a{color:var(--blank-cream)}
.site-footer__base a:hover{color:var(--blank-red)}

/* ---------- Toast ---------- */
.toast{position:fixed;left:clamp(16px,3vw,32px);bottom:clamp(16px,3vw,32px);z-index:90;display:flex;align-items:flex-start;gap:12px;min-width:280px;max-width:420px;padding:14px 14px 14px 16px;background:var(--blank-halo);color:var(--blank-cream);box-shadow:6px 6px 0 var(--blank-halo)}
.toast[hidden]{display:none}
.toast__slash{font-family:var(--font-display);font-size:22px;line-height:1;color:var(--blank-red)}
.toast__body{flex:1;display:flex;flex-direction:column;gap:2px}
.toast__title{font-family:var(--font-display);font-size:18px;text-transform:uppercase;line-height:1}
.toast__text{font-family:var(--font-text);font-size:15px;line-height:1.3}
.toast__close{background:none;border:none;color:var(--blank-cream);font-family:var(--font-display);font-size:18px;cursor:pointer;padding:0}

/* ---------- Mobile (< 860px) ---------- */
@media (max-width:859.98px){
  .site-nav,.header-cta{display:none}
  .menu-btn{display:flex}
  .sheets{display:none}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tile{aspect-ratio:1/1}
  .tile:last-child{grid-column:span 2}
  .hint-fine{display:none}.hint-touch{display:inline}
  .manifesto__vert{display:none}
  .acc__sub{display:none}
}
@media (hover:none),(pointer:coarse){ .hint-fine{display:none}.hint-touch{display:inline} }

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:0s!important;animation:none!important}
}

/* Logo aspect ratios (inline SVG needs them when only one side is set) */
.logo--wm{aspect-ratio:653.12/261.38}
.logo--lk{aspect-ratio:518.34/374.36}
