
/* ============================================================
   AHSR — corporate identity
   Navy + bold corporate blue (WEF/Churchill register) +
   Australian flag red. Sora only — weight & spacing carry it.
   ============================================================ */
:root{
  --navy:#0B2545; --navy-2:#08203D;
  --blue:#007080; --blue-deep:#00586A; --blue-tint:#E4F1F2;
  --red:#BD002D; --red-deep:#9C0026;
  --mist:#F3F6FB; --mist-2:#E7EEF6;
  --ink:#0B2545; --slate:#46586E; --slate-2:#6A7A8E;
  --line:rgba(11,37,69,.13); --line-soft:rgba(11,37,69,.07);
  --amber:#F5A623; --linkedin:#0A66C2; --white:#fff;
  --sans:"Sora",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:8px; --r-lg:16px;
  --ease:cubic-bezier(.22,.61,.36,1); --ease-out:cubic-bezier(.16,1,.3,1);
  --maxw:1280px; --pad:clamp(20px,5vw,72px); --hh:64px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--white);color:#16273C;line-height:1.6;font-weight:400;letter-spacing:-.011em;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
::selection{background:var(--blue);color:#fff}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}
section[id]{scroll-margin-top:calc(var(--hh) + 16px)}

.progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--blue),#0A8A9C);z-index:1100;transition:width .1s linear}

/* layout */
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.section{padding:clamp(58px,8vw,116px) 0}
.section.tight{padding-top:0}
.mist{background:var(--mist);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);font-weight:600;display:inline-flex;align-items:center;gap:11px}
.eyebrow::before{content:"";width:22px;height:3px;background:var(--red);display:inline-block;border-radius:2px}

