/* Client override file */

/* WYS theme / Concrete 9.2 native editor compatibility.
 * Only edit mode. Keep persisted inner Bootstrap spans authoritative.
 * The full-width outer shell is not a design column.
 */
html.ccm-edit-mode :is(.section-split-roadmap, .section-guide-preview) > .container > .row > .col-sm-12:has(> .ccm-block-edit-layout) {
  display: block;
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 0;
  padding: 0 calc(var(--bs-gutter-x, 1.5rem) * .5);
}
html.ccm-edit-mode :is(.section-split-roadmap, .section-guide-preview) > .container > .row > .col-sm-12:has(> .ccm-block-edit-layout)::before {
  content: none;
}
/* Pixel transitions intentionally overlap public sections, but must not cover
 * the following native layout handle while editing. */
html.ccm-edit-mode .site-main .ccm-custom-style-container.section-resources.section-additional-resources {
  margin-bottom: 0;
  mask-image: none;
  -webkit-mask-image: none;
  z-index: auto;
}

/* WYS / Concrete 9.2: normalize only the extra full-width layout shell.
   Native inner Bootstrap classes retain responsibility for column widths.
   This deliberately does not turn malformed 12/0 columns into healthy pairs. */
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12:has(> .row) {
  display: block;
  flex: 0 0 100%;
  max-width: 100%;
  width: 100%;
  height: auto;
  padding: 0;
}
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row {
  margin-left: 0;
  margin-right: 0;
}

/* Transfer the existing roadmap skin only to a canonical, healthy 6/6 pair.
   Source design intentionally presents this native pair with a 7/5 visual ratio.
   Malformed 12/0 and other native configurations never match this skin. */
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) { align-items: stretch; gap: var(--grid-gutter-split-roadmap); }
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) > .col-sm-6 { margin-top: 0; height: auto; min-height: var(--section-split-roadmap-column-height); }
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) > :first-child {
  display: flex; flex-direction: column; justify-content: center;
  flex: 0 0 calc((100% - var(--grid-gutter-split-roadmap)) * 7 / 12);
  width: calc((100% - var(--grid-gutter-split-roadmap)) * 7 / 12);
  max-width: calc((100% - var(--grid-gutter-split-roadmap)) * 7 / 12);
  padding: var(--space-split-roadmap-column-padding) 0;
}
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) > :nth-child(2) {
  position: relative;
  flex: 0 0 calc((100% - var(--grid-gutter-split-roadmap)) * 5 / 12);
  width: calc((100% - var(--grid-gutter-split-roadmap)) * 5 / 12);
  max-width: calc((100% - var(--grid-gutter-split-roadmap)) * 5 / 12);
  padding: 0 0 0 var(--space-split-roadmap-column-padding);
}
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) > :nth-child(2)::before {
  content: ''; position: absolute; top: 0; bottom: 0; right: 0;
  left: var(--space-split-roadmap-column-padding); background: var(--color-neutral-200);
}
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) > :nth-child(2) > * { position: relative; z-index: 1; }
@media (max-width: 767px) {
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) > .col-sm-6 { flex: 0 0 100%; width: 100%; max-width: 100%; }
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) > :nth-child(2) { padding-right: var(--space-split-roadmap-column-padding); }
html:not(.ccm-edit-mode) .section-split-roadmap > .container > .row > .col-sm-12 > .row:has(> .col-sm-6:first-child + .col-sm-6:last-child) > :nth-child(2)::before { right: var(--space-split-roadmap-column-padding); }
}

/* Native child-page grid must shrink below the 440px mobile design cap. */
@media (max-width: 767px) {
  .site-main > .container { max-width: 100%; }
}

/* Transfer the source theme skin to Concrete 9.2 native inner columns. */
html:not(.ccm-edit-mode) :is(.section-guide-preview,.section-become-defender) > .container > .row > .col-sm-12:has(> .row) {
 display:block; flex:0 0 100%; width:100%; max-width:100%; min-width:0; height:auto; padding:0;
}
html:not(.ccm-edit-mode) .section-guide-preview > .container > .row > .col-sm-12:has(> .row)::before {content:none;}
html:not(.ccm-edit-mode) :is(.section-guide-preview,.section-become-defender) > .container > .row > .col-sm-12 > .row {margin-inline:0;}
html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row {

    align-items: flex-start;

}
html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :first-child {

    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
    width: 41.66666667%;

}
html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :nth-child(2) {

    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
    width: 58.33333333%;

}
html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :nth-child(2),
html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :nth-child(2) .ccm-area-block-list {

    align-items: center;
    display: flex;
    flex-direction: column;
    gap: var(--space-defender-flow);
    text-align: center;

}
html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :nth-child(2) .ccm-layout-area {

    min-height: var(--defender-content-height);

}
html:not(.ccm-edit-mode) .section-guide-preview > .container > .row > .col-sm-12 > .row {

    align-items: stretch;

}
html:not(.ccm-edit-mode) .section-guide-preview > .container > .row > .col-sm-12 > .row > :first-child {

    box-sizing: border-box;
    flex: 0 0 calc(100% * 5 / 12);
    height: var(--section-guide-column-height);
    max-width: calc(100% * 5 / 12);
    min-width: var(--section-guide-media-min-width);
    padding-right: var(--section-guide-media-padding-end);
    position: relative;
    width: calc(100% * 5 / 12);

}
html:not(.ccm-edit-mode) .section-guide-preview > .container > .row > .col-sm-12 > .row > :first-child::before {

    background: var(--color-neutral-200);
    bottom: 0;
    content: '';
    left: 15px;
    position: absolute;
    right: var(--section-guide-media-padding-end);
    top: 0;

}
html:not(.ccm-edit-mode) .section-guide-preview > .container > .row > .col-sm-12 > .row > :nth-child(2) {

    box-sizing: border-box;
    display: flex;
    flex: 0 0 calc(100% * 7 / 12);
    flex-direction: column;
    height: var(--section-guide-column-height);
    justify-content: center;
    max-width: calc(100% * 7 / 12);
    padding-bottom: var(--section-guide-content-padding-block);
    padding-top: var(--section-guide-content-padding-block);
    width: calc(100% * 7 / 12);

}
@media (max-width: 991px) {
html:not(.ccm-edit-mode) .section-guide-preview > .container > .row > .col-sm-12 > .row > :first-child,
html:not(.ccm-edit-mode) .section-guide-preview > .container > .row > .col-sm-12 > .row > :nth-child(2) {

        flex: 0 0 100%;
        max-width: 100%;
        width: 100%;
    
}
html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :first-child {

        display: none;
    
}
html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :nth-child(2) {

        flex: 0 0 100%;
        max-width: 100%;
        width: 100%;
    
}
}
/* Preserve source section flow through the additional native grid shell. */
html:not(.ccm-edit-mode) :is(.section-feature-grid,.section-resources) > .container > .row > .col-sm-12 > .row > .col-sm-12 { display:flex; flex-direction:column; align-items:stretch; }
html:not(.ccm-edit-mode) .section-feature-grid > .container > .row > .col-sm-12 > .row > .col-sm-12 { gap:var(--space-feature-grid-flow); }
html:not(.ccm-edit-mode) .section-resources > .container > .row > .col-sm-12 > .row > .col-sm-12 { gap:var(--space-resources-flow); }

