/* Origin Pi - shared site system (content pages). Mirrors the converged homepage (design-context.md). */
:root{
  --paper:#FCFCFA; --paper-2:#EBE7DA; --ink:#14241A; --ink-dim:rgba(20,36,26,.68); --ink-faint:rgba(20,36,26,.40);
  --rule:rgba(20,36,26,.12); --rule-2:rgba(20,36,26,.07); --deep:#0E2D20; --green:#1E5A38; --canopy:#3C8A5C;
  --amber:#C4860A; --amber-hi:#E8B23A; --rev:#FCFCFA; --rev-dim:rgba(252,252,250,.62); --rev-faint:rgba(252,252,250,.40); --rule-rev:rgba(252,252,250,.16);
  --f-display:'Newsreader',Georgia,serif; --f-logo:'Fraunces',Georgia,serif; --f-body:'Familjen Grotesk',system-ui,sans-serif; --f-mono:'IBM Plex Mono',ui-monospace,monospace;
  --ease:cubic-bezier(0.16,1,0.3,1); --spring:cubic-bezier(0.34,1.56,0.64,1); --maxw:1280px; --pad:clamp(20px,4.5vw,60px);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
html{overflow-x:hidden}
body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--amber);color:var(--rev)}
.skip{position:absolute;top:-100%;left:1rem;z-index:300;background:var(--amber);color:var(--deep);padding:.5rem 1rem;font-family:var(--f-mono);font-size:13px}
.skip:focus{top:1rem}
:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}
#scrollBar{position:fixed;top:0;left:0;height:2px;width:0%;background:linear-gradient(90deg,var(--amber),var(--canopy));z-index:300;transition:width 80ms linear}

/* NAV */
.nav{position:sticky;top:0;z-index:100;background:rgba(252,252,250,.78);backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
.nav.stuck{border-bottom-color:var(--rule)}
.nav-in{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{font-family:var(--f-logo);font-weight:600;font-size:23px;letter-spacing:-.01em;font-variation-settings:'opsz' 48}
.brand .pi{color:var(--green)}.brand .dot{color:var(--amber)}
.nav-links{display:flex;gap:4px}
.nav-links a{position:relative;font-family:var(--f-mono);font-size:11.5px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-dim);padding:8px 12px;transition:color .18s}
.nav-links a::after{content:"";position:absolute;left:12px;right:12px;bottom:5px;height:1.5px;background:var(--amber);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.nav-links a:hover{color:var(--ink)}.nav-links a:hover::after{transform:scaleX(1)}
.nav-right{display:flex;align-items:center;gap:10px}
.nav-cta{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--rev);background:var(--ink);padding:10px 18px;border-radius:999px;transition:background .2s,transform .2s var(--spring)}
.nav-cta:hover{background:var(--green);transform:translateY(-1px)}
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:4px;width:40px;height:34px}
.nav-burger span{display:block;width:20px;height:2px;background:var(--ink);margin:0 auto;transition:transform .25s var(--ease),opacity .2s}
.nav.open .nav-burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav.open .nav-burger span:nth-child(2){opacity:0}
.nav.open .nav-burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:760px){
  .nav-burger{display:flex}
  .nav-links{position:absolute;top:74px;left:auto;right:0;width:80%;flex-direction:column;gap:0;background:var(--paper);border:1px solid var(--rule);border-top:0;padding:6px 0 12px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .22s,transform .22s,visibility 0s linear .22s;box-shadow:-4px 12px 28px -8px rgba(13,31,23,.18)}
  .nav.open .nav-links{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .25s}
  .nav-links a{font-size:14px;font-weight:600;padding:14px var(--pad)}.nav-links a::after{display:none}
  .nav-trigger{font-size:14px;font-weight:600}
  .nav-caret{font-size:16px}
}

