/* 2026-09-29 v9 (round-4 build). Loads last, after gen6-contrast.css. Preview only.
   Tokens: navy #095e93, channel #2b80bb, sky #5bb8e8, mist #eaf4fc, sand #f5efe6. Cormorant Garamond + Manrope. No gold.
   Sections: 1 numerals + type floor, 2 one action per fold, 3 footer + closing band, 4 team faces, 5 video cards, 6 misc. */

/* ---------- 1. Lining numerals everywhere, microcopy floor ---------- */
/* Cormorant ships old-style figures by default. Every digit on the site should read as a lining figure
   (prices, "5.0 stars", phone numbers, counts, dates). Inheritable, so one rule on the root covers body spans,
   links, tel: links, review stars, table cells, form options and outputs. tabular only where columns align. */
html, body, .gen6, .gen6 * { font-variant-numeric: lining-nums; }
.gen6 :is(h1, h2, h3, h4, p, span, a, li, td, th, dd, dt, strong, b, em, small, cite, blockquote, figcaption, output, option, label, time, button) {
  font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1;
}
.gen6 :is(dd, output, td, [class*="stat"], [class*="count"], [class*="price"], [class*="kpi"], .g6ph-market dd, .g6-strip-stat strong) {
  font-variant-numeric: lining-nums tabular-nums; font-feature-settings: "lnum" 1, "tnum" 1;
}
.gen6 a[href^="tel:"] { font-variant-numeric: lining-nums tabular-nums; font-feature-settings: "lnum" 1, "tnum" 1; white-space: nowrap; }
/* Pull quotes: always Cormorant italic, never a Georgia/Times fallback look. */
.gen6 :is(blockquote, .g6-deep-quote, .g6-main-proof blockquote) p,
.gen6 .g6-deep-quote { font-family: 'Cormorant Garamond', Georgia, serif; }
/* pull quotes and review quotes: Cormorant italic, 18px floor (upright 500 Cormorant at small sizes read as a Times fallback) */
.gen6 main :is(blockquote.g6-deep-quote p, .g6-deep-quote > p) { font-style: italic !important; font-size: 19px !important; font-weight: 500 !important; line-height: 1.5 !important; }
.gen6 main :is(.g6ph-review blockquote p, .g6-main-proof blockquote, .g6-team-quote blockquote, .g6-review blockquote, .g6-reviews blockquote p, blockquote > p) {
  font-family: 'Cormorant Garamond', Georgia, serif !important; font-style: italic !important; }
.gen6 main .g6ph-review blockquote p { font-size: max(21px, 1.3rem) !important; line-height: 1.35 !important; }
/* microcopy floor: nothing a visitor must read below 12px */
.gen6 :is(.g6ph-source, .g6ph-market dt, .g6ph-market-label, .g6-vcard-dur, .g6-strip-upd, .listings-strip__courtesy, .listings-strip__meta) { font-size: 12px !important; }
.gen6 :is(.g6-footer-bottom p, .g6-footer-legal, .g6-footer .g6-footer-source) { font-size: 13px !important; line-height: 1.6 !important; }
.gen6 .g6af-pin b { font-size: 12px !important; }
.gen6 .g6ph-source { font-size: 12px !important; line-height: 1.5; }

