/* HJS Site v2 — "Your digital right hand". Navy bands + one amber accent.
   Scoped to body.hjs-site-page so the old v1 pages are untouched until go-live. */
@font-face{font-family:"Bricolage Grotesque";font-weight:600;font-display:swap;src:url(fonts/bricolage-grotesque-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Bricolage Grotesque";font-weight:700;font-display:swap;src:url(fonts/bricolage-grotesque-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Figtree";font-weight:400;font-display:swap;src:url(fonts/figtree-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Figtree";font-weight:500;font-display:swap;src:url(fonts/figtree-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Figtree";font-weight:600;font-display:swap;src:url(fonts/figtree-latin-600-normal.woff2) format("woff2")}

body.hjs-site-page{
  --navy-900:#0A1424;--navy-800:#0F1D33;--navy-700:#172A47;--navy-600:#22395E;
  --paper:#F5F7FA;--white:#FFFFFF;--line:#DDE3EC;--line-dark:#2A3F62;
  --ink:#0F1D33;--body-ink:#2D3D55;--muted:#55657D;--muted-dark:#A9B6CA;
  --amber:#F4A53A;--amber-hover:#FFB65A;--amber-ink:#9A5A00;--amber-soft:#FFF3E2;--green:#2E9E63;--red:#B4473A;
  --display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --body:"Figtree","Segoe UI",system-ui,-apple-system,sans-serif;
  --r-md:14px;--r-lg:22px;
  margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;
}
/* Bricks compatibility: neutralise default element layout so our classes control it */
body.hjs-site-page :where(.hs.brxe-div){display:block;flex:none;align-items:normal;width:auto;flex-direction:initial}
body.hjs-site-page :where(.hs.brxe-text-basic,.hs.brxe-text-link,.hs.brxe-heading,.hs.brxe-image){width:auto;max-width:100%}
body.hjs-site-page :where(span.hs,a.hs){display:inline}
body.hjs-site-page .hs.brxe-heading{color:inherit}
body.hjs-site-page *{box-sizing:border-box}
body.hjs-site-page a{color:inherit;text-decoration:none}
body.hjs-site-page :is(h1,h2,h3,h4){font-family:var(--display);line-height:1.08;margin:0;letter-spacing:-.015em;text-wrap:balance;font-weight:600}
body.hjs-site-page p,body.hjs-site-page blockquote{margin:0}
body.hjs-site-page blockquote,body.hjs-site-page cite{font-family:inherit;quotes:none;border:0;padding:0;background:none}
body.hjs-site-page img{max-width:100%;height:auto;display:block}
body.hjs-site-page :focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:6px}
body.hjs-site-page .is-hidden{display:none!important}
.hjs-site-page .wrap{max-width:1200px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.hjs-site-page .wrap.narrow{max-width:960px;margin-left:max(0px,calc((100% - 1200px)/2))}
.hjs-site-page .skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--amber);color:var(--navy-900);padding:10px 14px;border-radius:8px;font-weight:600}
.hjs-site-page .skip:focus{left:12px}

/* Type helpers */
.hjs-site-page .eyebrow{display:block;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--amber-ink)}
.hjs-site-page :is(.dark,.hero,.cs-hero,.featured,.testimonial) .eyebrow{color:var(--amber)}
.hjs-site-page .stars{color:var(--amber);letter-spacing:2px}
.hjs-site-page .text-arrow{font-weight:600;color:var(--amber-ink)}
.hjs-site-page .dark .text-arrow{color:var(--amber)}
.hjs-site-page .text-arrow:hover{text-decoration:underline}

/* Buttons */
.hjs-site-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 16px/1 var(--body);padding:16px 22px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease,background .15s ease;text-align:center}
.hjs-site-page .btn:hover{transform:translateY(-1px)}
.hjs-site-page .btn-primary{background:var(--amber);color:var(--navy-900)!important}
.hjs-site-page .btn-primary:hover{background:var(--amber-hover)}
.hjs-site-page .btn-ghost{border-color:currentColor;background:transparent}
.hjs-site-page :is(.hero,.cs-hero,.dark) .btn-ghost{color:var(--white)}
.hjs-site-page .ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}