/* Preserve source audience-action grid and centered CTA through native layout wrapper. */
html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :nth-child(2) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: var(--space-small-desktop);
    align-content: center;
}
html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :nth-child(2) > :not(.feature-link-small) {
    grid-column: 1 / -1;
}
html:not(.ccm-edit-mode) .section-call-to-action > .container > .row > .col-sm-12 > .row > .col-sm-12 {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 0;
    text-align: center;
}
@media (max-width: 767px) {
    html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :nth-child(2) {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Keep the resource roadmap decoration from covering the next native layout handle. */
html.ccm-edit-mode .site-main .section-resource-roadmap {
    margin-top: 0;
    z-index: auto;
}
html.ccm-edit-mode .site-main .section-resource-roadmap::before,
html.ccm-edit-mode .site-main .section-resource-roadmap::after {
    pointer-events: none;
}

/* Owner review: center text inside the existing 44px navigation targets. */
.site-header .titlebar :is(.titlebar-navigation, .titlebar-utility) .ccm-block-feature-link a.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
/* Resting-state transitions apply on pointer entry AND exit. Keep CMS UI out. */
html:not(.ccm-edit-mode) :is(.site-header, .site-main, .footer-shell, .resources-modal, .media-modal) :is(a, button, input[type="submit"], .resource-card, .resource-card img, .ccm-block-feature-link, .ccm-block-feature-link img, .ccm-block-feature-link svg),
html:not(.ccm-edit-mode) .footer-credit {
  transition-property: opacity, transform, color, background-color, border-color, filter, box-shadow, text-decoration-color !important;
  transition-duration: 600ms, 600ms, 220ms, 220ms, 220ms, 220ms, 220ms, 220ms !important;
  transition-timing-function: ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  html:not(.ccm-edit-mode) :is(.site-header, .site-main, .footer-shell, .resources-modal, .media-modal) :is(a, button, input[type="submit"], .resource-card, .resource-card img, .ccm-block-feature-link, .ccm-block-feature-link img, .ccm-block-feature-link svg),
  html:not(.ccm-edit-mode) .footer-credit { transition-duration: 0s !important; }
}

/* Owner review: a larger, centered CTA close beneath the resource cards. */
.site-main .section-additional-resources .resources-actions { margin-top: 12px !important; }
.site-main .section-additional-resources .resources-actions .col-sm-12 { justify-content: center !important; }
.site-main .section-additional-resources .resources-actions .mt-4 { margin-top: 0 !important; }
.site-main .section-additional-resources .resources-actions .ccm-block-feature-link .btn {
  min-height: 52px !important;
  min-width: 176px;
  padding: 14px 32px !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
}

/* Owner review: let the embedded form supply the visible modal heading. */
#wys-resources-modal #wys-resources-title { display: none; }
@media (min-width: 768px) {
  #wys-resources-modal .feature-bio-modal__dialog { width: min(880px, calc(100vw - 48px)); }
  #wys-resources-modal .resources-modal__content { padding: 40px 24px 24px; }
}

/* Resource modal: fixed close control, scrollable form, blurred overlay. */
#wys-resources-modal .resources-modal__fallback { display: none; }
#wys-resources-modal .feature-bio-modal__backdrop {
  background: rgba(0,0,0,.55);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}
#wys-resources-modal .feature-bio-modal__dialog {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding-top: 64px;
  opacity: 0;
  transform: translateY(18px) scale(.98);
  transition: opacity 250ms ease, transform 250ms ease;
}
#wys-resources-modal.is-open .feature-bio-modal__dialog { opacity: 1; transform: translateY(0) scale(1); }
#wys-resources-modal .resources-modal__content { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding-top: 0; }
#wys-resources-modal .feature-bio-modal__close { top: 12px; right: 16px; z-index: 20; }
@media (prefers-reduced-motion: reduce) {
  #wys-resources-modal, #wys-resources-modal .feature-bio-modal__dialog { transition: none; }
}

/* Center and balance the Red Flags section heading across viewport sizes. */
.site-main .feature-grid-heading :is(h3, h4) {
    text-align: center;
    margin-inline: auto;
    text-wrap: balance;
}
.site-main .feature-grid-heading h3 {
    font-size: var(--type-heading-h3) !important;
    line-height: 1;
    max-width: 30ch;
}
.site-main .feature-grid-heading h4 { max-width: 42ch; margin-top: 32px !important; }

