/* HR Website Design - site styles
   Mirrors the original MyWebsite NOW theme: navy #004177, gold #E5B249,
   Merriweather headings, Barlow navigation, Arial body text. */

:root{
  --hr-navy:#004177;
  --hr-navy-deep:#012B4F;
  --hr-gold:#E5B249;
  --hr-gold-text:#eab64b;      /* body text on navy */
  --hr-gold-head:#ffad49;      /* headings on navy */
  --hr-brown:#4c3912;          /* text on gold */
  --hr-link:#003d71;           /* nav + button text */
  --hr-heading:'Merriweather',Georgia,'Times New Roman',serif;
  --hr-nav:'Barlow','Arial',sans-serif;
  --hr-body:Arial,'Helvetica Neue',Helvetica,sans-serif;
  --hr-wrap:912px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:var(--hr-body);font-size:16px;line-height:normal;color:var(--hr-brown);background:var(--hr-navy);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--hr-heading);font-weight:400;line-height:normal;margin:0 0 .7em;overflow-wrap:break-word}
h1{font-size:40px}h2{font-size:33px}h3{font-size:28px}h4{font-size:23px}
p{margin:0 0 1em}
.skip{position:absolute;left:-9999px;top:0;background:#fff;color:var(--hr-navy);padding:10px 16px;z-index:200}
.skip:focus{left:12px;top:12px}
.container{max-width:var(--hr-wrap);margin:0 auto;padding:0 20px;box-sizing:content-box}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

/* ---------- bands ---------- */
.band{position:relative}
.band--gold{background:var(--hr-gold);color:var(--hr-brown)}
.band--gold h1,.band--gold h2,.band--gold h3,.band--gold h4{color:var(--hr-brown)}
.band--navy{background:var(--hr-navy);color:var(--hr-gold-text)}
.band--navy h1,.band--navy h2,.band--navy h3,.band--navy h4{color:var(--hr-gold-head)}
.band--img{background-size:cover;background-position:center;background-repeat:no-repeat}
.center{text-align:center}

/* coded sections (original paste blocks) */
.coded{padding:32px 0}
.coded>.coded-inner{max-width:960px;margin:0 auto;padding:0 20px;box-sizing:content-box}

/* ---------- header ---------- */
.site-header{background:var(--hr-gold);position:relative;z-index:50}
.hdr{display:flex;align-items:flex-start;gap:24px;padding-top:15px;padding-bottom:10px}
.logo{flex:0 0 auto;display:block}
.logo img{width:139px;height:139px}
.site-nav{flex:1;display:flex;justify-content:center;padding-top:51px}
.site-nav>ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.site-nav li{position:relative}
.site-nav a,.site-nav .sub-toggle{font-family:var(--hr-nav);font-size:14px;color:var(--hr-link);text-decoration:none;display:inline-flex;align-items:center;padding:8px 10px;border-bottom:2px solid transparent;background:none;border-top:0;border-left:0;border-right:0;cursor:pointer;line-height:normal}
.site-nav a:hover,.site-nav a:focus-visible{color:var(--hr-brown)}
.site-nav a[aria-current="page"],.site-nav li.is-current>a{color:var(--hr-brown);border-bottom-color:var(--hr-brown)}
.has-sub{display:flex;align-items:center}
.has-sub>a{padding-right:2px}
.sub-toggle{padding:8px 6px 8px 2px!important}
.sub-toggle svg{width:11px;height:11px;transition:transform .15s}
.site-nav .sub{list-style:none;margin:0;padding:8px 0;position:absolute;top:100%;left:0;min-width:240px;background:var(--hr-gold);box-shadow:0 10px 24px rgba(1,43,79,.22);border-top:2px solid var(--hr-brown);display:none;z-index:60}
.site-nav .sub a{display:block;padding:10px 16px;border:0;white-space:nowrap}
.site-nav .sub a:hover{background:rgba(255,255,255,.25)}
@media (hover:hover) and (min-width:1001px){.has-sub:hover>.sub{display:block}}
.has-sub:focus-within>.sub,.has-sub.open>.sub{display:block}
.has-sub.open .sub-toggle svg{transform:rotate(180deg)}
.hdr{position:relative}
.hdr-portal{position:absolute;top:15px;right:20px;display:inline-flex;align-items:center;gap:6px;font-family:var(--hr-nav);font-size:14px;color:var(--hr-link);text-decoration:none;border:1.5px solid var(--hr-link);border-radius:6px;padding:6px 12px}
.hdr-portal:hover,.hdr-portal:focus-visible{background:var(--hr-link);color:var(--hr-gold)}
.hdr-portal svg,.site-nav .nav-portal svg{width:14px;height:14px;flex:0 0 14px}
.site-nav .nav-portal{display:none}
.nav-toggle{display:none;margin-left:auto;margin-top:46px;background:none;border:0;color:var(--hr-link);padding:10px;cursor:pointer}
.nav-toggle svg{width:28px;height:28px;display:block}
.hdr-social{display:flex;justify-content:center;gap:16px;padding:30px 0 23px}

/* social icons */
.social{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.social a{display:inline-flex;line-height:0;color:var(--hr-brown)}
.social a:hover{opacity:.8}
.social--square a svg{width:36px;height:36px}
.social--circle a svg{width:48px;height:48px}
.social--small a svg{width:24px;height:24px}
.social--gold a{color:var(--hr-gold-text)}
.social-band{padding:56px 0}
.social-band .social{justify-content:center}

/* ---------- footer ---------- */
.site-footer{background:var(--hr-navy);color:var(--hr-gold-text)}
.ftr{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:20px;padding-top:32px;padding-bottom:32px}
.ftr nav{grid-column:2;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.ftr nav a{color:var(--hr-gold-text);text-decoration:none;padding:8px 10px;border-bottom:2px solid transparent}
.ftr nav a:hover{border-bottom-color:var(--hr-gold-text)}
.ftr nav a[aria-current="page"]{border-bottom-color:var(--hr-gold-text)}
.ftr .copy{grid-column:3;justify-self:end;max-width:139px;margin:16px 0 0}

/* ---------- buttons ---------- */
.hb-btn{display:inline-block;background:var(--hr-gold);color:var(--hr-link);border:1px solid var(--hr-gold);border-radius:8px;padding:8px;font-family:var(--hr-body);font-size:16px;text-decoration:none;line-height:normal;cursor:pointer}
.hb-btn:hover{background:#edc56f}
.hb-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.band--gold .hb-btn:focus-visible{outline-color:var(--hr-navy)}

/* ---------- heroes ---------- */
.hb-hero{min-height:720px;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 0}
.hb-hero h1{margin:0}
.hb-hero--top{min-height:700px;align-items:flex-start;padding-top:126px}
.hb-hero .hb-lede{max-width:760px;margin:26px auto 0;color:var(--hr-gold-text)}

/* ---------- generic layouts ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:16px 16px;align-items:start}
.pad-xl{padding:80px 0}
.pad-l{padding:72px 0}
.pad-m{padding:56px 0}

/* home: vision */
.vision{padding:80px 0}
.vision .split{grid-template-columns:371px 1fr;gap:93px;align-items:center}
.vision .text{padding-top:56px}
.vision img{width:448px;height:448px;object-fit:cover}

/* home: why choose */
.hb-why{padding:83px 24px 72px}
.hb-why .intro{margin-bottom:46px}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1232px;margin:0 auto}
.why-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;margin-bottom:28px}
.why-grid h2{text-align:center;margin-bottom:.9em}
.why-grid p{text-align:center}

/* home: featured clients */
.featured{padding:52px 0 56px}
.featured .container{max-width:879px}
.featured h2.featured-title{font-size:40px;color:var(--hr-gold-head);font-weight:700;text-decoration:underline;text-underline-offset:4px;margin:0 0 6px}
.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,393px));gap:30px 93px;margin-bottom:40px}
.featured-grid>*:first-child{grid-column:1}