/* ---------- 2. One action per fold (home + /sell/ + /buy/) ---------- */
/* Home: the search is the one filled action. "Book a call" becomes a ghost; "How we help" stays a text link. */
.home.gen6 .g6-hero-actions .g6-hero-primary { background: transparent !important; border: 1px solid rgba(255,255,255,.72) !important; color: #fff !important; box-shadow: none !important; }
.home.gen6 .g6-hero-actions .g6-hero-primary:hover { background: rgba(255,255,255,.12) !important; }
.home.gen6 .g6-hero-actions .g6-hero-primary { min-height: 48px !important; }
/* the search button is the fold's single filled action: make it read as one (label + icon at desktop) */
.gen6 .g6-first-search button { width: 48px; height: 48px; box-shadow: 0 6px 16px rgba(43,128,187,.35); }
/* Chip row: never cut mid-word. Scrolls sideways with a right-edge fade on narrow widths. */
.gen6 .g6-first-chips { position: relative; }
@media (max-width: 799px) {
  .gen6 .g6-first-chips { flex-wrap: nowrap !important; overflow-x: auto; align-self: stretch; max-width: none !important; width: auto !important; margin-right: calc(-1 * var(--g6-chip-bleed, 22px)) !important; scrollbar-width: none; -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity; scroll-padding-inline: 0 24px; contain: paint; max-width: 100%;
    -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); padding-right: 28px; }
  .gen6 .g6-first-chips::-webkit-scrollbar { display: none; }
  .home.gen6 .g6-hero-copy { --g6-chip-bleed: 20px; }
  .gen6 .g6ph .g6ph-detail { --g6-chip-bleed: 22px; }
  .gen6 .g6-first-chips a { flex: none !important; scroll-snap-align: start; }
}
/* /sell/: the address field is the one action (56px field). The two ghost buttons become one row of text links. */
.gen6 .g6ph .g6-first-search--value { min-height: 56px; padding: 6px 6px 6px 18px; }
.gen6 .g6ph .g6-first-search--value input { height: 44px; }
.gen6 .g6ph .g6-first-search--value button { width: auto; min-width: 128px; height: 44px; border-radius: 999px; padding: 0 18px; font: 700 15px/1 Manrope, sans-serif; }
/* /buy/: the search is the one filled action; "Start your search" and "Book a call" become text links. */
body.gen6:is(.g6-main-sell, .g6-main-buy) .g6ph .g6ph-actions { display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: 0 24px !important; margin-top: 12px; }
body.gen6:is(.g6-main-sell, .g6-main-buy) .g6ph.g6ph .g6ph-actions a {
  width: auto !important; min-width: 0 !important; min-height: 44px !important; padding: 0 !important; margin: 0 !important;
  border: 0 !important; border-radius: 0 !important; outline: 0; box-shadow: none !important; background: transparent !important;
  color: #eaf4fc !important; justify-content: flex-start !important; display: inline-flex !important; align-items: center;
  text-decoration: underline !important; text-decoration-color: rgba(234,244,252,.5) !important; text-underline-offset: 6px; text-decoration-thickness: 1px;
  font: 600 15px/1.3 Manrope, sans-serif !important; }
