/*
Theme Name: Agrirep
Theme URI: https://www.agrirep.co.uk
Author: Agrirep
Description: The UK operating base for international machinery manufacturers. Custom lightweight theme.
Version: 1.6.0
License: Proprietary
Text Domain: agrirep
*/

:root{
  --ink:#14161c;
  --ink-2:#0e1015;
  --ink-3:#18273D;
  --line:rgba(255,255,255,.12);
  --line-2:rgba(255,255,255,.22);
  --paper:#f1efe9;
  --paper-2:#e7e4db;
  --ink-line:rgba(20,22,28,.16);
  --hiviz:#7CAE3F;
  --hiviz-2:#8FC24E;
  --white:#ffffff;
  --mut:rgba(255,255,255,.72);
  --mut-2:rgba(255,255,255,.55);
  --dmut:rgba(20,22,28,.78);
  --disp:"Barlow Condensed","Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --body:"Inter","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --sp-1:8px; --sp-2:16px; --sp-3:24px; --sp-4:32px; --sp-5:48px; --sp-6:64px;
  --sec:clamp(76px,11vw,136px);
  --wrap:1180px;
}
*,*::before,*::after{box-sizing:border-box;border-radius:0 !important;}
html{scroll-behavior:smooth;}
html,body{overflow-x:clip;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
body{
  margin:0;
  background:var(--ink);
  color:var(--white);
  font-family:var(--body);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{display:block;}
::selection{background:var(--hiviz);color:var(--ink-2);}
a{color:inherit;}
:focus-visible{outline:2px solid var(--hiviz);outline-offset:3px;}
.light :focus-visible{outline-color:var(--ink);}
.skip{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--hiviz);color:var(--ink-2);
  font:600 15px/1 var(--disp);letter-spacing:.08em;text-transform:uppercase;
  padding:16px 22px;text-decoration:none;
}
.skip:focus{left:0;}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(20px,5vw,44px);}
h1,h2,h3{font-family:var(--disp);text-transform:uppercase;line-height:.96;margin:0;font-weight:700;letter-spacing:.005em;}
h1{font-size:clamp(52px,10.5vw,118px);}
h2{font-size:clamp(38px,5.8vw,68px);}
p{margin:0;}
.kick{
  font:600 clamp(13px,1.5vw,15px)/1.2 var(--disp);
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--hiviz);
  display:flex;align-items:center;gap:12px;margin:0;
}
.kick::before{content:"";width:10px;height:10px;background:var(--hiviz);flex:none;}
.light .kick{color:var(--ink);}
.light .kick::before{background:var(--ink);}
.lead{
  font-size:clamp(17px,2vw,20px);line-height:1.6;color:var(--mut);
  max-width:62ch;
}
.light .lead{color:var(--dmut);}
/* ruler / gauge strips: identity device 2 */
.ruler{
  height:16px;width:100%;
  background-image:
    repeating-linear-gradient(90deg,var(--line-2) 0 1px,transparent 1px 10px),
    repeating-linear-gradient(90deg,var(--line-2) 0 2px,transparent 2px 60px);
  background-size:100% 7px,100% 15px;
  background-position:left bottom,left bottom;
  background-repeat:no-repeat;
}
.ruler.top{transform:scaleY(-1);}
.light .ruler,.ruler.dark-ticks{
  background-image:
    repeating-linear-gradient(90deg,rgba(20,22,28,.3) 0 1px,transparent 1px 10px),
    repeating-linear-gradient(90deg,rgba(20,22,28,.3) 0 2px,transparent 2px 60px);
}
/* stencil numerals: identity device 1 */
.sno{
  font:700 clamp(96px,15vw,190px)/0.8 var(--disp);
  letter-spacing:.02em;
  color:transparent;
  -webkit-text-stroke:1.5px rgba(255,255,255,.26);
  user-select:none;pointer-events:none;display:block;
}
.light .sno{-webkit-text-stroke:1.5px rgba(20,22,28,.28);}
@supports not (-webkit-text-stroke:1px black){
  .sno{color:rgba(255,255,255,.1);}
  .light .sno{color:rgba(20,22,28,.12);}
}
.shead{position:relative;display:grid;gap:var(--sp-3);max-width:840px;}
.shead .sno{position:absolute;right:-10px;top:-24px;z-index:0;}
.shead>*{position:relative;z-index:1;}
.shead h2{max-width:14ch;}
section{position:relative;}
.sec{padding-block:var(--sec);}
.sec.tight-b{padding-bottom:clamp(48px,7vw,88px);}
.light{background:var(--paper);color:var(--ink);}
.light-2{background:var(--paper-2);}
.deep{background:var(--ink-2);}
.raised{background:var(--ink-3);}
hr.hl{border:0;border-top:1px solid var(--line);margin:0;}
/* buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  min-height:56px;padding:16px 28px;
  font:600 18px/1.1 var(--disp);letter-spacing:.09em;text-transform:uppercase;
  text-decoration:none;border:1px solid transparent;cursor:pointer;
  text-align:center;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease;
}
.btn .ar{font-family:var(--body);font-weight:600;transition:transform .18s ease;}
.btn:hover .ar{transform:translateX(4px);}
.btn-hi{background:var(--hiviz);color:var(--ink-2);}
.btn-hi:hover{background:var(--white);color:var(--ink-2);}
.btn-hi:focus-visible{outline-color:var(--white);}
.light .btn-hi:focus-visible{outline-color:var(--ink);}
.btn-ghost{border-color:var(--line-2);color:var(--white);background:transparent;}
.btn-ghost:hover{border-color:var(--white);background:rgba(255,255,255,.07);}
.btn-ink{background:var(--ink);color:var(--white);}
.btn-ink:hover{background:var(--ink-3);}
.tlink{
  display:inline-flex;align-items:center;gap:10px;min-height:44px;
  font:600 16px/1.2 var(--disp);letter-spacing:.1em;text-transform:uppercase;
  color:var(--hiviz);text-decoration:none;border-bottom:1px solid transparent;
  transition:border-color .18s ease,color .18s ease;
}
.tlink:hover{border-bottom-color:var(--hiviz);}
.light .tlink{color:var(--ink);}
.light .tlink:hover{border-bottom-color:var(--ink);}
/* header */
.top{
  position:fixed;inset:0 0 auto 0;z-index:100;
  transition:background-color .25s ease,border-color .25s ease;
  border-bottom:1px solid transparent;
  background:linear-gradient(rgba(10,12,16,.55),rgba(10,12,16,0));
}
.top.scrolled{background:var(--ink-2);border-bottom-color:var(--line);}
.top-in{display:flex;align-items:center;gap:clamp(14px,2.5vw,32px);min-height:72px;}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;min-height:44px;}
.brand svg{width:34px;height:32px;flex:none;}
.brand b{font:700 24px/1 var(--disp);letter-spacing:.1em;text-transform:uppercase;color:var(--white);}
.nav{display:flex;align-items:center;gap:clamp(8px,1.6vw,22px);margin-left:auto;}
.nav a.nl{
  display:inline-flex;align-items:center;min-height:44px;padding:0 4px;
  font:600 15px/1.2 var(--disp);letter-spacing:.12em;text-transform:uppercase;
  color:var(--mut);text-decoration:none;border-bottom:2px solid transparent;
  transition:color .15s ease,border-color .15s ease;
}
.nav a.nl:hover{color:var(--white);border-bottom-color:var(--hiviz);}
.top .btn{min-height:44px;padding:10px 18px;font-size:15px;}
/* language menu */
.lang{position:relative;}
.lang-btn{
  display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;padding:0 12px;
  background:transparent;border:1px solid var(--line-2);color:var(--white);
  font:600 15px/1 var(--disp);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;
  transition:border-color .15s ease,background-color .15s ease;
}
.lang-btn:hover{border-color:var(--white);background:rgba(255,255,255,.07);}
.lang-menu{
  position:absolute;right:0;top:calc(100% + 8px);min-width:200px;
  background:var(--ink-2);border:1px solid var(--line-2);
  padding:6px 0;margin:0;list-style:none;z-index:120;
}
.lang-menu[hidden]{display:none;}
.lang-menu a{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  min-height:44px;padding:0 18px;text-decoration:none;color:var(--mut);
  font-size:15px;transition:background-color .15s ease,color .15s ease;
}
.lang-menu a:hover{background:var(--ink-3);color:var(--white);}
.lang-menu a span{font:600 12px/1 var(--disp);letter-spacing:.14em;color:var(--mut-2);text-transform:uppercase;}
.lang-menu a[aria-current]{color:var(--hiviz);}
.menu-btn{
  display:none;margin-left:auto;
  width:48px;height:48px;background:transparent;border:1px solid var(--line-2);
  color:var(--white);cursor:pointer;padding:0;
}
.menu-btn .bars{display:block;width:20px;height:2px;background:currentColor;margin:0 auto;position:relative;}
.menu-btn .bars::before,.menu-btn .bars::after{content:"";position:absolute;left:0;width:20px;height:2px;background:currentColor;}
.menu-btn .bars::before{top:-7px;}
.menu-btn .bars::after{top:7px;}
/* hero */
.hero{position:relative;min-height:clamp(600px,96svh,1020px);display:flex;align-items:flex-end;overflow:hidden;}
.hero .ph{position:absolute;inset:0;}
.hero .ph::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,12,16,.5) 0%,rgba(10,12,16,.25) 40%,rgba(14,16,21,.9) 88%,var(--ink) 100%);
}
.hero-in{position:relative;z-index:2;width:100%;padding-block:clamp(96px,14vh,150px) clamp(40px,6vh,72px);display:grid;gap:var(--sp-4);}
.hero h1{max-width:9ch;}
.hero .lead{max-width:58ch;font-size:clamp(17px,2.1vw,21px);color:rgba(255,255,255,.86);}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;}
.hero-meta{
  display:flex;flex-wrap:wrap;gap:6px 0;align-items:center;
  border-top:1px solid var(--line);padding-top:var(--sp-3);
  font:600 13px/1.6 var(--disp);letter-spacing:.16em;text-transform:uppercase;color:var(--mut-2);
}
.decal{
  position:absolute;z-index:2;right:clamp(16px,4vw,44px);top:clamp(88px,13vh,140px);
  font:700 13px/1.3 var(--disp);letter-spacing:.2em;text-transform:uppercase;
  color:rgba(255,255,255,.8);border:1px solid var(--line-2);padding:10px 14px;
  display:none;
}
@media (min-width:900px){.decal{display:block;}}
/* photo bands */
.band{position:relative;min-height:52vh;overflow:hidden;}
.band.tall{min-height:64vh;}
.band .ph{position:absolute;inset:0;}
.ph{position:relative;overflow:hidden;}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.plate{
  position:absolute;left:0;bottom:0;z-index:2;
  background:var(--ink-2);color:var(--mut);
  font:600 13px/1.4 var(--disp);letter-spacing:.18em;text-transform:uppercase;
  padding:12px 20px;border-top:1px solid var(--line);border-right:1px solid var(--line);
}
/* routes */
.routes{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:clamp(40px,6vw,72px);}
@media (min-width:940px){.routes{grid-template-columns:1fr 1.15fr 1fr;align-items:stretch;}}
.route{background:var(--ink);padding:clamp(28px,3.5vw,44px);display:flex;flex-direction:column;gap:var(--sp-3);position:relative;}
.route .rk{font:600 13px/1.2 var(--disp);letter-spacing:.2em;text-transform:uppercase;color:var(--mut-2);}
.route h3{font-size:clamp(26px,2.6vw,34px);}
.route .sub{font:600 15px/1.4 var(--disp);letter-spacing:.06em;text-transform:uppercase;color:var(--mut);}
.route p.desc{color:var(--mut);font-size:15.5px;}
.route ul{list-style:none;margin:0;padding:0;display:grid;gap:12px;border-top:1px solid var(--line);padding-top:var(--sp-3);margin-top:auto;}
.route li{display:flex;gap:12px;font-size:15.5px;color:var(--mut);line-height:1.5;}
.route li::before{content:"";width:8px;height:8px;background:var(--line-2);flex:none;margin-top:7px;}
.route.fav{background:var(--ink-3);border-top:6px solid var(--hiviz);}
@media (min-width:940px){.route.fav{margin-block:-18px;padding-block:calc(clamp(28px,3.5vw,44px) + 18px);box-shadow:0 24px 60px rgba(0,0,0,.45);}}
.route.fav h3,.route.fav .sub{color:var(--white);}
.route.fav li{color:rgba(255,255,255,.85);}
.route.fav li::before{background:var(--hiviz);}
.badge{
  align-self:flex-start;background:var(--hiviz);color:var(--ink-2);
  font:700 13px/1 var(--disp);letter-spacing:.14em;text-transform:uppercase;padding:8px 12px;
}
.routes-foot{margin-top:var(--sp-4);}
/* services */
.svc-grid{display:grid;gap:clamp(36px,5vw,64px);margin-top:clamp(40px,6vw,72px);}
@media (min-width:940px){.svc-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:start;}}
.svc-list{border-top:1px solid var(--line);}
.svc{display:grid;grid-template-columns:auto 1fr;gap:clamp(16px,3vw,32px);padding:clamp(22px,3vw,32px) 0;border-bottom:1px solid var(--line);transition:background-color .18s ease;}
.svc:hover{background:rgba(255,255,255,.03);}
.svc .n{font:700 clamp(30px,3.4vw,44px)/1 var(--disp);color:var(--hiviz);min-width:2.2ch;}
.svc h3{font-size:clamp(22px,2.3vw,28px);margin-bottom:8px;}
.svc p{color:var(--mut);font-size:15.5px;max-width:52ch;}
.svc-side{position:sticky;top:96px;display:grid;gap:var(--sp-3);}
/* pull quote */
.quoteband{min-height:70vh;display:flex;align-items:center;}
.quoteband .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,12,16,.72),rgba(10,12,16,.55));}
.quoteband blockquote{position:relative;z-index:2;margin:0;padding-block:clamp(72px,12vh,120px);}
.quoteband blockquote p{
  font:600 clamp(30px,5.2vw,60px)/1.08 var(--disp);text-transform:uppercase;color:var(--white);max-width:22ch;
}
.quoteband .qmark{display:block;width:56px;height:8px;background:var(--hiviz);margin-bottom:var(--sp-4);}
/* how it works */
.steps{display:grid;gap:0;border:1px solid var(--ink-line);border-bottom:0;margin-top:clamp(40px,6vw,72px);background:var(--paper);}
@media (min-width:940px){.steps{grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--ink-line);border-right:0;}}
.step{padding:clamp(22px,2.6vw,30px);border-bottom:1px solid var(--ink-line);display:grid;gap:12px;align-content:start;}
@media (min-width:940px){.step{border-bottom:0;border-right:1px solid var(--ink-line);}}
.step .sn{font:700 clamp(44px,4.6vw,64px)/0.9 var(--disp);color:transparent;-webkit-text-stroke:1.5px rgba(20,22,28,.5);}
@supports not (-webkit-text-stroke:1px black){.step .sn{color:rgba(20,22,28,.25);}}
.step h3{font-size:21px;letter-spacing:.03em;}
.step p{font-size:14.5px;color:var(--dmut);line-height:1.55;}
.noteline{
  display:flex;align-items:center;gap:14px;margin-top:var(--sp-4);
  border:1px solid var(--ink-line);border-left:6px solid var(--ink);
  background:var(--white);padding:16px 20px;
  font:600 16px/1.4 var(--disp);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);
}
/* matrix */
.matrix{display:grid;background:var(--ink);color:var(--white);margin-top:clamp(48px,7vw,88px);box-shadow:0 30px 70px rgba(14,16,21,.25);}
@media (min-width:820px){.matrix{grid-template-columns:1fr 1fr;}}
.mcol{padding:clamp(30px,4vw,52px);display:grid;gap:var(--sp-3);align-content:start;border-bottom:1px solid var(--line);}
@media (min-width:820px){.mcol{border-bottom:0;}.mcol+.mcol{border-left:1px solid var(--line);}}
.mcol .mk{font:600 13px/1 var(--disp);letter-spacing:.2em;text-transform:uppercase;color:var(--mut-2);}
.mcol h3{font-size:clamp(26px,3vw,36px);}
.mcol.yours h3,.mcol.yours .mk{color:var(--hiviz);}
.mcol ul{list-style:none;margin:0;padding:0;display:grid;}
.mcol li{display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--line);font-size:16px;color:rgba(255,255,255,.88);line-height:1.5;}
.mcol li::before{content:"";width:10px;height:10px;flex:none;margin-top:7px;background:var(--line-2);}
.mcol.yours li::before{background:var(--hiviz);}
/* sectors */
.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:clamp(36px,5vw,56px);}
.scard{background:var(--ink-2);display:flex;flex-direction:column;position:relative;transition:background .18s ease;}
.scard:hover{background:var(--ink-3);}
.scard .ph{position:relative;margin:0;aspect-ratio:16/11;overflow:hidden;}
.scard .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,12,16,0) 55%,rgba(14,16,21,.55) 100%);}
.scard .sno{position:absolute;right:12px;top:6px;z-index:2;-webkit-text-stroke:1.5px rgba(255,255,255,.55);font-size:clamp(44px,5vw,64px);}
.scard-body{padding:clamp(20px,2.4vw,30px);display:grid;gap:12px;align-content:start;flex:1;}
.scard h3{font-size:clamp(22px,2.2vw,28px);}
.scard p{color:rgba(255,255,255,.82);font-size:14.5px;line-height:1.6;}
.scard-body .tlink{margin-top:auto;}
@media(max-width:900px){.sector-grid{grid-template-columns:1fr;}}
/* ownership */
.own-grid{display:grid;gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:clamp(40px,6vw,72px);}
@media (min-width:900px){.own-grid{grid-template-columns:repeat(3,1fr);}}
.own{background:var(--ink);padding:clamp(26px,3.4vw,42px) clamp(22px,3vw,36px);display:grid;gap:14px;align-content:start;}
.own .on{font:700 15px/1 var(--disp);letter-spacing:.16em;color:var(--hiviz);}
.own h3{font-size:clamp(23px,2.4vw,29px);}
.own p{color:var(--mut);font-size:15.5px;}
/* studio band */
.studio-band{border:1px solid rgba(124,174,63,.5);border-left:5px solid var(--hiviz);background:rgba(124,174,63,.10);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(22px,3vw,34px) clamp(22px,3vw,38px);margin:0 0 clamp(20px,3vw,36px);}
.studio-band .sb-k{font-family:var(--disp);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:14px;color:var(--hiviz);white-space:nowrap;}
.studio-band p{font-size:15px;color:var(--mut);line-height:1.6;max-width:64ch;}
.studio-band a{font-family:var(--disp);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:13px;color:var(--white);text-decoration:none;border-bottom:2px solid var(--hiviz);padding-bottom:3px;white-space:nowrap;justify-self:start;}
.studio-band a:hover{color:var(--hiviz);}
@media(max-width:860px){.studio-band{grid-template-columns:1fr;gap:14px;}}
/* group */
.group-list{border-top:1px solid var(--line);margin-top:clamp(40px,6vw,72px);}
.gco{display:grid;gap:8px 32px;padding:clamp(24px,3.4vw,40px) 0;border-bottom:1px solid var(--line);}
@media (min-width:820px){.gco{grid-template-columns:280px 1fr;align-items:baseline;}}
.gco h3{font-size:clamp(26px,3vw,38px);}
.gco p{color:var(--mut);max-width:60ch;}
/* boundaries */
.nots{display:grid;gap:clamp(18px,2.5vw,28px);margin-top:clamp(44px,6.5vw,80px);}
@media (min-width:880px){.nots{grid-template-columns:1fr 1fr;}}
.not{border:2px solid var(--line-2);padding:clamp(26px,3.4vw,42px);display:grid;gap:14px;align-content:start;transition:border-color .18s ease,background-color .18s ease;}
.not:hover{border-color:var(--white);background:rgba(255,255,255,.03);}
.not .x{
  width:44px;height:44px;flex:none;background:var(--hiviz);position:relative;
}
.not .x::before,.not .x::after{content:"";position:absolute;left:50%;top:50%;width:22px;height:2.5px;background:var(--ink-2);}
.not .x::before{transform:translate(-50%,-50%) rotate(45deg);}
.not .x::after{transform:translate(-50%,-50%) rotate(-45deg);}
.not h3{font-size:clamp(24px,2.7vw,32px);max-width:16ch;}
.not p{color:var(--mut);font-size:16px;max-width:52ch;}
.langs-line{
  margin-top:clamp(44px,6vw,72px);border-top:1px solid var(--line);padding-top:var(--sp-4);
  display:flex;flex-wrap:wrap;gap:10px 18px;align-items:baseline;
  font:600 15px/1.6 var(--disp);letter-spacing:.1em;text-transform:uppercase;color:var(--mut);
}
.langs-line b{color:var(--hiviz);font-weight:600;}
/* resources */
.res-list{border-top:1px solid var(--line);margin-top:clamp(40px,6vw,72px);}
.res{display:grid;gap:10px 36px;padding:clamp(26px,3.6vw,44px) 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;transition:background-color .18s ease;position:relative;}
@media (min-width:880px){.res{grid-template-columns:130px 1fr auto;align-items:center;}}
.res:hover{background:rgba(255,255,255,.04);}
.res .rt{font:600 13px/1 var(--disp);letter-spacing:.2em;text-transform:uppercase;color:var(--mut-2);}
.res h3{font-size:clamp(23px,2.8vw,32px);max-width:22ch;}
.res p{color:var(--mut);font-size:15.5px;max-width:64ch;margin-top:8px;}
.res .go{font:600 16px/1 var(--disp);letter-spacing:.1em;text-transform:uppercase;color:var(--hiviz);display:inline-flex;align-items:center;gap:10px;min-height:44px;}
.res:hover .go{text-decoration:underline;text-underline-offset:5px;}
/* faq */
.faq-list{margin-top:clamp(40px,6vw,72px);border-top:1px solid var(--ink-line);max-width:900px;}
.faq{border-bottom:1px solid var(--ink-line);}
.faq summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;gap:20px;justify-content:space-between;
  padding:clamp(20px,2.6vw,28px) 4px;min-height:44px;
  font:600 clamp(20px,2.4vw,26px)/1.15 var(--disp);text-transform:uppercase;letter-spacing:.02em;
  transition:color .15s ease;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary:hover{color:rgba(20,22,28,.7);}