/* NAV DROPDOWN (Solutions) */
.nav-dd-wrap{position:relative;display:flex;align-items:center}
.nav-trigger{font-family:var(--f-mono);font-size:11.5px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-dim);padding:8px 12px;display:inline-flex;align-items:center;gap:6px;transition:color .18s;cursor:pointer}
.nav-trigger:hover,.nav-dd-wrap.is-open .nav-trigger{color:var(--ink)}
.nav-caret{font-size:8px;transition:transform .25s var(--ease)}
.nav-dd-wrap.is-open .nav-caret{transform:rotate(180deg)}
.nav-dd{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%) translateY(-6px);width:min(760px,calc(100vw - 32px));background:var(--paper);border:1px solid var(--rule);box-shadow:0 26px 60px -18px rgba(13,31,23,.28);opacity:0;visibility:hidden;transition:opacity .2s ease,transform .22s var(--ease),visibility 0s linear .22s;z-index:120}
.nav-dd::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--amber),var(--canopy))}
.nav-dd-wrap.is-open .nav-dd{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);transition:opacity .22s ease,transform .24s var(--ease)}
.nav-dd a::after{content:none!important}
.nav-dd-in{display:grid;grid-template-columns:repeat(3,1fr) .9fr;gap:clamp(14px,1.6vw,26px);padding:clamp(18px,2vw,26px)}
.nav-dd-h{font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);margin-bottom:8px}
.nav-dd-item{display:block;padding:8px 10px;border-radius:8px;transition:background .15s}
.nav-dd-item:hover{background:var(--paper-2)}
.ni-n{display:block;font-family:var(--f-body);font-size:14.5px;font-weight:600;color:var(--ink);letter-spacing:-.005em}
.ni-d{display:block;font-family:var(--f-body);font-size:12px;color:var(--ink-dim);margin-top:1px;line-height:1.35}
.nav-dd-feat{background:var(--deep);color:var(--rev);border-radius:10px;padding:18px;display:flex;flex-direction:column;justify-content:center;gap:8px}
.nav-dd-feat-k{font-family:var(--f-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber-hi);display:inline-flex;align-items:center;gap:7px}
.nav-dd-feat-t{font-family:var(--f-display);font-style:italic;font-weight:500;font-size:18px;line-height:1.15;color:var(--rev)}
.nav-dd-feat-cta{font-family:var(--f-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--amber-hi);margin-top:2px}
.nav-dd-feat-cta:hover{color:var(--amber)}
@media(max-width:760px){
  .nav-dd-wrap{display:block;width:100%}
  .nav-trigger{width:100%;justify-content:space-between;padding:14px var(--pad)}
  .nav-dd{position:static;transform:none;width:100%;border:0;box-shadow:none;opacity:1;visibility:hidden;height:0;overflow:hidden;transition:none}
  .nav-dd::before{display:none}
  .nav-dd-wrap.is-open .nav-dd{visibility:visible;height:auto;transform:none}
  .nav-dd-in{grid-template-columns:1fr;gap:6px;padding:4px var(--pad) 12px}
  .nav-dd-h{margin-bottom:4px}
  .nav-dd-feat{display:none}
}

/* BUTTONS */
.btn{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:15px 28px;border-radius:999px;display:inline-flex;align-items:center;gap:10px;transition:background .22s,color .22s,border-color .22s,transform .22s var(--spring)}
.btn-fill{background:var(--ink);color:var(--rev)}.btn-fill:hover{background:var(--green);transform:translateY(-2px)}
.btn-line{border:1px solid var(--rule);color:var(--ink)}.btn-line:hover{border-color:var(--ink);transform:translateY(-2px)}
.btn .a{transition:transform .22s var(--spring)}.btn:hover .a{transform:translateX(4px)}

/* BREADCRUMB */
.crumb{max-width:var(--maxw);margin:0 auto;padding:18px var(--pad) 0;font-family:var(--f-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-faint)}
.crumb a{color:var(--ink-dim);transition:color .18s}.crumb a:hover{color:var(--green)}
.crumb .sep{color:var(--rule);margin:0 8px}

/* PAGE HERO (BLUF) */
.phero{padding:clamp(40px,6vw,80px) 0 clamp(40px,5vw,64px)}
.phero .eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin-bottom:20px}
.pulse{display:inline-block;width:7px;height:7px;background:var(--amber);border-radius:50%;animation:pa 2.4s ease-in-out infinite}
@keyframes pa{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}}
.ph-h1{font-family:var(--f-display);font-weight:600;font-size:clamp(38px,6.4vw,86px);line-height:.98;letter-spacing:-.03em;max-width:18ch;font-variation-settings:'opsz' 60}
.ph-h1 em{font-style:italic;color:var(--green)}
.bluf{font-family:var(--f-body);font-size:clamp(18px,1.7vw,23px);line-height:1.5;color:var(--ink-dim);max-width:56ch;margin-top:clamp(20px,3vw,30px)}
.bluf strong{color:var(--ink);font-weight:600}
.phero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:clamp(26px,3.5vw,38px)}

/* SECTION + gutter */
.section{padding:clamp(64px,8vw,120px) 0;position:relative}
/* ===== visible curved section dividers: each section's own colour rises into the
   section above on a natural curve (a different curve per section), plus a faint
   hand-drawn line so same-colour boundaries still read. ===== */
.section::after{content:"";position:absolute;left:0;right:0;bottom:100%;height:clamp(18px,2.6vw,38px);z-index:4;pointer-events:none;background:no-repeat bottom/100% 100%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0,40 L1440,40 L1440,20 C1150,29 940,13 640,22 C380,30 180,25 0,17 Z' fill='%23FCFCFA'/%3E%3C/svg%3E")}
.section:nth-of-type(3n+2)::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0,40 L1440,40 L1440,24 C1130,15 900,30 600,21 C360,14 170,26 0,22 Z' fill='%23FCFCFA'/%3E%3C/svg%3E")}
.section:nth-of-type(3n)::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0,40 L1440,40 L1440,18 C1200,27 980,12 660,24 C400,32 180,17 0,25 Z' fill='%23FCFCFA'/%3E%3C/svg%3E")}
.band-2::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0,40 L1440,40 L1440,22 C1120,30 920,14 620,23 C360,30 180,27 0,19 Z' fill='%23EBE7DA'/%3E%3C/svg%3E")}
.band-green::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0,40 L1440,40 L1440,17 C1180,25 960,33 660,26 C400,20 200,15 0,24 Z' fill='%231E5A38'/%3E%3C/svg%3E")}
.band-deep::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0,40 L1440,40 L1440,26 C1160,17 900,23 600,29 C380,34 170,29 0,21 Z' fill='%230E2D20'/%3E%3C/svg%3E")}
.phero::after{display:none}
@media(prefers-reduced-motion:reduce){.section::before,.section::after{animation:none}}
.row{display:grid;grid-template-columns:190px 1fr;gap:clamp(24px,4vw,72px)}
@media(max-width:880px){.row{grid-template-columns:1fr;gap:18px}}
.idx{position:sticky;top:100px;align-self:start}
@media(max-width:880px){.idx{position:static;display:flex;align-items:baseline;gap:14px}}
.idx .no{font-family:var(--f-display);font-weight:400;font-size:clamp(40px,4vw,58px);line-height:.85;font-variation-settings:'opsz' 144}
.idx .no b{color:var(--amber)}
.idx .nm{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);margin-top:10px}
@media(max-width:880px){.idx .nm{margin-top:0}}
.h2{font-family:var(--f-display);font-weight:600;font-size:clamp(30px,4.4vw,56px);line-height:1.0;letter-spacing:-.025em;max-width:18ch;font-variation-settings:'opsz' 60}
.h2 em{font-style:italic;color:var(--green)}
.lede{font-family:var(--f-body);font-size:clamp(16px,1.5vw,19px);line-height:1.6;color:var(--ink-dim);max-width:50ch;margin-top:18px}

