/* ============================================================================
   UK TAX HERO — DESIGN SYSTEM v2  (uktaxhero-global-v2.css)
   Ultra-modern FinTech redesign. STRICTLY the existing palette.
   Premium feel comes from space, depth, rhythm & motion — not new colours.
   ============================================================================ */

:root {
  /* ---- EXISTING PALETTE ONLY ---- */
  --navy:#0F172A; --navy-soft:#1E293B;
  --teal:#25A5AA; --teal-dark:#1D8589;
  --slate:#64748B; --slate-light:#94A3B8;
  --border:#E2E8F0; --white:#FFFFFF; --bg-soft:#F8FAFC; --bg-mint:#F0FDFA;
  --helpdesk:#6366F1; --success:#10B981;

  /* Tints/alpha derived from the SAME palette (no new hues) */
  --teal-12:rgba(37,165,170,.12); --teal-20:rgba(37,165,170,.20); --teal-35:rgba(37,165,170,.35);
  --navy-06:rgba(15,23,42,.06); --navy-10:rgba(15,23,42,.10);

  /* Gradients composed only from palette colours */
  --grad-teal:linear-gradient(120deg,var(--teal),var(--teal-dark));
  --grad-ink:linear-gradient(160deg,var(--navy) 0%,var(--navy-soft) 100%);
  --grad-mesh:radial-gradient(60% 80% at 12% 18%,var(--teal-20),transparent 60%),
              radial-gradient(50% 70% at 88% 8%,rgba(99,102,241,.10),transparent 55%),
              radial-gradient(70% 90% at 75% 95%,var(--teal-12),transparent 60%);

  /* Elevation — soft, layered (Stripe-style) */
  --sh-1:0 1px 2px rgba(15,23,42,.04),0 2px 4px rgba(15,23,42,.04);
  --sh-2:0 8px 24px -8px rgba(15,23,42,.12);
  --sh-3:0 24px 48px -16px rgba(15,23,42,.18);
  --sh-glow:0 20px 60px -20px var(--teal-35);

  --r-xl:32px; --r-lg:24px; --r-md:16px; --r-sm:12px; --r-pill:999px;
  --maxw:1180px; --ease:cubic-bezier(.4,0,.2,1); --ease-out:cubic-bezier(.16,1,.3,1);
  --font:'Inter',system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;

  --fs-display:clamp(2.6rem,6.2vw,5rem);
  --fs-h2:clamp(2rem,4vw,3.1rem);
  --fs-h3:clamp(1.05rem,1.6vw,1.3rem);
  --fs-body:clamp(1rem,1.15vw,1.125rem);
}

/* ---- Base ---- */
.ukth-page{font-family:var(--font);color:var(--navy);background:var(--white);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;position:relative;}
.ukth-page *{box-sizing:border-box;}
.ukth-page a{text-decoration:none;color:inherit;}
.ukth-page img{max-width:100%;height:auto;display:block;}
.ukth-page p{margin:0;}
.ukth-page h1,.ukth-page h2,.ukth-page h3{margin:0;letter-spacing:-.03em;line-height:1.05;}

/* Subtle film-grain texture overlay (premium depth, palette-neutral) */
.ukth-page::before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.025;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
.ukth-wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;position:relative;z-index:2;}

/* Reusable bits */
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.74rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--teal-dark);
  background:var(--teal-12);padding:7px 14px;border-radius:var(--r-pill);margin-bottom:18px;}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal);}
.grad-text{background:var(--grad-teal);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.lead{font-size:var(--fs-body);color:var(--slate);line-height:1.65;max-width:60ch;}

/* Prose for intro/explainer sections */
.ukth-prose{color:var(--slate);line-height:1.75;font-size:var(--fs-body);}
.ukth-prose p{margin-bottom:18px;}
.ukth-prose p:last-child{margin-bottom:0;}
.ukth-prose a.inline-link{color:var(--teal-dark);font-weight:700;border-bottom:1px solid rgba(37,165,170,.3);transition:.25s;}
.ukth-prose a.inline-link:hover{border-color:var(--teal);}
@media (max-width:768px){.ukth-prose[style*="columns"]{columns:1!important;}}

.btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;border-radius:var(--r-pill);
  padding:15px 28px;font-size:.98rem;transition:transform .25s var(--ease-out),box-shadow .25s var(--ease),background .25s;cursor:pointer;border:0;}
.btn-primary{background:var(--navy);color:#fff;box-shadow:var(--sh-2);}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 36px -12px var(--navy-10),var(--sh-glow);background:var(--navy-soft);}
.btn-teal{background:var(--grad-teal);color:#fff;box-shadow:0 12px 28px -10px var(--teal-35);}
.btn-teal:hover{transform:translateY(-3px);box-shadow:0 20px 44px -12px var(--teal-35);}
.btn-ghost{background:rgba(255,255,255,.7);color:var(--navy);border:1px solid var(--border);backdrop-filter:blur(8px);}
.btn-ghost:hover{border-color:var(--teal);color:var(--teal-dark);transform:translateY(-3px);}
.btn .arr{transition:transform .25s var(--ease-out);}
/* specificity guard: generic a{color:inherit} must not override button colours */
.ukth-page a.btn-primary,.ukth-page a.btn-teal{color:#fff;}
.ukth-page a.btn-ghost{color:var(--navy);}
.ukth-page a.btn-ghost:hover{color:var(--teal-dark);}
.btn:hover .arr{transform:translateX(4px);}

/* Section reveal on scroll */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);}
.reveal.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}

