/* Salemworx Studio | studio.css
   1 Tokens  2 Base  3 Layout  4 Components  5 Sections  6 Compositions  7 Motion  8 Responsive */

@font-face{font-family:"Geist";src:url("../fonts/geist-latin-wght-normal.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;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:"Geist";src:url("../fonts/geist-latin-ext-wght-normal.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:"Newsreader";src:url("../fonts/newsreader-latin-400-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Newsreader";src:url("../fonts/newsreader-latin-300-italic.woff2") format("woff2");font-weight:300;font-style:italic;font-display:swap}

/* 1 Tokens */
:root{
  --paper:#F3F0E9;--surface:#E9E5DB;--ink:#151515;--muted:#5C5952;--line:#D6D1C5;
  --night:#111214;--night2:#1B1C1F;--night-ink:#EDEAE3;--night-muted:#A3A09A;--night-line:#2D2E32;
  --accent:#1C2E52;--accent-soft:#AFC0E4;--error:#A3261B;
  --f-sans:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;
  --f-serif:"Newsreader",Georgia,"Times New Roman",serif;
  --wrap:1440px;--gut:clamp(20px,4vw,56px);--gap:clamp(16px,2vw,28px);
  --sec:clamp(96px,12vw,176px);
  --fs-display:clamp(3rem,9.4vw,9.75rem);
  --fs-h1:clamp(2.6rem,6.6vw,6.5rem);
  --fs-h2:clamp(2.25rem,5vw,4.75rem);
  --fs-h3:clamp(1.35rem,2.2vw,2.05rem);
  --fs-lede:clamp(1.15rem,1.45vw,1.4rem);
  --fs-body:1.0625rem;--fs-small:.9rem;--fs-micro:.78rem;
  --ease:cubic-bezier(.2,.7,.1,1);--ease-io:cubic-bezier(.65,0,.35,1);
  --t1:240ms;--t2:760ms;--t3:1100ms;
  --head-h:76px;
  --col:calc((min(100vw, var(--wrap)) - 2 * var(--gut) - 11 * var(--gap)) / 12);
  --fg:var(--ink);--fg2:var(--muted);--rule:var(--line);--bg:var(--paper);
}

/* 2 Base */
*,*::before,*::after{box-sizing:border-box}
:where(html){-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--head-h) + 16px)}
:where(body){margin:0;background:var(--paper);color:var(--ink);font:400 var(--fs-body)/1.6 var(--f-sans);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
:where(h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote,fieldset){margin:0;padding:0;border:0}
:where(ul,ol){list-style:none}
:where(a){color:inherit;text-decoration:none}
:where(img,svg){display:block;max-width:100%;height:auto}
:where(button,input,select,textarea){font:inherit;color:inherit}
:where(button){background:none;border:0;padding:0;cursor:pointer}
::selection{background:var(--accent);color:var(--paper)}
em{font-family:var(--f-serif);font-style:italic;font-weight:400;letter-spacing:-.015em}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}
.night :focus-visible,.navy :focus-visible{outline-color:var(--accent-soft)}
#main:focus{outline:none}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.skip{position:fixed;left:16px;top:12px;z-index:200;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:999px;transform:translateY(-160%);transition:transform var(--t1) var(--ease)}
.skip:focus{transform:none}