/* PROSE */
.prose{max-width:64ch}
.prose p{font-size:clamp(16px,1.3vw,18px);line-height:1.72;color:var(--ink-dim);margin-bottom:1.2rem}
.prose p strong{color:var(--ink);font-weight:600}
.prose h3{font-family:var(--f-display);font-weight:600;font-size:clamp(20px,2vw,26px);letter-spacing:-.01em;color:var(--ink);margin:2rem 0 .7rem}
.prose a{color:var(--green);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(28,82,51,.35)}
.prose a:hover{text-decoration-color:var(--green)}
.prose ul{list-style:none;margin:0 0 1.3rem;padding:0}
.prose ul li{position:relative;padding-left:22px;margin-bottom:.6rem;font-size:clamp(15px,1.3vw,17px);line-height:1.65;color:var(--ink-dim)}
.prose ul li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;background:var(--amber);border-radius:50%}

/* KEY POINTS (scannable, GEO-extractable) */
.points{list-style:none;margin:clamp(24px,3vw,36px) 0 0;padding:0;border-top:1px solid var(--ink)}
.points li{display:grid;grid-template-columns:42px 1fr;gap:clamp(14px,2vw,26px);padding:clamp(20px,2.4vw,30px) 0;border-bottom:1px solid var(--rule);align-items:baseline}
.points .pn{font-family:var(--f-mono);font-size:12px;color:var(--amber)}
.points .ph{font-family:var(--f-display);font-weight:600;font-size:clamp(20px,2.2vw,28px);letter-spacing:-.01em;margin-bottom:.4rem}
.points .pp{font-family:var(--f-body);font-size:15.5px;line-height:1.6;color:var(--ink-dim);max-width:60ch}

/* FAQ (GEO/AEO surface; native details for a11y) */
.faq{max-width:760px;margin-top:clamp(20px,3vw,32px);border-top:1px solid var(--ink)}
.faq details{border-bottom:1px solid var(--rule)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:clamp(18px,2.2vw,26px) 0;font-family:var(--f-display);font-weight:600;font-size:clamp(18px,1.9vw,24px);letter-spacing:-.01em;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--f-mono);font-size:22px;color:var(--amber);transition:transform .3s var(--spring);line-height:1}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .fa{font-family:var(--f-body);font-size:clamp(15px,1.3vw,17px);line-height:1.7;color:var(--ink-dim);padding:0 0 clamp(20px,2.2vw,26px);max-width:64ch}
.faq .fa a{color:var(--green);text-decoration:underline;text-underline-offset:3px}

/* RELATED LINKS (internal linking) */
.related{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,20px);margin-top:clamp(24px,3vw,36px)}
@media(max-width:760px){.related{grid-template-columns:1fr}}
.related a{display:block;padding:clamp(22px,2.4vw,30px);border:1px solid var(--rule);background:var(--paper-2);transition:border-color .25s,transform .3s var(--ease),background .25s}
.related a:hover{border-color:var(--green);transform:translateY(-3px);background:var(--paper)}
.related .rk{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--amber);margin-bottom:10px}
.related .rt{font-family:var(--f-display);font-weight:600;font-size:clamp(20px,2vw,26px);letter-spacing:-.01em;line-height:1.05;margin-bottom:8px}
.related .rd{font-family:var(--f-body);font-size:15px;line-height:1.58;color:var(--ink-dim)}

/* CTA BAND (one dark moment) */
.ctaband{background:var(--deep);color:var(--rev);text-align:left}
.ctaband .h2{color:var(--rev)}.ctaband .h2 em{color:var(--amber)}
.ctaband .lede{color:var(--rev-dim);max-width:54ch}
.ctaband .btn-line{border-color:var(--rule-rev);color:var(--rev)}.ctaband .btn-line:hover{border-color:var(--amber);color:var(--rev)}
.ctaband .btn-fill{background:var(--amber-hi);color:var(--deep)}.ctaband .btn-fill:hover{background:var(--amber)}

