/* Shared by the Blog index and post pages (Oct 20, 2026). Same system as the other new-site pages: paper and charcoal, Inter, red only for eyebrows and the main button. */
:root{
  --paper:#F4F3EF;
  --paper-2:#ECEBE6;
  --ink:#202525;
  --ink-2:#5B6060;
  --ink-3:#9A9D99;
  --hair:#D4D4CE;
  --night:#161A1A;
  --night-2:#1D2222;
  --lit:radial-gradient(110% 85% at 20% 0%,#394141 0%,#252b2b 40%,#141818 100%);
  --on-dark:#E9EAE6;
  --on-dark-2:rgba(233,234,230,.66);
  --on-dark-3:rgba(233,234,230,.42);
  --line-dark:rgba(255,255,255,.12);
  --red:#C52A30;
  --red-on-dark:#E05A5F;
  --white:#FFFFFF;
  --sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --step--1:clamp(.8rem,.78rem + .1vw,.86rem);
  --step-0:clamp(1rem,.97rem + .15vw,1.08rem);
  --step-1:clamp(1.2rem,1.1rem + .45vw,1.45rem);
  --step-2:clamp(1.6rem,1.3rem + 1.2vw,2.3rem);
  --step-3:clamp(2.3rem,1.6rem + 3vw,4.4rem);
  --step-4:clamp(2.7rem,1.6rem + 4.4vw,5.8rem);
  --gutter:max(16px,env(safe-area-inset-left,0px));
  --gutter-r:max(16px,env(safe-area-inset-right,0px));
  --wrap:1240px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  color-scheme:light;
}
*{box-sizing:border-box}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:var(--step-0);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--night)}
img{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:2px}
.dark :focus-visible{outline-color:#fff}
h1,h2,h3{font-weight:400;letter-spacing:-.03em;line-height:1.04;margin:0;text-wrap:balance}
p{margin:0}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-left:var(--gutter);padding-right:var(--gutter-r)}
.label{font:600 .72rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.dark{background:var(--night);color:var(--on-dark)}
.dark .label{color:var(--red-on-dark)}
.btn{display:inline-flex;align-items:center;gap:.5em;padding:.82em 1.3em;font:500 .95rem/1 var(--sans);text-decoration:none;border:1px solid currentColor;border-radius:999px;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.btn--solid{background:var(--red);border-color:var(--red);color:var(--white);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 24px -12px rgba(197,42,48,.7)}
.btn--solid:hover{background:#A9232A;border-color:#A9232A}
.btn--ghost:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.link{text-decoration:none;font-weight:500;border-bottom:1px solid var(--hair);padding-bottom:2px;transition:border-color .2s,color .2s}
.link::after{content:" \2192"}
.link:hover{border-color:currentColor}
.dark .link{border-color:var(--line-dark)}
.dark .link:hover{border-color:var(--on-dark)}

.grain{position:relative;isolation:isolate}
.grain::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--noise);opacity:.16;mix-blend-mode:multiply}
.dark.grain::after{opacity:.5;mix-blend-mode:overlay}
.grain>*{position:relative;z-index:1}
.glass{position:relative;isolation:isolate;background:rgba(22,26,26,.46);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 0 18px rgba(255,255,255,.04),0 18px 40px -14px rgba(0,0,0,.55)}
.glass::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,.08) 38%,rgba(255,255,255,0) 62%,rgba(255,255,255,.28));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}