/* Balanced statistic cards: consistent icon, headline, body, and citation rows. */
.site-main .signal-card { min-width: 0; padding: 32px 22px; justify-content: flex-start; }
.site-main .signal-card .ccm-block-feature-item { justify-content: flex-start; gap: 18px; }
.site-main .signal-card p:has(img) { height: 144px; flex: 0 0 144px; display:flex; align-items:center; justify-content:center; margin:0; }
.site-main .signal-card p img { width:144px; height:144px; object-fit:contain; margin:0; }
.site-main .signal-card h4 { font-size:clamp(26px,2.2vw,34px)!important; line-height:1.15!important; max-width:11ch; min-height:2.3em; display:flex; align-items:center; justify-content:center; text-wrap:balance; }
.site-main .signal-card p:not(:has(img)):not(.wys-stat-source) { color:#fff; font-size:17px; line-height:1.55; }
.site-main .signal-card .wys-stat-source { margin-top:auto; padding-top:6px; color:#999; font-size:12px; line-height:1.5; }
.site-main .signal-card .wys-stat-source :is(small,em) { font-size:inherit; line-height:inherit; color:inherit; font-style:normal; }
@media (min-width:768px) { .site-main .signal-card .wys-stat-source { min-height:90px; } }
@media (max-width:991px) and (min-width:768px) { .site-main .signal-card { padding:28px 16px; } .site-main .signal-card p:not(:has(img)):not(.wys-stat-source) { font-size:16px; } }

.site-main .signal-card { min-height:560px; }
@media (max-width:767px) { .site-main .signal-card { min-height:520px; } }

.site-main .section-guide-preview .wys-conversation-download-title {
    color:var(--color-brand-primary)!important;
    font-size:clamp(16px,1.25vw,20px)!important;
    line-height:1.35!important;
}

.site-main .section-additional-resources h3 { text-align:center; margin-inline:auto; }

/* Resource share control: expand without moving the card or its content. */
html:not(.ccm-edit-mode) .site-main .resource-card .resource-card-share {
    background-image:none;
    color:#fff;
    border-radius:24px;
    overflow:hidden;
    transition:width 320ms cubic-bezier(.16,1,.3,1),background-color 220ms ease,color 220ms ease,transform 320ms cubic-bezier(.16,1,.3,1),box-shadow 220ms ease!important;
}
.site-main .resource-card .resource-card-share::before {
    content:""; position:absolute; width:26px; height:26px; right:9px; top:9px;
    background:currentColor;
    -webkit-mask:url('../images/resource-library/share-icon.svg') center/contain no-repeat;
    mask:url('../images/resource-library/share-icon.svg') center/contain no-repeat;
}
.site-main .resource-card .resource-card-share::after {
    content:"Share Resource"; position:absolute; left:14px; right:42px; top:0; height:44px;
    display:flex; align-items:center; justify-content:center;
    font-family:var(--font-body); font-size:14px; font-weight:600; white-space:nowrap;
    opacity:0; transform:translateX(8px); transition:opacity 180ms ease,transform 260ms ease;
}
.site-main .resource-card .resource-card-share:is(:hover,:focus-visible,[aria-expanded="true"]) {
    width:178px; max-width:calc(100% - 24px); background-color:#fff; color:var(--color-brand-primary);
    opacity:1; transform:none; box-shadow:0 8px 24px rgba(0,0,0,.28);
}
.site-main .resource-card .resource-card-share:is(:hover,:focus-visible,[aria-expanded="true"])::after { opacity:1; transform:translateX(0); }
.site-main .resource-card .resource-card-share:focus-visible { outline:2px solid var(--color-brand-primary); outline-offset:3px; }
@media (prefers-reduced-motion:reduce) {
    .site-main .resource-card .resource-card-share,.site-main .resource-card .resource-card-share::after { transition:none!important; }
}

/* Protect the portrait's headroom throughout the Defender parallax range. */
.site-main .section-become-defender.has-surface-parallax {
    --surface-parallax-range:24px;
    background-color:#000!important;
    background-size:contain!important;
    background-position:left clamp(0px,calc(12px + var(--surface-parallax-y,0px)),24px)!important;
    background-repeat:no-repeat;
}
@media (max-width:767px) {
    .site-main .section-become-defender.has-surface-parallax {
        background-position:28% clamp(0px,calc(12px + var(--surface-parallax-y,0px)),24px)!important;
    }
}

/* Footer hierarchy and shared desktop/mobile navigation interaction. */
.footer-shell .footer-credit { font-size:10px!important; color:#888!important; letter-spacing:.04em; }
.footer-shell .footer-credit:hover,.footer-shell .footer-credit:focus-visible { color:#bbb!important; }
.footer-shell .footer-navigation,.footer-shell .footer-navigation .ccm-area-block-list { padding-top:0!important; }
.footer-shell .footer-brand img { height:44px; object-fit:contain; object-position:left center; }
.footer-shell .footer-utility-links { display:flex; align-items:center; gap:8px; }
.footer-shell .footer-utility-links .ccm-block-feature-link:last-child { display:block!important; }
.footer-shell .footer-utility-links .ccm-block-feature-link:last-child a {
    display:inline-flex!important; visibility:visible!important; opacity:1!important;
    width:44px!important; min-width:44px; height:44px; font-size:0!important; padding:0!important; color:#fff!important;
}
.footer-shell .footer-utility-links .ccm-block-feature-link:last-child a svg { display:none!important; }
.footer-shell .footer-utility-links .ccm-block-feature-link:last-child a::before {
    content:""; display:block; width:22px; height:22px; background:#fff;
    -webkit-mask:url('../images/icon-user-outline.svg') center/contain no-repeat;
    mask:url('../images/icon-user-outline.svg') center/contain no-repeat;
}
:is(.footer-shell .footer-navigation,.footer-shell .footer-utility-links,.titlebar-navigation,.titlebar-utility) .ccm-block-feature-link a.btn {
    border-radius:var(--radius-medium)!important; padding-inline:10px!important;
}
:is(.footer-shell .footer-navigation,.footer-shell .footer-utility-links,.titlebar-navigation,.titlebar-utility) .ccm-block-feature-link a.btn:is(:hover,:focus-visible) {
    background:var(--color-brand-primary)!important; color:#fff!important; opacity:1!important;
}
@media(min-width:992px) {
    .footer-shell .footer-brand p { max-width:50%; }
    .footer-shell .footer-glass > .row { align-items:flex-start; }
    .footer-shell .footer-navigation,.footer-shell .footer-utility-links { min-height:44px; }
}

/* A brief optical focus accent; headings remain crisp and readable at rest. */
@keyframes wys-title-focus { from { filter:blur(3px); } to { filter:blur(0); } }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
    html:not(.ccm-edit-mode) .site-main :is(.hero-title h1,.feature-grid-heading h3,.section-guide-preview h3,.section-additional-resources h3):hover {
        animation:wys-title-focus 650ms cubic-bezier(.16,1,.3,1) both;
    }
}

.site-main .section-feature-grid .feature-link-small a.btn {
    width:260px!important; max-width:100%; min-height:44px;
    display:inline-flex; align-items:center; justify-content:center;
    padding-inline:20px!important; white-space:normal; text-align:center;
}
@media(max-width:767px) {
    .site-main .section-feature-grid .feature-link-small a.btn { width:100%!important; }
}

.site-main .section-split-roadmap ol,
.site-main .section-split-roadmap ol :is(li,strong,span) { color:var(--color-brand-accent)!important; }
.site-main .section-split-roadmap ol:has(.wys-typed-step) { padding-left:0; list-style:none; }
.site-main .section-split-roadmap .wys-typed-step { display:grid; grid-template-columns:2ch minmax(0,1fr); gap:.4em; }
.site-main .section-split-roadmap .wys-step-number { display:inline-block; font-variant-numeric:tabular-nums; transform-origin:center; }

.site-main .section-split-roadmap ol .wys-step-number,
.site-main .section-split-roadmap ol li::marker { color:#fff!important; }

@media(prefers-reduced-motion:reduce) { html:not(.ccm-edit-mode) .site-main .resource-card .resource-card-share { transition:none!important; } }

/* Review refinements: one active reading line and balanced single-line actions. */
.site-main .section-split-roadmap .wys-typed-step { transform-origin:left center; }
.site-main .feature-grid-heading h4 { color:var(--color-brand-primary)!important; }
.site-main .section-feature-grid .feature-link-small a.btn { white-space:nowrap; }
@media(max-width:767px) {
 .site-main .section-feature-grid .row > .col-sm-6:has(> .feature-link-small) { flex:0 0 100%;max-width:100%;width:100%;text-align:center; }
 .site-main .section-feature-grid .feature-link-small a.btn { width:300px!important;max-width:100%; }
}

.site-main .signal-card { min-height:510px; padding:26px 20px 22px; text-align:center; }
.site-main .signal-card .ccm-block-feature-item { width:100%;align-items:center;text-align:center;gap:16px; }
.site-main .signal-card :is(h4,p) { margin-left:auto;margin-right:auto;text-align:center;width:100%; }
.site-main .signal-card h4 { font-size:clamp(28px,3.2vw,46px)!important;max-width:min(11ch,100%);line-height:1.12!important;min-height:2.24em; }
.site-main .signal-card .wys-stat-source { min-height:0;margin-bottom:0;padding-top:8px;width:100%; }
@media(max-width:767px) { .site-main .signal-card { min-height:490px; } .site-main .signal-card h4 { font-size:38px!important; } }

html:not(.ccm-edit-mode) .site-main .section-guide-preview h3 { margin-bottom:12px; }
html:not(.ccm-edit-mode) .site-main .section-guide-preview h3 + h4 { margin-top:0; }
@media(min-width:992px) {
 html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row { align-items:stretch; }
 html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :first-child { height:auto;min-height:0; }
 html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :first-child::before { top:-20px;bottom:-20px; }
 html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :nth-child(2) { height:auto;padding-block:0; }
}
/* Shared share pill/menu geometry and crisis-CTA typography. */
.site-main .resource-card { --wys-share-width:196px; }
.site-main .resource-card .resource-card-share::after { font-family:var(--font-terminal);font-variation-settings:var(--font-terminal-settings-regular-extended);font-weight:400;font-size:14px;text-transform:uppercase; }
.site-main .resource-card .resource-card-share:is(:hover,:focus-visible,[aria-expanded="true"]) { width:var(--wys-share-width);max-width:calc(100% - 40px);background:var(--color-brand-primary);color:#fff; }
.site-main .resource-card .resource-share-menu { box-sizing:border-box;width:var(--wys-share-width);max-width:calc(100% - 40px);right:20px;min-width:0; }
.site-main .resource-card .resource-card-share { right:20px; }
html:not(.ccm-edit-mode) .site-main .section-guide-preview h3 + h4 { margin-top:0!important; }

/* Crisis CTA: iOS-style emphasis with a single spring settle, no layout shift. */
.site-header .titlebar-fixed-action {
 transform-origin:right center;
 transform:scale(1);
 border:0!important;
 transition:transform 520ms cubic-bezier(.22,1,.36,1),background-color 220ms ease,box-shadow 400ms ease,text-shadow 300ms ease!important;
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .site-header .titlebar-fixed-action:hover {
  animation:none;
  transform:scale(1.10,1.12);
  transition-timing-function:cubic-bezier(.2,1.65,.35,1),ease,ease,ease!important;
  border:0!important;
  box-shadow:0 14px 32px rgba(0,0,0,.38);
  text-shadow:0.35px 0 currentColor,-0.35px 0 currentColor;
 }
}
.site-header .titlebar-fixed-action:focus-visible { outline:3px solid #fff;outline-offset:5px;box-shadow:0 8px 24px rgba(0,0,0,.3); }
@media (prefers-reduced-motion:reduce) {
 .site-header .titlebar-fixed-action { animation:none!important;transition:none!important;transform:none!important; }
}

/* Balance the animated headline without isolating its last word on phones. */
@media (max-width:767px) {
 .site-main .hero-title h1 { text-wrap:balance; }
}

/* Compact resource popup; the embedded form retains its own inner gutter. */
#wys-resources-modal .feature-bio-modal__dialog { padding-top:44px; }
#wys-resources-modal .resources-modal__content { padding:0 8px 0; }
@media (max-width:767px) {
 #wys-resources-modal .resources-modal__content { padding:0; }
 #wys-resources-modal .feature-bio-modal__close { top:8px;right:10px; }
}

/* Even line lengths for statistic descriptions at every responsive width. */
.site-main .signal-card p:not(:has(img)):not(.wys-stat-source) { text-wrap:balance; }
/* Mobile Defender composition: centered portrait above the message, fading to black. */
@media (max-width:767px) {
 .site-main .section-become-defender.has-surface-parallax {
  background-color:#000!important;
  background-image:linear-gradient(to bottom,transparent 260px,rgba(0,0,0,.75) 400px,#000 560px),linear-gradient(to right,#000 0px,rgba(0,0,0,.75) 24px,transparent 110px),url('../images/become-defender-raw-1.png')!important;
  background-size:100% 100%,1120px 560px,1120px 560px!important;
  background-position:center top,calc(50% + 249px) clamp(0px,calc(12px + var(--surface-parallax-y,0px)),24px),calc(50% + 249px) clamp(0px,calc(12px + var(--surface-parallax-y,0px)),24px)!important;
  padding-top:360px!important;
  padding-bottom:64px!important;
  min-height:760px;
 }
 .site-main .section-become-defender h4 { text-wrap:balance; }
}

/* Align only the emergency section title and CTA to its reading edge. */
.site-main .section-split-roadmap h3 { text-align:left!important;margin-inline:0!important;align-self:flex-start; }
.site-main .section-split-roadmap .ccm-block-feature-link { text-align:left!important;align-self:flex-start; }
.site-main .section-split-roadmap .ccm-block-feature-link :is(.ccm-block-feature-link-text,.mt-4) { text-align:left!important;justify-content:flex-start!important; }
.site-main .section-split-roadmap .ccm-block-feature-link .btn { margin-inline:0!important; }
/* Retain the native navigation content for later; hide the desktop middle links. */
.titlebar-home-return { display:none; }
@media (min-width:768px) {
 .site-header .titlebar-navigation { display:none!important; }
 .site-header .titlebar-logo { display:flex;align-items:center;gap:20px;flex:0 1 auto;width:auto;max-width:none; }
 .site-header .titlebar-utility { margin-left:auto;flex:0 0 auto;width:auto;max-width:none; }
 .site-header .titlebar-home-return { display:inline-flex;align-items:center;align-self:center;margin:0!important;font-family:var(--font-terminal);font-size:13px;font-weight:400;line-height:1.35;text-transform:uppercase;color:var(--titlebar-foreground);opacity:.8;text-decoration:none;padding:8px;border-radius:20px;white-space:nowrap; }
 .site-header .titlebar-home-return:is(:hover,:focus-visible) { opacity:1;background:var(--color-brand-primary);color:#fff; }
}

/* Compact card flow: sources follow the description instead of being pushed down. */
.site-main .signal-card { min-height:0;padding:24px 20px; }
.site-main .signal-card .ccm-block-feature-item { min-height:0;height:auto;margin-bottom:0;gap:12px; }
.site-main .signal-card .wys-stat-source { margin-top:8px;padding-top:0;min-height:0; }
@media(max-width:991px) {
 .site-main .signal-card { min-height:0!important;height:auto; }
 .site-main .signal-card .ccm-block-feature-item { flex:0 1 auto; }
}

/* Stack the paired resource CTAs on a common mobile center line. */
@media(max-width:767px) {
 .site-main .section-feature-grid .row:has(> .col-sm-6 > .feature-link-small) { display:flex;flex-direction:column;align-items:center;gap:20px; }
 .site-main .section-feature-grid .row > .col-sm-6:has(> .feature-link-small) { flex:0 0 auto;width:100%;max-width:100%;text-align:center!important; }
 .site-main .section-feature-grid .feature-link-small { width:100%;margin:0!important;align-self:center; }
 .site-main .section-feature-grid .feature-link-small :is(.ccm-block-feature-link,.ccm-block-feature-link-text,.mt-4) { width:100%;text-align:center!important;justify-content:center!important;margin:0!important; }
 .site-main .section-feature-grid .feature-link-small .btn { width:300px!important;max-width:100%;margin-inline:auto!important; }
}

/* Stacked guide preview: reserve image space in normal flow before the heading. */
@media(max-width:991px) {
 html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row { row-gap:32px; }
 html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :first-child { height:auto;min-height:0;min-width:0;padding:0 15px; }
 html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :first-child::before { position:relative;display:block;inset:auto;width:100%;aspect-ratio:1 / 1;margin:0; }
 html:not(.ccm-edit-mode) .site-main .section-guide-preview > .container > .row > .col-sm-12 > .row > :nth-child(2) { height:auto;min-height:0;padding-top:0;align-content:start; }
 html:not(.ccm-edit-mode) .site-main .section-guide-preview h3 { margin-top:0!important; }
}

/* Clean share dropdown, tucked beneath the pill without the diamond pointer. */
.site-main .resource-card .resource-share-menu::after { content:none!important;display:none!important; }
.site-main .resource-card .resource-share-menu { top:72px;z-index:7;padding-top:10px; }
.site-main .resource-card .resource-card-share { z-index:8; }

/* Mobile Additional Resources: two across, with an odd final card centered. */
@media(max-width:767px) {
 .site-main .section-additional-resources .col-sm-12:has(> .resource-card) { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 12px; }
 .site-main .section-additional-resources .resource-card { grid-column:span 2;width:100%;min-width:0;height:clamp(250px,72vw,380px);min-height:0;--wys-share-width:196px; }
 .site-main .section-additional-resources .resource-card:last-child:nth-child(odd) { grid-column:2 / span 2; }
 .site-main .section-additional-resources .resource-card .ccm-block-feature-text { padding:12px 10px;min-height:92px;height:auto; }
 .site-main .section-additional-resources .resource-card h4 { font-size:clamp(16px,4vw,21px)!important;line-height:1.15;overflow-wrap:normal; }
 .site-main .section-additional-resources .resource-card .resource-card-unavailable { font-size:10px;line-height:1.3; }
 .site-main .section-additional-resources .resource-card .resource-card-share { top:8px;right:8px; }
 .site-main .section-additional-resources .resource-card .resource-card-share:is(:hover,:focus-visible,[aria-expanded="true"]) { max-width:calc(100% - 16px); }
 .site-main .section-additional-resources .resource-card .resource-card-share::after { font-size:10px; }
 .site-main .section-additional-resources .resource-card .resource-share-menu { right:8px;top:60px;max-width:calc(100% - 16px); }
 .site-main .section-additional-resources .resource-share-menu [role="menuitem"] { font-size:12px;padding:8px; }
}

/* v48: page CTA uses the shared resource menu. */
.site-main .page-share-container { position:relative;display:inline-block;max-width:100%;z-index:20; }
.site-main .page-share-trigger { position:relative;z-index:22; }
.site-main .page-share-menu { top:calc(100% - 6px);right:0;width:196px;max-width:100%;min-width:0;z-index:21;padding-top:16px;text-align:left; }
.site-main .page-share-menu::after { content:none!important;display:none!important; }
.site-main .section-call-to-action { overflow:visible; }
.site-main .section-call-to-action:has(.page-share-trigger[aria-expanded="true"]) { z-index:auto; }

/* v51: matching menu emphasis and breathing room in the mobile bar. */
.site-header .titlebar .titlebar-menu-toggle:is(:hover,:focus-visible,[aria-expanded="true"]) {
 background-color:var(--color-brand-primary)!important;color:#fff!important;opacity:1!important;
}
@media(max-width:767px) {
 .site-header .titlebar .titlebar-utility .ccm-block-feature-link a.btn,
 .site-header .titlebar .titlebar-menu-toggle {
  box-sizing:border-box;height:34px!important;min-height:34px!important;max-height:34px;
  padding-block:0!important;align-items:center;justify-content:center;
 }
 .site-header .titlebar .titlebar-menu-toggle,
 .site-header .titlebar .titlebar-utility > .ccm-block-feature-link ~ .ccm-block-feature-link a.btn {
  width:34px!important;min-width:34px!important;padding-inline:0!important;
 }
}

/* v52: inset, optically centered mobile logo. */
@media(max-width:767px) {
 .site-header .titlebar {
  --titlebar-logo-width:clamp(96px,25vw,120px);
  --titlebar-logo-height:clamp(23px,6vw,28px);
 }
 .site-header .titlebar > .titlebar-glass > .row > .titlebar-logo {
  padding-left:6px!important;box-sizing:content-box;align-items:center;
 }
}

/* v54: brief blink, then typed reveal, with a readable pause. */
.site-header .crisis-typing-label { display:inline-block;white-space:nowrap; }
@keyframes wys-crisis-type {
 0%,62% { opacity:1;clip-path:inset(0 0 0 0);animation-timing-function:cubic-bezier(.4,0,.2,1); }
 74%,79% { opacity:1;clip-path:inset(0 100% 0 0);animation-timing-function:steps(23,end); }
 100% { opacity:1;clip-path:inset(0 0 0 0); }
}
@media(prefers-reduced-motion:no-preference) {
 .site-header .crisis-typing-label { animation:wys-crisis-type 3.4s steps(23,end) infinite; }
 .site-header .titlebar-fixed-action:is(:hover,:focus) .crisis-typing-label { animation:none;opacity:1;clip-path:none; }
}

/* v57: readable share label with a clear eight-pixel menu gap. */
@media(max-width:767px) {
 .site-main .section-additional-resources .resource-card .resource-card-share::after {
  font-size:14px;line-height:1.1;white-space:normal;left:10px;right:38px;text-align:center;
 }
}
.site-main .page-share-menu { top:calc(100% + 8px);padding-top:10px; }

/* v58: show the home return link on roomy mobile widths. */
@media(min-width:640px) and (max-width:767px) {
 .site-header .titlebar > .titlebar-glass > .row > .titlebar-logo {
  flex:0 1 auto;width:auto;max-width:none;gap:12px;
 }
 .site-header .titlebar-home-return {
  display:inline-flex;align-items:center;align-self:center;margin:0!important;
  font-family:var(--font-terminal);font-size:13px;font-weight:400;line-height:1.35;
  text-transform:uppercase;color:var(--titlebar-foreground);opacity:.8;text-decoration:none;padding:8px;border-radius:20px;white-space:nowrap;
 }
 .site-header .titlebar-home-return:is(:hover,:focus-visible) { opacity:1;background:var(--color-brand-primary);color:#fff; }
}

/* v59: retain full-desktop card proportions at every grid width. */
.site-main .section-additional-resources .resource-card {
 aspect-ratio:421 / 574;height:auto!important;min-height:0!important;container-type:inline-size;
}
.site-main .section-additional-resources .resource-card > .ccm-block-feature-item {
 position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;
}
.site-main .section-additional-resources .resource-card .ccm-block-feature-text {
 min-height:clamp(76px,32cqw,134px);height:auto;padding:clamp(10px,5cqw,24px);
}
.site-main .section-additional-resources .resource-card h4 {
 font-size:clamp(14px,5.7cqw,24px)!important;line-height:1.15;
}

/* v60: balance the coming-soon title at every viewport width. */
.site-main .section-coming-soon h3 { text-wrap:balance; }

/* v61: use the desktop split while the portrait is on the left. */
@media(min-width:768px) and (max-width:991px) {
 html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :first-child {
  display:block;flex:0 0 41.666667%;width:41.666667%;max-width:41.666667%;
 }
 html:not(.ccm-edit-mode) .section-become-defender > .container > .row > .col-sm-12 > .row > :nth-child(2) {
  flex:0 0 58.333333%;width:58.333333%;max-width:58.333333%;gap:24px;
 }
 .site-main .section-become-defender h4 { font-size:clamp(16px,2.1vw,21px);text-wrap:balance;padding-inline:0; }
 .site-main .section-become-defender img.ccm-image-block { width:100%;height:auto;max-height:none;object-fit:contain; }
}

/* v62: simplified footer and stable legal-copy measure. */
.footer-shell .footer-navigation { display:none!important; }
.footer-shell .footer-brand p { width:280px;max-width:100%;text-wrap:pretty; }
@media(min-width:768px) {
 .footer-shell .footer-brand { flex:0 0 66.666667%;width:66.666667%;max-width:66.666667%; }
 .footer-shell .footer-utility { margin-left:auto; }
 .footer-shell .footer-brand p { width:320px; }
}
@media(min-width:992px) { .footer-shell .footer-brand p { width:360px;max-width:100%; } }
@media(min-width:1200px) { .footer-shell .footer-brand p { width:440px; } }
@media(min-width:1400px) { .footer-shell .footer-brand p { width:528px; } }

/* v63: give the desktop Defender message room for two balanced lines. */
@media(min-width:992px) {
 .site-main .section-become-defender h4 { padding-inline:0;text-wrap:balance;width:100%; }
}

/* v64: avoid an isolated final word in the hero introduction. */
.site-main .content-header p { text-wrap:pretty; }

/* v65: wider Give Today pill, with space reserved to avoid hover movement. */
.site-header .titlebar .titlebar-utility > .ccm-block-feature-link:first-child a.btn {
 padding-inline:20px!important;
}

/* v66: quick, spring-like button expansion with a smooth return. */
html:not(.ccm-edit-mode) :is(.site-header,.site-main,.footer-shell) :is(a.btn,button,a[data-media-modal-url],.titlebar-fixed-action,.titlebar-home-return):not(.fms-video-preview__play) {
 transition:transform 240ms cubic-bezier(.2,1.55,.4,1),background-color 160ms ease,color 160ms ease,box-shadow 200ms ease,width 240ms cubic-bezier(.2,1,.4,1)!important;
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 html:not(.ccm-edit-mode) :is(.site-header,.site-main,.footer-shell) :is(a.btn,button,a[data-media-modal-url],.titlebar-fixed-action,.titlebar-home-return):not(.fms-video-preview__play):hover {
  transform:scale(1.06)!important;
 }
 html:not(.ccm-edit-mode) .site-header a.titlebar-fixed-action:hover { transform:scale(1.10,1.12)!important; }
 html:not(.ccm-edit-mode) .site-main .resource-card-share { transform-origin:right center; }
}
@media(prefers-reduced-motion:reduce) {
 html:not(.ccm-edit-mode) :is(.site-header,.site-main,.footer-shell) :is(a.btn,button,a[data-media-modal-url],.titlebar-fixed-action,.titlebar-home-return):not(.fms-video-preview__play) { transition:none!important; }
}

/* v69: brand-orange sharing prompt with the crisis text cycle. */
.site-main .section-call-to-action h4 {
 color:var(--color-brand-accent)!important;width:fit-content;max-width:100%;margin-inline:auto;text-wrap:balance;
}
@media(prefers-reduced-motion:no-preference) {
 html:not(.ccm-edit-mode) .site-main .section-call-to-action h4 { animation:wys-crisis-type 3.4s steps(23,end) infinite; }
}

/* v70: roomier mobile glass caption and independent full-card action. */
.site-main .resource-card .resource-card-hitarea {
 position:absolute;inset:0;z-index:4;border-radius:inherit;display:block;background:transparent!important;
 transform:none!important;
}
.site-main .resource-card .resource-card-hitarea:focus-visible { outline:3px solid var(--color-brand-primary);outline-offset:-4px; }
.site-main .resource-card > .ccm-block-feature-item { transition:transform 240ms cubic-bezier(.2,1.55,.4,1),filter 240ms ease; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .site-main .resource-card:has(.resource-card-hitarea:is(:hover,:focus-visible)) > .ccm-block-feature-item { transform:scale(1.025);filter:brightness(1.08); }
}
@media(max-width:767px) {
 .site-main .section-additional-resources .resource-card .ccm-block-feature-text { min-height:116px;padding:14px 10px 16px; }
 .site-main .section-additional-resources .resource-card h4 { font-size:clamp(16px,5.7cqw,24px)!important; }
 .site-main .section-additional-resources .resource-card .ccm-block-feature-text p { margin-top:10px!important;margin-bottom:0!important; }
 .site-main .section-additional-resources .resource-card .ccm-block-feature-text a { font-size:12px!important;line-height:1.2;padding:10px 14px!important;min-height:34px; }
}
@media(prefers-reduced-motion:reduce) { .site-main .resource-card > .ccm-block-feature-item { transition:none; } }

/* Resource format badge sits opposite the independent share control. */
.site-main .resource-card .resource-category-tag {
 position:absolute;top:20px;left:20px;z-index:4;pointer-events:none;
 display:inline-flex;align-items:center;min-height:30px;padding:6px 12px;
 border:1px solid rgba(255,255,255,.35);border-radius:999px;
 background:rgba(20,20,20,.68);backdrop-filter:blur(12px);color:#fff;
 font-family:var(--font-terminal);font-size:12px;line-height:1.2;
 letter-spacing:.06em;text-transform:uppercase;
}
@media(max-width:767px) {
 .site-main .resource-card .resource-category-tag { top:8px;left:8px;min-height:26px;padding:5px 9px;font-size:10px; }
}

/* v71: match header utility hover height to the return-home pill. */
.site-header .titlebar .titlebar-utility .ccm-block-feature-link a.btn {
 box-sizing:border-box;height:34px!important;min-height:34px!important;max-height:34px;padding-block:0!important;align-items:center;justify-content:center;
}
.site-header .titlebar .titlebar-utility > .ccm-block-feature-link ~ .ccm-block-feature-link a.btn {
 width:34px!important;min-width:34px!important;padding-inline:0!important;
}

/* v72: temporarily hide mobile navigation; retain markup and behavior for restoration. */
.site-header .titlebar-menu-toggle,
#while-you-sleep-mobile-navigation { display:none!important; }

/* v73: separate smooth photo zoom from the rising glass caption. */
.site-main .resource-card > .ccm-block-feature-item { transform:none!important;filter:none!important; }
.site-main .resource-card .ccm-block-feature-image img { transition:transform 650ms cubic-bezier(.22,1,.36,1),opacity 220ms ease!important;transform-origin:center; }
.site-main .section-additional-resources .resource-card .ccm-block-feature-text {
 --card-caption-min:clamp(76px,32cqw,134px);--card-caption-pad:clamp(10px,5cqw,24px);--card-caption-rise:32px;
 transition:min-height 450ms cubic-bezier(.22,1,.36,1),padding-bottom 450ms cubic-bezier(.22,1,.36,1)!important;
}
html:not(.ccm-edit-mode) .site-main .resource-card a.resource-card-hitarea { transform:none!important; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .site-main .resource-card:is(:hover,:focus-within):not(:has(.resource-card-share:hover,.resource-share-menu:hover,.resource-card-share:focus-visible,.resource-share-menu:focus-within)) .ccm-block-feature-image img { transform:scale(1.08)!important; }
 .site-main .section-additional-resources .resource-card:is(:hover,:focus-within):not(:has(.resource-card-share:hover,.resource-share-menu:hover,.resource-card-share:focus-visible,.resource-share-menu:focus-within)) .ccm-block-feature-text {
  min-height:calc(var(--card-caption-min) + var(--card-caption-rise));padding-bottom:calc(var(--card-caption-pad) + var(--card-caption-rise));
 }
}
.site-main .resource-card:is(:hover,:focus-within):not(:has(.resource-card-share:hover,.resource-share-menu:hover,.resource-card-share:focus-visible,.resource-share-menu:focus-within)) .ccm-block-feature-text a {
 background:#fff!important;color:var(--color-brand-primary)!important;transform:none!important;
}
@media(max-width:767px) {
 .site-main .section-additional-resources .resource-card .ccm-block-feature-text { --card-caption-min:116px;--card-caption-pad:16px;--card-caption-rise:20px; }
}
@media(prefers-reduced-motion:reduce) {
 .site-main .resource-card .ccm-block-feature-image img,.site-main .resource-card .ccm-block-feature-text { transition:none!important; }
}

/* v74: lift only CTA content, keeping neighboring pixel decorations visible. */
.site-main .section-call-to-action { z-index:auto; }
.site-main .section-call-to-action > .container { z-index:5; }

/* v75: center the page share dropdown without changing its reveal transform. */
.site-main .page-share-menu { left:50%;right:auto;translate:-50% 0;transform-origin:top center; }

/* v76: footer Give Today uses the same side padding as the titlebar. */
.footer-shell .footer-utility-links > .ccm-block-feature-link:first-child a.btn { padding-inline:20px!important; }

/* v77: expressive elastic button hover trial. */
html:not(.ccm-edit-mode) :is(.site-header,.site-main,.footer-shell) :is(a.btn,button,.titlebar-fixed-action,.titlebar-home-return):not(.fms-video-preview__play):not([role="menuitem"]):not(.resource-card-hitarea) {
 transition:transform 420ms cubic-bezier(.18,1.9,.32,1),background-color 180ms ease,color 180ms ease,box-shadow 320ms ease,filter 320ms ease,width 300ms cubic-bezier(.16,1,.3,1)!important;
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 html:not(.ccm-edit-mode) :is(.site-header,.site-main,.footer-shell) :is(a.btn,button,.titlebar-fixed-action,.titlebar-home-return):not(.fms-video-preview__play):not([role="menuitem"]):not(.resource-card-hitarea):hover {
  transform:scale(1.12,1.18)!important;
  filter:brightness(1.12) saturate(1.18);
  box-shadow:0 12px 30px rgba(0,122,255,.42),0 0 28px rgba(0,122,255,.28),inset 0 1px 0 rgba(255,255,255,.4)!important;
 }
 html:not(.ccm-edit-mode) :is(.site-header,.site-main,.footer-shell) :is(a.btn,button,.titlebar-fixed-action,.titlebar-home-return):not(.fms-video-preview__play):not([role="menuitem"]):active { transform:scale(.96,.94)!important;transition-duration:100ms!important; }
}
@media(prefers-reduced-motion:reduce) {
 html:not(.ccm-edit-mode) :is(.site-header,.site-main,.footer-shell) :is(a.btn,button,.titlebar-fixed-action,.titlebar-home-return):not(.fms-video-preview__play):not([role="menuitem"]) { transition:none!important; }
}

/* Resource popup: consistent compact width with the form's own top spacing. */
#wys-resources-modal .feature-bio-modal__dialog {
  width: min(480px, calc(100vw - 24px));
  padding-top: 0;
}
#wys-resources-modal .resources-modal__content { padding: 0; }

/* Give the small terminal back link room to read without flex compression. */
/* Descriptions expand above the action; button color and bottom inset stay fixed. */
.site-main .resource-description-reveal { display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows 420ms cubic-bezier(.22,1,.36,1),opacity 240ms ease; }
.site-main .resource-description-inner { min-height:0;overflow:hidden;transform:translateY(8px);transition:transform 420ms cubic-bezier(.22,1,.36,1); }
.site-main .resource-card .resource-card-description { font-family:var(--font-body);font-size:14px;line-height:1.4;color:rgba(255,255,255,.9);margin:0!important;padding:0;background:none;border-radius:0; }
.site-main .resource-card.has-hover-description .resource-description-inner > .resource-card-description { padding-block:6px; }
.site-main .resource-card.has-hover-description:is(:hover,:focus-within) .resource-description-reveal { grid-template-rows:1fr;opacity:1; }
.site-main .resource-card.has-hover-description:is(:hover,:focus-within) .resource-description-inner { transform:none; }
.site-main .section-additional-resources .resource-card.has-hover-description .ccm-block-feature-text {
 min-height:var(--card-caption-min)!important;padding-bottom:var(--card-caption-pad)!important;
}
.site-main .resource-card.has-hover-description :is(.ccm-block-feature-text a,.resource-card-action),
html:not(.ccm-edit-mode) .site-main .resource-card.has-hover-description:is(:hover,:focus-within) :is(.ccm-block-feature-text a,.resource-card-action) {
 background:var(--color-brand-primary)!important;color:#fff!important;transform:none!important;filter:none!important;box-shadow:none!important;
}
.site-main .resource-library-card.has-hover-description .resource-card-body { padding-bottom:clamp(16px,5cqw,24px)!important; }
@media(max-width:767px) {
 .site-main .section-additional-resources .resource-card .resource-card-description { font-size:12px;line-height:1.35; }
}
@media(prefers-reduced-motion:reduce) { .site-main .resource-description-reveal,.site-main .resource-description-inner { transition:none;transform:none; } }

@media (min-width:640px) {
 .site-header .titlebar-home-return {
  flex:0 0 auto; font-size:14px; line-height:1.25; letter-spacing:.055em; padding:8px 12px;
 }
}

/* v93: unavailable resources retain action proportions without becoming links. */
.site-main .resource-card .resource-card-unavailable {
 display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;
 box-sizing:border-box;width:fit-content;min-height:44px;padding:12px 24px;
 border:0;border-radius:999px;background:#62666b;color:#fff;
 font-family:var(--font-terminal);font-size:18px;line-height:1;
 font-variation-settings:var(--font-terminal-settings-regular-extended);
 text-transform:uppercase;white-space:nowrap;cursor:default;
}
.site-main .resource-card.resource-library-card .resource-card-unavailable { font-size:14px;line-height:1.2;padding:12px 20px;color:#fff; }
@media(max-width:767px) {
 .site-main .section-additional-resources .resource-card .resource-card-unavailable {
  font-size:12px;line-height:1.2;padding:10px 14px;min-height:34px;
 }
}

/* v95: resource hit area drives the same green, elastic action feedback. */
html:not(.ccm-edit-mode) .site-main .resource-card :is(.ccm-block-feature-text a,.resource-card-action) {
 transform-origin:left center;
 transition:transform 420ms cubic-bezier(.18,1.9,.32,1),background-color 180ms ease,color 180ms ease,box-shadow 320ms ease,filter 320ms ease!important;
}
html:not(.ccm-edit-mode) .site-main .resource-card:has(.resource-card-hitarea:is(:hover,:focus-visible)) :is(.ccm-block-feature-text a,.resource-card-action) {
 background:var(--color-brand-secondary)!important;color:#fff!important;
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 html:not(.ccm-edit-mode) .site-main .resource-card:has(.resource-card-hitarea:is(:hover,:focus-visible)) :is(.ccm-block-feature-text a,.resource-card-action) {
  transform:scale(1.12,1.18)!important;filter:brightness(1.12) saturate(1.18)!important;
  box-shadow:0 12px 30px rgba(0,122,255,.42),0 0 28px rgba(0,122,255,.28),inset 0 1px 0 rgba(255,255,255,.4)!important;
 }
}
@media(prefers-reduced-motion:reduce) {
 html:not(.ccm-edit-mode) .site-main .resource-card :is(.ccm-block-feature-text a,.resource-card-action) { transition:none!important; }
}

/* v96: Resource video modal shares the card title/icon and resource-form close styling. */
.media-modal .media-modal__resource-title {
 font-family:var(--font-heading);font-size:clamp(18px,2vw,24px);font-weight:700;
 line-height:1.2;text-transform:uppercase;max-width:calc(100% - 230px);
 bottom:calc(100% + 20px);
}
.media-modal .media-modal__actions { gap:8px;bottom:calc(100% + 8px); }
.media-modal .media-modal__share {
 width:48px;min-width:48px;height:48px;padding:0;border:0;border-radius:999px;
 background:var(--color-brand-accent,#ff7900);color:#fff;font-size:0;overflow:hidden;
 box-shadow:none;transform:none;
 transition:width 320ms cubic-bezier(.16,1,.3,1),background-color 220ms ease;
}
.media-modal .media-modal__share::before {
 content:"";position:absolute;right:11px;top:11px;width:26px;height:26px;background:currentColor;
 -webkit-mask:url('../images/resource-library/share-icon.svg') center/contain no-repeat;
 mask:url('../images/resource-library/share-icon.svg') center/contain no-repeat;
}
.media-modal .media-modal__share::after {
 content:"Share Resource";position:absolute;left:14px;right:44px;top:0;height:48px;
 display:flex;align-items:center;justify-content:center;white-space:nowrap;
 font-family:var(--font-terminal);font-variation-settings:var(--font-terminal-settings-regular-extended);
 font-size:14px;text-transform:uppercase;opacity:0;transform:translateX(8px);
 transition:opacity 180ms ease,transform 260ms ease;
}
.media-modal .media-modal__share:is(:hover,:focus-visible,[aria-expanded="true"]) { width:196px;background:var(--color-brand-primary);transform:none; }
.media-modal .media-modal__share:is(:hover,:focus-visible,[aria-expanded="true"])::after { opacity:1;transform:none; }
.media-modal .media-modal__close {
 width:48px;min-width:48px;height:48px;padding:0;border:0;background:var(--color-brand-primary);
 color:#fff;font-family:'Outfit',sans-serif;font-size:28px;font-weight:600;box-shadow:none;
 transition:background-color 200ms ease,transform 200ms ease;
}
.media-modal .media-modal__close:is(:hover,:focus-visible) { background:var(--color-brand-secondary);transform:scale(1.05); }
.media-modal .media-modal__actions button:focus-visible { outline:2px solid white;outline-offset:3px; }
@media(max-width:600px) {
 .media-modal .media-modal__resource-title { bottom:calc(100% + 72px);max-width:100%;font-size:20px; }
}
@media(prefers-reduced-motion:reduce) {
 .media-modal .media-modal__actions button,.media-modal .media-modal__share::after { transition:none; }
}

/* WYS modal buttons: match the standard campaign button interaction. */
.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close) {
 background:var(--color-brand-primary);border-radius:999px;
 transition:transform 420ms cubic-bezier(.18,1.9,.32,1),background-color 180ms ease,color 180ms ease,box-shadow 320ms ease,filter 320ms ease,width 300ms cubic-bezier(.16,1,.3,1)!important;
}
.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close):is(:hover,:focus-visible) { background:var(--color-brand-secondary);color:#fff; }
.media-modal .media-modal__share[aria-expanded="true"] { background:var(--color-brand-secondary); }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close):hover {
  transform:scale(1.12,1.18)!important;filter:brightness(1.12) saturate(1.18);
  box-shadow:0 12px 30px rgba(0,122,255,.42),0 0 28px rgba(0,122,255,.28),inset 0 1px 0 rgba(255,255,255,.4)!important;
 }
 .media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close):active { transform:scale(.96,.94)!important;transition-duration:100ms!important; }
}
@media(prefers-reduced-motion:reduce) {
 .media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close) { transition:none!important;transform:none!important; }
}

.fms-video-preview{width:min(100%,800px);margin:40px auto 0}.fms-video-preview__play{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;overflow:hidden;border:1px solid #ffffff40;border-radius:24px;background:#181818;cursor:pointer}.fms-video-preview__play img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transition:filter 320ms ease}.fms-video-preview__label{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:12px 24px;border-radius:999px;background:var(--color-brand-primary);color:white;font-family:var(--font-terminal);white-space:nowrap;transition:transform 420ms cubic-bezier(.18,1.9,.32,1),background-color 180ms ease,box-shadow 320ms ease,filter 320ms ease}.fms-video-preview__play:is(:hover,:focus-visible) .fms-video-preview__label{background:var(--color-brand-secondary)}.fms-video-preview__play:hover img{filter:brightness(1.035)}.fms-video-preview__play:focus-visible{outline:3px solid white;outline-offset:5px}@media(prefers-reduced-motion:reduce){.fms-video-preview__play img,.fms-video-preview__label{transition:none}.fms-video-preview__play:hover img{transform:none}}
.site-main a[href="/wys-final/resources"],.site-main a[href="https://timtebowfoundation.org/wys-final/resources"]{display:none!important}

/* Modal share refinement: stable geometry, smooth reveal, no diamond pointer. */
.media-modal .media-modal__share-menu::after{content:none!important;display:none!important}
.media-modal .media-modal__actions .media-modal__share{width:196px;min-width:196px}
.media-modal .media-modal__actions .media-modal__share::after{opacity:1;transform:none}
.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close),.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close):is(:hover,:focus-visible,:active){transform:none!important;filter:none;transition:background-color 220ms ease,color 220ms ease,box-shadow 220ms ease!important}
.media-modal .media-modal__share-menu{transform:translateY(-6px);transition:opacity 200ms ease,transform 200ms cubic-bezier(.22,1,.36,1),visibility 200ms!important}
.media-modal .media-modal__share-menu.is-open{transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.media-modal .media-modal__share-menu,.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close){transition:none!important}}

/* Small phones: center the resource title below the video. */
@media(max-width:480px){.media-modal .media-modal__resource-title{top:calc(100% + 16px);bottom:auto;left:0;right:0;width:100%;max-width:100%;margin:0;text-align:center;white-space:normal;overflow-wrap:anywhere;line-height:1.3}}

/* FMS preview: play pill straddles the photo bottom edge. */
.site-main .fms-video-preview{margin-top:64px!important;margin-bottom:32px}
.fms-video-preview__play{overflow:visible}
html:not(.ccm-edit-mode) .site-main .fms-video-preview .fms-video-preview__play{transform:none!important;transition:transform 500ms cubic-bezier(.16,1,.3,1),box-shadow 400ms ease,border-color 400ms ease!important}
@media(hover:hover){html:not(.ccm-edit-mode) .site-main .fms-video-preview .fms-video-preview__play:hover{transform:translateY(-4px) scale(1.015)!important;box-shadow:0 14px 34px rgba(0,122,255,.32),0 0 30px rgba(0,122,255,.3);border-color:rgba(0,122,255,.8)}}
html:not(.ccm-edit-mode) .site-main .fms-video-preview .fms-video-preview__play:focus-visible{box-shadow:0 14px 34px rgba(0,122,255,.32),0 0 30px rgba(0,122,255,.3)}
@media(prefers-reduced-motion:reduce){html:not(.ccm-edit-mode) .site-main .fms-video-preview .fms-video-preview__play{transition:none!important}html:not(.ccm-edit-mode) .site-main .fms-video-preview .fms-video-preview__play:hover{transform:none!important}}
.fms-video-preview__play img{border-radius:inherit;transform:none!important}
.fms-video-preview__label{top:100%;bottom:auto;transform:translate(-50%,-50%)}
/* Animate the play pill independently so the photograph cannot cover the copy. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .fms-video-preview__play:hover .fms-video-preview__label{
  transform:translate(-50%,-50%) scale(1.12,1.18);
  filter:brightness(1.12) saturate(1.18);
  box-shadow:0 12px 30px rgba(0,122,255,.42),0 0 28px rgba(0,122,255,.28),inset 0 1px 0 rgba(255,255,255,.4);
 }
 .fms-video-preview__play:active .fms-video-preview__label{transform:translate(-50%,-50%) scale(.96,.94);transition-duration:100ms}
}

/* Keep preview photography visible during generic button text effects. */
.fms-video-preview__play img{opacity:1!important}
/* Modal controls use the primary CTA hover values; share width stays fixed. */
.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close){transition:transform 420ms cubic-bezier(.18,1.9,.32,1),background-color 180ms ease,color 180ms ease,box-shadow 320ms ease,filter 320ms ease!important;transform-origin:center}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close):hover{transform:scale(1.12,1.18)!important;filter:brightness(1.12) saturate(1.18);box-shadow:0 12px 30px rgba(0,122,255,.42),0 0 28px rgba(0,122,255,.28),inset 0 1px 0 rgba(255,255,255,.4)!important}
.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close):active{transform:scale(.96,.94)!important;transition-duration:100ms!important}
}
@media(prefers-reduced-motion:reduce){.media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close){transition:none!important;transform:none!important}}