/* 3 Layout */
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
section{position:relative}
.night{--fg:var(--night-ink);--fg2:var(--night-muted);--rule:var(--night-line);--bg:var(--night);background:var(--night);color:var(--night-ink)}
.navy{--fg:#EEF1F7;--fg2:#B7C2D9;--rule:rgba(238,241,247,.16);--bg:var(--accent);background:var(--accent);color:#EEF1F7}
.surface{--bg:var(--surface);background:var(--surface)}
.night em,.navy em{color:inherit}

/* 4 Components */
.micro{font-size:var(--fs-micro);letter-spacing:.06em;text-transform:uppercase;color:var(--fg2);font-weight:500;margin-bottom:14px}
.eyebrow,.sec-head__label{font-size:var(--fs-small);color:var(--fg2);font-weight:450;display:flex;gap:.6em;align-items:baseline}
.sec-head__num{font-variant-numeric:tabular-nums;color:var(--fg)}
.sep{color:var(--fg2);margin-inline:.35em}
.lede{font-size:var(--fs-lede);line-height:1.45;max-width:36ch;color:var(--fg);letter-spacing:-.01em}

.btn{--b-bg:var(--ink);--b-fg:var(--paper);display:inline-flex;align-items:center;gap:.7em;padding:.95em 1.35em .95em 1.5em;border-radius:999px;background:var(--b-bg);color:var(--b-fg);font-weight:500;font-size:.98rem;line-height:1;letter-spacing:-.01em;white-space:nowrap;transition:background-color var(--t1) var(--ease),color var(--t1) var(--ease),transform 420ms var(--ease);will-change:transform}
.btn--paper{--b-bg:var(--night-ink);--b-fg:var(--night)}
.btn:hover{--b-bg:var(--accent);--b-fg:#fff}
.btn--paper:hover{--b-bg:#fff;--b-fg:var(--accent)}
.btn:active{transform:scale(.97)}
.btn[disabled],.btn.is-busy{opacity:.55;pointer-events:none}
.btn__arrow{display:inline-block;width:1em;height:1em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8h9.2M8.6 3.8 12.8 8l-4.2 4.2' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8h9.2M8.6 3.8 12.8 8l-4.2 4.2' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform var(--t1) var(--ease)}
.btn:hover .btn__arrow{transform:translateX(3px)}

.link{position:relative;display:inline-flex;align-items:center;gap:.4em;font-weight:500;color:var(--fg);padding-block:.25em;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;transition:background-size var(--t2) var(--ease),color var(--t1)}
.link::after{content:"";width:.85em;height:.85em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 11.5l7-7M5.5 4.5h6v6' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 11.5l7-7M5.5 4.5h6v6' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform var(--t1) var(--ease)}
.link:hover{background-size:0 1px;background-position:100% 100%}
.link:hover::after{transform:translate(2px,-2px)}
.link--plain{background:none;padding:0}.link--plain::after{display:none}
.link--plain:hover{color:var(--fg)}

.badge{display:inline-flex;align-items:center;gap:.45em;font-size:var(--fs-micro);font-weight:500;letter-spacing:.02em;padding:.35em .75em;border:1px solid var(--rule);border-radius:999px;color:var(--fg);margin-right:.7em}
.badge::before{content:"";width:.45em;height:.45em;border-radius:50%;border:1px solid currentColor}

/* Header */
.site-head{position:fixed;inset:0 0 auto;z-index:50;height:var(--head-h);display:flex;align-items:center;transition:transform 520ms var(--ease),background-color var(--t1),border-color var(--t1);border-bottom:1px solid transparent}
.site-head.is-scrolled{background:color-mix(in srgb,var(--paper) 86%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom-color:var(--line)}
.site-head.is-hidden{transform:translateY(-101%)}
.admin-bar .site-head{top:32px}
.site-head__in{display:flex;align-items:center;gap:clamp(16px,3vw,40px)}
.wordmark{display:inline-flex;align-items:flex-end;gap:2px;font-weight:600;font-size:1.28rem;letter-spacing:-.045em;line-height:1;margin-right:auto}
.wordmark__dot{width:.32em;height:.32em;background:var(--accent);border-radius:1px;margin-bottom:.08em;transition:transform 500ms var(--ease)}
.wordmark:hover .wordmark__dot{transform:translateY(-.5em) rotate(90deg)}
.nav ul{display:flex;gap:clamp(18px,2.4vw,36px)}
.nav a{display:inline-block;position:relative;font-size:.95rem;font-weight:450;padding-block:6px}
.nav a span{display:inline-block;position:relative;overflow:hidden;vertical-align:top;line-height:1.3}
.nav a span::after{content:attr(data-hover);position:absolute;left:0;top:100%;color:var(--accent)}
.nav a span,.nav a span::after{transition:transform 460ms var(--ease)}
.nav a:hover span{transform:translateY(-100%)}
.nav a[aria-current="page"]::before{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:currentColor}
.site-head .btn{padding:.8em 1.1em .8em 1.3em;font-size:.9rem}
.menu-toggle{display:none;align-items:center;gap:10px;height:44px;padding:0 4px;font-weight:500}
.menu-toggle__i{display:grid;gap:5px;width:22px}
.menu-toggle__i i{display:block;height:1.5px;background:currentColor;transition:transform 420ms var(--ease)}
.menu-toggle[aria-expanded="true"] .menu-toggle__i i:first-child{transform:translateY(3.25px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-toggle__i i:last-child{transform:translateY(-3.25px) rotate(-45deg)}
.menu{position:fixed;inset:0;z-index:45;background:var(--night);color:var(--night-ink);padding-top:calc(var(--head-h) + 24px);display:flex;opacity:0;transition:opacity 380ms var(--ease)}
.menu.is-open{opacity:1}
.menu__in{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:32px;overflow:auto}
.menu__list a{display:flex;align-items:baseline;gap:14px;font-size:clamp(2.4rem,11vw,4rem);font-weight:500;letter-spacing:-.045em;line-height:1.08;padding-block:4px}
.menu__list small{font-size:.8rem;letter-spacing:0;color:var(--night-muted);font-variant-numeric:tabular-nums}
.menu__list li{opacity:0;transform:translateY(18px);transition:opacity 500ms var(--ease) calc(var(--i)*50ms + 80ms),transform 700ms var(--ease) calc(var(--i)*50ms + 80ms)}
.menu.is-open .menu__list li{opacity:1;transform:none}
.menu__foot{color:var(--night-muted);display:grid;gap:8px;margin-top:40px;--fg:var(--night-ink)}
body.menu-open .site-head{background:var(--night);color:var(--night-ink);border-color:var(--night-line)}
body.menu-open .site-head .wordmark__dot{background:var(--accent-soft)}
body.menu-open{overflow:hidden}

/* Section heads */
.sec-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:22px;margin-bottom:clamp(48px,7vw,104px)}
.sec-head__label{grid-column:1/-1}
.sec-head__title{grid-column:1/span 8;font-size:var(--fs-h2);font-weight:500;letter-spacing:-.045em;line-height:.96;color:var(--fg)}
.sec-head__side{grid-column:9/-1;align-self:end;display:grid;gap:18px;justify-items:start;color:var(--fg2);max-width:38ch}

/* 5 Sections */
/* Hero */
.hero{min-height:100svh;padding-top:calc(var(--head-h) + clamp(20px,4vh,48px));padding-bottom:clamp(28px,4vh,48px);display:flex}
.hero>.wrap{display:flex;flex-direction:column;flex:1}
.hero__meta{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--gap);font-size:var(--fs-small);color:var(--muted);padding-bottom:16px;border-bottom:1px solid var(--line)}
.hero__meta p:last-child{text-align:right}
.lens-area{position:relative;margin-block:auto;padding-block:clamp(36px,7vh,88px)}
.hero__title{font-size:var(--fs-display);font-weight:500;letter-spacing:-.052em;line-height:.9;color:var(--ink);margin-left:-.05em}
.hero__title em{font-weight:300;letter-spacing:-.03em;color:var(--accent);padding-right:.04em}
.hl{display:block;position:relative;overflow:hidden;padding-bottom:.18em;margin-bottom:-.18em}
.hl__in{display:inline-block}
.hl:nth-child(2){padding-left:calc(var(--col) + var(--gap))}
.hero__build{position:absolute;left:0;right:0;top:clamp(36px,7vh,88px);pointer-events:none;color:transparent;-webkit-text-stroke:1px var(--accent);background-color:var(--paper);background-image:linear-gradient(rgba(28,46,82,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(28,46,82,.10) 1px,transparent 1px);background-size:calc(var(--fs-display)/4) calc(var(--fs-display)/4);clip-path:circle(var(--r,0px) at var(--x,50%) var(--y,50%));margin-left:-.05em}
.hero__build em{color:transparent;-webkit-text-stroke:1px var(--accent)}
.hero__build .hl{overflow:visible;box-shadow:inset 0 -1px 0 rgba(28,46,82,.35)}
.hero__build .hl__in{box-shadow:inset 1px 0 0 rgba(28,46,82,.5),inset -1px 0 0 rgba(28,46,82,.5)}
.anno{position:absolute;font:500 .72rem/1 var(--f-sans);letter-spacing:.02em;-webkit-text-stroke:0;color:var(--accent);background:var(--paper);padding:4px 7px;border:1px solid rgba(28,46,82,.35);border-radius:4px;white-space:nowrap}
.anno--a{left:2%;top:-8px}.anno--b{right:4%;bottom:12%}.anno--c{left:38%;top:34%}
.lens-ring{position:absolute;left:0;top:clamp(36px,7vh,88px);width:calc(var(--r,0px)*2);height:calc(var(--r,0px)*2);border-radius:50%;border:1px solid var(--accent);transform:translate(calc(var(--x,50%) - var(--r,0px)),calc(var(--y,50%) - var(--r,0px)));pointer-events:none;opacity:0;transition:opacity 300ms var(--ease)}
.lens-ring i{position:absolute;left:50%;top:calc(100% + 10px);transform:translateX(-50%);font:italic 400 .95rem/1 var(--f-serif);color:var(--accent);white-space:nowrap}
.lens-area.is-lens .lens-ring{opacity:1}
.hero__foot{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:end;padding-top:24px;border-top:1px solid var(--line)}
.hero__intro{grid-column:1/span 6;display:grid;gap:26px}
.hero__actions{display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center}
.hero__latest{grid-column:8/span 4;display:flex;align-items:center;gap:16px;padding:10px;border:1px solid var(--line);border-radius:14px;transition:border-color var(--t1),background-color var(--t1)}
.hero__latest:hover{border-color:var(--ink);background:var(--surface)}
.hero__thumb{position:relative;flex:0 0 132px;border-radius:8px;overflow:hidden}
.hero__thumb .frame{border-radius:6px}
.hero__latest-t{display:grid;gap:3px;font-weight:500;letter-spacing:-.02em;font-size:1.05rem}
.hero__latest-t small{font-weight:400;color:var(--muted);font-size:var(--fs-micro);letter-spacing:.02em}
.hero__scroll{grid-column:12;justify-self:end;display:grid;justify-items:center;gap:10px;font-size:var(--fs-micro);color:var(--muted)}
.hero__scroll i{width:1px;height:44px;background:var(--line);position:relative;overflow:hidden}
.hero__scroll i::after{content:"";position:absolute;inset:0;background:var(--ink);transform:translateY(-100%);animation:scrollcue 2.2s var(--ease-io) infinite}
@keyframes scrollcue{0%{transform:translateY(-100%)}55%{transform:translateY(0)}100%{transform:translateY(100%)}}

/* Approach */
.approach{padding-block:var(--sec)}
.approach__in{display:grid;gap:clamp(32px,5vw,64px)}
.statement{font-size:clamp(1.85rem,3.9vw,3.85rem);line-height:1.1;letter-spacing:-.038em;font-weight:450;max-width:24ch;text-indent:clamp(0px,16vw,260px)}
.statement em{color:var(--accent)}
.approach__foot{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:end;row-gap:32px}
.approach__trio{grid-column:1/span 9;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.approach__trio li{border-top:1px solid var(--ink);padding-top:16px;color:var(--muted);font-size:var(--fs-small);max-width:30ch}
.approach__trio span{display:block;color:var(--ink);font-weight:500;font-size:1.05rem;margin-bottom:6px}
.approach__foot .link{grid-column:11/-1;justify-self:end}

/* Work */
.work{padding-block:var(--sec)}
.work__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:clamp(64px,8vw,128px)}
.work-card__link{display:grid;gap:22px;color:var(--fg)}
.work-card__media{border-radius:12px;overflow:hidden;background:var(--night2);transform:translateZ(0)}
.work-card__media .pfig{transition:transform 1100ms var(--ease)}
.work-card__link:hover .pfig{transform:scale(1.025)}
.work-card__meta{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:8px;align-items:baseline}
.work-card__title{grid-column:1/span 5;font-size:var(--fs-h3);font-weight:500;letter-spacing:-.035em;line-height:1.05;display:flex;align-items:center;gap:.4em}
.work-card__go{width:.7em;height:.7em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 11.5l7-7M5.5 4.5h6v6' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 11.5l7-7M5.5 4.5h6v6' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat;opacity:0;transform:translate(-6px,6px);transition:opacity var(--t1),transform 500ms var(--ease)}
.work-card__link:hover .work-card__go,.work-card__link:focus-visible .work-card__go{opacity:1;transform:none}
.work-card__sum{grid-column:6/span 4;color:var(--fg2);font-size:var(--fs-small);line-height:1.5}
.work-card__tags{grid-column:10/-1;justify-self:end;color:var(--fg2);font-size:var(--fs-micro);display:flex;align-items:center;flex-wrap:wrap;text-align:right}
.wc-1{grid-column:1/-1}
.wc-2{grid-column:1/span 7}
.wc-3{grid-column:9/-1;margin-top:clamp(0px,14vw,240px)}
.wc-4{grid-column:3/-1}
.wc-2 .work-card__title,.wc-3 .work-card__title{grid-column:1/-1}
.wc-2 .work-card__sum,.wc-3 .work-card__sum{grid-column:1/span 8}
.wc-2 .work-card__tags,.wc-3 .work-card__tags{grid-column:1/-1;justify-self:start;text-align:left}
.wc-3 .work-card__sum{grid-column:1/-1}
.work--index{padding-top:clamp(40px,5vw,72px)}

/* Why */
.why{padding-block:var(--sec)}
.why__in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.why__aside{grid-column:1/span 5;align-self:start;position:sticky;top:calc(var(--head-h) + 32px)}
.why__aside .sec-head{margin-bottom:28px}
.why__aside .sec-head__title{grid-column:1/-1}
.why__intro{color:var(--muted);max-width:40ch}
.why__list{grid-column:7/-1;counter-reset:w}
.why__item{display:grid;grid-template-columns:3.2em 1fr;column-gap:16px;row-gap:10px;padding-block:clamp(28px,3.4vw,44px);border-top:1px solid var(--line)}
.why__item:last-child{border-bottom:1px solid var(--line)}
.why__n{grid-row:span 2;font-size:var(--fs-small);color:var(--muted);font-variant-numeric:tabular-nums;padding-top:.5em}
.why__item h3{font-size:clamp(1.55rem,2.6vw,2.45rem);font-weight:500;letter-spacing:-.04em;line-height:1.02}
.why__item p{color:var(--muted);max-width:48ch}

/* Services */
.services{padding-block:var(--sec)}
.svc{border-bottom:1px solid var(--rule)}
.svc__item{border-top:1px solid var(--rule)}
.svc__btn{width:100%;display:grid;grid-template-columns:4em minmax(0,5fr) minmax(0,5fr) 2.5em;column-gap:var(--gap);align-items:baseline;text-align:left;padding-block:clamp(22px,2.6vw,34px)}
.svc__num{font-size:var(--fs-small);color:var(--fg2);font-variant-numeric:tabular-nums}
.svc__name{font-size:clamp(1.45rem,2.6vw,2.4rem);font-weight:500;letter-spacing:-.04em;line-height:1.05;transition:transform 600ms var(--ease),color var(--t1)}
.svc__line{color:var(--fg2);font-size:var(--fs-small);font-weight:400;max-width:44ch;transition:color var(--t1)}
.svc__btn:hover .svc__name{transform:translateX(10px);color:var(--accent)}
.svc__item.is-open .svc__name{color:var(--accent)}
.svc__plus{position:relative;width:18px;height:18px;justify-self:end;align-self:center}
.svc__plus::before,.svc__plus::after{content:"";position:absolute;left:0;right:0;top:50%;height:1.5px;background:currentColor;transition:transform 500ms var(--ease)}
.svc__plus::after{transform:rotate(90deg)}
[aria-expanded="true"] .svc__plus::after{transform:rotate(0)}
[aria-expanded="true"] .svc__plus::before{transform:rotate(180deg)}
.svc__panel{padding:0 0 clamp(32px,4vw,52px) calc(4em + var(--gap))}
.svc__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,3.5fr) minmax(0,3.5fr);gap:var(--gap) clamp(24px,3vw,48px)}
.svc__panel:not([hidden]) .svc__grid{animation:rise 700ms var(--ease) both}
.svc__body{font-size:1.12rem;line-height:1.55;max-width:46ch}
.svc__list li{padding-block:9px;border-top:1px solid var(--rule);font-size:var(--fs-small)}
.svc__list--muted li{color:var(--fg2)}
.svc__for{font-size:var(--fs-small);color:var(--fg2);margin-bottom:18px;max-width:32ch}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* Process */
.process{padding-block:var(--sec)}
.process__in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.process__aside{grid-column:1/span 5;position:sticky;top:calc(var(--head-h) + 32px);align-self:start;display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.process__aside>*{grid-column:1/-1}
.process__aside .sec-head__title{font-size:var(--fs-h2)}
.process__intro{color:var(--fg2);max-width:40ch}
.process__count{font-size:clamp(3.5rem,8vw,7.5rem);font-weight:400;letter-spacing:-.06em;line-height:1;color:var(--fg2);font-variant-numeric:tabular-nums;margin-top:12px}
.process__count span{color:var(--fg)}
.process__list{grid-column:7/-1}
.process__step{display:grid;grid-template-columns:3.2em 1fr;column-gap:16px;row-gap:10px;padding-block:clamp(30px,3.6vw,48px);border-top:1px solid var(--rule);transition:opacity 600ms var(--ease)}
.process__step:last-child{border-bottom:1px solid var(--rule)}
.js .process__step{opacity:.38}
.js .process__step.is-active{opacity:1}
.process__n{grid-row:span 2;font-size:var(--fs-small);color:var(--fg2);font-variant-numeric:tabular-nums;padding-top:.45em}
.process__step h3{font-size:clamp(1.5rem,2.4vw,2.2rem);font-weight:500;letter-spacing:-.04em;line-height:1.05}
.process__step p{color:var(--fg2);max-width:46ch}

/* Proof */
.proof{padding-block:var(--sec)}
.proof__in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:40px}
.proof__in>div:first-child{grid-column:1/span 5}
.proof__in .sec-head{margin-bottom:24px}.proof__in .sec-head__title{grid-column:1/-1}
.proof__intro{color:var(--muted);max-width:40ch}
.standards{grid-column:7/-1;align-self:end}
.standards__row{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr);gap:var(--gap);padding-block:22px;border-top:1px solid var(--line)}
.standards__row:last-child{border-bottom:1px solid var(--line)}
.standards dt{font-weight:500}
.standards dd{color:var(--muted);font-size:var(--fs-small)}
.quotes{max-width:var(--wrap);margin:var(--sec) auto 0;padding-inline:var(--gut);display:grid;gap:48px}
.quote blockquote p{font-size:var(--fs-h3);letter-spacing:-.03em;line-height:1.25;max-width:32ch}
.quote figcaption{margin-top:16px;color:var(--muted);font-size:var(--fs-small)}
.faq-wrap{margin-top:var(--sec);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:32px}
.faq-wrap__title{grid-column:1/span 5;font-size:clamp(1.9rem,3.4vw,3.1rem);font-weight:500;letter-spacing:-.045em;line-height:1}
.faq{grid-column:7/-1;border-bottom:1px solid var(--line)}
.faq__item{border-top:1px solid var(--line)}
.faq__btn{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;text-align:left;padding-block:22px;font-size:1.15rem;font-weight:500;letter-spacing:-.02em}
.faq__btn:hover>span:first-child{color:var(--accent)}
.faq__a{padding-bottom:26px;color:var(--muted);max-width:56ch}
.faq__a:not([hidden]){animation:rise 600ms var(--ease) both}

/* CTA */
.cta{padding-block:var(--sec) clamp(72px,9vw,128px)}
.cta__in{display:grid;gap:clamp(28px,4vw,56px)}
.cta__title{font-size:clamp(3rem,9vw,9.25rem);font-weight:500;letter-spacing:-.055em;line-height:.9;max-width:12ch}
.cta__title em{font-weight:300;color:var(--accent-soft)}
.cta__row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:28px;align-items:end;padding-top:28px;border-top:1px solid var(--night-line)}
.cta__text{grid-column:1/span 5;color:var(--night-muted);max-width:42ch}
.cta__actions{grid-column:8/-1;justify-self:end;display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center}
.link--light{--fg:var(--night-ink)}

/* Footer */
.site-foot{padding-top:clamp(56px,6vw,88px);border-top:1px solid var(--night-line);overflow:hidden}
.site-foot__cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);font-size:var(--fs-small);color:var(--night-muted)}
.site-foot__cols li{padding-block:3px}
.site-foot__cols a{color:var(--night-ink);transition:color var(--t1)}
.site-foot__cols a:hover{color:var(--accent-soft)}
.site-foot__h{color:var(--night-ink);font-weight:500;margin-bottom:12px}
.site-foot__mark{font-size:clamp(4rem,19.6vw,18.5rem);font-weight:500;letter-spacing:-.065em;line-height:.8;margin:clamp(56px,7vw,112px) 0 0 -.04em;white-space:nowrap;color:var(--night-ink);user-select:none}
.site-foot__base{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;padding-block:28px 32px;margin-top:clamp(16px,2vw,28px);border-top:1px solid var(--night-line);font-size:var(--fs-micro);color:var(--night-muted)}
.site-foot__base p{margin-right:auto}
.site-foot__base a:hover{color:var(--night-ink)}

