/* Dr Khan Tuition theme 1.5.0: ONE stylesheet. Built by site/v2/gen_theme.py from: tokens.css, live-components.css, ck-additions.css, layout-v2.css, ck-v2-extras.css. Edit the sources, then rebuild. */

/* ===== tokens.css ===== */
/* Dr Khan Tuition design tokens, extracted from the LIVE site https://www.drkhantuition.co.uk/
   Source: /_astro/index.DAn9wlpq.css + computed styles (Playwright, 29 Oct 2026).
   The live site hard-codes these hex values per component; only --font-heading/--font-body exist as real variables.
   The variable NAMES below are ours; every VALUE is from the live CSS. */
:root {
  /* Fonts (Google Fonts: Playfair Display 400/700/800, Inter 400/500/600/700) */
  --font-heading: "Playfair Display", Georgia, serif;   /* live variable */
  --font-body: "Inter", system-ui, sans-serif;          /* live variable */

  /* Brand colours */
  --navy: #0b2150;          /* primary: hero, results, why-different bg, headings, nav CTA text, theme-color */
  --navy-deep: #07173a;     /* footer bg, cta-banner gradient, navy button hover */
  --navy-card: #15316b;     /* .wd-card on navy, .gr-cta hover */
  --gold: #c49a3c;          /* primary button bg, stars, icon circles, focus ring, footer headings */
  --gold-light: #d8b45a;    /* button hover, hero badge text, stat values, announce <strong> */
  --gold-dark: #a87b28;     /* eyebrows, method numbers, video credits, cta-banner gradient end */
  --gold-ink: #7a5a1b;      /* .sub-tag text */
  --gold-rgb: 196, 152, 45; /* rgba() tints: badge bg .2, borders .3/.35/.5/.7 */

  /* Neutrals */
  --ink: #1a2238;           /* body text, nav links */
  --slate: #54627b;         /* secondary text, sub-headings, FAQ answers */
  --slate-2: #5b6b86;       /* unis eyebrow, captions */
  --bg-soft: #f5f7fa;       /* alt section bg (video, google reviews, subjects, FAQ), chips */
  --bg-soft-2: #f6f8fb;     /* unis + about-dk section bg */
  --line: #e6eaf1;          /* borders/dividers */
  --line-2: #f3f4f6;        /* sticky CTA top border */
  --white: #ffffff;
  --whatsapp: #25d366;      /* sticky WhatsApp icon button only */

  /* Gradients / patterns */
  --gradient-cta: linear-gradient(135deg, #0b2150, #07173a, #a87b28);
  --pattern-stripes: repeating-linear-gradient(-55deg, transparent, transparent 40px, rgba(255,255,255,.03) 40px, rgba(255,255,255,.03) 80px);

  /* Radii */
  --radius-btn: 0.25rem;    /* 4px: primary/outline/nav/navy buttons */
  --radius-faq: 0.5rem;     /* 8px: FAQ items, sub-icon */
  --radius-card: 0.75rem;   /* 12px: testimonial, review, wd, sub, stat, press cards */
  --radius-media: 0.9rem;   /* video frames */
  --radius-lg: 1rem;        /* hero logo card, founder photo, sticky buttons */
  --radius-pill: 2rem;      /* badges, chips, tags, Google CTA */

  /* Shadows */
  --shadow-card: 0 2px 16px #0000000f;
  --shadow-card-sm: 0 1px 8px #0000000a;
  --shadow-faq: 0 1px 6px #0000000a;
  --shadow-featured: 0 8px 28px #c4982d38;
  --shadow-media: 0 10px 30px #0b21502e;
  --shadow-photo: 0 18px 40px #0b21502e;
  --shadow-logo-card: 0 20px 50px #00000040;
  --shadow-float: 0 2px 8px #00000026;

  /* Layout */
  --container: 1200px;      /* nav, hero, video, testimonials, why-different, method, subjects, footer */
  --container-md: 1100px;   /* cam-offer, results, google reviews, press, about */
  --container-sm: 800px;    /* how-it-works, cta-banner */
  --container-xs: 760px;    /* FAQ */
  --gutter: 1.5rem;         /* section side padding 24px */
  --section-y: 5rem;        /* 80px top/bottom on almost every section */
  --nav-h: 4rem;            /* 64px */
}

/* ===== live-components.css ===== */
/* Unscoped copy of the LIVE stylesheet https://www.drkhantuition.co.uk/_astro/index.DAn9wlpq.css (fetched 29 Oct 2026).
   Only change: Astro scope attributes [data-astro-cid-*] removed so the real class names work in static wireframes. Do not edit; values are the source of truth. */
/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-heading:"Playfair Display", Georgia, serif;--font-body:"Inter", system-ui, sans-serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.flex{display:flex}.flex-shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-body);color:#1a2238;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}h1,h2,h3,h4{font-family:var(--font-heading)}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:2px;border-radius:2px;outline:3px solid #c49a3c}img{max-width:100%;height:auto}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}.logo{display:inline-flex;align-items:center;gap:.6rem;line-height:1;text-decoration:none}.logo-mark{height:var(--mark-h);width:auto;flex-shrink:0}.logo-word{display:flex;flex-direction:column;align-items:flex-start;gap:.18em}.logo-name{font-family:Playfair Display,Georgia,serif;font-weight:700;font-size:calc(var(--mark-h) * .46);letter-spacing:.12em;text-transform:uppercase;color:var(--word)}.logo-tuition{display:flex;align-items:center;gap:.4em;font-family:Playfair Display,Georgia,serif;font-weight:400;font-size:calc(var(--mark-h) * .24);letter-spacing:.34em;text-transform:uppercase;color:var(--rule);padding-left:.18em}.logo-rule{display:inline-block;width:1.1em;height:1.5px;background:var(--rule)}.nav-toggle-input{display:none}.nav-announce{background:#0b2150;color:#fff;text-align:center;font-size:.8125rem;line-height:1.4;padding:.5rem 1rem}.nav-announce strong{color:#d8b45a;font-weight:600}.nav-sticky{position:sticky;top:0;z-index:50;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#fffffff2;border-bottom:1px solid rgba(26,46,96,.08)}.nav-inner{max-width:1200px;margin:0 auto;padding:0 1.5rem;height:4rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.nav-logo{display:flex;flex-direction:column;line-height:1.1;text-decoration:none;flex-shrink:0}.nav-logo-name{font-family:Playfair Display,Georgia,serif;font-weight:700;font-size:1.125rem;color:#0b2150;letter-spacing:-.01em}.nav-logo-sub{font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:#c49a3c}.nav-links{display:none;list-style:none;margin:0;padding:0;gap:2rem;align-items:center}@media(min-width:768px){.nav-links{display:flex}}.nav-link{font-size:.875rem;font-weight:500;color:#1a2238;text-decoration:none;transition:color .2s}.nav-link:hover{color:#0b2150}.nav-cta{display:none;background:#c49a3c;color:#0b2150;font-size:.875rem;font-weight:600;padding:.5rem 1.25rem;border-radius:.25rem;text-decoration:none;white-space:nowrap;transition:background .2s}.nav-cta:hover{background:#d8b45a}@media(min-width:768px){.nav-cta{display:inline-block}}.nav-hamburger{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:.25rem}@media(min-width:768px){.nav-hamburger{display:none}}.nav-hamburger-bar{display:block;width:22px;height:2px;background:#0b2150;border-radius:2px;transition:transform .25s,opacity .25s}.nav-toggle-input:checked~.nav-inner .nav-hamburger .nav-hamburger-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle-input:checked~.nav-inner .nav-hamburger .nav-hamburger-bar:nth-child(2){opacity:0}.nav-toggle-input:checked~.nav-inner .nav-hamburger .nav-hamburger-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-mobile-menu{display:none;overflow:hidden;background:#fff;border-top:1px solid rgba(26,46,96,.08)}.nav-toggle-input:checked~.nav-mobile-menu{display:block}.nav-mobile-menu ul{list-style:none;margin:0;padding:0}.nav-mobile-link{display:block;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;color:#1a2238;text-decoration:none;border-bottom:1px solid rgba(26,46,96,.06)}.nav-mobile-link:hover{background:#f5f7fa}.nav-mobile-cta{display:block;margin:1rem 1.5rem;background:#c49a3c;color:#0b2150;font-size:.9375rem;font-weight:600;padding:.75rem 1.5rem;border-radius:.25rem;text-decoration:none;text-align:center}.hero{position:relative;background-color:#0b2150;overflow:hidden;padding:5rem 1.5rem 4rem}.hero-stripes{position:absolute;inset:0;background-image:repeating-linear-gradient(-55deg,transparent,transparent 40px,rgba(255,255,255,.03) 40px,rgba(255,255,255,.03) 80px);pointer-events:none}.hero-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}@media(min-width:1024px){.hero-inner{grid-template-columns:1fr 380px}}.hero-badge{display:inline-block;background:#c4982d33;border:1px solid rgba(196,152,45,.5);color:#d8b45a;font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.375rem .875rem;border-radius:2rem;margin-bottom:1.5rem}.hero-heading{font-family:Playfair Display,Georgia,serif;font-weight:700;font-size:clamp(2.25rem,5vw,3.5rem);line-height:1.1;color:#fff;margin:0 0 1.25rem;letter-spacing:-.02em}.hero-lead{font-size:1.0625rem;line-height:1.7;color:#fffc;margin:0 0 2rem;max-width:520px}.hero-ctas{display:flex;flex-wrap:wrap;gap:.875rem;margin-bottom:2.5rem}.btn-primary{display:inline-block;background:#c49a3c;color:#0b2150;font-size:.9375rem;font-weight:600;padding:.8125rem 1.75rem;border-radius:.25rem;text-decoration:none;transition:background .2s;text-align:center}.btn-primary:hover{background:#d8b45a}.btn-outline{display:inline-block;background:transparent;border:2px solid rgba(255,255,255,.6);color:#fff;font-size:.9375rem;font-weight:600;padding:.75rem 1.75rem;border-radius:.25rem;text-decoration:none;transition:border-color .2s,background .2s;white-space:nowrap}.btn-outline:hover{border-color:#fff;background:#ffffff14}.hero-trust{display:flex;align-items:center;flex-wrap:wrap;gap:0}.hero-trust-item{display:flex;flex-direction:column;padding:0 1.25rem 0 0}.hero-trust-item:first-child{padding-left:0}.hero-trust-value{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;font-weight:700;color:#c49a3c;line-height:1}.hero-trust-label{font-size:.75rem;color:#ffffffa6;margin-top:.2rem;white-space:nowrap}.hero-trust-divider{width:1px;height:2.25rem;background:#fff3;margin-right:1.25rem;flex-shrink:0}.hero-logo-card{display:none;background:#fff;border-radius:1rem;padding:2.5rem 2rem 2rem;box-shadow:0 20px 50px #00000040;text-align:center}@media(min-width:1024px){.hero-logo-card{display:block}}.hero-logo{width:100%;max-width:300px;height:auto;margin:0 auto}.hero-logo-tag{margin-top:1rem;font-size:.8125rem;font-weight:600;letter-spacing:.02em;color:#0b2150;border-top:1px solid #E6EAF1;padding-top:1rem}.unis{background:#f6f8fb;border-bottom:1px solid #E6EAF1;padding:2.5rem 0 2.75rem}.unis-eyebrow{text-align:center;font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#5b6b86;margin:0 0 2rem;padding:0 1.5rem}.unis-marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.unis-track{display:flex;align-items:flex-end;gap:3.25rem;width:max-content;animation:uni-scroll 36s linear infinite}.uni{display:flex;flex-direction:column;align-items:center;gap:.6rem;flex-shrink:0}.uni-logo{height:66px;width:auto;filter:drop-shadow(0 1px 2px rgba(11,33,80,.12))}.uni-name{font-size:.75rem;font-weight:600;letter-spacing:.02em;color:#54627b;white-space:nowrap}@keyframes uni-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.unis-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto;gap:1.75rem 3rem;padding:0 1.5rem}.uni[aria-hidden=true]{display:none}}.results{background:#0b2150;padding:5rem 1.5rem;position:relative;overflow:hidden}.results:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(-55deg,transparent,transparent 40px,rgba(255,255,255,.03) 40px,rgba(255,255,255,.03) 80px);pointer-events:none}.results-inner{position:relative;max-width:1100px;margin:0 auto}.results-header{text-align:center;margin-bottom:3rem}.results-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#fff;margin:0 0 .75rem}.results-sub{font-size:1.0625rem;color:#ffffffb8;margin:0}.results-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-bottom:2.5rem}@media(min-width:720px){.results-grid{grid-template-columns:repeat(3,1fr)}}.stat{background:#ffffff0d;border:1px solid rgba(196,152,45,.35);border-radius:.75rem;padding:2rem 1.5rem;text-align:center;display:flex;flex-direction:column;gap:.5rem}.stat-value{font-family:Playfair Display,Georgia,serif;font-size:clamp(2.5rem,5vw,3.25rem);font-weight:700;color:#d8b45a;line-height:1}.stat-label{font-size:.9375rem;color:#ffffffd9;line-height:1.4}.results-uni{border-top:1px solid rgba(255,255,255,.14);padding-top:2.25rem}.results-uni-title{text-align:center;font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff9;margin:0 0 1.5rem}.uni-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem 1.25rem}@media(min-width:720px){.uni-stats{grid-template-columns:repeat(3,1fr) 1.6fr;align-items:center}}.uni-stat{text-align:center;display:flex;flex-direction:column;gap:.25rem}.uni-stat-wide{grid-column:1 / -1}@media(min-width:720px){.uni-stat-wide{grid-column:auto;text-align:left;border-left:1px solid rgba(255,255,255,.14);padding-left:1.25rem}}.uni-stat-value{font-family:Playfair Display,Georgia,serif;font-size:1.875rem;font-weight:700;color:#fff;line-height:1}.uni-stat-label{font-size:.875rem;color:#ffffffbf;line-height:1.35}.video-testimonials{background:#f5f7fa;padding:5rem 1.5rem}.vt-inner{max-width:1200px;margin:0 auto}.vt-header{text-align:center;margin-bottom:3rem}.vt-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0 0 .75rem}.vt-sub{font-size:1.0625rem;color:#54627b;margin:0;max-width:620px;margin-inline:auto}.vt-row{display:grid;grid-auto-flow:column;grid-auto-columns:76%;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1rem;-webkit-overflow-scrolling:touch}.vt-card{margin:0;scroll-snap-align:center;display:flex;flex-direction:column;gap:.875rem}.vt-video-wrap{position:relative;aspect-ratio:9 / 16;border-radius:.9rem;overflow:hidden;background:#0b2150;box-shadow:0 10px 30px #0b21502e}.vt-video{width:100%;height:100%;object-fit:cover;display:block}.vt-cap{display:flex;flex-direction:column;gap:.15rem;text-align:center;padding:0 .25rem}.vt-name{font-family:Playfair Display,Georgia,serif;font-size:1.0625rem;font-weight:700;color:#0b2150}.vt-cred{font-size:.8125rem;font-weight:600;color:#a87b28;line-height:1.35}@media(min-width:900px){.vt-row{grid-auto-flow:row;grid-template-columns:repeat(4,1fr);grid-auto-columns:auto;overflow:visible;gap:1.5rem;padding-bottom:0}}.cam-offer{background:#fff;padding:5rem 1.5rem;border-top:1px solid #E6EAF1}.cam-offer-inner{max-width:1100px;margin:0 auto}.cam-offer-header{text-align:center;max-width:720px;margin:0 auto 2.75rem}.cam-offer-eyebrow{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#a87b28;margin:0 0 .75rem}.cam-offer-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0 0 1rem;line-height:1.15}.cam-offer-lead{font-size:1.0625rem;line-height:1.7;color:#54627b;margin:0 0 1.25rem}.cam-offer-points{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.25rem}.cam-offer-points li{position:relative;padding-left:1.1rem;font-size:.9375rem;line-height:1.45;color:#1a2238;font-weight:600}.cam-offer-points li:before{content:"";position:absolute;left:0;top:.5em;width:.45rem;height:.45rem;border-radius:50%;background:#c49a3c}.cam-offer-media{display:grid;grid-template-columns:1fr;gap:1.75rem;align-items:start;max-width:820px;margin:0 auto}@media(min-width:768px){.cam-offer-media{grid-template-columns:minmax(240px,320px) minmax(260px,1fr);gap:2rem;max-width:900px;align-items:center}}.cam-offer-video-fig,.cam-offer-letter-fig{margin:0}.cam-offer-video-wrap{position:relative;aspect-ratio:9 / 16;border-radius:.9rem;overflow:hidden;background:#0b2150;box-shadow:0 14px 36px #0b21502e}.cam-offer-video{width:100%;height:100%;object-fit:cover;display:block}.cam-offer-link{display:block;border-radius:.75rem;overflow:hidden;box-shadow:0 16px 40px #0b215029;border:1px solid #E6EAF1;transition:transform .2s ease,box-shadow .2s ease;background:#fff}.cam-offer-link:hover{transform:translateY(-2px);box-shadow:0 20px 48px #0b215033}.cam-offer-img{width:100%;height:auto;display:block;background:#fff}.cam-offer-cap{margin-top:.75rem;display:flex;flex-direction:column;gap:.15rem;text-align:center;font-size:.8125rem;color:#5b6b86}.cam-offer-cap-name{font-family:Playfair Display,Georgia,serif;font-size:1.0625rem;font-weight:700;color:#0b2150}.cam-offer-cap-cred{font-size:.8125rem;font-weight:600;color:#a87b28;line-height:1.35}.cam-offer-cap-note{font-size:.75rem;color:#5b6b86}.social-proof{background:#fff;padding:5rem 1.5rem}.sp-inner{max-width:1200px;margin:0 auto}.sp-header{text-align:center;margin-bottom:3rem}.sp-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0 0 .75rem}.sp-sub{font-size:1.0625rem;color:#54627b;margin:0}.sp-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:640px){.sp-grid{grid-template-columns:1fr 1fr}}@media(min-width:1024px){.sp-grid{grid-template-columns:repeat(4,1fr)}}.sp-card{background:#fff;border-radius:.75rem;padding:1.75rem 1.5rem;box-shadow:0 2px 16px #0000000f;display:flex;flex-direction:column;gap:1rem;position:relative}.sp-card-featured{border:2px solid #C49A3C;box-shadow:0 8px 28px #c4982d38}.sp-badge{position:absolute;top:-.75rem;left:1.25rem;background:#c49a3c;color:#0b2150;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:.3rem .7rem;border-radius:2rem;white-space:nowrap}.sp-stars{color:#c49a3c;font-size:1.125rem;letter-spacing:.05em}.sp-quote{margin:0;padding:0;border:none;flex:1}.sp-quote p{font-style:italic;font-size:.9375rem;line-height:1.65;color:#1a2238;margin:0}.sp-footer{display:flex;flex-direction:column;gap:.2rem;border-top:1px solid #F5F7FA;padding-top:1rem}.sp-name{font-size:.875rem;font-weight:600;color:#0b2150}.sp-subject{font-size:.8125rem;color:#54627b}.google-reviews{background:#f5f7fa;padding:5rem 1.5rem}.gr-inner{max-width:1100px;margin:0 auto;text-align:center}.gr-header{margin-bottom:3rem}.gr-badge{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;background:#fff;border-radius:50%;box-shadow:0 2px 12px #00000014;margin-bottom:1rem}.gr-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0 0 .75rem}.gr-rating{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.gr-stars{color:#c49a3c;font-size:1.25rem;letter-spacing:.05em}.gr-score{font-weight:700;color:#0b2150;font-size:1.125rem}.gr-count{color:#54627b;font-size:.9375rem}.gr-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;text-align:left;margin-bottom:2.5rem}@media(min-width:768px){.gr-grid{grid-template-columns:repeat(3,1fr)}}.gr-card{background:#fff;border-radius:.75rem;padding:1.75rem 1.5rem;box-shadow:0 2px 16px #0000000f;display:flex;flex-direction:column;gap:.875rem}.gr-card-stars{color:#c49a3c;font-size:1rem;letter-spacing:.05em}.gr-quote{margin:0;padding:0;border:none;flex:1}.gr-quote p{font-style:italic;font-size:.9375rem;line-height:1.65;color:#1a2238;margin:0}.gr-name{font-size:.875rem;font-weight:600;color:#0b2150;border-top:1px solid #F5F7FA;padding-top:.875rem}.gr-cta{display:inline-block;background:#0b2150;color:#fff;font-weight:600;font-size:.9375rem;padding:.875rem 1.75rem;border-radius:2rem;text-decoration:none;transition:background .2s ease}.gr-cta:hover{background:#15316b}.press{background:#fff;padding:5rem 1.5rem}.press-inner{max-width:1100px;margin:0 auto}.press-header{text-align:center;margin-bottom:3rem}.press-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0 0 .75rem}.press-sub{font-size:1.0625rem;color:#54627b;margin:0}.press-carousel{position:relative}.press-track{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding-bottom:.25rem;scrollbar-width:none}.press-track::-webkit-scrollbar{display:none}.press-card{scroll-snap-align:start;flex:0 0 80%;display:flex;flex-direction:column;background:#f5f7fa;border-radius:.75rem;overflow:hidden;box-shadow:0 2px 16px #0000000f}@media(min-width:640px){.press-card{flex-basis:46%}}@media(min-width:960px){.press-card{flex-basis:31%}}.press-clip-wrap{width:100%;height:240px;overflow:hidden;border-bottom:1px solid rgba(11,33,80,.08)}.press-clip{width:100%;height:100%;object-fit:cover;object-position:top;display:block}.press-body{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.press-outlet{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#c49a3c}.press-headline{font-family:Playfair Display,Georgia,serif;font-size:1.1875rem;font-weight:700;color:#0b2150;margin:0;line-height:1.3}.press-excerpt{font-size:.9375rem;color:#54627b;line-height:1.55;margin:0}.press-link{display:inline-block;font-size:.875rem;font-weight:600;color:#0b2150;margin-top:.25rem;text-decoration:none}.press-link:hover{text-decoration:underline}.press-arrow{position:absolute;top:120px;transform:translateY(-50%);width:2.25rem;height:2.25rem;border-radius:50%;border:none;background:#fff;color:#0b2150;box-shadow:0 2px 10px #00000026;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem}.press-arrow:hover{background:#0b2150;color:#fff}.press-arrow-prev{left:-1.125rem}.press-arrow-next{right:-1.125rem}@media(max-width:540px){.press-arrow{display:none}}.press-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1.25rem}.press-dot{width:.5rem;height:.5rem;border-radius:50%;border:none;background:#0b215033;padding:0;cursor:pointer;transition:background .2s ease,transform .2s ease}.press-dot.is-active{background:#c49a3c;transform:scale(1.3)}.why-different{background:#0b2150;padding:5rem 1.5rem}.wd-inner{max-width:1200px;margin:0 auto}.wd-header{text-align:center;margin-bottom:3rem}.wd-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#fff;margin:0}.wd-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:640px){.wd-grid{grid-template-columns:1fr 1fr}}.wd-card{background:#15316b;border-radius:.75rem;padding:2rem 1.75rem;display:flex;flex-direction:column;gap:1rem}.wd-icon-wrap{width:3rem;height:3rem;background:#c49a3c;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.wd-card-title{font-family:Playfair Display,Georgia,serif;font-size:1.125rem;font-weight:700;color:#fff;margin:0;line-height:1.3}.wd-card-desc{font-size:.9375rem;line-height:1.65;color:#ffffffbf;margin:0}.about-dk{background:#f6f8fb;padding:5rem 1.5rem}.about-dk-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center}@media(min-width:900px){.about-dk-inner{grid-template-columns:minmax(260px,380px) 1fr;gap:3.5rem}}.about-dk-photo-wrap{position:relative;border-radius:1rem;overflow:hidden;box-shadow:0 18px 40px #0b21502e;background:#0b2150;aspect-ratio:3 / 4;max-width:420px;margin:0 auto}@media(min-width:900px){.about-dk-photo-wrap{margin:0;max-width:none}}.about-dk-photo-wrap:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #c49a3c59;pointer-events:none}.about-dk-photo{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block}.about-dk-eyebrow{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#a87b28;margin:0 0 .75rem}.about-dk-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.875rem,3.5vw,2.75rem);font-weight:700;color:#0b2150;margin:0 0 1rem;line-height:1.15}.about-dk-lead{font-size:1.0625rem;line-height:1.7;color:#54627b;margin:0 0 1.75rem;max-width:36rem}.about-dk-subhead{font-family:Playfair Display,Georgia,serif;font-size:1.125rem;font-weight:700;color:#0b2150;margin:0 0 .625rem}.about-dk-list{list-style:none;margin:0 0 1.5rem;padding:0;display:grid;gap:.5rem}.about-dk-list li{position:relative;padding-left:1.25rem;font-size:.9875rem;line-height:1.55;color:#1a2238}.about-dk-list li:before{content:"";position:absolute;left:0;top:.55em;width:.5rem;height:.5rem;border-radius:50%;background:#c49a3c}.about-dk-note{font-size:.9375rem;line-height:1.65;color:#54627b;margin:.25rem 0 0;padding-top:1.25rem;border-top:1px solid #E6EAF1;max-width:36rem}.method{background:#fff;padding:5rem 1.5rem}.method-inner{max-width:1200px;margin:0 auto}.method-header{text-align:center;margin-bottom:3.5rem}.method-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0 0 .75rem}.method-sub{font-size:1.0625rem;color:#54627b;margin:0}.method-steps{display:flex;flex-direction:column;gap:0;align-items:stretch}@media(min-width:768px){.method-steps{flex-direction:row;align-items:flex-start}}.method-step{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1.25rem}.method-step-number{font-family:Playfair Display,Georgia,serif;font-size:3rem;font-weight:700;color:#a87b28;line-height:1;margin-bottom:.75rem;opacity:.9}.method-step-title{font-family:Playfair Display,Georgia,serif;font-size:1.25rem;font-weight:700;color:#0b2150;margin:0 0 .625rem}.method-step-desc{font-size:.9375rem;line-height:1.65;color:#54627b;margin:0;max-width:220px}.method-arrow{position:absolute;display:flex;align-items:center;justify-content:center}@media(max-width:767px){.method-arrow{position:static;margin:0 auto;transform:none}.arrow-h{display:none}.arrow-v{display:block}}@media(min-width:768px){.method-arrow{top:50%;right:-1rem;transform:translateY(-50%);z-index:1}.arrow-h{display:block}.arrow-v{display:none}}.subjects{background:#f5f7fa;padding:5rem 1.5rem}.sub-inner{max-width:1200px;margin:0 auto}.sub-header{text-align:center;margin-bottom:3rem}.sub-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0 0 .75rem}.sub-sub{font-size:1.0625rem;color:#54627b;margin:0}.sub-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:640px){.sub-grid{grid-template-columns:1fr 1fr}}.sub-card{background:#fff;border-radius:.75rem;padding:1.75rem 1.5rem;border-left:4px solid #0B2150;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 1px 8px #0000000a}.sub-card-top{display:flex;align-items:center;gap:1rem}.sub-icon{width:3rem;height:3rem;background:#f5f7fa;border-radius:.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#0b2150}.sub-card-level{font-family:Playfair Display,Georgia,serif;font-size:1.125rem;font-weight:700;color:#0b2150;margin:0 0 .2rem;line-height:1.2}.sub-card-years{font-size:.8125rem;color:#54627b;font-weight:500}.sub-subjects-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.sub-subjects-list li{font-size:.875rem;color:#1a2238;background:#f5f7fa;padding:.25rem .75rem;border-radius:2rem}.sub-tag{display:inline-block;background:#c4982d1f;color:#7a5a1b;font-size:.75rem;font-weight:600;letter-spacing:.04em;padding:.3rem .75rem;border-radius:2rem;border:1px solid rgba(196,152,45,.3);align-self:flex-start}.how-it-works{background:#fff;padding:5rem 1.5rem}.hiw-inner{max-width:800px;margin:0 auto}.hiw-header{text-align:center;margin-bottom:3rem}.hiw-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0 0 .75rem}.hiw-sub{font-size:1.0625rem;color:#54627b;margin:0}.hiw-steps{display:flex;flex-direction:column;gap:0;margin-bottom:3rem;position:relative}.hiw-steps:before{content:"";position:absolute;left:1.625rem;top:3rem;bottom:3rem;width:2px;background:linear-gradient(to bottom,#c49a3c,#c4982d33)}.hiw-step{display:flex;align-items:flex-start;gap:1.5rem;padding:1.75rem 0;position:relative}.hiw-step-num{width:3.25rem;height:3.25rem;background:#0b2150;color:#fff;font-family:Playfair Display,Georgia,serif;font-size:1.125rem;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;border:3px solid #fff;box-shadow:0 0 0 2px #c49a3c}.hiw-step-content{padding-top:.5rem}.hiw-step-title{font-family:Playfair Display,Georgia,serif;font-size:1.125rem;font-weight:700;color:#0b2150;margin:0 0 .5rem;line-height:1.3}.hiw-step-desc{font-size:.9375rem;line-height:1.65;color:#54627b;margin:0}.hiw-ctas{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.hiw-btn-primary{display:inline-block;background:#0b2150;color:#fff;font-size:.9375rem;font-weight:600;padding:.8125rem 1.75rem;border-radius:.25rem;text-decoration:none;transition:background .2s;white-space:nowrap}.hiw-btn-primary:hover{background:#07173a}.hiw-btn-outline{display:inline-block;background:transparent;border:2px solid #0B2150;color:#0b2150;font-size:.9375rem;font-weight:600;padding:.75rem 1.75rem;border-radius:.25rem;text-decoration:none;transition:background .2s,color .2s;white-space:nowrap}.hiw-btn-outline:hover{background:#0b2150;color:#fff}.cta-banner{background:linear-gradient(135deg,#0b2150,#07173a,#a87b28);padding:5rem 1.5rem;position:relative;overflow:hidden}.cta-banner:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 60px,rgba(255,255,255,.02) 60px,rgba(255,255,255,.02) 120px);pointer-events:none}.ctab-inner{position:relative;z-index:1;max-width:800px;margin:0 auto;text-align:center}.ctab-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.875rem,4vw,3rem);font-weight:700;color:#fff;margin:0 0 1rem;letter-spacing:-.02em;line-height:1.15}.ctab-sub{font-size:1.125rem;color:#fffc;margin:0 0 2.5rem}.ctab-ctas{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1.25rem}.ctab-btn-primary{display:inline-block;background:#fff;color:#0b2150;font-size:1rem;font-weight:700;padding:.875rem 2rem;border-radius:.25rem;text-decoration:none;transition:background .2s,color .2s;white-space:nowrap}.ctab-btn-primary:hover{background:#f5f7fa}.ctab-btn-outline{display:inline-block;background:transparent;border:2px solid rgba(196,152,45,.7);color:#d8b45a;font-size:1rem;font-weight:700;padding:.8125rem 2rem;border-radius:.25rem;text-decoration:none;transition:border-color .2s,background .2s,color .2s;white-space:nowrap}.ctab-btn-outline:hover{border-color:#c49a3c;background:#c4982d1a;color:#c49a3c}.ctab-note{font-size:.875rem;color:#ffffff8c;margin:0}.ctab-details{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem 2.5rem;margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.15)}.ctab-detail{display:flex;flex-direction:column;gap:.2rem;text-decoration:none;text-align:center}.ctab-detail-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#ffffff8c}.ctab-detail-value{font-size:.9375rem;font-weight:600;color:#fff}.ctab-detail:hover .ctab-detail-value{color:#d8b45a}.faq{background:#f5f7fa;padding:5rem 1.5rem}.faq-inner{max-width:760px;margin:0 auto}.faq-header{text-align:center;margin-bottom:2.5rem}.faq-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:#0b2150;margin:0}.faq-list{display:flex;flex-direction:column;gap:.75rem}.faq-item{background:#fff;border-radius:.5rem;box-shadow:0 1px 6px #0000000a;overflow:hidden}.faq-question{display:flex;align-items:center;justify-content:flex-start;padding:1.25rem 1.5rem;font-size:1rem;font-weight:600;color:#0b2150;cursor:pointer;list-style:none;user-select:none;gap:1rem}.faq-question::-webkit-details-marker{display:none}.faq-question:before{content:"▶";color:#c49a3c;font-size:.625rem;flex-shrink:0;transition:transform .2s;margin-right:.5rem;order:-1}details[open] .faq-question:before{content:"▼"}.faq-answer{padding:0 1.5rem 1.25rem 2.75rem}.faq-answer p{font-size:.9375rem;line-height:1.7;color:#54627b;margin:0}.footer{background:#07173a;color:#fff;padding:4rem 1.5rem 0}.footer-inner{max-width:1200px;margin:0 auto}.footer-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;padding-bottom:3rem}@media(min-width:640px){.footer-grid{grid-template-columns:1fr 1fr}}@media(min-width:1024px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}.footer-logo{display:flex;flex-direction:column;text-decoration:none;line-height:1.1;margin-bottom:1rem;width:fit-content}.footer-logo-name{font-family:Playfair Display,Georgia,serif;font-weight:700;font-size:1.25rem;color:#fff}.footer-logo-sub{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:#c49a3c}.footer-tagline{font-size:.9375rem;line-height:1.65;color:#ffffffb8;margin:0;max-width:280px}.footer-col-heading{font-family:Playfair Display,Georgia,serif;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#c49a3c;margin:0 0 1.25rem}.footer-col-links ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem}.footer-col-links a{font-size:.9375rem;color:#ffffffa6;text-decoration:none;transition:color .2s}.footer-col-links a:hover{color:#fff}.footer-contact-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.footer-contact-list li{display:flex;flex-direction:column;gap:.2rem}.footer-contact-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:#ffffff9e;font-weight:600}.footer-contact-list a,.footer-contact-list address{font-size:.9375rem;color:#ffffffbf;text-decoration:none;font-style:normal;transition:color .2s}.footer-contact-list a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:1.5rem 0;text-align:center}.footer-bottom p{font-size:.8125rem;color:#fff9;margin:0}.sticky-cta{position:fixed;bottom:0;left:0;right:0;z-index:50;background:#fffffff2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid #f3f4f6;box-shadow:0 -4px 20px #0000000f;padding:.75rem 1rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom));display:flex;align-items:center;gap:.5rem}@media(min-width:768px){.sticky-cta{display:none}}.sticky-icon-btn{flex-shrink:0;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;border-radius:1rem;box-shadow:0 2px 8px #00000026;text-decoration:none;transition:opacity .15s}.sticky-icon-btn:active{opacity:.85}.sticky-icon-btn--call{background:#0b2150;color:#fff}.sticky-icon-btn--wa{background:#25d366;color:#fff}.sticky-book-btn{flex:1;display:flex;align-items:center;justify-content:center;background:#c49a3c;color:#0b2150;font-size:.875rem;font-weight:700;padding:.75rem 1rem;border-radius:1rem;text-decoration:none;box-shadow:0 2px 8px #00000026;white-space:nowrap;transition:opacity .15s}.sticky-book-btn:active{opacity:.85}