/* FOOTER */
.footer{background:var(--deep);color:var(--rev-dim);padding:clamp(56px,7vw,96px) var(--pad) clamp(30px,4vw,44px);border-top:1px solid rgba(252,252,250,.1)}
.footer-in{max-width:var(--maxw);margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:28px;padding-bottom:clamp(32px,4vw,48px);border-bottom:1px solid var(--rule-rev)}
.footer-brand{font-family:var(--f-logo);font-weight:600;font-size:clamp(40px,7vw,96px);letter-spacing:-.03em;line-height:.85;color:var(--rev);font-variation-settings:'opsz' 144}
.footer-brand .pi{color:var(--canopy)}.footer-brand .dot{color:var(--amber)}
.footer-col{font-family:var(--f-mono);font-size:11.5px;color:var(--rev-faint);margin-top:16px;line-height:1.9;max-width:42ch}.footer-col .amber{color:var(--amber)}
.footer-nav{display:flex;gap:40px;flex-wrap:wrap}
.footer-nav div{display:flex;flex-direction:column;gap:10px}
.footer-nav .h{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin-bottom:6px}
.footer-nav a{font-family:var(--f-body);font-size:14.5px;font-weight:500;color:rgba(252,252,250,.74);transition:color .18s}.footer-nav a:hover{color:var(--amber-hi)}
.footer-bottom{max-width:var(--maxw);margin:22px auto 0;font-family:var(--f-mono);font-size:10.5px;color:var(--rev-faint);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* REVEAL */
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.pulse{animation:none}}

/* View Transitions - smooth cross-document navigation (progressive enhancement) */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}