/* Header */
.hjs-site-page .topbar{background:var(--navy-900);color:var(--muted-dark);font-size:14px}
.hjs-site-page .topbar .wrap{display:flex;justify-content:space-between;gap:16px;padding-block:8px;flex-wrap:wrap}
.hjs-site-page .topbar a{color:var(--white)}
.hjs-site-page .site-header{position:sticky;top:0;z-index:50;background:var(--navy-800);color:var(--white);border-bottom:1px solid var(--line-dark)}
.admin-bar.hjs-site-page .site-header{top:32px}
.hjs-site-page .site-header > .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:14px}
.hjs-site-page .brand{display:flex;align-items:center;gap:12px;min-width:0}
.hjs-site-page .logo{display:inline-flex!important;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:21px;letter-spacing:-.02em;white-space:nowrap}
.hjs-site-page .logo::before{content:"HJ";display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--amber);color:var(--navy-900);font-size:14px;flex:none}
.hjs-site-page .tagline{font-size:13px;color:var(--muted-dark);white-space:nowrap}
.hjs-site-page .main-nav{display:flex!important;gap:26px;align-items:center;font-weight:500}
.hjs-site-page .main-nav > a:not(.btn):hover,.hjs-site-page .services-menu summary:hover{color:var(--amber)}
.hjs-site-page .services-menu{position:static}
.hjs-site-page .site-header > .wrap{position:relative}
.hjs-site-page .services-menu summary{list-style:none;cursor:pointer;display:flex;gap:8px;align-items:center}
.hjs-site-page .services-menu summary::-webkit-details-marker{display:none}
.hjs-site-page .services-menu summary::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .15s}
.hjs-site-page .services-menu[open] summary::after{transform:rotate(-135deg) translateY(-1px)}
.hjs-site-page .mega{position:absolute;top:calc(100% + 8px);right:max(20px,env(safe-area-inset-right,0px));width:min(920px,calc(100vw - 40px));max-width:none;background:var(--white);color:var(--ink);border-radius:var(--r-lg);box-shadow:0 30px 80px rgba(10,20,36,.35);padding:28px;display:grid!important;grid-template-columns:repeat(4,1fr);gap:22px}
.hjs-site-page .mega-col{display:flex!important;flex-direction:column;gap:8px;font-size:15px}
.hjs-site-page .mega-col a:hover{color:var(--amber-ink)}
.hjs-site-page .mega-title{font-family:var(--display);font-weight:600;font-size:17px;margin-bottom:4px}
.hjs-site-page .mega-foot{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px;display:flex!important;justify-content:space-between;gap:16px;flex-wrap:wrap;font-weight:600;color:var(--amber-ink)}
.hjs-site-page .mobile-nav{display:none!important;position:relative}
.hjs-site-page .mobile-nav summary{list-style:none;cursor:pointer;border:1.5px solid var(--line-dark);border-radius:10px;padding:8px 14px;font-weight:600}
.hjs-site-page .mobile-nav summary::-webkit-details-marker{display:none}
.hjs-site-page .mobile-panel{position:fixed;z-index:60;max-width:none;width:auto;left:0;right:0;top:var(--hjs-header-bottom,120px);bottom:0;overflow:auto;background:var(--navy-800);padding:20px max(20px,env(safe-area-inset-left,0px)) 40px;display:flex!important;flex-direction:column;gap:4px}
.hjs-site-page .mobile-panel a{padding:10px 0;font-size:18px;font-weight:600;border-bottom:1px solid var(--line-dark)}
.hjs-site-page .mobile-panel a.sub{font-size:15px;font-weight:500;color:var(--muted-dark);padding:7px 0 7px 14px}
.hjs-site-page .mobile-panel .btn{margin-top:18px;border-bottom:0}
@media (max-width:1020px){.hjs-site-page .main-nav{display:none!important}.hjs-site-page .mobile-nav{display:block!important}.hjs-site-page .tagline{display:none}}