/* ===== ck-additions.css ===== */
/* CK additions: only new bits that are not on the live landing page. Values from Danny's tokens.css. */
.ck-404 .hero-inner{grid-template-columns:1fr}
.ck-404{min-height:60vh}
/* Prose sections for inner pages (founder text style, single 800px column, alternating white / #f5f7fa) */
.ck-prose{background:#fff;padding:4.5rem 1.5rem}
.ck-prose.ck-alt{background:#f5f7fa}
.ck-prose .ck-prose-inner,.ck-prose .about-dk-inner{grid-template-columns:1fr;max-width:800px;gap:0}
.ck-prose .about-dk-heading{font-size:clamp(1.75rem,3.5vw,2.5rem)}
.ck-prose .about-dk-lead{max-width:none;margin:0 0 1.1rem}
.ck-prose .about-dk-list{margin:.25rem 0 1.5rem}
.ck-prose .about-dk-list li{font-size:1rem;line-height:1.6}
.ck-prose .ck-h3{margin-top:1.75rem}
.ck-prose a,.faq-answer a,.ck-sources a,.hiw-step-desc a{color:#0b2150;text-decoration:underline;text-decoration-color:#c49a3c;text-underline-offset:2px}
.ck-prose .ck-quote{margin:1.5rem 0}
.ck-gr-single{grid-template-columns:1fr!important;max-width:680px;margin-left:auto;margin-right:auto}
.ck-reviews{padding:3.5rem 1.5rem}
.ck-sources{font-size:.8125rem;line-height:1.6;color:#54627b;margin:2rem 0 0}
.ck-keydates-note .hiw-sub{margin:1.75rem 0 0;font-size:.9375rem;line-height:1.65}
.method-header .method-sub+.method-sub{margin-top:.75rem}
@media(min-width:720px){.ck-results-grid{grid-template-columns:repeat(2,1fr);max-width:760px;margin-left:auto;margin-right:auto}}
/* University crest strip (homepage + inner pages): centred from the first frame, seamless loop.
   5 identical .unis-set groups in a centred row; each moves by exactly its own width (translateX(-100%)), so
   the loop distance is one set (no jump). Same crests, sizes, 36s per set and colours as live. */
.unis-marquee{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 clamp(2rem,8%,7.5rem),#000 calc(100% - clamp(2rem,8%,7.5rem)),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 clamp(2rem,8%,7.5rem),#000 calc(100% - clamp(2rem,8%,7.5rem)),transparent 100%)}
.unis-track.ck-unis{display:flex;justify-content:center;align-items:flex-end;gap:0;width:auto;padding:0;animation:none}
.ck-unis .unis-set{display:flex;align-items:flex-end;flex:0 0 auto;animation:ck-uni-set 36s linear infinite;will-change:transform}
.ck-unis .uni{padding:0 1.625rem}
@keyframes ck-uni-set{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){
.unis-marquee{-webkit-mask-image:none;mask-image:none}
.unis-track.ck-unis{flex-wrap:wrap;padding:0 1rem}
.ck-unis .unis-set{animation:none;flex:1 1 100%;flex-wrap:wrap;justify-content:center;row-gap:1.75rem}
.ck-unis .unis-set[aria-hidden]{display:none}
.ck-unis .uni{padding:0 1.25rem}
}

/* ---- Table component (design/components/table.md) ---- */
.ck-table-wrap{margin:1.5rem 0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;border-radius:var(--radius-card);border:1px solid var(--line);box-shadow:var(--shadow-card-sm);background:var(--white)}
.ck-table-wrap:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.ck-table{width:100%;min-width:0;border-collapse:collapse;font-size:.9375rem;line-height:1.55;color:var(--ink)}
.ck-table thead th{background:var(--navy);color:var(--white);font-family:var(--font-body);font-weight:600;font-size:.8125rem;letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:.875rem 1.125rem;border-bottom:3px solid var(--gold);white-space:nowrap}
.ck-table tbody td,.ck-table tbody th{padding:.875rem 1.125rem;border-top:1px solid var(--line);vertical-align:top;text-align:left}
.ck-table tbody tr:first-child td,.ck-table tbody tr:first-child th{border-top:0}
.ck-table tbody tr:nth-child(even) td,.ck-table tbody tr:nth-child(even) th{background:var(--bg-soft-2)}
.ck-table tbody th[scope=row],.ck-table tbody td:first-child{font-weight:600;color:var(--navy);min-width:11rem}
.ck-table a{color:var(--navy);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
.ck-table a:hover{color:var(--gold-dark)}
@media (max-width:639px){.ck-table{font-size:.875rem}.ck-table thead th,.ck-table tbody td,.ck-table tbody th{padding:.75rem .875rem}}

/* Only 3+ column tables keep a 520px minimum (they scroll sideways on phones); 2-column tables wrap to fit. */
.ck-table--wide,.ck-table:has(thead th:nth-child(3)){min-width:520px}
.ck-table:not(.ck-table--wide):not(:has(thead th:nth-child(3))) thead th{white-space:normal}
@media (max-width:639px){.ck-table:not(.ck-table--wide):not(:has(thead th:nth-child(3))) tbody th[scope=row]{min-width:0;width:38%}}
/* Right-edge scroll hint: a 24px fade while there is more table to the right; none when nothing overflows.
   Modern browsers: scroll-driven animation (inactive, so no fade, when the box can't scroll). Others: ck-tables.js toggles classes. */
@keyframes ck-table-hint{from{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent)}99%{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent)}to{-webkit-mask-image:none;mask-image:none}}
@supports (animation-timeline:scroll()){.ck-table-wrap{animation:ck-table-hint linear both;animation-timeline:scroll(self inline)}}
@supports not (animation-timeline:scroll()){.ck-table-wrap.ck-can-scroll:not(.ck-at-end){-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent)}}

/* Grid/flex items default to min-width:auto, so a 520px table would stretch its column past the screen.
   min-width:0 keeps the column at the viewport width and the table scrolls inside its own box. */
.ck-prose-inner>*,*:has(>.ck-table-wrap){min-width:0}

/* ---- Visible breadcrumbs (match BreadcrumbList) ---- */
.ck-breadcrumb{background:var(--bg-soft);border-bottom:1px solid var(--line)}
.ck-bc-list{max-width:var(--container);margin:0 auto;padding:.75rem var(--gutter);list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;font-size:.8125rem;color:var(--slate)}
.ck-bc-item{display:inline-flex;align-items:center;gap:.5rem}
.ck-bc-item+.ck-bc-item::before{content:"";width:.375rem;height:.375rem;border-top:1.5px solid var(--gold);border-right:1.5px solid var(--gold);transform:rotate(45deg);margin-right:.125rem}
.ck-bc-item a{color:var(--navy);text-decoration:none;font-weight:500}
.ck-bc-item a:hover{color:var(--gold-dark);text-decoration:underline;text-underline-offset:3px}
.ck-bc-item [aria-current]{color:var(--slate)}

/* ---- Nav: Subjects dropdown (desktop), sub-links (mobile) ---- */
.ck-nav-dd{position:relative}
.ck-dd{position:absolute;top:100%;left:-1.5rem;padding-top:1.1rem;visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;z-index:60}
.ck-nav-dd:hover .ck-dd,.ck-nav-dd:focus-within .ck-dd{visibility:visible;opacity:1}
.ck-dd-inner{display:flex;gap:2rem;background:var(--white);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:0 0 var(--radius-card) var(--radius-card);box-shadow:var(--shadow-card);padding:1.25rem 1.5rem}
.ck-dd-group ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.ck-dd-label{font-family:var(--font-heading);font-weight:700;color:var(--gold-ink);font-size:.8125rem;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .625rem}
.ck-dd a{font-size:.875rem;color:var(--ink);text-decoration:none;white-space:nowrap}
.ck-dd a:hover,.ck-dd a[aria-current]{color:var(--gold-dark)}
.nav-mobile-menu{max-height:calc(100vh - 4rem);overflow-y:auto}
.ck-mobile-sub{background:var(--bg-soft-2)}
.nav-mobile-link.ck-mobile-sublink{padding:.625rem 1.5rem .625rem 2.5rem;font-size:.9375rem;color:var(--slate)}

/* ---- Footer: Tuition column ---- */
@media (min-width:1024px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}}

/* ---- Subject cards: links to built pages ---- */
.sub-card-level a.ck-sub-link{color:inherit;text-decoration:none;background-image:linear-gradient(var(--gold),var(--gold));background-size:0 2px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .2s}
.sub-card-level a.ck-sub-link:hover{background-size:100% 2px}
.sub-subjects-list a.ck-chip-link{color:inherit;text-decoration:none;border-bottom:1px solid rgba(var(--gold-rgb),.6)}
.sub-subjects-list a.ck-chip-link:hover{color:var(--gold-dark)}

/* ---- Template C: area cards sub-heading ---- */
.ck-wd .wd-header .ck-wd-sub{max-width:44rem;margin:.75rem auto 0;color:var(--slate);font-size:1rem;line-height:1.7;text-align:center}
.ck-table--nohead tbody tr:first-child th,.ck-table--nohead tbody tr:first-child td{border-top:0}

/* 1.4.0 Design round: photo slots, How lessons feel band, shared founder/review partials (staging). */
.ck-hero-photo{padding:0;overflow:hidden;position:relative;aspect-ratio:4 / 5;width:100%;max-width:380px;justify-self:end}
.ck-hero-photo .ck-slot-img{width:100%;height:100%;object-fit:cover;display:block}
.ck-slot-frame{position:relative;border-radius:1rem;overflow:hidden;box-shadow:0 18px 40px #0b21502e;background:#0b2150;aspect-ratio:4 / 3;max-width:420px;margin:0 auto}
.ck-slot-frame .ck-slot-img{width:100%;height:100%;object-fit:cover;display:block}
@media (min-width:768px){.ck-slot-frame{margin:0;max-width:none;aspect-ratio:3 / 4}}
.ck-slot-tag{position:absolute;left:.75rem;bottom:.75rem;right:.75rem;background:#fff3cd;color:#5c4400;border:1px dashed #a87b28;border-radius:.5rem;font:600 .75rem/1.3 Inter,system-ui,sans-serif;padding:.4rem .6rem;text-align:left}
.ck-lessons{background:#fff}
.ck-lessons .about-dk-lead{margin-bottom:1.25rem}
@media (min-width:768px){.ck-lessons .about-dk-inner{grid-template-columns:1fr minmax(260px,380px)}.ck-lessons .about-dk-media{order:2}}
.ck-student-quote{padding-top:0}
/* 1.4.1 Stock tutoring photos (Danny, Pexels; illustrative only): <picture> slots, 4:5 on mobile, stacked pair on desktop. */
.ck-pic{display:block;width:100%;height:100%}
.ck-slot-frame{aspect-ratio:4 / 5}
.ck-slot-frame--second{display:none}
@media (min-width:768px){.ck-slot-stack--pair{display:grid}.ck-slot-stack--pair .ck-slot-frame{aspect-ratio:3 / 2}.ck-slot-stack--pair .ck-slot-frame--second{display:block;width:82%;justify-self:end;margin-top:-2.5rem;border:6px solid #fff;z-index:1}}

/* ===== layout-v2.css ===== */
/* Layout v2 (GCSE Maths prototype). Refined by Danny (Creative Majesty), 29 Oct 2026.
   Fonts and colours: tokens.css (live values). Header/footer: live-components.css snapshot.
   System: one spacing scale, three radii, two card shadows, one type scale. Spec: design/layout-v2/layout-v2-spec.md */
:root{
 /* spacing scale (4px base) */
 --s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;
 --v2-section-y:var(--s-9);--v2-head-gap:var(--s-7);--v2-grid-gap:var(--s-5);--v2-two-gap:5rem;
 /* radii: small items / cards / panels + photos */
 --v2-r-sm:.75rem;--v2-r-md:1.25rem;--v2-r-lg:1.75rem;
 /* shadows */
 --v2-shadow-sm:0 2px 14px rgba(11,33,80,.06);--v2-shadow:0 10px 30px rgba(11,33,80,.08);
 /* card padding */
 --v2-pad:1.75rem;--v2-pad-sm:1.25rem;
 /* surfaces */
 --v2-tile:#eef1f7;--v2-eyebrow:var(--gold-ink);
 /* legacy aliases (kept for ck-additions / older markup) */
 --v2-radius:var(--v2-r-md);--v2-radius-sm:var(--v2-r-sm);--v2-gold-tint:#f8f1e1;--v2-gold-tint-2:#fbf7ee
}
html,body{margin:0;padding:0}
body.v2{display:block;padding:0;gap:0;background:#fff;font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}
.v2 *,.v2 *::before,.v2 *::after{box-sizing:border-box}
.v2 img{max-width:100%;display:block}
.v2 main a{color:var(--navy)}
.v2 main a:focus-visible,.v2 summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.v2-wrap{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
.v2-section{padding:var(--v2-section-y) 0;position:relative}
.v2-soft{background:var(--bg-soft)}
/* ---------- Type scale ---------- */
.v2-eyebrow,.v2-label{display:inline-flex;align-items:center;gap:var(--s-2);font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--v2-eyebrow);margin:0 0 var(--s-3);line-height:1.4}
.v2-eyebrow::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(196,154,60,.18);flex:none}
.v2-h1{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:clamp(2.5rem,5vw,4rem);line-height:1.08;letter-spacing:-.02em;margin:0 0 var(--s-5)}
.v2-h2{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:clamp(1.875rem,3.4vw,2.75rem);line-height:1.15;letter-spacing:-.015em;margin:0 0 var(--s-4)}
.v2-h3,.v2-card h2,.v2-visit h3,.v2-founder-name{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:1.375rem;line-height:1.3;margin:0 0 var(--s-3)}
.v2-step h3,.v2-mini-item h3,.v2-start-item h3{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:1.125rem;line-height:1.35;margin:0 0 var(--s-2)}
.v2-hl{color:var(--gold-dark)}
.v2-h2,.v2-h1{position:relative;z-index:0}
.v2-sub,.v2-lead{color:var(--slate);font-size:1.0625rem;line-height:1.65;max-width:40rem;margin:0}
.v2-center{text-align:center}.v2-center .v2-sub{margin:0 auto}
.v2-head{margin-bottom:var(--v2-head-gap)}
.v2-head--tight{margin-bottom:0}
.v2 p{margin:0 0 var(--s-4)}
.v2 main p:last-child{margin-bottom:0}
.v2-two p,.v2-local p{color:var(--slate);font-size:1rem}
.v2-two .v2-eyebrow,.v2-local .v2-eyebrow{color:var(--v2-eyebrow);font-size:.8125rem}
/* ---------- Buttons (48px tall, pill) ---------- */
.v2-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:3rem;font-weight:600;font-size:.9375rem;padding:.8125rem 1.6rem;border-radius:999px;text-decoration:none;transition:background .2s,border-color .2s,color .2s;line-height:1.2;text-align:center}
.v2 main .v2-btn-gold{background:var(--gold);color:var(--navy)}.v2 main .v2-btn-gold:hover{background:var(--gold-light)}
.v2 main .v2-btn-line{border:1.5px solid rgba(11,33,80,.25);color:var(--navy);background:#fff}.v2 main .v2-btn-line:hover{border-color:var(--navy)}
.v2 main .v2-btn-white{background:#fff;color:var(--navy)}
.v2 main .v2-btn-ghost{border:1.5px solid rgba(255,255,255,.55);color:#fff}.v2 main .v2-btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.v2-ctas{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-bottom:var(--s-7)}
/* ---------- Breadcrumb ---------- */
.v2-bc{font-size:.8125rem;color:var(--slate);margin:0 0 var(--s-5)}
.v2-bc ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--s-2)}
.v2-bc li{display:flex;align-items:center}
.v2-bc li+li::before{content:"/";margin-right:var(--s-2);color:#8d97aa}
.v2 main .v2-bc a{color:var(--slate);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.v2 main .v2-bc a[aria-current]{color:var(--navy);font-weight:600}
/* ---------- Hero ---------- */
.v2-hero{position:relative;padding:var(--s-6) 0 var(--s-9);background:linear-gradient(180deg,#fbfcfe 0%,#fff 100%);overflow:hidden}
.v2-hero::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 46px,rgba(11,33,80,.025) 46px 47px);pointer-events:none}
.v2-hero-grid{position:relative;display:grid;gap:var(--s-7);align-items:center}
.v2-badge{display:inline-flex;align-items:center;gap:var(--s-2);background:var(--v2-gold-tint);color:var(--gold-ink);font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.4rem .9rem;border-radius:999px;margin-bottom:var(--s-5)}
.v2-lead{max-width:36rem;margin:0 0 var(--s-6)}
.v2-stats{display:flex;gap:0;max-width:34rem}
.v2-stat{flex:1;padding:0 var(--s-5);border-left:1px solid var(--line)}
.v2-stat:first-child{padding-left:0;border-left:0}
.v2-stat-v{font-family:var(--font-heading);font-weight:700;font-size:1.875rem;color:var(--navy);line-height:1.1;display:flex;align-items:center;gap:.35rem}
.v2-stat-v .star{color:var(--gold-dark);font-size:1.25rem}
.v2-stat-l{font-size:.8125rem;color:var(--slate);margin-top:.35rem;line-height:1.35}
.v2-hero-media{position:relative;max-width:480px;width:100%;margin:0 auto}
.v2-hero-photo{position:relative;z-index:2;border-radius:var(--v2-r-lg);overflow:hidden;box-shadow:var(--shadow-photo);aspect-ratio:4/5}
.v2-hero-photo picture,.v2-photo picture,.v2-faq-photo picture,.v2-cta-photo picture{display:block;width:100%;height:100%}
.v2-hero-photo img{width:100%;height:100%;object-fit:cover}
.v2-blob{position:absolute;z-index:1;border-radius:50%}
.v2-blob-a{width:72%;aspect-ratio:1;right:-14%;top:-8%;background:radial-gradient(circle at 30% 30%,rgba(196,154,60,.26),rgba(196,154,60,.06) 70%)}
.v2-blob-b{width:46%;aspect-ratio:1;left:-12%;bottom:-6%;background:radial-gradient(circle at 60% 40%,rgba(11,33,80,.12),rgba(11,33,80,.03) 70%)}
.v2-dots{position:absolute;z-index:1;width:120px;height:120px;left:-40px;top:18%;background-image:radial-gradient(rgba(11,33,80,.25) 1.6px,transparent 1.8px);background-size:16px 16px}
.v2-ring{display:none}
.v2-chip{position:absolute;z-index:4;left:-28px;bottom:10%;background:#fff;border-radius:var(--v2-r-sm);box-shadow:var(--v2-shadow);padding:var(--s-3) var(--s-4);display:flex;align-items:center;gap:var(--s-3);font-size:.875rem;color:var(--navy);font-weight:600;max-width:15rem;line-height:1.3}
.v2-chip-ic{flex:none;width:2.5rem;height:2.5rem;border-radius:var(--v2-r-sm);background:var(--navy);color:var(--gold-light);display:grid;place-items:center}
.v2-chip-ic svg{width:1.25rem;height:1.25rem}
.v2-chip small{display:block;font-weight:500;color:var(--slate);font-size:.75rem}
/* ---------- Crest strip ---------- */
.v2-unis{padding:var(--s-6) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.v2-unis p{text-align:center;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--slate-2);margin:0 0 var(--s-5)}
.v2-unis ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s-4) var(--s-6)}
.v2-unis li{display:flex;align-items:center;gap:var(--s-2);font-size:.875rem;font-weight:600;color:var(--navy)}
.v2-unis img{height:30px;width:auto;filter:grayscale(1);opacity:.75}
/* ---------- Icon tile (navy on tint; white on soft sections) ---------- */
.v2-ic{width:3rem;height:3rem;border-radius:var(--v2-r-sm);background:var(--v2-tile);color:var(--navy);display:grid;place-items:center;flex:none}
.v2-ic svg{width:1.5rem;height:1.5rem}
.v2-soft .v2-mini .v2-ic{background:#fff;box-shadow:var(--v2-shadow-sm)}
/* ---------- Card (one style everywhere) ---------- */
.v2-step,.v2-card,.v2-subj,.v2-review,.v2-start-item{background:#fff;border:1px solid var(--line);border-radius:var(--v2-r-md);box-shadow:var(--v2-shadow-sm)}
/* How it works (method steps) */
.v2-steps{display:grid;gap:var(--v2-grid-gap)}
.v2-step{padding:var(--v2-pad);position:relative;transition:transform .2s,box-shadow .2s}
.v2-step:hover{transform:translateY(-3px);box-shadow:var(--v2-shadow)}
.v2-step .v2-ic{margin-bottom:var(--s-5)}
.v2-step-n{position:absolute;top:var(--v2-pad);right:var(--v2-pad);font-family:var(--font-heading);font-weight:700;font-size:1rem;line-height:1;color:var(--slate-2)}
.v2-step p{font-size:.9375rem;color:var(--slate);margin:0;line-height:1.6}
/* Two-column band */
.v2-two{display:grid;gap:var(--s-7);align-items:center}
.v2-mini{display:grid;gap:var(--s-5);margin:var(--s-6) 0}
.v2-mini-item{display:flex;gap:var(--s-4);align-items:flex-start}
.v2-mini-item p{font-size:.9375rem;margin:0}
.v2-photo-frame{position:relative;max-width:540px;margin:0 auto;width:100%}
.v2-photo-frame::before{content:"";position:absolute;inset:var(--s-6) calc(-1*var(--s-4)) calc(-1*var(--s-4)) var(--s-6);border-radius:var(--v2-r-lg);background:linear-gradient(135deg,rgba(196,154,60,.22),rgba(11,33,80,.12));z-index:0}
.v2-photo-frame--left::before{inset:var(--s-6) var(--s-6) calc(-1*var(--s-4)) calc(-1*var(--s-4))}
.v2-photo{position:relative;z-index:1;border-radius:var(--v2-r-lg);overflow:hidden;box-shadow:var(--shadow-photo);aspect-ratio:3/2}
.v2-photo img{width:100%;height:100%;object-fit:cover}
/* Content-area chips + tier rows */
.v2-areas{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3);margin:var(--s-5) 0}
.v2-area{display:flex;align-items:center;gap:var(--s-3);background:#fff;border:1px solid var(--line);border-radius:var(--v2-r-sm);padding:var(--s-3) var(--s-4);font-weight:600;color:var(--navy);font-size:.9375rem;line-height:1.3}
.v2-area .v2-ic{width:2.5rem;height:2.5rem}
.v2-area .v2-ic svg{width:1.25rem;height:1.25rem}
.v2-tiers{display:grid;gap:var(--s-3);margin-top:var(--s-5)}
.v2-tier{display:flex;gap:var(--s-4);align-items:baseline;background:var(--bg-soft);border-radius:var(--v2-r-sm);padding:var(--s-4) var(--s-5);border-left:4px solid var(--navy)}
.v2-tier strong{color:var(--navy);font-size:.9375rem;min-width:11rem}
.v2-tier span{color:var(--slate);font-size:.9375rem}
/* Topic cards (going further) */
.v2-cards3{display:grid;gap:var(--v2-grid-gap)}
.v2-card{padding:var(--v2-pad)}
.v2-card .v2-ic{margin-bottom:var(--s-5)}
.v2-card p{font-size:.9375rem;color:var(--slate);margin:0}
/* Subject cards */
.v2-subjects{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-4)}
.v2 main .v2-subj{display:flex;flex-direction:column;gap:var(--s-4);padding:var(--v2-pad-sm);text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;min-height:44px}
.v2-subj:hover{transform:translateY(-3px);box-shadow:var(--v2-shadow)}
.v2-subj .v2-ic{width:2.75rem;height:2.75rem}
.v2-subj strong{display:block;color:var(--navy);font-size:1rem;line-height:1.3}
.v2-subj span{display:block;font-size:.8125rem;color:var(--slate);margin-top:.2rem}
/* Founder card (no stock photo beside it) */
.v2-founder{display:grid;gap:0;background:#fff;border-radius:var(--v2-r-lg);overflow:hidden;box-shadow:var(--v2-shadow);border:1px solid var(--line)}
.v2-founder-photo{background:linear-gradient(160deg,var(--v2-tile),#f5f7fa);display:flex;align-items:flex-end;justify-content:center}
.v2-founder-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;aspect-ratio:523/700}
.v2-founder-body{padding:var(--s-7) var(--s-6)}
.v2-founder-name{font-size:2rem;margin:0 0 var(--s-1)}
.v2-founder-lead{color:var(--slate);margin:0 0 var(--s-6)}
.v2-founder-cols{display:grid;gap:var(--s-5)}
.v2-founder .v2-label{margin-bottom:var(--s-3);font-family:var(--font-body)}
.v2-ticks{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-2)}
.v2-ticks li{position:relative;padding-left:1.75rem;color:var(--ink);font-size:.9375rem;line-height:1.45}
.v2-ticks li::before{content:"";position:absolute;left:0;top:.15rem;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--v2-tile) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b2150' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/62% no-repeat}
.v2-founder-intro{display:grid;gap:var(--s-4);align-items:end;margin-bottom:var(--s-7)}
.v2-founder-intro .v2-h2{margin-bottom:0}
/* Review cards (no photo beside them) */
.v2-rating{display:inline-flex;align-items:center;gap:var(--s-3);background:#fff;border:1px solid var(--line);border-radius:999px;padding:var(--s-2) var(--s-4) var(--s-2) var(--s-2);margin-top:var(--s-5)}
.v2-rating .g{width:2.25rem;height:2.25rem;border-radius:50%;background:var(--bg-soft);display:grid;place-items:center}
.v2 .stars{color:var(--gold-dark)}
.v2-rating .stars{letter-spacing:2px;font-size:1rem}
.v2-rating b{color:var(--navy)}
.v2-rating span{font-size:.875rem;color:var(--slate)}
.v2-reviews{display:grid;gap:var(--v2-grid-gap);margin-top:var(--v2-head-gap)}
.v2-review{position:relative;display:flex;flex-direction:column;overflow:hidden}
.v2-review-top{padding:var(--v2-pad) var(--v2-pad) var(--s-5);flex:1;position:relative}
.v2-review-top::after{content:"\201C";position:absolute;right:var(--s-5);top:var(--s-1);font-family:var(--font-heading);font-size:5rem;line-height:1;color:rgba(11,33,80,.07)}
.v2-review .stars{letter-spacing:3px;font-size:1.05rem;margin-bottom:var(--s-3);display:block}
.v2-review blockquote{margin:0;color:var(--ink);font-size:1rem;line-height:1.6}
.v2-review blockquote p{margin:0}
.v2-review-foot{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--v2-pad);background:var(--bg-soft);border-top:1px solid var(--line)}
.v2-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:700;font-family:var(--font-heading)}
.v2-review-foot strong{color:var(--navy);font-size:.9375rem;display:block}
.v2-review-foot small{color:var(--slate);font-size:.75rem}
.v2-more{text-align:center;margin-top:var(--s-6)}
/* Local section + centre panel */
.v2-local{display:grid;gap:var(--s-7);align-items:start}
.v2-visit{background:var(--navy);color:#fff;border-radius:var(--v2-r-md);padding:var(--v2-pad);box-shadow:var(--shadow-media)}
.v2-visit h3{color:#fff;margin-bottom:var(--s-5)}
.v2-visit ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-4)}
.v2-visit li{display:flex;gap:var(--s-3);align-items:flex-start}
.v2-visit .v2-ic{background:rgba(196,154,60,.18);color:var(--gold-light);width:2.5rem;height:2.5rem}
.v2-visit .v2-ic svg{width:1.2rem;height:1.2rem}
.v2-visit small{display:block;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.72);font-weight:600}
.v2 main .v2-visit a,.v2-visit address{color:#fff;font-style:normal;text-decoration:none;font-weight:600}
.v2 main .v2-visit a{display:inline-block;padding:.75rem 0;margin:-.75rem 0}
/* Getting started */
.v2-start{display:grid;gap:var(--v2-grid-gap)}
.v2-start-item{display:flex;gap:var(--s-4);padding:var(--s-5)}
.v2-start-n{flex:none;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:700;font-family:var(--font-heading)}
.v2-start-item p{font-size:.9375rem;color:var(--slate);margin:0}
/* FAQ */
.v2-faq{display:grid;gap:var(--s-7);align-items:start}
.v2-faq-photo{border-radius:var(--v2-r-lg);overflow:hidden;box-shadow:var(--shadow-photo);margin-top:var(--s-6);aspect-ratio:3/2}
.v2-faq-photo img{width:100%;height:100%;object-fit:cover}
.v2-faq-list{display:grid;gap:var(--s-3)}
.v2-faq-item{background:#fff;border-radius:var(--v2-r-sm);box-shadow:var(--v2-shadow-sm);border:1px solid var(--line)}
.v2-faq-item summary{list-style:none;cursor:pointer;padding:var(--s-4) 3.5rem var(--s-4) var(--s-5);min-height:3.5rem;display:flex;align-items:center;font-weight:600;color:var(--navy);position:relative;font-size:1rem;line-height:1.4}
.v2-faq-item summary::-webkit-details-marker{display:none}
.v2-faq-item summary::after{content:"+";position:absolute;right:var(--s-4);top:50%;transform:translateY(-50%);width:1.75rem;height:1.75rem;border-radius:50%;background:var(--v2-tile);color:var(--navy);display:grid;place-items:center;font-size:1.15rem;font-weight:600;line-height:1}
.v2-faq-item[open] summary::after{content:"\2212";background:var(--navy);color:#fff}
.v2-faq-item .a{padding:0 var(--s-5) var(--s-5);color:var(--slate);font-size:.9375rem}
.v2-faq-item .a p{margin:0}
.v2-src{font-size:.75rem;color:var(--slate-2);margin-top:var(--s-4)}
/* Booking band (gradient) */
.v2-cta{position:relative;border-radius:var(--v2-r-lg);overflow:hidden;background:var(--gradient-cta);color:#fff;display:grid;align-items:stretch}
.v2-cta::before{content:"";position:absolute;inset:0;background:var(--pattern-stripes);pointer-events:none}
.v2-cta-body{position:relative;padding:var(--s-7) var(--s-6);z-index:1}
.v2-cta h2{font-family:var(--font-heading);font-weight:700;font-size:clamp(1.875rem,3.4vw,2.75rem);line-height:1.15;margin:0 0 var(--s-4);color:#fff}
.v2-cta-sub{color:rgba(255,255,255,.86);margin:0 0 var(--s-6);max-width:34rem}
.v2-cta .v2-ctas{margin-bottom:var(--s-4)}
.v2 main .v2-cta-note{font-size:.8125rem;color:rgba(255,255,255,.75);margin:0 0 var(--s-6)}
.v2-cta-details{display:flex;flex-wrap:wrap;gap:var(--s-4) var(--s-6);padding-top:var(--s-5);border-top:1px solid rgba(255,255,255,.14)}
.v2 main .v2-cta-details a{text-decoration:none;color:#fff;display:block;min-height:44px}
.v2-cta-details small{display:block;font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-light);font-weight:600}
.v2-cta-details span{font-weight:600;font-size:.9375rem}
.v2-cta-media{position:relative;min-height:320px;z-index:1;display:flex;align-items:flex-end;justify-content:center;padding:0 var(--s-6)}
.v2-cta-arch{position:absolute;left:8%;right:8%;bottom:0;top:12%;border-radius:999px 999px 0 0;background:rgba(216,180,90,.2)}
.v2-cta-photo{position:relative;width:min(340px,86%);border-radius:var(--v2-r-lg) var(--v2-r-lg) 0 0;overflow:hidden;aspect-ratio:4/5;box-shadow:0 -10px 40px rgba(0,0,0,.25)}
.v2-cta-photo img{width:100%;height:100%;object-fit:cover}
/* Footer: live chrome; v2 only adds 44px tap rows on phones (see spec) */
.v2 .footer{margin-top:0}
/* ---------- Responsive ---------- */
@media(min-width:640px){.v2-steps{grid-template-columns:1fr 1fr}.v2-subjects{grid-template-columns:repeat(3,1fr)}.v2-founder-cols{grid-template-columns:1fr 1fr}}
@media(min-width:900px){
 .v2-hero{padding:var(--s-7) 0 var(--s-9)}
 .v2-hero-grid{grid-template-columns:1.1fr .9fr;gap:var(--s-8)}
 .v2-two{grid-template-columns:1fr 1fr;gap:var(--v2-two-gap)}
 .v2-two--flip .v2-photo-frame{order:-1}
 .v2-photo{aspect-ratio:4/5}
 .v2-cards3{grid-template-columns:1fr 1fr}
 .v2-cards3 .v2-card:nth-child(2){grid-column:1;grid-row:1 / span 2}
 .v2-cards3 .v2-card:nth-child(1){grid-column:2;grid-row:1}
 .v2-cards3 .v2-card:nth-child(3){grid-column:2;grid-row:2}
 .v2-founder{grid-template-columns:minmax(300px,400px) 1fr}
 .v2-founder-body{padding:var(--s-7) var(--s-7)}
 .v2-founder-intro{grid-template-columns:1.2fr 1fr;gap:var(--s-7)}
 .v2-reviews{grid-template-columns:repeat(3,1fr)}
 .v2-local{grid-template-columns:1.5fr 1fr;gap:var(--s-8)}
 .v2-start{grid-template-columns:repeat(3,1fr)}
 .v2-faq{grid-template-columns:.85fr 1.15fr;gap:var(--s-8)}
 .v2-cta{grid-template-columns:1.25fr 1fr}
 .v2-cta-body{padding:var(--s-8) var(--s-7)}
 .v2-cta-media{min-height:0;padding-top:var(--s-7)}
}
@media(min-width:1024px){.v2-steps{grid-template-columns:repeat(4,1fr)}.v2-subjects{grid-template-columns:repeat(6,1fr)}}
@media(max-width:899px){
 :root{--v2-section-y:var(--s-8);--v2-head-gap:var(--s-6);--v2-pad:1.5rem}
 .v2-hero{padding:var(--s-2) 0 var(--s-8)}
 .v2-chip{left:-6px}
 .v2-dots{left:-18px}
 .v2-hero-media{max-width:360px}
 .v2-photo-frame::before{inset:var(--s-5) calc(-1*var(--s-3)) calc(-1*var(--s-3)) var(--s-5)}
 .v2-photo-frame--left::before{inset:var(--s-5) var(--s-5) calc(-1*var(--s-3)) calc(-1*var(--s-3))}
 .v2-photo-frame{max-width:calc(100% - .75rem);margin-left:0}
 .v2-photo-frame--left{margin-left:.75rem}
 .v2-faq-photo{display:none}
 .v2-cta-media{min-height:0;padding-top:var(--s-2)}
 .v2-cta-photo{width:min(280px,80%)}
 /* live footer: 44px tap rows on phones */
 .v2 .footer-col-links ul{gap:0}
 .v2 .footer-col-links a,.v2 .footer-contact-list a{display:flex;align-items:center;min-height:44px}
 .v2 .footer-contact-list{gap:var(--s-2)}
 .v2 .nav-logo,.v2 .footer-logo{min-height:44px;justify-content:center}
}
@media(max-width:520px){
 .v2-stats{flex-wrap:nowrap}
 .v2-stat{padding:0 var(--s-3)}
 .v2-stat-v{font-size:1.5rem}
 .v2-areas{gap:var(--s-2)}
 .v2-area{padding:var(--s-3);font-size:.875rem;gap:var(--s-2)}
 .v2-area .v2-ic{width:2.25rem;height:2.25rem}
 .v2-tier{flex-direction:column;gap:var(--s-1)}
 .v2-tier strong{min-width:0}
 .v2-ctas .v2-btn{width:100%}
 .v2-unis ul{gap:var(--s-3) var(--s-5)}
 .v2-unis img{height:24px}
 .v2-founder-body{padding:var(--s-6) var(--s-5)}
 .v2-cta-body{padding:var(--s-7) var(--s-5) var(--s-5)}
}
/* ---------- Prose band (guide + local pages): text column, optional .ck-table (approved, theme 1.2.3) ---------- */
.v2-prose{max-width:48rem}
.v2-prose.v2-center{margin:0 auto}
.v2-prose p,.v2-prose li{color:var(--slate);font-size:1rem}
.v2-prose h3{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:1.375rem;line-height:1.3;margin:var(--s-6) 0 var(--s-3)}
.v2-prose ul{padding-left:1.25rem;margin:0 0 var(--s-4)}
.v2-prose .ck-table-wrap{margin:var(--s-5) 0}
.v2-prose > *,.v2-local > *{min-width:0}
/* ---------- S17 Area cards (hub /areas/): subject-card styling, more text ---------- */
.v2-areacards{display:grid;gap:var(--v2-grid-gap)}
.v2-areacard{display:flex;flex-direction:column;gap:var(--s-3);background:#fff;border:1px solid var(--line);border-radius:var(--v2-r-md);box-shadow:var(--v2-shadow-sm);padding:var(--v2-pad);transition:transform .2s,box-shadow .2s}
.v2-areacard:has(.v2-areacard-title a):hover{transform:translateY(-3px);box-shadow:var(--v2-shadow)}
.v2-areacard .v2-ic{margin-bottom:var(--s-1)}
.v2-areacard-title{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:1.125rem;line-height:1.35;margin:0}
.v2 main .v2-areacard-title a{color:var(--navy);text-decoration:none;display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px}
.v2 main .v2-areacard-title a::after{content:"\2192";color:var(--gold-dark);font-family:var(--font-body)}
.v2 main .v2-areacard-title a:hover{text-decoration:underline;text-decoration-color:var(--gold)}
.v2-areacard-title > span{display:inline-flex;align-items:center;min-height:44px}
.v2-areacard-dist{font-size:.9375rem;color:var(--ink);margin:0}
.v2-areacard-note{font-size:.875rem;color:var(--slate);margin:0}
.v2-areacard-guide{margin-top:auto;padding-top:var(--s-3);border-top:1px solid var(--line);font-size:.875rem;color:var(--slate)}
.v2-areacard-guide small{display:block;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--v2-eyebrow);font-weight:600}
.v2 main .v2-areacard-guide a{color:var(--navy);font-weight:600;display:inline-flex;align-items:center;min-height:44px}
.v2-areacard-guide span{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--navy)}
/* hero trust line (text-only rating, no star graphics: hub brief) */
.v2-trust{font-size:.9375rem;color:var(--slate);margin:0}
.v2 main .v2-trust a{color:var(--navy);font-weight:600;display:inline-flex;align-items:center;min-height:44px}
@media(min-width:640px){.v2-areacards{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.v2-areacards{grid-template-columns:repeat(4,1fr)}}
.v2 main .v2-areacard p{margin:0}
.v2 main .v2-areacard .v2-areacard-guide{margin-top:auto}
div.v2-subj:hover{transform:none;box-shadow:var(--v2-shadow-sm)}
/* ==========================================================================
   Round 3 (Danny, 29 Oct 2026): #23 /resources/ and #24 /free-trial/ variants.
   Built from existing tokens, radii and shadows only. Two functional additions,
   needed for accessible forms: --v2-field-line (input border, 3.2:1 on white, WCAG 1.4.11)
   and --v2-error (#b42318, 6.6:1 on white). See layout-v2-spec.md S18-S20.
   ========================================================================== */
:root{--v2-field-line:#868fa3;--v2-error:#b42318}
/* ---------- S18 Resource cards ---------- */
.v2-rescards{display:grid;gap:var(--v2-grid-gap)}
.v2-rescard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--v2-r-md);box-shadow:var(--v2-shadow-sm);overflow:hidden}
.v2-rescard-thumb{aspect-ratio:3/2;background:var(--bg-soft);border-bottom:1px solid var(--line)}
.v2-rescard-thumb img{width:100%;height:100%;object-fit:cover}
.v2-rescard-body{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--v2-pad);flex:1}
.v2-rescard-tag{align-self:flex-start;display:inline-flex;align-items:center;background:var(--v2-tile);color:var(--navy);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.3rem .7rem;border-radius:999px}
.v2-rescard-title{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:1.125rem;line-height:1.35;margin:0}
.v2 main .v2-rescard p{margin:0;font-size:.9375rem;color:var(--slate)}
.v2 main .v2-rescard .v2-rescard-meta{font-size:.8125rem;color:var(--slate-2)}
.v2-rescard-action{margin-top:auto;padding-top:var(--s-2)}
.v2-rescard-action .v2-btn{width:100%}
.v2 main .v2-textlink{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;font-weight:600;color:var(--navy);text-decoration:none}
.v2 main .v2-textlink::after{content:"\2192";color:var(--gold-dark)}
.v2 main .v2-textlink:hover{text-decoration:underline;text-decoration-color:var(--gold)}
@media(min-width:640px){.v2-rescards{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.v2-rescards{grid-template-columns:repeat(3,1fr)}}
/* Jump chips (anchor links to category bands; same look as .v2-area chips; no JS filtering) */
.v2-jump{list-style:none;margin:var(--s-5) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s-3)}
.v2-center .v2-jump{justify-content:center}
.v2 main .v2-jump a{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;background:#fff;border:1px solid var(--line);border-radius:var(--v2-r-sm);padding:var(--s-2) var(--s-4);font-weight:600;font-size:.9375rem;color:var(--navy);text-decoration:none}
.v2 main .v2-jump a:hover{border-color:var(--navy)}
/* ---------- S19 Form block ---------- */
.v2-form{background:#fff;border:1px solid var(--line);border-radius:var(--v2-r-md);box-shadow:var(--v2-shadow);padding:var(--s-6)}
.v2-form-title{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:1.375rem;line-height:1.3;margin:0 0 var(--s-2)}
.v2 main .v2-form-intro{font-size:.9375rem;color:var(--slate);margin:0 0 var(--s-5)}
.v2-form-key{font-size:.8125rem;color:var(--slate);margin:0 0 var(--s-5)}
.v2-fields{display:grid;gap:var(--s-5)}
.v2-field{display:flex;flex-direction:column;gap:var(--s-2);min-width:0}
.v2-flabel{font-size:.9375rem;font-weight:600;color:var(--navy);line-height:1.35}
.v2-req{color:var(--v2-error);font-weight:700;margin-left:.15rem}
.v2-opt{font-weight:400;color:var(--slate);font-size:.8125rem;margin-left:.35rem}
.v2-input{width:100%;min-height:3rem;font:inherit;font-size:1rem;color:var(--ink);background:#fff;border:1px solid var(--v2-field-line);border-radius:var(--v2-r-sm);padding:.75rem var(--s-4);line-height:1.4;transition:border-color .15s,box-shadow .15s}
.v2-input::placeholder{color:#6b778c}
textarea.v2-input{min-height:7.5rem;resize:vertical}
select.v2-input{appearance:none;-webkit-appearance:none;padding-right:2.75rem;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b2150' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") right 1rem center/1.1rem no-repeat}
.v2-input:hover{border-color:var(--slate)}
.v2-input:focus,.v2-input:focus-visible{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px #fff,0 0 0 5px var(--navy)}
.v2-help{font-size:.8125rem;color:var(--slate);margin:0;line-height:1.45}
.v2-err{display:none;align-items:flex-start;gap:var(--s-2);font-size:.8125rem;font-weight:600;color:var(--v2-error);margin:0;line-height:1.45}
.v2-err::before{content:"!";flex:none;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--v2-error);color:#fff;display:grid;place-items:center;font-size:.75rem;line-height:1}
.v2-field.is-invalid .v2-input{border-color:var(--v2-error);border-width:2px;padding:calc(.75rem - 1px) calc(var(--s-4) - 1px)}
.v2-field.is-invalid .v2-err{display:flex}
.v2-check{display:flex;gap:var(--s-3);align-items:flex-start;cursor:pointer;min-height:44px;padding:var(--s-2) 0;font-size:.875rem;color:var(--ink);line-height:1.5}
.v2-check input{flex:none;width:1.5rem;height:1.5rem;margin:0;accent-color:var(--navy);cursor:pointer}
.v2-check input:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.v2 main .v2-check a{color:var(--navy);font-weight:600}
.v2-form .v2-btn-gold{width:100%;margin-top:var(--s-2);border:0;cursor:pointer;font-family:inherit}
.v2-form .v2-btn-gold:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.v2-form .v2-btn-gold[disabled]{opacity:.7;cursor:progress}
.v2 main .v2-form-small{font-size:.8125rem;color:var(--slate);margin:var(--s-3) 0 0;text-align:center}
.v2-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.v2-form-alert{display:flex;gap:var(--s-3);align-items:flex-start;border-radius:var(--v2-r-sm);padding:var(--s-4) var(--s-5);margin:0 0 var(--s-5);font-size:.9375rem;line-height:1.5}
.v2-form-alert--error{background:#fff;border:2px solid var(--v2-error);color:var(--ink)}
.v2-form-alert--error strong{color:var(--v2-error)}
.v2 main .v2-form-alert a{color:var(--navy);font-weight:600}
.v2-form-ok{text-align:center;padding:var(--s-6) var(--s-4)}
.v2-form-ok .v2-ic{margin:0 auto var(--s-4);width:3.5rem;height:3.5rem;border-radius:50%}
.v2-form-ok h3{font-family:var(--font-heading);font-weight:700;color:var(--navy);font-size:1.375rem;margin:0 0 var(--s-2)}
.v2 main .v2-form-ok p{color:var(--slate);margin:0 auto var(--s-4);max-width:28rem}
@media(min-width:640px){.v2-fields--2{grid-template-columns:1fr 1fr}.v2-field--full{grid-column:1 / -1}}
@media(max-width:520px){.v2-form{padding:var(--s-5)}}
/* ---------- S20 Stat badges outside the hero (reuses .v2-stats) ---------- */
.v2-stats--band{max-width:none;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:var(--v2-r-md);box-shadow:var(--v2-shadow-sm);padding:var(--s-5) var(--s-4)}
.v2-stats--band .v2-stat{text-align:center;flex:1}
.v2-stats--band .v2-stat-v{justify-content:center}
.v2-form-alert-list{list-style:none;margin:var(--s-1) 0 0;padding:0}
.v2 main .v2-form-alert-list a{display:flex;align-items:center;min-height:44px;color:var(--v2-error);text-decoration:underline}

/* ===== ck-v2-extras.css ===== */
/* ---------- Theme 1.5.0 additions to layout v2 (Webby, 30 Oct 2026). Layout-v2 components only, no new design. ---------- */
/* S18: two actions (Download PDF + Read online) */
.v2-rescard-action{display:flex;flex-direction:column;gap:var(--s-2)}
.v2-rescard-action .v2-textlink{align-self:center}
/* S8 wide cards (11+ guides on /areas/), held cards are plain text with no hover */
.v2-subjects--guides{grid-template-columns:1fr}
@media(min-width:640px){.v2-subjects--guides{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.v2-subjects--guides{grid-template-columns:repeat(4,1fr)}}
.v2-subj--wide{align-items:flex-start}
.v2-subj--wide span{font-size:.875rem;line-height:1.5}
.v2-subj.is-held,.v2-areacard.is-held{cursor:default}
.v2-subj.is-held:hover,.v2-areacard.is-held:hover{transform:none;box-shadow:var(--v2-shadow-sm)}
.v2-after{margin-top:var(--s-6);text-align:center}
/* Inline quotes inside a prose band, and a page's own testimonial under the Google reviews */
.v2-reviews--inline{margin:var(--s-5) 0;grid-template-columns:1fr!important}
.v2-reviews--one{margin-top:var(--v2-grid-gap);grid-template-columns:1fr!important;max-width:44rem;margin-left:auto;margin-right:auto}
/* S4 cards without numbers (benefit / topic cards) */
.v2-steps--cards .v2-step{padding-top:var(--v2-pad)}
.v2-steps--cards .v2-step p+p{margin-top:var(--s-3)}
/* S19 form card: success panel replaces the form inside the same card */
.v2-two--form{align-items:start}
.v2-form-card{min-width:0}
.v2-form-ok[hidden],.v2-form[hidden],.v2-form-alert[hidden],.v2-err[hidden]{display:none!important}
.v2-form .v2-field.is-invalid .v2-input{border:2px solid var(--v2-error,#b42318)}
/* Resource pages: long prose */
.v2-resource h2.v2-h2--sm{font-size:1.75rem;margin:var(--s-7) 0 var(--s-4)}
.v2-resource table{width:100%}
.v2-prose ol{padding-left:1.25rem;margin:0 0 var(--s-4)}
.v2-prose ol li{margin-bottom:var(--s-2)}
/* Header/footer tap fixes on every page (homepage included) */
@media(max-width:899px){
 .footer .footer-col-links ul{gap:0}
 .footer .footer-col-links a,.footer .footer-contact-list a{display:flex;align-items:center;min-height:44px}
 .footer .footer-contact-list{gap:var(--s-2,8px)}
 .nav-logo,.footer-logo{min-height:44px;display:inline-flex;align-items:center}
}
.footer-col-heading a{color:inherit;text-decoration:none}
.footer-col-heading a:hover{text-decoration:underline}
/* Logged-in only: stock photo slot label */
.ck-v2-slot-tag{position:absolute;left:8px;bottom:8px;background:rgba(11,33,80,.85);color:#fff;font:600 11px/1.3 var(--font-body);padding:4px 8px;border-radius:6px;max-width:90%}
.v2-hero-photo,.v2-photo,.v2-cta-photo,.v2-faq-photo{position:relative}
@media print{.nav-sticky,.nav-announce,.sticky-cta,.footer,.v2-cta,.v2-hero-media{display:none!important}}

/* ===== Homepage: Sally phase-0 additions (live design, unscoped) ===== */
.hero-lead a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.hero-lead.hero-areas{font-size:.975rem;margin-top:-1.25rem}
.ck-11plus-strip{padding-top:3.5rem;padding-bottom:3.5rem}
.ck-chip-row{list-style:none;margin:1.25rem auto 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}
.ck-chip-row li{display:inline-flex;align-items:center;min-height:44px;padding:.55rem 1rem;border-radius:999px;border:1px solid rgba(var(--gold-rgb),.55);font-size:.95rem;font-weight:600}
.ck-chip-row a.ck-chip-link{color:inherit;text-decoration:none}
.ck-chip-row a.ck-chip-link:hover{text-decoration:underline}
.ck-where{margin-top:3rem;padding-top:2.5rem;border-top:1px solid rgba(255,255,255,.15)}
.ck-where .ck-where-h{font-size:clamp(1.5rem,3vw,2.125rem)}
.ck-where .ctab-details{margin-top:1rem;border-top:0;padding-top:0}
.ck-where .ctab-sub{margin:1.5rem auto 0;max-width:720px;font-size:1rem}
.cta-banner .ck-chip-row li{color:#fff;border-color:rgba(255,255,255,.35)}

/* ===== 1.5.1: privacy page + footer legal link ===== */
.v2 .v2-hero--plain{padding-bottom:var(--s-8,2rem)}
.v2 .v2-hero--plain .v2-lead{max-width:720px}
.v2 .v2-legal{max-width:760px}
.footer-bottom .ck-foot-sep{margin:0 .5rem;opacity:.6}
.footer-bottom a.ck-foot-legal{color:inherit;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px}