h1,h2,h3,h4{font-family:var(--sans);font-weight:700;line-height:1.05;letter-spacing:-.03em;color:var(--ink)}
.display{font-size:clamp(2.5rem,6.2vw,5rem);font-weight:800;letter-spacing:-.04em;line-height:1}
h2.big{font-size:clamp(2rem,4.3vw,3.3rem);font-weight:700;line-height:1.06}
h3{font-size:clamp(1.3rem,2.2vw,1.7rem)}
.lede{font-size:clamp(1.04rem,1.45vw,1.28rem);color:var(--slate);font-weight:400;line-height:1.55;max-width:62ch}
.muted{color:var(--slate-2)} .small{font-size:.86rem} strong,b{font-weight:600}
.head-block{max-width:760px;margin-bottom:clamp(38px,5vw,58px)} .head-block .lede{margin-top:18px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.6em;font-size:.93rem;font-weight:600;padding:.92em 1.55em;border-radius:6px;transition:.32s var(--ease);letter-spacing:-.01em;white-space:nowrap}
.btn svg{width:16px;height:16px;transition:transform .32s var(--ease)}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--blue-deep);transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(0,112,128,.6)}
.btn-primary:hover svg{transform:translateX(4px)}
.btn-ghost{border:1.5px solid var(--line);background:transparent;color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink);background:var(--ink);color:#fff}
.btn-light{
  background:#fff;color:var(--blue);
  border:1.5px solid rgba(0,112,128,.2);
  position:relative;overflow:hidden;
}
.btn-light::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 30%,rgba(0,112,128,.12) 50%,transparent 70%);
  background-size:200% 100%;
  animation:btnShine 6s ease-in-out infinite;
  pointer-events:none;border-radius:inherit;
}
.btn-light:hover{background:var(--blue-tint);transform:translateY(-2px);border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,112,128,.15),0 6px 20px -8px rgba(0,112,128,.35);}
.btn-wa{
  background:linear-gradient(135deg,#24c060 0%,#1FA855 50%,#24c060 100%);
  background-size:200% 200%;
  color:#fff;
  position:relative;overflow:hidden;
  animation:btnGradShift 4s ease infinite;
}
.btn-wa::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.22) 50%,transparent 70%);
  background-size:200% 100%;
  animation:btnShine 6s ease-in-out infinite;
  pointer-events:none;border-radius:inherit;
}
.btn-wa:hover{background:linear-gradient(135deg,#28d46a 0%,#1db84e 50%,#28d46a 100%);background-size:200% 200%;transform:translateY(-2px);box-shadow:0 0 0 4px rgba(31,168,85,.22),0 8px 26px -8px rgba(31,168,85,.55);}
.btn-lg{padding:1.05em 1.95em;font-size:1rem}
.btn-outline-light{border:1.5px solid rgba(255,255,255,.45);color:#fff}
.btn-outline-light:hover{background:#fff;color:var(--navy);border-color:#fff}
.linku{position:relative;font-weight:600;color:var(--blue);display:inline-flex;align-items:center;gap:.4em}
.linku::after{content:"";position:absolute;left:0;bottom:-3px;height:2px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.linku:hover::after{transform:scaleX(1)} .linku svg{width:14px;height:14px}

/* header */
header{position:fixed;top:0;left:0;width:100%;z-index:1000;background:#fff;border-bottom:1px solid var(--line-soft);box-shadow:0 2px 16px -10px rgba(11,37,69,.18);transition:box-shadow .4s var(--ease)}
header.scrolled{box-shadow:0 8px 28px -14px rgba(11,37,69,.4)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:13px var(--pad)}
.logo{display:flex;align-items:center;gap:12px;line-height:1}
.logo .mark{width:40px;height:40px;flex:none}
.logo .lk{display:flex;flex-direction:column;max-width:240px}
.logo .lk strong{font-size:1.05rem;font-weight:800;letter-spacing:.01em;color:var(--ink)}
.logo .lk span{font-size:.66rem;font-weight:600;letter-spacing:.01em;text-transform:none;color:var(--slate-2);margin-top:2px;line-height:1.25;white-space:normal}
@media(max-width:1280px){header .logo .lk span{display:none}}
nav.main{display:flex;align-items:center;gap:2px}
nav.main a{font-size:.85rem;font-weight:500;color:var(--slate);padding:9px 11px;border-radius:6px;transition:.22s;position:relative}
nav.main a:hover{color:var(--blue);background:var(--blue-tint)}
nav.main a.active{color:var(--blue);font-weight:600}
nav.main a.active::after{content:"";position:absolute;left:11px;right:11px;bottom:3px;height:2px;background:var(--red);border-radius:2px}
.hdr-cta{display:flex;align-items:center;gap:12px}
.hamburger{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:8px;align-items:center;justify-content:center;flex-direction:column;gap:4px}
.hamburger span{width:17px;height:2px;background:var(--ink);transition:.3s var(--ease);border-radius:2px}
.menu-open .hamburger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-open .hamburger span:nth-child(2){opacity:0}
.menu-open .hamburger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:990;background:#fff;padding:90px var(--pad) 40px;display:flex;flex-direction:column;transform:translateY(-100%);opacity:0;visibility:hidden;transition:.5s var(--ease);overflow-y:auto}
.menu-open .mobile-menu{transform:translateY(0);opacity:1;visibility:visible}
.mobile-menu a{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;padding:13px 0;border-bottom:1px solid var(--line-soft);transition:.3s;display:flex;justify-content:space-between;align-items:center;color:var(--ink)}
.mobile-menu a span{font-size:.72rem;font-weight:600;color:var(--red)}
.mobile-menu .mm-cta{margin-top:22px;display:flex;flex-direction:column;gap:12px}
.mobile-menu .mm-cta .btn{justify-content:center}

/* reveal + load */
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .85s var(--ease-out),transform .85s var(--ease-out)}
[data-reveal].in{opacity:1;transform:none}
[data-d="1"]{transition-delay:.08s}[data-d="2"]{transition-delay:.16s}[data-d="3"]{transition-delay:.24s}[data-d="4"]{transition-delay:.32s}
.load-up{opacity:0;transform:translateY(22px);animation:loadUp .9s var(--ease-out) forwards}
.load-up.l2{animation-delay:.12s}.load-up.l3{animation-delay:.24s}.load-up.l4{animation-delay:.36s}.load-up.l5{animation-delay:.48s}
@keyframes loadUp{to{opacity:1;transform:none}}

/* media + bands */
.media{position:relative;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(135deg,var(--navy),var(--blue-deep))}
.media img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.72) contrast(1.04)}
.media.tall{aspect-ratio:3/4}
.media .cap{position:absolute;left:0;right:0;bottom:0;padding:22px;background:linear-gradient(to top,rgba(11,37,69,.9),transparent);color:#fff;font-weight:600;font-size:1rem}
.band{position:relative;display:flex;align-items:center;overflow:hidden;isolation:isolate}
.band>.band-img{position:absolute;inset:-12% 0;width:100%;height:124%;object-fit:cover;z-index:-2;filter:saturate(.62) contrast(1.05) brightness(.9);will-change:transform}
.band::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,32,61,.95) 0%,rgba(8,32,61,.8) 45%,rgba(8,32,61,.46) 100%)}
.band .wrap{position:relative;z-index:2;width:100%}

/* About — full-bleed deep navy image band */
.about-band{display:flex;align-items:center}
/* Image-backed content sections with parallax + legible white headings */
.imgband{position:relative;overflow:hidden;isolation:isolate}
.imgband>.band-img{position:absolute;inset:-12% 0;width:100%;height:124%;object-fit:cover;z-index:-2;filter:saturate(.6) contrast(1.04) brightness(.62);will-change:transform}
.imgband::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,32,61,.78),rgba(8,32,61,.88));pointer-events:none}
.imgband .head-block .eyebrow{color:#fff}
.imgband .head-block h2{color:#fff}
.imgband .head-block .lede{color:rgba(255,255,255,.86)}
.about-band::after{background:linear-gradient(120deg,rgba(5,22,46,.96) 0%,rgba(8,32,61,.9) 40%,rgba(0,88,106,.7) 100%)}
.about-band::before{display:none}

/* hero — fixed-height content boxes; headline/subhead font is fitted by JS so every slide is identical */
.hero{
  position:relative;
  min-height:100svh;
  --h1-box:clamp(170px,31vh,340px);
  --lede-box:clamp(58px,11vh,104px);
  padding-top:calc(var(--hh) + clamp(28px,5vh,60px));
  padding-bottom:clamp(64px,9vh,100px);
  color:#fff;display:flex;align-items:center;overflow:hidden;
}
.hero>.band-img{display:none}
.hero .eyebrow{color:#fff;justify-content:center}
/* fixed-height boxes — text is centred inside and scaled to fit, so the layout never shifts between slides */
.hero h1{color:#fff;margin:clamp(10px,1.6vh,20px) auto;width:100%;max-width:min(940px,92vw);height:var(--h1-box);display:flex;align-items:center;justify-content:center;overflow:hidden;text-wrap:balance}
.hero h1 .ht{display:block;width:100%;line-height:1.08;font-weight:600;letter-spacing:-.025em}
.hero .lede{color:rgba(255,255,255,.9);width:100%;max-width:min(640px,90vw);margin:0 auto;height:var(--lede-box);display:flex;align-items:center;justify-content:center;overflow:hidden;text-wrap:pretty}
.hero .lede .lt{display:block;width:100%;line-height:1.5}
.hero-text{transition:opacity .4s var(--ease);text-align:center;max-width:760px;margin:0 auto;will-change:opacity}
.hero-text.fade{opacity:0}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:clamp(24px,3.4vh,34px);justify-content:center}
.hero .btn-ghost{border-color:rgba(255,255,255,.5);color:#fff}
.hero .btn-ghost:hover{background:#fff;color:var(--navy);border-color:#fff}
.li-rating{display:inline-flex;align-items:center;gap:13px;background:#fff;border-radius:100px;padding:10px 20px 10px 14px;box-shadow:0 14px 34px -14px rgba(0,0,0,.45);margin:clamp(22px,3vh,30px) auto 0;transition:.3s var(--ease);cursor:pointer;max-width:100%}
.li-rating:hover{transform:translateY(-3px);box-shadow:0 18px 40px -14px rgba(0,0,0,.55)}
.hero .wrap{display:flex;flex-direction:column;align-items:center;text-align:center}
.li-logo{border-radius:6px;background:var(--linkedin);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.li-rating .li-logo{width:30px;height:30px}.li-rating .li-logo svg{width:18px;height:18px}
.li-stars{display:flex;gap:2px;color:var(--amber)}.li-stars svg{width:16px;height:16px}
.li-rating .li-txt{font-size:.84rem;color:var(--navy);line-height:1.2}.li-rating .li-txt b{font-weight:700;font-size:.96rem}.li-rating .li-txt span{color:var(--slate-2);font-weight:500}

/* hero slide track — incoming image slides over the top; outgoing parked instantly (no backward drift) */
.hero-slides{position:absolute;inset:0;z-index:-2;overflow:hidden}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;transform:translateX(100%);will-change:transform;backface-visibility:hidden}
.hero-slide img{width:100%;height:100%;object-fit:cover;filter:saturate(.62) contrast(1.05) brightness(.9)}
.hero-slide.active{transform:translateX(0)}
.hero-dots{position:absolute;left:0;right:0;bottom:max(22px,env(safe-area-inset-bottom));z-index:6;display:flex;justify-content:center;gap:9px;padding:0 16px;flex-wrap:wrap}
.hero-dot{width:26px;height:4px;border-radius:3px;background:rgba(255,255,255,.32);transition:.3s var(--ease);cursor:pointer;padding:0;border:none}
.hero-dot.active{width:52px;background:rgba(255,255,255,.22)}
.hero-dot:hover{background:rgba(255,255,255,.55)}

/* ticker */
.ticker{background:linear-gradient(135deg, var(--navy-2) 0%, #0a3a44 100%);color:#fff;border-bottom:3px solid var(--red)}
.ticker-in{display:flex;align-items:center;gap:18px;padding:19px var(--pad);flex-wrap:wrap}
.ticker .t-label{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:600}
.ticker .t-role{font-size:1.22rem;font-weight:700;letter-spacing:-.02em;transition:opacity .3s;min-width:170px}
.ticker .t-arrow{color:var(--red);font-weight:700}
.ticker .t-code{font-size:.82rem;font-weight:600;color:#69C0CB;letter-spacing:.04em;transition:opacity .3s}
.ticker .t-qual{font-size:1.04rem;font-weight:600;flex:1;min-width:240px;transition:opacity .3s}
.ticker .t-stamp{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#fff;background:var(--red);padding:7px 12px;border-radius:5px;white-space:nowrap}

/* trust bar */
.trustbar{background:var(--mist);border-bottom:1px solid var(--line)}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-cell{padding:24px var(--pad);display:flex;align-items:center;gap:14px;font-size:.92rem;font-weight:500;color:var(--ink);border-right:1px solid var(--line);transition:.35s var(--ease);cursor:default;position:relative}
.trust-cell:last-child{border-right:none}
.trust-cell .tc-ic{width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex:none;transition:.35s var(--ease)}
.trust-cell svg{width:20px;height:20px;color:var(--blue);flex:none;transition:.35s var(--ease)}
.trust-cell:hover{background:#fff;box-shadow:0 18px 36px -26px rgba(11,37,69,.35);transform:translateY(-3px);z-index:2}
.trust-cell:hover .tc-ic{background:var(--red);border-color:var(--red);transform:scale(1.08) rotate(-6deg)}
.trust-cell:hover svg{color:#fff;transform:scale(1.08)}

/* generic split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,80px);align-items:center}
.split.wide{grid-template-columns:.92fr 1.08fr}

@media (max-width:760px){
  .hero{min-height:100svh;--h1-box:clamp(130px,22vh,240px);--lede-box:clamp(54px,10vh,92px);padding-top:calc(var(--hh) + 20px);padding-bottom:clamp(54px,11vh,80px)}
  .hero-slides,.hero-slide,.hero-slide img{height:100%}
}

/* cards */
.cards{display:grid;gap:20px}.cards.c3{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;transition:.4s var(--ease);display:flex;flex-direction:column;height:100%;border-top:3px solid var(--blue)}
.card:hover{transform:translateY(-4px);box-shadow:0 26px 50px -34px rgba(11,37,69,.45)}
.card .k{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:14px}
.card h3{font-size:1.3rem;margin-bottom:8px}
.card p{font-size:.9rem;color:var(--slate);line-height:1.5;flex:1}
.card .more{margin-top:18px}

/* qualifications */
.feat-qual{background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:clamp(28px,4vw,52px);display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center;border-left:5px solid var(--red)}
.feat-qual h3{color:#fff;font-size:clamp(1.7rem,3vw,2.5rem)}
.feat-qual .fq-code{font-size:.78rem;font-weight:600;color:#69C0CB;letter-spacing:.04em}
.feat-qual p{color:rgba(255,255,255,.74);font-size:.96rem;margin:14px 0}
.feat-qual ul{list-style:none;margin:18px 0;display:grid;gap:10px}
.feat-qual li{display:flex;gap:12px;font-size:.92rem;color:rgba(255,255,255,.9)}
.feat-qual li svg{width:18px;height:18px;color:#fff;flex:none;margin-top:3px;opacity:.85}
.fq-meta{display:flex;gap:28px;margin:22px 0;flex-wrap:wrap}
.fq-meta div span{font-size:.64rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);display:block}
.fq-meta div b{font-size:1.4rem;font-weight:700}
.qual-group{border-top:1px solid var(--line);padding:32px 0;display:flex;gap:24px;align-items:flex-start}
.qg-photo{flex:0 0 96px;width:96px;height:96px;border-radius:14px;overflow:hidden;background:var(--mist);position:relative}
.qg-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.qual-group:hover .qg-photo img{transform:scale(1.07)}
.qg-body{flex:1;min-width:0}
.qg-head{display:flex;align-items:baseline;gap:16px;margin-bottom:8px}
.qg-head h3{font-size:1.55rem}.qg-head .qg-ic{font-size:.7rem;font-weight:700;color:var(--red);letter-spacing:.1em}
@media (max-width:560px){.qual-group{gap:14px}.qg-photo{flex-basis:64px;width:64px;height:64px;border-radius:10px}}
.qual-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line-soft);margin-top:16px;border-radius:var(--r);overflow:hidden;border:1px solid var(--line-soft)}
.qual-item{background:#fff;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;transition:.25s}
.qual-item:hover{background:var(--blue-tint)}
.qual-item .qi-code{flex:none;font-size:.74rem;font-weight:600;color:var(--blue);min-width:84px;letter-spacing:.02em}
.qual-item .qi-name{flex:1 1 auto;min-width:0;font-size:.93rem;font-weight:500;white-space:normal;overflow-wrap:break-word}
.qual-item .qi-lvl{flex:none;font-size:.62rem;font-weight:600;color:var(--slate-2);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}

/* ===== Qualifications — 2-col career grid ===== */
@media (min-width:861px){
  .section-full{min-height:auto;display:block;padding-top:clamp(58px,8vw,116px);padding-bottom:clamp(58px,8vw,116px)}
  .section-full>.wrap{width:100%}
}

/* Grid: 2 columns always on desktop, 1 on mobile */
.career-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

/* Card: tall rectangle, split layout — image top, content panel bottom */
.career-card{
  position:relative;
  border-radius:var(--r-lg);
  overflow:hidden;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  cursor:pointer;
  transition:transform .45s var(--ease),box-shadow .45s var(--ease);
  box-shadow:0 2px 16px -8px rgba(11,37,69,.18);
  background:var(--navy);
}
.career-card:hover,.career-card:focus-visible{
  transform:translateY(-5px);
  box-shadow:0 32px 64px -28px rgba(8,32,61,.55);
}

/* Image: fixed height at top of card */
.career-card .cc-img{
  position:relative;
  height:200px;
  flex:none;
  overflow:hidden;
}
.career-card .cc-img img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 20%;
  transition:transform .8s var(--ease);
  filter:saturate(.82) contrast(1.04) brightness(.92);
}
.career-card:hover .cc-img img{transform:scale(1.07)}

/* Scrim on image bottom edge — bleeds into content panel */
.career-card .cc-img::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,transparent 38%,var(--navy) 100%);
  pointer-events:none;
}

/* Content panel: locked structure via flex column */
.cc-body{
  display:flex;
  flex-direction:column;
  gap:0;
  padding:20px 24px 24px;
  flex:1;
  background:var(--navy);
}

/* Eyebrow — always first, locked position */
.cc-eyebrow{
  display:block;
  font-size:.64rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#7FCFD8;
  margin-bottom:8px;
}

/* Heading — always second, fixed font */
.career-card h3{
  color:#fff;
  font-size:1.35rem;
  font-weight:700;
  letter-spacing:-.022em;
  line-height:1.1;
  margin:0 0 10px;
}

/* Excerpt — always third */
.cc-excerpt{
  font-size:.86rem;
  color:rgba(255,255,255,.65);
  line-height:1.5;
  margin:0 0 16px;
}

/* Qual list — always fourth */
.cc-quals{
  display:flex;
  flex-direction:column;
  gap:0;
  margin:0 0 20px;
  border-top:1px solid rgba(255,255,255,.1);
  padding-top:14px;
  flex:1;
}
.cc-quals .cq{
  font-size:.82rem;
  font-weight:500;
  color:rgba(255,255,255,.88);
  line-height:1.4;
  padding:6px 0 6px 14px;
  position:relative;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.cc-quals .cq:last-child{border-bottom:none}
.cc-quals .cq::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:4px;
  height:4px;
  border-radius:50%;
  background:#7FCFD8;
}
.cc-quals .cq-connector{
  font-size:.68rem;
  font-style:italic;
  color:rgba(255,255,255,.32);
  padding:2px 0 2px 14px;
  line-height:1;
}

/* CTA — always last, pinned to bottom */
.cc-cta{
  display:inline-flex;
  align-items:center;
  gap:9px;
  background:#fff;
  color:var(--navy);
  font-weight:700;
  font-size:.86rem;
  padding:13px 20px;
  border-radius:999px;
  transition:.25s var(--ease);
  align-self:flex-start;
  white-space:nowrap;
}
.cc-cta svg{width:15px;height:15px;transition:transform .25s var(--ease)}
.career-card:hover .cc-cta{background:var(--red);color:#fff}
.career-card:hover .cc-cta svg{transform:translateX(4px)}

/* Mobile: 1-col, shorter image */
@media(max-width:640px){
  .career-grid{grid-template-columns:1fr;gap:16px}
  .career-card .cc-img{height:160px}
  .career-card h3{font-size:1.2rem}
  .cc-body{padding:16px 18px 20px}
}

/* dark + stats */
.dark-sec{background:var(--navy);color:#fff}
.stats-merged{position:relative;overflow:hidden}
.stats-merged>.band-img{position:absolute;inset:-12% 0;width:100%;height:124%;object-fit:cover;z-index:0;filter:saturate(.55) contrast(1.05) brightness(.5);will-change:transform}
.stats-merged::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(8,32,61,.82),rgba(8,32,61,.9));pointer-events:none}
.stats-merged .trust-rating-inline{background:rgba(255,255,255,.05)}
.dark-sec .eyebrow{color:#fff} .dark-sec h2,.dark-sec h3{color:#fff} .dark-sec .lede{color:rgba(255,255,255,.74)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.stat .n{font-size:clamp(2.5rem,5vw,3.9rem);font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--blue)}
.dark-sec .stat .n,.band .stat .n{color:#fff}
.stat .l{font-size:.74rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--slate-2);margin-top:10px;line-height:1.4}
.dark-sec .stat .l,.band .stat .l{color:rgba(255,255,255,.6)}
.stat.red .n{color:var(--red)}

/* reviews */
.rev-head{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:34px}
.rev-summary{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 24px}
.rev-summary .li-logo{width:42px;height:42px}.rev-summary .li-logo svg{width:24px;height:24px}
.rev-summary .rs-score{font-size:2rem;font-weight:800;letter-spacing:-.03em;color:var(--ink);line-height:1}
.rs-stars{display:flex;gap:2px;color:var(--amber)}.rs-stars svg{width:15px;height:15px}
.rev-summary .rs-sub{font-size:.78rem;color:var(--slate-2);font-weight:500}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}
.filter{font-size:.78rem;font-weight:600;padding:9px 16px;border:1.5px solid var(--line);border-radius:100px;transition:.25s;color:var(--slate)}
.filter:hover{border-color:var(--ink)} .filter.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;transition:.4s var(--ease)}
.review:hover{transform:translateY(-4px);box-shadow:0 26px 50px -34px rgba(11,37,69,.4)}
.r-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.r-av{position:relative;width:46px;height:46px;border-radius:50%;overflow:hidden;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.92rem;flex:none}
.r-av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.r-id{flex:1;min-width:0}.r-name{font-weight:700;font-size:.92rem;color:var(--ink);line-height:1.2}.r-head{font-size:.76rem;color:var(--slate-2);line-height:1.3;margin-top:1px}
.r-li{width:22px;height:22px;color:var(--linkedin);flex:none}
.r-stars{display:flex;gap:2px;color:var(--amber);margin-bottom:12px}.r-stars svg{width:15px;height:15px}
.r-text{font-size:.95rem;color:#2C3E54;line-height:1.55;flex:1}
.r-chip{margin-top:16px;align-self:flex-start;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--blue);background:var(--blue-tint);padding:6px 11px;border-radius:5px}

/* real-photo avatar — rounded crop, initials fallback */
.r-av-real{background:var(--blue-tint);overflow:hidden;}
.r-av-real img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:50%;display:block;}
.r-av-real .r-av-init{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.92rem;color:var(--blue);z-index:0;}
.r-av-real img ~ .r-av-init{z-index:-1;}
.r-av-nophoto .r-av-init{z-index:1;}

/* read-more expand panel */
.r-expand{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(0.4,0,0.2,1);}
.r-expand.r-open{max-height:1200px;}
.r-full{font-size:.875rem;color:var(--slate);line-height:1.65;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);}

/* card footer row */
.r-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;flex-wrap:wrap;}
.r-more-btn{font-size:.76rem;font-weight:600;color:var(--blue);background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:4px;padding:0;line-height:1;transition:opacity .2s;}
.r-more-btn:hover{opacity:.7;}
.r-more-btn svg{width:14px;height:14px;flex:none;transition:transform .3s;}
.r-more-btn.r-more-open svg{transform:rotate(180deg);}

/* review detail modal */
.review-modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:20px}
.review-modal.open{display:flex;animation:fade .3s}
.review-modal .modal-bg{position:absolute;inset:0;background:rgba(8,32,61,.6);backdrop-filter:blur(6px)}
.review-modal .modal-card{position:relative;background:#fff;border-radius:var(--r-lg);width:min(620px,100%);max-height:90vh;overflow:hidden;box-shadow:0 40px 100px -30px rgba(0,0,0,.5);display:flex;flex-direction:column;animation:cardUp .45s var(--ease-out)}
.review-modal .modal-head{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-shrink:0}
.review-modal .rm-meta{display:flex;align-items:center;gap:12px}
.review-modal .rm-av{width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;flex:none;position:relative}
.review-modal .rm-av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.review-modal .rm-av .rm-init{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#fff}
.review-modal .rm-av img{object-position:center top}
.review-modal .rm-av.has-photo .rm-init{display:none}
.review-modal .rm-name{font-size:.96rem;font-weight:700;color:var(--ink);line-height:1.2}
.review-modal .rm-role{font-size:.76rem;color:var(--slate-2);line-height:1.3;margin-top:2px}
.review-modal .modal-close{width:34px;height:34px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:.3s;flex-shrink:0;cursor:pointer}
.review-modal .modal-close:hover{background:var(--ink);color:#fff}
.review-modal .modal-body{padding:24px;overflow-y:auto;flex:1}
.review-modal .rm-stars{display:flex;gap:2px;color:var(--amber);margin-bottom:16px}
.review-modal .rm-stars svg{width:16px;height:16px}
.review-modal .rm-text{font-size:1rem;color:#2C3E54;line-height:1.65}
.review-modal .rm-chip{margin-top:18px;display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--blue);background:var(--blue-tint);padding:6px 11px;border-radius:5px}

/* pricing */
.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.price-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;transition:.35s var(--ease);position:relative;border-top:3px solid var(--line);overflow:visible}
.price-card:hover{transform:translateY(-4px);box-shadow:0 26px 50px -34px rgba(11,37,69,.4);border-top-color:var(--blue)}
.price-card.feat{background:var(--navy);color:#fff;border-color:var(--navy);border-top-color:var(--red);padding-top:34px;}
.price-card .pc-lvl{font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.price-card.feat .pc-lvl{color:#69C0CB}
.price-card h3{font-size:1.12rem;margin:12px 0 10px;line-height:1.2}.price-card.feat h3{color:#fff}
.price-card .pc-from{font-size:.72rem;color:var(--slate-2);font-weight:500}
.price-card .pc-num{font-size:2.3rem;font-weight:800;letter-spacing:-.03em;margin:4px 0 2px;line-height:1;color:var(--ink)}.price-card.feat .pc-num{color:#fff}
.price-card .pc-cur{font-size:.7rem;color:var(--slate-2)}.price-card.feat .pc-cur{color:rgba(255,255,255,.5)}
.price-tag{position:absolute;top:-11px;right:18px;background:var(--red);color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 11px;border-radius:100px}
.price-card .btn{white-space:normal;width:100%;text-align:center;justify-content:center;line-height:1.25}
.career-card .cc-cta{white-space:normal;text-align:left}
.incl{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}
.incl div{display:flex;gap:10px;font-size:.9rem;color:var(--slate);font-weight:500}
.incl svg{width:17px;height:17px;color:var(--blue);flex:none;margin-top:3px}

/* team */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.member .m-img{aspect-ratio:3/4;border-radius:var(--r-lg);overflow:hidden;margin-bottom:14px;background:linear-gradient(150deg,var(--navy),var(--blue-deep))}
.member .m-img img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(1.04);transition:.5s var(--ease)}
.member:hover .m-img img{transform:scale(1.04)}
.member h3{font-size:1.12rem}.member .m-role{font-size:.8rem;color:var(--blue);font-weight:600;margin-top:2px}

/* faq */
.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;text-align:left;padding:26px 40px 26px 0;font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:700;letter-spacing:-.02em;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:20px;transition:.25s}
.faq-q:hover{color:var(--blue)}
.faq-q .pl{position:relative;width:18px;height:18px;flex:none}
.faq-q .pl::before,.faq-q .pl::after{content:"";position:absolute;background:var(--red);transition:.35s var(--ease)}
.faq-q .pl::before{top:50%;left:0;width:100%;height:2px;transform:translateY(-50%)}
.faq-q .pl::after{left:50%;top:0;height:100%;width:2px;transform:translateX(-50%)}
.faq-item.open .pl::after{transform:translateX(-50%) scaleY(0)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .45s var(--ease)}
.faq-a .inner{padding:0 60px 28px 0;color:var(--slate);font-size:1rem;line-height:1.6;max-width:74ch}
.faq-a a{color:var(--blue);font-weight:600}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px)}
.contact-info{display:grid;gap:26px;align-content:start}
.ci-block .ci-k{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin-bottom:8px}
.ci-block .ci-v{font-size:1.04rem;font-weight:500}.ci-block .ci-v a{color:var(--blue)}
.offices{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:6px}
.office{border:1px solid var(--line);border-radius:var(--r);padding:18px;border-top:3px solid var(--blue)}
.office h3{font-size:1.1rem;margin-bottom:6px}.office p{font-size:.84rem;color:var(--slate);line-height:1.5}
.form{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(26px,3vw,40px);box-shadow:0 30px 60px -44px rgba(11,37,69,.4)}
.field{margin-bottom:18px}
.field label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--slate);margin-bottom:8px}
.field input,.field textarea{width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:var(--r);background:var(--mist);font-family:var(--sans);font-size:.95rem;color:var(--ink);transition:.25s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(0,112,128,.12)}
.field textarea{resize:vertical;min-height:120px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* CTA band */
.cta-band{position:relative;border-radius:var(--r-lg);overflow:hidden;text-align:center;color:#fff;isolation:isolate}
.cta-band>.band-img{position:absolute;inset:-12% 0;width:100%;height:124%;object-fit:cover;z-index:-2;filter:saturate(.6) brightness(.78);will-change:transform}
.cta-band::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,32,61,.86),rgba(0,88,106,.92))}
.cta-inner{padding:clamp(48px,7vw,92px) var(--pad)}
.cta-band h2{color:#fff;font-size:clamp(1.9rem,4.2vw,3.2rem);margin-bottom:16px}
.cta-band p{color:rgba(255,255,255,.86);max-width:54ch;margin:0 auto 28px;font-size:1.05rem}
.cta-band .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* footer */
footer{background:var(--navy-2);color:#fff;padding-top:clamp(56px,7vw,84px);border-top:4px solid var(--red)}
.foot-top{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px;padding-bottom:52px;border-bottom:1px solid rgba(255,255,255,.12)}
.foot-brand .logo .lk strong{color:#fff}.foot-brand .logo .lk span{color:rgba(255,255,255,.5)}
.foot-brand p{color:rgba(255,255,255,.6);font-size:.9rem;margin:18px 0;max-width:34ch;line-height:1.6}
.foot-col h4{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#69C0CB;margin-bottom:16px}
.foot-col a{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.7);font-size:.9rem;padding:7px 0;transition:.22s}
.foot-col a:hover{color:#fff;padding-left:5px}
.foot-col a svg{width:16px;height:16px;flex:none;color:#5FB3BE;transition:.22s}
.foot-col a:hover svg{color:var(--red);transform:translateX(1px)}
.foot-social{display:flex;gap:10px;margin-top:18px}
.foot-social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.75);transition:.3s var(--ease)}
.foot-social a svg{width:17px;height:17px}
.foot-social a:hover{background:var(--blue);border-color:var(--blue);color:#fff;transform:translateY(-3px)}
.accred{display:flex;align-items:center;gap:14px;margin-top:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.16);border-radius:var(--r);background:rgba(255,255,255,.03)}
.accred .ac-badge{width:46px;height:46px;border-radius:8px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:700;text-align:center;line-height:1.2;flex:none}
.accred .ac-txt{font-size:.78rem;color:rgba(255,255,255,.7);line-height:1.4}.accred .ac-txt b{color:#fff;font-weight:700;font-size:.86rem}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;flex-wrap:wrap}
.foot-bottom p{font-size:.8rem;color:rgba(255,255,255,.45)}
.foot-bottom .fb-links{display:flex;gap:20px}.foot-bottom .fb-links a{font-size:.8rem;color:rgba(255,255,255,.55)}.foot-bottom .fb-links a:hover{color:#fff}

/* whatsapp float */
.wa-float{position:fixed;bottom:24px;right:24px;z-index:900;width:58px;height:58px;border-radius:50%;background:#1FA855;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px -10px rgba(31,168,85,.6);transition:.35s var(--ease)}
.wa-float::before{content:"";position:absolute;inset:0;border-radius:50%;background:#1FA855;opacity:.55;animation:waPulse 2.6s ease-out infinite;z-index:-1}
@keyframes waPulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.9);opacity:0}}
.wa-float:hover{transform:scale(1.08) translateY(-2px)}
.wa-float svg{width:28px;height:28px;fill:#fff}
.wa-float::after{content:"Chat with us";position:absolute;right:70px;white-space:nowrap;background:var(--navy);color:#fff;font-size:.78rem;font-weight:500;padding:8px 12px;border-radius:8px;opacity:0;transform:translateX(8px);transition:.3s;pointer-events:none}
.wa-float:hover::after{opacity:1;transform:translateX(0)}


/* quiz modal */
.modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:20px}
.modal.open{display:flex;animation:fade .3s}
@keyframes fade{from{opacity:0}to{opacity:1}}
.modal-bg{position:absolute;inset:0;background:rgba(8,32,61,.6);backdrop-filter:blur(6px)}
.modal-card{position:relative;background:#fff;border-radius:var(--r-lg);width:min(560px,100%);max-height:92vh;overflow:hidden;box-shadow:0 40px 100px -30px rgba(0,0,0,.5);display:flex;flex-direction:column;animation:cardUp .45s var(--ease-out)}
@keyframes cardUp{from{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:none}}
.modal-head{padding:22px 28px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.modal-head .mh-title{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.modal-close{width:34px;height:34px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:.3s}
.modal-close:hover{background:var(--ink);color:#fff}
.qprogress{height:4px;background:var(--mist-2)}.qprogress div{height:100%;background:var(--red);width:25%;transition:width .45s var(--ease)}
.modal-body{padding:30px 28px 28px;overflow-y:auto}
.qstep{display:none}.qstep.active{display:block;animation:qin .35s var(--ease-out)}
@keyframes qin{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.qstep .q-count{font-size:.7rem;font-weight:600;color:var(--slate-2);letter-spacing:.04em}
.qstep h3{font-size:1.5rem;margin:8px 0 20px;line-height:1.15}
.qopts{display:grid;gap:10px}
.qopt{text-align:left;padding:15px 18px;border:1.5px solid var(--line);border-radius:var(--r);background:#fff;font-size:.95rem;font-weight:500;transition:.22s;display:flex;justify-content:space-between;align-items:center;color:var(--ink)}
.qopt:hover{border-color:var(--blue);background:var(--blue-tint);transform:translateX(3px)}
.qopt svg{width:16px;height:16px;color:var(--blue);opacity:0;transition:.22s}.qopt:hover svg{opacity:1}
.qback{margin-top:20px;font-size:.78rem;font-weight:600;color:var(--slate-2)}.qback:hover{color:var(--ink)}
.qresult{text-align:center}
.qresult .qr-ic{width:60px;height:60px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}.qresult .qr-ic svg{width:28px;height:28px}
.qresult h3{font-size:1.5rem;margin-bottom:6px}
.qr-qual{background:var(--mist);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin:20px 0;text-align:left;border-left:4px solid var(--blue)}
.qr-qual .qrq-code{font-size:.72rem;font-weight:600;color:var(--blue)}
.qr-qual .qrq-name{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;line-height:1.15;margin-top:4px;color:var(--ink)}
.qr-qual .qrq-also{font-size:.84rem;color:var(--slate);margin-top:10px;line-height:1.5}
.qr-cta{display:flex;flex-direction:column;gap:10px;margin-top:6px}.qr-cta .btn{justify-content:center}
.qr-note{font-size:.76rem;color:var(--slate-2);margin-top:16px;line-height:1.5}
.qr-next{background:var(--blue-tint);border:1px solid rgba(0,112,128,.18);border-left:4px solid var(--blue);border-radius:var(--r);padding:16px 18px;margin:6px 0 18px;text-align:left}
.qr-next strong{display:block;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin-bottom:6px}
.qr-next p{font-size:.9rem;color:var(--ink);line-height:1.6}
.qr-next a{color:var(--blue);font-weight:600;text-decoration:underline}
/* ===== RPL process — 9-step timeline ===== */
.rpl-flow{margin-top:clamp(30px,4vw,52px);display:grid;grid-template-columns:0.86fr 1fr;gap:clamp(28px,4vw,56px);align-items:start}
/* sticky feature media */
.rpl-media{position:sticky;top:104px;border-radius:var(--r-lg);overflow:hidden;background:var(--navy);box-shadow:0 40px 80px -40px rgba(11,37,69,.6)}
.rpl-media__img{position:relative;aspect-ratio:4/5;overflow:hidden}
.rpl-media__img img{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block}
.rpl-media__img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,32,61,.05) 0%,rgba(8,32,61,.35) 52%,rgba(8,32,61,.94) 100%)}
.rpl-media__cap{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:clamp(20px,2.4vw,28px);color:#fff}
.rpl-media__cap .rmc-eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#69C0CB}
.rpl-media__cap h3{font-size:clamp(1.2rem,1.7vw,1.5rem);font-weight:700;letter-spacing:-.02em;line-height:1.12;margin:8px 0 6px;color:#fff}
.rpl-media__cap p{font-size:.9rem;line-height:1.55;color:rgba(255,255,255,.82)}
.rpl-media__stat{display:flex;gap:22px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.18)}
.rpl-media__stat b{display:block;font-size:1.35rem;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1}
.rpl-media__stat span{font-size:.72rem;color:rgba(255,255,255,.7);line-height:1.3;margin-top:4px;display:block}
/* the steps rail */
.rflow{list-style:none;margin:0;padding:0;position:relative}
.rflow::before{content:"";position:absolute;left:23px;top:26px;bottom:26px;width:2px;background:linear-gradient(var(--blue) 0%,rgba(0,112,128,.5) 60%,rgba(0,112,128,.12) 100%);z-index:0}
.rflow__item{position:relative;display:flex;gap:clamp(15px,1.8vw,22px);padding-bottom:clamp(14px,1.6vw,20px)}
.rflow__item:last-child{padding-bottom:0}
.rflow__node{position:relative;z-index:1;flex:none;width:48px;height:48px;border-radius:50%;background:#fff;border:2px solid var(--blue);color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem;box-shadow:0 0 0 6px var(--mist),0 10px 22px -12px rgba(0,112,128,.55);transition:.45s var(--ease)}
.rflow__item:hover .rflow__node,.rflow__item:focus-within .rflow__node{background:var(--blue);color:#fff;transform:scale(1.07)}
.rflow__card{flex:1 1 auto;min-width:0;background:#fff;border:1px solid var(--line);border-left:3px solid transparent;border-radius:var(--r-lg);padding:clamp(16px,1.9vw,22px) clamp(18px,2vw,24px);display:flex;gap:16px;align-items:flex-start;transition:.4s var(--ease)}
.rflow__item:hover .rflow__card{border-left-color:var(--blue);transform:translateY(-3px);box-shadow:0 24px 46px -28px rgba(11,37,69,.45)}
.rflow__ic{flex:none;width:46px;height:46px;border-radius:12px;background:var(--blue-tint);display:flex;align-items:center;justify-content:center;transition:.4s var(--ease)}
.rflow__ic svg{width:23px;height:23px;color:var(--blue);stroke-width:1.7}
.rflow__item:hover .rflow__ic{background:var(--blue)}
.rflow__item:hover .rflow__ic svg{color:#fff}
.rflow__eyebrow{font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.rflow__title{font-size:clamp(1.06rem,1.5vw,1.24rem);font-weight:700;letter-spacing:-.02em;color:var(--ink);margin:3px 0 6px;line-height:1.16}
.rflow__desc{font-size:.92rem;line-height:1.6;color:var(--slate)}
.rflow__desc a{color:var(--blue);font-weight:600;text-decoration:underline}
.rflow__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.rflow__tag{display:inline-flex;align-items:center;gap:7px;font-size:.74rem;font-weight:600;color:var(--blue);background:var(--blue-tint);border:1px solid rgba(0,112,128,.16);padding:6px 12px;border-radius:100px;line-height:1.1}
.rflow__tag svg{width:13px;height:13px;flex:none;color:var(--blue)}
.rflow__tag.is-amber{color:#B45309;background:#FFF7ED;border-color:rgba(217,119,6,.26)}
.rflow__tag.is-amber svg{color:#D97706}
/* value-added bonus (not a numbered step) */
.rflow__item--bonus{margin-top:6px}
.rflow__node--star{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 0 0 6px var(--mist),0 12px 26px -12px rgba(0,112,128,.7)}
.rflow__node--star svg{width:22px;height:22px}
.rflow__item--bonus .rflow__card{background:var(--blue-tint);border-color:rgba(0,112,128,.2);border-left-color:var(--blue)}
.rflow__item--bonus:hover .rflow__card{transform:translateY(-3px);box-shadow:0 24px 46px -28px rgba(0,112,128,.5)}
.rflow__item--bonus .rflow__ic{background:#fff}
.rflow__eyebrow--bonus{color:var(--blue)}
/* important callout + section CTA */
.rpl-important{margin-top:clamp(26px,3vw,38px);padding:18px 20px;background:#FFF7ED;border:1px solid rgba(217,119,6,.26);border-left:4px solid #D97706;border-radius:var(--r);display:flex;gap:14px;align-items:flex-start}
.rpl-important svg{width:22px;height:22px;color:#D97706;flex:none;margin-top:1px}
.rpl-important strong{display:block;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#B45309;margin-bottom:4px}
.rpl-important p{font-size:.92rem;color:var(--ink);line-height:1.55}
.rpl-flow-cta{margin-top:clamp(22px,2.6vw,30px);display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:860px){
  .rpl-flow{grid-template-columns:1fr;gap:clamp(22px,4vw,30px)}
  .rpl-media{position:relative;top:0}
  .rpl-media__img{aspect-ratio:4/3}
  .rpl-media__img::after{background:linear-gradient(180deg,rgba(8,32,61,0) 55%,rgba(8,32,61,.85) 100%)}
  .rpl-media__img img{object-position:center 15%}
  .rpl-media__cap{position:relative}
}
@media(max-width:520px){
  .rflow::before{left:19px}
  .rflow__node{width:40px;height:40px;font-size:.9rem;box-shadow:0 0 0 5px var(--mist),0 8px 18px -12px rgba(0,112,128,.55)}
  .rflow__card{flex-direction:column;gap:12px;padding:16px 16px}
  .rflow__ic{width:42px;height:42px}
}

/* responsive */
@media(max-width:1100px){
  nav.main,.hdr-cta .btn-ghost{display:none}
  .hamburger{display:flex}
}
@media(max-width:640px){
  .hdr-cta .btn-primary{display:none}
}
@media(max-width:1024px){
  .trust-grid{grid-template-columns:repeat(2,1fr)}
  .trust-cell:nth-child(2){border-right:none}
  .trust-cell{border-bottom:1px solid var(--line)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .step{border-right:none;border-bottom:1px solid var(--line-soft)}
  .cards.c3,.review-grid,.team-grid{grid-template-columns:repeat(2,1fr)}
  .price-grid{grid-template-columns:repeat(2,1fr)}
  .stats{grid-template-columns:repeat(2,1fr);gap:32px 24px}
}
@media(max-width:840px){
  .split,.split.wide,.feat-qual,.contact-grid{grid-template-columns:1fr}
  .feat-qual{gap:28px}
  .foot-top{grid-template-columns:1fr 1fr;gap:32px}
  .qual-list,.incl,.offices,.row2{grid-template-columns:1fr}
  .ticker .t-qual{flex-basis:100%}
  .band::after{background:linear-gradient(180deg,rgba(8,32,61,.72),rgba(8,32,61,.92))}
}
@media(max-width:560px){
  .trust-grid,.cards.c3,.review-grid,.team-grid,.price-grid,.stats,.foot-top{grid-template-columns:1fr}
  .foot-bottom{flex-direction:column;align-items:flex-start}
  .rev-head{flex-direction:column;align-items:flex-start}
  .wa-float::after{display:none}
  .hero-cta{width:100%}
  .hero-cta .btn{flex:1 1 auto;justify-content:center}
}
@media(max-width:400px){
  .hero-cta{flex-direction:column}
  .hero-cta .btn{width:100%}
  .li-rating{flex-wrap:wrap;justify-content:center;row-gap:6px;padding:10px 16px}
  .li-rating .li-txt{font-size:.78rem}
  .hero-dot{width:22px}.hero-dot.active{width:40px}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.01ms!important}
  [data-reveal],.load-up{opacity:1;transform:none}
  .hero>.band-img,.band>.band-img,.cta-band>.band-img{transform:none!important}
  .hero-slide{transition:none!important}
}

/* ===== Solid white header (no glass) ===== */
header{background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border-bottom:1px solid var(--line)}
header.scrolled{background:#fff!important;box-shadow:0 6px 28px -14px rgba(11,37,69,.3)}
header::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;z-index:1;pointer-events:none;background:linear-gradient(90deg,var(--navy) 0%,var(--blue) 52%,var(--red) 100%)}
.logo .lk span{color:var(--blue)}

/* ✦ Background pattern utility */
.star-pattern-bg{}

/* hero centred legibility scrim + faint ✦ texture */
.hero::after{
  background: radial-gradient(125% 95% at 50% 44%, rgba(8,32,61,.42) 0%, rgba(8,32,61,.7) 55%, rgba(8,32,61,.88) 100%);
  background-size:cover;
}
.hero h1,.hero .lede{text-shadow:0 2px 22px rgba(8,32,61,.5)}
.hero .wrap{position:relative;z-index:4}

/* Hero slide layering — transitions are driven inline by JS for a glitch-free swap */
.hero-slides{z-index:-2}

/* Hero dot progress bars — animated loading bar on active dot */
.hero-dot{width:32px;height:4px;border-radius:3px;background:rgba(255,255,255,.28);cursor:pointer;padding:0;border:none;position:relative;overflow:hidden;transition:width .3s var(--ease)}
.hero-dot.active{width:52px;background:rgba(255,255,255,.22)}
.hero-dot:hover:not(.active){background:rgba(255,255,255,.48)}
.hero-dot::after{content:"";position:absolute;top:0;left:0;height:100%;width:0%;background:var(--blue-bright, #0A8A9C);border-radius:3px}
.hero-dot.active::after{animation:dotProgress var(--slide-duration,8s) linear forwards}
@keyframes dotProgress{from{width:0%}to{width:100%}}

/* ✦ section divider utility */
.stardiv{display:flex;align-items:center;justify-content:center;gap:16px;color:var(--blue);opacity:.38;font-size:.72rem;letter-spacing:10px;padding:6px 0}

/* ✦ accent decorative clusters */
.star-accent{position:absolute;pointer-events:none;line-height:1.6;letter-spacing:8px;color:rgba(255,255,255,.22);font-size:.9rem;transform:rotate(-10deg)}

/* Inline trust strip in hero */
.hero-trust-strip{display:flex;align-items:center;gap:28px;flex-wrap:wrap;justify-content:center;margin-top:22px;padding:14px 22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:12px;backdrop-filter:blur(4px)}
.hero-trust-strip span{font-size:.82rem;font-weight:600;color:rgba(255,255,255,.88);display:flex;align-items:center;gap:7px;letter-spacing:.01em}
.hero-trust-strip span::before{content:"✦";color:var(--red);font-size:.65rem;opacity:.9}

/* ===== STEP ENHANCEMENTS ===== */
.step::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--blue),var(--red));transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
.step:hover::after{transform:scaleX(1)}
.step:hover .ic{transform:translateY(-5px) scale(1.18) rotate(-5deg);color:var(--blue)}
.step:hover h3{color:var(--blue);transition:.3s}
.step .num{display:flex;align-items:center;gap:10px}
.step .num::after{content:"";height:1px;background:var(--red);width:0;transition:width .4s var(--ease);opacity:.5}
.step:hover .num::after{width:28px}

/* ===== QUAL GROUP ENHANCEMENTS ===== */
.qual-group{transition:.35s var(--ease);border-radius:var(--r);padding:28px;margin:0 -28px}
.qual-group:hover{background:rgba(0,112,128,.025)}
.qual-item{transition:.3s var(--ease);cursor:default;position:relative;overflow:hidden}
.qual-item::before{content:"";position:absolute;left:-100%;top:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,112,128,.06),transparent);transition:.5s}
.qual-item:hover::before{left:100%}
.qual-item:hover{background:var(--blue-tint);transform:translateX(3px)}
.qual-item:hover .qi-code{color:var(--red)}
.qi-code{transition:.25s}
.qg-cta{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}

/* ===== FEAT-QUAL GLOW ===== */
.feat-qual{transition:.45s var(--ease)}
.feat-qual:hover{box-shadow:0 40px 80px -40px rgba(0,112,128,.5),0 0 0 1px rgba(0,112,128,.2)}

/* ===== MID-PAGE TRUST BLOCK ===== */
.midpage-trust{background:var(--navy);padding:clamp(36px,5vw,60px) 0;border-top:3px solid var(--red);position:relative;overflow:hidden}
.midpage-trust::before{display:none}
.trust-ticker{display:flex;align-items:center;gap:0;flex-wrap:wrap;justify-content:center;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}
.trust-ticker-item{display:flex;align-items:center;gap:14px;color:#fff;padding:24px 36px;border-right:1px solid rgba(255,255,255,.1);flex:1;min-width:180px}
.trust-ticker-item:last-child{border-right:none}
.trust-ticker-item .tti-num{font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:800;letter-spacing:-.04em;line-height:1;color:#fff}
.trust-ticker-item .tti-label{font-size:.74rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:rgba(255,255,255,.5);line-height:1.45}
.trust-rating-inline{display:flex;align-items:center;gap:14px;padding:20px 30px;background:rgba(255,255,255,.04);border-top:1px solid rgba(255,255,255,.09);flex-wrap:wrap;justify-content:center}
.trust-rating-inline .tli-stars{display:flex;gap:3px;color:var(--amber)}
.trust-rating-inline .tli-stars svg{width:16px;height:16px}

/* ===== SECTION STAR DIVIDERS ===== */
.section-stardiv{text-align:center;padding:16px 0 8px;overflow:hidden;position:relative}
.section-stardiv::before,.section-stardiv::after{content:"";position:absolute;top:50%;width:38%;height:1px;background:var(--line-soft);transform:translateY(-50%)}
.section-stardiv::before{left:4%}
.section-stardiv::after{right:4%}
.section-stardiv span{font-size:.66rem;letter-spacing:16px;color:var(--blue);opacity:.35;position:relative;z-index:1;padding:0 12px;background:inherit}

/* ===== PRICING — pathway focus ===== */
.price-card{transition:.4s var(--ease);position:relative;overflow:visible}
.price-card::after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--red));transform:scaleX(0);transform-origin:left;transition:.4s var(--ease);border-radius:0 0 var(--r-lg) var(--r-lg);}
.price-card:hover::after{transform:scaleX(1)}
.price-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px -32px rgba(11,37,69,.45)}
.price-card.feat:hover{box-shadow:0 30px 60px -32px rgba(0,112,128,.55)}
.price-pathway-note{font-size:.8rem;color:var(--slate);line-height:1.5;margin:10px 0 14px}
.price-card.feat .price-pathway-note{color:rgba(255,255,255,.65)}
.eligibility-note{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:var(--blue-tint);border:1px solid rgba(0,112,128,.18);border-radius:var(--r);margin-top:clamp(32px,4vw,52px)}
.eligibility-note svg{width:22px;height:22px;color:var(--blue);flex:none;margin-top:1px}
.eligibility-note p{font-size:.88rem;color:var(--ink);line-height:1.5}
.eligibility-note strong{color:var(--blue)}

/* ===== FOOTER TRUST ROW ===== */
.foot-trust-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.09)}
.foot-trust-item{display:flex;align-items:center;gap:7px;font-size:.76rem;color:rgba(255,255,255,.45)}
.foot-trust-item::before{content:"✦";color:var(--red);font-size:.55rem;opacity:.75}
.foot-li-rating{display:inline-flex;align-items:center;gap:10px;margin-top:14px;padding:12px 16px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.04)}
.foot-li-rating .fli-stars{display:flex;gap:2px;color:var(--amber)}
.foot-li-rating .fli-stars svg{width:13px;height:13px}
.foot-li-rating .fli-txt{font-size:.76rem;color:rgba(255,255,255,.55)}
.foot-li-rating .fli-txt b{color:#fff}

/* ===== STAR PATTERN on mist sections ===== */
.mist,.section.mist{background-color:var(--mist);}

/* ===== REVIEW CARD STAR ===== */
.review{position:relative;overflow:hidden}
.review::after{content:"✦";position:absolute;top:14px;right:16px;font-size:.6rem;color:var(--blue);opacity:.18;transition:.4s;pointer-events:none}
.review:hover::after{opacity:.45;transform:rotate(30deg) scale(1.4)}
.review:hover{transform:translateY(-6px);box-shadow:0 32px 62px -36px rgba(11,37,69,.45)}

/* ===== TRUST-CELL icon animation ===== */
.trust-cell:hover .tc-ic{background:var(--blue);border-color:var(--blue);transform:scale(1.12) rotate(-8deg)}
.trust-cell:hover svg{color:#fff;animation:iconBounce .35s var(--ease-out)}
@keyframes iconBounce{0%{transform:scale(.8)}65%{transform:scale(1.15)}100%{transform:scale(1.1)}}
/* ═══════════════════════════════════════════════
   LOGO SIZING IN HEADER + FOOTER
   ═══════════════════════════════════════════════ */
.logo .mark { width:44px; height:44px; flex:none; overflow:visible; }
.logo .mark .ahsr-lh, .logo .mark .ahsr-lf { width:100%; height:100%; }
.foot-brand .logo .mark { width:48px; height:48px; }

/* Full AHSR logo image (header) */
.logo .ahsr-logo-img{height:46px;width:auto;display:block}
@media(max-width:560px){.logo .ahsr-logo-img{height:38px}}
/* Full AHSR logo image (footer, on light tile for dark bg) */
.foot-brand .logo{display:block}
.ahsr-logo-foot{display:inline-flex;background:#fff;border-radius:10px;padding:12px 16px}
.ahsr-logo-foot img{height:42px;width:auto;display:block}

/* ═══════════════════════════════════════════════
   LOGO SVG PARALLAX WATERMARK
   Single large logo, very low opacity, parallax
   drift on scroll — one per section
   ═══════════════════════════════════════════════ */
.logo-wm-layer {
  position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden;
}
.logo-wm-layer::before {
  content:"";
  position:absolute;
  right:-8%; bottom:-12%;
  width:520px; height:520px;
  background-image:url("data:image/svg+xml,%3Csvg%20id%3D%22Layer_1%22%20data-name%3D%22Layer%201%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20216.09%20215.99%22%3E%0A%20%20%3Cdefs%3E%3Cstyle%3E.wm-cls-1%7Bfill%3A%2523007080%7D.wm-cls-2%7Bfill%3A%2523007080%7D%3C/style%3E%3C/defs%3E%0A%20%20%3Cg%20id%3D%22LenFwB%22%3E%0A%20%20%20%20%3Cg%3E%0A%20%20%20%20%20%20%3Cg%3E%0A%20%20%20%20%20%20%20%20%3Cpath%20class%3D%22cls-2%22%20d%3D%22M209.55%2C71.04c1.48%2C21.67-11%2C42.14-25.35%2C57.81l-10.01%2C10.07c-.99%2C1-2.39%2C1.73-2.9%2C2.99-.92.13-1.3.65-2.12%2C1.31-31.54%2C25.73-73.46%2C44.71-114.71%2C45.68-5.52-8.99-7.87-19.45-6.82-29.96%2C28.77-3.86%2C58.05-15.6%2C82.61-30.71%2C10.71-6.59%2C20.61-14.06%2C29.56-22.5%2C8.43-7.95%2C16.08-16.63%2C22.09-26.76l1.23-2.4c3.35-6.51%2C6.31-13.42%2C6.99-20.96%2C1.09-8.05-1.17-15.02-4.58-22.66%2C11.15%2C10.96%2C18.96%2C24.17%2C23.99%2C38.09Z%22/%3E%0A%20%20%20%20%20%20%20%20%3Cpath%20class%3D%22cls-2%22%20d%3D%22M88.04%2C206c20.16-2.07%2C40.29-8.16%2C58.44-17.78l3.8-2.01c11.41-6.05%2C21.83-13.49%2C31.49-22.08l11.42-11.43c5.64-5.65%2C9.79-12.15%2C13.72-19.13%2C4.48-7.95%2C7.37-16.44%2C9.18-25.17-.02%2C10.44-1.62%2C20.73-4.65%2C30.92-5.51%2C18.53-15.89%2C34.58-29.96%2C47.77-18.82%2C17.63-43.48%2C27.99-69.4%2C28.85-17.54.59-34.9-2.79-50.74-10.64%2C9.36%2C1.83%2C17.87%2C1.61%2C26.71.71Z%22/%3E%0A%20%20%20%20%20%20%20%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M216.09%2C108.39c-1.81%2C8.74-4.7%2C17.22-9.18%2C25.17-3.93%2C6.98-8.08%2C13.48-13.72%2C19.13l-11.42%2C11.43c-9.66%2C8.59-20.08%2C16.03-31.49%2C22.08l-3.8%2C2.01c-18.15%2C9.62-38.27%2C15.71-58.44%2C17.78%2C6.76-1.35%2C13.2-3.39%2C19.78-6.2%2C26.04-11.11%2C47.94-31.74%2C62.63-55.78l.85-2.11c.51-1.26%2C1.91-2%2C2.9-2.99l10.01-10.07c14.35-15.67%2C26.83-36.14%2C25.35-57.81%2C4.32%2C11.96%2C6.56%2C24.65%2C6.54%2C37.35Z%22/%3E%0A%20%20%20%20%20%20%3C/g%3E%0A%20%20%20%20%20%20%3Cg%3E%0A%20%20%20%20%20%20%20%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M183.14%2C76.57l-1.23%2C2.4c-6.01%2C10.13-13.65%2C18.81-22.09%2C26.76-2.17-1.2-4.38-1.53-7-1.61-27.09-.78-53.8%2C5.36-78.1%2C17.37-10.03%2C4.96-19.33%2C10.64-27.79%2C17.87-7.89%2C6.75-15.76%2C15.57-18.5%2C25.6-1.58%2C5.47-1.21%2C11.02.9%2C16.09-.02.1.1.16.15.14l-.2.74c-.13-.42-.42-.46-.46-.51-7.99-9.28-16.02-19.45-20.15-31.4-1.12-15.27%2C10.97-30.11%2C22.26-39.87%2C7.11-6.14%2C14.68-11.32%2C22.98-15.91%2C24.99-13.8%2C52.85-21.88%2C81.4-23.26%2C15.16-.73%2C29.76.93%2C44.25%2C4.83%2C1.29.35%2C2.33.69%2C3.6.76Z%22/%3E%0A%20%20%20%20%20%20%20%20%3Cg%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M1.95%2C88.36c.5-.15.62-.55.86-1.11%2C9.02-21.08%2C28.46-36.82%2C48.44-47.22.94-.49%2C1.41-1.17%2C1.95-1.71.75.26%2C1.22.01%2C2.07-.4%2C20.64-10.09%2C42.95-15.65%2C65.99-16.53%2C12.28-.47%2C24.05.56%2C36.01%2C3.43%2C5.98%2C7.56%2C11.25%2C15.55%2C14.64%2C24.74-38.26-10.63-82.25-3.2-116.76%2C14.73-19.9%2C10.34-38.71%2C25.09-48.75%2C45.35-2.52%2C5.09-3.99%2C9.99-4.95%2C15.99-2.07-12.21-1.94-24.94.5-37.27Z%22/%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20class%3D%22cls-2%22%20d%3D%22M130.96%2C7.01l-7.77.11c-1.31.02-2.62.07-3.92.19-25.1%2C2.27-48.31%2C13.41-66.07%2C31.03-.55.54-1.02%2C1.22-1.95%2C1.71C31.26%2C50.43%2C11.83%2C66.18%2C2.8%2C87.25c-.24.56-.36.96-.86%2C1.11%2C2.46-13.77%2C7.41-27.21%2C15.19-38.68%2C9.59-11.66%2C21.15-21.03%2C34.71-27.97%2C19.21-9.83%2C40.14-15.43%2C61.77-15.81%2C4.59-.08%2C15.9.48%2C17.34%2C1.11Z%22/%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M113.62%2C5.9c-21.62.37-42.55%2C5.98-61.77%2C15.81-13.57%2C6.94-25.13%2C16.31-34.71%2C27.97.68-1.66%2C1.54-3.2%2C2.78-4.6%2C2.85-3.85%2C5.81-7.39%2C9.03-10.84C61.05-.11%2C112.9-10.1%2C155.55%2C11.06c-.01.1-25.07-5.45-41.93-5.16Z%22/%3E%0A%20%20%20%20%20%20%20%20%3C/g%3E%0A%20%20%20%20%20%20%3C/g%3E%0A%20%20%20%20%3C/g%3E%0A%20%20%3C/g%3E%0A%3C/svg%3E");
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
  opacity:.055;
  will-change:transform;
  transform:translateY(var(--wm-y, 0px));
}
/* White sections that get the watermark */
section:not(.dark-sec):not(.band):not(.about-band) { position:relative; isolation:isolate; }

/* ═══════════════════════════════════════════════
   BLUEHOST-STYLE BUTTON GLOW
   Slow animated shimmer + outer glow on primary btns
   ═══════════════════════════════════════════════ */
.btn-primary {
  background: linear-gradient(135deg, #0a8a9c 0%, #007080 50%, #0a8a9c 100%);
  background-size:200% 200%;
  animation: btnGradShift 4s ease infinite;
  box-shadow: 0 0 0 0 rgba(0,112,128,0);
  position:relative; overflow:hidden;
  transition: box-shadow .4s var(--ease), transform .32s var(--ease);
}
.btn-primary::before {
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(105deg, transparent 30%, rgba(255,255,255,.28) 50%, transparent 70%);
  background-size:200% 100%;
  animation:btnShine 5s ease-in-out infinite;
  pointer-events:none; border-radius:inherit;
}
@keyframes btnGradShift {
  0%,100% { background-position:0% 50%; }
  50% { background-position:100% 50%; }
}
@keyframes btnShine {
  0%,10% { background-position:-250% 0; opacity:0; }
  22% { opacity:1; }
  38% { background-position:250% 0; opacity:0; }
  100% { opacity:0; background-position:-250% 0; }
}
.btn-primary:hover {
  background: linear-gradient(135deg, #0A8A9C 0%, #00586A 50%, #0A8A9C 100%);
  background-size:200% 200%;
  box-shadow: 0 0 0 4px rgba(0,112,128,.22), 0 8px 26px -8px rgba(0,112,128,.65), 0 2px 8px -2px rgba(0,112,128,.4);
  transform:translateY(-2px);
}
.btn-primary:hover::before { animation-duration:1.8s; }
.btn-primary:active { transform:translateY(0); box-shadow:0 0 0 3px rgba(0,112,128,.3); }

/* ═══════════════════════════════════════════════
   BLUE GRADIENT SYSTEM UPGRADE
   Brighter, more Bluehost-contrasty blue across
   light sections. Dark/image areas keep navy.
   ═══════════════════════════════════════════════ */
:root {
  --blue: #007080;
  --blue-mid: #007080;
  --blue-bright: #0A8A9C;
  --blue-deep: #00586A;
  --blue-tint: #E4F1F2;
  --blue-tint-2: #D2E9EB;
}

/* Eyebrow red bar upgrade: use blue dot instead of red bar */
.eyebrow { gap: 10px; }
.eyebrow::before {
  content: "" !important;
  width: 8px !important; 
  height: 8px !important;
  background: var(--blue) !important;
  display: inline-block;
  border-radius: 50% !important;
  box-shadow: 0 0 0 3px rgba(0,112,128,.18);
  flex:none;
}

/* ── Blue dot bullet for list items / feature lists */
.blue-dot-list { list-style:none; display:grid; gap:10px; }
.blue-dot-list li {
  display:flex; align-items:flex-start; gap:12px;
  font-size:.96rem; color:var(--slate); line-height:1.55;
}
.blue-dot-list li::before {
  content:"";
  width:8px; height:8px;
  background: var(--blue);
  border-radius:50%;
  box-shadow: 0 0 0 2.5px rgba(0,112,128,.18);
  flex:none; margin-top:6px;
}

/* Upgrade card top-border blue */
.card { border-top-color: var(--blue); }

/* Upgrade trust cell icon color */
.trust-cell svg { color: var(--blue); }

/* Step tab active — brighter blue */
.step-tab.active { background: var(--blue); border-color: var(--blue); }
.step-tab.active .num { color: #7FCFD8; }

/* Upgrade nav active underline */
nav.main a.active { color: var(--blue); }
nav.main a.active::after { background: var(--blue); height:2px; }
nav.main a:hover { color: var(--blue); background: var(--blue-tint); }

/* Featured qual hover */
.feat-qual:hover { box-shadow: 0 40px 80px -40px rgba(0,112,128,.5), 0 0 0 1px rgba(0,112,128,.2); }

/* Upgrade link color */
.linku { color: var(--blue); }
a[href^="mailto"], a[href^="tel"] { color: var(--blue); }
.faq-q:hover { color: var(--blue); }
.r-chip { color: var(--blue); background: var(--blue-tint); }
.filter.active { background: var(--blue); border-color: var(--blue); }

/* section eyebrow color */
.eyebrow { color: var(--blue); }

/* Career card eyebrow */
.cc-eyebrow { color: #7FCFD8; }

/* Price card level text */
.price-card .pc-lvl { color: var(--blue); }

/* Step bar fill */
.step-bar-fill { background: var(--blue); }

/* Qual item hover */
.qual-item:hover { background: var(--blue-tint); }
.qual-item:hover .qi-code { color: var(--blue); }

/* Trust ticker item number - stays white on dark bg, blue on light */
.stat .n { color: var(--blue); }

/* ═══════════════════════════════════════════════
   BLUE GRADIENT HEADER ACCENT BAR — upgrade to 
   use bright blue as midpoint not flat
   ═══════════════════════════════════════════════ */
header::before {
  background: linear-gradient(90deg, var(--navy) 0%, var(--blue) 52%, var(--red) 100%);
}

/* footer top border */
footer { border-top-color: var(--red); }

/* ═══════════════════════════════════════════════
   TRUSTBAR + MIST sections — bright blue icons
   ═══════════════════════════════════════════════ */
.trust-cell svg { color: var(--blue); }
.trust-cell:hover .tc-ic { background: var(--blue); border-color: var(--blue); }

/* ═══════════════════════════════════════════════
   BLUE DOT DECORATORS — eyebrow prefix
   adds a cute filled blue circle before key bullets 
   ═══════════════════════════════════════════════ */
.feat-qual li svg { color: #3FB3C0; }
.incl svg { color: var(--blue); }
.qr-ic { background: var(--blue); }

/* Logo watermark parallax — transform handled via inline --wm-y */
.logo-wm-layer::before {
  transition: transform 0.08s linear;
}

/* ═══════════════════════════════════════════════
   PATHWAY CARDS — person cutout redesign
   ═══════════════════════════════════════════════ */
.pricing-reimagined { padding-top: clamp(58px,8vw,116px); overflow: visible; }

.pathway-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  align-items: end;
  /* Critical: overflow visible so badge + person can escape card */
  overflow: visible;
  margin-top: clamp(32px,4vw,52px);
  /* Give room at top for person images that overflow upward */
  padding-top: 160px;
}

.pathway-card {
  position: relative;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  border-top: 3px solid var(--blue);
  /* No overflow:hidden — person pokes out top */
  overflow: visible;
  display: flex;
  flex-direction: column;
  transition: .4s var(--ease);
  box-shadow: 0 2px 12px -8px rgba(11,37,69,.12);
}
.pathway-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 28px 56px -32px rgba(11,37,69,.38);
}

.pathway-card--feat {
  background: var(--navy);
  border-color: var(--navy);
  border-top-color: var(--red);
  box-shadow: 0 8px 32px -16px rgba(11,37,69,.5);
}
.pathway-card--feat:hover {
  box-shadow: 0 32px 64px -28px rgba(11,37,69,.65);
}

/* Badge — floats above card, clear of grid */
.pc-badge {
  position: absolute;
  top: -16px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--red);
  color: #fff;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 7px 16px;
  border-radius: 100px;
  white-space: nowrap;
  z-index: 10;
  box-shadow: 0 6px 18px -6px rgba(228,0,43,.55);
}

/* Person cutout slot — rises above card top */
.pc-person-slot {
  position: absolute;
  bottom: 100%;
  left: 0; right: 0;
  height: 200px;
  pointer-events: none;
  z-index: 5;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: visible;
  /* slight margin from card top */
  margin-bottom: -4px;
}

.pc-person {
  height: 210px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: bottom center;
  display: block;
  transition: transform .6s var(--ease);
}
.pathway-card:hover .pc-person {
  transform: translateY(-8px) scale(1.04);
}

/* Featured card: person is slightly taller */
.pathway-card--feat .pc-person-slot {
  height: 230px;
}
.pathway-card--feat .pc-person {
  height: 240px;
}

/* Card body */
.pc-body {
  padding: 22px 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}
.pc-body h3 {
  font-size: 1.12rem;
  line-height: 1.2;
  color: var(--ink);
}
.pathway-card--feat .pc-body h3 { color: #fff; }
.pc-body p {
  font-size: .86rem;
  color: var(--slate);
  line-height: 1.5;
  flex: 1;
}
.pathway-card--feat .pc-body p { color: rgba(255,255,255,.72); }

.pc-lvl-tag {
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 2px;
}
.pathway-card--feat .pc-lvl-tag { color: #69C0CB; }

.pc-body .btn {
  margin-top: 6px;
  justify-content: center;
  text-align: center;
  white-space: normal;
  line-height: 1.25;
}

/* Bottom accent bar on hover */
.pathway-card::after {
  content: "";
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--blue), var(--red));
  border-radius: 0 0 var(--r-lg) var(--r-lg);
  transform: scaleX(0);
  transform-origin: left;
  transition: .4s var(--ease);
}
.pathway-card:hover::after { transform: scaleX(1); }
.pathway-card--feat::after { display: none; }

/* Responsive */
@media (max-width: 900px) {
  .pathway-grid { grid-template-columns: repeat(2, minmax(0,1fr)); padding-top: 140px; gap: 24px; }
}
@media (max-width: 560px) {
  .pathway-grid { grid-template-columns: repeat(2, minmax(0,1fr)); padding-top: 120px; gap: 14px; }
  .btn-lg{white-space:normal;text-align:center;justify-content:center}
  .btn{max-width:100%}
  .pc-person { height: 150px; }
  .pathway-card--feat .pc-person { height: 170px; }
  .pc-person-slot { height: 150px; }
  .pathway-card--feat .pc-person-slot { height: 170px; }
}

/* ===== accreditation logo strips ===== */
.accred-strip{background:var(--mist);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
/* Prominent white accreditation band (hero-attached + section recognition) */
.accred-hero{background:#fff;padding:clamp(30px,4.4vw,52px) var(--pad);border-bottom:1px solid var(--line)}
.accred-hero-in{display:flex;flex-direction:column;align-items:center;gap:clamp(16px,2.4vw,24px);text-align:center;max-width:var(--maxw);margin:0 auto}
.accred-hero .ah-k{font-size:clamp(.66rem,1vw,.74rem);letter-spacing:.22em;text-transform:uppercase;color:var(--slate-2);font-weight:700}
.accred-hero .ah-logos{display:flex;align-items:center;justify-content:center;gap:clamp(22px,5vw,56px);flex-wrap:wrap}
.accred-hero .ah-logos img{height:clamp(46px,7vw,72px);width:auto;display:block}
.accred-hero .ah-div{width:1px;height:clamp(40px,5vw,54px);background:var(--line);flex:none}
.accred-hero .ah-pairs{display:flex;align-items:center;justify-content:center;gap:clamp(26px,6vw,68px);flex-wrap:wrap}
.accred-hero .ah-pair{display:flex;flex-direction:column;align-items:center;gap:12px}
.accred-hero .ah-pair img{height:clamp(46px,7vw,72px);width:auto;display:block}
.accred-hero .ah-lbl{font-size:clamp(.7rem,1.1vw,.82rem);letter-spacing:.16em;text-transform:uppercase;color:var(--slate-2);font-weight:700}
@media(max-width:560px){.accred-hero .ah-pairs{gap:30px}}
@media(max-width:560px){.accred-hero{padding-left:20px;padding-right:20px}.accred-hero .ah-div{display:none}.accred-hero .ah-logos{gap:26px}}
.accred-strip-in{display:flex;align-items:center;justify-content:center;gap:30px;padding:22px var(--pad);flex-wrap:wrap}
.accred-strip .as-k{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:#5A697D;font-weight:600}
.as-logos{display:flex;align-items:center;gap:28px}
.as-logos img{height:46px;width:auto;display:block}
.as-div{width:1px;height:38px;background:var(--mist-2)}
.foot-accred-logos{display:flex;align-items:center;gap:14px;margin-top:16px;flex-wrap:wrap}
.foot-accred-logos .fal-tile{background:#fff;border-radius:8px;padding:9px 13px;display:flex;align-items:center}
.foot-accred-logos img{height:32px;width:auto;display:block}
@media(max-width:560px){.accred-strip-in{gap:14px;flex-direction:column}.as-logos{gap:18px}.as-logos img{height:38px}}

/* ===== Oct 2026 revisions ===== */
/* Hero eyebrow: three stacked lines (reads cleanly on phone and laptop) */
.hero .hero-eyebrow{flex-direction:column;align-items:center;gap:7px;line-height:1.3;text-align:center}
.hero .hero-eyebrow::before{margin-bottom:3px}
.hero .hero-eyebrow .he-l{display:block;white-space:nowrap}
@media(max-width:560px){.hero .hero-eyebrow{font-size:clamp(10px,2.9vw,12px);letter-spacing:.13em;gap:5px}}
/* LinkedIn rating relocated under the AQF / ABCD logos */
.accred-hero .ah-li{margin:0 auto;box-shadow:none;border:1px solid var(--line);background:#fff}
.accred-hero .ah-li:hover{box-shadow:0 14px 30px -16px rgba(11,37,69,.35);border-color:transparent}
@media(max-width:400px){.accred-hero .ah-li{flex-wrap:wrap;justify-content:center;row-gap:6px;padding:10px 16px}.accred-hero .ah-li .li-txt{font-size:.78rem}}
/* Ticker: role group + stacked qualifications with official links */
.ticker .t-role{flex:0 1 300px;min-width:150px;line-height:1.2}
.ticker .t-quals{list-style:none;margin:0;padding:0;flex:1 1 360px;min-width:240px;display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:84px;transition:opacity .3s}
.ticker .t-quals a{display:flex;align-items:baseline;gap:12px;color:#fff;font-size:1rem;font-weight:600;line-height:1.35}
.ticker .t-quals .t-code{flex:none;min-width:76px}
.ticker .t-quals a:hover .t-qname,.ticker .t-quals a:focus-visible .t-qname{text-decoration:underline;text-underline-offset:3px}
.ticker .t-stamp{transition:opacity .3s}
@media(min-width:1280px){.ticker .t-role{flex-basis:240px}}
@media(max-width:840px){
  .ticker-in{flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;flex-wrap:nowrap}
  .ticker .t-role,.ticker .t-quals,.ticker .t-stamp{flex:none;min-width:0;width:auto}
  .ticker .t-quals{min-height:0;width:100%}
  .ticker .t-arrow{display:none}
}
@media(max-width:560px){.ticker .t-quals a{font-size:.92rem;gap:10px}.ticker .t-quals .t-code{min-width:70px}}
/* Full qualification list (two columns, as supplied) */
.qual-all{margin-top:clamp(40px,5vw,64px)}
.qual-all .qa-head{margin-bottom:18px}
.qual-all .qa-head h3{font-size:clamp(1.3rem,2.2vw,1.7rem);margin:.35em 0 .3em;letter-spacing:-.02em}
.qual-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.qual-cols .qual-list{grid-template-columns:1fr;margin-top:0;list-style:none;padding:0}
.qual-cols .qual-list li{display:block}
.qual-cols .qual-item{color:var(--ink);text-decoration:none}
.qual-cols .qual-item:hover .qi-name{color:var(--blue)}
@media(max-width:840px){.qual-cols{grid-template-columns:1fr}}
/* Check if I qualify — Resume submission */
.cv-title{font-size:1.5rem;line-height:1.15;margin:0 0 8px;letter-spacing:-.02em}
.cv-note{font-size:.92rem;color:var(--slate);margin-bottom:20px;line-height:1.5}
.cv-note strong{color:var(--ink)}
.cv-form .field{margin-bottom:14px}
.cv-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:520px){.cv-row{grid-template-columns:1fr;gap:0}}
.cv-form select{width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:var(--r);background:var(--mist);font-family:var(--sans);font-size:.95rem;color:var(--ink)}
.cv-form select:focus{outline:none;border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(0,112,128,.12)}
.cv-form input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.cv-drop{display:flex!important;align-items:center;gap:14px;padding:16px 18px!important;border:1.5px dashed var(--blue);border-radius:var(--r);background:var(--blue-tint);cursor:pointer;text-transform:none!important;letter-spacing:0!important;margin:0!important;transition:.25s}
.cv-drop:hover{background:#fff}
.cv-drop svg{width:26px;height:26px;color:var(--blue);flex:none}
.cv-drop-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.cv-drop-txt b{font-size:.95rem;color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cv-drop-txt small{font-size:.78rem;color:var(--slate-2);font-weight:500}
.field.has-file .cv-drop{border-style:solid}
.cv-form input[type=file]:focus-visible+.cv-drop,.cv-drop:focus-within{box-shadow:0 0 0 3px rgba(0,112,128,.18)}
.cv-check{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;color:var(--ink);line-height:1.45;margin:4px 0 6px;cursor:pointer}
.cv-check input{width:18px;height:18px;margin-top:1px;flex:none;accent-color:var(--blue)}
.cv-err{color:var(--red);font-size:.85rem;min-height:1.3em;margin:4px 0 8px}
.cv-submit{width:100%;justify-content:center}
.cv-submit[disabled]{opacity:.7;pointer-events:none}
.cv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.cv-alt{font-size:.85rem;color:var(--slate);text-align:center;margin-top:16px;line-height:1.5}
.cv-alt a{color:var(--blue);font-weight:600;text-decoration:underline}
.cv-done{text-align:center}
.cv-done h3{font-size:1.4rem;margin:0 0 8px}
.cv-done .btn{margin-top:20px}

/* Trust bar: 6 cells (3 x 2 desktop) */
.trust-grid{grid-template-columns:repeat(3,1fr)}
.trust-cell:nth-child(-n+3){border-bottom:1px solid var(--line)}
.trust-cell:nth-child(3n){border-right:none}
@media(max-width:1024px){.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-cell:nth-child(2n){border-right:none}.trust-cell:nth-child(n+5){border-bottom:none}}
@media(max-width:560px){.trust-grid{grid-template-columns:1fr}.trust-cell{border-right:none!important;border-bottom:1px solid var(--line)}.trust-cell:last-child{border-bottom:none}}
.rflow__desc--more{margin-top:8px}
.accred-hero .ah-lbl{text-align:center;align-self:center}

/* Testimonials: Read more sits directly under the text */
.review .r-text{flex:0 0 auto}
.r-more-btn.r-more-near{margin-top:10px;align-self:flex-start;font-size:.82rem;padding:6px 0}
.review-modal .rm-chip{display:none}
/* Career grid: odd last card (Signs and Graphics) spans the row on desktop */
@media(min-width:641px){.career-grid>.career-card:last-child:nth-child(odd){grid-column:1 / -1;justify-self:center;width:calc(50% - 10px)}}

/* Testimonials: LinkedIn logo as a link, paragraphs in the full view */
.r-li-link{display:inline-flex;flex:none;border-radius:4px;transition:transform .2s}
.r-li-link:hover{transform:scale(1.1)}
.review-modal .rm-text p+p{margin-top:.9em}

.r-video{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--ink)}
.r-play{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--blue);color:#fff;font-size:.8rem;padding-left:2px}
a.r-more-btn{text-decoration:none}

/* Image mosaic above the footer: two rows drifting left to right, endlessly */
.mosaic{--mh:clamp(130px,14vw,200px);--mg:8px;overflow:hidden;background:#fff;padding:var(--mg) 0;display:flex;flex-direction:column;gap:var(--mg)}
.mosaic-row{display:flex;width:max-content;animation:mosaicDrift 160s linear infinite}
.mosaic-row:nth-child(2){animation-duration:185s}
.mosaic-set{display:flex;gap:var(--mg);padding-right:var(--mg)}
.mosaic img{height:var(--mh);width:auto;display:block;border-radius:8px;object-fit:cover;filter:saturate(.85)}
@keyframes mosaicDrift{from{transform:translate3d(-33.3333%,0,0)}to{transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){.mosaic-row{animation:none}}
@media(max-width:560px){.mosaic{--mg:6px;--mh:118px}.mosaic img{border-radius:6px}}

/* Testimonials: mobile swipe carousel + share/deep links */
.rev-nav{display:none}
.rm-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.review-modal .rm-share{height:34px;padding:0 12px;border-radius:8px;border:1px solid var(--line);display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:600;color:var(--ink);background:#fff;cursor:pointer;transition:.3s;white-space:nowrap}
.review-modal .rm-share svg{width:15px;height:15px;flex:none}
.review-modal .rm-share:hover{background:var(--ink);color:#fff}
.review-modal .rm-share.is-done{background:var(--blue);border-color:var(--blue);color:#fff}
.review.is-target{box-shadow:0 0 0 2px var(--blue),0 26px 50px -34px rgba(11,37,69,.4)}
@media(max-width:720px){
  #storyFilters{flex-wrap:nowrap;overflow-x:auto;margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:2px var(--pad);scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-bottom:22px}
  #storyFilters::-webkit-scrollbar{display:none}
  #storyFilters .filter{flex:none;white-space:nowrap}
  #allReviews.review-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:var(--pad);margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:6px var(--pad) 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  #allReviews.review-grid::-webkit-scrollbar{display:none}
  #allReviews .review{flex:0 0 86%;scroll-snap-align:start;scroll-snap-stop:always}
  #allReviews .review:hover{transform:none}
  .rev-nav{display:flex;align-items:center;gap:14px;margin-top:14px}
  .rev-nav button{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer;transition:.25s}
  .rev-nav button:active{background:var(--ink);color:#fff}
  .rev-nav button svg{width:18px;height:18px}
  .rev-bar{flex:1;height:3px;border-radius:3px;background:var(--line);overflow:hidden}
  .rev-bar i{display:block;height:100%;width:0;background:var(--blue);border-radius:3px;transition:width .35s}
  .rev-count{font-size:.78rem;font-weight:600;color:var(--slate);min-width:44px;text-align:right;font-variant-numeric:tabular-nums}
  .review-modal .rm-share span{display:none}
  .review-modal .rm-share{width:34px;padding:0;justify-content:center}
}

/* Policy pop-ups (Privacy, Refund Policy) */
.policy-modal .policy-title{font-size:1.05rem;margin:0}
.policy-modal .modal-body p+p{margin-top:.9em}
.policy-modal .modal-body{font-size:.95rem}

/* ===== WordPress integration ===== */
body.admin-bar header#header{top:32px}
@media screen and (max-width:782px){body.admin-bar header#header{top:46px}}