/* STICKY LEAD CAPTURE (.sf-*) - markup per page, styles + logic shared */
.sf-fab{position:fixed;right:clamp(16px,3vw,28px);bottom:clamp(16px,3vw,28px);z-index:400;display:inline-flex;align-items:center;gap:9px;padding:13px 20px;border-radius:999px;background:var(--ink);color:var(--rev);font-family:var(--f-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;box-shadow:0 10px 30px -8px rgba(13,31,23,.45);transition:background .2s,transform .2s var(--spring)}
.sf-fab:hover,.sf-open .sf-fab{background:var(--green);transform:translateY(-2px)}
.sf-fab .sf-dot{width:7px;height:7px;border-radius:50%;background:var(--amber-hi);animation:sf-blip 2s ease-in-out infinite}
@keyframes sf-blip{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}}
.sf-panel{position:fixed;right:clamp(16px,3vw,28px);bottom:calc(clamp(16px,3vw,28px) + 58px);z-index:401;width:min(360px,calc(100vw - 32px));background:var(--paper);border:1px solid var(--rule);box-shadow:0 26px 60px -16px rgba(13,31,23,.3);opacity:0;visibility:hidden;transform:translateY(12px) scale(.98);transform-origin:bottom right;transition:opacity .24s ease,transform .24s var(--ease),visibility 0s linear .24s}
.sf-open .sf-panel{opacity:1;visibility:visible;transform:none;transition:opacity .26s ease,transform .26s var(--ease)}
.sf-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 12px;border-bottom:1px solid var(--rule-2)}
.sf-title{font-family:var(--f-display);font-weight:600;font-size:21px;line-height:1.05;letter-spacing:-.01em;color:var(--ink)}
.sf-sub{font-family:var(--f-body);font-size:12.5px;color:var(--ink-dim);margin-top:4px}
.sf-close{font-family:var(--f-mono);font-size:18px;line-height:1;color:var(--ink-faint);padding:2px 4px}.sf-close:hover{color:var(--ink)}
.sf-body{padding:16px 20px 20px;display:flex;flex-direction:column;gap:11px}
.sf-field{display:flex;flex-direction:column;gap:5px}
.sf-field label{font-family:var(--f-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-dim);font-weight:500}
.sf-field input,.sf-field textarea{font-family:var(--f-body);font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--rule);padding:11px 12px}
.sf-field input:focus,.sf-field textarea:focus{outline:none;border-color:var(--ink)}
.sf-field.has-error input,.sf-field.has-error textarea{border-color:#9a2436;border-width:2px}
.sf-field textarea{resize:vertical;min-height:70px}
.sf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sf-check{display:flex;align-items:flex-start;gap:9px;font-family:var(--f-body);font-size:12px;line-height:1.45;color:var(--ink-dim);cursor:pointer}
.sf-check input{margin-top:2px;width:15px;height:15px;flex-shrink:0;accent-color:var(--green)}
.sf-check.has-error{outline:2px solid #9a2436;outline-offset:3px;border-radius:2px}
.sf-opt{font-family:var(--f-mono);font-size:9px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-dim)}
.sf-submit{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:13px 20px;border-radius:999px;background:var(--amber-hi);color:var(--ink);cursor:pointer;transition:background .2s,transform .2s}
.sf-submit:hover{background:var(--amber);transform:translateY(-1px)}
.sf-status{font-family:var(--f-body);font-size:13px;min-height:1.1em}.sf-status.ok{color:var(--green)}.sf-status.err{color:#9a2436}
.sf-note{font-family:var(--f-mono);font-size:9.5px;color:var(--ink-faint);line-height:1.6}
@media(max-width:560px){.sf-panel{right:0;left:auto;bottom:0;width:80%;transform:translateY(100%);transform-origin:bottom right}.sf-open .sf-panel{transform:none}.sf-fab{right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){.sf-fab,.sf-panel{transition:opacity .2s}.sf-fab .sf-dot{animation:none}}

/* ===== SOLUTION-PAGE COMPONENTS (designed sections, shared by all solution pages) ===== */
.band-2{background:var(--paper-2)}
.band-deep{background:var(--deep);color:var(--rev)}
.band-green{background:var(--green);color:var(--rev)}
.band-deep .h2,.band-green .h2,.band-deep .shead .se,.band-green .shead .se{color:var(--rev)}
.band-deep .h2 em,.band-green .h2 em{color:var(--amber)}
.band-deep .lede,.band-green .lede{color:var(--rev-dim)}
/* buttons on dark/green bands (fix blending) */
.band-deep .btn-line,.band-green .btn-line{border-color:rgba(252,252,250,.5);color:var(--rev)}
.band-deep .btn-line:hover,.band-green .btn-line:hover{border-color:var(--amber);color:var(--rev);background:rgba(252,252,250,.08);transform:translateY(-2px)}
.band-deep .btn-fill,.band-green .btn-fill{background:var(--amber-hi);color:var(--deep)}
.band-deep .btn-fill:hover,.band-green .btn-fill:hover{background:var(--amber);transform:translateY(-2px)}

/* ===== shortlisted effects (standardised across the site) ===== */
@property --beam-a{syntax:"<angle>";inherits:false;initial-value:0deg}
.fx-beam{position:relative;isolation:isolate}
.fx-beam::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.4px;background:conic-gradient(from var(--beam-a),transparent 0 60%,var(--amber-hi) 80%,var(--green) 92%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:beam-rot 5s linear infinite;pointer-events:none}
@keyframes beam-rot{to{--beam-a:360deg}}
/* glass: reserved for DARK / rich backdrops only (it needs something behind to read) */
.fx-glass{background:rgba(252,252,250,.06);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border:1px solid rgba(252,252,250,.14)}
@media(prefers-reduced-motion:reduce){.fx-beam::after{animation:none}}

/* split + aside (balance a text column so no blank right side) */
.split2{display:grid;grid-template-columns:1.5fr .9fr;gap:clamp(28px,4vw,64px);align-items:start}
@media(max-width:860px){.split2{grid-template-columns:1fr;gap:28px}}
.aside-card{border:1px solid var(--rule);background:var(--paper-2);padding:clamp(22px,2.4vw,30px);position:sticky;top:100px}
@media(max-width:860px){.aside-card{position:static}}
.aside-card .ak{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--amber);margin-bottom:16px}
.aside-card .arow{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--rule-2);align-items:baseline}
.aside-card .arow:last-child{border-bottom:0}
.aside-card .arow b{font-family:var(--f-body);font-weight:600;font-size:14.5px;color:var(--ink)}
.aside-card .arow span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.03em;color:var(--ink-dim);text-align:right}
.aside-card .at{font-family:var(--f-display);font-weight:600;font-size:clamp(20px,2vw,26px);letter-spacing:-.01em;color:var(--ink);margin-bottom:10px;line-height:1.05}
.aside-card .ap{font-family:var(--f-body);font-size:14.5px;line-height:1.6;color:var(--ink-dim);margin-bottom:18px}
.dotbg{position:relative}
.dotbg::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(var(--rule) 1.1px,transparent 1.1px);background-size:24px 24px;opacity:.6;-webkit-mask-image:radial-gradient(90% 80% at 72% 28%,#000,transparent 78%);mask-image:radial-gradient(90% 80% at 72% 28%,#000,transparent 78%)}
.dotbg>*{position:relative;z-index:1}

/* section header (full-width, replaces gutter on solution pages) */
.shead{max-width:62ch;margin-bottom:clamp(26px,3.4vw,46px)}
.shead .se{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin-bottom:14px}

/* hero with visual */
.phero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(36px,5vw,72px);align-items:center}
@media(max-width:900px){.phero-grid{grid-template-columns:1fr}.phero-grid .rec-card{display:none}}

/* structured-record card (business-brain visual) */
.rec-card{border:1px solid var(--rule);background:var(--paper);box-shadow:0 30px 72px -28px rgba(13,31,23,.3);transform:rotate(1deg);transition:transform .6s var(--ease)}
.rec-card:hover{transform:rotate(0)}
.rec-head{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid var(--rule);font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim)}
.rec-head .rd{width:7px;height:7px;border-radius:50%;background:var(--amber-hi);animation:pa 2.4s ease-in-out infinite}
.rec-row{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:12px 18px;border-bottom:1px solid var(--rule-2);align-items:baseline}
.rec-row:last-of-type{border-bottom:0}
.rec-k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--amber)}
.rec-v{font-family:var(--f-body);font-size:14px;color:var(--ink)}
.rec-foot{padding:12px 18px;border-top:1px solid var(--rule);font-family:var(--f-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--green);display:flex;align-items:center;gap:8px}
.rec-foot .rd{width:6px;height:6px;border-radius:50%;background:var(--green)}