/* Inner page heroes */
.phero{padding-top:calc(var(--head-h) + clamp(64px,10vw,150px));padding-bottom:clamp(56px,7vw,104px)}
.phero .wrap{display:grid;gap:clamp(24px,3vw,40px)}
.phero__title{font-size:var(--fs-h1);font-weight:500;letter-spacing:-.05em;line-height:.93;max-width:15ch}
.phero__title em{font-weight:300;color:var(--accent)}
.phero__title--sm{font-size:clamp(2.3rem,5vw,4.5rem)}
.phero__lede{max-width:46ch}

.engage{padding-block:var(--sec)}
.engage__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.engage__item{border-top:1px solid var(--ink);padding-top:22px;display:grid;gap:12px;align-content:start}
.engage__item h3{font-size:var(--fs-h3);font-weight:500;letter-spacing:-.035em;line-height:1.05}
.engage__item p:last-child{color:var(--muted);max-width:36ch}
.fit{padding-block:var(--sec)}
.fit__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,96px)}
.fit__grid .svc__list li{font-size:1.1rem;padding-block:14px}

/* Contact */
.contact{padding-top:calc(var(--head-h) + clamp(48px,8vw,120px));padding-bottom:var(--sec)}
.contact__in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:56px}
.contact__aside{grid-column:1/span 5;display:grid;gap:28px;align-content:start}
.contact__aside .phero__title{font-size:clamp(2.6rem,5.4vw,5.25rem)}
.contact__form{grid-column:7/-1}
.next{display:grid;gap:0;border-bottom:1px solid var(--line)}
.next li{display:grid;grid-template-columns:2.6em 1fr;padding-block:14px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-small)}
.next li span{color:var(--ink);font-variant-numeric:tabular-nums}
.next b{color:var(--ink);font-weight:500;margin-right:.3em}
.contact__direct{display:grid;gap:8px;justify-items:start;color:var(--muted)}
.form{display:grid;gap:36px}
.form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px var(--gap)}
.field{display:grid;gap:6px;align-content:start}
.field label,.choices legend{font-size:var(--fs-small);font-weight:500;transition:color var(--t1)}
.opt{color:var(--muted);font-weight:400;margin-left:.3em}
.field input,.field textarea{width:100%;border:0;border-bottom:1px solid #B9B3A6;background:transparent;padding:12px 0 12px;font-size:1.12rem;border-radius:0;transition:border-color var(--t1),box-shadow var(--t1)}
.field textarea{resize:vertical;min-height:150px;line-height:1.5}
.field input:focus,.field textarea:focus{outline:none;border-bottom-color:var(--accent);box-shadow:0 1px 0 0 var(--accent)}
.field:focus-within label{color:var(--accent)}
.field__hint{font-size:var(--fs-micro);color:var(--muted)}
.field__err{font-size:var(--fs-micro);color:var(--error);min-height:1.1em}
.field.is-invalid input,.field.is-invalid textarea{border-bottom-color:var(--error);box-shadow:0 1px 0 0 var(--error)}
.field.is-invalid label{color:var(--error)}
.choices{display:grid;gap:14px}
.choices__set{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;cursor:pointer}
.chip input{position:absolute;opacity:0;inset:0;cursor:pointer}
.chip span{display:inline-block;padding:.6em 1.05em;border:1px solid #C3BDB0;border-radius:999px;font-size:var(--fs-small);transition:background-color var(--t1),color var(--t1),border-color var(--t1)}
.chip:hover span{border-color:var(--ink)}
.chip input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.form__foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
.form__note{font-size:var(--fs-micro);color:var(--muted)}
.form__alert{padding:14px 18px;border:1px solid var(--error);color:var(--error);border-radius:10px;font-size:var(--fs-small)}
.form-done{padding:clamp(28px,4vw,48px);border:1px solid var(--line);border-radius:16px;display:grid;gap:16px;justify-items:start;background:var(--surface)}
.form-done__title{font-size:var(--fs-h3);font-weight:500;letter-spacing:-.035em;line-height:1.1}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Case study */
.case__facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);border-top:1px solid var(--line);padding-top:18px;margin-top:12px}
.case__facts dt{font-size:var(--fs-micro);color:var(--muted);margin-bottom:4px}
.case__facts dd{font-size:var(--fs-small);font-weight:450}
.case__stage{padding-block:clamp(40px,6vw,96px)}
.case__note{margin-top:28px;padding:16px 20px;border:1px solid var(--line);border-radius:12px;font-size:var(--fs-small);color:var(--muted);max-width:72ch}
.case__note strong{color:var(--ink);font-weight:500}
.case__body{padding-block:clamp(64px,8vw,128px);display:grid;gap:clamp(48px,6vw,88px)}
.case__sec{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:16px;padding-top:24px;border-top:1px solid var(--line)}
.case__sec h2{grid-column:1/span 4;font-size:clamp(1.4rem,2.2vw,2rem);font-weight:500;letter-spacing:-.035em;line-height:1.1;display:flex;gap:.8em;align-items:baseline}
.case__sec h2 .sec-head__num{font-size:var(--fs-small);color:var(--muted);font-weight:400}
.case__txt{grid-column:6/span 6;font-size:1.15rem;line-height:1.6;max-width:58ch}
.case__txt p+p{margin-top:1em}
.case__next{border-top:1px solid var(--night-line)}
.case__next-in{display:grid;gap:14px;padding-block:clamp(64px,9vw,140px)}
.case__next-t{font-size:var(--fs-h1);font-weight:500;letter-spacing:-.05em;line-height:.95;transition:transform 700ms var(--ease),color var(--t1)}
.case__next-in:hover .case__next-t{transform:translateX(14px);color:var(--accent-soft)}
.case__next-s{color:var(--night-muted);max-width:52ch}
.pfig--xl .frame{border-radius:14px}