.faq summary .pm{width:18px;height:18px;position:relative;flex:none;}
.faq summary .pm::before,.faq summary .pm::after{content:"";position:absolute;background:var(--ink);left:0;top:8px;width:18px;height:2px;transition:transform .2s ease;}
.faq summary .pm::after{transform:rotate(90deg);}
.faq[open] summary .pm::after{transform:rotate(0deg);}
.faq .a{padding:0 4px clamp(22px,2.8vw,30px);color:var(--dmut);max-width:70ch;font-size:16px;}
/* assessment */
.assess{position:relative;}
.assess .shead .sno{-webkit-text-stroke:2.5px rgba(124,174,63,.6);font-size:clamp(130px,17vw,230px);top:-48px;right:-6px;}
@supports not (-webkit-text-stroke:1px black){.assess .shead .sno{color:rgba(124,174,63,.16);}}
.assess-grid{display:grid;gap:clamp(40px,6vw,72px);}
@media (min-width:980px){.assess-grid{grid-template-columns:1.05fr 1fr;align-items:start;}}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:2px;border-top:1px solid var(--line);}
.ticks li{display:flex;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);color:rgba(255,255,255,.88);font-size:16px;}
.ticks .tk{width:22px;height:22px;flex:none;background:var(--hiviz);position:relative;margin-top:2px;}
.ticks .tk::after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid var(--ink-2);border-width:0 2.5px 2.5px 0;transform:rotate(42deg);}
.channels{display:flex;flex-wrap:wrap;gap:10px 22px;font:600 15px/1.6 var(--disp);letter-spacing:.1em;text-transform:uppercase;color:var(--mut);}
.channels a{color:var(--white);text-decoration:none;border-bottom:1px solid var(--line-2);}
.channels a:hover{border-bottom-color:var(--hiviz);color:var(--hiviz);}
.formcard{background:var(--white);color:var(--ink);border-top:10px solid var(--hiviz);padding:clamp(26px,3.6vw,44px);box-shadow:0 34px 80px rgba(0,0,0,.5);}
.formcard h3{font-size:clamp(26px,3vw,34px);}
.formcard .sub{color:var(--dmut);margin-top:8px;font-size:15.5px;}
.field{display:grid;gap:8px;margin-top:18px;}
.field label{font:600 13px/1 var(--disp);letter-spacing:.16em;text-transform:uppercase;color:rgba(20,22,28,.85);}
.field input,.field select,.field textarea{
  width:100%;min-height:52px;padding:14px 14px;border:1px solid rgba(20,22,28,.35);background:var(--white);
  font:400 16px/1.4 var(--body);color:var(--ink);
  transition:border-color .15s ease,box-shadow .15s ease;
}
.field textarea{min-height:130px;resize:vertical;}
.field input:hover,.field select:hover,.field textarea:hover{border-color:rgba(20,22,28,.6);}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 2px var(--ink);}
.formcard .btn{width:100%;margin-top:24px;}
.privacy{margin-top:16px;font-size:13.5px;color:rgba(20,22,28,.62);}
.privacy a{color:var(--ink);}
/* footer */
footer{background:var(--ink-2);}
.foot-grid{display:grid;gap:clamp(36px,5vw,56px);padding-block:clamp(56px,8vw,88px) clamp(36px,5vw,56px);}
@media (min-width:900px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;}}
.foot-tag{color:var(--mut);max-width:34ch;font-size:15.5px;margin-top:18px;}
.fcol .fh{font:600 13px/1 var(--disp);letter-spacing:.2em;text-transform:uppercase;color:var(--mut-2);margin-bottom:16px;}
.fcol ul{list-style:none;margin:0;padding:0;display:grid;}
.fcol a{display:inline-flex;align-items:center;min-height:38px;color:var(--mut);text-decoration:none;font-size:15.5px;transition:color .15s ease;}
.fcol a:hover{color:var(--hiviz);}
.baseline{
  border-top:1px solid var(--line);padding-block:26px;
  display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;
  font:600 13px/1.7 var(--disp);letter-spacing:.14em;text-transform:uppercase;color:var(--mut-2);
}
/* reveal motion */
@media (prefers-reduced-motion:no-preference){
  html.js .rv{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease;}
  html.js .rv.on{opacity:1;transform:none;}
  .rv-d1{transition-delay:.08s;}
  .rv-d2{transition-delay:.16s;}
  .rv-d3{transition-delay:.24s;}
}
/* mobile */
@media (max-width:1080px){
  .nav{
    position:fixed;inset:0;z-index:110;display:none;
    background:var(--ink-2);
    flex-direction:column;align-items:flex-start;justify-content:flex-start;
    padding:96px clamp(20px,6vw,40px) 40px;gap:6px;overflow:auto;
  }
  body.nav-open .nav{display:flex;}
  body.nav-open{overflow:hidden;}
  body.nav-open .top{background:var(--ink-2);}
  .nav a.nl{font-size:26px;min-height:52px;width:100%;border-bottom:1px solid var(--line);}
  .nav .lang{width:100%;margin-top:14px;}
  .nav .lang-menu{position:static;width:100%;margin-top:8px;}
  .nav .btn{margin-top:18px;width:100%;}
  .menu-btn{display:block;position:relative;z-index:120;}
  .shead .sno{position:static;order:-1;font-size:clamp(84px,24vw,120px);}
  .svc-side{position:static;}
}