/* ---- TICKER (refined) ---- */
.ukth-ticker-breakout{width:100vw;position:relative;left:50%;margin-left:-50vw;overflow:hidden;z-index:3;}
.ukth-ticker-wrap{background:var(--navy);height:42px;display:flex;align-items:center;}
.ukth-ticker-label{background:var(--grad-teal);color:#fff;padding:0 22px;height:100%;display:flex;align-items:center;
  font-weight:800;font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;position:relative;white-space:nowrap;z-index:2;flex-shrink:0;}
.ukth-ticker-label::after{content:"";position:absolute;right:-11px;top:0;border-top:21px solid transparent;border-bottom:21px solid transparent;border-left:11px solid var(--teal-dark);}
.ukth-ticker{display:flex;white-space:nowrap;animation:tick 64s linear infinite;will-change:transform;}
.ukth-ticker:hover{animation-play-state:paused;}
.ukth-ticker__item{padding:0 40px;font-size:.82rem;color:#CBD5E1;line-height:42px;}
.ukth-ticker__item strong{color:var(--teal);font-weight:700;}
@keyframes tick{to{transform:translateX(-50%);}}
@media (prefers-reduced-motion:reduce){.ukth-ticker{animation:none;}}

/* ============================================================================
   HERO — light, gradient-mesh, with floating product mock (Stripe/Wise feel)
   ============================================================================ */
.hero{position:relative;overflow:hidden;background:var(--bg-soft);padding:72px 0 110px;}
.hero::before{content:"";position:absolute;inset:0;background:var(--grad-mesh);animation:mesh 18s ease-in-out infinite alternate;z-index:0;}
@keyframes mesh{from{transform:scale(1) translateY(0);}to{transform:scale(1.08) translateY(-12px);}}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:120px;background:linear-gradient(to bottom,transparent,var(--white));z-index:1;}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;}
.hero h1{font-size:var(--fs-display);font-weight:850;color:var(--navy);}
.hero .lead{margin:22px 0 32px;font-size:1.18rem;}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:30px;}
.hero-trust{display:flex;flex-wrap:wrap;gap:22px;}
.hero-trust span{display:flex;align-items:center;gap:7px;font-size:.86rem;font-weight:600;color:var(--slate);}
.hero-trust span b{color:var(--teal);}

/* Floating product mock */
.mock{position:relative;perspective:1600px;}
.mock-card{background:rgba(255,255,255,.85);backdrop-filter:blur(16px);border:1px solid #fff;
  border-radius:var(--r-xl);box-shadow:var(--sh-3);padding:26px;transform:rotateY(-9deg) rotateX(4deg);
  transition:transform .6s var(--ease-out);animation:floaty 7s ease-in-out infinite;}
.mock:hover .mock-card{transform:rotateY(0) rotateX(0);}
@keyframes floaty{0%,100%{translate:0 0;}50%{translate:0 -12px;}}
.mock-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;}
.mock-head h4{font-size:1rem;font-weight:800;color:var(--navy);}
.mock-badge{font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--teal-dark);background:var(--teal-12);padding:5px 11px;border-radius:var(--r-pill);}
.mock-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--border);}
.mock-row:last-of-type{border-bottom:0;}
.mock-row .k{font-size:.9rem;color:var(--slate);font-weight:500;}
.mock-row .v{font-size:1.02rem;color:var(--navy);font-weight:800;}
.mock-bar{height:9px;border-radius:var(--r-pill);background:var(--border);overflow:hidden;margin:18px 0 6px;}
.mock-bar span{display:block;height:100%;border-radius:var(--r-pill);background:var(--grad-teal);width:62%;
  animation:fill 1.6s var(--ease-out) .4s both;}
@keyframes fill{from{width:0;}}
.mock-foot{display:flex;justify-content:space-between;font-size:.74rem;color:var(--slate-light);font-weight:600;}
.mock-pill{position:absolute;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);
  box-shadow:var(--sh-2);padding:12px 16px;font-size:.82rem;font-weight:700;color:var(--navy);
  display:flex;align-items:center;gap:9px;animation:floaty 6s ease-in-out infinite;}
.mock-pill .dot{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px rgba(16,185,129,.18);}
.mock-pill.tl{top:-22px;left:-28px;animation-delay:.4s;}
.mock-pill.br{bottom:-20px;right:-22px;animation-delay:1.2s;color:var(--teal-dark);}

/* ---- LOGO / TRUST STRIP ---- */
.trustbar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--white);}
.trustbar .ukth-wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding-top:26px;padding-bottom:26px;}
.trustbar .tb-label{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate-light);}
.trustbar .tb-items{display:flex;flex-wrap:wrap;gap:34px;}
.trustbar .tb-items div{font-size:.92rem;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:9px;}
.trustbar .tb-items div b{color:var(--teal);font-weight:800;}