/* Insights, prose, 404 */
.insights{padding-bottom:var(--sec)}
.post-list{border-bottom:1px solid var(--line)}
.post-list a{display:grid;grid-template-columns:8em minmax(0,6fr) minmax(0,5fr);gap:var(--gap);padding-block:26px;border-top:1px solid var(--line);align-items:baseline}
.post-list time{font-size:var(--fs-small);color:var(--muted)}
.post-list__t{font-size:var(--fs-h3);font-weight:500;letter-spacing:-.035em;line-height:1.1;transition:color var(--t1)}
.post-list a:hover .post-list__t{color:var(--accent)}
.post-list__e{color:var(--muted);font-size:var(--fs-small)}
.empty{padding-block:24px 0;color:var(--muted);max-width:52ch;display:grid;gap:18px;font-size:1.1rem}
.night .empty{color:var(--night-muted)}
.prose{max-width:68ch;padding-bottom:var(--sec);font-size:1.12rem;line-height:1.7}
.prose>*+*{margin-top:1.1em}
.prose h2,.prose h3{font-weight:500;letter-spacing:-.03em;line-height:1.15;margin-top:2em}
.prose h2{font-size:1.8rem}.prose h3{font-size:1.35rem}
.prose a{text-decoration:underline;text-underline-offset:3px}
.prose ul{list-style:disc;padding-left:1.2em}.prose ol{list-style:decimal;padding-left:1.2em}
.nf{min-height:100svh;display:flex;align-items:center;padding-block:calc(var(--head-h) + 40px) 80px}
.nf .wrap{display:grid;gap:32px}
.nf__title{font-size:var(--fs-h1);font-weight:500;letter-spacing:-.05em;line-height:.93;max-width:13ch}
.nf__title em{font-weight:300;color:var(--accent)}

.preview-pill{position:fixed;left:16px;bottom:16px;z-index:90;display:inline-flex;gap:10px;align-items:center;padding:8px 8px 8px 14px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:.78rem;font-weight:500}
.preview-pill span{background:var(--paper);color:var(--ink);border-radius:999px;padding:4px 10px}

/* Project cursor */
.cursor{position:fixed;left:0;top:0;z-index:80;width:96px;height:96px;margin:-48px 0 0 -48px;border-radius:50%;background:var(--night-ink);color:var(--night);display:grid;place-items:center;font-size:.8rem;font-weight:500;letter-spacing:-.01em;pointer-events:none;transform:translate3d(var(--cx,-200px),var(--cy,-200px),0) scale(0);transition:transform 420ms var(--ease);will-change:transform}
.cursor.is-on{transform:translate3d(var(--cx),var(--cy),0) scale(1)}
.cursor.is-on.is-down{transform:translate3d(var(--cx),var(--cy),0) scale(.86)}