/* before/after comparison */
.shift{display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(14px,2.2vw,32px);align-items:stretch}
@media(max-width:760px){.shift{grid-template-columns:1fr}.shift-mid{display:none}}
.shift-col{border:1px solid var(--rule);padding:clamp(22px,2.6vw,32px);background:var(--paper)}
.shift-col.now{border-color:rgba(28,82,51,.4);box-shadow:0 22px 54px -24px rgba(13,31,23,.22)}
.shift-tag{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:16px}
.shift-col.now .shift-tag{color:var(--green)}
.shift-step{position:relative;font-family:var(--f-body);font-weight:500;font-size:clamp(14px,1.3vw,16px);color:var(--ink-dim);padding:0 0 22px 30px;line-height:1.25;display:flex;align-items:center;min-height:22px}
.shift-step:last-child{padding-bottom:0;font-weight:600;color:var(--ink)}
.shift-col.now .shift-step:last-child{color:var(--green)}
.shift-step::before{content:"";position:absolute;left:5.5px;top:15px;bottom:-4px;width:1.5px;background:var(--rule)}
.shift-step:last-child::before{display:none}
.shift-step::after{content:"";position:absolute;left:0;top:4px;width:12px;height:12px;border-radius:50%;border:2px solid var(--canopy);background:var(--paper);box-sizing:border-box;transition:background .2s}
.shift-col.now .shift-step::after{border-color:var(--green)}
.shift-step:last-child::after{background:var(--amber);border-color:var(--amber)}
.shift-step .ar{display:none}
.shift-mid{display:flex;align-items:center;font-family:var(--f-mono);font-size:11px;color:var(--amber);text-transform:uppercase;letter-spacing:.08em}

/* bento mosaic */
.bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(148px,auto);gap:clamp(12px,1.4vw,18px)}
@media(max-width:760px){.bento{grid-template-columns:1fr}}
.bcell{border:1px solid var(--rule);padding:clamp(22px,2.4vw,32px);display:flex;flex-direction:column;gap:10px;justify-content:space-between;background:var(--paper);transition:transform .3s var(--ease),border-color .3s}
.bcell:hover{transform:translateY(-4px);border-color:var(--green)}
.bcell.wide{grid-column:span 2}@media(max-width:760px){.bcell.wide{grid-column:auto}}
.bcell.dark{background:var(--deep);color:var(--rev);border-color:rgba(196,134,10,.3)}
.bcell .bk{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--amber)}
.bcell .bt{font-family:var(--f-display);font-weight:600;font-size:clamp(21px,2.3vw,32px);line-height:1.02;letter-spacing:-.02em;color:var(--ink)}
.bcell.dark .bt{color:var(--rev)}.bcell .bt em{color:var(--green);font-style:italic}.bcell.dark .bt em{color:var(--amber)}
.bcell .bd{font-family:var(--f-body);font-size:14.5px;line-height:1.6;color:var(--ink-dim)}
.bcell.dark .bd{color:var(--rev-dim)}

/* step-flow (connected, with one dark governed cell) */
.flow3{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink)}
@media(max-width:860px){.flow3{grid-template-columns:1fr 1fr;border-top:0}}@media(max-width:520px){.flow3{grid-template-columns:1fr}}
.fstep{padding:clamp(22px,2.4vw,32px) clamp(22px,2vw,30px) clamp(26px,2.8vw,36px) clamp(22px,2vw,30px);border-right:1px solid var(--rule)}
.flow3 .fstep:first-child{padding-left:0}
.fstep:last-child{border-right:0}
@media(max-width:860px){.fstep{border-right:0;border-top:2px solid var(--ink);padding-left:0;padding-right:0}.fstep.gov{padding-left:clamp(20px,4vw,26px);padding-right:clamp(20px,4vw,26px)}}
.fstep.gov{background:var(--deep);color:var(--rev);padding-left:clamp(20px,2vw,26px)}
.fnum{font-family:var(--f-display);font-weight:600;font-size:clamp(40px,4vw,66px);line-height:.8;color:var(--green);font-variation-settings:'opsz' 144}
.fstep.gov .fnum{color:var(--amber)}
.fsh{font-family:var(--f-display);font-weight:600;font-size:clamp(19px,1.9vw,25px);margin:14px 0 6px;letter-spacing:-.01em;color:var(--ink)}
.fstep.gov .fsh{color:var(--rev)}
.fsp{font-family:var(--f-body);font-size:14.5px;line-height:1.55;color:var(--ink-dim)}
.fstep.gov .fsp{color:var(--rev-dim)}
.fstep.gov .fsp a{color:var(--amber)}
.pull-q{font-family:var(--f-display);font-style:italic;font-weight:380;font-size:clamp(22px,2.8vw,38px);line-height:1.25;color:var(--ink);border-left:3px solid var(--amber);padding-left:24px;margin:clamp(26px,3vw,40px) 0;max-width:24ch}
.pull-q b{color:var(--green);font-style:normal;font-weight:600}

