:root {
  --tfip-white: #ffffff;
  --tfip-navy: #1f3b5b;
  --tfip-deep: #102a43;
  --tfip-blue: #2f6fa3;
  --tfip-teal: #147d7b;
  --tfip-aqua: #9fd6db;
  --tfip-light: #e4f2f8;
  --tfip-pale: #f3f9fc;
  --tfip-slate: #4a5563;
  --tfip-line: #d5e4ec;
  --tfip-shadow: 0 22px 60px rgba(31, 59, 91, .11);
}

.homepage-v2 { background: var(--tfip-white); color: var(--tfip-navy); }
.homepage-v2 .site-header { position: relative; background: rgba(255,255,255,.98); border-bottom: 1px solid var(--tfip-line); backdrop-filter: none; }
.homepage-v2 .header-inner { min-height: 82px; gap: 18px; }
.homepage-v2 .brand strong { color: var(--tfip-navy); font-family: 'Lora', Georgia, serif !important; font-size: 1.22rem; font-weight: 600; }
.homepage-v2 .brand span { color: var(--tfip-teal); font-size: .7rem; letter-spacing: .14em; }
.homepage-v2 nav { gap: 8px 18px; }
.homepage-v2 nav a { color: var(--tfip-navy); font-weight: 650; }
.homepage-v2 nav a:hover, .homepage-v2 nav a:focus { color: var(--tfip-teal); }
.homepage-v2 .nav-cta { background: var(--tfip-teal); color: #fff; border-radius: 6px; padding: 11px 16px; box-shadow: 0 8px 20px rgba(20,125,123,.16); }
.homepage-v2 .nav-cta:hover, .homepage-v2 .nav-cta:focus { background: var(--tfip-navy); color: #fff; }
.homepage-v2 .nav-panel { display: flex; align-items: center; gap: 24px; margin-left: auto; }
.homepage-v2 .menu-toggle { display: none; align-items: center; gap: 8px; min-height: 42px; padding: 8px 11px; color: var(--tfip-navy); background: #fff; border: 1px solid var(--tfip-line); border-radius: 6px; font: 700 .82rem/1 'Source Sans 3',Arial,sans-serif; }
.homepage-v2 .menu-toggle svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.homepage-v2 .language-switch { color: var(--tfip-slate); font-size: .78rem; white-space: nowrap; }

/* V18 hero: one editorial composition rather than two adjoining blocks. */
.homepage-v2 .hero { position: relative; color: var(--tfip-navy); background: #fff; overflow: hidden; }
.homepage-v2 .hero-grid { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0,45%) minmax(0,55%); width: min(1500px,100%); min-height: 660px; margin: 0 auto; }
.homepage-v2 .hero-copy { position: relative; z-index: 3; align-self: center; padding: 76px 0 82px max(30px,calc((100vw - 1160px)/2)); background: transparent; }
.homepage-v2 .hero-copy::before { content: ""; position: absolute; z-index: -2; inset: -120px -360px -120px -25vw; background: linear-gradient(90deg,#fff 0%,#fff 66%,rgba(255,255,255,.98) 74%,rgba(255,255,255,.83) 83%,rgba(255,255,255,.34) 93%,rgba(255,255,255,0) 100%); pointer-events: none; }
.homepage-v2 .hero-copy::after { content: ""; position: absolute; z-index: -1; top: -70px; right: -380px; width: 560px; height: calc(100% + 140px); background: radial-gradient(ellipse at left,rgba(255,255,255,.96) 0%,rgba(255,255,255,.75) 35%,rgba(255,255,255,0) 74%); pointer-events: none; }
.homepage-v2 .hero-copy h1 { max-width: 650px; margin: 18px 0 22px; font-size: clamp(3.45rem,5.75vw,5.9rem); line-height: 1.01; letter-spacing: -.05em; }
.homepage-v2 .hero-copy h1 em { display: block; color: var(--tfip-blue); font-style: normal; }
.homepage-v2 .hero-copy > p { max-width: 590px; color: var(--tfip-slate); font-size: 1.18rem; line-height: 1.58; }
.homepage-v2 .hero-image { position: relative; z-index: 1; min-height: 660px; margin-left: -95px; background-image: linear-gradient(90deg,#fff 0%,rgba(255,255,255,.92) 8%,rgba(255,255,255,.55) 19%,rgba(255,255,255,.14) 36%,rgba(255,255,255,0) 54%), url('/clarissa-homepage-hero-approved-v3.webp'); background-position: left center, 57% center; background-size: 100% 100%, cover; background-repeat: no-repeat; }
.homepage-v2 .hero-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(255,255,255,.04) 0%,rgba(255,255,255,0) 72%,rgba(255,255,255,.16) 100%); pointer-events: none; }
.homepage-v2 .hero-note { margin: 21px 0 0 !important; color: #617286 !important; font-size: .9rem !important; font-weight: 650; }
.homepage-v2 .eyebrow { color: var(--tfip-teal); font-size: .77rem; font-weight: 800; letter-spacing: .17em; }
.homepage-v2 .eyebrow::before { background: var(--tfip-aqua); }
.homepage-v2 .button { border-radius: 7px; padding: 13px 22px; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.homepage-v2 .button-primary { color: #fff; background: var(--tfip-teal); box-shadow: 0 10px 24px rgba(20,125,123,.15); }
.homepage-v2 .button-primary:hover, .homepage-v2 .button-primary:focus { background: var(--tfip-navy); }
.homepage-v2 .button-secondary { color: var(--tfip-navy); background: rgba(255,255,255,.9); border: 1px solid var(--tfip-navy); }
.homepage-v2 .button-secondary:hover, .homepage-v2 .button-secondary:focus { background: var(--tfip-pale); }

/* Value strip */
.homepage-v2 .trust-strip { background: linear-gradient(90deg,#fff 0%,var(--tfip-pale) 50%,#fff 100%); border-top: 1px solid var(--tfip-line); border-bottom: 1px solid var(--tfip-line); }
.homepage-v2 .trust-inner { grid-template-columns: repeat(3,1fr); gap: 0; padding: 0; }
.homepage-v2 .trust-item { gap: 17px; min-height: 136px; padding: 28px 34px; border-right: 1px solid var(--tfip-line); font-weight: 600; }
.homepage-v2 .trust-item:last-child { border-right: 0; }
.homepage-v2 .trust-item > span:last-child { display: grid; gap: 3px; }
.homepage-v2 .trust-item strong { color: var(--tfip-navy); font-size: 1.04rem; }
.homepage-v2 .trust-item small { color: var(--tfip-slate); font-size: .88rem; font-weight: 450; line-height: 1.4; }
.homepage-v2 .trust-icon { width: 54px; height: 54px; flex: 0 0 54px; color: var(--tfip-blue); background: #fff; border: 1px solid #c7e1ec; box-shadow: 0 8px 24px rgba(31,59,91,.07); }
.homepage-v2 .trust-icon svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.homepage-v2 .section { padding: 104px 0; }
.homepage-v2 .section-white { background: #fff; }
.homepage-v2 .section-head { max-width: 820px; margin-bottom: 46px; }
.homepage-v2 .section-head-wide { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr); gap: 22px 72px; align-items: end; max-width: none; }
.homepage-v2 .section-head-wide .eyebrow { grid-column: 1/-1; }
.homepage-v2 .section-head-wide h2 { margin: 0; }
.homepage-v2 .section-head p { margin: 0; color: var(--tfip-slate); font-size: 1.05rem; }
.homepage-v2 h2 { color: var(--tfip-navy); font-size: clamp(2.35rem,4.1vw,4.25rem); line-height: 1.06; letter-spacing: -.04em; }
.homepage-v2 h2 em { color: var(--tfip-blue); font-style: normal; }
.homepage-v2 h3 { color: var(--tfip-navy); letter-spacing: -.02em; }

/* Four existing audience paths, now presented as visual learning cards. */
.homepage-v2 .pathways-section { background: #fff; }
.homepage-v2 .audience-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.homepage-v2 .audience-card, .homepage-v2 .audience-card:nth-child(n) { display: flex; flex-direction: column; min-height: 390px; padding: 28px 27px 30px; color: var(--tfip-navy); background: #fff; border: 1px solid var(--tfip-line); border-radius: 16px; box-shadow: 0 14px 40px rgba(31,59,91,.075); overflow: hidden; transition: transform .2s ease, box-shadow .2s ease; }
.homepage-v2 .audience-card:hover { transform: translateY(-3px); box-shadow: 0 20px 48px rgba(31,59,91,.11); }
.homepage-v2 .audience-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 7px; background: var(--tfip-blue); }
.homepage-v2 .audience-card:nth-child(2)::before { background: var(--tfip-teal); }
.homepage-v2 .audience-card:nth-child(3)::before { background: var(--tfip-aqua); }
.homepage-v2 .audience-card:nth-child(4)::before { background: var(--tfip-navy); }
.homepage-v2 .audience-card::after { display: none; }
.homepage-v2 .pathway-icon { display: grid; place-items: center; width: 72px; height: 72px; margin: 9px 0 22px; color: var(--tfip-blue); background: var(--tfip-pale); border: 1px solid var(--tfip-light); border-radius: 50%; }
.homepage-v2 .audience-card:nth-child(2) .pathway-icon { color: var(--tfip-teal); }
.homepage-v2 .audience-card:nth-child(3) .pathway-icon { color: #28768f; background: #edf8fa; }
.homepage-v2 .audience-card:nth-child(4) .pathway-icon { color: var(--tfip-navy); }
.homepage-v2 .pathway-icon svg { width: 42px; height: 42px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.homepage-v2 .audience-card h3 { margin: 16px 0 13px; font-size: 1.55rem; line-height: 1.16; }
.homepage-v2 .audience-card p { color: var(--tfip-slate); font-size: 1rem; line-height: 1.55; }
.homepage-v2 .audience-card a { margin-top: auto; color: var(--tfip-teal); font-weight: 750; text-underline-offset: 5px; }
.homepage-v2 .card-kicker { color: var(--tfip-blue); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }

/* Approved real-life photograph in a stronger editorial split. */
.homepage-v2 .real-life-section { padding: 0; background: var(--tfip-pale); }
.homepage-v2 .image-text-split { display: grid; grid-template-columns: 54% 46%; width: min(1500px,100%); min-height: 610px; }
.homepage-v2 .real-life-image { position: relative; min-width: 0; margin: 0; overflow: hidden; }
.homepage-v2 .real-life-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(16,42,67,.06),rgba(16,42,67,0) 55%),linear-gradient(90deg,rgba(243,249,252,0) 72%,var(--tfip-pale) 100%); pointer-events: none; }
.homepage-v2 .real-life-image img { width: 100%; height: 100%; min-height: 610px; object-fit: cover; object-position: center; }
.homepage-v2 .real-life-copy { position: relative; z-index: 1; align-self: center; margin-left: -34px; padding: 78px max(32px,calc((100vw - 1160px)/2)) 78px 78px; }
.homepage-v2 .real-life-copy h2 { max-width: 650px; margin: 14px 0 23px; font-size: clamp(2.5rem,4.45vw,4.55rem); }
.homepage-v2 .real-life-copy p { max-width: 650px; color: var(--tfip-slate); font-size: 1.08rem; }
.homepage-v2 .text-link { display: inline-flex; gap: 8px; align-items: center; color: var(--tfip-teal); font-weight: 800; text-underline-offset: 5px; }

/* Visual process */
.homepage-v2 .framework-section { background: linear-gradient(180deg,#fff 0%,var(--tfip-pale) 100%); }
.homepage-v2 .section-head-centered { max-width: 880px; margin: 0 auto 60px; text-align: center; }
.homepage-v2 .section-head-centered .eyebrow { justify-content: center; }
.homepage-v2 .process-line { position: relative; display: grid; grid-template-columns: 1fr 44px 1fr 44px 1fr; align-items: stretch; gap: 0; }
.homepage-v2 .process-line::before { content: ""; position: absolute; top: 51px; right: 10%; left: 10%; height: 2px; background: linear-gradient(90deg,var(--tfip-blue),var(--tfip-teal)); opacity: .22; }
.homepage-v2 .process-card { position: relative; z-index: 1; display: grid; grid-template-columns: auto 1fr; gap: 20px; min-height: 220px; padding: 32px 28px; background: #fff; border: 1px solid var(--tfip-line); border-radius: 16px; box-shadow: 0 14px 38px rgba(31,59,91,.07); }
.homepage-v2 .process-card .number { display: grid; place-items: center; width: 48px; height: 48px; color: #fff; background: var(--tfip-blue); border: 5px solid var(--tfip-light); border-radius: 50%; font: 800 .88rem/1 'Source Sans 3',Arial,sans-serif; box-sizing: content-box; }
.homepage-v2 .process-card:nth-of-type(2) .number { background: var(--tfip-teal); }
.homepage-v2 .process-card h3 { margin: 4px 0 9px; font-size: 1.65rem; }
.homepage-v2 .process-card p { margin: 0; color: var(--tfip-slate); font-size: .98rem; line-height: 1.58; }
.homepage-v2 .process-label { color: var(--tfip-teal); font-size: .7rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.homepage-v2 .process-arrow { position: relative; z-index: 2; display: grid; place-items: center; align-self: center; color: var(--tfip-teal); font-size: 1.7rem; }

.homepage-v2 .principle-section { padding: 82px 0; color: #fff; background: linear-gradient(120deg,var(--tfip-deep),var(--tfip-navy) 70%,#214e72); }
.homepage-v2 .principle-inner { display: grid; grid-template-columns: auto 1fr; gap: 28px; align-items: start; max-width: 1040px; }
.homepage-v2 .principle-mark { color: var(--tfip-aqua); font: 500 7rem/.7 'Lora',Georgia,serif; }
.homepage-v2 .principle-section .quote { max-width: 920px; margin: 0; color: #fff; font-size: clamp(1.65rem,3vw,2.75rem); line-height: 1.33; }
.homepage-v2 .quote-credit { margin: 22px 0 0; color: var(--tfip-aqua); font-weight: 700; }

/* Guide previews */
.homepage-v2 .learning-section { background: #fff; }
.homepage-v2 .section-heading-row { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 42px; }
.homepage-v2 .section-heading-row h2 { max-width: 760px; margin: 12px 0 0; }
.homepage-v2 .guide-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.homepage-v2 .guide-card { display: flex; flex-direction: column; min-height: 590px; overflow: hidden; background: #fff; border: 1px solid var(--tfip-line); border-radius: 16px; box-shadow: 0 14px 38px rgba(31,59,91,.075); }
.homepage-v2 .guide-visual { position: relative; display: grid; place-items: center; height: 205px; overflow: hidden; background: linear-gradient(135deg,#edf7fb,var(--tfip-blue)); }
.homepage-v2 .guide-visual-two { background: linear-gradient(135deg,#c8ecf0,var(--tfip-teal)); }
.homepage-v2 .guide-visual-three { background: linear-gradient(135deg,#e6f3f8,var(--tfip-navy)); }
.homepage-v2 .guide-visual svg { position: absolute; width: 72%; height: 72%; fill: none; stroke: rgba(255,255,255,.46); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.homepage-v2 .guide-visual span { position: relative; z-index: 1; padding: 10px 14px; color: #fff; border: 1px solid rgba(255,255,255,.76); background: rgba(16,42,67,.12); font-size: .84rem; font-weight: 850; letter-spacing: .18em; }
.homepage-v2 .guide-card-copy { display: flex; flex: 1; flex-direction: column; padding: 28px; }
.homepage-v2 .guide-card h3 { margin: 11px 0 13px; font-size: 1.48rem; line-height: 1.22; }
.homepage-v2 .guide-card p { color: var(--tfip-slate); font-size: .97rem; line-height: 1.58; }
.homepage-v2 .guide-card a { margin-top: auto; color: var(--tfip-teal); font-weight: 800; text-underline-offset: 5px; }

/* Existing destination logic preserved; visual prominence increased. */
.homepage-v2 .starter-section { background: linear-gradient(180deg,var(--tfip-pale),#fff); }
.homepage-v2 .lead-box { grid-template-columns: 1.05fr .95fr; gap: 0; padding: 0; overflow: hidden; background: #fff; border: 1px solid var(--tfip-line); border-radius: 20px; box-shadow: var(--tfip-shadow); }
.homepage-v2 .starter-copy { padding: 60px; }
.homepage-v2 .starter-copy h2 { margin: 14px 0 20px; font-size: clamp(2.35rem,4vw,4.1rem); }
.homepage-v2 .starter-copy p, .homepage-v2 .checklist { color: var(--tfip-slate); }
.homepage-v2 .checklist { display: grid; grid-template-columns: 1fr 1fr; gap: 11px 24px; margin: 30px 0 0; }
.homepage-v2 .checklist li::before { color: var(--tfip-teal); }
.homepage-v2 .plan-access { display: flex; flex-direction: column; justify-content: center; height: 100%; padding: 62px; color: #fff; background: linear-gradient(140deg,var(--tfip-blue),var(--tfip-navy)); }
.homepage-v2 .plan-access h3 { margin: 12px 0; color: #fff; font-size: 2.1rem; }
.homepage-v2 .plan-access p { color: #edf6fb; }
.homepage-v2 .plan-label { color: var(--tfip-aqua); font-size: .76rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.homepage-v2 .button-light { margin-top: 12px; color: #fff; background: var(--tfip-teal); box-shadow: 0 12px 26px rgba(0,0,0,.16); }
.homepage-v2 .button-light:hover, .homepage-v2 .button-light:focus { color: var(--tfip-navy); background: #fff; }
.homepage-v2 .plan-access .form-note { margin: 17px 0 0; }
.homepage-v2 .plan-access .form-note a { color: #fff; font-weight: 700; text-underline-offset: 4px; }

.homepage-v2 .site-footer { padding: 68px 0 30px; color: #cddce8; background: var(--tfip-deep); }
.homepage-v2 .footer-grid { grid-template-columns: 1.5fr .75fr .75fr; gap: 68px; }
.homepage-v2 .site-footer .brand strong { color: #fff; font-size: 1.4rem; }
.homepage-v2 .site-footer .brand span { color: var(--tfip-aqua); }
.homepage-v2 .footer-brand p { max-width: 340px; color: #cddce8; }
.homepage-v2 .footer-grid h3 { color: #fff; font-family: 'Source Sans 3',Arial,sans-serif !important; font-size: .82rem; letter-spacing: .13em; text-transform: uppercase; }
.homepage-v2 .footer-grid a { color: #d8e7f0; line-height: 2.05; text-underline-offset: 4px; }
.homepage-v2 .footer-bottom { margin-top: 48px; padding-top: 25px; color: #9fb4c5; border-top-color: #35516c; }
.homepage-v2 a:focus-visible { outline: 3px solid var(--tfip-aqua); outline-offset: 4px; box-shadow: 0 0 0 6px #fff; }

@media (max-width:1080px) {
  .homepage-v2 .header-inner { flex-wrap: wrap; padding: 15px 0; }
  .homepage-v2 .nav-panel { order: 3; justify-content: center; width: 100%; margin-left: 0; }
  .homepage-v2 nav { justify-content: center; }
  .homepage-v2 .language-switch { margin-left: auto; }
  .homepage-v2 .hero-grid { grid-template-columns: 48% 52%; min-height: 590px; }
  .homepage-v2 .hero-copy { padding-top: 62px; padding-bottom: 68px; }
  .homepage-v2 .hero-copy::before { right: -300px; }
  .homepage-v2 .hero-image { min-height: 590px; margin-left: -60px; background-position: left center,60% center; }
  .homepage-v2 .audience-grid { grid-template-columns: 1fr 1fr; }
  .homepage-v2 .audience-card, .homepage-v2 .audience-card:nth-child(n) { min-height: 350px; }
  .homepage-v2 .process-line { grid-template-columns: 1fr; gap: 15px; }
  .homepage-v2 .process-line::before { top: 5%; bottom: 5%; left: 31px; width: 2px; height: auto; }
  .homepage-v2 .process-arrow { transform: rotate(90deg); justify-self: center; height: 20px; }
}

@media (max-width:780px) {
  .homepage-v2 .site-header { position: relative; z-index: 20; }
  .homepage-v2 .header-inner { position: relative; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; min-height: 70px; padding: 10px 0; }
  .homepage-v2 .brand strong { font-size: 1.04rem; line-height: 1.08; }
  .homepage-v2 .brand span { margin-top: 3px; font-size: .58rem; letter-spacing: .12em; }
  .homepage-v2 .menu-toggle { display: inline-flex; justify-self: end; }
  .homepage-v2 .nav-panel { position: absolute; z-index: 30; top: 100%; right: 0; left: 0; display: none; width: auto; margin: 0; padding: 14px; background: #fff; border: 1px solid var(--tfip-line); border-top: 0; border-radius: 0 0 10px 10px; box-shadow: 0 18px 40px rgba(31,59,91,.16); }
  .homepage-v2 .menu-open .nav-panel { display: block; }
  .homepage-v2 .nav-panel nav { display: grid; grid-template-columns: 1fr 1fr; gap: 5px 8px; width: 100%; }
  .homepage-v2 .nav-panel nav a { display: flex; align-items: center; min-height: 42px; padding: 9px 10px; font-size: .88rem; border-radius: 5px; }
  .homepage-v2 .nav-panel .nav-cta { justify-content: center; color: #fff; text-align: center; }
  .homepage-v2 .nav-panel .language-switch { display: flex; gap: 10px; margin: 11px 0 0; padding: 11px 10px 1px; border-top: 1px solid var(--tfip-line); }
  .homepage-v2 .hero-grid { display: flex; min-height: 0; flex-direction: column; }
  .homepage-v2 .hero-image { order: 1; min-height: 0; margin-left: 0; aspect-ratio: 16/10.5; background-image: linear-gradient(0deg,#fff 0%,rgba(255,255,255,.94) 8%,rgba(255,255,255,.58) 17%,rgba(255,255,255,.08) 31%,rgba(255,255,255,0) 43%),url('/clarissa-homepage-hero-approved-v3.webp'); background-position: center,62% 44%; background-size: 100% 100%,cover; }
  .homepage-v2 .hero-copy { order: 2; z-index: 3; margin-top: -56px; padding: 8px 28px 52px; background: transparent; }
  .homepage-v2 .hero-copy::before { inset: -42px 0 0; background: linear-gradient(180deg,rgba(255,255,255,0) 0,#fff 42px,#fff 100%); }
  .homepage-v2 .hero-copy::after { display: none; }
  .homepage-v2 .hero-copy h1 { margin-top: 15px; font-size: clamp(3rem,12vw,4.4rem); }
  .homepage-v2 .trust-inner { grid-template-columns: 1fr; }
  .homepage-v2 .trust-item { min-height: auto; padding: 22px 10px; border-right: 0; border-bottom: 1px solid var(--tfip-line); }
  .homepage-v2 .trust-item:last-child { border-bottom: 0; }
  .homepage-v2 .section { padding: 76px 0; }
  .homepage-v2 .section-head-wide { grid-template-columns: 1fr; gap: 18px; }
  .homepage-v2 .section-head-wide .eyebrow { grid-column: auto; }
  .homepage-v2 .image-text-split { grid-template-columns: 1fr; min-height: 0; }
  .homepage-v2 .real-life-image img { min-height: 370px; }
  .homepage-v2 .real-life-image::after { background: linear-gradient(180deg,rgba(243,249,252,0) 68%,var(--tfip-pale) 100%); }
  .homepage-v2 .real-life-copy { margin: -30px 0 0; padding: 50px 28px 64px; }
  .homepage-v2 .guide-grid { grid-template-columns: 1fr; }
  .homepage-v2 .guide-card { min-height: 0; }
  .homepage-v2 .section-heading-row { align-items: start; flex-direction: column; }
  .homepage-v2 .lead-box { grid-template-columns: 1fr; }
  .homepage-v2 .starter-copy, .homepage-v2 .plan-access { padding: 44px 30px; }
  .homepage-v2 .footer-grid { grid-template-columns: 1fr 1fr; }
  .homepage-v2 .footer-brand { grid-column: 1/-1; }
}

@media (max-width:560px) {
  .homepage-v2 .nav-panel nav { grid-template-columns: 1fr; }
  .homepage-v2 .hero-image { aspect-ratio: 16/10.7; background-position: center,63% 42%; }
  .homepage-v2 .hero-copy { margin-top: -52px; padding: 5px 20px 46px; }
  .homepage-v2 .hero-copy::before { inset: -38px 0 0; background: linear-gradient(180deg,rgba(255,255,255,0) 0,#fff 38px,#fff 100%); }
  .homepage-v2 .hero-copy h1 { margin-top: 13px; font-size: clamp(2.7rem,13vw,3.55rem); line-height: 1.03; }
  .homepage-v2 .button-row { display: grid; grid-template-columns: 1fr; }
  .homepage-v2 .button-row .button { width: 100%; }
  .homepage-v2 .section { padding: 66px 0; }
  .homepage-v2 h2 { font-size: clamp(2.15rem,10.7vw,3rem); }
  .homepage-v2 .audience-grid { grid-template-columns: 1fr; }
  .homepage-v2 .audience-card, .homepage-v2 .audience-card:nth-child(n) { min-height: 0; padding: 26px 24px 28px; }
  .homepage-v2 .pathway-icon { width: 62px; height: 62px; margin-bottom: 19px; }
  .homepage-v2 .pathway-icon svg { width: 36px; height: 36px; }
  .homepage-v2 .real-life-image img { min-height: 300px; }
  .homepage-v2 .real-life-copy { padding: 43px 20px 56px; }
  .homepage-v2 .process-card { grid-template-columns: 1fr; min-height: 0; padding: 25px; }
  .homepage-v2 .process-line::before { display: none; }
  .homepage-v2 .principle-inner { grid-template-columns: 1fr; gap: 4px; }
  .homepage-v2 .principle-mark { font-size: 5rem; }
  .homepage-v2 .guide-visual { height: 180px; }
  .homepage-v2 .checklist { grid-template-columns: 1fr; }
  .homepage-v2 .starter-copy, .homepage-v2 .plan-access { padding: 38px 22px; }
  .homepage-v2 .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .homepage-v2 .footer-brand { grid-column: auto; }
}