/* WYS follow-up: centered remaining stats CTA and shared emergency-list font. */
html:not(.ccm-edit-mode) .site-main .section-feature-grid .row > .col-sm-6:has(> .feature-link-small){flex:0 0 100%;width:100%;max-width:100%;text-align:center!important}
html:not(.ccm-edit-mode) .site-main .section-feature-grid .feature-link-small :is(.ccm-block-feature-link,.ccm-block-feature-link-text,.mt-4){text-align:center!important;justify-content:center!important}
html:not(.ccm-edit-mode) .site-main .section-feature-grid .feature-link-small .btn{margin-inline:auto!important}
.site-main .section-resource-roadmap .wys-library-steps{font-family:var(--font-terminal);font-size:var(--type-split-roadmap-list);line-height:31px;font-variation-settings:var(--font-terminal-settings-regular-extended);font-weight:var(--type-weight-regular);letter-spacing:0;text-transform:uppercase}

/* Nicole’s transparent resource graphics replace the empty media placeholders. */
html:not(.ccm-edit-mode) .site-main :is(.section-split-roadmap,.section-guide-preview) > .container > .row > .col-sm-12 > .row > .col-sm-6:has(img.ccm-image-block)::before{content:none!important;display:none!important}
html:not(.ccm-edit-mode) .site-main :is(.section-split-roadmap,.section-guide-preview) > .container > .row > .col-sm-12 > .row > .col-sm-6:has(img.ccm-image-block){height:auto;min-height:0;display:flex;align-items:center;justify-content:center}
.site-main :is(.section-split-roadmap,.section-guide-preview) img.ccm-image-block{display:block;width:100%;height:auto;max-height:640px;object-fit:contain;margin-inline:auto}
html:not(.ccm-edit-mode) .site-main .section-feature-grid .col-sm-6:has(a[href="/wys-final/resources"]){display:none!important}