/* home: CTA + hours */
.hb-cta{padding:76px 0 64px}
.hb-cta h3{margin-bottom:28px}
.hb-cta p{margin-bottom:24px}
.hours{padding:24px 0 48px}
.hours .social{margin:0 0 36px 8px}
.hours h2{margin-bottom:28px}
.hours dl{display:grid;grid-template-columns:auto auto;justify-content:start;column-gap:34px;row-gap:10px;margin:28px 0 0}
.hours dt,.hours dd{margin:0}
.hours dd{text-align:right}

/* contact blocks */
.contact-lines p{margin:0 0 16px}
.contact-band{padding:80px 0 72px}

/* ---------- forms ---------- */
.cform{padding:16px 8px 0}
.cform .field{margin-bottom:24px}
.cform label{display:block;margin-bottom:8px}
.cform input[type=text],.cform input[type=email],.cform input[type=tel],.cform textarea{width:100%;font:inherit;color:var(--hr-brown);background:transparent;border:2px solid var(--hr-brown);border-radius:8px;padding:12px 16px}
.cform textarea{height:208px;resize:vertical}
.cform input:focus,.cform textarea:focus{outline:2px solid var(--hr-navy);outline-offset:1px}
.cform .consent{display:flex;gap:8px;align-items:flex-start;margin:44px 0 30px}
.cform .consent input{appearance:none;-webkit-appearance:none;flex:0 0 20px;width:20px;height:20px;border:2px solid var(--hr-brown);border-radius:4px;margin:2px 0 0;display:grid;place-content:center;cursor:pointer;background:transparent}
.cform .consent input::after{content:"";width:10px;height:10px;transform:scale(0);background:var(--hr-brown);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}
.cform .consent input:checked::after{transform:scale(1)}
.cform .consent label{margin:0}
.cform .req-note{margin:0 0 22px}
.cform button[type=submit]{display:block;width:100%;font:inherit;color:var(--hr-link);background:transparent;border:2px solid transparent;border-radius:4px;padding:8px 16px;cursor:pointer}
.cform button[type=submit]:hover{background:rgba(255,255,255,.2)}
.cform button[type=submit][disabled]{opacity:.6;cursor:wait}
.cform .hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.form-msg{margin-top:16px;padding:12px 16px;border-radius:6px;display:none}
.form-msg.ok{display:block;background:rgba(255,255,255,.35)}
.form-msg.err{display:block;background:#fbe3e0;color:#7a1b12}
.cform .error-text{color:#7a1b12;font-size:14px;margin-top:6px;display:none}
.cform .field.invalid .error-text{display:block}
.cform .field.invalid input,.cform .field.invalid textarea{border-color:#a3271a}
.cform--square input[type=text],.cform--square input[type=email],.cform--square input[type=tel],.cform--square textarea{border-radius:0}
.cform--square button[type=submit]{background:var(--hr-gold);border-radius:0}

/* services contact band */
.getintouch{padding:59px 0 40px}
.getintouch .split{grid-template-columns:400px 384px;gap:72px;justify-content:center}
.getintouch .social{margin-top:16px;gap:16px;padding-left:8px}

/* about */
.about-main{padding:80px 0 72px}
.about-main .split{gap:16px}
.about-main .photo{width:448px;max-width:100%;margin-top:32px}
.about-main .logo-sq{width:448px;max-width:100%;margin-top:-28px}
.about-main .hb-btn{margin-top:40px}
.about-cta{padding:76px 0 56px}
.about-cta h2{margin-bottom:28px}
.about-cta h3{margin-bottom:28px}

/* legal / privacy */
.details{padding:68px 0 56px;text-align:center}
.details p{margin:0 0 16px}
.details .gap{height:18px}
.doc-links{display:flex;flex-wrap:wrap;gap:16px;justify-content:flex-start;margin-top:40px;text-align:left}
.doc-links .hb-btn{width:216px}
.policy{padding:72px 0 56px}
.policy .policy-body{padding:0 10px}
.policy .policy-body p{margin:0 0 16px}
.policy .hb-btn{margin-top:20px}

/* ---------- booking ---------- */
.booking{padding:16px 0 38px;font-family:'Quattrocento',Georgia,serif}
.bk{display:grid;grid-template-columns:220px 1fr;gap:32px;max-width:832px;margin:0 auto;align-items:start}
.bk-steps{background:#fff;border-radius:8px;box-shadow:0 4px 28px rgba(0,0,0,.15);padding:20px;list-style:none;margin:0}
.bk-steps li{display:flex;align-items:center;gap:12px;padding:8px 0;font-size:14px;color:#060605}
.bk-steps .ic{width:32px;height:32px;border-radius:8px;border:1px solid #060605;display:grid;place-items:center;flex:0 0 32px}
.bk-steps .ic svg{width:16px;height:16px}
.bk-steps li.active{color:var(--hr-navy)}
.bk-steps li.active .ic{background:var(--hr-navy);border-color:var(--hr-navy);color:#fff}
.bk-steps li.done .ic{background:#e7eef5;border-color:var(--hr-navy);color:var(--hr-navy)}
.bk-panel{background:#fff;border-radius:8px;color:#040404;display:flex;flex-direction:column;min-height:420px}
.bk-body{padding:24px 24px 16px}
.bk-panel h3{font-family:'Quattrocento',Georgia,serif;font-weight:700;color:var(--hr-navy);font-size:18px;margin:16px 0 14px}
.bk-svc{display:flex;gap:20px;align-items:center;width:100%;text-align:left;background:#fff;border:1px solid #040404;border-radius:8px;padding:20px;margin-bottom:24px;cursor:pointer;font:inherit;color:inherit}
.bk-svc img{width:56px;height:56px;border-radius:50%;flex:0 0 56px}
.bk-svc .nm{font-size:18px;display:block;margin-bottom:8px}
.bk-svc .du{font-size:16px}
.bk-svc[aria-pressed="true"]{border:2px solid var(--hr-navy);box-shadow:0 0 0 3px rgba(0,65,119,.15);padding:19px}
.bk-foot{border-top:1px solid #040404;padding:16px 28px;display:flex;justify-content:space-between;gap:12px;margin-top:auto}
.bk-btn{font-family:'Quattrocento',Georgia,serif;font-size:14px;font-weight:500;border-radius:6px;padding:10px 20px;cursor:pointer;border:1px solid var(--hr-navy);display:inline-flex;align-items:center;gap:8px}
.bk-next{background:var(--hr-navy);color:#fff;margin-left:auto}
.bk-next b{font-weight:700}
.bk-next[disabled]{opacity:.45;cursor:not-allowed}
.bk-back{background:#fff;color:var(--hr-navy)}
.bk-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}
.bk-cal .dow{font-size:12px;color:#5a6b7c;padding:4px 0}
.bk-cal button{font:inherit;font-size:15px;border:1px solid #d6dde4;background:#fff;border-radius:6px;padding:9px 0;cursor:pointer;color:#040404}
.bk-cal button[disabled]{color:#b7bec5;background:#f6f7f8;border-color:#eef0f2;cursor:not-allowed}
.bk-cal button[aria-pressed="true"]{background:var(--hr-navy);color:#fff;border-color:var(--hr-navy)}
.bk-month{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.bk-month button{background:none;border:1px solid #d6dde4;border-radius:6px;width:34px;height:34px;cursor:pointer;font-size:18px;color:var(--hr-navy)}
.bk-month button[disabled]{opacity:.35;cursor:not-allowed}
.bk-month strong{font-size:17px;color:var(--hr-navy)}
.bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;margin-top:8px}
.bk-slots button{font:inherit;font-size:15px;border:1px solid var(--hr-navy);background:#fff;color:var(--hr-navy);border-radius:6px;padding:9px 0;cursor:pointer}
.bk-slots button[aria-pressed="true"]{background:var(--hr-navy);color:#fff}
.bk-note{font-size:14px;color:#5a6b7c;margin:10px 0 0}
.bk-form .field{margin-bottom:16px}
.bk-form label{display:block;font-size:15px;margin-bottom:6px}
.bk-form input,.bk-form textarea{width:100%;font-family:var(--hr-body);font-size:16px;border:1px solid #9aa6b2;border-radius:6px;padding:10px 12px;color:#040404}
.bk-form textarea{height:96px;resize:vertical}
.bk-form .consent{display:flex;gap:10px;align-items:flex-start;font-size:14px}
.bk-form .consent input{width:18px;height:18px;flex:0 0 18px;margin-top:2px}
.bk-sum dl{display:grid;grid-template-columns:130px 1fr;gap:10px 16px;margin:0}
.bk-sum dt{color:#5a6b7c}
.bk-sum dd{margin:0}
.bk-done{text-align:center;padding:40px 20px}
.bk-done svg{width:56px;height:56px;color:var(--hr-navy);margin:0 auto 14px;display:block}
.bk-err{background:#fbe3e0;color:#7a1b12;border-radius:6px;padding:10px 12px;margin-top:12px;font-size:15px;display:none}
.bk-err.show{display:block}

/* ---------- cookie consent ---------- */
.cookie-fab{position:fixed;left:28px;bottom:28px;z-index:90;width:62px;height:62px;padding:0;border:0;background:none;cursor:pointer;filter:drop-shadow(0 4px 8px rgba(0,0,0,.35));transition:transform .2s}
.cookie-fab svg{width:100%;height:100%;display:block}
.cookie-fab:hover{transform:rotate(-14deg) scale(1.06)}
.cookie-fab:focus-visible{outline:3px solid #fff;outline-offset:3px;border-radius:50%}
@media (prefers-reduced-motion:no-preference){.cookie-fab:active{transform:rotate(-20deg) scale(.94)}}
.cc{position:fixed;inset:auto 0 0 0;z-index:100;background:#fff;color:#12212F;box-shadow:0 -6px 30px rgba(0,0,0,.25);padding:22px 0;font-family:var(--hr-body);font-size:15px;line-height:1.5}
.cc[hidden]{display:none}
.cc .container{max-width:1060px}
.cc h2{font-family:var(--hr-heading);font-size:20px;color:var(--hr-navy);margin:0 0 8px}
.cc p{margin:0 0 14px}
.cc a{color:var(--hr-navy)}
.cc-actions{display:flex;flex-wrap:wrap;gap:10px}
.cc-actions button{font:inherit;font-size:15px;border-radius:6px;padding:10px 18px;cursor:pointer;border:2px solid var(--hr-navy)}
.cc-accept{background:var(--hr-navy);color:#fff}
.cc-reject,.cc-custom,.cc-save{background:#fff;color:var(--hr-navy)}
.cc-prefs{margin:6px 0 16px;display:grid;gap:10px}
.cc-prefs[hidden]{display:none}
.cc-prefs label{display:flex;gap:10px;align-items:flex-start}
.cc-prefs input{width:18px;height:18px;margin-top:2px;flex:0 0 18px}
.cc-prefs small{display:block;color:#5a6b7c}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .vision .split{grid-template-columns:1fr 1fr;gap:40px}
  .vision img{width:100%;height:auto;aspect-ratio:1/1}
  .getintouch .split{grid-template-columns:1fr 1fr;gap:40px}
  .nav-toggle{display:block}
  .hdr{align-items:center}
  .site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--hr-gold);padding:8px 20px 20px;border-top:1px solid rgba(76,57,18,.25);box-shadow:0 12px 24px rgba(1,43,79,.2)}
  .site-nav.open{display:block}
  .site-nav>ul{flex-direction:column;gap:0;align-items:stretch}
  .site-nav>ul>li{border-bottom:1px solid rgba(76,57,18,.18)}
  .site-nav a{font-size:17px;padding:14px 4px}
  .has-sub{flex-wrap:wrap;justify-content:space-between}
  .sub-toggle{padding:14px 10px!important}
  .sub-toggle svg{width:14px;height:14px}
  .site-nav .sub{position:static;box-shadow:none;border-top:0;width:100%;padding:0 0 8px 14px;background:transparent;min-width:0}
  .has-sub:focus-within>.sub{display:none}
  .has-sub.open>.sub{display:block}
  .site-nav .sub a{font-size:16px;padding:10px 4px;white-space:normal}
  .hdr-portal{display:none}
  .site-nav .nav-portal{display:block}
  .site-nav>ul>li.nav-portal{border-bottom:0;padding-top:14px}
  .site-nav .nav-portal a{display:flex;gap:8px;justify-content:center;padding:12px;background:var(--hr-link);color:var(--hr-gold);border-radius:6px}
}
@media (max-width:767px){
  h1{font-size:35px}h2{font-size:28.9px}h3{font-size:24.5px}h4{font-size:20.1px}
  .container{padding:0 20px}
  .logo img{width:116px;height:116px}
  .hdr{padding-top:12px}
  .nav-toggle{margin-top:0}
  .hdr-social{padding:24px 0 22px}
  .hb-hero,.hb-hero--top{min-height:520px;padding:64px 0;align-items:center}
  .split,.vision .split,.getintouch .split{grid-template-columns:1fr;gap:28px}
  .vision{padding:48px 0}
  .vision .text{padding-top:0}
  .hb-why{padding:56px 20px}
  .why-grid{grid-template-columns:1fr;gap:28px}
  .featured-grid{grid-template-columns:1fr;gap:24px}
  .featured h2.featured-title{font-size:30px}
  .about-main .logo-sq{margin-top:0}
  .ftr{grid-template-columns:1fr;justify-items:center;text-align:center}
  .ftr nav,.ftr .copy{grid-column:1;justify-self:center}
  .ftr .copy{max-width:none;margin:4px 0 0}
  .doc-links{justify-content:center}
  .bk{grid-template-columns:1fr;gap:16px}
  .bk-steps{display:flex;justify-content:space-between;padding:12px}
  .bk-steps li{flex-direction:column;gap:6px;font-size:12px;text-align:center;padding:0}
  .bk-body{padding:18px 16px 8px}
  .bk-foot{padding:14px 16px}
  .bk-sum dl{grid-template-columns:1fr}
  .bk-sum dt{margin-top:6px}
  .cookie-fab{left:14px;bottom:14px;width:52px;height:52px}
  .cform{padding:16px 0 0}
}

/* The original builder theme set Merriweather (weight from the block, normal
   spacing) on headings inside the pasted blocks. Same specificity as the theme
   rule, so block rules with more specific selectors still win, as they did live. */
.coded div :is(h1,h2,h3),.featured-grid div :is(h1,h2,h3){font-family:var(--hr-heading);line-height:normal;letter-spacing:normal;font-weight:400}
.featured-grid a{color:var(--hr-gold-head)}

/* featured clients: three across on wide screens */
@media (min-width:1001px){
  .featured .container{max-width:1000px}
  .featured-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
}
@media (min-width:768px) and (max-width:1000px){
  .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
}
.contact-band{padding:108px 0 72px}

/* the original theme used fixed (parallax) section backgrounds on desktop */
@media (min-width:1025px) and (hover:hover){.band--img{background-attachment:fixed}}
.bk-panel h3:focus{outline:none}
.coded.pad-reviews{padding:104px 0 80px}
@media (max-width:767px){
  .coded.pad-reviews{padding:56px 0 48px}
  .contact-band{padding:64px 0 48px}
  .featured{padding:48px 0}
}
.bk-foot[hidden]{display:none}
.coded.coded-full{padding:0}

/* =================================================================
   Contact page (2026 redesign) - matches the coded sector pages
   ================================================================= */
.hct{--navy:#004177;--deep:#012B4F;--gold:#E5B249;--goldsoft:#F6E6C0;--sky:#CBDCEC;--ink:#12212F;--slate:#5A6B7C;--line:#D9E1EA;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;line-height:1.65;color:var(--ink);-webkit-font-smoothing:antialiased}
.hct *{box-sizing:border-box}
.hct section{padding:72px 20px;position:relative}
.hct-wrap{max-width:1120px;margin:0 auto}
.hct h1,.hct h2,.hct h3,.hct h4{font-family:var(--hr-heading);font-weight:400;letter-spacing:normal;line-height:1.15;margin:0}
.hct-eyebrow{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px;color:var(--gold)}
.hct-lead{font-size:clamp(1.02rem,1.6vw,1.15rem);max-width:60ch;margin:18px 0 0}
.hct-small{font-size:.86rem;color:var(--slate);margin:14px 0 0}
.hct-small a{color:var(--navy)}

/* hero */
.hct-hero{background:var(--navy);color:#fff;padding:84px 20px 76px!important}
.hct-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--gold)}
.hct-hero h1{font-size:clamp(2.2rem,5.4vw,3.6rem);color:#fff;max-width:16ch}
.hct-hero h1 span{color:var(--gold)}
.hct-hero .hct-lead{color:var(--sky)}
.hct-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.hct-chips span{border:1px solid rgba(229,178,73,.45);color:var(--goldsoft);font-size:.82rem;padding:7px 14px;border-radius:999px}
.hct-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hct-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px;border-radius:6px;font:600 1rem/1.2 'Inter',Arial,sans-serif;text-decoration:none;background:var(--gold);color:var(--deep);border:2px solid var(--gold);cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.hct-btn:hover{background:var(--goldsoft);border-color:var(--goldsoft)}
.hct-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
.hct-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.hct-ghost:hover{background:rgba(255,255,255,.08);border-color:#fff;color:#fff}
.hct-navybtn{background:var(--navy);color:#fff;border-color:var(--navy)}
.hct-navybtn:hover{background:var(--deep);border-color:var(--deep)}
.hct-navybtn:focus-visible{outline-color:var(--navy)}
.hct-navybtn[disabled]{opacity:.6;cursor:wait}

/* message band */
.hct-gold{background:var(--gold)}
.hct-split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:28px;align-items:start}
.hct-card{background:#fff;border-radius:8px;padding:36px 36px 32px;box-shadow:0 18px 40px -24px rgba(1,43,79,.45)}
.hct-card .hct-eyebrow{color:var(--navy)}
.hct-card h2{font-size:clamp(1.6rem,3vw,2.1rem);color:var(--navy);margin-bottom:24px}

.hct-form{padding:0}
.hct-form .hct-row{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.hct-form .field{margin-bottom:18px}
.hct-form label{display:block;font-weight:600;font-size:.92rem;color:var(--ink);margin-bottom:6px}
.hct-form label span{color:#B4512E}
.hct-form input[type=text],.hct-form input[type=email],.hct-form input[type=tel],.hct-form select,.hct-form textarea{
  width:100%;font:400 1rem/1.4 'Inter',Arial,sans-serif;color:var(--ink);background:#F7F9FB;border:1.5px solid var(--line);border-radius:6px;padding:12px 14px;transition:border-color .15s,background .15s,box-shadow .15s}
.hct-form textarea{height:auto;min-height:150px;resize:vertical}
.hct-form select{appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='%23004177' d='M1 4h10L6 9z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:11px;padding-right:38px}
.hct-form input:focus,.hct-form select:focus,.hct-form textarea:focus{outline:none;border-color:var(--navy);background:#fff;box-shadow:0 0 0 3px rgba(0,65,119,.14)}
.hct-form ::placeholder{color:#8B98A6}
.hct-form .field.invalid input,.hct-form .field.invalid textarea{border-color:#B4512E;background:#FFF7F4}
.hct-form .error-text{color:#9C3B1E;font-size:.85rem;margin:6px 0 0}
.hct-form .consent{display:flex;gap:12px;align-items:flex-start;margin:6px 0 24px;font-size:.88rem;color:var(--slate)}
.hct-form .consent label{font-weight:400;font-size:.88rem;color:var(--slate);margin:0}
.hct-form .consent input{appearance:none;-webkit-appearance:none;flex:0 0 22px;width:22px;height:22px;border:1.5px solid var(--navy);border-radius:5px;background:#fff;margin:1px 0 0;display:grid;place-content:center;cursor:pointer}
.hct-form .consent input::after{content:"";width:12px;height:12px;transform:scale(0);background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%);transition:transform .1s}
.hct-form .consent input:checked{background:var(--navy)}
.hct-form .consent input:checked::after{transform:scale(1)}
.hct-form .consent input:focus-visible{outline:3px solid rgba(0,65,119,.3);outline-offset:2px}
.hct-form button[type=submit]{width:auto;display:inline-flex;padding:12px 28px}
.hct-form .form-msg{margin-top:18px;border-radius:6px;padding:14px 16px;font-size:.95rem}
.hct-form .form-msg.ok{background:#E8F3EC;color:#1E5631;border:1px solid #BFDCC8}
.hct-form .form-msg.err{background:#FFF1EC;color:#8A2F12;border:1px solid #F1C9BA}

/* side panel */
.hct-side{display:grid;gap:14px}
.hct-method{display:flex;gap:16px;align-items:center;background:var(--deep);color:#fff;text-decoration:none;border-radius:8px;padding:18px 20px;transition:transform .15s,background .15s;min-width:0}
.hct-method:hover{background:var(--navy);transform:translateY(-2px)}
.hct-method:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
.hct-method small{display:block;font-family:'Archivo',Arial,sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:2px}
.hct-method > span:last-child{font-weight:600;font-size:1.02rem;overflow-wrap:anywhere;min-width:0}
.hct-ic{flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:rgba(229,178,73,.16);color:var(--gold);display:grid;place-items:center}
.hct-ic svg{width:22px;height:22px}
.hct-hours,.hct-follow{background:#fff;border-radius:8px;padding:20px 22px}
.hct-hours h3,.hct-follow h3{font-size:1.15rem;color:var(--navy);margin-bottom:12px}
.hct-hours dl{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin:0;font-size:.95rem}
.hct-hours dt{color:var(--slate)}
.hct-hours dd{margin:0;font-weight:600;text-align:right}
.hct-follow .social a{color:var(--navy)}
.hct-follow .social a svg{width:34px;height:34px}

/* booking band */
.hct-navy{background:var(--navy);color:#fff}
.hct-navy h2{font-size:clamp(1.7rem,3.2vw,2.3rem);color:var(--gold)}
.hct-navy .hct-lead{color:var(--sky);margin-bottom:36px}

.hct .booking,.hct .bk{font-family:'Inter',Arial,sans-serif}
.hct .bk{display:block;max-width:none;margin:0;background:#fff;color:var(--ink);border-radius:8px;overflow:hidden;box-shadow:0 24px 60px -30px rgba(0,0,0,.55)}
.hct .bk-steps{counter-reset:bk;display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:#F3F6F9;border-bottom:1px solid var(--line);box-shadow:none;border-radius:0;padding:0;margin:0}
.hct .bk-steps li{counter-increment:bk;display:flex;align-items:center;gap:12px;padding:18px 22px;font-size:.92rem;font-weight:600;color:var(--slate);position:relative;flex-direction:row;text-align:left}
.hct .bk-steps li + li{border-left:1px solid var(--line)}
.hct .bk-steps .ic{flex:0 0 30px;width:30px;height:30px;border-radius:50%;border:1.5px solid #B8C4D0;background:#fff;color:var(--slate);display:grid;place-items:center;font:700 .85rem/1 'Archivo',Arial,sans-serif}
.hct .bk-steps .ic svg{display:none}
.hct .bk-steps .ic::before{content:counter(bk)}
.hct .bk-steps li.active{color:var(--navy);background:#fff}
.hct .bk-steps li.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--gold)}
.hct .bk-steps li.active .ic{background:var(--navy);border-color:var(--navy);color:#fff}
.hct .bk-steps li.done{color:var(--navy)}
.hct .bk-steps li.done .ic{background:var(--gold);border-color:var(--gold);color:var(--deep)}
.hct .bk-steps li.done .ic::before{content:"\2713"}

.hct .bk-panel{border-radius:0;min-height:0;background:#fff;color:var(--ink)}
.hct .bk-body{padding:32px 36px 12px}
.hct .bk-panel h3{font-family:var(--hr-heading);font-weight:400;color:var(--navy);font-size:1.5rem;margin:0 0 20px}
.hct .bk-panel h4{font-family:'Archivo',Arial,sans-serif;font-weight:700;font-size:1rem;color:var(--navy);margin:0 0 14px}
.hct .bk-lead{margin:-8px 0 20px;color:var(--slate)}

.hct .bk-svcs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.hct .bk-svc{display:flex;gap:18px;align-items:center;margin:0;padding:20px;border:1.5px solid var(--line);border-radius:8px;background:#fff;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}
.hct .bk-svc:hover{border-color:var(--navy);transform:translateY(-2px);box-shadow:0 10px 24px -16px rgba(1,43,79,.5)}
.hct .bk-svc:focus-visible{outline:3px solid rgba(0,65,119,.3);outline-offset:2px}
.hct .bk-svc[aria-pressed="true"]{border:2px solid var(--navy);padding:19.5px;background:#F2F7FC;box-shadow:inset 4px 0 0 var(--gold)}
.hct .bk-dur{flex:0 0 64px;width:64px;height:64px;border-radius:8px;background:var(--navy);color:var(--sky);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.72rem;font-weight:600;line-height:1.1;text-transform:uppercase;letter-spacing:.08em}
.hct .bk-dur b{font:700 1.5rem/1 'Archivo',Arial,sans-serif;color:var(--gold);letter-spacing:-.02em;margin-bottom:3px}
.hct .bk-svc[aria-pressed="true"] .bk-dur{background:var(--deep)}
.hct .bk-svc .nm{display:block;font-weight:700;font-size:1.02rem;color:var(--navy);margin-bottom:4px;line-height:1.3}
.hct .bk-svc .ds{display:block;font-size:.9rem;color:var(--slate);line-height:1.5}
.hct .bk-secs{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.hct .bk-sec{display:flex;align-items:center;min-height:56px;padding:12px 16px;border:1.5px solid var(--line);border-radius:8px;background:#fff;font:600 .98rem/1.3 'Inter',Arial,sans-serif;color:var(--navy);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}
.hct .bk-sec:hover{border-color:var(--navy)}
.hct .bk-sec:focus-visible,.hct .bk-otherbtn:focus-visible{outline:3px solid rgba(0,65,119,.3);outline-offset:2px}
.hct .bk-sec[aria-pressed="true"]{border:2px solid var(--navy);padding:11.5px 15.5px;background:#F2F7FC;box-shadow:inset 4px 0 0 var(--gold)}
.hct .bk-other{margin-top:22px;padding-top:18px;border-top:1px dashed var(--line)}
.hct .bk-otherbtn{background:none;border:0;padding:4px 0;font:600 1rem 'Inter',Arial,sans-serif;color:var(--navy);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.hct .bk-otherbtn::after{content:" \203A";display:inline-block;margin-left:2px;transition:transform .15s;text-decoration:none}
.hct .bk-otherbtn[aria-expanded="true"]::after{transform:rotate(90deg)}
.hct .bk-otherbox{margin-top:12px;max-width:460px}
.hct .bk-otherbox label{display:block;font-weight:600;font-size:.92rem;margin-bottom:6px;color:var(--ink)}
.hct .bk-otherbox input{width:100%;box-sizing:border-box;font:400 1rem/1.4 'Inter',Arial,sans-serif;background:#F7F9FB;border:1.5px solid var(--line);border-radius:6px;padding:12px 14px}
.hct .bk-otherbox input:focus{outline:none;border-color:var(--navy);background:#fff;box-shadow:0 0 0 3px rgba(0,65,119,.14)}

.hct .bk-body[data-step="1"]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 40px;align-items:start}
.hct .bk-body[data-step="1"] > h3{grid-column:1/-1}
.hct .bk-month{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.hct .bk-month strong{font:700 1.05rem 'Archivo',Arial,sans-serif;color:var(--navy)}
.hct .bk-month button{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:var(--navy);font-size:1.3rem;line-height:1;cursor:pointer}
.hct .bk-month button:hover:not([disabled]){border-color:var(--navy)}
.hct .bk-cal{gap:6px}
.hct .bk-cal .dow{font:700 .7rem 'Archivo',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);padding:6px 0}
.hct .bk-cal button{aspect-ratio:1/1;padding:0;border-radius:8px;border:1.5px solid var(--line);background:#fff;font:600 .95rem 'Inter',Arial,sans-serif;color:var(--ink)}
.hct .bk-cal button:hover:not([disabled]){border-color:var(--navy);color:var(--navy)}
.hct .bk-cal button[disabled]{background:transparent;border-color:transparent;color:#B9C2CB;font-weight:400}
.hct .bk-cal button[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.hct .bk-times{background:#F3F6F9;border-radius:8px;padding:20px;min-height:100%}
.hct .bk-slots{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:0}
.hct .bk-slots button{border:1.5px solid var(--line);background:#fff;color:var(--navy);border-radius:6px;padding:10px 0;font:600 .95rem 'Inter',Arial,sans-serif}
.hct .bk-slots button:hover{border-color:var(--navy)}
.hct .bk-slots button[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--deep)}
.hct .bk-note{font-size:.9rem;color:var(--slate);margin:12px 0 0}

.hct .bk-form{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.hct .bk-form .field:nth-of-type(4),.hct .bk-form .consent,.hct .bk-form .bk-err{grid-column:1/-1}
.hct .bk-form .field{margin-bottom:16px}
.hct .bk-form label{font-weight:600;font-size:.92rem;margin-bottom:6px;color:var(--ink)}
.hct .bk-form input,.hct .bk-form textarea{font:400 1rem/1.4 'Inter',Arial,sans-serif;background:#F7F9FB;border:1.5px solid var(--line);border-radius:6px;padding:12px 14px}
.hct .bk-form input:focus,.hct .bk-form textarea:focus{outline:none;border-color:var(--navy);background:#fff;box-shadow:0 0 0 3px rgba(0,65,119,.14)}
.hct .bk-form .consent{display:flex;gap:12px;align-items:flex-start;font-size:.88rem;color:var(--slate)}
.hct .bk-form .consent label{font-weight:400;font-size:.88rem;color:var(--slate);margin:0}
.hct .bk-form .consent input{width:20px;height:20px;flex:0 0 20px;padding:0;accent-color:var(--navy)}

.hct .bk-sum dl{grid-template-columns:160px 1fr;gap:0;border:1.5px solid var(--line);border-radius:8px;overflow:hidden}
.hct .bk-sum dt,.hct .bk-sum dd{padding:14px 18px;border-bottom:1px solid var(--line);margin:0}
.hct .bk-sum dt{background:#F3F6F9;font-weight:600;color:var(--navy)}
.hct .bk-sum dt:last-of-type,.hct .bk-sum dd:last-of-type{border-bottom:0}

.hct .bk-foot{border-top:1px solid var(--line);padding:20px 36px;background:#fff}
.hct .bk-btn{font:600 .98rem 'Inter',Arial,sans-serif;border-radius:6px;padding:12px 22px;min-height:46px}
.hct .bk-next{background:var(--navy);border:2px solid var(--navy);color:#fff}
.hct .bk-next:hover:not([disabled]){background:var(--deep);border-color:var(--deep)}
.hct .bk-next b{font-weight:700;color:var(--gold)}
.hct .bk-next[disabled]{opacity:1;background:#C9D3DD;border-color:#C9D3DD;color:#fff}
.hct .bk-next[disabled] b{color:#fff}
.hct .bk-back{background:#fff;border:2px solid var(--line);color:var(--navy)}
.hct .bk-back:hover{border-color:var(--navy)}
.hct .bk-err{border-radius:6px}
.hct .bk-done{padding:48px 20px 56px}
.hct .bk-done svg{color:var(--gold);width:64px;height:64px}
.hct .bk-done h3{margin-bottom:12px}

@media (max-width:900px){
  .hct-split{grid-template-columns:1fr}
  .hct-side{grid-template-columns:1fr 1fr}
  .hct-side .hct-method:nth-child(3){grid-column:1/-1}
  .hct .bk-body[data-step="1"]{grid-template-columns:1fr;gap:20px}
}
@media (max-width:767px){
  .hct section{padding:56px 16px}
  .hct-hero{padding:64px 16px 60px!important}
  .hct-card{padding:26px 20px 24px}
  .hct-form .hct-row{grid-template-columns:1fr}
  .hct-side{grid-template-columns:1fr}
  .hct-form button[type=submit]{width:100%}
  .hct .bk-steps{grid-template-columns:repeat(4,1fr)}
  .hct .bk-steps li{flex-direction:column;gap:6px;padding:12px 4px;font-size:.72rem;text-align:center;line-height:1.25}
  .hct .bk-body{padding:24px 18px 8px}
  .hct .bk-svcs{grid-template-columns:1fr}
  .hct .bk-secs{grid-template-columns:1fr 1fr;gap:10px}
  .hct .bk-sec{min-height:52px;padding:10px 12px;font-size:.92rem}
  .hct .bk-sec[aria-pressed="true"]{padding:9.5px 11.5px}
  .hct .bk-form{grid-template-columns:1fr}
  .hct .bk-sum dl{grid-template-columns:1fr}
  .hct .bk-sum dt{border-bottom:0;padding-bottom:4px}
  .hct .bk-sum dd{padding-top:0;background:#F3F6F9}
  .hct .bk-foot{padding:16px 18px}
  .hct .bk-btn{padding:12px 16px}
}
@media (prefers-reduced-motion:reduce){.hct-method,.hct .bk-svc,.hct .bk-sec,.hct-btn{transition:none}.hct-method:hover,.hct .bk-svc:hover{transform:none}}
.hct .hct-form button.hct-navybtn[type=submit]{width:auto;display:inline-flex;background:var(--navy);color:#fff;border:2px solid var(--navy);border-radius:6px;padding:12px 28px;min-height:48px;font:600 1rem/1.2 'Inter',Arial,sans-serif}
.hct .hct-form button.hct-navybtn[type=submit]:hover{background:var(--deep);border-color:var(--deep)}
@media (max-width:767px){.hct .hct-form button.hct-navybtn[type=submit]{width:100%;justify-content:center}}

.bk-form .hp,.hct .bk-form input.hp{position:absolute!important;left:-5000px!important;width:1px!important;height:1px!important;overflow:hidden;opacity:0}

/* ---------- home: client portal promo ---------- */
.hb-portal{background:var(--hr-navy-deep);color:#dfe7ef;padding:84px 24px 80px;font-family:var(--hr-body)}
.hp-wrap{max-width:1140px;margin:0 auto}
.hp-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px;align-items:center}
.hp-eyebrow{font:700 13px/1 var(--hr-nav);letter-spacing:.16em;text-transform:uppercase;color:var(--hr-gold);margin:0 0 14px}
.hb-portal h2{color:var(--hr-gold-head);margin-bottom:.45em}
.hp-lede{font-size:18px;line-height:1.55;color:#fff;max-width:560px;margin-bottom:28px}
.hp-feats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 26px}
.hp-feats li{padding-left:18px;border-left:3px solid var(--hr-gold)}
.hp-feats b{display:block;color:var(--hr-gold);font-size:16px;margin-bottom:4px}
.hp-feats span{font-size:15px;line-height:1.45}
.hp-h3{font-size:24px;color:var(--hr-gold-head);margin:64px 0 22px;text-align:center}
.hp-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:hp}
.hp-steps li{counter-increment:hp;position:relative;background:rgba(255,255,255,.05);border:1px solid rgba(229,178,73,.25);border-radius:10px;padding:52px 22px 22px}
.hp-steps li::before{content:counter(hp);position:absolute;top:-18px;left:22px;width:40px;height:40px;border-radius:50%;background:var(--hr-gold);color:var(--hr-navy-deep);font:700 18px/40px var(--hr-heading);text-align:center}
.hp-steps b,.hp-tips b{display:block;color:#fff;font-size:17px;margin-bottom:6px}
.hp-steps span,.hp-tips span{font-size:15px;line-height:1.5}
.hp-tips{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.hp-tips li{background:var(--hr-gold);color:var(--hr-brown);border-radius:10px;padding:20px}
.hp-tips b{color:var(--hr-navy-deep)}
.hp-cta{display:flex;gap:22px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:44px}
.hp-cta .hb-btn{padding:12px 26px;font-weight:700}
.hp-link{color:var(--hr-gold);font-size:16px}
/* portal mock-up */
.hp-mock{background:#F1F4F7;border-radius:12px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,.55);transform:rotate(1.2deg);font-family:Inter,Arial,sans-serif;color:#12212F}
.hp-mock-bar{background:var(--hr-navy);display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:2px solid var(--hr-gold)}
.hp-mock-bar span{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.3)}
.hp-mock-bar em{font-style:normal;color:#fff;font-family:var(--hr-heading);font-size:14px;margin-left:8px}
.hp-mock-body{padding:14px;display:grid;gap:10px}
.hp-mock-hello{background:linear-gradient(120deg,var(--hr-navy-deep),var(--hr-navy));border-radius:8px;padding:14px 16px}
.hp-mock-hello b{display:block;color:#fff;font-family:var(--hr-heading);font-weight:400;font-size:17px}
.hp-mock-hello small{color:var(--hr-gold);font-weight:700;font-size:12px}
.hp-mock-card{background:#fff;border-radius:8px;padding:12px 14px}
.hp-mock-card>small{display:block;font-family:var(--hr-heading);color:var(--hr-navy);font-size:13px;margin-bottom:8px}
.hp-mock-card>b{display:block;font-size:13px;margin-bottom:10px}
.hp-mock-todo{display:flex;gap:10px;align-items:center;border:1.5px solid #DCE3EA;border-radius:7px;padding:8px 10px;font-size:13px;font-weight:600}
.hp-mock-todo i{font-style:normal;width:24px;height:24px;border-radius:50%;background:#F6E6C0;color:#6B4A0A;display:grid;place-items:center;font-size:12px}
.hp-mock-todo em{display:block;font-style:normal;font-weight:400;color:#5A6B7C;font-size:11px}
.hp-mock-steps{list-style:none;margin:0;padding:0;display:flex;justify-content:space-between;position:relative}
.hp-mock-steps::before{content:"";position:absolute;left:6px;right:6px;top:6px;height:3px;background:linear-gradient(90deg,var(--hr-navy) 50%,#DCE3EA 50%)}
.hp-mock-steps li{width:15px;height:15px;border-radius:50%;background:#fff;border:3px solid #DCE3EA;position:relative}
.hp-mock-steps li.d{background:var(--hr-navy);border-color:var(--hr-navy)}
.hp-mock-steps li.n{background:var(--hr-gold);border-color:var(--hr-gold);box-shadow:0 0 0 4px rgba(229,178,73,.3)}
.hp-mock-labels{display:flex;justify-content:space-between;font-size:10px;color:#5A6B7C;margin-top:6px}
.hp-mock-labels .n{color:var(--hr-navy);font-weight:700}
.hp-mock-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}
.hp-mock-row small{display:block;color:#5A6B7C;font-size:11px}
.hp-mock-up{color:#1E6B3A;font-weight:700;font-size:12px;display:flex;align-items:center;gap:6px}
.hp-mock-up::before{content:"";width:8px;height:8px;border-radius:50%;background:#2BA55A;box-shadow:0 0 0 3px rgba(43,165,90,.18)}
@media (max-width:900px){
  .hp-top{grid-template-columns:1fr;gap:40px}
  .hp-mock{max-width:440px;margin:0 auto;transform:none;width:100%}
  .hp-steps{grid-template-columns:1fr;gap:30px}
}
@media (max-width:560px){
  .hb-portal{padding:60px 20px}
  .hp-feats{grid-template-columns:1fr}
  .hp-lede{font-size:17px}
}

/* =================================================================
   Location pages: UK hub, Poole, Bournemouth (Oct 2026)
   Built on the contact page's .hct shell; .hloc adds the parts below.
   ================================================================= */
.hloc-light{background:#EEF2F7}
.hloc-white{background:#fff}
.hloc-head{max-width:62ch;margin-bottom:36px}
.hloc-head h2{font-size:clamp(1.6rem,3.2vw,2.15rem);color:var(--navy)}
.hloc-head p{margin:14px 0 0;color:var(--slate)}
.hct-navy .hloc-head h2{color:var(--gold)}
.hct-navy .hloc-head p{color:var(--sky)}
.hct-gold .hloc-head h2{color:var(--navy)}
.hct-gold .hloc-head p{color:var(--ink)}

.hloc-place{margin-top:44px}
.hloc-place:first-of-type{margin-top:0}
.hloc-place-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 20px;border-bottom:2px solid var(--gold);padding-bottom:10px;margin-bottom:20px}
.hloc-place-head h3{font-size:clamp(1.3rem,2.4vw,1.6rem);color:var(--navy)}
.hloc-place-head h3 small{font:600 .8rem/1 'Archivo',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin-left:10px}
.hloc-place-head a{font-weight:600;color:var(--navy);text-decoration:none;white-space:nowrap}
.hloc-place-head a:hover{text-decoration:underline}

.hloc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px}
.hloc-grid--wide{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.hloc-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:6px;padding:22px 22px 20px;display:flex;flex-direction:column;gap:8px}
.hloc-white .hloc-card{background:#F7F9FB}
.hloc-tag{font:700 .7rem/1.2 'Archivo',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.hloc-card h3{font-size:1.2rem;color:var(--navy)}
.hloc-card p{margin:0;font-size:.97rem}
.hloc-card ul{margin:4px 0 0;padding-left:1.1em;font-size:.95rem}
.hloc-card ul li{margin:2px 0}
.hloc-card .hloc-site{margin-top:auto;padding-top:8px;font-weight:600;color:var(--navy);overflow-wrap:anywhere}

.hloc-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:18px;list-style:none;margin:0;padding:0}
.hloc-points li{background:rgba(255,255,255,.06);border:1px solid rgba(229,178,73,.35);border-radius:8px;padding:22px}
.hloc-points b{display:block;font-family:var(--hr-heading);font-weight:400;font-size:1.2rem;color:var(--gold);margin-bottom:8px}
.hloc-points span{color:var(--sky);font-size:.97rem}
.hloc-points .num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--gold);color:var(--deep);font:700 .9rem/1 'Archivo',Arial,sans-serif;margin-bottom:12px}

.hloc-prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px;margin-bottom:22px}
.hloc-price{background:#fff;border-radius:8px;padding:20px 22px;box-shadow:0 14px 30px -22px rgba(1,43,79,.5)}
.hloc-price small{display:block;font:700 .72rem/1.2 'Archivo',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.hloc-price b{display:block;font:700 2rem/1.1 'Archivo',Arial,sans-serif;color:var(--navy);margin:6px 0 4px}
.hloc-price span{font-size:.92rem}
.hloc-price.pick{outline:2px solid var(--navy)}
.hloc-note{font-size:.95rem;max-width:70ch;margin:0}

.hloc-faq{max-width:820px}
.hloc-faq details{background:#fff;border:1px solid var(--line);border-radius:8px;margin-bottom:12px}
.hloc-faq summary{cursor:pointer;list-style:none;padding:18px 52px 18px 20px;font-weight:600;color:var(--navy);position:relative}
.hloc-faq summary::-webkit-details-marker{display:none}
.hloc-faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font:700 1.4rem/1 'Archivo',Arial,sans-serif;color:var(--gold)}
.hloc-faq details[open] summary::after{content:"\2212"}
.hloc-faq summary:focus-visible{outline:3px solid rgba(0,65,119,.3);outline-offset:2px;border-radius:8px}
.hloc-faq details p{margin:0;padding:0 20px 18px;color:var(--ink)}
.hloc-faq a,.hloc-card a,.hloc-head a{color:var(--navy)}
.hct-navy .hloc-head a{color:var(--gold)}

@media (max-width:767px){
  .hct section{padding:56px 16px}
  .hct-hero{padding:64px 16px 56px!important}
  .hloc-place-head a{white-space:normal}
}