/* 6 Compositions (concept projects, sized in container units) */
.pfig{position:relative}
.frame{position:relative;container-type:inline-size;border-radius:10px;overflow:hidden;background:#fff;isolation:isolate}
.frame__bar{display:flex;align-items:center;gap:.8cqi;height:3.4cqi;padding:0 1.6cqi;background:rgba(0,0,0,.06);font-size:1.2cqi;color:rgba(0,0,0,.45)}
.frame__bar span{width:.9cqi;height:.9cqi;border-radius:50%;background:rgba(0,0,0,.18)}
.frame__bar i{font-style:normal;margin-left:auto;margin-right:auto;padding:.3cqi 2cqi;border-radius:99px;background:rgba(255,255,255,.55);letter-spacing:.02em}
.frame--dark .frame__bar{background:#191D24;color:rgba(255,255,255,.4)}
.frame--dark .frame__bar span{background:rgba(255,255,255,.18)}
.frame--dark .frame__bar i{background:rgba(255,255,255,.06)}
.frame__screen{position:relative;aspect-ratio:16/9.4}
.vz{position:absolute;inset:0;padding:3.6cqi 4.6cqi 3.4cqi;display:flex;flex-direction:column;font-family:var(--f-sans);font-size:1.45cqi;line-height:1.3}
.vz-nav{display:flex;align-items:center;gap:3cqi;font-size:1.35cqi}
.vz-nav b{margin-right:auto;font-weight:600;letter-spacing:-.03em;font-size:1.7cqi}
.vz-serif{font-family:var(--f-serif);font-style:italic;font-weight:300;font-size:7.6cqi;line-height:.93;letter-spacing:-.02em}
.vz-serif em{font-weight:400}
.vz-meta{display:flex;justify-content:space-between;gap:2cqi;padding-top:1.8cqi;border-top:1px solid currentColor;font-size:1.3cqi;opacity:.85}
/* property */
.frame--stone{background:#D9D1C3}.frame--stone .frame__bar{background:#CFC6B6}
.vz-property{background:#D9D1C3;color:#2A2622}
.vz-property__hero{flex:1;display:grid;grid-template-columns:1fr 1.05fr;gap:4cqi;align-items:end;padding-block:3cqi 2.6cqi}
.vz-property .vz-serif{padding-bottom:.5cqi}
.vz-property .vz-serif em{color:#A4573B}
.vz-property__facade{position:relative;height:100%;min-height:20cqi;border-radius:1.2cqi 1.2cqi 0 0;overflow:hidden;background:linear-gradient(180deg,#C9BCA7,#B9AA92)}
.vz-property__facade .sun{position:absolute;width:26cqi;height:26cqi;border-radius:50%;right:-6cqi;top:-8cqi;background:radial-gradient(circle,rgba(255,236,204,.95),rgba(255,236,204,0) 68%);transition:transform 1400ms var(--ease)}
.vz-property__facade .slab{position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent 0 5.4cqi,rgba(42,38,34,.55) 5.4cqi 5.9cqi)}
.vz-property__facade .fins{position:absolute;inset:0 0 0 16%;background:repeating-linear-gradient(90deg,rgba(42,38,34,.72) 0 .55cqi,transparent .55cqi 2.7cqi);-webkit-mask:linear-gradient(90deg,transparent,#000 30%);mask:linear-gradient(90deg,transparent,#000 30%);transition:transform 1400ms var(--ease)}
.work-card__link:hover .vz-property__facade .sun{transform:translate(-8cqi,6cqi)}
.work-card__link:hover .vz-property__facade .fins{transform:translateX(-1.2cqi)}
/* saas */
.vz-saas{background:#0E1116;color:#E6E9EE;flex-direction:row;padding:0}
.vz-saas aside{width:19cqi;padding:3.2cqi 2.4cqi;display:flex;flex-direction:column;gap:1.5cqi;border-right:1px solid rgba(255,255,255,.07);font-size:1.3cqi;color:rgba(230,233,238,.55)}
.vz-saas aside b{color:#E6E9EE;font-size:1.7cqi;letter-spacing:-.03em;margin-bottom:1.4cqi}
.vz-saas aside .on{color:#E6E9EE;background:rgba(255,255,255,.06);border-radius:.8cqi;padding:.7cqi 1cqi;margin-inline:-1cqi}
.vz-saas__main{flex:1;padding:3.2cqi 3.6cqi;display:flex;flex-direction:column;gap:2.2cqi;min-width:0}
.vz-saas__head{display:flex;justify-content:space-between;align-items:center;font-size:2.2cqi;letter-spacing:-.03em}
.vz-saas .pill{font-size:1.15cqi;border:1px solid rgba(255,255,255,.14);border-radius:99px;padding:.5cqi 1.2cqi;color:rgba(230,233,238,.7)}
.vz-saas__kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6cqi}
.vz-saas__kpis div{background:#151A22;border:1px solid rgba(255,255,255,.06);border-radius:1cqi;padding:1.6cqi}
.vz-saas__kpis small{display:block;font-size:1.1cqi;color:rgba(230,233,238,.5);margin-bottom:.6cqi}
.vz-saas__kpis strong{font-size:2.6cqi;font-weight:500;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.vz-saas__kpis div:first-child strong{color:#56D6BE}
.vz-saas__chart{flex:1;display:flex;align-items:flex-end;gap:1cqi;padding:1.6cqi;background:#151A22;border-radius:1cqi;min-height:12cqi}
.vz-saas__chart span{flex:1;height:var(--h);border-radius:.4cqi .4cqi 0 0;background:rgba(86,214,190,.22);transform-origin:bottom;transition:transform 900ms var(--ease) calc(var(--i)*30ms)}
.vz-saas__chart span:nth-last-child(-n+3){background:#56D6BE}
.work-card__link:hover .vz-saas__chart span{transform:scaleY(1.08)}
.vz-saas__rows{display:grid;gap:.4cqi;font-size:1.2cqi}
.vz-saas__rows p{display:flex;justify-content:space-between;padding:.7cqi 0;border-top:1px solid rgba(255,255,255,.06);color:rgba(230,233,238,.7)}
.vz-saas__rows .due{color:#F2C46B}
/* commerce */
.frame--cream{background:#F1E9DC}.frame--cream .frame__bar{background:#E7DDCC}
.vz-commerce{background:#F1E9DC;color:#2B2118}
.vz-commerce .vz-nav b{letter-spacing:.2em;font-size:1.6cqi}
.vz-commerce__head{display:flex;justify-content:space-between;align-items:flex-end;padding-block:3cqi 2.4cqi;gap:3cqi}
.vz-commerce__head .vz-serif{font-size:6.2cqi}
.vz-commerce__head .vz-serif em{color:#A9512F}
.vz-commerce__head span{max-width:22cqi;font-size:1.3cqi;opacity:.75;text-align:right}
.vz-commerce__grid{flex:1;display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:1.6cqi;min-height:0}
.tile{display:flex;flex-direction:column;gap:1cqi;min-height:0}
.tile .cloth{flex:1;border-radius:.8cqi;transition:transform 1200ms var(--ease)}
.tile p{display:flex;justify-content:space-between;font-size:1.25cqi;gap:1cqi}
.tile p i{font-style:normal;opacity:.7}
.t1 .cloth{background:radial-gradient(circle at 50% 50%,#E9DFCF 0 .55cqi,transparent .6cqi) 0 0/2.6cqi 2.6cqi,repeating-linear-gradient(45deg,#23345C 0 1.1cqi,#2B3E6C 1.1cqi 2.2cqi)}
.t2 .cloth{background:repeating-linear-gradient(90deg,#A9512F 0 .8cqi,#C7714C .8cqi 1.2cqi,#E5C9A8 1.2cqi 2.8cqi),#A9512F}
.t3 .cloth{background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.18),transparent 50%),repeating-linear-gradient(0deg,#C99A3D 0 1.4cqi,#B8872F 1.4cqi 1.8cqi)}
.work-card__link:hover .t1 .cloth{transform:translateY(-.8cqi)}
.work-card__link:hover .t2 .cloth{transform:translateY(-.8cqi);transition-delay:60ms}
.work-card__link:hover .t3 .cloth{transform:translateY(-.8cqi);transition-delay:120ms}
/* advisory */
.frame--ivory{background:#F7F4EC}.frame--ivory .frame__bar{background:#ECE7DB}
.vz-advisory{background:#F7F4EC;color:#1A1A1A}
.vz-advisory__body{flex:1;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;column-gap:4cqi;row-gap:3cqi;padding-top:4cqi}
.vz-advisory .num{grid-row:1/span 2;font-size:15cqi;font-weight:300;letter-spacing:-.06em;line-height:.8;color:#1F2D4D}
.vz-advisory .vz-serif{font-size:7cqi;align-self:end;color:#1A1A1A}
.vz-advisory .vz-serif em{color:#1F2D4D}
.vz-advisory .cols{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4cqi;border-top:1px solid #1A1A1A;padding-top:1.6cqi}
.vz-advisory .cols b{display:block;font-weight:500;font-size:1.35cqi;margin-bottom:1.2cqi}
.vz-advisory .cols i{display:block;height:.55cqi;border-radius:.3cqi;background:#D9D4C8;margin-bottom:.9cqi;transform-origin:left;transition:transform 900ms var(--ease)}
.vz-advisory .cols i.s{width:62%}
.work-card__link:hover .vz-advisory .cols i{transform:scaleX(.92)}
.hero__thumb .frame__bar{height:4.5cqi}

/* 7 Motion */
.js [data-enter]{opacity:0;transform:translateY(14px);transition:opacity 900ms var(--ease) calc(var(--d,1)*110ms + 380ms),transform 1100ms var(--ease) calc(var(--d,1)*110ms + 380ms)}
.js .is-loaded [data-enter]{opacity:1;transform:none}
.js .hero__title .hl__in{transform:translateY(calc(100% + .45em));transition:transform 1200ms var(--ease) calc(var(--i)*95ms + 120ms)}
.js .is-loaded .hero__title .hl__in,.js .hero__build .hl__in{transform:none}
.js .hero__build{visibility:hidden}
.js .is-loaded .lens-area.is-ready .hero__build{visibility:visible}
.js [data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .08em .22em 0;margin:0 -.08em -.22em 0}
.js [data-split] .w__in{display:inline-block;transform:translateY(calc(100% + .45em));transition:transform 1000ms var(--ease) calc(var(--i)*40ms)}
.js [data-split].is-in .w__in{transform:none}
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 900ms var(--ease),transform 1100ms var(--ease)}
.js [data-reveal].is-in{opacity:1;transform:none}
@supports (animation-timeline:view()){
  .js [data-words] .sw{animation:word linear both;animation-timeline:view();animation-range:entry 10% cover 42%}
  @keyframes word{from{opacity:.16}to{opacity:1}}
}
@view-transition{navigation:auto}
::view-transition-old(root){animation:vt-out 260ms var(--ease-io) both}
::view-transition-new(root){animation:vt-in 560ms var(--ease) both}
@keyframes vt-out{to{opacity:0;transform:translateY(-12px)}}
@keyframes vt-in{from{opacity:0;transform:translateY(16px)}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}
  .js [data-enter],.js [data-reveal],.js [data-split] .w__in,.js .hero__title .hl__in{opacity:1!important;transform:none!important}
  .js [data-words] .sw{animation:none!important;opacity:1!important}
  .hero__build,.lens-ring,.cursor{display:none!important}
  .js .process__step{opacity:1}
  ::view-transition-old(root),::view-transition-new(root){animation:none!important}
}
@media print{.js [data-enter],.js [data-reveal],.js [data-split] .w__in,.js .hero__title .hl__in{opacity:1!important;transform:none!important}.site-head,.menu,.cursor,.hero__build{display:none!important}}

/* 8 Responsive */
@media (max-width:1100px){
  .hero__latest{grid-column:7/span 5}
  .svc__btn{grid-template-columns:3em minmax(0,1fr) 2em}
  .svc__line{grid-column:2;grid-row:2;margin-top:6px}
  .svc__plus{grid-column:3;grid-row:1}
  .svc__panel{padding-left:calc(3em + var(--gap))}
  .svc__grid{grid-template-columns:1fr 1fr}
  .svc__body{grid-column:1/-1}
  .work-card__title{grid-column:1/-1}
  .work-card__sum{grid-column:1/span 8}
  .work-card__tags{grid-column:1/-1;justify-self:start;text-align:left}
}
@media (max-width:900px){
  :root{--head-h:64px}
  .nav,.site-head [data-cta-head]{display:none}
  .menu-toggle{display:inline-flex}
  .hero__meta{grid-template-columns:1fr 1fr}
  .hero__meta-mid{display:none}
  .hero__foot{row-gap:28px}
  .hero__intro{grid-column:1/-1}
  .hero__latest{grid-column:1/span 10}
  .hero__scroll{grid-column:11/-1;align-self:center}
  .hl:nth-child(2),.hl:nth-child(3){padding-left:0}
  .sec-head__title{grid-column:1/-1}
  .sec-head__side{grid-column:1/-1}
  .approach__trio{grid-column:1/-1;grid-template-columns:1fr}
  .approach__foot .link{grid-column:1/-1;justify-self:start}
  .statement{text-indent:0}
  .wc-1,.wc-2,.wc-3,.wc-4{grid-column:1/-1;margin-top:0}
  .why__aside,.process__aside{grid-column:1/-1;position:static;margin-bottom:40px}
  .why__list,.process__list{grid-column:1/-1}
  .process__count{display:none}
  .js .process__step{opacity:1}
  .proof__in>div:first-child,.standards,.faq-wrap__title,.faq{grid-column:1/-1}
  .cta__text,.cta__actions{grid-column:1/-1;justify-self:start}
  .site-foot__cols{grid-template-columns:1fr 1fr;row-gap:36px}
  .engage__grid{grid-template-columns:1fr;row-gap:40px}
  .fit__grid{grid-template-columns:1fr}
  .contact__aside,.contact__form{grid-column:1/-1}
  .case__facts{grid-template-columns:1fr 1fr;row-gap:18px}
  .case__sec h2,.case__txt{grid-column:1/-1}
  .post-list a{grid-template-columns:1fr;gap:6px}
  .admin-bar .site-head{top:46px}
}
@media (max-width:600px){
  :root{--fs-display:clamp(2.7rem,13.2vw,4.4rem)}
  .hero{min-height:auto;padding-bottom:40px}
  .hero__meta{grid-template-columns:1fr}
  .hero__meta p:last-child{text-align:left}
  .anno{display:none}
  .hero__latest{grid-column:1/-1}
  .hero__scroll{display:none}
  .hero__thumb{flex-basis:104px}
  .svc__btn{grid-template-columns:2.2em minmax(0,1fr) 1.6em;column-gap:12px}
  .svc__panel{padding-left:0}
  .svc__grid{grid-template-columns:1fr}
  .standards__row{grid-template-columns:1fr;gap:6px}
  .form__grid{grid-template-columns:1fr}
  .site-foot__cols{grid-template-columns:1fr}
  .why__item,.process__step{grid-template-columns:2.4em 1fr}
  .vz-saas aside{display:none}
  .btn{padding:.9em 1.2em .9em 1.35em}
}
@media (max-width:782px){.admin-bar .site-head{top:46px}}
@media (hover:none),(pointer:coarse){.cursor{display:none}}

/* ==== v1.1 Creative review ==== */

/* Hero: annotations ride on the lines they describe; the foot sits on the grid */
.hero__build .anno{position:absolute;-webkit-text-stroke:0;font:500 clamp(.62rem,.7vw,.74rem)/1 var(--f-sans);letter-spacing:.01em;color:var(--accent);background:var(--paper);padding:4px 7px;border:1px solid rgba(28,46,82,.3);border-radius:4px;white-space:nowrap}
.hero__build .hl__in{position:relative}
.anno--end{left:calc(100% + 14px);top:.16em}
.anno--start{right:calc(100% + 14px);top:.5em}
.hero__build em{position:relative}
.anno--em{left:.1em;top:-.55em}
.anno--a,.anno--b,.anno--c{display:none}
.lens-ring{box-shadow:0 0 0 1px rgba(28,46,82,.08) inset}
.lens-ring i{display:none}
.lens-hint{position:absolute;right:0;bottom:calc(clamp(36px,7vh,88px) * .35);display:flex;align-items:center;gap:10px;font-size:var(--fs-micro);color:var(--muted);transition:opacity 500ms var(--ease)}
.lens-hint i{width:14px;height:14px;border:1px solid currentColor;border-radius:50%;position:relative}
.lens-hint i::after{content:"";position:absolute;inset:3px;border-radius:50%;background:currentColor;opacity:.4}
.lens-area.is-used .lens-hint{opacity:0}
@media (hover:none),(pointer:coarse){.lens-hint{display:none}}
.hero__foot{align-items:end;row-gap:24px}
.hero__intro{grid-column:1/span 5}
.hero__actions{grid-column:1/span 6;grid-row:2}
.hero__latest{grid-column:9/-1;grid-row:1/span 2;align-self:end;display:grid;grid-template-columns:auto 1fr auto;gap:16px;padding:0;border:0;border-radius:0;background:none}
.hero__latest:hover{background:none}
.hero__thumb{flex:none;width:clamp(120px,11vw,168px);border-radius:8px;overflow:hidden}
.hero__latest-go{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:linear-gradient(currentColor,currentColor) center/0 0 no-repeat;position:relative;transition:background-color var(--t1),border-color var(--t1),color var(--t1)}
.hero__latest-go::after{content:"";position:absolute;inset:0;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 11l6-6M6 5h5v5' fill='none' stroke='%23000' stroke-width='1.3'/%3E%3C/svg%3E") center/14px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 11l6-6M6 5h5v5' fill='none' stroke='%23000' stroke-width='1.3'/%3E%3C/svg%3E") center/14px no-repeat}
.hero__latest:hover .hero__latest-go{background-color:var(--ink);border-color:var(--ink);color:var(--paper)}
.hero__latest:hover .hero__thumb .plate__frame{transform:translateY(-4%)}
.hero__scroll{display:none}

/* Approach: hanging label, statement on the content columns */
.approach__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:clamp(40px,5vw,72px)}
.approach__label{grid-column:1/span 2;padding-top:.9em}
.approach .statement{grid-column:3/-1;max-width:28ch;text-indent:0;font-size:clamp(1.9rem,4.1vw,4.05rem)}
.approach__trio{grid-column:3/span 9;grid-template-columns:repeat(3,minmax(0,1fr))}
.approach__link{grid-column:3/-1;justify-self:start}
.approach__foot{display:none}

/* Plates */
.plate{position:relative;overflow:hidden;border-radius:14px;aspect-ratio:16/10;--pb:#C9BFAE;background:var(--pb);isolation:isolate}
.plate::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(120% 80% at 85% 0%,rgba(255,255,255,.22),transparent 60%)}
.plate--stone{--pb:#C7BBA7}
.plate--slate{--pb:#28344A}
.plate--indigo{--pb:#2A3558}
.plate--ivory{--pb:#DCD6C8}
.plate__frame{position:absolute;left:9%;right:9%;top:11%;transition:transform 1200ms var(--ease)}
.plate__frame .frame{border-radius:10px 10px 0 0;box-shadow:0 1px 0 rgba(255,255,255,.18) inset}
.plate--lg{aspect-ratio:16/8.4}
.plate--lg .plate__frame{left:7%;right:7%;top:9%}
.plate--sm{aspect-ratio:4/3;border-radius:10px}
.plate--sm .plate__frame{left:10%;right:-14%;top:14%}
.plate--md{aspect-ratio:5/4}
.plate--md .plate__frame{left:10%;right:-10%;top:12%}
.plate--xs{aspect-ratio:4/3;border-radius:8px}
.plate--xs .plate__frame{left:12%;right:-22%;top:16%}
.plate--xs .frame__bar{height:5cqi}

/* Feature project */
.feature{margin-bottom:clamp(72px,9vw,140px)}
.feature__link{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:28px;color:var(--fg)}
.feature__link .plate{grid-column:1/-1}
.feature__link:hover .plate__frame{transform:translateY(-2.5%)}
.feature__meta{grid-column:1/-1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:10px;align-items:baseline}
.feature__kicker{grid-column:1/-1;display:flex;align-items:center;font-size:var(--fs-micro);color:var(--fg2)}
.feature__title{grid-column:1/span 5;font-size:clamp(2rem,4vw,3.6rem);font-weight:500;letter-spacing:-.045em;line-height:1}
.feature__sum{grid-column:6/span 4;color:var(--fg2);max-width:40ch}
.feature__scope{grid-column:6/span 4;grid-row:3;font-size:var(--fs-micro);color:var(--fg2)}
.feature__cta{grid-column:10/-1;grid-row:2;justify-self:end}

/* Project index */
.work__index-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:22px}
.work__index-title{font-size:var(--fs-small);font-weight:450;color:var(--fg2)}
.windex{position:relative}
.windex__head,.windex__row a{display:grid;grid-template-columns:4em minmax(0,5fr) minmax(0,2.6fr) minmax(0,2.6fr) minmax(0,1.2fr);column-gap:var(--gap);align-items:baseline}
.windex__head{font-size:var(--fs-micro);color:var(--fg2);padding-bottom:12px;border-bottom:1px solid var(--rule)}
.windex__head span:last-child,.windex__s{text-align:right}
.windex__row{border-bottom:1px solid var(--rule)}
.windex__row a{padding-block:clamp(18px,2.2vw,30px);position:relative;transition:color var(--t1)}
.windex__n{font-size:var(--fs-small);color:var(--fg2);font-variant-numeric:tabular-nums}
.windex__t{font-size:clamp(1.7rem,3.6vw,3.3rem);font-weight:500;letter-spacing:-.045em;line-height:1;transition:transform 700ms var(--ease)}
.windex__c{font-size:var(--fs-small);color:var(--fg2);transition:color var(--t1)}
.windex__thumb{display:none}
.windex__list:hover .windex__row a{color:var(--night-muted)}
.windex__list:hover .windex__row a:hover{color:var(--night-ink)}
.windex__row a:hover .windex__t,.windex__row a:focus-visible .windex__t{transform:translateX(12px)}
.windex__row a:hover .windex__c{color:var(--night-ink)}
.windex__preview{position:fixed;left:0;top:0;z-index:40;width:clamp(260px,24vw,380px);pointer-events:none;transform:translate3d(var(--px,-999px),var(--py,-999px),0);opacity:0;transition:opacity 300ms var(--ease)}
.windex__preview.is-on{opacity:1}
.windex__pv{position:absolute;inset:0 auto auto 0;width:100%;clip-path:inset(0 0 100% 0 round 10px);transition:clip-path 600ms var(--ease)}
.windex__pv.is-on{clip-path:inset(0 0 0 0 round 10px)}
@media (hover:none),(pointer:coarse){
  .windex__preview{display:none}
  .windex__row a{grid-template-columns:2.4em minmax(0,1fr) 96px;row-gap:6px}
  .windex__thumb{display:block;grid-column:3;grid-row:1/span 2;width:96px;border-radius:6px;overflow:hidden;align-self:center}
  .windex__thumb .frame{border-radius:6px}
  .windex__c{grid-column:2}
  .windex__scope,.windex__s{display:none}
  .windex__head{display:none}
}

/* Work page tiles */
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--gap);row-gap:clamp(56px,7vw,104px)}
.tile-card:nth-child(even){margin-top:clamp(0px,9vw,160px)}
.tile-card a{display:grid;gap:14px;color:var(--fg)}
.tile-card a:hover .plate__frame{transform:translateY(-3%)}
.tile-card__row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:8px}
.tile-card__t{font-size:var(--fs-h3);font-weight:500;letter-spacing:-.035em;line-height:1.05}
.tile-card__s{font-size:var(--fs-micro);color:var(--fg2)}
.tile-card__sum{color:var(--fg2);font-size:var(--fs-small);max-width:44ch}

/* Principles band (replaces the sticky split layout) */
.why__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:22px;margin-bottom:clamp(56px,7vw,104px)}
.why__head .sec-head__label{grid-column:1/-1}
.why__title{grid-column:1/span 10;font-size:clamp(2.1rem,4.6vw,4.4rem);font-weight:500;letter-spacing:-.045em;line-height:1;max-width:20ch}
.why__title em{color:var(--accent);font-weight:300}
.band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--gap)}
.band__item{display:grid;align-content:start;gap:14px;padding-top:20px;border-top:1px solid var(--ink)}
.band__item:nth-child(even){margin-top:clamp(0px,5vw,88px)}
.band__n{font-size:var(--fs-small);color:var(--muted);font-variant-numeric:tabular-nums}
.band__item h3{font-size:clamp(1.35rem,1.9vw,1.8rem);font-weight:500;letter-spacing:-.035em;line-height:1.05;max-width:12ch}
.band__item p{color:var(--muted);font-size:var(--fs-small);max-width:34ch}
.js [data-reveal][style*="--d"]{transition-delay:calc(var(--d,0) * 90ms)}

/* Standards spec strip */
.proof__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:22px;margin-bottom:clamp(48px,6vw,88px)}
.proof__head .sec-head__label{grid-column:1/-1}
.proof__title{grid-column:1/span 7;font-size:var(--fs-h2);font-weight:500;letter-spacing:-.045em;line-height:.96}
.proof__title em{color:var(--accent);font-weight:300}
.proof__head .proof__intro{grid-column:9/-1;align-self:end;max-width:38ch}
.spec{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.spec__item{display:grid;align-content:start;gap:14px;padding:24px var(--gap) 28px 0;border-right:1px solid var(--line)}
.spec__item+.spec__item{padding-left:var(--gap)}
.spec__item:last-child{border-right:0}
.spec dt{display:grid;gap:10px}
.spec__fig{font-size:clamp(2.4rem,4.6vw,4.4rem);font-weight:400;letter-spacing:-.06em;line-height:.9;font-variant-numeric:tabular-nums}
.spec__label{font-size:var(--fs-small);font-weight:500}
.spec dd{font-size:var(--fs-micro);line-height:1.5;color:var(--muted);max-width:28ch}
.standards,.proof__in{display:none}
.faq-wrap__aside{grid-column:1/span 5;display:grid;gap:18px;align-content:start;justify-items:start;position:sticky;top:calc(var(--head-h) + 32px);align-self:start}
.faq-wrap__title{grid-column:auto}
.faq-wrap__text{color:var(--muted);max-width:34ch}

@media (max-width:1100px){
  .hero__intro{grid-column:1/span 7}
  .hero__latest{grid-column:8/-1}
  .band{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}
  .band__item:nth-child(even){margin-top:0}
  .spec{grid-template-columns:repeat(3,minmax(0,1fr))}
  .spec__item:nth-child(3){border-right:0}
  .spec__item:nth-child(4){padding-left:0}
  .spec__item:nth-child(n+4){border-top:1px solid var(--line)}
  .feature__title{grid-column:1/-1}
  .feature__sum,.feature__scope{grid-column:1/span 8;grid-row:auto}
  .feature__cta{grid-column:1/-1;grid-row:auto;justify-self:start}
  .windex__head,.windex__row a{grid-template-columns:3em minmax(0,5fr) minmax(0,3fr) minmax(0,1fr)}
  .windex__scope,.windex__head span:nth-child(4){display:none}
}
@media (max-width:900px){
  .hero__intro,.hero__actions,.hero__latest{grid-column:1/-1;grid-row:auto}
  .hero__latest{justify-self:start}
  .approach__label,.approach .statement,.approach__trio,.approach__link{grid-column:1/-1}
  .approach__trio{grid-template-columns:1fr;gap:20px}
  .why__title,.proof__title,.proof__head .proof__intro{grid-column:1/-1}
  .faq-wrap__aside{grid-column:1/-1;position:static}
  .tiles{grid-template-columns:1fr}
  .tile-card:nth-child(even){margin-top:0}
  .plate--lg{aspect-ratio:4/3}
  .plate--lg .plate__frame{left:8%;right:-18%;top:10%}
  .lens-hint{display:none}
}
@media (max-width:600px){
  .band{grid-template-columns:1fr;row-gap:36px}
  .spec{grid-template-columns:repeat(2,minmax(0,1fr))}
  .spec__item{padding-left:0!important;padding-right:12px;border-right:0;border-top:1px solid var(--line)}
  .spec__item:nth-child(even){padding-left:14px!important;border-left:1px solid var(--line)}
  .spec__item:first-child,.spec__item:nth-child(2){border-top:0}
  .spec__item:last-child{grid-column:1/-1;border-left:0;padding-left:0!important}
  .feature__link{row-gap:20px}
  .hero__thumb{width:112px}
}
.hero__title em{white-space:nowrap}
.next li p{margin:0}
@media (max-width:600px){.preview-pill{left:auto;right:12px;bottom:12px;font-size:.7rem}}
@media (max-width:700px){.windex__preview{display:none}.windex__row a{grid-template-columns:2.4em minmax(0,1fr) 96px;row-gap:6px}.windex__thumb{display:block;grid-column:3;grid-row:1/span 2;width:96px;border-radius:6px;overflow:hidden;align-self:center}.windex__thumb .frame{border-radius:6px}.windex__c{grid-column:2}.windex__scope,.windex__s,.windex__head{display:none}.windex__t{font-size:1.7rem}}

/* ==== v2: KOTA-led calm homepage ==== */
.kh{padding-top:calc(var(--head-h) + clamp(64px,11vh,140px));padding-bottom:clamp(48px,7vh,88px)}
.kh__in{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(22px,2.6vw,34px)}
.kh__status{display:inline-flex;align-items:center;gap:10px;font-size:var(--fs-small);color:var(--muted);padding:7px 14px 7px 12px;border:1px solid var(--line);border-radius:999px}
.kh__status i{width:8px;height:8px;border-radius:50%;background:#2E9E5B;box-shadow:0 0 0 4px rgba(46,158,91,.14)}
.kh__title{font-size:clamp(2.7rem,7.2vw,7.4rem);font-weight:500;letter-spacing:-.055em;line-height:.98;max-width:13ch}
.kl{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.kl__in{display:inline-block}
.js .kl__in{transform:translateY(calc(100% + .3em));transition:transform 1100ms var(--ease) calc(var(--i)*90ms + 120ms)}
.js .is-loaded .kl__in{transform:none}
.pill{display:inline-block;width:1.5em;height:.72em;border-radius:999px;overflow:hidden;vertical-align:.06em;margin:0 .04em;background:var(--surface)}
.pill img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.15);transition:transform 1400ms var(--ease) 500ms}
.js .is-loaded .pill img{transform:scale(1)}
.kh__lede{font-size:var(--fs-lede);line-height:1.45;color:var(--muted);max-width:34ch;letter-spacing:-.01em}
.kh__actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 26px}
.reel{padding-bottom:clamp(96px,12vw,176px)}
.reel__frame{display:block;border-radius:clamp(12px,1.4vw,20px);overflow:hidden;aspect-ratio:16/9;background:var(--surface)}
.reel__img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform 1400ms var(--ease)}
.reel__frame:hover .reel__img{transform:scale(1.015)}
@supports (animation-timeline:view()){
  .reel__img{animation:reelin linear both;animation-timeline:view();animation-range:entry 0% cover 40%}
  @keyframes reelin{from{transform:scale(1.08)}to{transform:scale(1)}}
}
.reel__cap{display:flex;justify-content:space-between;gap:16px;padding-top:16px;font-size:var(--fs-small);font-weight:500}
.reel__meta{color:var(--muted);font-weight:400}
.about{padding-bottom:clamp(96px,12vw,176px)}
.about__in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.about__label{grid-column:1/span 3;font-size:var(--fs-small);font-weight:450;color:var(--muted);padding-top:.6em}
.about__text{grid-column:4/-1;font-size:clamp(1.6rem,3.1vw,2.9rem);line-height:1.18;letter-spacing:-.035em;font-weight:450;max-width:30ch}
.row-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:20px;margin-bottom:clamp(28px,3.4vw,48px);border-bottom:1px solid var(--line)}
.row-head__title{font-size:clamp(1.6rem,2.6vw,2.4rem);font-weight:500;letter-spacing:-.04em;line-height:1}
.svcs{padding-bottom:clamp(96px,12vw,176px)}
.tabs{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--gap)}
.tabs__list{display:grid;align-content:start}
.tabs__tab{display:flex;align-items:baseline;gap:16px;text-align:left;padding:16px 0;border-bottom:1px solid var(--line);font-size:clamp(1.15rem,1.6vw,1.45rem);font-weight:500;letter-spacing:-.03em;color:var(--muted);transition:color var(--t1),padding var(--t2) var(--ease)}
.tabs__tab span{font-size:var(--fs-micro);font-variant-numeric:tabular-nums;letter-spacing:0}
.tabs__tab:hover{color:var(--ink)}
.tabs__tab[aria-selected="true"]{color:var(--ink);padding-left:10px}
.tabs__panel{background:var(--surface);border-radius:18px;padding:clamp(24px,3.4vw,48px);display:grid;gap:20px;align-content:start;justify-items:start;min-height:100%}
.js .tabs__panel[hidden]{display:none}
.tabs__panel:not([hidden]){animation:rise 600ms var(--ease) both}
.tabs__panel .micro{margin:0}
.tabs__title{font-size:clamp(1.7rem,3vw,2.7rem);font-weight:500;letter-spacing:-.045em;line-height:1}
.tabs__body{color:var(--muted);max-width:48ch}
.tabs__meta{display:grid;gap:0;width:100%;margin:4px 0 8px}
.tabs__meta div{display:grid;grid-template-columns:9em 1fr;gap:16px;padding:12px 0;border-top:1px solid #D9D3C6;font-size:var(--fs-small)}
.tabs__meta dt{color:var(--muted)}
.sel{padding-bottom:clamp(96px,12vw,176px)}
.sel__card{display:grid;gap:20px;color:var(--ink)}
.sel__media{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,3.2fr);gap:var(--gap);align-items:stretch}
.shot{display:block;position:relative;overflow:hidden;border-radius:14px;background:var(--surface)}
.shot__img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform 1200ms var(--ease)}
.sel__a{aspect-ratio:16/10}
.sel__b{aspect-ratio:auto}
.sel__card:hover .shot__img{transform:scale(1.02)}
.sel__meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 24px}
.sel__t{font-size:clamp(1.4rem,2.2vw,2rem);font-weight:500;letter-spacing:-.04em;margin-right:auto}
.sel__c{color:var(--muted);font-size:var(--fs-small)}
.sel__go{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-small);font-weight:500}
.sel__go i{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);position:relative;transition:background-color var(--t1),border-color var(--t1),color var(--t1)}
.sel__go i::after{content:"";position:absolute;inset:0;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 11l6-6M6 5h5v5' fill='none' stroke='%23000' stroke-width='1.3'/%3E%3C/svg%3E") center/13px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 11l6-6M6 5h5v5' fill='none' stroke='%23000' stroke-width='1.3'/%3E%3C/svg%3E") center/13px no-repeat}
.sel__card:hover .sel__go i{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.sel__more{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);margin-top:clamp(48px,6vw,88px)}
.qs{padding-bottom:clamp(96px,12vw,176px)}
.qs .faq-wrap{margin-top:0}
.qs .faq-wrap__title{font-size:clamp(1.6rem,2.6vw,2.4rem)}
.cta2{padding-block:clamp(96px,12vw,176px);border-top:1px solid var(--line)}
.cta2__in{display:grid;justify-items:center;text-align:center;gap:26px}
.cta2__title{font-size:clamp(3rem,9vw,9rem);font-weight:500;letter-spacing:-.06em;line-height:.92}
.cta2__text{color:var(--muted);max-width:40ch}
.cta2__actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 26px}
.tile-card .shot{aspect-ratio:16/10}
.shot--xl{aspect-ratio:16/9;border-radius:16px}
.case__gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);padding-top:clamp(40px,5vw,72px)}
.case__gallery .shot{aspect-ratio:16/10}
.case__gallery .shot:last-child:nth-child(odd){grid-column:1/-1;aspect-ratio:auto;max-height:80vh}
.case__stage{padding-block:clamp(24px,4vw,56px)}
@media (max-width:900px){
  .about__label,.about__text{grid-column:1/-1}
  .about__label{margin-bottom:16px}
  .tabs{grid-template-columns:1fr}
  .sel__media{grid-template-columns:minmax(0,1fr) minmax(0,.42fr)}
  .sel__more,.case__gallery{grid-template-columns:1fr}
}
@media (max-width:600px){
  .kh{padding-top:calc(var(--head-h) + 48px)}
  .kh__title{font-size:clamp(2.5rem,11.5vw,3.4rem);max-width:none}
  .reel__frame{aspect-ratio:4/3}
  .sel__media{grid-template-columns:1fr}
  .sel__b{display:none}
  .tabs__meta div{grid-template-columns:1fr;gap:4px}
}
@media (prefers-reduced-motion:reduce){.js .kl__in{transform:none!important}.pill img{transform:none!important}.reel__img{animation:none!important}}
.kh__title{max-width:none;font-size:clamp(2.6rem,6.3vw,6.6rem)}
.pill img{object-fit:cover}
.pill{width:1.7em}

.sel__media{grid-template-columns:1fr}
.sel__a{aspect-ratio:16/9}