/* Match primary CTA easing in every state; old hover-specific rules must not cancel transform animation. */
html:not(.ccm-edit-mode) .media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close),html:not(.ccm-edit-mode) .media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close):is(:hover,:focus-visible,:active){transition:transform 420ms cubic-bezier(.18,1.9,.32,1),background-color 180ms ease,color 180ms ease,box-shadow 320ms ease,filter 320ms ease!important}
html:not(.ccm-edit-mode) .media-modal .media-modal__actions{gap:20px}
@media(prefers-reduced-motion:reduce){html:not(.ccm-edit-mode) .media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close),html:not(.ccm-edit-mode) .media-modal .media-modal__actions :is(.media-modal__share,.media-modal__close):is(:hover,:focus-visible,:active){transition:none!important;transform:none!important}}

/* Main-page share interactions match the approved video-modal controls. */
html:not(.ccm-edit-mode) body .site-main :is(.resource-card .resource-card-share,.page-share-container .page-share-trigger){transition:width 300ms cubic-bezier(.16,1,.3,1),transform 420ms cubic-bezier(.18,1.9,.32,1),background-color 180ms ease,color 180ms ease,box-shadow 320ms ease,filter 320ms ease!important}
html:not(.ccm-edit-mode) body .site-main :is(.resource-card .resource-card-share,.page-share-container .page-share-trigger):is(:hover,:focus-visible,[aria-expanded="true"]){background:var(--color-brand-secondary)!important;color:#fff!important}
@media(hover:hover) and (prefers-reduced-motion:no-preference){html:not(.ccm-edit-mode) body .site-main :is(.resource-card .resource-card-share,.page-share-container .page-share-trigger):hover{transform:scale(1.12,1.18)!important;filter:brightness(1.12) saturate(1.18);box-shadow:0 12px 30px rgba(0,122,255,.42),0 0 28px rgba(0,122,255,.28),inset 0 1px 0 rgba(255,255,255,.4)!important}html:not(.ccm-edit-mode) body .site-main :is(.resource-card .resource-card-share,.page-share-container .page-share-trigger):active{transform:scale(.96,.94)!important;transition-duration:100ms!important}}
html:not(.ccm-edit-mode) body .site-main .resource-share-menu :is(button,a),html:not(.ccm-edit-mode) body .site-main .resource-share-menu :is(button,a):is(:hover,:focus-visible,:active){transform:none!important;filter:none!important;box-shadow:none!important;transition:background-color 220ms ease,color 220ms ease!important}
html:not(.ccm-edit-mode) body .site-main .resource-share-menu :is(button,a):is(:hover,:focus-visible){background:var(--color-brand-primary)!important;color:#fff!important}
@media(prefers-reduced-motion:reduce){html:not(.ccm-edit-mode) body .site-main :is(.resource-card .resource-card-share,.page-share-container .page-share-trigger),html:not(.ccm-edit-mode) body .site-main :is(.resource-card .resource-card-share,.page-share-container .page-share-trigger):is(:hover,:focus-visible,:active),html:not(.ccm-edit-mode) body .site-main .resource-share-menu :is(button,a){transition:none!important;transform:none!important}}
