:root{
  --di-ink:#10223b;
  --di-copy:#42536d;
  --di-blue:#0a67ff;
  --di-purple:#7044d7;
  --di-soft:#f6f9ff;
  --di-soft-purple:#f8f5ff;
  --di-line:#dce6f3;
  --di-green:#167a55;
  --di-shadow:0 22px 70px rgba(27,54,93,.10);
}

html{scroll-behavior:smooth}
html.di-large-text{font-size:112.5%}
body.di-page{background:#fff;color:var(--di-ink)}
.di-page main{font-size:1.08rem;line-height:1.72}
.di-page .container{width:min(1180px,calc(100% - 36px))}
.di-page h1,.di-page h2,.di-page h3{color:var(--di-ink)}
.di-page p{color:var(--di-copy)}
.di-page a:focus-visible,.di-page button:focus-visible,.di-page input:focus-visible,.di-page textarea:focus-visible,.di-page select:focus-visible{
  outline:4px solid #f4bd00;
  outline-offset:4px;
}
.di-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Accessibility toolbar */
.di-accessibility-wrap{background:#f5f8fd;border-bottom:1px solid #dde6f2}
.di-accessibility-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;font-size:.92rem}
.di-accessibility-title{display:flex;align-items:center;gap:9px;font-weight:850;color:#253c5e}
.di-accessibility-title svg{width:22px;height:22px;stroke:var(--di-blue);fill:none;stroke-width:2}
.di-accessibility-controls{display:flex;flex-wrap:wrap;gap:8px}
.di-accessibility-controls button{appearance:none;border:1px solid #cbd9e9;background:#fff;color:#173253;border-radius:999px;padding:9px 14px;font:inherit;font-weight:800;cursor:pointer;min-height:42px}
.di-accessibility-controls button:hover{border-color:#7faeff;background:#f7fbff}
.di-accessibility-controls button[aria-pressed="true"]{background:#10223b;color:#fff;border-color:#10223b}

/* Hero */
.di-hero{position:relative;min-height:690px;overflow:hidden;display:flex;align-items:center;border-bottom:1px solid #e4ebf5;background:#eef4ff}
.di-hero-media{position:absolute;inset:0;z-index:0;margin:0}
.di-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.di-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.97) 31%,rgba(251,253,255,.86) 46%,rgba(255,255,255,.24) 63%,rgba(255,255,255,0) 78%)}
.di-hero-inner{position:relative;z-index:2;padding:68px 0 74px}
.di-hero-copy{max-width:690px}
.di-hero .breadcrumbs{margin-bottom:28px;font-size:.86rem}
.di-hero-kicker{display:inline-flex;align-items:center;gap:9px;margin:0 0 14px;color:#165fbf;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}
.di-hero-kicker::before{content:"";width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--di-blue),var(--di-purple));box-shadow:0 0 0 6px rgba(10,103,255,.08)}
.di-hero h1{margin:0;font-size:clamp(3.1rem,6.2vw,5.9rem);line-height:.94;letter-spacing:-.06em;max-width:700px}
.di-hero h1 span{background:linear-gradient(90deg,var(--di-blue),var(--di-purple));-webkit-background-clip:text;background-clip:text;color:transparent}
.di-hero-statement{font-size:clamp(1.26rem,2vw,1.58rem);line-height:1.45;font-weight:850;color:#1e3657!important;margin:24px 0 11px;max-width:600px}
.di-hero-lead{font-size:1.08rem;line-height:1.72;max-width:640px;margin:0 0 26px;color:#42536d!important}
.di-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:680px;margin:0 0 20px}
.di-route{display:block;text-decoration:none;border:1px solid rgba(15,58,122,.15);background:rgba(255,255,255,.94);border-radius:18px;padding:17px 18px;box-shadow:0 12px 30px rgba(30,62,103,.08);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.di-route:hover{transform:translateY(-2px);border-color:rgba(10,103,255,.42);box-shadow:0 16px 34px rgba(30,62,103,.12)}
.di-route strong{display:block;color:#112b4c;font-size:1rem;line-height:1.35}
.di-route span{display:block;margin-top:5px;color:#5a6d86;font-size:.84rem;line-height:1.45}
.di-hero-call{display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:#304866;font-weight:700}
.di-hero-call a{font-size:1.08rem;font-weight:900;color:#0a5fd5;text-decoration:none}

/* Trust */
.di-trust-strip{background:#10223b;color:#fff}
.di-trust-inner{display:flex;align-items:center;justify-content:center;gap:12px 26px;flex-wrap:wrap;padding:17px 0;font-size:.9rem;font-weight:800}
.di-trust-inner span{display:inline-flex;align-items:center;gap:8px}
.di-trust-inner span::before{content:"✓";display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:.72rem}

/* Shared section layout */
.di-section{padding:82px 0}
.di-section--soft{background:linear-gradient(180deg,#f8fbff,#fff)}
.di-section--purple{background:linear-gradient(180deg,#fbf9ff,#fff)}
.di-section-heading{max-width:790px;margin-bottom:34px}
.di-eyebrow{margin:0 0 8px;color:#1665ce!important;font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.di-section-heading h2{margin:0;font-size:clamp(2.1rem,4.6vw,3.9rem);line-height:1.04;letter-spacing:-.05em}
.di-section-heading p:not(.di-eyebrow){font-size:1.08rem;line-height:1.7;margin:14px 0 0;max-width:760px}

/* Help cards */
.di-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.di-help-card{border:1px solid var(--di-line);border-radius:22px;padding:24px;background:#fff;box-shadow:0 12px 34px rgba(28,59,99,.05);min-height:220px}
.di-help-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;margin-bottom:18px;background:linear-gradient(135deg,#eaf4ff,#f2ecff);color:#175ebf}
.di-help-icon svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.di-help-card h3{font-size:1.13rem;line-height:1.3;margin:0 0 8px;letter-spacing:-.025em}
.di-help-card p{margin:0;font-size:.93rem;line-height:1.63}

/* Audience routes */
.di-route-section{scroll-margin-top:110px}
.di-audience-panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);gap:30px;align-items:start;border:1px solid var(--di-line);border-radius:30px;padding:clamp(26px,4vw,46px);background:#fff;box-shadow:var(--di-shadow)}
.di-audience-panel--family{background:linear-gradient(135deg,#fff,#fbf9ff)}
.di-audience-copy h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.06;letter-spacing:-.045em;margin:0 0 18px}
.di-audience-copy p{margin:0 0 16px}
.di-audience-copy strong.emphasis{color:#183b68}
.di-audience-side{border-radius:22px;padding:24px;background:#f3f7fd;border:1px solid #dbe6f2}
.di-audience-panel--family .di-audience-side{background:#f6f1ff;border-color:#e4d8fb}
.di-audience-side h3{margin:0 0 12px;font-size:1.12rem}
.di-audience-side ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.di-audience-side li{position:relative;padding-left:28px;color:#435774;font-size:.93rem}
.di-audience-side li::before{content:"✓";position:absolute;left:0;top:1px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#e4f1ff;color:#0a67ff;font-weight:900;font-size:.72rem}
.di-audience-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}

/* Who this is for */
.di-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.di-check-item{display:flex;align-items:flex-start;gap:13px;padding:16px 18px;border:1px solid var(--di-line);border-radius:16px;background:#fff;color:#334c6a}
.di-check-item::before{content:"✓";flex:0 0 26px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#eaf4ff;color:#0a67ff;font-weight:900}
.di-inclusive-note{margin-top:22px;padding:20px 22px;border-left:5px solid var(--di-blue);background:#f4f8ff;border-radius:0 16px 16px 0;color:#26476f;font-weight:750}

/* Visit steps */
.di-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.di-step{position:relative;padding:28px;border:1px solid var(--di-line);border-radius:24px;background:#fff;min-height:260px;box-shadow:0 12px 32px rgba(31,62,102,.05)}
.di-step-number{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,var(--di-blue),var(--di-purple));color:#fff;font-size:1.12rem;font-weight:900;margin-bottom:20px}
.di-step h3{font-size:1.4rem;margin:0 0 10px;letter-spacing:-.03em}
.di-step p{margin:0}
.di-process-summary{text-align:center;margin:24px auto 0;font-size:1.08rem;font-weight:850;color:#183a65!important}

/* Pricing */
.di-price-shell{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:24px;align-items:stretch}
.di-price-card{position:relative;overflow:hidden;border-radius:30px;padding:clamp(28px,4vw,46px);background:radial-gradient(circle at 92% 10%,rgba(126,77,255,.30),transparent 33%),linear-gradient(145deg,#07152f,#132a58 58%,#33207a);color:#fff;box-shadow:0 28px 76px rgba(11,29,66,.22)}
.di-price-card .di-eyebrow{color:#b9d7ff!important}
.di-price-card h2{color:#fff;margin:0 0 14px;font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.05em;line-height:1.05}
.di-price-main{display:flex;align-items:flex-end;gap:14px;margin:20px 0 4px}
.di-price-main strong{font-size:clamp(4.4rem,8vw,7.2rem);line-height:.9;letter-spacing:-.07em}
.di-price-main span{padding-bottom:10px;font-weight:800;color:#d7e4f7}
.di-price-card>p{color:#d7e4f7!important;max-width:580px}
.di-price-extra{margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.18);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.di-price-extra strong{font-size:1.9rem}
.di-price-extra span{color:#d7e4f7}
.di-price-reassurance{margin-top:22px;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.1);font-weight:800;color:#fff}
.di-price-details{border:1px solid var(--di-line);border-radius:30px;padding:clamp(28px,4vw,42px);background:#fff}
.di-price-details h3{font-size:1.45rem;margin:0 0 18px}
.di-price-details ul{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.di-price-details li{position:relative;padding-left:31px;color:#425773}
.di-price-details li::before{content:"✓";position:absolute;left:0;top:1px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#e8f6ef;color:#14714e;font-size:.72rem;font-weight:900}
.di-followup-box{margin-top:18px;border-radius:16px;padding:17px 18px;background:#f7f4ff;border:1px solid #e5dbf9;color:#473e6a}
.di-followup-box strong{display:block;color:#34265f;margin-bottom:3px}

/* Signposting */
.di-signpost{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:start;border-radius:28px;padding:clamp(26px,4vw,40px);background:linear-gradient(135deg,#effbf6,#f7fbff);border:1px solid #cde9dd}
.di-signpost-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#fff;color:var(--di-green);box-shadow:0 10px 28px rgba(17,109,75,.10)}
.di-signpost-icon svg{width:30px;height:30px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.di-signpost h2{margin:0 0 10px;font-size:clamp(1.8rem,3.3vw,2.8rem);letter-spacing:-.04em}
.di-signpost p{margin:0 0 10px;max-width:850px}
.di-signpost strong{color:#245a46}

/* Safety */
.di-safety-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:24px;align-items:start}
.di-safety-card{border:1px solid var(--di-line);border-radius:26px;padding:28px;background:#fff}
.di-safety-list{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.di-safety-list li{display:flex;gap:12px;color:#405571}
.di-safety-list li::before{content:"✓";flex:0 0 24px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eaf4ff;color:#0a67ff;font-weight:900;font-size:.72rem}
.di-boundary{border-radius:24px;padding:26px;background:#10223b;color:#fff}
.di-boundary h3{color:#fff;margin:0 0 10px;font-size:1.3rem}
.di-boundary p{color:#d3deec!important;margin:0}

/* Independence/family pair */
.di-outcome-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.di-outcome-card{border:1px solid var(--di-line);border-radius:28px;padding:30px;background:#fff;box-shadow:0 14px 38px rgba(29,60,101,.05)}
.di-outcome-card h2{font-size:clamp(1.8rem,3.1vw,2.7rem);line-height:1.08;letter-spacing:-.04em;margin:0 0 14px}
.di-outcome-card p{margin:0 0 14px}
.di-mini-list{margin:18px 0 0;padding-left:1.15em;color:#425773;columns:2;column-gap:28px}
.di-mini-list li{margin:0 0 8px;break-inside:avoid}

/* Accessibility explanation */
.di-accessibility-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:center;border-radius:28px;padding:30px;background:linear-gradient(135deg,#eef6ff,#f7f3ff);border:1px solid #d9e5f3}
.di-accessibility-card h2{margin:0 0 10px;font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.04em}
.di-accessibility-card p{margin:0}
.di-accessibility-demo{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.di-accessibility-demo span{border-radius:999px;padding:10px 13px;background:#fff;border:1px solid #cedbea;font-weight:800;color:#26476f;white-space:nowrap}

/* Trust credentials */
.di-credentials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.di-credential{border:1px solid var(--di-line);border-radius:20px;padding:22px;background:#fff;min-height:150px}
.di-credential strong{display:block;font-size:1.05rem;color:#173558;margin-bottom:7px}
.di-credential span{display:block;color:#60738d;font-size:.9rem;line-height:1.55}

/* Coverage */
.di-coverage{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;border-radius:28px;padding:32px;background:#f7faff;border:1px solid var(--di-line)}
.di-coverage h2{margin:0 0 8px;font-size:clamp(1.9rem,3.4vw,2.8rem);letter-spacing:-.04em}
.di-coverage p{margin:0;max-width:760px}
.di-coverage-call{text-align:right}
.di-coverage-call span{display:block;color:#61738c;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.di-coverage-call a{display:block;color:#0a5fcf;font-weight:900;font-size:1.45rem;text-decoration:none;white-space:nowrap}

/* Final CTA */
.di-final{padding:76px 0 92px;background:radial-gradient(circle at 85% 15%,rgba(105,66,215,.28),transparent 30%),linear-gradient(145deg,#07142f,#111f4c 58%,#2d1c72);color:#fff}
.di-final-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:34px;align-items:center}
.di-final h2{color:#fff;margin:0 0 14px;font-size:clamp(2.3rem,4.5vw,4.2rem);line-height:1.02;letter-spacing:-.05em}
.di-final p{color:#d1ddec!important;margin:0;max-width:730px}
.di-final-actions{display:grid;gap:10px}
.di-final-actions .btn{justify-content:center;min-height:54px;font-size:1rem}
.di-final-actions .btn-light{background:#fff;color:#10223b;border-color:#fff}
.di-final-actions .btn-outline-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.38)}
.di-final-price{margin-top:14px;color:#c9d6e8;font-size:.88rem;font-weight:750;text-align:center}

/* Footer/mobile contact variations */
.di-page .mobile-contact-bar .mobile-contact-quote span{font-size:.78rem}

/* High contrast mode */
html.di-high-contrast body{background:#000!important;color:#fff!important}
html.di-high-contrast .site-header,html.di-high-contrast .di-accessibility-wrap,html.di-high-contrast .site-footer{background:#000!important;border-color:#fff!important}
html.di-high-contrast .site-header a,html.di-high-contrast .primary-nav a,html.di-high-contrast .site-footer a,html.di-high-contrast .footer-brand span{color:#fff!important}
html.di-high-contrast .brand,html.di-high-contrast .footer-brand img{background:#fff;border-radius:12px;padding:3px}
html.di-high-contrast .di-accessibility-title,html.di-high-contrast .di-accessibility-title svg{color:#fff!important;stroke:#ffd800!important}
html.di-high-contrast .di-accessibility-controls button{background:#000!important;color:#fff!important;border:2px solid #fff!important}
html.di-high-contrast .di-accessibility-controls button[aria-pressed="true"]{background:#ffd800!important;color:#000!important;border-color:#ffd800!important}
html.di-high-contrast .di-hero{background:#000!important;border-color:#fff!important}
html.di-high-contrast .di-hero-media{display:none!important}
html.di-high-contrast .di-hero::after{display:none!important}
html.di-high-contrast .di-hero h1,html.di-high-contrast .di-hero h1 span,html.di-high-contrast .di-hero-statement,html.di-high-contrast .di-hero-lead,html.di-high-contrast .di-hero-call,html.di-high-contrast .breadcrumbs,html.di-high-contrast .breadcrumbs a{color:#fff!important;-webkit-text-fill-color:initial;background:none!important}
html.di-high-contrast .di-hero-kicker,html.di-high-contrast .di-eyebrow{color:#ffd800!important}
html.di-high-contrast .di-route,html.di-high-contrast .di-help-card,html.di-high-contrast .di-audience-panel,html.di-high-contrast .di-audience-side,html.di-high-contrast .di-check-item,html.di-high-contrast .di-step,html.di-high-contrast .di-price-details,html.di-high-contrast .di-signpost,html.di-high-contrast .di-safety-card,html.di-high-contrast .di-outcome-card,html.di-high-contrast .di-accessibility-card,html.di-high-contrast .di-credential,html.di-high-contrast .di-coverage{background:#000!important;color:#fff!important;border:2px solid #fff!important;box-shadow:none!important}
html.di-high-contrast .di-section,html.di-high-contrast .di-section--soft,html.di-high-contrast .di-section--purple{background:#000!important}
html.di-high-contrast .di-page h1,html.di-high-contrast .di-page h2,html.di-high-contrast .di-page h3,html.di-high-contrast .di-page p,html.di-high-contrast .di-route strong,html.di-high-contrast .di-route span,html.di-high-contrast .di-check-item,html.di-high-contrast .di-safety-list li,html.di-high-contrast .di-mini-list,html.di-high-contrast .di-credential strong,html.di-high-contrast .di-credential span,html.di-high-contrast .di-coverage p{color:#fff!important}
html.di-high-contrast .di-page a:not(.btn):not(.brand):not(.footer-brand){color:#ffd800!important;text-decoration:underline}
html.di-high-contrast .di-trust-strip,html.di-high-contrast .di-boundary,html.di-high-contrast .di-price-card,html.di-high-contrast .di-final{background:#000!important;border-top:2px solid #fff!important;border-bottom:2px solid #fff!important;box-shadow:none!important}
html.di-high-contrast .di-price-card p,html.di-high-contrast .di-price-main span,html.di-high-contrast .di-price-extra span,html.di-high-contrast .di-final p,html.di-high-contrast .di-boundary p{color:#fff!important}
html.di-high-contrast .di-inclusive-note,html.di-high-contrast .di-followup-box,html.di-high-contrast .di-price-reassurance{background:#000!important;color:#fff!important;border:2px solid #ffd800!important}
html.di-high-contrast .di-page .btn{background:#ffd800!important;color:#000!important;border:2px solid #ffd800!important}
html.di-high-contrast .di-page .btn-ghost,html.di-high-contrast .di-page .btn-outline-light{background:#000!important;color:#ffd800!important;border:2px solid #ffd800!important}
html.di-high-contrast .di-help-icon,html.di-high-contrast .di-step-number,html.di-high-contrast .di-check-item::before,html.di-high-contrast .di-audience-side li::before,html.di-high-contrast .di-price-details li::before,html.di-high-contrast .di-safety-list li::before{background:#ffd800!important;color:#000!important}
html.di-high-contrast .di-signpost-icon{background:#ffd800!important;color:#000!important}
html.di-high-contrast .mobile-contact-bar{background:#000!important;border-top:2px solid #fff!important}
html.di-high-contrast .mobile-contact-bar a{color:#ffd800!important}

@media (prefers-contrast: more){
  .di-page .di-help-card,.di-page .di-audience-panel,.di-page .di-check-item,.di-page .di-step,.di-page .di-price-details,.di-page .di-safety-card,.di-page .di-outcome-card,.di-page .di-credential{border-width:2px}
  .di-page a:focus-visible,.di-page button:focus-visible{outline-width:4px}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .di-page *, .di-page *::before, .di-page *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

@media(max-width:980px){
  .di-hero{min-height:0;display:flex;flex-direction:column;align-items:stretch;background:#f7faff}
  .di-hero-media{position:relative;display:block;aspect-ratio:16/9;order:2}
  .di-hero-media img{object-position:70% center}
  .di-hero::after{display:none}
  .di-hero-inner{order:1;width:100%;padding:50px 0 42px}
  .di-hero-copy{max-width:760px}
  .di-help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .di-audience-panel,.di-price-shell,.di-safety-grid,.di-final-grid{grid-template-columns:1fr}
  .di-credentials{grid-template-columns:repeat(2,minmax(0,1fr))}
  .di-final-actions{max-width:520px}
}

@media(max-width:720px){
  .di-page main{font-size:1.04rem}
  .di-page .container{width:min(100% - 26px,1180px)}
  .di-accessibility-bar{align-items:flex-start;flex-direction:column;gap:8px;padding:10px 0}
  .di-accessibility-controls{width:100%}
  .di-accessibility-controls button{flex:1;padding:9px 10px}
  .di-hero-inner{padding:38px 0 28px}
  .di-hero h1{font-size:clamp(2.65rem,12.5vw,4.4rem)}
  .di-route-grid{grid-template-columns:1fr}
  .di-hero-call{align-items:flex-start;flex-direction:column;gap:2px}
  .di-section{padding:58px 0}
  .di-help-grid,.di-check-grid,.di-steps,.di-outcome-grid,.di-credentials{grid-template-columns:1fr}
  .di-help-card{min-height:0}
  .di-audience-panel{padding:24px 20px;border-radius:24px}
  .di-audience-actions .btn{width:100%;justify-content:center}
  .di-step{min-height:0;padding:23px}
  .di-price-card,.di-price-details{border-radius:24px}
  .di-signpost{grid-template-columns:1fr}
  .di-accessibility-card,.di-coverage{grid-template-columns:1fr}
  .di-accessibility-demo{justify-content:flex-start}
  .di-coverage-call{text-align:left}
  .di-mini-list{columns:1}
  .di-final{padding:58px 0 82px}
  .di-trust-inner{justify-content:flex-start;gap:10px 18px}
}

/* Final high-contrast enforcement against the shared service template's !important text rules. */
html.di-high-contrast body.di-page main,
html.di-high-contrast body.di-page main section{background:#000!important;color:#fff!important}
html.di-high-contrast body.di-page main p,
html.di-high-contrast body.di-page main li,
html.di-high-contrast body.di-page main span,
html.di-high-contrast body.di-page main strong:not(.di-price-main strong){color:#fff!important}
html.di-high-contrast body.di-page main .di-eyebrow,
html.di-high-contrast body.di-page main .di-hero-kicker{color:#ffd800!important}
html.di-high-contrast body.di-page main .di-hero-kicker::before{background:#ffd800!important;box-shadow:none!important}
html.di-high-contrast body.di-page main .di-check-item::before,
html.di-high-contrast body.di-page main .di-audience-side li::before,
html.di-high-contrast body.di-page main .di-price-details li::before,
html.di-high-contrast body.di-page main .di-safety-list li::before{color:#000!important;background:#ffd800!important}
html.di-high-contrast body.di-page .mobile-contact-bar .mobile-contact-action,
html.di-high-contrast body.di-page .mobile-contact-bar .mobile-contact-whatsapp,
html.di-high-contrast body.di-page .mobile-contact-bar .mobile-contact-quote{background:#000!important;color:#ffd800!important;border:2px solid #ffd800!important;box-shadow:none!important}
html.di-high-contrast body.di-page .mobile-contact-bar .mobile-contact-action span{color:#ffd800!important}

/* High-contrast text enforcement: outranks the shared service template's compound !important selectors. */
html.di-high-contrast body.service-detail-page.di-page main p,
html.di-high-contrast body.service-detail-page.di-page main li,
html.di-high-contrast body.service-detail-page.di-page main span,
html.di-high-contrast body.service-detail-page.di-page main label,
html.di-high-contrast body.service-detail-page.di-page main small,
html.di-high-contrast body.service-detail-page.di-page main strong{color:#fff!important;-webkit-text-fill-color:initial!important}
html.di-high-contrast body.service-detail-page.di-page main .di-eyebrow,
html.di-high-contrast body.service-detail-page.di-page main .di-hero-kicker{color:#ffd800!important;-webkit-text-fill-color:initial!important}
html.di-high-contrast body.service-detail-page.di-page main a:not(.btn){color:#ffd800!important;-webkit-text-fill-color:initial!important}
html.di-high-contrast body.service-detail-page.di-page main .btn,
html.di-high-contrast body.service-detail-page.di-page main .btn strong,
html.di-high-contrast body.service-detail-page.di-page main .btn span{color:#000!important;-webkit-text-fill-color:initial!important}
html.di-high-contrast body.service-detail-page.di-page main .btn-ghost,
html.di-high-contrast body.service-detail-page.di-page main .btn-outline-light,
html.di-high-contrast body.service-detail-page.di-page main .btn-ghost span,
html.di-high-contrast body.service-detail-page.di-page main .btn-outline-light span{color:#ffd800!important;-webkit-text-fill-color:initial!important}

/* Standard-view dark-panel contrast enforcement against shared-template !important rules. */
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-price-card h2,
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-price-card strong{color:#fff!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-price-card p,
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-price-card span{color:#d7e4f7!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-price-card .di-eyebrow{color:#b9d7ff!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-price-reassurance{color:#fff!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-boundary h3{color:#fff!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-boundary p{color:#d3deec!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-final h2{color:#fff!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-final p{color:#d1ddec!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-final .di-eyebrow{color:#b9d7ff!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-final-price{color:#c9d6e8!important;-webkit-text-fill-color:initial!important}
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-price-card .di-price-main span,
html:not(.di-high-contrast) body.service-detail-page.di-page main .di-price-card .di-price-extra span{color:#d7e4f7!important;-webkit-text-fill-color:initial!important}

/* Accessibility-first reading sizes for this page. The shared service template uses compact card copy;
   Digital Inclusion deliberately keeps essential reading text larger and clearer. */
html body.service-detail-page.di-page main p:not(.di-eyebrow):not(.di-hero-kicker){font-size:1.10rem!important;line-height:1.72!important}
html body.service-detail-page.di-page main li{font-size:1.06rem!important;line-height:1.68!important}
html body.service-detail-page.di-page main .di-hero-statement{font-size:clamp(1.30rem,2vw,1.60rem)!important;line-height:1.45!important}
html body.service-detail-page.di-page main .di-hero-lead{font-size:1.12rem!important;line-height:1.74!important}
html body.service-detail-page.di-page main .di-route strong{font-size:1.08rem!important;line-height:1.38!important}
html body.service-detail-page.di-page main .di-route span{font-size:1rem!important;line-height:1.5!important}
html body.service-detail-page.di-page main .di-credential span{font-size:1rem!important;line-height:1.55!important}
html body.service-detail-page.di-page main .di-price-main span,
html body.service-detail-page.di-page main .di-price-extra span{font-size:1rem!important;line-height:1.5!important}
.di-accessibility-controls button{font-size:1rem;min-height:46px}