/* Arrivals */
[data-rv]{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
[data-rv].in{opacity:1;transform:none}

/* Header (same floating glass bar as the home page) */
.hdr{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:0;right:0;z-index:50;pointer-events:none}
.hdr__bar{pointer-events:auto;display:flex;align-items:center;gap:1.6rem;width:min(1208px,calc(100% - 32px));margin-inline:auto;height:58px;padding:0 .5rem 0 1.1rem;border-radius:999px;color:var(--white);transition:color .4s var(--ease)}
.hdr__bar.glass{background:rgba(22,26,26,.34)}
.hdr.is-light .hdr__bar{color:var(--ink);background:rgba(244,243,239,.66);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 30px -14px rgba(16,20,20,.3)}
.hdr.is-light .hdr__bar::before{background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.2) 38%,rgba(0,0,0,.08) 62%,rgba(255,255,255,.7))}
.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;flex:none}
.brand__mark{position:relative;width:30.265px;height:30px;flex:none}
.brand__mark img{position:absolute;inset:0;height:100%;width:auto;transition:opacity .4s}
.brand__mark .dark-m{opacity:0}
.hdr.is-light .brand__mark .dark-m{opacity:1}
.hdr.is-light .brand__mark .light-m{opacity:0}
.brand__word{font-weight:600;font-size:.98rem;letter-spacing:-.01em;white-space:nowrap}
.nav{display:flex;gap:1.5rem;margin-left:auto;font-size:.9rem}
.nav a{text-decoration:none;opacity:.82;transition:opacity .2s}
.nav a:hover,.nav a[aria-current]{opacity:1}
.hdr__cta{padding:.62em 1.05em;font-size:.86rem}
.hdr:not(.is-light) .hdr__cta{color:var(--white);border-color:rgba(255,255,255,.5)}
.hdr:not(.is-light) .hdr__cta:hover{background:var(--white);color:var(--ink)}
.menu-btn{display:none;margin-left:auto;background:none;border:0;font-weight:500;padding:.5rem .7rem;cursor:pointer}
@media (max-width:820px){.nav,.hdr__cta{display:none}.menu-btn{display:block}
  .hdr.is-open .nav{display:flex;flex-direction:column;position:absolute;top:calc(100% + 8px);left:16px;right:16px;padding:1.2rem 1.4rem;gap:1rem;font-size:1.2rem;border-radius:22px;background:rgba(22,26,26,.86);color:var(--white);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
  .hdr__bar{position:relative}
}

/* Glint (white light across ink type, once) */
.glint{--g-base:var(--ink);--g-edge:#a7acaa;--g-light:#f4f3ef}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
  .glint.is-glinting{background-image:linear-gradient(110deg,var(--g-base) 0 40%,var(--g-edge) 46%,var(--g-light) 49% 51%,var(--g-edge) 54%,var(--g-base) 60% 100%);
    background-size:300% 100%;background-position:100% 50%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
    animation:glint 1.5s cubic-bezier(.45,0,.25,1) 1 both}
}
@keyframes glint{from{background-position:100% 50%}to{background-position:0% 50%}}
@keyframes rc-sheen{0%{opacity:0;background-position:130% 0}12%{opacity:1}88%{opacity:1}100%{opacity:0;background-position:-30% 0}}

.talk{position:relative;padding-block:clamp(6rem,16vh,10rem);overflow:hidden;background:var(--lit)}
.talk__in{position:relative;display:flex;flex-wrap:wrap;gap:2rem 3rem;align-items:end;justify-content:space-between}
.talk h2{font-size:var(--step-3);font-weight:500;letter-spacing:-.04em;max-width:14ch;color:var(--white)}
.talk p{margin-top:1rem;color:var(--on-dark-2);max-width:40ch;font-size:var(--step-1);font-weight:300;line-height:1.45}
.talk__acts{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}
.talk__tel{color:var(--on-dark);font-variant-numeric:tabular-nums;user-select:all}

/* Footer */
.ftr{padding-block:3.6rem calc(2rem + env(safe-area-inset-bottom,0px));font-size:.92rem;border-top:1px solid var(--line-dark);color:#C9CCC8}
.ftr__row{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:center}
.ftr__brand{display:flex;gap:.9rem;align-items:center}
.ftr__brand img{width:30.265px;height:30px}
.ftr__brand strong{color:var(--white);font-weight:600}
.ftr nav{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem}
.ftr a{text-decoration:none;color:#C9CCC8}
.ftr a:hover{color:var(--white)}
.ftr__bot{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;border-top:1px solid var(--line-dark);margin-top:2.4rem;padding-top:1.4rem;color:#7E837F;font-size:var(--step--1)}
/* talk band and footer read as one charcoal surface: the band's gradient settles to #141818, the footer continues it with no seam */
.talk{padding-block:clamp(6rem,16vh,10rem) clamp(3.5rem,9vh,5.5rem)}
.ftr{background:#141818;border-top:0}
/* nav-v2 start: Header v2 (Oct 20, 2026). Thicker frost on every page, contour light that follows the pointer along the
   bar's rim (Daniel's pick C), red Talk to us with one glint and a sliding arrow (pick 1). Source: nav/site/apply_nav.py */
#hdr .hdr__bar{--mx:50%;gap:1.4rem;background:rgba(22,26,26,.62);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%)}
#hdr.is-light .hdr__bar{background:rgba(244,243,239,.8)}
#hdr .nav{gap:1.6rem;align-items:center}
#hdr .nav a{position:relative}
#hdr .nav>[aria-current]::after{content:"";position:absolute;left:0;bottom:-6px;width:14px;height:2px;border-radius:2px;background:#E05A5F}
#hdr.is-light .nav>[aria-current]::after{background:#C52A30}
#hdr .hdr__rim{position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .5s cubic-bezier(.22,.61,.36,1)}
#hdr .hdr__rim::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(170px 70px at var(--mx) 50%,rgba(255,255,255,.12),transparent 70%)}
#hdr.is-light .hdr__rim::before{background:radial-gradient(170px 70px at var(--mx) 50%,rgba(255,255,255,.7),transparent 70%)}
#hdr .hdr__rim::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;
  background:radial-gradient(22px 6px at var(--mx) 0,#E05A5F,transparent),radial-gradient(130px 60px at var(--mx) 50%,#fff,transparent 72%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);
  filter:drop-shadow(0 0 4px rgba(255,255,255,.7))}
#hdr.is-light .hdr__rim::after{background:radial-gradient(22px 6px at var(--mx) 0,#C52A30,transparent),radial-gradient(130px 60px at var(--mx) 50%,rgba(32,37,37,.55),transparent 72%);filter:none}
@media (hover:hover){#hdr .hdr__bar:hover .hdr__rim{opacity:1}}
#hdr .hdr__cta{position:relative;isolation:isolate;overflow:hidden;gap:0;background:#C52A30;border-color:#C52A30;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 10px 22px -12px rgba(197,42,48,.8)}
#hdr .hdr__cta:hover,#hdr .hdr__cta:focus-visible{background:#C52A30;border-color:#C52A30;color:#fff}
#hdr .hdr__arr{display:inline-block;width:0;overflow:hidden;text-align:right;opacity:0;transform:translateX(-6px);transition:width .4s cubic-bezier(.22,.61,.36,1),opacity .3s,transform .4s cubic-bezier(.22,.61,.36,1)}
#hdr .hdr__cta:hover .hdr__arr,#hdr .hdr__cta:focus-visible .hdr__arr{width:1.25em;opacity:1;transform:none}
#hdr .hdr__cta::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 48% 52%,transparent 70%) 160% 0/260% 100% no-repeat}
#hdr .hdr__cta:hover::after,#hdr .hdr__cta:focus-visible::after{animation:hdr-sheen 1.1s cubic-bezier(.45,0,.25,1) 1 both}
@keyframes hdr-sheen{from{background-position:160% 0}to{background-position:-60% 0}}
/* Phone menu: the open panel sits inside the bar, so the bar gives up its own blur while open and the panel frosts instead */
#hdr.is-open .hdr__bar{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(22,26,26,.94)}
#hdr.is-open.is-light .hdr__bar{background:rgba(244,243,239,.96)}
#hdr.is-open .nav{background:rgba(22,26,26,.8);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%)}
#hdr.is-open .nav>[aria-current]::after{bottom:-4px}
@media (prefers-reduced-motion:reduce){#hdr .hdr__cta::after{animation:none!important}#hdr .hdr__rim{display:none}}
@media (prefers-reduced-transparency:reduce){#hdr .hdr__bar,#hdr.is-open .nav,#hdr .hdr__drop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#1D2222}#hdr.is-light .hdr__bar,#hdr.is-light .hdr__drop{background:#F4F3EF}}
/* Layout A (Daniel, Oct 20): What we do opens a frosted panel of four doors under the bar */
#hdr .nav__m,#hdr .nav__sub{display:none}
#hdr .nav__wwd{position:relative;display:inline-flex;align-items:center;padding:0;border:0;background:none;font:inherit;color:inherit;cursor:pointer;opacity:.82;transition:opacity .2s}
#hdr .nav__wwd:hover,#hdr .nav__wwd[aria-expanded="true"],#hdr .nav__wwd[aria-current]{opacity:1}
#hdr .nav__wwd[aria-current]{font-weight:500}
#hdr .nav__chev{width:.42em;height:.42em;margin-left:.5em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-.2em) rotate(45deg);transition:transform .35s cubic-bezier(.22,.61,.36,1)}
#hdr .nav__wwd[aria-expanded="true"] .nav__chev{transform:translateY(.08em) rotate(225deg)}
#hdr .hdr__drop{position:absolute;top:calc(100% + 8px);left:0;right:0;width:min(1208px,calc(100% - 32px));margin-inline:auto;padding:16px;border-radius:24px;isolation:isolate;color:#fff;
  background:rgba(22,26,26,.62);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 30px 60px -24px rgba(0,0,0,.6);
  pointer-events:none;opacity:0;visibility:hidden;transform:translateY(-8px) scale(.985);transform-origin:50% 0;
  transition:opacity .3s cubic-bezier(.22,.61,.36,1),transform .45s cubic-bezier(.22,.61,.36,1),visibility 0s .45s}
#hdr .hdr__drop::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.5),rgba(255,255,255,.06) 40%,rgba(255,255,255,0) 62%,rgba(255,255,255,.22));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
#hdr.is-light .hdr__drop{color:#202525;background:rgba(244,243,239,.84);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 30px 60px -26px rgba(16,20,20,.4)}
#hdr.is-light .hdr__drop::before{background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.2) 38%,rgba(0,0,0,.08) 62%,rgba(255,255,255,.7))}
#hdr.wwd-open .hdr__drop{pointer-events:auto;opacity:1;visibility:visible;transform:none;transition:opacity .3s cubic-bezier(.22,.61,.36,1),transform .45s cubic-bezier(.22,.61,.36,1),visibility 0s}
#hdr .hdr__doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#hdr .door{display:block;padding:8px;border-radius:16px;text-decoration:none;color:inherit;transition:background .3s cubic-bezier(.22,.61,.36,1)}
#hdr .door:hover,#hdr .door:focus-visible{background:rgba(255,255,255,.08)}
#hdr.is-light .door:hover,#hdr.is-light .door:focus-visible{background:rgba(255,255,255,.7)}
#hdr .door img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;filter:saturate(.9);transition:filter .3s}
#hdr .door:hover img{filter:saturate(1.05)}
#hdr .door b{position:relative;display:flex;justify-content:space-between;align-items:baseline;margin-top:.8rem;font-size:1rem;font-weight:500;letter-spacing:-.01em}
#hdr .door b span{opacity:0;transform:translateX(-4px);transition:opacity .3s,transform .3s cubic-bezier(.22,.61,.36,1)}
#hdr .door:hover b span,#hdr .door:focus-visible b span{opacity:1;transform:none}
#hdr .door[aria-current] b::after{content:"";position:absolute;left:0;bottom:-5px;width:14px;height:2px;border-radius:2px;background:#E05A5F}
#hdr.is-light .door[aria-current] b::after{background:#C52A30}
#hdr .door__line{display:block;margin-top:.35rem;font-size:.84rem;line-height:1.4;opacity:.66}
#hdr .hdr__dfoot{display:flex;justify-content:space-between;gap:1rem;margin:14px 8px 2px;padding-top:12px;border-top:1px solid rgba(255,255,255,.12);font-size:.86rem}
#hdr.is-light .hdr__dfoot{border-top-color:rgba(32,37,37,.12)}
#hdr .hdr__dfoot span{opacity:.66}
#hdr .hdr__dfoot a{text-decoration:none;font-weight:500;color:inherit}
#hdr .hdr__dfoot a:hover{text-decoration:underline;text-underline-offset:3px}
@media (max-width:1000px){#hdr .hdr__dfoot span{display:none}#hdr .hdr__dfoot{justify-content:flex-end}}
/* Phone: no panel; the menu lists What we do with its four pages under it, then Contact */
@media (max-width:820px){
  #hdr .nav__wwd,#hdr .hdr__drop{display:none}
  #hdr.is-open .nav{align-items:flex-start}
  #hdr.is-open .nav__m{display:block}
  #hdr.is-open .nav__sub{display:flex;flex-direction:column;gap:.75rem;margin:-.2rem 0 .1rem;padding-left:1rem;border-left:1px solid rgba(255,255,255,.2);font-size:1rem}
}
@media (prefers-reduced-motion:reduce){#hdr .hdr__drop{transition:opacity .2s,visibility 0s .2s;transform:none}}
/* nav-v2 end */
