/* Shared brand-profile CTA styles; the existing public asset path is retained. */
.brand-cta,.partner-cta.site-link-cta { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,.8fr); align-items:center; gap:20px; margin:28px 0; padding:24px; border:1px solid #cda75d; border-radius:16px; background:linear-gradient(120deg,#143d33,#285544); color:#fffdf5; box-shadow:0 8px 24px #173d3612; }
.brand-cta .brand-cta-label,.partner-cta.site-link-cta .eyebrow { margin:0 0 7px; color:#f3d69b; font-size:11px; font-weight:700; line-height:1.6; letter-spacing:.07em; }
.brand-cta .brand-cta-heading,.partner-cta.site-link-cta h2 { margin:0 0 8px; color:#fffdf5; font-size:24px; font-weight:650; line-height:1.25; }
.brand-cta .brand-cta-description,.partner-cta.site-link-cta p:not(.eyebrow) { margin:0; color:#e4ede1; font-size:14px; line-height:1.65; }
.brand-cta-action { min-width:0; }
.brand-cta .outbound-reference { display:block; }
.brand-cta .brand-cta-button,.partner-cta.site-link-cta .button { display:flex; justify-content:center; align-items:center; gap:10px; width:100%; min-height:50px; padding:13px 18px; border:1px solid #f7d58c; border-radius:11px; box-sizing:border-box; background:linear-gradient(120deg,#ffe2a0,#edba55); color:#30230b; box-shadow:0 3px 0 #06291e52; font-size:16px; font-weight:750; line-height:1.5; text-decoration:none; text-align:center; white-space:normal; overflow-wrap:anywhere; touch-action:manipulation; transition:background .15s ease,box-shadow .15s ease; }
.brand-cta .brand-cta-button:hover,.partner-cta.site-link-cta .button:hover { background:#ffe2a0; box-shadow:0 4px 12px #06291e66; }
.brand-cta .brand-cta-button:active,.partner-cta.site-link-cta .button:active { background:#edba55; box-shadow:none; }
.brand-cta :is(a,button):focus-visible,.partner-cta.site-link-cta a:focus-visible { outline:3px solid #ffe2a0; outline-offset:5px; }
.brand-cta .outbound-commercial-disclosure,.partner-cta.site-link-cta small { display:block; margin:9px 0 0; color:#e4ede1; font-size:12px; line-height:1.6; }
.brand-cta--hero { margin:20px 0 24px; }
.brand-cta--sidebar { grid-template-columns:minmax(0,1fr); gap:16px; padding:18px; margin:0 0 22px; }
.brand-cta--sidebar .brand-cta-heading { font-size:22px; }
[data-brand-page] .brand-aside-sticky { position:sticky; align-self:start; top:113px; max-height:calc(100dvh - 150px); overflow-y:auto; overscroll-behavior:contain; padding:4px 7px 12px 4px; }
[data-brand-page] .brand-aside-sticky .toc-box { position:static; }
.brand-cta--mobile { display:none; }
@media(max-width:1200px) {
  .brand-cta,.partner-cta.site-link-cta { grid-template-columns:minmax(0,1fr); gap:16px; }
}
@media(max-width:1000px) {
  html:has([data-brand-page]) { scroll-padding-bottom:calc(190px + env(safe-area-inset-bottom)); }
  body.brand-action-visible .site-back-top { display:none; }
  .brand-cta--mobile:not([hidden]) { display:grid; grid-template-columns:minmax(0,1fr) 44px; gap:7px 12px; position:fixed; z-index:20; inset:auto 0 0; margin:0; padding:12px max(16px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)); border-radius:16px 16px 0 0; border-bottom:0; box-shadow:0 -5px 22px #173d3633; }
  .brand-cta--mobile .brand-cta-copy { grid-column:1; grid-row:1; }
  .brand-cta--mobile .brand-cta-label { margin:0 0 2px; font-size:10px; letter-spacing:.04em; }
  .brand-cta--mobile .brand-cta-heading { margin:0; font-size:18px; }
  .brand-cta--mobile .brand-cta-description { display:none; }
  .brand-cta--mobile .brand-cta-action { grid-column:1 / -1; grid-row:2; }
  .brand-cta--mobile .outbound-commercial-disclosure { margin-top:5px; font-size:11px; }
  .brand-cta-close { display:grid; place-content:center; grid-column:2; grid-row:1; width:44px; height:44px; border:1px solid #91a58e; border-radius:50%; color:#fffdf5; background:#ffffff0d; font-size:27px; line-height:1; cursor:pointer; }
}
@media(max-width:480px) {
  .brand-cta:not(.brand-cta--mobile),.partner-cta.site-link-cta { padding:20px; }
}
@media(max-width:360px) {
  body:has([data-brand-page]) .header-inner { gap:10px; }
  body:has([data-brand-page]) .wordmark .brand-logo { width:134px; height:auto; }
}
@media(max-height:480px) {
  .brand-cta--mobile { display:none !important; }
}
@media(prefers-reduced-motion:reduce) {
  .brand-cta .brand-cta-button,.partner-cta.site-link-cta .button { transition:none; }
}