/* animated topical SVG (agent-flow diagram) - on-brand, reduced-motion safe */
.flow-svg{width:100%;height:auto;display:block;overflow:visible}
.fs-card{fill:#fff;stroke:var(--rule);stroke-width:1.4}
.fs-core{fill:#fff;stroke:rgba(28,82,51,.45);stroke-width:1.6}
.fs-bar{fill:rgba(28,82,51,.06)}
.fs-div{stroke:var(--rule-2);stroke-width:1}
.fs-link{fill:none;stroke:var(--canopy);stroke-width:1.6;stroke-dasharray:6 9;animation:fs-dash 3s linear infinite}
.fs-link.amber{stroke:var(--amber);animation-duration:2.2s}
@keyframes fs-dash{to{stroke-dashoffset:-60}}
.fs-pulse{fill:var(--amber-hi);animation:fs-pulse 2.2s ease-in-out infinite}
.fs-pulse.g{fill:var(--green)}
@keyframes fs-pulse{0%,100%{opacity:1;r:4}50%{opacity:.4;r:6}}
.fs-travel{fill:var(--amber)}
.fs-k{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.04em;text-transform:uppercase;fill:var(--amber)}
.fs-v{font-family:'Familjen Grotesk',sans-serif;font-size:10px;fill:var(--ink)}
.fs-t{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;fill:var(--ink-dim)}
.fs-h{font-family:var(--f-display);font-weight:600;font-size:12px;fill:var(--ink)}
.fs-nlabel{font-family:'Familjen Grotesk',sans-serif;font-size:11px;font-weight:600;fill:var(--ink)}
@media(prefers-reduced-motion:reduce){.fs-link{animation:none}.fs-pulse{animation:none}.fs-travel{display:none}}

/* ===== STANDARD PAGES (about / contact / legal) ===== */
/* portrait */
.portrait{overflow:hidden;background:var(--paper-2);border:1px solid var(--rule);max-width:360px}
.portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .8s var(--ease)}
.portrait:hover img{transform:scale(1.03)}
.facts{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.facts li{font-family:var(--f-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-dim);border:1px solid var(--rule);padding:8px 13px;transition:border-color .25s,color .25s}
.facts li:hover{border-color:var(--amber);color:var(--ink)}
.prose-p{font-family:var(--f-body);font-size:clamp(16px,1.4vw,19px);line-height:1.72;color:var(--ink-dim);margin-bottom:1.1rem;max-width:60ch}
.prose-p strong{color:var(--ink);font-weight:600}
/* contact / lead form */
.lform{display:flex;flex-direction:column;gap:14px;max-width:560px}
.lrow2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:520px){.lrow2{grid-template-columns:1fr}}
.lfield{display:flex;flex-direction:column;gap:6px}
.lfield label{font-family:var(--f-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-dim);font-weight:500}
.lfield input,.lfield textarea{font-family:var(--f-body);font-size:16px;color:var(--ink);background:#fff;border:1px solid var(--rule);padding:13px 14px}
.lfield input:focus,.lfield textarea:focus{outline:none;border-color:var(--ink)}
.lfield.has-error input,.lfield.has-error textarea{border-color:#9a2436;border-width:2px}
.lfield textarea{resize:vertical;min-height:120px}
.fstatus{font-family:var(--f-body);font-size:14px;min-height:1.2em}.fstatus.ok{color:var(--green)}.fstatus.err{color:#9a2436}
.lcheck{display:flex;align-items:flex-start;gap:10px;font-family:var(--f-body);font-size:13.5px;line-height:1.45;color:var(--ink-dim);cursor:pointer}
.lcheck input{margin-top:3px;width:16px;height:16px;accent-color:var(--green);flex-shrink:0}
.lcheck .opt{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-dim)}
.lcheck.has-error{outline:2px solid #9a2436;outline-offset:3px;border-radius:2px}
.fnote{font-family:var(--f-mono);font-size:10.5px;color:var(--ink-faint)}
/* form states: processing spinner + in-form success panel (sticky + lead forms) */
.btn.is-loading,.sf-submit.is-loading{position:relative;color:transparent !important;pointer-events:none}
.btn.is-loading::after,.sf-submit.is-loading::after{content:"";position:absolute;left:50%;top:50%;width:15px;height:15px;margin:-8px 0 0 -8px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:btnspin .7s linear infinite}
.sf-submit.is-loading::after{border-color:rgba(20,36,26,.25);border-top-color:var(--deep)}
@keyframes btnspin{to{transform:rotate(360deg)}}
.sf-status.sending,.fstatus.sending{color:var(--ink-dim)}
.sf-status.sending::after,.fstatus.sending::after{content:"";display:inline-block;width:10px;height:10px;margin-left:7px;vertical-align:-1px;border:2px solid var(--rule);border-top-color:var(--amber);border-radius:50%;animation:btnspin .7s linear infinite}
.form-sent .sf-field,.form-sent .lfield,.form-sent .field,.form-sent .lrow2,.form-sent .frow,.form-sent .sf-check,.form-sent .lcheck,.form-sent .cf-turnstile,.form-sent button[type=submit],.form-sent .sf-hp,.form-sent .sf-note,.form-sent .fnote,.form-sent .sf-status,.form-sent .fstatus{display:none !important}
.form-success{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:clamp(16px,2.4vw,26px) 0;animation:fsIn .4s ease both}
@keyframes fsIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.form-success .fs-check{width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:700}
.form-success .fs-title{font-family:var(--f-display);font-weight:600;font-size:clamp(19px,2.2vw,24px);letter-spacing:-.01em;color:var(--ink)}
.form-success .fs-sub{font-family:var(--f-body);font-size:14.5px;line-height:1.55;color:var(--ink-dim);max-width:44ch}
/* blog index: magazine layout (featured + image cards + text-only breaks) */
.bf-featured{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(20px,3.2vw,48px);align-items:center;margin-bottom:clamp(30px,4vw,54px);padding-bottom:clamp(30px,4vw,54px);border-bottom:1px solid var(--rule)}
@media(max-width:760px){.bf-featured{grid-template-columns:1fr;gap:16px}}
.bf-feat-media img{width:100%;height:auto;display:block;border:1px solid var(--rule)}
.bf-feat-title{font-family:var(--f-display);font-weight:600;font-size:clamp(26px,3.4vw,42px);line-height:1.04;letter-spacing:-.02em;margin:12px 0;color:var(--ink)}
.bf-feat-title a:hover{color:var(--green)}
.bf-feat-dek{font-family:var(--f-body);font-size:clamp(15px,1.5vw,18px);line-height:1.6;color:var(--ink-dim);max-width:50ch}
.bf-more{display:inline-block;margin-top:16px;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--green)}
.bf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:clamp(22px,2.8vw,40px)}
.bf-card a{display:block}
.bf-thumb{display:block;margin-bottom:14px;overflow:hidden;border:1px solid var(--rule)}
.bf-thumb img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover;transition:transform .45s var(--ease)}
.bf-card a:hover .bf-thumb img{transform:scale(1.03)}
.bf-card-title{font-family:var(--f-display);font-weight:600;font-size:clamp(18px,1.7vw,22px);line-height:1.18;letter-spacing:-.01em;color:var(--ink);margin:5px 0 7px}
.bf-card a:hover .bf-card-title{color:var(--green)}
.bf-card-dek{font-family:var(--f-body);font-size:14.5px;line-height:1.56;color:var(--ink-dim)}
.bf-card.text{background:var(--paper-2);padding:clamp(18px,2vw,26px)}
.bf-card .rk.muted{margin-top:12px;color:var(--ink-faint)}
/* blog post data tables (structured, for readers + AEO/GEO/LLM) */
.ptable-wrap{margin:clamp(20px,2.6vw,32px) 0;overflow-x:auto}
.ptable{width:100%;border-collapse:collapse;font-family:var(--f-body);font-size:14.5px;line-height:1.5}
.ptable caption{caption-side:top;text-align:left;font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--amber);padding-bottom:10px}
.ptable th,.ptable td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--rule);vertical-align:top}
.ptable thead th{font-family:var(--f-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);border-bottom:1.5px solid var(--ink-dim);background:var(--paper-2)}
.ptable tbody tr:hover{background:var(--paper-2)}
.ptable td{color:var(--ink-dim)}.ptable td:first-child{color:var(--ink);font-weight:600}
.cdirect{font-family:var(--f-mono);font-size:13px;line-height:2;color:var(--ink-dim)}.cdirect a{color:var(--green)}
/* legal prose */
.legal{max-width:760px}
.legal .upd{font-family:var(--f-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:26px}
.legal h2{font-family:var(--f-display);font-weight:600;font-size:clamp(21px,2.3vw,29px);letter-spacing:-.01em;margin:34px 0 10px;color:var(--ink)}
.legal h2:first-of-type{margin-top:0}
.legal p,.legal li{font-family:var(--f-body);font-size:16px;line-height:1.7;color:var(--ink-dim);margin-bottom:12px}
.legal strong{color:var(--ink);font-weight:600}
.legal a{color:var(--green)}
.legal ul{padding-left:20px;margin-bottom:14px}

/* ===== MOBILE UX FIXES 2026-06-24 ===== */

/* Sticky form: dark green header (item 13 — visual styling) */
.sf-head{background:var(--deep)}
.sf-head .sf-title{color:var(--rev)}
.sf-head .sf-sub{color:var(--rev-dim)}
.sf-head .sf-close{color:var(--rev-faint)}.sf-head .sf-close:hover{color:var(--rev)}

/* Hero eyebrow: keep on one line on small screens (item 8) */
@media(max-width:480px){.hero-eyebrow{font-size:10.5px;gap:6px;padding:7px 11px;white-space:nowrap}}

/* Brain SVG labels: readable on mobile (item 9) */
@media(max-width:620px){.brain-svg .bf-label{font-size:18px;font-weight:500}.brain-svg .bf-label.dim{font-size:16px}.brain-svg .bf-core-label{font-size:22px}}

/* CTA block: stack single column on mobile (item 7) */
.c-layout{grid-template-columns:1fr 1fr}
@media(max-width:760px){.c-layout{grid-template-columns:1fr!important}}
@media(max-width:760px){#contact .form{border:1px solid var(--rule);padding:clamp(18px,3vw,26px);background:var(--paper)}}

/* Blog feed: divider lines between cards on mobile (item 12) */
@media(max-width:640px){
  .bf-grid{gap:0}
  .bf-card{border-bottom:1px solid var(--rule);padding-bottom:24px;margin-bottom:24px}
  .bf-card:last-child{border-bottom:0;padding-bottom:0;margin-bottom:0}
}

/* footer-bottom brand links */
.footer-bottom a{color:var(--amber-hi);transition:color .18s}.footer-bottom a:hover{color:var(--amber)}