/* Heroes */
.hjs-site-page .hero{background:var(--navy-800);color:var(--white);position:relative;overflow:hidden}
.hjs-site-page .hero::after{content:"";position:absolute;right:-12%;top:-30%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(244,165,58,.16),transparent 62%);pointer-events:none}
.hjs-site-page .hero > .wrap{position:relative;z-index:1;padding-block:84px 92px}
.hjs-site-page .hero-grid{display:grid!important;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.hjs-site-page .hero h1{font-size:clamp(42px,6.2vw,82px);font-weight:700;margin-top:18px}
.hjs-site-page .page-hero h1{font-size:clamp(38px,5vw,66px)}
.hjs-site-page .hero h1 em{font-style:normal;color:var(--amber)}
.hjs-site-page .hero .sub,.hjs-site-page .cs-hero .sub{font-size:clamp(18px,1.6vw,21px);color:#D3DCE9;max-width:36em;margin-top:22px}
.hjs-site-page .crumb{font-size:14px;color:var(--muted-dark);margin-bottom:20px;display:block}
.hjs-site-page .crumb a:hover{color:var(--amber)}
.hjs-site-page .trust{display:flex!important;gap:18px;flex-wrap:wrap;align-items:center;margin-top:28px;font-size:15px;color:var(--muted-dark)}
.hjs-site-page .trust-link{color:var(--white)}
.hjs-site-page .trust-link:hover{text-decoration:underline}
@media (max-width:960px){.hjs-site-page .hero-grid{grid-template-columns:1fr;gap:40px}.hjs-site-page .hero > .wrap{padding-block:56px 64px}}

/* Picker */
.hjs-site-page .picker{background:var(--white);color:var(--ink);border-radius:var(--r-lg);padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.hjs-site-page .picker h2{font-size:24px}
.hjs-site-page .hint{color:var(--muted);font-size:15px;margin-top:6px}
.hjs-site-page .chips{display:flex!important;flex-wrap:wrap;gap:8px;margin-top:18px}
.hjs-site-page .chip,.hjs-site-page .filter{font:600 15px var(--body);padding:10px 16px;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;transition:all .15s ease}
.hjs-site-page .chip:hover,.hjs-site-page .filter:hover{border-color:var(--navy-600)}
.hjs-site-page .chip[aria-pressed="true"],.hjs-site-page .filter[aria-pressed="true"]{background:var(--navy-800);border-color:var(--navy-800);color:var(--white)}
.hjs-site-page .answer{margin-top:20px;border-top:1px solid var(--line);padding-top:20px;min-height:250px}
.hjs-site-page .answer h3{font-size:22px}
.hjs-site-page .answer .lead{color:var(--muted);margin-top:8px}
.hjs-site-page .log{list-style:none;padding:0;margin:16px 0 0;display:grid!important;gap:8px}
.hjs-site-page .log li{display:grid;grid-template-columns:20px 1fr;gap:10px;font-size:15px}
.hjs-site-page .log li::before{content:"";width:18px;height:18px;margin-top:3px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.hjs-site-page .answer .more{display:inline-block;margin-top:18px;font-weight:600;color:var(--amber-ink)}
.hjs-site-page .answer .more:hover{text-decoration:underline}
.hjs-site-page .answer-panel{animation:hjsfade .35s ease}
@keyframes hjsfade{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:none}}

/* Section scaffolding */
.hjs-site-page .block{padding-block:92px}
.hjs-site-page .block.tight{padding-block:56px}
.hjs-site-page .block.white{background:var(--white);border-block:1px solid var(--line)}
.hjs-site-page .dark{background:var(--navy-800);color:var(--white)}
@media (max-width:700px){.hjs-site-page .block{padding-block:60px}}
.hjs-site-page .section-head{display:flex!important;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.hjs-site-page .section-head h2{font-size:clamp(30px,4vw,50px);margin-top:12px;max-width:17em}
.hjs-site-page .section-head > p{color:var(--muted);max-width:30em}
.hjs-site-page .dark .section-head > p{color:var(--muted-dark)}

/* Reviews strip */
.hjs-site-page .reviews{background:var(--white);border-bottom:1px solid var(--line)}
.hjs-site-page .reviews .wrap{display:grid!important;grid-template-columns:auto 1fr;gap:28px;align-items:center;padding-block:26px}
.hjs-site-page .g-score{display:flex!important;flex-direction:column;gap:2px;padding-right:28px;border-right:1px solid var(--line)}
.hjs-site-page .g-score .stars{font-size:20px}
.hjs-site-page .g-link{font-size:14px;font-weight:600;color:var(--amber-ink)}
.hjs-site-page .quote-sm blockquote{font-size:17px}
.hjs-site-page .quote-sm cite{display:block;font-style:normal;font-weight:600;font-size:14px;color:var(--muted);margin-top:4px}
@media (max-width:700px){.hjs-site-page .reviews .wrap{grid-template-columns:1fr}.hjs-site-page .g-score{border-right:0;padding-right:0}}

/* Imagine */
.hjs-site-page .imagine{display:grid!important;grid-template-columns:1fr 1fr;gap:20px}
.hjs-site-page .panel{border-radius:var(--r-lg);padding:36px}
.hjs-site-page .panel h3{font-size:26px}
.hjs-site-page .panel ul{margin:18px 0 0;padding:0;list-style:none;display:grid!important;gap:12px}
.hjs-site-page .panel li{display:flex;gap:12px;align-items:baseline}
.hjs-site-page .before{background:var(--white);border:1px solid var(--line)}
.hjs-site-page .before li::before{content:"✕";color:var(--red);font-weight:700}
.hjs-site-page .after{background:var(--navy-800);color:var(--white)}
.hjs-site-page .after li::before{content:"✓";color:var(--amber);font-weight:700}
.hjs-site-page .panel .tag{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.hjs-site-page .after .tag{color:var(--amber)}
@media (max-width:800px){.hjs-site-page .imagine{grid-template-columns:1fr}.hjs-site-page .panel{padding:26px}}

/* Service cards */
.hjs-site-page .services{display:grid!important;grid-template-columns:repeat(4,1fr);gap:16px}
.hjs-site-page .svc{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:28px;display:flex!important;flex-direction:column;gap:14px}
.hjs-site-page .svc .icon{width:44px;height:44px;border-radius:12px;background:var(--amber-soft) center/22px no-repeat;display:block}
.hjs-site-page .svc-day .icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A5A00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16v12H4z'/%3E%3Cpath d='M4 7l8 6 8-6'/%3E%3C/svg%3E")}
.hjs-site-page .svc-systems .icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A5A00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='6' r='2.5'/%3E%3Ccircle cx='18' cy='6' r='2.5'/%3E%3Ccircle cx='12' cy='18' r='2.5'/%3E%3Cpath d='M8 7.5l3 8M16 7.5l-3 8M8.5 6h7'/%3E%3C/svg%3E")}
.hjs-site-page .svc-web .icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A5A00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9h18'/%3E%3C/svg%3E")}
.hjs-site-page .svc-growth .icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A5A00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 18l6-6 4 4 6-8'/%3E%3Cpath d='M15 8h5v5'/%3E%3C/svg%3E")}
.hjs-site-page .svc h3{font-size:22px}
.hjs-site-page .svc > p{color:var(--muted);font-size:15px}
.hjs-site-page .svc ul{margin:auto 0 0;padding:14px 0 0;list-style:none;font-size:14px;display:grid!important;gap:6px;border-top:1px solid var(--line)}
.hjs-site-page .svc .go{font-weight:600;font-size:15px;color:var(--amber-ink)}
@media (max-width:1000px){.hjs-site-page .services{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.hjs-site-page .services{grid-template-columns:1fr}}

/* Items grid (service pages) */
.hjs-site-page .items{display:grid!important;grid-template-columns:repeat(3,1fr);gap:16px}
.hjs-site-page .item{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:26px}
.hjs-site-page .item h3{font-size:20px}
.hjs-site-page .item h3 a:hover{color:var(--amber-ink)}
.hjs-site-page .item p{color:var(--muted);font-size:15px;margin-top:8px}
@media (max-width:900px){.hjs-site-page .items{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.hjs-site-page .items{grid-template-columns:1fr}}

/* Feature case cards */
.hjs-site-page .featured{display:grid!important;grid-template-columns:1.05fr .95fr;border-radius:var(--r-lg);overflow:hidden;background:var(--navy-700);color:var(--white)}
.hjs-site-page .featured .shot{background:linear-gradient(160deg,#22395E,#0F1D33);padding:36px;display:flex!important;align-items:center;justify-content:center;min-height:360px}
.hjs-site-page .shot-img{border-radius:12px;box-shadow:0 24px 60px rgba(0,0,0,.4);width:100%}
.hjs-site-page .shot-graphic{width:100%;max-width:420px;aspect-ratio:16/10;border-radius:14px;background:var(--white);color:var(--ink);padding:28px;display:flex!important;flex-direction:column;justify-content:center;gap:6px;box-shadow:0 24px 60px rgba(0,0,0,.4)}
.hjs-site-page .shot-graphic.big{max-width:none;aspect-ratio:21/9}
.hjs-site-page .sg-label{font-size:14px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.hjs-site-page .sg-big{font-family:var(--display);font-size:clamp(40px,5vw,64px);font-weight:700;line-height:1}
.hjs-site-page .sg-note{color:var(--green);font-weight:600}
.hjs-site-page .featured .copy{padding:44px;display:flex!important;flex-direction:column;gap:16px}
.hjs-site-page .featured :is(h2,h3){font-size:clamp(26px,3vw,38px)}
.hjs-site-page .featured .copy > p{color:var(--muted-dark)}
.hjs-site-page .pills{display:flex!important;flex-wrap:wrap;gap:8px}
.hjs-site-page .pill{font-size:13px;font-weight:600;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--line-dark)}
@media (max-width:900px){.hjs-site-page .featured{grid-template-columns:1fr}.hjs-site-page .featured .copy{padding:28px}.hjs-site-page .featured .shot{min-height:0;padding:24px}}

/* Small case cards */
.hjs-site-page .cases{display:grid!important;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.hjs-site-page .case{background:var(--navy-700);border:1px solid var(--line-dark);border-radius:var(--r-md);padding:28px;display:flex!important;flex-direction:column;gap:12px;color:var(--white);transition:border-color .15s}
.hjs-site-page .case:hover{border-color:var(--amber)}
.hjs-site-page .case .meta{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}
.hjs-site-page .case h3{font-size:22px}
.hjs-site-page .case p{color:var(--muted-dark);font-size:15px}
.hjs-site-page .case .stat{display:block;margin-top:auto;padding-top:16px;border-top:1px solid var(--line-dark);font-family:var(--display);font-size:19px;font-weight:600}
.hjs-site-page .case .stat:hover{color:var(--amber)}
.hjs-site-page .more-link{margin-top:24px}
@media (max-width:900px){.hjs-site-page .cases{grid-template-columns:1fr}}

/* Case study grid with filters */
.hjs-site-page .filters{display:flex!important;flex-wrap:wrap;gap:8px;margin-bottom:32px}
.hjs-site-page .feature-list{display:grid!important;gap:24px}
.hjs-site-page .empty{color:var(--muted);padding:24px 0}

/* Steps */
.hjs-site-page .steps{display:grid!important;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:s}
.hjs-site-page .step{border-top:2px solid var(--navy-800);padding-top:20px;counter-increment:s}
.hjs-site-page .step::before{content:counter(s);font-family:var(--display);font-weight:700;font-size:15px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--amber);color:var(--navy-900);margin-bottom:14px}
.hjs-site-page .step h3{font-size:21px}
.hjs-site-page .step p{color:var(--muted);font-size:15px;margin-top:8px}
@media (max-width:900px){.hjs-site-page .steps{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.hjs-site-page .steps{grid-template-columns:1fr}}

/* Why / local two-column */
.hjs-site-page .why,.hjs-site-page .local{display:grid!important;grid-template-columns:1fr 1.2fr;gap:56px;align-items:start}
.hjs-site-page .why .intro h2,.hjs-site-page .local h2{font-size:clamp(30px,4vw,46px);margin-top:12px}
.hjs-site-page .why .intro p{color:var(--muted);margin-top:18px}
.hjs-site-page .local p{color:var(--body-ink)}
.hjs-site-page .local > div:last-child{display:grid!important;gap:16px}
.hjs-site-page .towns{font-weight:600}
.hjs-site-page .why-list{display:grid!important;grid-template-columns:1fr 1fr;gap:28px}
.hjs-site-page .why-list h3{font-size:19px}
.hjs-site-page .why-list p{color:var(--muted);font-size:15px;margin-top:6px}
@media (max-width:900px){.hjs-site-page .why,.hjs-site-page .local{grid-template-columns:1fr;gap:28px}.hjs-site-page .why-list{grid-template-columns:1fr}}

/* Areas */
.hjs-site-page .areas{display:grid!important;grid-template-columns:repeat(3,1fr);gap:16px}
.hjs-site-page .area{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:26px;display:grid!important;gap:10px}
.hjs-site-page .area :is(h2,h3){font-size:22px}
.hjs-site-page .area a:hover{color:var(--amber-ink)}
.hjs-site-page .area p{color:var(--muted);font-size:15px}
@media (max-width:800px){.hjs-site-page .areas{grid-template-columns:1fr}}

/* Related links */
.hjs-site-page .related{display:flex!important;flex-wrap:wrap;gap:10px}
.hjs-site-page .rel{display:inline-block!important;padding:12px 18px;border:1.5px solid var(--line);border-radius:999px;background:var(--white);font-weight:600;font-size:15px}
.hjs-site-page .rel:hover{border-color:var(--navy-600)}

/* FAQ */
.hjs-site-page .faqs{display:grid!important;gap:10px;max-width:860px}
.hjs-site-page .faq{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 22px}
.hjs-site-page .faq summary{cursor:pointer;font-weight:600;font-size:18px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.hjs-site-page .faq summary::-webkit-details-marker{display:none}
.hjs-site-page .faq summary::after{content:"+";color:var(--amber-ink);font-size:22px;line-height:1}
.hjs-site-page .faq[open] summary::after{content:"–"}
.hjs-site-page .faq > p{color:var(--muted);margin-top:10px}

/* CTA + form */
.hjs-site-page .cta > .wrap{display:grid!important;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.hjs-site-page .cta h2{font-size:clamp(32px,4.4vw,54px);font-weight:700;margin-top:12px}
.hjs-site-page .cta .copy > p{color:var(--muted-dark);margin-top:18px;max-width:28em}
.hjs-site-page .contact-lines{display:grid!important;gap:10px;margin-top:28px;font-size:17px;color:var(--muted-dark)}
.hjs-site-page .contact-lines a{color:var(--white);font-weight:600}
.hjs-site-page .contact-lines a:hover{color:var(--amber)}
.hjs-site-page .form-card{background:var(--white);color:var(--ink);border-radius:var(--r-lg);padding:30px}
.hjs-site-page .enquiry{display:grid!important;grid-template-columns:1fr 1fr;gap:14px}
.hjs-site-page .enquiry .form-group{width:100%!important;padding:0!important;display:grid;gap:6px;grid-column:1/-1}
.hjs-site-page .enquiry .form-group:nth-child(1),.hjs-site-page .enquiry .form-group:nth-child(2){grid-column:auto}
.hjs-site-page .enquiry label{font-weight:600;font-size:14px}
.hjs-site-page .enquiry :is(input,select,textarea){font:inherit;font-size:16px;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);width:100%}
.hjs-site-page .enquiry textarea{min-height:110px;resize:vertical}
.hjs-site-page .enquiry .submit-button-wrapper,.hjs-site-page .enquiry .form-group.submit-button-wrapper{grid-column:1/-1}
.hjs-site-page .enquiry button[type=submit]{width:100%;background:var(--amber);color:var(--navy-900);border:0;border-radius:999px;padding:16px 22px;font:600 16px var(--body);cursor:pointer}
.hjs-site-page .enquiry button[type=submit]:hover{background:var(--amber-hover)}
.hjs-site-page .form-note{font-size:14px;color:var(--muted);margin-top:14px}
.hjs-site-page .form-note a{text-decoration:underline}
@media (max-width:900px){.hjs-site-page .cta > .wrap{grid-template-columns:1fr;gap:36px}.hjs-site-page .enquiry{grid-template-columns:1fr}.hjs-site-page .enquiry .form-group:nth-child(-n+2){grid-column:1/-1}}

/* Case study single */
.hjs-site-page .cs-hero{background:var(--navy-800);color:var(--white)}
.hjs-site-page .cs-hero > .wrap{padding-block:64px 0}
.hjs-site-page .cs-hero h1{font-size:clamp(38px,5.4vw,70px);font-weight:700;margin-top:16px;max-width:15em}
.hjs-site-page .cs-shot{margin-top:52px;transform:translateY(64px)}
.hjs-site-page .cs-img{border-radius:14px;box-shadow:0 30px 70px rgba(0,0,0,.35);width:100%}
.hjs-site-page .snapshot{padding-top:112px}
.hjs-site-page .snap-grid{display:grid!important;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--r-md);background:var(--white)}
.hjs-site-page .snap-grid > div{padding:22px;border-right:1px solid var(--line)}
.hjs-site-page .snap-grid > div:last-child{border-right:0}
.hjs-site-page .snap-grid span{display:block;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.hjs-site-page .snap-val{font-weight:600;margin-top:6px}
@media (max-width:800px){.hjs-site-page .snap-grid{grid-template-columns:1fr 1fr}.hjs-site-page .snap-grid > div:nth-child(2n){border-right:0}.hjs-site-page .snap-grid > div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.hjs-site-page .story{display:grid!important;grid-template-columns:230px 1fr;gap:56px;padding-block:80px}
.hjs-site-page .toc{position:sticky;top:110px;align-self:start;display:grid!important;gap:4px;font-size:15px}
.hjs-site-page .toc a{color:var(--muted);padding:6px 0 6px 14px;border-left:2px solid var(--line)}
.hjs-site-page .toc a:hover{color:var(--ink);border-left-color:var(--amber)}
.hjs-site-page .chapter{padding-bottom:52px;margin-bottom:52px;border-bottom:1px solid var(--line);max-width:46em;scroll-margin-top:110px}
.hjs-site-page .chapter h2{font-size:clamp(28px,3vw,40px);margin-top:10px}
.hjs-site-page .chapter > p{margin-top:16px;color:var(--body-ink)}
.hjs-site-page .chapter > ul{margin:18px 0 0;padding-left:22px;display:grid!important;gap:10px}
.hjs-site-page .chapter li::marker{color:var(--amber-ink)}
.hjs-site-page .solution{display:grid!important;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.hjs-site-page .sol{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:20px}
.hjs-site-page .sol h3{font-size:19px}
.hjs-site-page .sol p{color:var(--muted);font-size:15px;margin-top:6px}
.hjs-site-page .pull{font-family:var(--display);font-size:clamp(22px,2.4vw,30px);font-weight:600;line-height:1.3;margin-top:28px!important;padding-left:22px;border-left:3px solid var(--amber);color:var(--ink)!important}
.hjs-site-page .timeline{list-style:none;padding:0;margin:24px 0 0;display:grid!important}
.hjs-site-page .tl{display:grid!important;grid-template-columns:44px 1fr;gap:16px;padding-bottom:22px;position:relative}
.hjs-site-page .tl-n{display:grid!important;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--navy-800);color:var(--white);font-family:var(--display);font-weight:700;font-size:15px;position:relative;z-index:1}
.hjs-site-page .tl::after{content:"";position:absolute;left:17px;top:36px;bottom:0;width:2px;background:var(--line)}
.hjs-site-page .tl:last-child::after{display:none}
.hjs-site-page .tl h3{font-size:18px}
.hjs-site-page .tl p{color:var(--muted);font-size:15px;margin-top:2px}
.hjs-site-page .results{display:grid!important;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}
.hjs-site-page .result{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:22px}
.hjs-site-page .r-big{font-family:var(--display);font-size:26px;font-weight:600;line-height:1.15}
.hjs-site-page .result p:not(.r-big){color:var(--muted);font-size:15px}
.hjs-site-page .testimonial{background:var(--navy-800);color:var(--white);border-radius:var(--r-lg);padding:clamp(28px,4vw,52px);margin-top:24px}
.hjs-site-page .testimonial blockquote{font-family:var(--display);font-size:clamp(22px,2.4vw,30px);font-weight:600;line-height:1.35;margin-top:12px}
.hjs-site-page .testimonial cite{display:block;font-style:normal;margin-top:18px;color:var(--muted-dark)}
.hjs-site-page .next-case{display:flex!important;flex-direction:column;gap:6px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px}
.hjs-site-page .next-case strong{font-family:var(--display);font-size:26px;font-weight:600}
.hjs-site-page .next-case:hover{border-color:var(--navy-600)}
@media (max-width:900px){.hjs-site-page .story{grid-template-columns:1fr;gap:24px;padding-block:48px}.hjs-site-page .toc{position:static;display:flex!important;overflow-x:auto;border-bottom:1px solid var(--line)}.hjs-site-page .toc a{border-left:0;border-bottom:2px solid transparent;padding:8px 10px;white-space:nowrap}.hjs-site-page .solution,.hjs-site-page .results{grid-template-columns:1fr}}

/* Prose (privacy) */
.hjs-site-page .prose{max-width:46em;display:grid!important;gap:14px}
.hjs-site-page .prose h2{font-size:26px;margin-top:20px}
.hjs-site-page .prose a{text-decoration:underline}

/* Footer */
.hjs-site-page .site-footer{background:var(--navy-900);color:var(--muted-dark);font-size:15px}
.hjs-site-page .site-footer > .wrap{display:grid!important;grid-template-columns:1.6fr repeat(5,1fr);gap:28px;padding-block:64px 28px}
.hjs-site-page .f-brand{display:grid!important;gap:14px;align-content:start}
.hjs-site-page .f-brand .logo{color:var(--white)}
.hjs-site-page .f-col{display:flex!important;flex-direction:column;gap:8px}
.hjs-site-page .f-title{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--white);font-weight:600;margin-bottom:6px}
.hjs-site-page .site-footer a:hover{color:var(--amber)}
.hjs-site-page .legal{grid-column:1/-1;border-top:1px solid var(--line-dark);padding-top:22px;display:flex!important;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px}
@media (max-width:1000px){.hjs-site-page .site-footer > .wrap{grid-template-columns:1fr 1fr 1fr}.hjs-site-page .f-brand{grid-column:1/-1}}
@media (max-width:560px){.hjs-site-page .site-footer > .wrap{grid-template-columns:1fr 1fr}}

@media (prefers-reduced-motion:reduce){.hjs-site-page *{animation:none!important;transition:none!important}}
