/* Shared visual refinements. Loaded after legacy template and repair styles. */
:root { --muted:#687078; --line:#e2e3e5; --radius:6px; --radius-lg:12px; }
h1,h2,h3 { text-wrap:balance; }
button,a,input,select,summary { -webkit-tap-highlight-color:transparent; }
button,input,select { font-family:inherit; }
.v3-header { background:rgba(255,255,255,.98); border-bottom:1px solid #e7e7e7; }
.v3-header-inner { height:76px; }
.v3-nav a { font-size:13px; }
.v3-nav-toggle { min-width:44px; min-height:44px; align-items:center; justify-content:center; }
.v3-btn-quote,.v3-btn-primary,.v3-btn-outline { min-height:44px; border-radius:6px; }
.v3-dropdown a:focus-visible { background:#fff2f2; }
.v3-nav-item:focus-within .v3-dropdown { display:block; opacity:1; transform:none; }
.faq-item.open .faq-answer { max-height:none; }
.v3-footer { border-top:1px solid var(--line); }
.v3-footer a { line-height:1.7; }

/* Home: immediate, readable content with one primary action. */
.site-home .v3-hero { background:#fbfaf7; padding:0!important; }
.site-home .v3-hero-inner { padding:64px 24px 68px; grid-template-columns:1.08fr 1fr; gap:56px; }
.site-home .v3-hero h1 { font-size:clamp(36px,4.3vw,58px)!important; line-height:1.08!important; margin-bottom:24px; letter-spacing:-.035em; }
.site-home .v3-hero-sub { max-width:490px; font-size:17px; line-height:1.75; color:#50545a; }
.site-home .v3-hero-img { height:440px; border-radius:12px; box-shadow:0 12px 36px #18181814; }
.site-hero-proof { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; font-size:12px; color:#62666c; }
.site-hero-proof span { color:#b1b3b6; }
.site-home .v3-hero-tag { background:#efede7; color:#4b5055; padding:6px 10px; }
.site-home .v3-hero-badge { border-radius:6px; }
.v3-strip-num { color:#ff7b82; }
.v3-strip-lbl { color:#d1d1d1; }
.site-home .v3-hero-left,.site-home .v3-hero-right,
.site-home .v3-anim-up,.site-home .v3-anim-scale,.site-home .v3-stagger > * { opacity:1!important; transform:none!important; animation:none!important; }
.site-home .v3-hero-left > * { animation:none!important; opacity:1!important; transform:none!important; }
.v3-hero-badge .dot,.v3-float .wa { animation:none!important; }

/* One heading rhythm across calculators, catalogs, and editorial pages. */
.site-page-hero { padding:56px 24px!important; }
.site-page-hero .site-hero-inner { max-width:880px; margin:0 auto; padding:0!important; }
.site-page-hero h1 { font-family:var(--font-display); font-size:clamp(30px,3.4vw,44px)!important; font-weight:400; line-height:1.15!important; letter-spacing:-.025em!important; margin:16px auto 18px!important; }
.site-page-hero .site-hero-inner > p { font-size:16px!important; line-height:1.75!important; max-width:680px; margin-left:auto; margin-right:auto; }
.site-hero-dark { background:#1d2023!important; }
.site-hero-dark .site-hero-inner > p { color:#d1d5d8!important; }
.site-hero-dark .site-hero-inner > span:first-child,
.site-hero-dark .v3-hero-label { color:#ff9ca2!important; background:transparent; border-color:#743b40; }
.site-hero-dark .v3-hero-label::before { background:#ff9ca2; }
.site-hero-dark [class$="-hero-label"] { color:#ff9ca2; }
.site-hero-dark [class$="-hero-label"]::before,.site-hero-dark [class$="-hero-label"]::after { background:#ff9ca2; }
.site-hero-dark .site-hero-inner > .flex { margin-top:24px; }
.site-hero-dark .text-slate-500,.site-hero-dark .text-slate-700 { color:#b5bcc3!important; }
.site-hero-dark .blog-tag { color:#ffb3b8!important; background:#ffffff0d; border:1px solid #ffffff25; padding:6px 12px; }
.site-hero-dark .site-hero-inner > .text-xs { flex-wrap:wrap; gap:10px 18px; font-size:12px; }
.site-hero-dark .site-hero-inner a.inline-flex { min-height:44px; justify-content:center; border-radius:6px; }
.site-hero-light { background:#fafaf7; border-bottom:1px solid #e9e8e3; }
.site-quick-answer { max-width:680px; margin:18px auto 0; text-align:left; border:1px solid #dedfdf; border-radius:8px; background:#ffffff80; color:#4f565d; font-size:14px; }
.site-quick-answer summary { cursor:pointer; padding:12px 16px; font-size:13px; font-weight:500; }
.site-quick-answer p { padding:0 16px 16px; font-size:14px!important; line-height:1.7!important; }
.site-hero-dark .site-quick-answer { color:#d6dbde; background:#ffffff05; border-color:#ffffff26; }
.site-hero-dark .site-quick-answer p { color:#d6dbde!important; }

/* Article reading and navigation. */
.prose-blog { max-width:760px; }
.prose-blog p,.prose-blog ul li,.prose-blog ol li { font-size:16px!important; line-height:1.85!important; }
.prose-blog h2 { font-size:27px!important; line-height:1.28; margin-top:40px!important; }
.prose-blog h3 { font-size:19px!important; line-height:1.4; }
.prose-blog img { border-radius:10px!important; }
.prose-blog figcaption { color:#666f79; line-height:1.6; margin-top:-10px; }
.prose-blog .toc { background:#f7f7f5; border:1px solid #e5e5e0; padding:24px 28px; border-radius:10px; }
.prose-blog .toc li { list-style:none; margin:0!important; line-height:1.6!important; font-size:14px!important; }
.prose-blog .toc a { display:inline-block; color:#51565c!important; text-decoration:none!important; padding:6px 0; }
.prose-blog .toc a:hover { color:var(--red)!important; text-decoration:underline!important; }
.prose-blog table { overflow-x:auto!important; }
.prose-blog table th,.prose-blog table td { min-width:100px; }
.article-card { border:1px solid #e6e6e6; border-radius:10px; overflow:hidden; background:#fff; box-shadow:0 3px 10px #00000004; }
.article-card h2,.article-card h3 { line-height:1.4; }
.article-card > a > div:not(:has(img)),.article-card > div:not(:has(img)) { padding:20px; }
.related-card { border-radius:10px; }

/* Catalog cards: consistent images, legible parameters and touch targets. */
:is(.cl-prod-card,.pc-prod-card,.tl-prod-card,.wl-prod-card,.sl-prod-card) { min-width:0; border:1px solid #e0e2e4; border-radius:12px; padding:20px; background:#fff; box-shadow:0 3px 12px #00000004; }
:is(.cl-prod-img-wrap,.pc-prod-img-wrap,.tl-prod-img-wrap,.wl-prod-img-wrap,.sl-prod-img-wrap) { border-radius:8px; background:#f6f6f4; overflow:hidden; margin-bottom:20px; }
:is(.cl-spec-grid,.pc-spec-grid,.tl-spec-grid,.wl-spec-grid,.sl-spec-grid) { gap:14px 12px; margin-bottom:20px; }
:is(.cl-spec-label,.pc-spec-label,.tl-spec-label,.wl-spec-label,.sl-spec-label) { font-size:10px; color:#697179; letter-spacing:.05em; line-height:1.5; }
:is(.cl-spec-value,.pc-spec-value,.tl-spec-value,.wl-spec-value,.sl-spec-value) { font-size:13px; color:#2c3238; line-height:1.55; white-space:normal; overflow-wrap:anywhere; }
:is(.cl-cta-quote,.pc-cta-quote,.tl-cta-quote,.wl-cta-quote,.sl-cta-quote,.cl-cta-calc,.pc-cta-calc,.tl-cta-calc,.wl-cta-calc,.sl-cta-calc) { min-height:44px; display:flex; align-items:center; justify-content:center; font-size:12px; border-radius:6px; padding:10px 12px; }
.site-catalog :is(.cl-cta-quote,.pc-cta-quote,.tl-cta-quote,.wl-cta-quote,.sl-cta-quote,.cl-cta-calc,.pc-cta-calc,.tl-cta-calc,.wl-cta-calc,.sl-cta-calc) { font-size:12px!important; padding:10px 12px!important; line-height:1.4; white-space:nowrap; }
.site-catalog :is(.wl-cta-quote,.cl-cta-quote,.pc-cta-quote) { padding-left:30px!important; }
.site-catalog #product-catalog button { min-height:44px; }
.site-catalog #product-catalog .grid:has(> [class$="-prod-card"]) { gap:24px; }
.site-catalog .grid > * { min-width:0; }
.site-catalog [class$="-gallery-hero"] { border-radius:12px; }

/* Forms and results keep their template-specific colors and semantics. */
.site-tool input:not([type=range]):not([type=checkbox]):not([type=radio]),.site-tool select { min-height:44px; border-radius:6px; }
.site-tool input[type=range] { accent-color:var(--red); }
.site-tool :is(.roi-result-card,.sol-result-card,.ba2-calc-panel) { border-radius:12px; }
.site-tool .site-page-hero + section { scroll-margin-top:90px; }
.ba2-tabs { overflow-x:auto; }
.ba2-tab { white-space:normal; min-width:0; flex:1; }
.lsg-spec-grid > *,.lsg-pf-grid > * { min-width:0; }
.lsg-protip { min-width:0; overflow-wrap:anywhere; }
.lsg-protip > div { min-width:0; }
.lsg-cct-badge { max-width:100%; }
.lsg-cct-badge > div { min-width:0; overflow-wrap:anywhere; }
.lsg-hero-meta { flex-wrap:wrap; }
.lsg-comp-table,.lsg-spec-table { overflow-x:auto; }

/* Quiet contact controls, moved outside the reading area on smaller screens. */
.v3-float { gap:8px; right:12px; }
.v3-float a { border:1px solid #e1e3e5; box-shadow:0 2px 8px #00000008; }
@media (max-width:1100px) {
  .v3-header-inner { padding:0 20px; }
  .site-home .v3-hero-inner { gap:30px; }
  .v3-float { display:none; }
}
@media (max-width:768px) {
  .v3-header-inner { height:68px; padding:0 16px; }
  .v3-nav.show { top:68px; max-height:calc(100dvh - 140px); overflow-y:auto; padding:16px 20px; box-shadow:0 12px 24px #00000012; }
  .v3-nav.show a { min-height:40px; }
  .site-home .v3-hero-inner { grid-template-columns:1fr; padding:36px 20px 40px; gap:32px; }
  .site-home .v3-hero h1 { font-size:clamp(34px,8.8vw,48px)!important; margin-bottom:18px; }
  .site-home .v3-hero-sub { font-size:16px; line-height:1.7; margin-bottom:24px; }
  .site-home .v3-hero-img { height:300px; }
  .site-home .v3-hero-cta a { flex:1; justify-content:center; padding:12px 14px!important; white-space:nowrap; }
  .site-home .v3-hero-tags { gap:6px; margin-top:18px; }
  .site-hero-proof { margin-top:16px; }
  .v3-strip-inner { display:grid; grid-template-columns:1fr 1fr; justify-items:start; padding:24px 20px; gap:22px 16px; }
  .v3-strip-item { display:block; }
  .v3-strip-num { font-size:26px; }
  .v3-strip-lbl { display:block; margin-top:6px; font-size:12px; }
  .site-page-hero { padding:36px 20px!important; }
  .site-page-hero h1 { font-size:32px!important; line-height:1.16!important; }
  .site-page-hero .site-hero-inner > p { font-size:15px!important; line-height:1.75!important; }
  .site-hero-dark .site-hero-inner > span:first-child { font-size:11px; letter-spacing:.08em; }
  .site-hero-dark .site-hero-inner > .text-xs { font-size:11px; gap:10px 14px; }
  .site-hero-dark .site-hero-inner > .text-xs > div { flex-shrink:0; }
  .site-hero-dark .site-hero-inner > .text-xs > span { display:none; }
  .site-quick-answer { margin-top:16px; }
  .site-article .blog-hero + section { padding:32px 20px!important; }
  .prose-blog p,.prose-blog ul li,.prose-blog ol li { font-size:16px!important; line-height:1.8!important; }
  .prose-blog h2 { font-size:25px!important; }
  .prose-blog .toc { padding:20px; }
  .prose-blog .toc a { padding:7px 0; }
  .prose-blog table { -webkit-overflow-scrolling:touch; }
  .site-catalog #product-catalog .grid:has(> .wl-prod-card) { grid-template-columns:minmax(0,1fr); }
  .site-catalog [class$="-prod-img-wrap"] { height:240px; }
  .site-catalog [class$="-prod-img-wrap"] img { width:100%; height:100%; object-fit:contain; }
  .lsg-cct-badge { display:flex; width:fit-content; }
  .site-tool select,.site-tool input:not([type=range]):not([type=checkbox]):not([type=radio]) { font-size:16px; }
  .ba2-tab { padding:14px 12px; font-size:13px; }
  .ba2-calc-panel { padding:24px 20px; }
  .site-home,.site-tool,.site-article,.site-blog,.site-catalog,.site-reference { padding-bottom:72px; }
  .v3-float { display:flex; flex-direction:row; justify-content:center; gap:8px; top:auto; bottom:0; left:0; right:0; transform:none; background:#ffffffed; border-top:1px solid #e5e7eb; padding:8px 12px calc(8px + env(safe-area-inset-bottom)); backdrop-filter:blur(12px); }
  .v3-float a { flex:1; max-width:180px; height:44px; padding:0 8px; border-radius:6px; box-shadow:none; gap:5px; }
  .v3-float a span { font-size:11px; }
  .v3-float svg { width:17px; height:17px; }
  .v3-float .wa::after { display:none; }
  #back-to-top { bottom:82px!important; }
}
.site-result-grid > * { min-width:0; }

/* One clear next step at the end of tools, catalogs, and editorial pages. */
.site-conversion-strip { background:#fafaf7; border-top:1px solid #e8e8e3; border-bottom:1px solid #e8e8e3; }
.site-conversion-inner { max-width:1240px; margin:0 auto; padding:40px 24px; display:flex; align-items:center; justify-content:space-between; gap:40px; }
.site-conversion-copy { max-width:720px; min-width:0; }
.site-conversion-eyebrow { display:inline-flex; align-items:center; gap:8px; color:var(--red); font-size:11px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; }
.site-conversion-eyebrow::before { content:''; width:22px; height:1.5px; background:var(--red); }
.site-conversion-copy h2 { margin:10px 0 8px; color:var(--ink); font-family:var(--font-display); font-size:clamp(25px,3vw,34px); font-weight:400; line-height:1.2; letter-spacing:-.02em; }
.site-conversion-copy p { margin:0; max-width:680px; color:#5d646b; font-size:14px; line-height:1.7; }
.site-conversion-actions { display:flex; flex-shrink:0; align-items:center; gap:10px; }
.site-conversion-actions a { justify-content:center; white-space:nowrap; }
.site-conversion-actions .v3-btn-primary,.site-conversion-actions .v3-btn-outline { min-height:44px; padding:12px 20px; }
@media (max-width:1100px) {
  .site-conversion-inner { flex-direction:column; align-items:flex-start; gap:24px; }
}

/* Catalog navigation and filters remain close to the model list. */
.catalog-jump-nav { max-width:1240px; margin:0 auto; padding:16px 24px; display:flex; flex-wrap:wrap; gap:6px 24px; border-bottom:1px solid #e8e8e3; }
.catalog-jump-nav a { display:inline-flex; align-items:center; min-height:44px; color:#424951; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.site-catalog #product-catalog { padding-top:36px; padding-bottom:32px; }
.catalog-controls { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto; gap:12px 16px; padding:24px; margin:0 0 20px; background:#f7f7f4; border:1px solid #e3e3dc; border-radius:10px; }
.catalog-controls > div { min-width:0; }
.catalog-controls label { display:block; font-weight:600; font-size:13px; margin-bottom:8px; color:#333b43; }
.catalog-controls input,.catalog-controls select { display:block; width:100%; min-width:0; min-height:46px; border:1px solid #bdc1c4; border-radius:6px; padding:10px 12px; background:white; color:#2b3137; font:inherit; font-size:16px; }
#catalog-clear { align-self:end; min-height:46px; border:1px solid #bdc1c4; border-radius:6px; padding:10px 16px; background:white; font-size:13px; cursor:pointer; }
#catalog-status { grid-column:1/-1; font-size:13px; color:#59616a; margin:0; }
#catalog-spec-link { grid-column:1/-1; width:fit-content; color:#b8000e; font-size:14px; padding:6px 0; text-decoration:underline; text-underline-offset:3px; }
#catalog-empty { grid-column:1/-1; font-size:14px; line-height:1.7; margin:0; }
.catalog-more-wrap { display:flex; justify-content:center; padding-top:16px; }
.catalog-enhanced .catalog-filter-buttons { display:none; }
.catalog-spec-wrap { max-width:1240px; margin:0 auto 32px; padding:0 24px; }
.catalog-specs { border:1px solid #d9dcde; border-radius:10px; overflow:hidden; }
.catalog-specs > summary { cursor:pointer; padding:20px 24px; color:#272d34; font-weight:600; font-size:16px; }
.catalog-specs > summary span { display:block; font-size:13px; font-weight:400; color:#657079; margin-top:6px; }
.catalog-specs > section { padding-top:24px; padding-bottom:24px; border-top:1px solid #d9dcde; }
.catalog-specs td a { display:inline-flex; min-height:44px; align-items:center; padding:6px 2px; }
.catalog-controls[hidden],#catalog-more[hidden],#catalog-empty[hidden],#catalog-spec-link[hidden],.catalog-enhanced [hidden],.catalog-specs tr[hidden] { display:none!important; }
.site-catalog [data-catalog-model] { scroll-margin-top:90px; }
.site-hero-dark .project-example-link { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }
.site-hero-dark .project-example-link:hover { background:#ffffff26; }
.project-brief-link { margin-top:20px; }
.project-brief-link a { display:inline-block; min-height:44px; padding:10px 0; color:#f0f1f2; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
@media (max-width:768px) {
  .catalog-jump-nav { padding:10px 20px; gap:0 20px; }
  .catalog-jump-nav a { font-size:13px; }
  .catalog-controls { grid-template-columns:minmax(0,1fr) auto; padding:18px; gap:12px; }
  .catalog-search-field { grid-column:1/-1; }
  .catalog-controls select { padding-right:20px; }
  .catalog-enhanced .catalog-filter-buttons { display:none; }
  .catalog-spec-wrap { padding:0 16px; }
  .catalog-specs > summary { padding:18px; }
  .site-catalog #product-catalog { padding-top:28px; }
}
@media (max-width:360px) {
  #indoor .site-result-grid,#commercial .site-result-grid { grid-template-columns:minmax(0,1fr)!important; }
}
@media (max-width:768px) {
  .site-conversion-inner { display:block; padding:32px 20px 36px; }
  .site-conversion-copy h2 { font-size:27px; margin-top:9px; }
  .site-conversion-copy p { font-size:14px; line-height:1.65; }
  .site-conversion-actions { display:grid; grid-template-columns:1fr; gap:8px; margin-top:20px; }
  .site-conversion-actions a { width:100%; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } }

/* Searchable guides and reusable calculator results. */
.site-blog .guide-discovery { max-width:1024px; margin:32px auto 24px; padding:0 24px!important; }
.guide-search-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:12px; margin-bottom:20px; }
.guide-search-row label { display:block; color:#262d34; font-size:18px; font-weight:600; margin-bottom:10px; }
.guide-search-row input { display:block; width:100%; min-width:0; min-height:48px; padding:12px 14px; background:#fff; border:1px solid #b8bec4; border-radius:8px; font-size:16px; }
.guide-search-row button,.guide-empty button { min-height:48px; padding:10px 16px; background:#f7f7f4; border:1px solid #c6cbce; border-radius:8px; font-size:14px; cursor:pointer; }
.guide-discovery .filter-btn { min-height:44px; padding:10px 14px; border:1px solid #d9dddf; border-radius:22px; background:#fff; color:#505a62; font-size:13px; font-weight:500; cursor:pointer; }
.guide-discovery .filter-btn:hover { background:#f4f4ef; }
.guide-discovery .filter-btn[aria-pressed="true"] { background:#24282c; border-color:#24282c; color:white; }
.guide-discovery .mb-8 { margin-bottom:16px; }
#guide-status { color:#626b73; font-size:13px; line-height:1.6; }
.guide-empty { padding:36px 20px; text-align:center; border:1px solid #e0e3e4; border-radius:10px; background:#fafaf7; }
.guide-empty h2 { font-size:22px; color:#252b31; margin:0 0 10px; }
.guide-empty p { color:#606a72; font-size:15px; margin-bottom:18px; }
.guide-more-wrap { display:flex; justify-content:center; margin-top:28px; }
.site-blog .article-card[hidden],#guide-more[hidden],#empty-state[hidden],#guide-discovery[hidden],#estimate-actions[hidden],#estimate-copy-fallback[hidden] { display:none!important; }
.estimate-actions { padding:24px; margin-block:20px; border:1px solid #d9deda; border-radius:12px; background:#fafaf7; }
.estimate-actions h3 { font-size:19px; font-weight:600; line-height:1.35; color:#272e34; margin:0 0 10px; }
.estimate-actions > p { font-size:14px; line-height:1.65; color:#5c666e; margin:0 0 18px; }
.estimate-buttons { display:flex; flex-wrap:wrap; gap:10px; }
.estimate-buttons > * { flex:1; justify-content:center; text-align:center; min-height:46px; padding:12px 16px; font-size:14px; }
.estimate-buttons :disabled,.estimate-buttons [aria-disabled="true"] { opacity:.5; cursor:not-allowed; transform:none; box-shadow:none; }
.estimate-actions small { display:block; margin-top:14px; font-size:12px; line-height:1.6; color:#69737b; }
.estimate-actions #estimate-status { margin:14px 0 0; color:#515c65; font-size:13px; }
.estimate-actions #estimate-status:empty { display:none; }
.estimate-contact-alternative { text-align:center; font-size:13px; color:#5b646c; }
.estimate-contact-alternative a { display:inline-block; min-height:44px; padding:10px 0; color:#b8000e; text-decoration:underline; text-underline-offset:3px; }
#estimate-copy-fallback { margin-top:18px; }
#estimate-copy-fallback label { display:block; font-size:14px; margin-bottom:8px; }
#estimate-copy-text { display:block; width:100%; min-width:0; padding:12px; border:1px solid #bac1c6; border-radius:6px; font-size:16px; line-height:1.55; resize:vertical; background:white; }
#estimate-copy-fallback button { min-height:44px; margin-top:8px; padding:8px 16px; border:1px solid #bac1c6; border-radius:6px; background:white; font-size:14px; }
.site-tool input[aria-invalid="true"] { border-color:#b8000e!important; }
.sol-sizing-note { padding:12px; margin-bottom:14px; border:1px solid #e8cf9f; border-radius:8px; background:#fff9ee; color:#795316; font-size:12px; line-height:1.7; }
@media(max-width:480px) {
 .site-blog .guide-discovery { padding:0 20px!important; margin-top:24px; }
 .guide-search-row { grid-template-columns:minmax(0,1fr); }
 .guide-search-row button { justify-self:start; min-height:44px; }
 .estimate-actions { padding:20px; }
 .estimate-buttons { flex-direction:column; }
}
/* Navigation disclosures for mouse, touch and keyboard. */
.v3-nav-item > a { white-space:nowrap; }
.v3-nav.nav-enhanced .v3-nav-item > a { padding-right:0; }
.v3-nav.nav-enhanced .v3-nav-item > a::after { display:none; }
.v3-submenu-toggle { display:inline-flex; align-items:center; justify-content:center; vertical-align:middle; width:28px; min-height:44px; border:0; border-radius:4px; background:transparent; color:#666e75; cursor:pointer; padding:0; }
.v3-submenu-toggle:hover { background:#f6f6f3; color:#b8000e; }
.v3-submenu-toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
.v3-resource-menu { grid-template-columns:1.05fr 1fr 1fr; gap:18px; width:640px; max-width:calc(100vw - 40px); padding:18px!important; left:auto; right:0; }
.v3-nav-item:is(:hover,:focus-within) > .v3-resource-menu { display:grid; }
.v3-nav.nav-enhanced .v3-nav-item > .v3-dropdown { display:none; }
.v3-nav.nav-enhanced .v3-nav-item.is-open > .v3-dropdown { display:block; opacity:1; transform:none; }
.v3-nav.nav-enhanced .v3-nav-item.is-open > .v3-resource-menu { display:grid; }
.v3-resource-menu-intro { padding:4px 16px 4px 2px; border-right:1px solid var(--line); }
.v3-resource-menu-intro span,.v3-resource-menu-group>span { display:block; color:#b8000e; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin-bottom:8px; }
.v3-resource-menu-intro strong { display:block; font:400 23px/1.1 var(--font-display); color:var(--ink); margin-bottom:8px; }
.v3-resource-menu-intro p { margin:0; color:var(--text-2); font-size:12px; line-height:1.6; }
.v3-resource-menu-intro .v3-resource-menu-cta { display:inline-flex; padding:9px 0; margin-top:13px; color:#b8000e; font-size:12px; font-weight:700; }
.v3-resource-menu-group { min-width:0; }
.v3-resource-menu-group>a { padding:10px 9px; min-height:40px; color:var(--text-2); font-size:12px; }
.v3-resource-menu-group>a:hover { color:#b8000e; background:var(--bg-warm); }
@media(max-width:1100px) {
 body:has(.v3-nav.show) .v3-float { visibility:hidden; pointer-events:none; }
 .v3-nav { display:none; }
 .v3-nav-toggle { display:inline-flex; }
 .v3-nav.show { display:block; position:absolute; top:100%; left:0; right:0; max-height:calc(100dvh - 100px); overflow-y:auto; overscroll-behavior:contain; background:#fff; padding:12px 20px 20px; box-shadow:0 12px 24px #00000012; border-bottom:1px solid var(--line); }
 .v3-nav.show > a { display:flex; align-items:center; min-height:48px; }
 .v3-nav .v3-nav-item { display:block; position:relative; width:100%; margin:0; border-bottom:1px solid #eff0f1; }
 .v3-nav .v3-nav-item > a { display:inline-flex; align-items:center; min-height:48px; padding:10px 13px; }
 .v3-submenu-toggle { position:absolute; right:0; top:2px; width:48px; }
 .v3-dropdown { display:block; position:static; box-shadow:none; border:0; padding:0 0 10px 16px; min-width:0; opacity:1; transform:none; }
 .v3-dropdown a { min-height:44px; display:flex; align-items:center; padding:10px 12px; }
 .v3-resource-menu,.v3-nav-item:is(:hover,:focus-within) > .v3-resource-menu,.v3-nav.nav-enhanced .v3-nav-item.is-open > .v3-resource-menu { display:block; width:auto; max-width:none; padding:0 0 12px 16px!important; }
 .v3-resource-menu-intro { border:0; padding:8px 12px 12px; background:#f8f8f5; margin:0 12px 16px 0; border-radius:6px; }
 .v3-resource-menu-intro strong { font-size:21px; }
 .v3-resource-menu-group { margin-top:12px; }
 .v3-resource-menu-group > span { padding-left:12px; }
}
.site-next-reading { max-width:1192px; margin:40px auto; padding:28px 24px; border-top:1px solid #e2e3e5; }
.site-next-heading { display:flex; gap:20px; align-items:baseline; justify-content:space-between; margin-bottom:20px; }
.site-next-heading h2 { margin:0; font:400 28px/1.2 var(--font-display); }
.site-next-heading > a { color:#b8000e; font-size:14px; min-height:44px; display:inline-flex; align-items:center; }
.site-next-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.site-next-card { display:block; padding:20px; border:1px solid #e2e3e5; border-radius:8px; background:#fafaf7; color:#252b31; text-decoration:none; }
.site-next-card:hover { border-color:#b8000e; background:#fff; }
.site-next-card span { display:block; color:#b8000e; font-size:11px; text-transform:uppercase; letter-spacing:.06em; margin-bottom:10px; }
.site-next-card h3 { font-size:17px; margin:0 0 8px; }
.site-next-card p { color:#59636b; font-size:14px; line-height:1.65; margin:0; }
@media(max-width:640px) { .site-next-heading{display:block}.site-next-grid{grid-template-columns:1fr}.site-next-reading{padding:24px 20px;margin:24px auto} }