/* ===== Interior page components (appended to extracted homepage CSS) ===== */
.nav-cta{padding:12px 18px;font-size:13px;}
.lang-soon{display:flex;gap:8px;align-items:center;padding:9px 12px;font-size:13.5px;color:rgba(20,22,28,.38);cursor:default;}
.lang-soon span{font-family:var(--mono,monospace);font-size:10.5px;letter-spacing:.06em;}
.lang-menu a span{margin-right:8px;}

.page-hero{background:linear-gradient(180deg,#1B3D5E 0%,var(--ink-2,#0e1015) 78%);padding:clamp(120px,16vh,180px) 0 clamp(48px,7vw,80px);}
.page-hero .kick{margin-bottom:14px;}
.page-hero h1{font-size:clamp(34px,5vw,60px);max-width:24ch;color:#fff;}
.page-hero .lead{margin-top:18px;max-width:62ch;}
.page-hero .hero-actions{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap;}
.page-hero .updated{margin-top:18px;font:600 12px/1 var(--disp);letter-spacing:.14em;text-transform:uppercase;color:var(--hiviz);}

.prose{max-width:76ch;}
.prose h2{font-size:clamp(24px,3vw,34px);margin:clamp(36px,5vw,52px) 0 14px;}
.prose h3{font-size:clamp(18px,2vw,22px);margin:28px 0 10px;}
.prose p{margin:0 0 16px;color:inherit;line-height:1.7;}
.sec:not(.light) .prose p, .sec:not(.light) .prose li{color:rgba(255,255,255,.82);}
.light .prose p,.light .prose li{color:rgba(20,22,28,.85);}
.prose ul,.prose ol{margin:0 0 18px 20px;display:grid;gap:8px;}
.prose a{color:inherit;}
.prose .note{font-size:13.5px;opacity:.75;}
.prose blockquote{border-left:4px solid var(--hiviz);padding:6px 0 6px 18px;margin:20px 0;font-weight:600;}
.callout{border:1px solid rgba(124,174,63,.5);border-left:5px solid var(--hiviz);background:rgba(124,174,63,.10);padding:20px 22px;margin:26px 0;}
.callout p{margin:0;}
.src{font-size:12.5px;opacity:.66;margin:10px 0 0;}
.src a{color:inherit;}

.cmp-wrap{overflow-x:auto;margin:clamp(28px,4vw,40px) 0;border:1px solid var(--line);}
table.cmp{border-collapse:collapse;width:100%;min-width:820px;font-size:14px;}
table.cmp th,table.cmp td{border:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top;color:rgba(255,255,255,.85);}
table.cmp thead th{font:700 13px/1.3 var(--disp);letter-spacing:.08em;text-transform:uppercase;background:var(--ink-3);color:#fff;}
table.cmp tbody th{font-weight:700;color:#fff;background:rgba(255,255,255,.03);}
table.cmp .hi{background:rgba(124,174,63,.12);color:#fff;}
.light table.cmp th,.light table.cmp td{color:rgba(20,22,28,.85);border-color:rgba(20,22,28,.18);}
.light table.cmp thead th{background:var(--ink);color:#fff;}

.step-block{display:grid;grid-template-columns:minmax(80px,140px) minmax(0,1fr);gap:clamp(16px,3vw,40px);padding:clamp(28px,4vw,44px) 0;border-top:1px solid var(--line);}
.step-block:last-of-type{border-bottom:1px solid var(--line);}
.step-block .sno{position:static;font-size:clamp(56px,7vw,96px);}
.step-body h2{font-size:clamp(22px,2.6vw,30px);margin-bottom:12px;}
.step-body p{color:rgba(255,255,255,.82);margin:0 0 12px;line-height:1.65;}
.step-body ul{margin:0 0 12px 18px;display:grid;gap:8px;color:rgba(255,255,255,.82);}
.light .step-body p,.light .step-body ul{color:rgba(20,22,28,.85);}
@media(max-width:700px){.step-block{grid-template-columns:1fr;gap:8px;}}

.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:clamp(24px,4vw,36px) 0 10px;}
.stat-row .stat{background:var(--ink-3);padding:22px 20px;}
.stat-row b{display:block;font:700 clamp(26px,3vw,38px)/1 var(--disp);letter-spacing:.02em;color:var(--hiviz);}
.stat-row span{display:block;margin-top:8px;font-size:13.5px;color:rgba(255,255,255,.72);line-height:1.5;}
@media(max-width:820px){.stat-row{grid-template-columns:1fr;}}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:clamp(24px,4vw,36px);}
.gcard{background:var(--ink-2);padding:26px 24px;}
.gcard h3{font-size:19px;margin-bottom:8px;}
.gcard p{font-size:14.5px;color:rgba(255,255,255,.78);line-height:1.6;}
.light .gcard{background:#fff;}
.light .gcard p{color:rgba(20,22,28,.8);}
@media(max-width:860px){.grid3{grid-template-columns:1fr;}}

.img-band{position:relative;margin:0;}
.img-band img{display:block;width:100%;height:clamp(280px,46vh,460px);object-fit:cover;}
.band-tag{position:absolute;left:0;bottom:0;background:var(--ink-2);color:#fff;font:600 12px/1 var(--disp);letter-spacing:.14em;text-transform:uppercase;padding:12px 18px;}

.quoteband{background:var(--ink-2);padding:clamp(56px,8vw,96px) 0;border-block:1px solid var(--line);}
.quoteband blockquote{font:700 clamp(26px,3.6vw,44px)/1.15 var(--disp);letter-spacing:.01em;text-transform:uppercase;max-width:26ch;color:#fff;}
.quoteband em{font-style:normal;color:var(--hiviz);}

.cta-band{background:var(--ink-3);border-block:1px solid var(--line);padding:clamp(48px,7vw,84px) 0;}
.cta-band-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,56px);align-items:center;}
.cta-band h2{font-size:clamp(26px,3.4vw,42px);}
.cta-band-actions{display:grid;gap:12px;justify-items:start;}
@media(max-width:860px){.cta-band-in{grid-template-columns:1fr;}}

.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;}
.formcard .field select{appearance:auto;}
.site-foot{background:var(--ink-2);}
body.nav-open .nav{display:flex;}

/* ===== Audit fixes (4 Aug 2026) ===== */
/* 1. Disabled language rows were dark-on-dark (ratio 1.05) */
.lang-menu .lang-soon{color:rgba(255,255,255,.42);}
.lang-menu .lang-soon span{color:rgba(255,255,255,.30);}
/* 2. Tick lists inside light sections were white-on-paper (ratio 1.15) */
.light .ticks li{color:rgba(20,22,28,.86);border-bottom-color:rgba(20,22,28,.14);}
.light .ticks .tk::after{border-color:#fff;}
/* 3. Global vertical rhythm: kill the 330-420px padding stacks */
:root{--sec:clamp(56px,8vw,96px);}
.ruler + .shead, .ruler + header.shead, .wrap > .ruler + header{margin-top:clamp(26px,4vw,42px)!important;}
.quoteband{padding:clamp(36px,5vw,60px) 0;}
.step-block{padding:clamp(22px,3vw,34px) 0;}
.page-hero{padding:clamp(104px,14vh,150px) 0 clamp(40px,6vw,64px);}
.cta-band{padding:clamp(40px,6vw,68px) 0;}
/* 4. Assessment stencil 10 removed at the owner's request (rule kept intentionally empty
   so future sessions do not reintroduce a numeral here). */
/* 5. Headline wrapping: no orphan words in section heads */
.shead h2{max-width:16ch;text-wrap:balance;}
/* 6. Logged-in admin bar overlapped the fixed header */
body.admin-bar .top{top:32px;}
@media(max-width:782px){body.admin-bar .top{top:46px;}}
/* 7. Second-pass rhythm: quoteband adjacency + mobile stacks */
.quoteband{padding:clamp(30px,4vw,48px) 0;}
.quoteband + .sec, .quoteband + section.sec{padding-top:clamp(40px,6vw,72px);}
@media(max-width:700px){:root{--sec:clamp(44px,9vw,64px);}}
@media(max-width:700px){.quoteband{padding:24px 0;}}
/* 8. Component contract: bare .btn is the primary green action, .btn-line the outlined secondary.
   Interior templates use these two; home uses btn-hi/btn-ghost. All four now resolve. */
.btn:not(.btn-ghost):not(.btn-ink):not(.btn-line){background:var(--hiviz);color:var(--ink-2);}
.btn:not(.btn-ghost):not(.btn-ink):not(.btn-line):hover{background:var(--white);color:var(--ink-2);}
.light .btn:not(.btn-ghost):not(.btn-ink):not(.btn-line):hover{background:var(--ink);color:var(--white);}
.btn-line{border-color:var(--line-2);color:var(--white);background:transparent;}
.btn-line:hover{border-color:var(--white);background:rgba(255,255,255,.07);}
.light .btn-line{border-color:rgba(20,22,28,.45);color:var(--ink);}
.light .btn-line:hover{border-color:var(--ink);background:rgba(20,22,28,.06);}
button.btn{-webkit-appearance:none;appearance:none;}
/* 9. FAQ contract on dark sections (component was designed on a light section) */
.sec:not(.light) .faq-list{border-top-color:var(--line);}
.sec:not(.light) .faq{border-bottom-color:var(--line);}
.sec:not(.light) .faq summary:hover{color:var(--hiviz);}
.sec:not(.light) .faq summary .pm::before,
.sec:not(.light) .faq summary .pm::after{background:var(--hiviz);}
.sec:not(.light) .faq .a{color:rgba(255,255,255,.80);}
.faq .a p{margin:0 0 12px;font-size:inherit;color:inherit;line-height:1.65;}
.faq .a p:last-child{margin:0;}
.faq summary:focus-visible{outline:2px solid var(--hiviz);outline-offset:4px;}

/* ===== Fleet audit fixes (4 Aug 2026, second wave) ===== */
/* Photo bands: .ph's absolute-position pattern collapsed .img-band figures to 0 height */
.img-band.ph{height:clamp(280px,46vh,460px);}
.img-band.ph img{position:static;height:100%;}
/* Bare paragraphs dropped straight into .wrap: restore measure and rhythm.
   Scoped to UNCLASSED paragraphs only: utility paragraphs (.routes-foot, .tlink-row,
   .src, .lead, .kick) carry their own spacing and must not be reset by this. */
.sec .wrap > p:not([class]){max-width:76ch;margin:0 0 16px;}
.sec .wrap > h2{margin-bottom:14px;}
/* The featured route card deliberately protrudes 18px (margin-block:-18px); the link
   beneath it needs clearance or the card lands on top of the text. */
@media(min-width:940px){.routes-foot{margin-top:calc(var(--sp-4) + 24px);}}
/* Hero decal removed at the owner's request, so the kicker no longer needs to keep clear
   of it and can use the full column width again. */
/* Inline text links: keep the caps styling but let them wrap as text inside copy */
p:not(.tlink-row):not(.routes-foot) .tlink, li .tlink{display:inline;min-height:0;gap:0;}
.prose a.tlink{color:var(--hiviz);}
.light .tlink, .light .prose a.tlink, .light .faq .a a.tlink{color:var(--ink);}
/* Language switcher: suppress the browser disclosure triangle */
.lang summary{list-style:none;}
.lang summary::-webkit-details-marker{display:none;}
/* Sector cards: pin the Explore links to the card base (margin-top:auto needs flex) */
.scard-body{display:flex;flex-direction:column;}
/* Four-card grid3: balanced 2x2; generic guard fills any future orphan cell */
.grid3.g4{grid-template-columns:repeat(2,1fr);}
@media(max-width:860px){.grid3.g4{grid-template-columns:1fr;}}
.grid3:not(.g4) > *:nth-child(3n+1):last-child{grid-column:1/-1;}
/* Display-type wrapping: balance everywhere; cap section heads by the space left of the numeral */
.shead h2{max-width:26ch;}
/* Reserve space for the stencil numeral ONLY on full-width section heads. Applying this
   to every .shead starved headings inside narrow grid columns down to one word per line. */
@media(min-width:861px){.wrap > .shead h2, .wrap > header.shead h2{max-width:min(26ch,calc(100% - 240px));}}
.not h3{max-width:22ch;}
.page-hero h1,.route h3,.gco h3,.res h3,.not h3,.step-body h2,.badge{text-wrap:balance;}
/* CTA pairs: no mixed one-line/two-line buttons, but only where the track is wide
   enough to hold them. Below 1241px the band stacks and the buttons fill the row.
   The previous 861px nowrap pushed 484px buttons out of a 358px track. */
@media(min-width:1241px){.cta-band-actions .btn{white-space:nowrap;}}
@media(min-width:861px){.hero-actions .btn{white-space:nowrap;}}
@media(max-width:1240px){.cta-band-in{grid-template-columns:1fr;}}
@media(min-width:1241px){.cta-band-in{grid-template-columns:minmax(0,1.2fr) max-content;}.cta-band-actions{justify-items:stretch;}}
/* Credentials band heading collided with the copy column */
.group-list h3{overflow-wrap:anywhere;padding-right:18px;}
/* Home form stencil 10 removed at the owner's request; sizing rules deleted with it. */
/* Ordered step lists (thank-you next steps): system numerals, not browser decimals */
ol.next-steps{margin:0 0 18px;padding-left:0;list-style:none;counter-reset:n;}
ol.next-steps > li{counter-increment:n;display:flex;gap:12px;}
ol.next-steps > li::before{content:counter(n,decimal-leading-zero);font:700 15px/1.6 var(--disp);color:var(--hiviz);letter-spacing:.08em;}
.light ol.next-steps > li::before{color:var(--ink);}
/* Guide comparison table: swipe cue on phones */
@media(max-width:720px){.cmp-wrap::before{content:"Swipe to compare all four routes \2192";display:block;font:600 12px/1 var(--disp);letter-spacing:.12em;text-transform:uppercase;padding:10px 12px;opacity:.65;}}
/* ===== Hero and header, first-impression pass (4 Aug 2026) ===== */
/* 1. Larger wordmark. The 34px mark read as an afterthought next to 15px nav caps. */
.brand-mark{height:48px;width:auto;display:block;}
@media(max-width:700px){.brand-mark{height:40px;}}
.top-in{min-height:84px;}
.foot-grid .brand img{height:56px;}
/* 2. Language selector sits hard right, after the CTA. */
.top-in .nav .lang{margin-left:clamp(10px,1.4vw,20px);}
.lang-menu{right:0;left:auto;}
/* 3. Scrim. The old header gradient and hero overlay were far too weak: over a bright
      photograph the green kicker and the nav links washed out completely. Two layered
      gradients now guarantee legibility whatever image is behind them. */
.top{background:linear-gradient(180deg,rgba(10,12,16,.88) 0%,rgba(10,12,16,.55) 60%,rgba(10,12,16,0) 100%);}
.hero .ph::after{
  background:
    linear-gradient(90deg,rgba(10,12,16,.86) 0%,rgba(10,12,16,.62) 42%,rgba(10,12,16,.18) 72%,rgba(10,12,16,0) 100%),
    linear-gradient(180deg,rgba(10,12,16,.70) 0%,rgba(10,12,16,.34) 34%,rgba(10,12,16,.52) 62%,rgba(14,16,21,.94) 90%,var(--ink) 100%);
}
.hero img{object-position:center 42%;}
/* 4. Nav and kicker legibility over photography. */
.nav a.nl{color:rgba(255,255,255,.86);}
.hero .kick{color:#9BD154;}
/* 4b. Header grew from 72px to 84px, so sticky offsets need to clear it. */
@media(min-width:940px){.svc-side{top:112px;}}
/* 5. The headline is longer than the one the 9ch cap was tuned for. */
.hero h1{max-width:13ch;}
@media(max-width:700px){.hero h1{max-width:11ch;}}

/* ===== Exhibition calendar cards ===== */
.ev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:clamp(28px,4vw,44px);}
.evcard{background:var(--ink-2);padding:24px 22px 18px;display:flex;flex-direction:column;}
.light .evcard{background:#fff;}
.ev-date{font:700 13px/1.25 var(--disp);letter-spacing:.12em;text-transform:uppercase;color:var(--hiviz);margin:0 0 10px;}
.light .ev-date{color:#4d7020;}
.evcard h3{font-size:clamp(19px,1.7vw,23px);margin:0 0 8px;line-height:1.1;}
.ev-where{font-size:13px;color:rgba(255,255,255,.62);margin:0 0 12px;line-height:1.45;}
.light .ev-where{color:rgba(20,22,28,.62);}
.ev-why{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.80);margin:0 0 14px;}
.light .ev-why{color:rgba(20,22,28,.82);}
.ev-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 6px;}
.ev-tag{font:600 10.5px/1 var(--disp);letter-spacing:.12em;text-transform:uppercase;padding:6px 9px;border:1px solid var(--line-2);color:rgba(255,255,255,.72);}
.light .ev-tag{border-color:rgba(20,22,28,.28);color:rgba(20,22,28,.72);}
/* Hairlines drawn by the container fill meant every EMPTY trailing cell rendered as a
   pale slab. Outline each card instead so unfilled cells simply show the section ground. */
.ev-grid{background:transparent;border:0;}
.evcard{outline:1px solid var(--line);}
.light .evcard{outline-color:rgba(20,22,28,.16);}
.evcard-slim .ev-date{color:rgba(255,255,255,.60);}
.light .evcard-slim .ev-date{color:rgba(20,22,28,.58);}
.evcard .tlink-row{margin:auto 0 0;padding-top:6px;}
.evcard .tlink{font-size:13px;}
@media(max-width:1100px){.ev-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:700px){.ev-grid{grid-template-columns:1fr;}}

/* Section lead sat flush against the first body paragraph (p margin is bottom-only) */
.shead + .prose, .shead + .ticks, .shead + .grid3, .shead + .stat-row,
.shead + p, .shead + .ev-grid, .shead + .cmp-wrap, .shead + .faq-list{margin-top:clamp(18px,2.4vw,30px);}
/* A paragraph following a block component had no top margin and sat flush on its border */
.sec .wrap > .grid3 + p, .sec .wrap > .ev-grid + p, .sec .wrap > .stat-row + p,
.sec .wrap > .cmp-wrap + p, .sec .wrap > .ticks + p{margin-top:clamp(20px,3vw,32px);}
/* Sector card CTAs: the auto margin was on the inline-flex link, not the flex item */
.scard-body .tlink-row{margin-top:auto;}
/* .note was only muted inside .prose, so hero meta lines shouted louder than the standfirst */
.note{font-size:13.5px;opacity:.75;margin-top:10px;}
/* Separators travel with the item that follows, so a line can never end on a stranded dot */
.channels > * + *::before{content:"\00B7";margin-right:14px;opacity:.55;}
/* Footer link tap targets on phones */
@media(max-width:700px){.fcol li a{display:inline-flex;align-items:center;min-height:44px;}}