/* ============================================================================
   SECTIONS
   ============================================================================ */
.section{padding:90px 0;position:relative;}
.section.ink{background:var(--grad-ink);color:#fff;}
.section.soft{background:var(--bg-soft);}
.section-head{max-width:680px;margin-bottom:46px;}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center;}
.section-head h2{font-size:var(--fs-h2);font-weight:850;color:var(--navy);}
.section.ink .section-head h2{color:#fff;}
.section-head p{margin-top:16px;}
.section.ink .section-head p{color:#94A3B8;}

/* ---- BENTO HUB ---- */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(150px,auto);gap:16px;}
.tile{position:relative;border-radius:var(--r-lg);border:1px solid var(--border);background:#fff;padding:24px;
  overflow:hidden;transition:transform .35s var(--ease-out),box-shadow .35s var(--ease),border-color .35s;display:flex;flex-direction:column;justify-content:space-between;}
.tile::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;
  background:linear-gradient(135deg,var(--teal),transparent 50%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s;}
.tile:hover{transform:translateY(-6px);box-shadow:var(--sh-3);border-color:transparent;}
.tile:hover::after{opacity:1;}
.tile .ico{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  font-size:1.3rem;background:var(--teal-12);margin-bottom:16px;}
.tile h3{font-size:var(--fs-h3);font-weight:800;color:var(--navy);}
.tile p{margin-top:7px;font-size:.92rem;color:var(--slate);line-height:1.55;}
.tile .go{margin-top:16px;font-size:.85rem;font-weight:800;color:var(--teal-dark);display:inline-flex;align-items:center;gap:6px;}
.tile.col2{grid-column:span 2;}
.tile.row2{grid-row:span 2;}
.tile.feature{background:var(--grad-ink);color:#fff;border-color:transparent;}
.tile.feature h3{color:#fff;}.tile.feature p{color:#CBD5E1;}
.tile.feature .ico{background:var(--teal-20);}
.tile.feature .go{color:var(--teal);}
.tile.feature::before{content:"";position:absolute;width:240px;height:240px;right:-60px;top:-60px;border-radius:50%;
  background:radial-gradient(circle,var(--teal-35),transparent 70%);filter:blur(10px);}
.tile.accent{background:var(--grad-teal);color:#fff;border-color:transparent;}
.tile.accent h3{color:#fff;}.tile.accent p{color:rgba(255,255,255,.9);}
.tile.accent .ico{background:rgba(255,255,255,.2);}.tile.accent .go{color:#fff;}
.tile.indigo .ico{background:rgba(99,102,241,.14);}
.tile.indigo:hover::after{background:linear-gradient(135deg,var(--helpdesk),transparent 50%);}
.tile.mint{background:linear-gradient(135deg,#fff,var(--bg-mint));}

/* ---- STATS BAND (authoritative numbers) ---- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.1);
  border-radius:var(--r-lg);overflow:hidden;border:1px solid rgba(255,255,255,.12);}
.stat{background:var(--navy);padding:34px 26px;}
.stat .n{font-size:clamp(2rem,3.4vw,2.8rem);font-weight:850;color:#fff;letter-spacing:-.04em;line-height:1;}
.stat .n .grad-text{font-weight:850;}
.stat .l{margin-top:10px;font-size:.86rem;color:#94A3B8;font-weight:500;line-height:1.5;}

/* ---- REGIME FEATURE GRID ---- */
.regime-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.regime-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:26px;
  display:flex;flex-direction:column;transition:transform .35s var(--ease-out),box-shadow .35s,border-color .35s;}
.regime-card:hover{transform:translateY(-5px);box-shadow:var(--sh-2);border-color:var(--teal);}
.regime-card .r-ico{font-size:1.5rem;margin-bottom:14px;}
.regime-card h3{font-size:1.15rem;font-weight:800;color:var(--navy);}
.regime-card .r-fig{align-self:flex-start;margin:12px 0;font-size:.74rem;font-weight:800;letter-spacing:.04em;
  color:var(--teal-dark);background:var(--teal-12);padding:6px 12px;border-radius:var(--r-pill);}
.regime-card p{font-size:.92rem;color:var(--slate);line-height:1.6;flex:1;}
.regime-card .ext-link{color:var(--teal-dark);font-weight:700;}
.regime-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px;}
.r-link{font-size:.8rem;font-weight:700;padding:9px 15px;border-radius:var(--r-pill);transition:.25s;}
.r-link.guide{background:var(--navy);color:#fff;}.r-link.guide:hover{background:var(--navy-soft);}
.r-link.calc{background:var(--bg-soft);color:var(--navy);border:1px solid var(--border);}
.r-link.calc:hover{border-color:var(--teal);color:var(--teal-dark);}

/* ---- EXPERT CTA (split, premium) ---- */
.expert{position:relative;overflow:hidden;border-radius:var(--r-xl);background:var(--grad-ink);color:#fff;
  padding:64px 56px;display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;}
.expert::before{content:"";position:absolute;width:480px;height:480px;right:-120px;top:-160px;border-radius:50%;
  background:radial-gradient(circle,var(--teal-35),transparent 70%);}
.expert h2{font-size:var(--fs-h2);font-weight:850;position:relative;}
.expert p{margin-top:14px;color:#CBD5E1;position:relative;line-height:1.6;}
.expert-side{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-lg);padding:28px;}
.expert-side .row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.95rem;color:#E2E8F0;}
.expert-side .row:last-child{border:0;}
.expert-side .tick{width:24px;height:24px;border-radius:50%;background:var(--teal-20);color:var(--teal);display:flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0;}
.expert-side .btn{width:100%;justify-content:center;margin-top:18px;}

/* ---- CALCULATOR CHIPS ---- */
.chips{display:flex;flex-wrap:wrap;gap:11px;}
.chip{background:#fff;border:1px solid var(--border);border-radius:var(--r-pill);padding:12px 20px;font-size:.9rem;font-weight:700;color:var(--navy);transition:.25s;}
.chip:hover{border-color:var(--teal);color:var(--teal-dark);transform:translateY(-2px);box-shadow:var(--sh-1);}

/* ---- SOCIAL + TRUSTPILOT ---- */
.social-band{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;}
.social-card{border-radius:var(--r-lg);padding:34px;display:flex;flex-direction:column;justify-content:center;}
.social-follow{background:var(--grad-teal);color:#fff;}
.social-follow h3{font-size:1.35rem;font-weight:800;}
.social-follow p{margin:10px 0 20px;color:rgba(255,255,255,.92);line-height:1.55;}
.social-btns{display:flex;gap:11px;flex-wrap:wrap;}
.sbtn{background:rgba(255,255,255,.18);color:#fff;padding:12px 22px;border-radius:var(--r-pill);font-weight:700;font-size:.9rem;transition:.25s;}
.sbtn:hover{background:#fff;color:var(--teal-dark);}
.trust-card{background:var(--navy);color:#fff;align-items:flex-start;}
.trust-card .stars{color:var(--teal);font-size:1.4rem;letter-spacing:3px;}
.trust-card h3{font-size:1.2rem;font-weight:800;margin:8px 0;}
.trust-card p{color:#94A3B8;margin-bottom:18px;line-height:1.55;}

/* ============================================================================
   FAQ (restyled; reuses existing markup classes)
   ============================================================================ */
.uk-tax-hero-faq{max-width:1100px;margin:0 auto;padding:90px 24px;position:relative;z-index:2;}
.faq-head{text-align:center;max-width:640px;margin:0 auto 34px;}
.faq-head h2{font-size:var(--fs-h2);font-weight:850;color:var(--navy);}
.faq-head p{margin-top:14px;color:var(--slate);}
.faq-controls{position:sticky;top:12px;background:rgba(248,250,252,.85);backdrop-filter:blur(12px);
  padding:16px;border:1px solid var(--border);border-radius:var(--r-lg);margin-bottom:22px;z-index:9;box-shadow:var(--sh-1);}
.faq-search{width:100%;padding:15px 18px;border-radius:var(--r-md);border:1px solid var(--border);font-size:1rem;font-family:var(--font);}
.faq-search:focus{outline:0;border-color:var(--teal);box-shadow:0 0 0 4px var(--teal-12);}
.faq-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.faq-tab{background:#fff;border:1px solid var(--border);border-radius:var(--r-pill);padding:9px 16px;font-size:.82rem;font-weight:700;color:var(--slate);cursor:pointer;transition:.2s;}
.faq-tab.active,.faq-tab:hover{background:var(--navy);color:#fff;border-color:var(--navy);}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.faq-item{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;transition:.25s;}
.faq-item[open]{border-color:var(--teal);box-shadow:var(--sh-2);}
.faq-item summary{list-style:none;cursor:pointer;padding:18px 22px;font-weight:700;color:var(--navy);font-size:.97rem;display:flex;justify-content:space-between;align-items:center;gap:12px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-size:1.5rem;color:var(--teal);font-weight:300;transition:.25s;flex-shrink:0;line-height:1;}
.faq-item[open] summary::after{transform:rotate(135deg);}
.faq-item .faq-answer{padding:0 22px 20px;color:var(--slate);line-height:1.65;font-size:.94rem;}
.faq-empty{text-align:center;color:var(--slate);padding:40px;display:none;}
.inline-link{color:var(--teal-dark);font-weight:700;}

/* ---- CLOSING ---- */
.closing{position:relative;overflow:hidden;background:var(--grad-ink);color:#fff;text-align:center;padding:96px 0;}
.closing::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 100% at 50% 0%,var(--teal-20),transparent 60%);}
.closing h2{font-size:var(--fs-h2);font-weight:850;position:relative;}
.closing p{margin:16px auto 30px;max-width:540px;color:#CBD5E1;position:relative;line-height:1.6;}
.disclaimer{padding:40px 0 64px;text-align:center;}
.disclaimer p{font-size:.8rem;color:var(--slate-light);line-height:1.6;max-width:820px;margin:0 auto;}

/* ============================================================================
   RESPONSIVE  (tablet + app-like mobile)
   ============================================================================ */
@media (max-width:980px){
  .hero{padding:48px 0 80px;}
  .hero-grid{grid-template-columns:1fr;gap:48px;text-align:center;}
  .hero .lead{margin-left:auto;margin-right:auto;}
  .hero-cta,.hero-trust{justify-content:center;}
  .mock{max-width:420px;margin:0 auto;}
  .mock-card{transform:none;}
  .bento{grid-template-columns:repeat(2,1fr);}
  .tile.col2{grid-column:span 2;}.tile.row2{grid-row:auto;}
  .stats{grid-template-columns:repeat(2,1fr);}
  .regime-grid{grid-template-columns:repeat(2,1fr);}
  .expert{grid-template-columns:1fr;padding:48px 32px;}
  .social-band{grid-template-columns:1fr;}
}
@media (max-width:600px){
  .section{padding:64px 0;}
  .ukth-wrap{padding:0 18px;}
  .hero h1{font-size:clamp(2.3rem,9vw,3rem);}
  .hero-cta{flex-direction:column;}.hero-cta .btn{width:100%;justify-content:center;}
  /* Vertical stacking (no carousel) */
  .bento{grid-template-columns:1fr;gap:14px;}
  .tile.col2,.tile.row2{grid-column:auto;grid-row:auto;}
  .regime-grid{grid-template-columns:1fr;gap:16px;}
  .stats{grid-template-columns:1fr 1fr;}
  .faq-grid{grid-template-columns:1fr;}
  .faq-controls{position:static;}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;}.mock-card{transform:none;}}

/* ============================================================================
   v2.1 ADDITIONS — Read-more, hub descriptors, schema content, examples
   ============================================================================ */

/* Read-more / expandable content */
.readmore{position:relative;}
.readmore-content{max-height:none;}
.readmore.collapsed .readmore-content{max-height:340px;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 60%,transparent);mask-image:linear-gradient(to bottom,#000 60%,transparent);}
.readmore-toggle{display:inline-flex;align-items:center;gap:7px;margin-top:16px;font-size:.92rem;font-weight:800;color:var(--teal-dark);background:var(--teal-12);border:0;border-radius:var(--r-pill);padding:11px 22px;cursor:pointer;transition:.25s var(--ease-out);font-family:var(--font);}
.readmore-toggle:hover{background:var(--teal-20);transform:translateY(-2px);}
.readmore-toggle .ch{transition:transform .3s var(--ease);font-size:1.1rem;line-height:1;}
.readmore:not(.collapsed) .readmore-toggle .ch{transform:rotate(180deg);}

/* Hub tile descriptors (so they're not bloated buttons) */
.tile p.tile-desc{margin-top:8px;font-size:.86rem;color:var(--slate);line-height:1.5;font-weight:500;}
.tile.feature p.tile-desc,.tile.accent p.tile-desc{color:rgba(255,255,255,.88);}
.tile .tile-fig{display:inline-block;margin-top:10px;font-size:.7rem;font-weight:800;letter-spacing:.04em;color:var(--teal-dark);background:var(--teal-12);padding:4px 10px;border-radius:var(--r-pill);}
.tile.feature .tile-fig,.tile.accent .tile-fig{color:#fff;background:rgba(255,255,255,.18);}

/* Worked example callout boxes */
.example-box{background:linear-gradient(135deg,var(--bg-mint),#fff);border:1px solid var(--teal-20);border-left:4px solid var(--teal);border-radius:var(--r-md);padding:22px 24px;margin:22px 0;}
.example-box .ex-label{display:inline-flex;align-items:center;gap:7px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--teal-dark);margin-bottom:12px;}
.example-box .ex-label::before{content:"🧮";}
.example-box p{margin-bottom:10px;font-size:.95rem;color:var(--navy);line-height:1.6;}
.example-box .calc-line{font-family:'Courier New',monospace;background:rgba(15,23,42,.04);padding:10px 14px;border-radius:8px;margin:8px 0;font-size:.9rem;color:var(--navy);display:block;}
.example-box .result{font-weight:800;color:var(--teal-dark);}

/* Info / tip boxes */
.info-box{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-md);padding:20px 24px;margin:20px 0;}
.info-box.warn{background:#F8FAFC;border-color:rgba(99,102,241,.25);border-left:4px solid #6366F1;}
.info-box.key{border-left:4px solid var(--teal);}
.info-box .ib-title{font-weight:800;color:var(--navy);margin-bottom:8px;font-size:.98rem;display:flex;align-items:center;gap:8px;}
.info-box p{font-size:.92rem;color:var(--slate);line-height:1.6;margin-bottom:8px;}
.info-box p:last-child{margin-bottom:0;}
.info-box ul{margin:10px 0 0;padding-left:20px;}
.info-box li{font-size:.92rem;color:var(--slate);line-height:1.7;margin-bottom:6px;}

/* How-to-file step list */
.steps{counter-reset:step;margin:24px 0;padding:0;list-style:none;}
.steps li{position:relative;padding:0 0 22px 52px;counter-increment:step;}
.steps li::before{content:counter(step);position:absolute;left:0;top:-2px;width:34px;height:34px;border-radius:50%;background:var(--grad-teal);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.95rem;box-shadow:var(--sh-1);}
.steps li::after{content:"";position:absolute;left:16px;top:34px;bottom:0;width:2px;background:var(--border);}
.steps li:last-child::after{display:none;}
.steps li h4{font-size:1rem;font-weight:800;color:var(--navy);margin:0 0 4px;}
.steps li p{font-size:.92rem;color:var(--slate);line-height:1.6;margin:0;}

/* Data tables (rates/bands) */
.rate-table{width:100%;border-collapse:collapse;margin:22px 0;font-size:.92rem;border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-1);}
.rate-table th{background:var(--navy);color:#fff;text-align:left;padding:14px 16px;font-weight:700;font-size:.85rem;}
.rate-table td{padding:13px 16px;border-bottom:1px solid var(--border);background:#fff;color:var(--navy);}
.rate-table tr:last-child td{border-bottom:0;}
.rate-table tr:nth-child(even) td{background:var(--bg-soft);}
.rate-table td strong{color:var(--teal-dark);}

/* Box-number reference pills */
.box-ref{display:inline-block;background:var(--navy);color:#fff;font-size:.7rem;font-weight:800;padding:3px 9px;border-radius:6px;font-family:'Courier New',monospace;margin:0 2px;}

/* HMRC resource links grid */
.resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:24px 0;}
.resource-link{display:flex;align-items:flex-start;gap:12px;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:16px 18px;transition:.25s var(--ease-out);}
.resource-link:hover{border-color:var(--teal);transform:translateY(-3px);box-shadow:var(--sh-2);}
.resource-link .rl-ico{font-size:1.3rem;flex-shrink:0;}
.resource-link .rl-text{font-size:.88rem;}
.resource-link .rl-text b{display:block;color:var(--navy);font-weight:800;margin-bottom:2px;}
.resource-link .rl-text span{color:var(--slate);font-size:.82rem;}

/* Sub-section anchor headings */
.guide-section{scroll-margin-top:80px;}
.guide-section h3{font-size:1.35rem;font-weight:800;color:var(--navy);margin:36px 0 16px;padding-top:8px;}
.guide-section h4{font-size:1.05rem;font-weight:800;color:var(--navy);margin:24px 0 10px;}

/* In-page contents nav */
.toc{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px 28px;margin-bottom:40px;}
.toc h4{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--slate);margin:0 0 14px;}
.toc ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;}
.toc a{font-size:.9rem;font-weight:600;color:var(--navy);padding:7px 0;display:flex;align-items:center;gap:8px;transition:.2s;}
.toc a::before{content:"→";color:var(--teal);font-weight:800;}
.toc a:hover{color:var(--teal-dark);padding-left:4px;}

/* ============================================================================
   v2.1 ADDITIONS — read-more, hub descriptors, info boxes, examples, resources
   ============================================================================ */

/* Read-more expandable content */
.readmore{position:relative;}
.readmore .rm-body{max-height:none;}
.readmore.collapsed .rm-body{max-height:340px;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 65%,transparent);mask-image:linear-gradient(180deg,#000 65%,transparent);}
.readmore .rm-toggle{display:inline-flex;align-items:center;gap:7px;margin-top:18px;font-weight:800;font-size:.9rem;
  color:var(--teal-dark);background:var(--teal-12);border:0;border-radius:var(--r-pill);padding:11px 20px;cursor:pointer;transition:.25s;font-family:var(--font);}
.readmore .rm-toggle:hover{background:var(--teal-20);transform:translateY(-2px);}
.readmore .rm-toggle .chev{transition:transform .25s var(--ease);}
.readmore:not(.collapsed) .rm-toggle .chev{transform:rotate(180deg);}

/* Info / useful-information callout boxes */
.infobox{border-radius:var(--r-md);padding:22px 24px;margin:24px 0;border:1px solid var(--border);background:var(--bg-soft);}
.infobox h4{font-size:.95rem;font-weight:800;color:var(--navy);margin:0 0 10px;display:flex;align-items:center;gap:9px;}
.infobox h4 .ib-ico{width:28px;height:28px;border-radius:8px;background:var(--teal-12);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;}
.infobox p,.infobox li{font-size:.9rem;color:var(--slate);line-height:1.6;}
.infobox ul{margin:8px 0 0;padding-left:18px;}
.infobox li{margin-bottom:6px;}
.infobox.teal{background:var(--bg-mint);border-color:var(--teal-20);}
.infobox.warn{background:#F8FAFC;border-color:rgba(99,102,241,.25);}
.infobox.warn h4 .ib-ico{background:rgba(99,102,241,.12);}
.infobox a{color:var(--teal-dark);font-weight:700;border-bottom:1px solid rgba(37,165,170,.3);}

/* Worked example boxes */
.example{border-radius:var(--r-md);padding:24px;margin:24px 0;background:var(--grad-ink);color:#fff;border:1px solid transparent;}
.example .ex-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.example .ex-label::before{content:"";width:18px;height:18px;border-radius:5px;background:var(--teal-20);display:inline-flex;}
.example h4{font-size:1.05rem;font-weight:800;color:#fff;margin:0 0 14px;}
.example .calc-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.92rem;color:#CBD5E1;}
.example .calc-row:last-of-type{border-bottom:0;}
.example .calc-row.total{margin-top:6px;border-top:2px solid var(--teal-20);border-bottom:0;padding-top:14px;font-weight:800;color:#fff;font-size:1rem;}
.example .calc-row .lbl{flex:1;}
.example .calc-row .val{font-weight:700;color:#fff;font-variant-numeric:tabular-nums;}
.example .ex-note{margin-top:14px;font-size:.82rem;color:var(--slate-light);line-height:1.55;}

/* HMRC / official resources block */
.resources{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:8px 0;}
.res-card{display:flex;gap:14px;align-items:flex-start;padding:20px;border-radius:var(--r-md);border:1px solid var(--border);background:#fff;transition:.25s;}
.res-card:hover{border-color:var(--teal);transform:translateY(-3px);box-shadow:var(--sh-1);}
.res-card .res-ico{width:40px;height:40px;border-radius:10px;background:var(--teal-12);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;}
.res-card .res-txt strong{display:block;font-size:.92rem;font-weight:800;color:var(--navy);margin-bottom:3px;}
.res-card .res-txt span{font-size:.82rem;color:var(--slate);line-height:1.5;}

/* In-content subsection headings */
.ukth-prose h3{font-size:1.3rem;font-weight:800;color:var(--navy);margin:34px 0 14px;letter-spacing:-.02em;}
.ukth-prose h4{font-size:1.05rem;font-weight:800;color:var(--navy);margin:24px 0 10px;}
.ukth-prose ul,.ukth-prose ol{margin:14px 0;padding-left:22px;color:var(--slate);line-height:1.7;}
.ukth-prose li{margin-bottom:8px;}
.ukth-prose strong{color:var(--navy);font-weight:700;}
.ukth-prose table{width:100%;border-collapse:collapse;margin:20px 0;font-size:.9rem;}
.ukth-prose th{text-align:left;padding:11px 14px;background:var(--navy);color:#fff;font-weight:700;font-size:.82rem;}
.ukth-prose th:first-child{border-radius:var(--r-sm) 0 0 0;}
.ukth-prose th:last-child{border-radius:0 var(--r-sm) 0 0;}
.ukth-prose td{padding:11px 14px;border-bottom:1px solid var(--border);color:var(--slate);}
.ukth-prose tr:last-child td{border-bottom:0;}
.ukth-prose tbody tr:nth-child(even){background:var(--bg-soft);}

/* Hub tile descriptors — ensure every tile shows a description */
.tile p.tile-desc{margin-top:7px;font-size:.88rem;color:var(--slate);line-height:1.5;display:block;}
.tile.feature p.tile-desc,.tile.accent p.tile-desc{color:rgba(255,255,255,.88);}

/* Quick-answer box at top of guides */
.quick-answer{background:var(--bg-mint);border:1px solid var(--teal-20);border-radius:var(--r-lg);padding:26px 28px;margin-bottom:36px;}
.quick-answer .qa-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--teal-dark);margin-bottom:10px;}
.quick-answer p{font-size:1.02rem;color:var(--navy);line-height:1.6;font-weight:500;}

/* On-page contents nav */
.toc{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:24px 28px;margin-bottom:36px;}
.toc strong{display:block;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--slate-light);margin-bottom:14px;}
.toc ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;}
.toc a{font-size:.92rem;font-weight:600;color:var(--teal-dark);display:flex;align-items:center;gap:8px;padding:6px 0;transition:.2s;}
.toc a:hover{color:var(--teal);transform:translateX(3px);}
.toc a::before{content:"→";color:var(--teal);font-weight:800;}

@media (max-width:600px){
  .example .calc-row{font-size:.85rem;}
  .resources{grid-template-columns:1fr;}
}

/* ============================================================================
   ADDITIONS v2.1 — read-more, hub descriptors, HMRC info boxes, examples
   ============================================================================ */

/* Read-more / expandable long content */
.readmore{position:relative;}
.readmore-content{max-height:none;overflow:visible;}
.readmore.collapsed .readmore-content{max-height:380px;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 65%,transparent);mask-image:linear-gradient(to bottom,#000 65%,transparent);}
.readmore-toggle{display:inline-flex;align-items:center;gap:7px;margin-top:18px;background:var(--teal-12);color:var(--teal-dark);
  border:0;border-radius:var(--r-pill);padding:11px 22px;font-size:.9rem;font-weight:800;cursor:pointer;font-family:var(--font);transition:.25s;}
.readmore-toggle:hover{background:var(--teal-20);transform:translateY(-2px);}
.readmore-toggle .chev{transition:transform .25s;}
.readmore:not(.collapsed) .readmore-toggle .chev{transform:rotate(180deg);}

/* Hub tile descriptors (so tiles aren't bloated buttons) */
.tile p.tile-desc{margin-top:8px;font-size:.86rem;color:var(--slate);line-height:1.5;font-weight:500;}
.tile.feature p.tile-desc,.tile.accent p.tile-desc{color:rgba(255,255,255,.85);}

/* HMRC / official info boxes */
.info-box{background:var(--bg-mint);border:1px solid var(--teal-20);border-left:4px solid var(--teal);
  border-radius:var(--r-md);padding:20px 24px;margin:24px 0;}
.info-box.warn{background:#F8FAFC;border-color:rgba(99,102,241,.25);border-left-color:#6366F1;}
.info-box.official{background:var(--navy);color:#fff;border-color:var(--navy-soft);border-left-color:var(--teal);}
.info-box h4{font-size:.95rem;font-weight:800;color:var(--navy);margin:0 0 8px;display:flex;align-items:center;gap:8px;}
.info-box.official h4{color:#fff;}
.info-box p{font-size:.9rem;line-height:1.6;color:var(--slate);margin:0;}
.info-box.official p{color:#CBD5E1;}
.info-box a{color:var(--teal-dark);font-weight:700;}
.info-box.official a{color:var(--teal);}
.info-box ul{margin:8px 0 0;padding-left:20px;}
.info-box li{font-size:.9rem;line-height:1.7;color:var(--slate);}
.info-box.official li{color:#CBD5E1;}

/* Worked example boxes */
.example-box{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:22px 26px;margin:24px 0;box-shadow:var(--sh-1);}
.example-box .ex-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--teal-dark);
  background:var(--teal-12);padding:5px 12px;border-radius:var(--r-pill);display:inline-block;margin-bottom:14px;}
.example-box h4{font-size:1.02rem;font-weight:800;color:var(--navy);margin:0 0 12px;}
.example-box .calc-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed var(--border);font-size:.92rem;}
.example-box .calc-row:last-child{border-bottom:0;}
.example-box .calc-row .lbl{color:var(--slate);}
.example-box .calc-row .val{font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums;}
.example-box .calc-row.total{margin-top:6px;padding-top:12px;border-top:2px solid var(--navy);border-bottom:0;}
.example-box .calc-row.total .lbl{font-weight:800;color:var(--navy);}
.example-box .calc-row.total .val{font-weight:850;color:var(--teal-dark);font-size:1.1rem;}

/* Key-facts table */
.facts-table{width:100%;border-collapse:collapse;margin:24px 0;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--border);}
.facts-table th{background:var(--navy);color:#fff;text-align:left;padding:13px 18px;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;}
.facts-table td{padding:13px 18px;border-bottom:1px solid var(--border);font-size:.92rem;color:var(--slate);}
.facts-table tr:last-child td{border-bottom:0;}
.facts-table tr:nth-child(even) td{background:var(--bg-soft);}
.facts-table td:first-child{font-weight:700;color:var(--navy);}
.facts-table td .val{font-variant-numeric:tabular-nums;font-weight:700;color:var(--teal-dark);}

/* In-content section navigation (sticky) */
.page-nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:0;}
.page-nav-inner{display:flex;gap:6px;overflow-x:auto;padding:12px 24px;max-width:var(--maxw);margin:0 auto;-webkit-overflow-scrolling:touch;}
.page-nav-inner::-webkit-scrollbar{display:none;}
.page-nav a{white-space:nowrap;font-size:.84rem;font-weight:700;color:var(--slate);padding:8px 14px;border-radius:var(--r-pill);transition:.2s;}
.page-nav a:hover,.page-nav a.active{background:var(--teal-12);color:var(--teal-dark);}

/* Prose headings consistency */
.ukth-prose h3{font-size:1.3rem;font-weight:800;color:var(--navy);margin:36px 0 14px;letter-spacing:-.02em;}
.ukth-prose h3:first-child{margin-top:0;}
.ukth-prose h4{font-size:1.05rem;font-weight:800;color:var(--navy);margin:24px 0 10px;}
.ukth-prose ul,.ukth-prose ol{margin:14px 0;padding-left:24px;}
.ukth-prose li{margin-bottom:8px;line-height:1.7;}
.ukth-prose strong{color:var(--navy);font-weight:700;}

/* Related guide cards with descriptors */
.regime-card .rc-desc{font-size:.86rem;color:var(--slate);line-height:1.5;margin:8px 0 0;flex:1;}

@media (max-width:600px){
  .facts-table{font-size:.84rem;}
  .facts-table th,.facts-table td{padding:10px 12px;}
  .example-box{padding:18px;}
}

/* Regime card & tile icons (landing page) */
.regime-card .rc-ico{font-size:2rem;margin-bottom:12px;display:block;line-height:1;}
.tile .tile-ico{font-size:2.2rem;margin-bottom:14px;display:block;line-height:1;}
.tile.feature .tile-ico,.tile.accent .tile-ico{font-size:2.6rem;}
.regime-card{display:flex;flex-direction:column;}
.regime-card .go{margin-top:auto;padding-top:14px;}
