/* css/global-rounded-cards.css */
:root{--rc-card-radius:16px;--rc-large-radius:22px}main :where(article,[class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "],[class$="-box"],[class*="-box "]){border-radius:var(--rc-card-radius)}main :where(article,[class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "]):has(>img),main :where([class$="-media"],[class*="-media "]){overflow:hidden}.intake-app,.email-composer,.qualification-dialog,.playbook-form-dialog,main :where([class$="-grid"],[class*="-grid "])[style*="border"],main :where([class$="-wrap"],[class*="-wrap "])[style*="border"]{border-radius:var(--rc-large-radius)}.opportunity-summary{gap:14px;border:0!important;background:transparent!important}.opportunity-summary article{min-width:0;border:1px solid rgba(212,175,106,.45)!important;border-radius:16px!important;background:linear-gradient(145deg,#0d0d0d,#080808);overflow:hidden}.opportunity-hero-media{position:relative!important;display:block!important;min-height:610px;border-radius:20px 0 0 20px}.opportunity-hero-media .opportunity-hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.025);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform 1.4s cubic-bezier(.16,1,.3,1);pointer-events:none}.opportunity-hero-media .opportunity-hero-slide.is-active{opacity:1;transform:scale(1);z-index:1}.opportunity-hero-controls{position:absolute;z-index:3;right:22px;bottom:20px;display:flex;gap:9px;padding:10px 12px;border:1px solid rgba(212,175,106,.45);border-radius:999px;background:rgba(5,5,5,.78);backdrop-filter:blur(10px)}.opportunity-hero-controls button{width:9px;height:9px;padding:0;border:1px solid #d4af6a;border-radius:50%;background:transparent;cursor:pointer;transition:.25s}.opportunity-hero-controls button.is-active{width:28px;border-radius:999px;background:#d4af6a}.opportunity-grid{gap:18px!important}.opportunity-card,.playbook-value-grid article,.opportunity-boundary-grid,.opportunity-cta,.playbook-value-section{border-radius:18px!important}.qualification-dialog,.playbook-form-dialog{border-radius:22px!important;overflow:auto}.playbook-request-fields{border-radius:16px!important}@media(max-width:980px){.opportunity-hero-media{min-height:480px;border-radius:18px}}@media(max-width:720px){.opportunity-summary{gap:10px}.opportunity-summary article{border:1px solid rgba(212,175,106,.45)!important}.opportunity-hero-media{min-height:360px;border-radius:0}}@media(max-width:430px){.opportunity-hero-media{min-height:300px}}

/* css/contact-intentional-redesign.css */
.page-contact main{padding-bottom:70px;background:linear-gradient(180deg,#050505 0%,#070707 55%,#050505 100%)}.page-contact .contact-hero{grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr)!important;gap:0!important;align-items:stretch!important;margin-top:28px;padding-top:var(--header)!important;padding-bottom:0!important;border:1px solid rgba(212,175,106,.42);border-radius:24px!important;overflow:hidden;background:#090909}.page-contact .contact-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(44px,5vw,76px)!important;background:linear-gradient(145deg,#0d0d0d,#070707)}.page-contact .contact-hero-copy h1{font-family:Inter,Arial,sans-serif!important;font-size:clamp(3.25rem,5.5vw,6rem)!important;font-weight:800!important;line-height:.94!important;letter-spacing:-.04em!important;text-transform:uppercase}.page-contact .contact-hero-copy h1 span{color:#d4af6a}.page-contact .contact-hero-copy>p{max-width:680px;color:#b9b3aa!important;font-size:.96rem!important;line-height:1.72!important}.page-contact .hero-actions{margin-top:28px!important;gap:12px!important}.page-contact .hero-actions .button{min-height:50px!important;border-radius:8px!important}.page-contact .contact-hero-panel{min-height:600px!important;border:0!important;border-radius:0!important}.page-contact .contact-hero-panel>img{object-fit:cover!important;object-position:center!important;background:#080808!important}.page-contact .contact-hero-panel::after{background:linear-gradient(90deg,rgba(8,8,8,.98) 0%,rgba(8,8,8,.76) 27%,rgba(8,8,8,.08) 67%)!important}.page-contact .contact-benefits{left:34px!important;top:50%!important;bottom:auto!important;width:min(330px,48%)!important;transform:translateY(-50%);gap:13px!important}.page-contact .contact-benefits article{padding:18px!important;border:1px solid rgba(212,175,106,.28)!important;border-radius:14px!important;background:rgba(7,7,7,.78)!important;backdrop-filter:blur(10px)}.page-contact .contact-section{padding-top:66px!important}.page-contact .section-title{grid-template-columns:auto 1fr!important;gap:18px!important;margin-bottom:24px!important}.page-contact .section-title span:first-child{width:54px}.page-contact .section-title span:last-child{display:none}.page-contact .section-title h2{text-align:left!important;white-space:nowrap;color:#d4af6a!important;font-family:Inter,Arial,sans-serif!important;font-size:.72rem!important;font-weight:800!important;letter-spacing:.14em!important}.page-contact .channel-grid{max-width:none!important;gap:18px!important}.page-contact .channel-card{min-height:180px;padding:30px 32px!important;border:1px solid rgba(212,175,106,.32)!important;border-left:1px solid rgba(212,175,106,.32)!important;border-radius:18px!important;background:linear-gradient(145deg,#0c0c0c,#080808)!important}.page-contact .channel-card h3{font-size:1.75rem!important}.page-contact .channel-card a{display:inline-block!important;width:auto;margin-top:20px!important;padding:7px 0!important;border-top:0!important;border-bottom:1px solid #d4af6a;color:#d4af6a!important}.page-contact .channel-note{margin-top:18px!important;text-align:left!important}.page-contact .intake-app{border-radius:22px!important;border-color:rgba(212,175,106,.46)!important;background:linear-gradient(145deg,#101010,#080808)!important}.page-contact .intake-app-head{padding:34px 38px!important}.page-contact .intake-app-head h3{font-size:clamp(1.9rem,3.4vw,3rem)!important}.page-contact .intake-progress li{padding:18px 10px!important}.page-contact .intake-step{padding:34px 38px 38px!important}.page-contact .choice-grid{gap:14px!important}.page-contact .choice-card span{padding:21px!important;border-radius:14px!important}.page-contact .process-section{padding-bottom:64px}.page-contact .process-row{gap:0!important;border:1px solid rgba(212,175,106,.3)!important;border-radius:18px!important;overflow:hidden;background:#090909}.page-contact .process-step{min-height:165px;padding:28px 24px!important;border:0!important;border-left:1px solid rgba(212,175,106,.2)!important;border-radius:0!important;background:transparent!important}.page-contact .process-step:first-child{border-left:0!important}.page-contact .process-step>span{margin:0 0 18px!important}.page-contact .process-step h3{min-height:0!important;text-align:left!important}.page-contact .process-step p{text-align:left!important}.page-contact .contact-cta{position:relative!important;display:flex!important;align-items:center!important;min-height:440px!important;margin-top:0!important;margin-bottom:0!important;border:1px solid rgba(212,175,106,.4)!important;border-radius:24px!important;overflow:hidden;background:#050505!important}.page-contact .contact-cta::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(5,5,5,.97) 0%,rgba(5,5,5,.88) 36%,rgba(5,5,5,.32) 68%,rgba(5,5,5,.1) 100%)}.page-contact .contact-cta>img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 48%!important}.page-contact .contact-cta-copy{position:relative;z-index:2;width:min(680px,60%);padding:56px 58px!important}.page-contact .contact-cta-copy .eyebrow{margin-bottom:12px;color:#d4af6a;text-transform:uppercase;font-size:.68rem;font-weight:800;letter-spacing:.14em}.page-contact .contact-cta h2{font-size:clamp(2.75rem,5vw,5rem)!important;line-height:.98!important}.page-contact .contact-cta p{max-width:570px;color:#c2bcb2!important;font-size:.92rem!important;line-height:1.7!important}.page-contact .contact-cta .button{width:auto!important;border-radius:8px!important}@media(max-width:980px){.page-contact .contact-hero{grid-template-columns:1fr!important}.page-contact .contact-hero-panel{min-height:480px!important}.page-contact .contact-hero-copy{padding:48px 34px!important}.page-contact .process-row{grid-template-columns:1fr 1fr!important}.page-contact .process-step:nth-child(3){border-left:0!important;border-top:1px solid rgba(212,175,106,.2)!important}.page-contact .process-step:nth-child(4){border-top:1px solid rgba(212,175,106,.2)!important}.page-contact .contact-cta-copy{width:72%}}@media(max-width:700px){.page-contact .contact-hero{margin-top:14px}.page-contact .contact-hero-copy{padding:36px 22px!important}.page-contact .contact-hero-copy h1{font-size:clamp(2.8rem,13vw,4.1rem)!important}.page-contact .hero-actions{display:grid!important}.page-contact .hero-actions .button{width:100%!important}.page-contact .contact-hero-panel{min-height:420px!important}.page-contact .contact-benefits{left:18px!important;width:calc(100% - 36px)!important}.page-contact .contact-section{padding-top:44px!important}.page-contact .intake-app-head,.page-contact .intake-step{padding:25px 20px!important}.page-contact .process-row{grid-template-columns:1fr!important}.page-contact .process-step{border-left:0!important;border-top:1px solid rgba(212,175,106,.2)!important}.page-contact .process-step:first-child{border-top:0!important}.page-contact .contact-cta{min-height:520px!important}.page-contact .contact-cta::after{background:linear-gradient(180deg,rgba(5,5,5,.92),rgba(5,5,5,.72))}.page-contact .contact-cta-copy{width:100%;padding:36px 24px!important}.page-contact .contact-cta h2{font-size:clamp(2.6rem,13vw,4rem)!important}}

/* css/contact-request-overlays.css */
.contact-request-dialog{width:min(940px,calc(100% - 28px));max-height:calc(100svh - 28px);padding:0;border:1px solid #d4af6a;border-radius:22px;background:#080808;color:#f5f1e8}.contact-request-dialog::backdrop{background:rgba(0,0,0,.9);backdrop-filter:blur(8px)}.contact-request-shell{position:relative;padding:36px}.contact-request-close{position:absolute;right:15px;top:14px;width:40px;height:40px;border:1px solid rgba(212,175,106,.55);background:#090909;color:#d4af6a;font-size:1.5rem;cursor:pointer}.contact-request-close:hover,.contact-request-close:focus-visible{background:#d4af6a;color:#050505}.contact-request-head{padding:0 48px 24px 0;border-bottom:1px solid rgba(212,175,106,.34)}.contact-request-head h2,.contact-request-success h2{margin:6px 0 10px;font-family:"Playfair Display",Georgia,serif;font-size:clamp(2rem,4vw,3.3rem);line-height:1.02}.contact-request-head>p:last-child,.contact-request-success>p:not(.eyebrow){max-width:790px;margin:0;color:#aaa49b;line-height:1.65}.contact-honeypot{position:absolute;left:-9999px}.contact-request-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px}.contact-request-grid label{display:grid;gap:7px}.contact-request-grid label>span,.case-study-agreement>strong{color:#c9c3b9;font-size:.7rem;font-weight:700;letter-spacing:.04em}.contact-request-grid input,.contact-request-grid select,.contact-request-grid textarea{width:100%;padding:13px 14px;border:1px solid rgba(212,175,106,.35);border-radius:8px;background:#0b0b0b;color:#f4efe6;font:inherit;font-size:.84rem}.contact-request-grid textarea{resize:vertical;line-height:1.55}.contact-request-grid input:focus,.contact-request-grid select:focus,.contact-request-grid textarea:focus{outline:1px solid #d4af6a;border-color:#d4af6a}.contact-request-wide{grid-column:1/-1}.contact-request-consent,.case-study-agreement label{display:flex;align-items:flex-start;gap:10px;color:#aaa49b;font-size:.72rem;line-height:1.55}.contact-request-consent{margin-top:20px}.contact-request-consent input,.case-study-agreement input{margin-top:3px;accent-color:#d4af6a}.case-study-agreement{margin-top:20px;padding:18px;border:1px solid rgba(212,175,106,.3);border-radius:12px;background:#0a0a0a}.case-study-agreement>strong{display:block;margin-bottom:10px;color:#d4af6a;text-transform:uppercase}.contact-request-actions{display:flex;justify-content:flex-end;gap:14px;margin-top:24px;padding-top:22px;border-top:1px solid rgba(212,175,106,.3)}.contact-request-cancel{min-height:46px;padding:0 18px;border:1px solid rgba(212,175,106,.5);border-radius:8px;background:#090909;color:#d4af6a;text-transform:uppercase;font-size:.68rem;font-weight:800;letter-spacing:.08em;cursor:pointer}.contact-request-cancel:hover{background:#d4af6a;color:#050505}.contact-request-status{min-height:1.2em;margin:14px 0 0;color:#d4af6a;font-size:.76rem;text-align:right}.contact-request-success{padding:60px 20px;text-align:center}.contact-request-success .button{margin-top:24px}.contact-request-dialog.is-submitting button[type="submit"]{opacity:.65;pointer-events:none}@media(max-width:680px){.contact-request-shell{padding:28px 18px}.contact-request-grid{grid-template-columns:1fr}.contact-request-wide{grid-column:auto}.contact-request-actions{align-items:stretch;flex-direction:column-reverse}.contact-request-actions .button,.contact-request-cancel{width:100%}}

/* css/contact-process-card-fix.css */
.page-contact .process-section .process-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important}.page-contact .process-section .process-row::before,.page-contact .process-section .process-row:before{display:none!important;content:none!important}.page-contact .process-section .process-step{position:relative!important;display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:15px!important;align-items:start!important;min-height:170px!important;padding:26px 24px!important;border:1px solid rgba(212,175,106,.38)!important;border-radius:16px!important;background:linear-gradient(145deg,#0d0d0d,#080808)!important;overflow:hidden!important}.page-contact .process-section .process-step::before,.page-contact .process-section .process-step::after{display:none!important;content:none!important}.page-contact .process-section .process-step>span{position:static!important;z-index:auto!important;display:grid!important;place-items:center!important;width:42px!important;height:42px!important;margin:0!important;border:1px solid #d4af6a!important;border-radius:50%!important;background:#090909!important;color:#d4af6a!important;font-family:"Playfair Display",Georgia,serif!important;font-size:1rem!important}.page-contact .process-section .process-step>div{min-width:0;padding-top:3px}.page-contact .process-section .process-step h3{margin:0 0 8px!important;color:#d4af6a!important;font-size:.82rem!important;line-height:1.35!important;text-align:left!important}.page-contact .process-section .process-step p{margin:0!important;color:#aaa49b!important;font-size:.78rem!important;line-height:1.55!important;text-align:left!important}@media(max-width:980px){.page-contact .process-section .process-row{grid-template-columns:1fr 1fr!important}}@media(max-width:620px){.page-contact .process-section .process-row{grid-template-columns:1fr!important;gap:12px!important}.page-contact .process-section .process-step{min-height:0!important}}

/* css/footer-audience-owned.css */
/* Rivalry Commerce — consistent seven-block footer architecture */
@media (min-width: 1181px) {
  .site-footer .footer-grid {
    display: grid;
    grid-template-columns: minmax(180px,1.35fr) repeat(6,minmax(105px,1fr));
    gap: clamp(16px,1.8vw,28px);
    align-items: start;
  }

  .site-footer .footer-brand-block,
  .site-footer .footer-column {
    grid-column: auto;
    margin-top: 0;
    min-width: 0;
  }
}

@media (min-width: 761px) and (max-width: 1180px) {
  .site-footer .footer-grid {
    display: grid;
    grid-template-columns: minmax(190px,1.25fr) repeat(3,minmax(125px,1fr));
    gap: 26px 22px;
    align-items: start;
  }

  .site-footer .footer-brand-block,
  .site-footer .footer-column {
    grid-column: auto;
    margin-top: 0;
  }
}

.site-footer .footer-column h2 {
  color: #D4AF6A;
}

.site-footer .footer-column a:hover,
.site-footer .footer-column a:focus-visible {
  color: #f5f1e8;
  text-decoration: underline;
  text-decoration-color: #D4AF6A;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}

/* css/sitewide-rounded-overlap-polish.css */
/* Rivalry Commerce — final sitewide radius and collision protection */
:root {
  --rc-box-radius: 16px;
  --rc-media-radius: 20px;
  --rc-control-radius: 10px;
  --rc-box-gap: 14px;
}

main :where(
  article,
  aside,
  fieldset,
  [class$="-card"],
  [class*="-card "],
  [class$="-panel"],
  [class*="-panel "],
  [class$="-box"],
  [class*="-box "],
  [class$="-tile"],
  [class*="-tile "],
  [class$="-item"],
  [class*="-item "],
  [class$="-step"],
  [class*="-step "],
  [class$="-metric"],
  [class*="-metric "],
  [class$="-cta"],
  [class*="-cta "]
) {
  min-width: 0;
  max-width: 100%;
  border-radius: var(--rc-box-radius) !important;
  isolation: isolate;
  overflow: hidden;
  overflow-wrap: break-word;
}

main :where(
  [class$="-media"],
  [class*="-media "],
  [class$="-visual"],
  [class*="-visual "],
  [class$="-image"],
  [class*="-image "],
  [class$="-showcase"],
  [class*="-showcase "]
) {
  min-width: 0;
  max-width: 100%;
  border-radius: var(--rc-media-radius) !important;
  overflow: hidden;
  isolation: isolate;
}

main :where(
  [class$="-grid"],
  [class*="-grid "],
  [class$="-row"],
  [class*="-row "],
  [class$="-strip"],
  [class*="-strip "],
  [class$="-flow"],
  [class*="-flow "]
) {
  min-width: 0;
  max-width: 100%;
}

main :where(
  [class$="-grid"],
  [class*="-grid "],
  [class$="-row"],
  [class*="-row "],
  [class$="-strip"],
  [class*="-strip "],
  [class$="-flow"],
  [class*="-flow "]
):has(> article) {
  gap: var(--rc-box-gap) !important;
  border: 0 !important;
  background-color: transparent;
}

main :where(
  [class$="-grid"],
  [class*="-grid "],
  [class$="-row"],
  [class*="-row "],
  [class$="-strip"],
  [class*="-strip "],
  [class$="-flow"],
  [class*="-flow "]
):has(> article) > article {
  border: 1px solid rgba(212,175,106,.34) !important;
}

main :where(input,select,textarea,button,.button,[class*="-button"],[class*="button-"]) {
  border-radius: var(--rc-control-radius) !important;
}

main :where(
  [class*="dot"],
  [class*="icon"],
  [class*="circle"],
  [class*="badge"],
  [class*="pill"],
  input[type="radio"],
  input[type="checkbox"]
) {
  border-radius: 999px !important;
}

dialog,
.qualification-dialog,
.playbook-form-dialog,
.contact-request-dialog,
.deployment-dialog {
  max-width: calc(100% - 28px);
  border-radius: 22px !important;
  overflow-y: auto;
  overflow-x: hidden;
}

main img,
main video,
main canvas,
main svg {
  max-width: 100%;
}

main :where(h1,h2,h3,h4,p,li,a,span,strong,small) {
  min-width: 0;
}

@media (max-width: 760px) {
  :root {
    --rc-box-radius: 14px;
    --rc-media-radius: 16px;
    --rc-box-gap: 12px;
  }

  main :where(
    [class$="-grid"],
    [class*="-grid "],
    [class$="-row"],
    [class*="-row "],
    [class$="-flow"],
    [class*="-flow "]
  ) > * {
    min-width: 0;
    max-width: 100%;
  }
}
/* Article text is core content, not an animation dependency. */
.articles-main > article,
.articles-main .article-header-new,
.articles-main .article-hero-new,
.articles-main .article-prose,
.articles-main .article-related,
.articles-main .reveal,
.articles-main .mobile-reveal,
.articles-main .rc-lux-reveal,
.articles-main [data-executive-reveal] {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  animation: none !important;
}

/* Unified Research Library article layout. */
.articles-main .article-shell {
  width: min(1320px, calc(100% - 48px));
}

.articles-main .article-hero-new {
  width: min(1360px, calc(100% - 48px));
  margin-bottom: 56px;
}

.articles-main .article-hero-new img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.articles-main .article-prose {
  width: min(1040px, calc(100% - 48px));
  padding: clamp(48px, 6vw, 76px) clamp(34px, 6vw, 82px);
}

.articles-main .article-prose :is(p, ul, ol, h2, h3, blockquote) {
  max-width: 82ch;
  margin-left: auto;
  margin-right: auto;
}

.articles-main .article-prose :is(.highlight-box, .emphasis-block) {
  max-width: 82ch;
  margin: 2rem auto;
  background: #eee7da !important;
  border: 1px solid rgba(138, 100, 31, .32) !important;
  border-left: 3px solid #D4AF6A !important;
  color: #292620 !important;
}

.articles-main .article-prose :is(.highlight-box, .emphasis-block) :is(p, li, strong, span) {
  color: #292620 !important;
}

.article-related {
  padding: 0 0 90px;
}

.article-related-heading {
  margin-bottom: 26px;
  text-align: center;
}

.article-related-heading h2 {
  margin: .35rem 0 0;
  font-size: clamp(2rem, 4vw, 3.2rem);
}

.article-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.article-related .article-card-new img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.article-related .article-card-new h3 {
  margin: .8rem 0;
  font-size: 1.15rem;
  line-height: 1.3;
}

.article-related-all {
  display: block;
  width: max-content;
  margin: 28px auto 0;
  padding-bottom: 5px;
  border-bottom: 1px solid #D4AF6A;
  color: #D4AF6A;
  text-transform: uppercase;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
}

@media (max-width: 900px) {
  .article-related-grid {
    grid-template-columns: 1fr;
  }

  .article-related {
    padding-bottom: 56px;
  }
}

@media (max-width: 620px) {
  .articles-main .article-shell,
  .articles-main .article-hero-new,
  .articles-main .article-prose {
    width: min(100% - 24px, 1040px);
  }

  .articles-main .article-prose {
    padding: 40px 22px;
  }
}

/* css/mobile-perfect-v3.css */
/* Rivalry Commerce mobile production layer - final viewport corrections. */
@media (max-width: 767px) {
  :root { --rc-phone-gutter: 12px; --rc-phone-gap: 10px; }

  html, body { width: 100%; max-width: 100%; }
  body { margin: 0; }
  main, header, footer, section, article, aside, nav, form, fieldset,
  .page-shell, .article-shell, .content-wrapper { min-width: 0; max-width: 100%; }

  .page-shell, .article-shell, .legal-shell, .compliance-shell, .contact-shell,
  .resource-shell, .me-shell, .po-shell, .content-wrapper {
    width: calc(100% - (var(--rc-phone-gutter) * 2)) !important;
    margin-inline: auto !important;
  }

  /* Header remains fully usable at 320px without hiding the brand. */
  .nav-shell {
    width: calc(100% - 20px) !important;
    min-height: 64px !important;
    gap: 8px !important;
  }
  .brand { flex: 1 1 auto !important; min-width: 0 !important; }
  .brand img { width: 32px !important; height: 38px !important; }
  .brand span { white-space: normal !important; line-height: 1.05 !important; }
  .nav-cta { display: none !important; }
  .menu-toggle { flex: 0 0 44px !important; }
  .main-nav { width: 100% !important; max-width: 100% !important; }

  /* Every desktop split becomes a contained phone composition. */
  .hero-grid, .overview-grid, .overview-hero-grid, .lifecycle-grid,
  .lifecycle-hero-grid, .who-grid, .revenue-grid, .measurement-grid,
  .contact-grid, .company-grid, .company-hero-grid, .company-founder,
  .company-purpose-grid, .vendor-grid, .tour-grid, .event-grid,
  .legal-grid, .parallel-grid, .case-grid, .case-study-grid,
  .article-reading-layout, .article-related-grid, .po-meaning-grid,
  .po-beside, .po-faq-grid, .journey-card, .opportunity-section,
  .dl-featured, .contact-hero, .process-row, .me-impact-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    gap: 18px !important;
  }

  /* Card collections remain two-up; no horizontal swipe rails. */
  .features-container, .feature-grid, .problem-grid, .capability-grid,
  .pillars-grid, .values-grid, .metrics-grid, .stakeholder-grid,
  .deployment-grid, .opportunity-grid, .company-values-grid,
  .company-ip-grid, .channel-grid, .dl-card-grid, .dl-featured-metrics,
  .ms-impact-grid, .metric-strip, .drop-grid, .revenue-windows,
  .me-metrics, .serve-grid, .event-type-grid, .inventory-grid,
  .lifecycle-drop-grid, .lifecycle-matter-grid, .vendor-process-grid,
  .vendor-impact-grid, .rv-compare-grid, .rv-impact-grid, .choice-grid,
  .category-window-grid, .me-cards, .me-stakeholder-grid,
  .po-benefit-grid, .po-proof-strip, .ms-data-grid, .article-grid,
  .drop-scroller, .card-scroller, .timeline-track, .journey-stops,
  .problem-track, .dl-stats, .ms-kpis {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    gap: var(--rc-phone-gap) !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .features-container > *, .feature-grid > *, .problem-grid > *,
  .capability-grid > *, .pillars-grid > *, .values-grid > *,
  .metrics-grid > *, .stakeholder-grid > *, .deployment-grid > *,
  .opportunity-grid > *, .company-values-grid > *, .company-ip-grid > *,
  .channel-grid > *, .dl-card-grid > *, .metric-strip > *,
  .drop-grid > *, .serve-grid > *, .event-type-grid > *,
  .inventory-grid > *, .article-grid > *, .drop-scroller > *,
  .card-scroller > *, .timeline-track > *, .journey-stops > *,
  .problem-track > * {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    flex: none !important;
  }

  /* Cards scale internally instead of expanding the viewport. */
  .article-card-new, .feature-card, .problem-card, .capability-card,
  .company-value-card, .company-ip-card, .deployment-card,
  .event-type-card, .inventory-card, .serve-card, .drop-card,
  .metric-card, .stat-card, .process-step {
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 12px !important;
  }
  .article-card-new .article-card-copy { padding: 12px 0 0 !important; }
  .article-card-new h2, .article-card-new h3,
  .feature-card h2, .feature-card h3, .problem-card h3,
  .drop-card h3, .serve-card h3 {
    font-size: clamp(.9rem, 4vw, 1.08rem) !important;
    line-height: 1.18 !important;
    overflow-wrap: anywhere !important;
  }
  .article-card-new p, .feature-card p, .problem-card p,
  .drop-card p, .serve-card p {
    font-size: clamp(.72rem, 3vw, .86rem) !important;
    line-height: 1.45 !important;
  }

  /* Responsive media with intentional crops. */
  img, picture, video, svg, canvas, iframe {
    max-width: 100% !important;
  }
  img, video { height: auto; }
  .company-founder-photo img,
  .tour-card-media img,
  .image-card img {
    width: 100% !important;
    height: 100% !important;
    min-height: 230px !important;
    object-fit: cover !important;
  }
  .company-founder-photo { height: 340px !important; min-height: 340px !important; }
  .article-hero-new { margin-inline: 0 !important; width: 100% !important; }
  .article-hero-new img { width: 100% !important; aspect-ratio: 3 / 2; object-fit: cover !important; }
  .article-card-image-link { display: block; width: 100%; }
  .article-card-image-link img {
    width: 100% !important;
    aspect-ratio: 1.2 / 1 !important;
    object-fit: cover !important;
  }

  /* Articles and dialogs remain readable without side overflow. */
  .article-header-new h1 { font-size: clamp(2rem, 9vw, 3rem) !important; }
  .article-prose, .article-prose p, .article-prose li,
  .article-section-nav, .article-executive-modal-inner {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: break-word !important;
  }
  .article-section-nav { position: static !important; top: auto !important; }
  .article-section-nav ol { columns: 2; column-gap: 22px; }
  .article-section-nav li { break-inside: avoid; }
  dialog { width: calc(100% - 24px) !important; max-width: 680px !important; }

  /* Forms and long values never escape their containers. */
  .field-grid, .email-field-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .field-grid .field-full, .email-field-grid .field-full,
  [class*="full-width"] { grid-column: 1 / -1 !important; }
  input, select, textarea, button { min-width: 0 !important; width: 100%; }
  a, p, li, dd, dt, address { overflow-wrap: anywhere; }

  /* Dense data fits the phone rather than creating page-level scrolling. */
  table { width: 100% !important; table-layout: fixed !important; font-size: .72rem !important; }
  th, td { padding: 7px 5px !important; overflow-wrap: anywhere !important; }

  .footer-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px 14px !important;
  }
  .footer-brand-block { grid-column: 1 / -1 !important; }
  .footer-column { min-width: 0 !important; }
  .footer-column a { min-height: 40px !important; }
  .footer-bottom { width: calc(100% - 24px) !important; }
}

@media (max-width: 360px) {
  :root { --rc-phone-gap: 8px; }
  .field-grid, .email-field-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .article-section-nav ol { columns: 1; }
  .article-card-new, .feature-card, .problem-card, .capability-card,
  .company-value-card, .company-ip-card, .deployment-card,
  .event-type-card, .inventory-card, .serve-card, .drop-card {
    padding: 10px !important;
  }
  .article-card-new p { font-size: .7rem !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* css/loading-performance.css */
/* Loading stability: prevent overlapping mobile reveal passes from presenting
   image/card placeholders while retaining the primary section reveal system. */
img {
  background-color: transparent;
}

@media (max-width: 767px) {
  .mobile-reveal,
  html.rc-reveal-ready .mobile-reveal,
  html.rc-reveal-ready .mobile-reveal:not(.is-visible),
  html.rc-reveal-ready .mobile-reveal.is-visible {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .reveal,
  .rc-lux-reveal,
  [data-executive-reveal] {
    opacity: 1 !important;
    transform: none !important;
  }
}

