/* Literata (TypeTogether, SIL OFL 1.1), self-hosted variable font: opsz 7-72, wght 200-900 */
@font-face{font-family:"Literata";font-style:normal;font-weight:200 900;font-display:swap;src:url(fonts/literata-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Literata";font-style:normal;font-weight:200 900;font-display:swap;src:url(fonts/literata-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Literata";font-style:italic;font-weight:200 900;font-display:swap;src:url(fonts/literata-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Literata";font-style:italic;font-weight:200 900;font-display:swap;src:url(fonts/literata-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{
  --ink:#121212; --body:#45443F; --mute:#8B8A84; --rule:#E2E1DC; --stone:#F3F2EE; --deep:#13241F; --night:#101312; --card:#181C1A; --line-d:rgba(255,255,255,.12);
  --serif:"Zodiak",Georgia,serif; --text:"Literata",Georgia,"Times New Roman",serif;
  --pad:64px; --gap:24px; --ease:cubic-bezier(.2,.7,.1,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--text);color:var(--body);background:#fff;font-size:17.5px;line-height:1.66;font-optical-sizing:auto;font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;text-align:left}
img{display:block;width:100%;height:100%;object-fit:cover}
ul,ol{list-style:none}
h1,h2,h3,blockquote,.lead{text-wrap:balance}
p{text-wrap:pretty}
.wrap{max-width:1440px;margin:0 auto;padding:0 var(--pad)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}

.h2{font-family:var(--serif);font-weight:300;font-size:60px;line-height:1.06;letter-spacing:-.028em;color:var(--ink)}

.frame{position:relative;overflow:hidden;background:#d9d7d0}
.frame .px{position:absolute;left:0;right:0;top:-7%;bottom:-7%}
.frame .px img{will-change:transform}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* motion initial states (only when GSAP is running) */
.motion [data-r]{opacity:0}
.motion .clip{clip-path:inset(100% 0% 0% 0%)}
.motion [data-split],.motion .hero h1{visibility:hidden}
.line{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}
.line-i{display:inline-block;will-change:transform}

/* ---------- buttons & links ---------- */
.btn{display:inline-flex;align-items:center;gap:12px;height:52px;padding:0 26px 0 28px;border-radius:999px;font-size:16px;font-weight:500;transition:background-color .35s,color .35s;white-space:nowrap}
.btn .t{display:inline-block;overflow:hidden;height:1.4em;line-height:1.4em}
.btn .t > span{display:block;transition:transform .55s var(--ease)}
.btn .t > span::after{content:attr(data-t);display:block}
.btn:hover .t > span{transform:translateY(-50%)}
.btn svg{width:15px;height:15px;transition:transform .45s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn.light{background:#fff;color:var(--ink)}
.btn.light:hover{background:#E9E8E2}


.ulink{position:relative;display:inline-block;padding-bottom:3px}
.ulink::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;opacity:.4;transform-origin:right;transition:transform .5s var(--ease),opacity .3s}
.ulink:hover::after{opacity:1;animation:uline .7s var(--ease)}
@keyframes uline{0%{transform:scaleX(1);transform-origin:right}45%{transform:scaleX(0);transform-origin:right}46%{transform-origin:left}100%{transform:scaleX(1);transform-origin:left}}

/* ---------- nav ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:60;color:#fff;border-bottom:1px solid transparent;transition:transform .6s var(--ease),background-color .45s,color .45s,border-color .45s}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:92px;transition:height .45s var(--ease)}
.nav[data-theme=light]{background:rgba(255,255,255,.96);color:var(--ink);border-color:var(--rule)}
.nav[data-theme=dark]{background:rgba(16,19,18,.96);border-color:var(--line-d)}
.nav[data-theme=green]{background:rgba(19,36,31,.97);border-color:var(--line-d)}
.nav:not([data-theme=photo]) .wrap{height:70px}
.nav.hide{transform:translateY(-101%)}
.brand{font-family:var(--serif);font-size:22px;letter-spacing:-.02em;white-space:nowrap}
.nav-links{display:flex;align-items:center;gap:36px;font-size:15.5px}
.nav-links a:not(.btn){opacity:.9;transition:opacity .2s}
.nav-links a:not(.btn):hover{opacity:1}
.nav .btn{height:42px;padding:0 20px;font-size:15px;margin-left:8px}
.nav .btn{background:#fff;color:var(--ink)}
.nav[data-theme=light] .btn{background:var(--ink);color:#fff}
.menu-btn{display:none;font-size:15px;font-weight:500}
.menu{position:fixed;inset:0;z-index:70;background:var(--night);color:#fff;display:flex;flex-direction:column;padding:22px;visibility:hidden;opacity:0;transition:opacity .4s,visibility 0s .4s}
.menu.open{visibility:visible;opacity:1;transition:opacity .4s}
.menu .top{display:flex;justify-content:space-between;align-items:center;height:28px}
.menu nav{margin-top:auto;margin-bottom:auto;display:flex;flex-direction:column;gap:6px}
.menu nav a{font-family:var(--serif);font-weight:300;font-size:42px;letter-spacing:-.025em;line-height:1.2;transform:translateY(16px);opacity:0;transition:transform .6s var(--ease),opacity .6s}
.menu.open nav a{transform:none;opacity:1}
.menu.open nav a:nth-child(2){transition-delay:.05s}.menu.open nav a:nth-child(3){transition-delay:.1s}.menu.open nav a:nth-child(4){transition-delay:.15s}.menu.open nav a:nth-child(5){transition-delay:.2s}.menu.open nav a:nth-child(6){transition-delay:.25s}


/* ---------- hero ---------- */
.hero{position:relative;height:100vh;min-height:760px;max-height:1000px;color:#fff;overflow:hidden;background:#2a2118}
.hero-media{position:absolute;inset:0;will-change:transform}
.hero-media img{object-position:50% 40%;transform:scale(1.04)}
.hero .scrim{position:absolute;inset:0;background:rgba(14,11,8,.36)}
.hero > .wrap{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;padding-top:92px}
.hero-copy{margin-top:auto;padding-bottom:56px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:end;will-change:transform}


.hero h1{grid-column:1 / 10;font-family:var(--serif);font-weight:300;font-size:86px;line-height:1.02;letter-spacing:-.034em}
.hero .side{grid-column:10 / 13;padding-bottom:8px}
.hero .side p{font-size:17.5px;line-height:1.55;color:rgba(255,255,255,.9);max-width:330px}
.hero .side .btn{margin-top:26px}





@keyframes drip{0%{transform:translateY(-100%)}60%,100%{transform:translateY(100%)}}

/* ---------- intro ---------- */
.intro{padding:150px 0 128px}

.statement{grid-column:3 / 12;font-family:var(--serif);font-weight:300;font-size:50px;line-height:1.22;letter-spacing:-.024em;color:var(--ink)}
.statement u{text-decoration:none;background:none;border-bottom:2px solid currentColor;padding-bottom:0}
.statement .w{transition:none}

/* ---------- about ---------- */
.about{padding:0 0 150px}
.portrait{grid-column:1 / 6}
.portrait .frame{aspect-ratio:4 / 5}
.portrait img{object-position:50% 30%}
.about .text{grid-column:7 / 13;align-self:center}
.about h2{font-family:var(--serif);font-weight:300;font-size:48px;line-height:1.1;letter-spacing:-.028em;color:var(--ink);margin-bottom:28px}
.about .text p{max-width:540px}
.about .text p+p{margin-top:18px}





/* ---------- services ---------- */
.services{background:var(--stone);padding:136px 0 150px}
.sv-head{grid-column:1 / 13;display:flex;justify-content:space-between;align-items:end;margin-bottom:72px;gap:40px}
.sv-head p{max-width:420px}
.sv-media{grid-column:1 / 6;position:sticky;top:110px;align-self:start}
.sv-media .frame{aspect-ratio:5 / 6}
.sv-media img{position:absolute;inset:0;opacity:0;transform:scale(1.06);transition:opacity .7s var(--ease),transform 1.2s var(--ease)}
.sv-media img.on{opacity:1;transform:scale(1)}

.sv-list{grid-column:7 / 13;border-top:1px solid #D6D5CF}
.svc{border-bottom:1px solid #D6D5CF}
.svc-head{display:grid;grid-template-columns:52px minmax(0,1fr) 28px;align-items:start;width:100%;padding:28px 0 26px;column-gap:8px}

.svc-name{display:block;font-family:var(--serif);font-size:30px;line-height:1.2;letter-spacing:-.022em;color:var(--ink);transition:transform .55s var(--ease)}
.svc-line{display:block;font-size:16px;color:var(--body);margin-top:6px;transition:transform .55s var(--ease)}
.svc-plus{position:relative;width:16px;height:16px;margin-top:14px;justify-self:end}
.svc-plus::before,.svc-plus::after{content:"";position:absolute;left:0;top:7.5px;width:16px;height:1px;background:var(--ink);transition:transform .5s var(--ease)}
.svc-plus::after{transform:rotate(90deg)}
.svc.active .svc-plus::after{transform:rotate(0)}

.svc.active .svc-name,.svc.active .svc-line{transform:translateX(10px)}
.svc-body{height:0;overflow:hidden;transition:height .6s var(--ease)}
.svc.active .svc-body{height:var(--dh,124px)}
.svc-inner{padding:0 0 28px 70px}
.svc-inner img{display:none}
.svc-points{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}
.svc-points li{font-size:15px;color:var(--ink);padding-left:18px;position:relative;line-height:1.45}


/* ---------- AI opener (full-bleed photo) ---------- */
.ai-open{position:relative;height:100vh;min-height:720px;max-height:960px;color:#fff;overflow:hidden;background:#1d1f1e}
.ai-open .px{position:absolute;left:0;right:0;top:-8%;bottom:-8%}
.ai-open img{object-position:50% 45%}
.ai-open .scrim{position:absolute;inset:0;background:rgba(10,12,11,.46)}
.ai-open .wrap{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:56px}

.ai-open h2{font-family:var(--serif);font-weight:300;font-size:96px;line-height:1;letter-spacing:-.032em;max-width:11.5em;margin:22px 0 56px}


/* ---------- AI approach (editorial) ---------- */
.ai{padding:150px 0 150px}

.ai-lead{grid-column:3 / 12;font-family:var(--serif);font-weight:300;font-size:46px;line-height:1.24;letter-spacing:-.022em;color:var(--ink)}
.ai-fig{grid-column:1 / 7;margin-top:120px}
.ai-fig .frame{aspect-ratio:4 / 3}
.ai-side{grid-column:8 / 13;margin-top:120px;align-self:center}
.ai-quote{font-family:var(--serif);font-weight:300;font-style:italic;font-size:50px;line-height:1.12;letter-spacing:-.025em;color:var(--ink)}

.split-lists{grid-column:1 / 13;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--gap);margin-top:130px}
.sl h3{font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.015em;color:var(--ink);padding-bottom:22px;border-bottom:1px solid var(--ink)}
.sl:last-child{padding-left:calc(var(--gap) * 2)}
.sl li{display:grid;grid-template-columns:52px 1fr;padding:18px 0;border-bottom:1px solid var(--rule);font-size:18px;color:var(--ink);transition:padding .5s var(--ease)}
.sl li:hover{padding-left:10px}
.sl li span{font-size:13.5px;color:var(--mute);padding-top:4px;font-variant-numeric:tabular-nums}

/* ---------- week: sticky typographic scroll ---------- */
.week{background:var(--stone);padding:150px 0 150px}
.wk-head{grid-column:1 / 13;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);margin-bottom:110px}

.wk-head h2{grid-column:1 / 10}
.wk-head p{grid-column:1 / 7;margin-top:28px;font-size:18px}
.wk-sticky{grid-column:1 / 7;position:sticky;top:120px;align-self:start;height:calc(100vh - 170px);max-height:700px;display:flex;flex-direction:column}
.wk-day{font-family:var(--serif);font-weight:300;font-size:112px;line-height:1;letter-spacing:-.04em;color:var(--ink);overflow:hidden;padding-bottom:.12em;white-space:nowrap}
.wk-day-i{display:inline-block;will-change:transform}










.wk-steps{grid-column:7 / 13}
.wk-step{padding-bottom:120px}
.wk-step + .wk-step{padding-top:0}
.wk-step .frame{aspect-ratio:4 / 3}
.wk-step:nth-child(5) .frame{aspect-ratio:4 / 5}
.wk-step:nth-child(5) .frame img{object-position:50% 60%}
.wk-mday{display:none}

.wk-step h3{font-family:var(--serif);font-weight:300;font-size:40px;line-height:1.12;letter-spacing:-.024em;color:var(--ink);margin:30px 0 18px;max-width:14em}
.wk-step p{font-size:17px;max-width:520px}


.wk-end{grid-column:1 / 13;display:flex;justify-content:space-between;align-items:end;gap:40px;padding-top:56px;border-top:1px solid #D6D5CF}
.wk-end p{font-family:var(--serif);font-weight:300;font-size:56px;line-height:1.08;letter-spacing:-.028em;color:var(--ink);max-width:14em}
.wk-end .ulink{font-size:17px;color:var(--ink);white-space:nowrap;margin-bottom:10px}

/* ---------- process ---------- */
.process{padding:150px 0 40px}
.pr-head{grid-column:1 / 13;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);margin-bottom:88px}

.pr-head h2{grid-column:3 / 12}
.pr-media{grid-column:1 / 6;position:sticky;top:110px;height:min(680px,calc(100vh - 150px));align-self:start}
.pr-media .frame{height:100%}
.pr-media img{position:absolute;inset:0;opacity:0;transform:scale(1.08);transition:opacity .8s var(--ease),transform 1.4s var(--ease)}
.pr-media img.on{opacity:1;transform:scale(1)}



.pr-steps{grid-column:7 / 13}
.step{min-height:min(76vh,700px);padding:40px 0 80px;border-top:1px solid var(--rule);transition:opacity .5s}
.step:first-child{border-top:0;padding-top:0}
.js .step:not(.on){opacity:.32}

.step h3{font-family:var(--serif);font-weight:300;font-size:54px;line-height:1.02;letter-spacing:-.03em;color:var(--ink);margin:6px 0 22px}
.step p{font-size:18px;max-width:500px}
.step ul{margin-top:28px;border-top:1px solid var(--rule);max-width:500px}
.step li{padding:12px 0;border-bottom:1px solid var(--rule);font-size:15.5px;color:var(--ink);display:flex;justify-content:space-between}
.step li span{color:var(--mute)}
.step .mimg{display:none}

.principles{background:var(--stone);padding:130px 0 140px}

.pp{grid-column:3 / 13}
.pp-row{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);column-gap:var(--gap);align-items:baseline;padding:30px 0 32px;border-top:1px solid #D6D5CF}
.pp-row:last-child{border-bottom:1px solid #D6D5CF}
.pp-row h3{font-family:var(--serif);font-weight:300;font-size:58px;line-height:1.05;letter-spacing:-.03em;color:var(--ink)}
.pp-row h3 span{color:#A9A79F;transition:color .5s}
.pp-row:hover h3 span{color:var(--ink)}
.pp-row p{font-size:16px}

/* ---------- band ---------- */
.band{position:relative;height:720px;color:#fff;overflow:hidden}
.band .px{position:absolute;left:0;right:0;top:-10%;bottom:-10%}
.band img{object-position:50% 55%}
.band .scrim{position:absolute;inset:0;background:rgba(12,10,20,.3)}
.band .wrap{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:64px}
.band blockquote{font-family:var(--serif);font-weight:300;font-size:60px;line-height:1.08;letter-spacing:-.03em;max-width:15em}



/* ---------- tools ---------- */

/* ---------- writing ---------- */
.writing{background:var(--stone);padding:136px 0 150px}
.wr-head{grid-column:1 / 13;display:flex;justify-content:space-between;align-items:end;margin-bottom:56px}
.wr-cards{grid-column:1 / 13;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--gap)}
.post{display:flex;flex-direction:column;background:#fff;padding:32px 32px 30px;min-height:420px;transition:background-color .4s,transform .6s var(--ease)}
.post:hover{transform:translateY(-6px)}

.post h3{font-family:var(--serif);font-weight:300;font-size:33px;line-height:1.12;letter-spacing:-.026em;color:var(--ink);margin:26px 0 16px}
.post p{font-size:16px}
.post .more{margin-top:auto;padding-top:28px;font-size:15px;color:var(--ink);display:flex;align-items:center;gap:10px}
.post .more svg{width:14px;height:14px;transition:transform .45s var(--ease)}
.post:hover .more svg{transform:translate(3px,-3px)}
.post.photo{position:relative;color:#fff;background:#222;overflow:hidden;padding:0}
.post.photo img{position:absolute;inset:0;transition:transform 1.2s var(--ease)}
.post.photo:hover img{transform:scale(1.05)}
.post.photo .scrim{position:absolute;inset:0;background:rgba(10,10,10,.4)}
.post.photo .in{position:relative;z-index:2;display:flex;flex-direction:column;height:100%;padding:32px}
.post.photo h3,.post.photo .more{color:#fff}
.post.photo p{color:rgba(255,255,255,.82)}

/* ---------- contact ---------- */
.contact{background:var(--deep);color:#fff;padding:140px 0 0;overflow:hidden}

.ct-copy{grid-column:1 / 8;display:flex;flex-direction:column}
.ct-copy h2{font-family:var(--serif);font-weight:300;font-size:78px;line-height:1.02;letter-spacing:-.034em;margin-top:24px}
.ct-copy p{margin-top:28px;font-size:19px;line-height:1.6;color:rgba(255,255,255,.78);max-width:520px}
.ct-actions{display:flex;align-items:center;gap:32px;margin-top:44px;flex-wrap:wrap}
.ct-actions .ulink{font-size:17px}


.ct-photo{grid-column:9 / 13}
.ct-photo .frame{aspect-ratio:4 / 5;background:#1d302a}

.wordmark{margin-top:120px;font-family:var(--serif);font-weight:300;font-size:clamp(64px,19vw,276px);line-height:.92;letter-spacing:-.035em;white-space:nowrap;display:block;overflow:hidden;padding-bottom:.06em;color:#fff}
.wordmark .wm-in{display:inline-block}.wordmark .wm-in span{display:inline-block}
footer{border-top:1px solid var(--line-d);height:80px;display:flex;align-items:center;justify-content:space-between;font-size:15px;color:rgba(255,255,255,.55);margin-top:28px}
footer .f{display:flex;gap:28px}
footer a:hover{color:#fff}

/* Contact Page */
.contact-page{background:var(--deep);color:#fff;padding:140px 0 0;min-height:100vh;overflow:hidden}
.contact-page .h1{font-size:72px;line-height:0.95;margin-bottom:32px;font-family:var(--serif);font-weight:300;letter-spacing:-0.03em}

.ct-left{grid-column:1 / 8;display:flex;flex-direction:column}
.ct-quote{grid-column:9 / 13;display:flex;align-items:center;padding:24px 0 24px 40px;border-left:1px solid rgba(255,255,255,0.15)}
.ct-quote blockquote{font-family:var(--serif);font-size:42px;line-height:1.1;font-weight:300;letter-spacing:-0.02em;color:rgba(255,255,255,0.9)}
.ct-quote blockquote span{display:block;font-family:var(--sans);font-size:14px;margin-top:24px;color:rgba(255,255,255,0.6);letter-spacing:0.06em;text-transform:uppercase}

/* Contact Form */
.ct-form{margin-top:64px}
.ct-form form{display:flex;flex-direction:column;gap:24px;width:100%;max-width:500px}
.f-group{display:flex;flex-direction:column;gap:10px}
.f-group label{font-size:13px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;opacity:0.7}
.ct-form input, .ct-form textarea{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.15);border-radius:6px;padding:16px 20px;color:#fff;font-size:16px;font-family:inherit;outline:none;transition:border-color .3s, background .3s}
.ct-form input:focus, .ct-form textarea:focus{border-color:rgba(255,255,255,0.5);background:rgba(255,255,255,0.08)}
.ct-form button{margin-top:8px;align-self:flex-start;border:none;cursor:pointer}

/* ---------- mobile ---------- */
@media (max-width:900px){
  :root{--pad:22px;--gap:16px}
  body{font-size:16px}
  .grid,.hero-copy,.pr-head,.wk-head{grid-template-columns:minmax(0,1fr)}
  .grid > *,.hero-copy > *,.pr-head > *,.wk-head > *{grid-column:1 / -1 !important}
  .h2{font-size:42px}
  .nav .wrap,.nav:not([data-theme=photo]) .wrap{height:64px}
  .nav-links{display:none}
  .menu-btn{display:block}
  .brand{font-size:20px}
  .hero{height:auto;min-height:0;max-height:none}
  .hero > .wrap{min-height:740px;padding-top:64px}
  .hero-media img{object-position:52% 40%}
  .hero .scrim{background:rgba(14,11,8,.44)}
  
  .hero h1{font-size:45px;line-height:1.07}
  .hero-copy{padding-bottom:36px;row-gap:18px}
  .hero .side{padding:0}
  .hero .side p{font-size:16px}
  .hero .side .btn{margin-top:22px}
  
  
  .intro{padding:84px 0 72px}
  
  .statement{font-size:31px;line-height:1.27}
  .about{padding-bottom:90px}
  .about .text{margin-top:40px}
  .about h2{font-size:36px;margin-bottom:20px}
  
  
  .services{padding:84px 0 90px}
  .sv-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:36px}
  .sv-media{display:none}
  .svc-head{grid-template-columns:36px minmax(0,1fr) 22px;padding:22px 0 20px}
  .svc-name{font-size:26px}
  .svc-line{font-size:15px}
  
  .svc.active .svc-name,.svc.active .svc-line{transform:none}
  .svc-body{height:auto;display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s var(--ease)}
  .svc.active .svc-body{height:auto;grid-template-rows:1fr}
  .svc-body > div{overflow:hidden;min-height:0}
  .svc-inner{padding:0 0 24px 0}
  .svc-inner img{display:block;aspect-ratio:3 / 2;height:auto;margin-bottom:18px}
  .svc-points{grid-template-columns:1fr}
  .ai-open{height:auto;min-height:0;max-height:none}
  .ai-open .wrap{min-height:640px;padding-bottom:32px}
  .ai-open .scrim{background:rgba(10,12,11,.52)}
  .ai-open h2{font-size:48px;margin:16px 0 36px}
  
  .ai{padding:84px 0 90px}
  
  .ai-lead{font-size:28px;line-height:1.28}
  .ai-fig{margin-top:64px}
  .ai-side{margin-top:40px}
  .ai-quote{font-size:34px}
  .split-lists{grid-template-columns:1fr;row-gap:56px;margin-top:72px}
  .sl:last-child{padding-left:0}
  .sl h3{font-size:25px;padding-bottom:16px}
  .sl li{font-size:16px;grid-template-columns:40px 1fr;padding:15px 0}
  .week{padding:84px 0 90px}
  .wk-head{margin-bottom:56px}
  
  .wk-head p{font-size:16px;margin-top:20px}
  .wk-sticky{display:none}
  .wk-step{padding-bottom:72px}
  .wk-mday{display:block;font-family:var(--serif);font-weight:300;font-size:54px;line-height:1;letter-spacing:-.035em;color:var(--ink);padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid var(--ink)}
  .wk-step h3{font-size:30px}
  .wk-step p{font-size:16px}
  .wk-end{flex-direction:column;align-items:flex-start;gap:20px;padding-top:40px}
  .wk-end p{font-size:36px}
  .process{padding:90px 0 20px}
  .pr-head{margin-bottom:40px}
  
  .pr-media{display:none}
  .step{min-height:0;padding:28px 0 52px}
  .js .step:not(.on){opacity:1}
  .step .mimg{display:block;aspect-ratio:3 / 2;margin-bottom:24px}
  .step h3{font-size:40px}
  .step p{font-size:16.5px}
  .principles{padding:84px 0 90px}
  
  .pp-row{grid-template-columns:1fr;padding:22px 0 24px;row-gap:8px}
  .pp-row h3{font-size:38px}
  .band{height:560px}
  .band .wrap{padding-bottom:36px}
  .band blockquote{font-size:34px}
  
  .writing{padding:84px 0 90px}
  .wr-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:32px}
  .wr-cards{grid-template-columns:1fr;row-gap:16px}
  .post{min-height:0;padding:26px 24px}
  .post h3{font-size:27px;margin:18px 0 12px}
  .post.photo{min-height:360px}
  .post.photo .in{padding:26px 24px}
  .contact{padding-top:90px}
  .ct-copy h2{font-size:46px}
  .ct-copy p{font-size:17px}
  .ct-actions{flex-direction:column;align-items:flex-start;gap:22px}
  .contact-page{padding:130px 0 90px}
  .contact-page .h1{font-size:46px}
  .ct-form{margin-top:56px}
  .ct-quote{margin-top:72px;padding:0;border:none;border-top:1px solid rgba(255,255,255,0.15);padding-top:40px}
  .ct-quote blockquote{font-size:32px}
  
  .ct-photo{margin-top:48px}
  .ct-photo .frame{aspect-ratio:4 / 3}
  .wordmark{margin-top:72px;font-size:19vw}
  footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;height:auto;padding:24px 0 28px;margin-top:20px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
}

/* =================== v6: work / case studies =================== */
:root{--accent:#B5694A;--c-deep:#13241F;--c-accent:#B5694A;--c-grey:#9C9A92;--c-light:#D3D1C9;--c-ink:#121212}




/* home: selected work */
.work{padding:150px 0 150px;border-top:1px solid var(--rule)}
.work-head{grid-column:1 / 13;display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:28px}

.work-head .ulink{font-size:17px;color:var(--ink);white-space:nowrap;margin-bottom:12px}

.work-list{grid-column:1 / 13;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--gap)}
.work-list .cs-item:nth-child(2){margin-top:110px}

/* shared case item (home + index) */
.cs-item{display:block;color:var(--ink)}
.cs-item .frame{aspect-ratio:4 / 5}
.cs-item .frame img{transition:transform 1.2s var(--ease)}
.cs-item .veil{position:absolute;inset:0;background:rgba(10,12,11,.38);opacity:0;transition:opacity .6s var(--ease);z-index:1}


.cs-item:hover .frame img{transform:scale(1.045)}
.cs-item:hover .veil{opacity:1}

.cs-meta{display:grid;grid-template-columns:1fr auto;column-gap:20px;align-items:baseline;padding-top:20px}
.cs-meta h3{font-family:var(--serif);font-weight:300;font-size:30px;line-height:1.1;letter-spacing:-.025em}



/* index page */
.page-head{padding:210px 0 90px}

.page-head h1{grid-column:1 / 8;font-family:var(--serif);font-weight:300;font-size:132px;line-height:.95;letter-spacing:-.045em;color:var(--ink)}
.page-head .ph-side{grid-column:8 / 13;align-self:end;padding-bottom:12px}
.page-head .ph-side p{font-size:19px;line-height:1.55;color:var(--body);margin-bottom:26px}
.cs-filter{grid-column:1 / 13;display:flex;gap:36px;margin-top:96px;border-bottom:1px solid var(--rule)}
.cs-filter button{position:relative;padding:0 0 16px;font-size:16px;color:var(--mute);transition:color .3s}

.cs-filter button::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.cs-filter button:hover{color:var(--ink)}
.cs-filter button.on{color:var(--ink)}
.cs-filter button.on::after{transform:scaleX(1)}
.cs-index{padding:0 0 160px}
.cs-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:120px;padding-top:80px}
.cs-grid .cs-item{grid-column:1 / 7}
.cs-grid .cs-item.alt{grid-column:8 / 13;margin-top:180px}
.cs-grid .cs-item .frame{aspect-ratio:5 / 4}
.cs-grid .cs-item.alt .frame{aspect-ratio:4 / 5}
.cs-grid .cs-meta h3{font-size:36px}

.cs-grid .cs-item[hidden]{display:none}

/* case page hero */
.case-hero h1{grid-column:1 / 11;font-size:76px;line-height:1.03}
.case-hero .hero-copy{padding-bottom:60px}
.case-hero .scrim{background:rgba(12,12,10,.5)}
.nav-links a[aria-current]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}

/* snapshot */






/* results */
.cs-results{padding:130px 0 120px}

.cs-results h2{grid-column:3 / 12;font-family:var(--serif);font-weight:300;font-size:50px;line-height:1.14;letter-spacing:-.026em;color:var(--ink)}
.metrics{grid-column:1 / 13;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--gap);margin-top:96px}
.metric{border-top:1px solid var(--ink);padding-top:22px}
.metric b{display:block;font-family:var(--serif);font-weight:300;font-size:80px;line-height:1;letter-spacing:-.04em;color:var(--ink);white-space:nowrap}



/* problem */
.cs-problem{padding:30px 0 130px}

.cs-problem .h2{grid-column:3 / 12;margin-bottom:40px}
.cs-problem .lead{grid-column:3 / 12;font-family:var(--serif);font-weight:300;font-size:38px;line-height:1.28;letter-spacing:-.022em;color:var(--ink)}
.cs-problem ul{grid-column:3 / 13;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--gap);margin-top:70px}
.cs-problem li{border-top:1px solid var(--rule);padding-top:18px;font-size:16.5px;line-height:1.55}
.cs-problem li b{font-weight:500;color:var(--ink)}

/* wide photo */
.cs-wide{padding:0 0 10px}
.cs-wide .frame{aspect-ratio:21 / 9}

/* what I did */
.cs-did{padding:140px 0 120px}

.cs-did h2{grid-column:3 / 12;margin-bottom:70px}
.did-list{grid-column:3 / 13}
.did{display:grid;grid-template-columns:56px minmax(0,4fr) minmax(0,5fr);column-gap:var(--gap);padding:30px 0 32px;border-top:1px solid var(--rule)}
.did:last-child{border-bottom:1px solid var(--rule)}

.did h3{font-family:var(--serif);font-weight:300;font-size:30px;line-height:1.15;letter-spacing:-.024em;color:var(--ink)}
.did p{font-size:16.5px}



/* charts */
.cs-charts{background:var(--stone);padding:140px 0 120px}
.cs-charts .ch-head{grid-column:1 / 13;display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}


.fig{grid-column:1 / 13;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);padding:56px 0 64px;border-top:1px solid #D2D0C8}
.fig-copy{grid-column:1 / 5;padding-right:20px}

.fig-copy h3{font-family:var(--serif);font-weight:300;font-size:32px;line-height:1.12;letter-spacing:-.024em;color:var(--ink);margin:0 0 16px}
.fig-copy p{font-size:16px}
.legend{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;font-size:14px;color:var(--ink)}
.legend span{display:inline-flex;align-items:center;gap:8px}
.legend i{display:inline-block;width:12px;height:12px}
.legend i.ln{height:2px;width:18px}
.fig .chart{grid-column:6 / 13;min-width:0}
.fig .chart svg{display:block;overflow:visible;font-family:var(--text);font-variant-numeric:lining-nums tabular-nums}


/* quote */
.cs-quote{padding:150px 0 150px}


.running{grid-column:2 / 12;margin-top:110px;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr);column-gap:var(--gap);border-top:1px solid var(--ink);padding-top:24px}
.running h3{font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.02em;color:var(--ink)}
.running ul li{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--rule);font-size:16.5px;color:var(--ink)}
.running ul li span{color:var(--mute);font-size:14.5px;white-space:nowrap}

/* next case */
.cs-next{border-top:1px solid var(--rule)}
.cs-next a.nx{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:center;padding:100px 0 100px;color:var(--ink)}


.nx h2{grid-column:1 / 9;font-family:var(--serif);font-weight:300;font-size:104px;line-height:.98;letter-spacing:-.045em;transition:transform .7s var(--ease)}
.nx h2 svg{width:.42em;height:.42em;margin-left:.2em;vertical-align:.08em;transition:transform .6s var(--ease)}
.nx .nx-ind{display:block;margin-top:22px;font-family:var(--text);font-size:16px;letter-spacing:0;color:var(--mute)}
.nx .frame{grid-column:9 / 13;aspect-ratio:4 / 3;clip-path:inset(0 0 0 100%);transition:clip-path 1s var(--ease)}
.nx:hover .frame{clip-path:inset(0 0 0 0)}
.nx:hover h2 svg{transform:translateX(12px)}
.nx-all{display:flex;justify-content:space-between;align-items:center;padding:26px 0;border-top:1px solid var(--rule);font-size:15px;color:var(--mute)}
.nx-all a{color:var(--ink)}

@media (hover:none){.nx .frame{clip-path:none}}
@media (max-width:900px){
  .work{padding:84px 0 90px}
  .work-head{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:22px}
  
  
  .work-list{grid-template-columns:1fr;row-gap:56px}
  .work-list .cs-item:nth-child(2){margin-top:0}
  .cs-meta h3,.cs-grid .cs-meta h3{font-size:26px}
  .cs-item .veil{display:none}
  .page-head{padding:130px 0 40px}
  .page-head h1{font-size:72px}
  .page-head .ph-side{margin-top:28px}
  .page-head .ph-side p{font-size:17px}
  .cs-filter{gap:22px;margin-top:52px;overflow-x:auto}
  .cs-filter button{font-size:15px;white-space:nowrap}
  .cs-grid{grid-template-columns:1fr;row-gap:64px;padding-top:44px}
  .cs-grid .cs-item,.cs-grid .cs-item.alt{grid-column:1 / -1;margin-top:0}
  .cs-grid .cs-item .frame,.cs-grid .cs-item.alt .frame{aspect-ratio:4 / 3}
  .cs-index{padding-bottom:90px}
  .case-hero{min-height:640px}
  .case-hero h1{font-size:42px;line-height:1.06}
  .case-hero .hero-copy{padding-bottom:36px}
  
  
  .cs-results{padding:80px 0 72px}
  .cs-results h2{font-size:30px;margin-top:14px}
  .metrics{grid-template-columns:1fr 1fr;row-gap:40px;margin-top:52px}
  .metric b{font-size:50px}
  
  
  .cs-problem{padding:0 0 80px}
  .cs-problem .lead{font-size:26px;margin-top:14px}
  .cs-problem ul{grid-template-columns:1fr;row-gap:22px;margin-top:40px}
  .cs-wide .frame{aspect-ratio:4 / 3}
  .cs-did{padding:84px 0 72px}
  .cs-did h2{margin:14px 0 40px}
  .did{grid-template-columns:36px 1fr;row-gap:10px;padding:24px 0}
  .did p{grid-column:2}
  .did h3{font-size:24px}
  .cs-charts{padding:84px 0 60px}
  .cs-charts .ch-head{flex-direction:column;align-items:flex-start;gap:16px}
  .fig{padding:36px 0 44px}
  .fig-copy{padding-right:0;margin-bottom:26px}
  .fig-copy h3{font-size:26px}
  .cs-quote{padding:90px 0}
  
  .running{grid-template-columns:1fr;row-gap:16px;margin-top:64px}
  .cs-next a.nx{padding:60px 0 64px}
  .nx h2{font-size:50px}
  .nx .frame{margin-top:30px;clip-path:none}
  
  
  
  .cs-next a.nx{grid-template-columns:minmax(0,1fr)}
  .cs-next a.nx > *{grid-column:1 / -1 !important}
  .nx-all{flex-direction:column;align-items:flex-start;gap:10px}
  .fig,.cs-results .grid{grid-template-columns:minmax(0,1fr)}
  .fig > *{grid-column:1 / -1 !important}
}

@media (max-width:900px){
  .cs-problem .h2{margin:0 0 24px}
  .cs-results h2,.cs-did h2{margin-top:0}
  .wk-step h3{margin-top:22px}
  .page-head{padding:132px 0 40px}
}

/* tools (v6.1) */
.tools{padding:40px 0 150px}
.tools .h2{grid-column:3 / 13;margin-bottom:72px}
.tools-grid{grid-column:3 / 13;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:calc(var(--gap) * 2);row-gap:64px}
.tool-block h3{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.2;letter-spacing:-.02em;color:var(--ink);padding-bottom:16px;border-bottom:1px solid var(--ink);margin-bottom:8px}
.tool-block li{font-size:16.5px;line-height:1.4;color:var(--body);padding:10px 0;border-bottom:1px solid var(--rule);transition:color .3s,transform .45s var(--ease)}
.tool-block li:hover{color:var(--ink);transform:translateX(6px)}
@media (max-width:900px){
  .tools{padding:20px 0 90px}
  .tools .h2{margin-bottom:40px}
  .tools-grid{grid-template-columns:1fr;row-gap:44px}
  .tool-block h3{font-size:22px;padding-bottom:12px}
  .tool-block li{font-size:16px;padding:8px 0}
}

/* industries (v6.2) */
.industries{padding:150px 0 150px}
.ind-head{grid-column:1 / 13;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:end;margin-bottom:70px}
.ind-head h2{grid-column:1 / 7}
.ind-head p{grid-column:8 / 13;font-size:18px;padding-bottom:8px}
.ind-list{grid-column:1 / 13;border-bottom:1px solid var(--rule)}
.ind{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:center;padding:40px 0;border-top:1px solid var(--rule);position:relative;color:var(--ink)}
.ind::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ease)}
.ind.on::before{transform:scaleX(1)}
.ind h3{grid-column:1 / 6;font-family:var(--serif);font-weight:300;font-size:64px;line-height:1;letter-spacing:-.035em;transition:color .5s,transform .7s var(--ease)}
.ind-txt{grid-column:6 / 10;padding-right:12px}


.ind-go{display:inline-flex;align-items:center;gap:10px;margin-top:18px;font-size:15.5px;color:var(--ink);padding-bottom:3px;border-bottom:1px solid currentColor}
.ind-go svg{width:14px;height:14px;transition:transform .45s var(--ease)}
.ind:hover .ind-go svg{transform:translateX(5px)}
.ind-ph{grid-column:10 / 13;aspect-ratio:4 / 3;clip-path:inset(0 0 0 100%);transition:clip-path 1s var(--ease)}
.ind-ph img{transform:scale(1.15);transition:transform 1.4s var(--ease)}
.ind.on .ind-ph{clip-path:inset(0 0 0 0)}
.ind.on .ind-ph img{transform:scale(1)}
.ind.on h3{transform:translateX(10px)}
.ind-list.hovering .ind:not(.on) h3{color:#A9A79F}
.ind-list.hovering .ind:not(.on) .ind-txt p{color:#A9A79F}
@media (max-width:900px){
  .industries{padding:84px 0 90px}
  .ind-head{grid-template-columns:minmax(0,1fr);margin-bottom:40px}
  .ind-head > *{grid-column:1 / -1 !important}
  .ind-head p{font-size:16px;margin-top:18px}
  .ind{grid-template-columns:minmax(0,1fr);padding:28px 0 34px}
  .ind > *{grid-column:1 / -1 !important}
  .ind::before{display:none}
  .ind-ph{order:-1;clip-path:none;margin-bottom:22px}
  .ind-ph img{transform:none}
  .ind h3{font-size:40px;margin-bottom:16px}
  .ind.on h3{transform:none}
}

/* about page (v6.3) */
a.frame{display:block}
.ab-more{margin-top:26px;font-size:16px;color:var(--ink)}
.ab-hero{padding:150px 0 130px}
.ab-portrait{grid-column:1 / 6}
.ab-portrait .frame{aspect-ratio:4 / 5}
.ab-intro{grid-column:7 / 13;align-self:end;padding-bottom:36px}
.ab-intro h1{font-family:var(--serif);font-weight:300;font-size:70px;line-height:1.04;letter-spacing:-.036em;color:var(--ink)}
.ab-intro > p{margin-top:34px;font-size:19px;line-height:1.55;max-width:30em}




.ab-story{padding:40px 0 140px}
.ab-story .h2{grid-column:1 / 5}
.ab-story-text{grid-column:6 / 13}
.ab-lead{font-family:var(--serif);font-weight:300;font-size:40px;line-height:1.24;letter-spacing:-.024em;color:var(--ink);margin-bottom:40px}
.ab-story-text p:not(.ab-lead){font-size:17.5px;max-width:34em}
.ab-story-text p + p{margin-top:20px}
.ab-band{position:relative;height:86vh;min-height:600px;max-height:860px;overflow:hidden;color:#fff;background:#3a3a36}
.ab-band .px{position:absolute;left:0;right:0;top:-8%;bottom:-8%}
.ab-band .px img{object-position:50% 60%}
.ab-band .wrap{position:relative;height:100%;display:flex;align-items:flex-end;padding-bottom:28px}


.ab-band .wrap{z-index:2}
.ab-beliefs{background:var(--deep);color:#fff;padding:140px 0 130px}
.ab-beliefs .h2{grid-column:1 / 13;color:#fff;margin-bottom:64px}
.bl{grid-column:1 / 13}
.bl-row{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);column-gap:var(--gap);align-items:baseline;padding:34px 0 36px;border-top:1px solid rgba(255,255,255,.18)}
.bl-row:last-child{border-bottom:1px solid rgba(255,255,255,.18)}
.bl-row h3{font-family:var(--serif);font-weight:300;font-size:62px;line-height:1.04;letter-spacing:-.034em;color:#fff}
.bl-row h3 span{color:rgba(255,255,255,.45)}
.bl-row p{font-size:16.5px;color:rgba(255,255,255,.78);max-width:26em}
.ab-skills{padding:150px 0 130px}
.sk-head{grid-column:1 / 13;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:end;margin-bottom:64px}
.sk-head .h2{grid-column:1 / 7}
.sk-head p{grid-column:8 / 13;font-size:18px;padding-bottom:8px}
.sk{grid-column:1 / 13;border-bottom:1px solid var(--rule)}
.sk-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);padding:34px 0 36px;border-top:1px solid var(--rule)}
.sk-row h3{grid-column:1 / 5;font-family:var(--serif);font-weight:300;font-size:36px;line-height:1.1;letter-spacing:-.026em;color:var(--ink)}
.sk-row p{grid-column:5 / 9;font-size:16.5px;padding-right:12px}
.sk-row ul{grid-column:9 / 13}
.sk-row li{font-size:16px;color:var(--ink);padding:8px 0;border-bottom:1px solid var(--rule)}
.sk-row li:first-child{padding-top:0}
.sk-row li:last-child{border-bottom:0}
.ab-work{background:var(--stone);padding:140px 0 140px}
.ab-work .h2{grid-column:1 / 13;margin-bottom:64px}
.ab-work-ph{grid-column:1 / 6;align-self:start;position:sticky;top:110px}
.ab-work-ph .frame{aspect-ratio:4 / 5}
.ab-work-list{grid-column:7 / 13}
.ab-work-list > div{padding:28px 0 32px;border-top:1px solid #D2D0C8}
.ab-work-list > div:first-child{border-top:1px solid var(--ink);padding-top:24px}
.ab-work-list h3{font-family:var(--serif);font-weight:300;font-size:34px;line-height:1.1;letter-spacing:-.025em;color:var(--ink);margin-bottom:12px}
.ab-work-list p{font-size:16.5px;max-width:30em}
.ab-personal p{color:var(--accent);font-style:italic}
@media (max-width:900px){
  .ab-hero{padding:100px 0 70px}
  .ab-intro{padding-bottom:0;margin-top:36px}
  .ab-intro h1{font-size:40px}
  .ab-intro > p{font-size:17px;margin-top:22px}
  
  
  .ab-story{padding:20px 0 80px}
  .ab-story .h2{margin-bottom:24px}
  .ab-lead{font-size:27px;margin-bottom:26px}
  .ab-story-text p:not(.ab-lead){font-size:16px}
  .ab-band{height:60vh;min-height:420px}
  
  .ab-beliefs{padding:84px 0 80px}
  .ab-beliefs .h2{margin-bottom:36px}
  .bl-row{grid-template-columns:1fr;row-gap:12px;padding:24px 0 26px}
  .bl-row h3{font-size:36px}
  .ab-skills{padding:84px 0 80px}
  .sk-head{grid-template-columns:minmax(0,1fr);margin-bottom:36px}
  .sk-head > *{grid-column:1 / -1 !important}
  .sk-head p{font-size:16px;margin-top:16px}
  .sk-row{grid-template-columns:minmax(0,1fr);row-gap:12px;padding:26px 0 28px}
  .sk-row > *{grid-column:1 / -1 !important}
  .sk-row h3{font-size:28px}
  .sk-row ul{margin-top:6px}
  .ab-work{padding:84px 0 80px}
  .ab-work .h2{margin-bottom:32px}
  .ab-work-ph{position:static;margin-bottom:28px}
  .ab-work-ph .frame{aspect-ratio:4 / 3}
  .ab-work-list h3{font-size:27px}
}

/* =================== Literata pass =================== */


/* figures: lining, tabular where columns of numbers line up */
.metric b{font-variant-numeric:lining-nums tabular-nums}
@media (min-width:901px){.sk-row li{font-size:15.5px}}

/* =================== plain-text pass: no labels, numbers or meta lines =================== */
.svc-points li{padding-left:0}
.sl li{grid-template-columns:minmax(0,1fr)}
.svc-head{grid-template-columns:minmax(0,1fr) 28px;column-gap:20px}
.svc-inner{padding-left:0}
.step li{display:block}
.cs-meta{display:block}
.cs-meta p{margin-top:10px;font-size:17.5px;line-height:1.55;color:var(--body);max-width:34em}
.cs-results .cs-intro{grid-column:3 / 10;font-size:19px;line-height:1.6;color:var(--body);margin-top:36px}
.metric p{margin-top:16px;font-size:17px;line-height:1.5;color:var(--body);max-width:17em}
.did{grid-template-columns:minmax(0,4fr) minmax(0,5fr)}
.legend{font-size:16px;gap:10px 26px}
.cs-run{padding:20px 0 130px}
.cs-run .running{margin-top:0}
.running ul li{display:block}
.nx .nx-ind{font-size:17.5px;font-weight:400;line-height:1.5;color:var(--body);max-width:32em;margin-top:26px}
@media (max-width:900px){
  .did{grid-template-columns:minmax(0,1fr)}
  .did p{grid-column:1}
  .sl li{grid-template-columns:minmax(0,1fr)}
  .svc-head{grid-template-columns:minmax(0,1fr) 22px}
  .cs-results .cs-intro{font-size:17px;margin-top:22px}
  .metric p{font-size:15.5px;margin-top:12px}
  .cs-run{padding:10px 0 80px}
  .nx .nx-ind{font-size:16px;margin-top:18px}
  .legend{font-size:15px}
}