body.gen6:is(.g6-main-sell, .g6-main-buy) .g6ph.g6ph .g6ph-actions a:hover { color: #fff !important; text-decoration-color: #fff !important; }
body.gen6:is(.g6-main-sell, .g6-main-buy) .g6ph.g6ph .g6ph-actions a:focus-visible { outline: 3px solid #5bb8e8; outline-offset: 3px; }

@media (max-width: 799px) {
  /* phone H1 38px (clamp); words unchanged */
  .gen6 .g6ph h1, .gen6 .g6-main-page .g6ph h1, .home.gen6 .g6-hero h1 { font-size: clamp(32px, 9.6vw, 38px) !important; line-height: 1.05 !important; }
  /* the proof strip goes fully below the fold: nothing half-cut behind the thumb bar */
  .home.gen6 .g6-hero { padding-top: 156px !important; }
  .home.gen6 .g6-hero-media { height: 370px !important; }
  /* live strip + byline end above the thumb bar; the strip's navy runs on behind the bar so the proof row starts below the fold */
  .home.gen6 .g6-fold-strip { padding-bottom: 76px !important; }
  .gen6 .g6-fold-strip, .gen6 .g6-first-proof { scroll-margin-top: 70px; }
  .g6-main-sell .g6ph, .g6-main-buy .g6ph { min-height: calc(100svh - 60px); display: flex; flex-direction: column; }
  .g6-main-sell .g6ph .g6ph-photo, .g6-main-buy .g6ph .g6ph-photo { flex: 1 1 auto; height: auto !important; min-height: 230px; max-height: none !important; }
  .g6-main-sell .g6ph .g6ph-detail, .g6-main-buy .g6ph .g6ph-detail { flex: 0 0 auto; padding-bottom: 88px; }
  .home.gen6 .g6-fold-strip { min-height: 0; }
  .gen6 .g6ph .g6-first-search--value { flex-wrap: nowrap; }
  .gen6 .g6ph .g6-first-search--value button { min-width: 116px; }
}
@media (min-width: 800px) {
  /* desktop: the strip under the hero sits fully inside 900px or fully below it, never guillotined */
  .home.gen6 .g6-hero { height: calc(100svh - 176px) !important; min-height: 640px !important; }
  .g6-main-sell .g6ph, .g6-main-buy .g6ph { height: calc(100svh - 72px) !important; max-height: none !important; min-height: 620px !important; }
  .gen6 .g6ph-heading { bottom: auto; }
}

/* sticky thumb bar: a solid backing instead of a faint fade, so body text never runs under it */
@media (max-width: 799px) {
  .m-bar { background: rgba(250,251,252,.97) !important; -webkit-backdrop-filter: saturate(1.4) blur(10px) !important; backdrop-filter: saturate(1.4) blur(10px) !important; box-shadow: 0 -8px 24px rgba(9,94,147,.08) !important; }
  .m-bar::before { height: 20px !important; background: linear-gradient(to top, rgba(250,251,252,.9), rgba(250,251,252,0)) !important; }
  /* D3: the body keeps its bar-height bottom pad (so nothing ever sits under the bar), but the pad is painted navy,
     so when the bar steps aside at the footer the page ends on the footer colour, not a 73px white strip. */
  body.gen6 { background: linear-gradient(to top, #095e93 calc(74px + env(safe-area-inset-bottom, 0px)), var(--g6-paper, #fafbfc) 0) !important; }
  .g6-footer { padding-bottom: 20px !important; }
  body.gen6.m-footer-in { padding-bottom: 0 !important; background: #095e93 !important; }
  .g6-footer-grid > section:last-child { border-bottom: 0; }
}

/* ---------- 3. Footer rebuild + closing CTA band ---------- */
/* D2: legacy style.css pads every <section> 6.5rem; three footer columns are <section>, one is <nav> -> 104px stagger. */
.g6-footer section, .g6-footer nav { padding: 0 !important; margin: 0 !important; }
.g6-footer-grid { align-items: start; row-gap: 32px; }
.g6-footer-grid > * > h3, .g6-footer-grid > * > details > summary h3 { margin-top: 0 !important; }
.g6-footer { padding-top: 56px !important; }
.g6-footer-bottom { margin-top: 32px !important; }
.g6-footer .g6-footer-contact { display: flex !important; width: fit-content; }
.g6-footer .g6-footer-contact + .g6-footer-contact { border-top: 0; }
.g6-footer .g6-footer-contacts { display: grid; gap: 0; }
.g6-footer .g6-footer-contacts a { border-bottom: 1px solid rgba(238,243,247,.14); width: 100%; }
.g6-footer .g6-footer-contacts a:last-child { border-bottom: 0; }
.g6-footer :is(.g6-footer-list, .g6-footer-contacts) a { font-size: 15px; }
.g6-footer .g6-footer-legal, .g6-footer-bottom p { font-size: 13px; }
.g6-footer-acc > summary { list-style: none; cursor: default; }
.g6-footer-acc > summary::-webkit-details-marker { display: none; }
.g6-footer-acc > summary h3 { display: inline; }
@media (min-width: 800px) {
  .g6-footer-acc > summary { pointer-events: none; }
  .g6-footer-acc > summary .g6-footer-acc-i { display: none; }
}
@media (max-width: 799px) {
  .g6-footer { padding-top: 36px !important; }
  .g6-footer-lead { margin-bottom: 8px !important; padding-bottom: 18px !important; }
  .g6-footer-grid { display: block !important; }
  .g6-footer-grid > * { border-bottom: 1px solid rgba(238,243,247,.16); }
  .g6-footer-grid > * > h3, .g6-footer-acc > summary { display: flex; align-items: center; justify-content: space-between; min-height: 56px; margin: 0 !important; cursor: pointer; pointer-events: auto; }
  .g6-footer-acc > summary h3 { margin: 0 !important; font-size: 16px !important; }
  .g6-footer-acc-i { width: 12px; height: 12px; border-right: 2px solid #eaf4fc; border-bottom: 2px solid #eaf4fc; transform: rotate(45deg) translate(-3px, -3px); transition: transform .2s ease; }
  .g6-footer-acc[open] .g6-footer-acc-i { transform: rotate(-135deg) translate(-3px, -3px); }
  .g6-footer-acc > :not(summary) { padding-bottom: 14px; }
  .g6-footer .g6-footer-list { display: block !important; }
  .g6-footer .g6-footer-list a { min-height: 44px; }
  .g6-footer-team-quick { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 18px 0 6px; }
  .g6-footer-team-quick a { display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 999px; border: 1px solid rgba(234,244,252,.45); color: #fff; font: 700 14px/1 Manrope, sans-serif; text-decoration: none; }
  .g6-footer-bottom { margin-top: 20px !important; padding-top: 18px !important; }

}
@media (min-width: 800px) { .g6-footer-team-quick { display: none; } }

/* closing navy band, every page, directly above the footer */
.g6-close { background: #095e93; color: #fff; border-bottom: 1px solid rgba(238,243,247,.14); position: relative; overflow: hidden; padding: 0 !important; }
.g6-close-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 55%; }
.g6-close::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(9,94,147,.94) 0%, rgba(9,94,147,.82) 45%, rgba(9,94,147,.45) 100%), linear-gradient(0deg, rgba(9,94,147,.9), rgba(9,94,147,0) 55%); pointer-events: none; }
.g6-close-in { z-index: 2; }
.g6-close { border-bottom: 0 !important; }
.g6-close-in { position: relative; width: calc(100% - 80px); max-width: 1180px; margin: 0 auto; padding: 72px 0 64px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 32px 56px; align-items: end; }
.g6-close .g6-close-eyebrow { margin: 0 0 14px; font: 700 12px/1.4 Manrope, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #5bb8e8 !important; }
.gen6 .g6-close h2 { margin: 0; font: 500 clamp(34px, 3.6vw, 52px)/1.04 'Cormorant Garamond', Georgia, serif !important; letter-spacing: -.02em; color: #fff !important; max-width: 16ch; }
.gen6 .g6-close h2 em { font-style: italic; color: #bfe0ff !important; }
.g6-close p.g6-close-lede { margin: 16px 0 0; max-width: 48ch; font: 400 16px/1.6 Manrope, sans-serif; color: rgba(234,244,252,.86) !important; }
.g6-close-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.g6-close-actions a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 0 26px; border-radius: 999px; font: 700 15px/1 Manrope, sans-serif; text-decoration: none; white-space: nowrap; }
.g6-close-actions .g6-close-primary { background: #2b80bb; color: #fff !important; border: 1px solid #2b80bb; }
.g6-close-actions .g6-close-primary:hover { background: #226a9c; border-color: #226a9c; }
.g6-close-actions .g6-close-ghost { background: transparent; color: #fff !important; border: 1px solid rgba(234,244,252,.55); }
.g6-close-actions .g6-close-ghost:hover { border-color: #fff; }
.g6-close-phone { grid-column: 1 / -1; margin: 0; font: 500 14px/1.5 Manrope, sans-serif; color: rgba(234,244,252,.8) !important; }
.g6-close-phone a { color: #fff !important; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(234,244,252,.4); display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 799px) {
  .g6-close-in { width: calc(100% - 40px); padding: 56px 0 44px; grid-template-columns: 1fr; gap: 22px; }
  .g6-close::before { background: linear-gradient(180deg, rgba(9,94,147,.62) 0%, rgba(9,94,147,.9) 55%, rgba(9,94,147,.97) 100%); }
  .g6-close-actions { display: grid; grid-template-columns: 1fr; }
  .g6-close-actions a { width: 100%; }
}
@media print { .g6-close { display: none; } }

/* ---------- 4. Team faces ---------- */
/* Home "One team" card: faces 88-112px (was ~65-96). Desktop: 4 + 3 grid over the aerial; phone: wider carousel. */
@media (min-width: 900px) {
  .g6-team-photo--faces { min-height: 520px; }
  .g6-team-faces { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 14px 14px !important; padding: 0 22px 22px !important; }
  .g6-team-faces li:nth-child(n+5) { transform: translateX(calc(50% + 7px)); }
  .g6-team-faces img { aspect-ratio: 4 / 5; object-position: 50% 18%; }
  .g6-team-faces span { font-size: 13px !important; margin-top: 8px !important; }
}
@media (max-width: 899px) {
  .g6-team-faces li { flex: 0 0 116px !important; }
  .g6-team-faces img { object-position: 50% 18%; }
  .g6-team-faces span { font-size: 13px !important; }
  .g6-team-photo--faces { padding-top: 150px !important; }
}
.g6-team-roster img { width: 64px !important; height: 64px !important; object-fit: cover; object-position: 50% 20%; }
/* /meet-the-team/: every card's action row sits on one line (bio length varies), and 4 + 3 rows share tracks */
@media (min-width: 1100px) {
  .g6-main-team-list { justify-content: flex-start !important; }
  .g6-main-agent { display: flex !important; flex-direction: column; }
  .g6-main-agent > div { flex: 1 1 auto; display: flex; flex-direction: column; }
  .g6-main-agent > div > p:not(.g6-main-kicker):not(.g6-main-agent-actions) { flex: 0 0 auto; min-height: calc(1.55em * 6); }
  .g6-main-agent .g6-main-agent-actions { margin-top: auto !important; padding-top: 14px; }
  .g6-main-team-list .g6-main-agent:nth-child(n+5) { margin-left: 0; }
  .g6-main-team-list::after { content: ""; flex: 0 0 calc((100% - 84px) / 4); }
}
.g6-main-agent .g6-main-agent-actions .g6-main-text { min-width: 44px; }
/* /about/: the studio portrait card showed a torso on phones; keep the head in frame */
.gen6 .about-story__visual .hero-ed-visual-frame img { object-position: 50% 12% !important; }
@media (max-width: 799px) { .gen6 .about-story__visual .hero-ed-visual-frame img { aspect-ratio: 4 / 5; height: auto; object-position: 50% 10% !important; } }
/* /about/ team composite: faces were ~35px at 390. On phones show the row taller and scrollable, shorter navy fade. */
@media (max-width: 799px) {
  .g6-team-band__frame { overflow-x: auto; scrollbar-width: none; contain: paint; max-width: 100%; }
  .g6-team-band__frame::-webkit-scrollbar { display: none; }
  .g6-team-band__frame img { width: 250% !important; max-width: none !important; aspect-ratio: 3200 / 1150 !important; }
  .g6-team-band__cta { position: sticky !important; left: 50% !important; }
}

/* ---------- 5. Video cards: lighter scrim, title below, play mark on every card ---------- */
/* The poster link now holds a 16:9 frame (image, duration, play) and, below it, the title that used to sit on the image. */
.g6-vcard-poster, .g6-vtopic-poster { aspect-ratio: auto !important; overflow: visible !important; background: transparent !important; border-radius: 0 !important; text-decoration: none; }
.g6-vcard-poster::after, .g6-vtopic-poster::after { content: none !important; }
.g6-v9-frame { position: relative; display: block; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #eaf4fc; }
.g6-vcard-poster.is-short .g6-v9-frame { aspect-ratio: 9 / 16; }
.g6-v9-frame img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 500ms ease; }
.g6-vcard-poster:hover .g6-v9-frame img, .g6-vtopic-poster:hover .g6-v9-frame img { transform: scale(1.04); }
.g6-v9-frame::after { content: ""; position: absolute; inset: auto 0 0 0; height: 35%; background: linear-gradient(to top, rgba(8,26,46,.38), rgba(8,26,46,0)); pointer-events: none; }
.g6-v9-play { position: absolute; z-index: 2; left: 12px; bottom: 12px; width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center;
  background: rgba(250,251,252,.95); color: #095e93; box-shadow: 0 6px 18px rgba(8,26,46,.28); pointer-events: none; transition: transform .2s ease; }
.g6-vcard-poster:hover .g6-v9-play, .g6-vtopic-poster:hover .g6-v9-play { transform: scale(1.08); }
.g6-v9-play svg { width: 15px; height: 15px; margin-left: 3px; }
.g6-vcard-poster { position: relative; }
.g6-vcard-poster > .g6-vcard-dur, .g6-v9-frame .g6-vcard-dur { position: absolute; top: 10px !important; right: 10px !important; bottom: auto !important; left: auto; z-index: 2; background: rgba(8,26,46,.8); color: #fff; font: 600 12px/1 Manrope, sans-serif !important; padding: 5px 7px; border-radius: 6px; }
.gen6 .g6-vcard-poster .g6-vcard-ov, .gen6 .g6-vtopic-poster .g6-vcard-ov { position: static !important; display: block !important; margin: 12px 0 0; padding: 0; left: auto; right: auto; bottom: auto; color: inherit; pointer-events: auto; }
.gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-t, .gen6 .g6-vtopic-poster .g6-vcard-ov .g6-vcard-ov-t {
  color: #095e93 !important; text-shadow: none !important; font: 600 20px/1.18 'Cormorant Garamond', Georgia, serif !important; -webkit-line-clamp: 2; }
.gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-m, .gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-b, .gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-d,
.gen6 .g6-vtopic-poster .g6-vcard-ov .g6-vcard-ov-m, .gen6 .g6-vtopic-poster .g6-vcard-ov .g6-vcard-ov-b {
  color: #226a9c !important; text-shadow: none !important; font-size: 13px !important; }
.gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-m { white-space: normal !important; overflow: visible !important; text-overflow: clip; }
.gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-b { white-space: nowrap; }
@media (max-width: 640px) { .gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-d { display: none !important; } .gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-t { font-size: 18px !important; } }
/* D14: no dangling separator at a line start in category / feature lines */
.gen6 .g6-vlib .g6-vcard-cat, .g6-vcard-meta { text-wrap: pretty; }
.gen6 .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-d { display: inline !important; }
.g6-vtopic .g6-vcard-ov { right: auto !important; }
.g6-vtopic .g6-film-playmark { display: none !important; }
.gen6 .g6-vlib .g6-vcard-cat { margin-top: 6px !important; }
.g6-vcard-meta { font-size: 13px; }
/* dark-band pages (video-hub navy sections) keep title legible */
.gen6 :is(.g6-main-ink, [class*="--navy"], [class*="--ink"]) .g6-vcard-poster .g6-vcard-ov .g6-vcard-ov-t { color: #fff !important; }
/* watch-and-read tiles keep the on-card title (search result tiles), with a lighter scrim */
.g6wr-card::after { height: 60% !important; background: linear-gradient(to top, rgba(8,26,46,.8) 0%, rgba(8,26,46,.38) 55%, rgba(8,26,46,0) 100%) !important; }
/* legacy main-film posters: consistent play button */
.g6-main-film-poster .g6-main-play { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; background: rgba(250,251,252,.94); color: #095e93; }

/* ---------- 6. Misc from SCORE_R3 ---------- */
/* D20: sticky header must not clip section headings */
.gen6 main :is(section[id], [id^="g6-"]) { scroll-margin-top: 88px; }
/* people bands */
.g6-people-copy .g6-main-kicker { color: #226a9c; }
@media (max-width: 359px) { .gen6 .g6ph .g6ph-detail { --g6-chip-bleed: 18px; } }

/* v9 tap floor at desktop too (44px): footer accordion summaries, agent name links, saved-home hearts */
.g6-footer-acc > summary { min-height: 44px; display: flex; align-items: center; justify-content: space-between; }
.g6-footer-acc > summary h3 { margin: 0 !important; }
.g6-main-agent h3 a { min-height: 44px !important; }
.gen6 .ms-card-heart { position: relative; }
.gen6 .ms-card-heart::after { content: ""; position: absolute; left: 50%; top: 50%; width: 44px; height: 44px; transform: translate(-50%, -50%); }
.g6-team-quote figcaption a { min-height: 44px; display: inline-flex !important; align-items: center; }

/* v9 polish after vision pass */
@media (min-width: 800px) {
  .g6-footer-acc > summary { align-items: flex-start; min-height: 0; padding-bottom: 16px; }
  .g6-footer-grid > * > h3, .g6-footer-acc > summary h3 { margin: 0 0 16px !important; line-height: 21px; }
  .g6-footer-acc > summary h3 { margin-bottom: 0 !important; }
  .g6-footer-acc > summary { position: relative; }
  .g6-footer-acc > summary::after { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 44px; }
}
/* closing band: its own edge (a channel-blue rule + lighter navy), heading on two lines, actions under the copy */
.g6-close { background: #0d2c4c; box-shadow: inset 0 -1px 0 rgba(91,184,232,.28); }
.g6-close + .g6-footer { border-top: 3px solid #2b80bb; }
.g6-close-in { grid-template-columns: minmax(0, 720px); justify-content: start; align-items: start; gap: 26px; padding: 88px 0 80px; }
.gen6 .g6-close h2 { max-width: none; font-size: clamp(36px, 3.6vw, 56px) !important; }
.gen6 .g6-close h2 em { display: block; }
.g6-close-phone { grid-column: auto; margin-top: -6px; font-size: 15px !important; color: rgba(234,244,252,.9) !important; }
@media (max-width: 799px) {
  .g6-close-bg { height: 260px !important; bottom: auto !important; object-position: 55% 45%; }
  .g6-close::before { background: linear-gradient(180deg, rgba(9,94,147,.05) 0px, rgba(9,94,147,.2) 150px, #0d2c4c 262px) !important; }
  .g6-close-in { padding-top: 212px; padding-bottom: 40px; }
  .gen6 .g6-close h2 { font-size: 36px !important; line-height: 1.1 !important; }
  /* the thumb bar steps aside while the closing band is on screen (same actions twice otherwise) */
}
.g6-footer-lead h2 { font-size: clamp(26px, 2.6vw, 38px) !important; }
