/* Original pre-redesign blue theme remains in the page styles.
   Brand customization is confined to the header. */
.social-links { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin:24px 0; }
.social-links a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 22px; border:1px solid #bdebf1; border-radius:24px; background:#e4f8ff; color:#173d51; font:700 14px/1.3 Arial,sans-serif; text-decoration:none; }
.social-links a:hover { background:#fff; }
.social-links a:focus-visible { outline:3px solid #dcff6f; outline-offset:4px; }
body[data-theme="dark"] .social-links a { background:#1a0c2a; color:#f5edff; border-color:#9775b3; }
body[data-theme="dark"] .social-links a:hover { background:#301743; }
html body[data-theme]::after { clip-path:inset(var(--brand-header-bottom, 0px) 0 0 0); }
.brand-wordmark { display:block; width:214px; height:52px; object-fit:contain; }
.brand-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
html body[data-theme] :is(.app-shell-head,.signal-header,.aero-header) {
  background:#fff!important; color:#321525; border-color:#efc2d6; box-shadow:none;
  backdrop-filter:none;
}
html body[data-theme] :is(.app-shell-head,.signal-header,.aero-header)::before,
html body[data-theme] :is(.app-shell-head,.signal-header,.aero-header)::after { display:none; }
html body[data-theme] :is(.app-brand,.signal-brand a,.aero-header .brand a) { position:relative; display:block; text-decoration:none; flex-shrink:0; }
html body[data-theme] .app-brand .brand-wordmark { width:160px; height:38px; }
html body[data-theme] :is(.app-nav,.signal-nav,.aero-links) a { color:#715363!important; text-shadow:none; }
html body[data-theme] :is(.app-nav,.signal-nav) a.is-current { background:#fce0ec; color:#7b2247!important; border-color:#efb5cd; }
html body[data-theme] :is(.app-shell-head,.signal-header,.aero-header) :is(button,summary,.btn,.signal-button,.live-chip,.theme-switch,.aero-theme-toggle) {
  background:#fff!important; color:#321525!important; border-color:#d9a7bd; text-shadow:none; box-shadow:none;
}
html body[data-theme] .aero-header .btn.green { background:#bb245f!important; color:#fff!important; }
html body[data-theme] .aero-header .btn::before,
html body[data-theme] .aero-header .btn::after { display:none; }
/* Explicit contrast for the fluorescent keys in both themes. */
html body[data-theme] .abp-pad-key:not(.abp-pad-key-fn) { color:#142a16; background-color:#ddff6f; text-shadow:none; }
@media(max-width:650px) {
  html body[data-theme] .brand-wordmark { width:158px; height:38px; }
  html body[data-theme] .app-brand .brand-wordmark { width:145px; height:34px; }
}

/* Current dumbphone brain content/layout, using the original blue materials. */
html body[data-landing="flow-v1"] .mobile-home-experience { display:none!important; }
html body[data-landing="flow-v1"] .landing-flow { display:block!important; max-width:1200px; margin:auto; padding:0 36px; }
html body[data-landing="flow-v1"] .hero-sec { min-height:690px; display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:60px; padding:70px 0 84px; }
html body[data-landing="flow-v1"] .headline { font:750 clamp(42px,4.6vw,64px)/1.04 Arial,Helvetica,sans-serif; letter-spacing:-.055em; margin:22px 0; }
html body[data-landing="flow-v1"] .headline em { font-style:normal; }
html body[data-landing="flow-v1"] .hero-collage { width:100%; padding:0; max-width:470px; position:relative; display:block; }
.hero-how { color:inherit; font-weight:700; text-decoration:none; }
.hero-how span { margin-left:8px; }
.hero-benefits { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; font-size:12px; color:#fff; }
.hero-benefits span::before { content:'✓'; margin-right:6px; }
.example-label { display:flex; align-items:center; gap:8px; font-size:12px; color:#fff; margin:0 0 14px 12px; }
.example-dot { width:7px; height:7px; background:#dcff6f; border-radius:50%; }
.phone-example { border:1px solid #bdebf1; border-radius:28px; background:rgba(199,241,255,.88); padding:9px; color:#22465b; }
.phone-contact { display:flex; align-items:center; gap:10px; padding:12px 12px 16px; border-bottom:1px solid #8bc3d6; }
.phone-contact img { border-radius:12px; background:#fff; }
.phone-contact strong { display:block; font-size:15px; }
.phone-contact div { flex:1; }
.phone-contact div span { display:block; font-size:10px; margin-top:4px; }
.example-messages { padding:22px 13px; display:flex; flex-direction:column; gap:18px; }
html body[data-landing="flow-v1"] .hero-collage .card { width:auto; padding:16px 18px; margin:0; max-width:92%; border-radius:18px; }
html body[data-landing="flow-v1"] .hero-collage .example-user { align-self:flex-end; border-radius:18px 18px 4px 18px; }
html body[data-landing="flow-v1"] .hero-collage .example-reply { align-self:flex-start; border-radius:18px 18px 18px 4px; }
html body[data-landing="flow-v1"] .hero-collage .card-title { font-size:10px; display:block; margin-bottom:8px; }
.example-receipt { text-align:center; font-size:11px; line-height:1.5; padding:0 15px; }
.example-input { display:flex; align-items:center; justify-content:space-between; border:1px solid #8bc3d6; padding:10px 12px; border-radius:18px; font-size:12px; margin:0 10px 12px; }
.example-input span { background:#dcff6f; color:#19320d; border-radius:50%; width:26px; height:26px; display:grid; place-items:center; }
.example-footnote { text-align:center; font-size:12px; line-height:1.6; padding:20px 18px 0; color:#fff; }
html body[data-landing="flow-v1"][data-theme="dark"] .phone-example { background:#160d25; border-color:#694b80; color:#ece5f8; }
html body[data-landing="flow-v1"] .plan-list { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
html body[data-landing="flow-v1"] .reveal { opacity:1!important; transform:none!important; }
@media(max-width:900px) {
 html body[data-landing="flow-v1"] .hero-sec { gap:30px; }
 html body[data-landing="flow-v1"] .landing-flow { padding:0 24px; }
}
@media(max-width:650px) {
 html body[data-landing="flow-v1"] .landing-flow { padding:0 20px; }
 html body[data-landing="flow-v1"] .hero-sec { grid-template-columns:1fr; padding:44px 0; gap:34px; min-height:0; }
 html body[data-landing="flow-v1"] .headline { font-size:clamp(37px,10.4vw,58px); }
 html body[data-landing="flow-v1"] .hero-collage { max-width:440px; margin:auto; }
 html body[data-landing="flow-v1"] .flow-sec { padding:48px 0; }
 html body[data-landing="flow-v1"] .grid-3,html body[data-landing="flow-v1"] .plan-list { grid-template-columns:1fr; }
}
html body[data-landing="flow-v1"] .hero-collage .card-title { text-transform:none; }
html body[data-landing="flow-v1"] .hero-ctas .btn span { margin-left:8px; }

/* Compact desktop/CRT viewport: browser chrome leaves little vertical room. */
@media (min-width:700px) and (max-width:1150px) and (max-height:700px) {
 html body[data-landing="flow-v1"] .aero-header { min-height:54px; padding:5px 24px; }
 html body[data-landing="flow-v1"] .aero-header .brand-wordmark { width:168px; height:40px; }
 html body[data-landing="flow-v1"] .landing-flow { padding:0 24px; }
 html body[data-landing="flow-v1"] .hero-sec { min-height:0; padding:18px 0; gap:24px; grid-template-columns:1.1fr 1fr; }
 html body[data-landing="flow-v1"] .headline { font-size:36px; margin:12px 0; }
 html body[data-landing="flow-v1"] .lead { font-size:14px; line-height:1.5; }
 html body[data-landing="flow-v1"] .hero-ctas { margin-top:15px; gap:14px; }
 html body[data-landing="flow-v1"] .hero-support { margin-top:10px; font-size:11px; }
 html body[data-landing="flow-v1"] .hero-benefits { margin-top:12px; gap:6px; font-size:11px; }
 html body[data-landing="flow-v1"] .phone-contact { padding:5px 8px 8px; }
 html body[data-landing="flow-v1"] .phone-contact img { width:32px; height:32px; }
 html body[data-landing="flow-v1"] .example-label { margin-bottom:7px; }
 html body[data-landing="flow-v1"] .example-messages { padding:10px 8px; gap:10px; }
 html body[data-landing="flow-v1"] .hero-collage .card { padding:10px 12px; max-width:96%; }
 html body[data-landing="flow-v1"] .hero-collage .qa-text { font-size:12px; line-height:1.45; }
 html body[data-landing="flow-v1"] .hero-collage .card-title { margin-bottom:5px; }
 html body[data-landing="flow-v1"] .example-input { padding:6px 10px; margin-bottom:5px; }
 html body[data-landing="flow-v1"] .example-footnote { padding:8px 8px 0; font-size:11px; }
 html body[data-landing="flow-v1"] .flow-sec:not(.hero-sec) { padding-top:36px; padding-bottom:36px; }
}
.header-socials { display:flex; gap:5px; align-items:center; flex-shrink:0; }
html body[data-theme] .header-socials a { display:grid; place-items:center; width:30px; height:32px; color:#8b2854; background:#fff; border:1px solid #efc2d6; border-radius:50%; }
.header-socials svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; }
.header-socials a:hover { background:#fce0ec!important; }
.header-socials a:focus-visible { outline:2px solid #8b2854; outline-offset:2px; }
@media(max-width:780px) {
 html body[data-theme] .aero-header { display:grid!important; grid-template-columns:minmax(0,1fr) auto!important; position:relative!important; height:auto!important; min-height:0!important; padding:10px 16px!important; gap:8px 12px!important; }
 html body[data-theme] .aero-header .brand { display:block!important; width:auto!important; margin:0!important; grid-column:1; grid-row:1; }
 html body[data-theme] .aero-header .mobile-header-toggle { display:block; grid-column:2; grid-row:1; min-height:44px; padding:8px 14px; border:1px solid #d9a7bd; border-radius:22px; font:700 13px Arial,sans-serif; }
 html body[data-theme] .aero-header .aero-cta { display:flex!important; grid-column:1/-1; grid-row:2; margin:0!important; width:100%; gap:8px!important; }
 html body[data-theme] .aero-header .aero-cta > * { flex:1; min-width:0; min-height:44px; padding:8px!important; font-size:12px!important; justify-content:center; }
 html body[data-theme] .aero-header .aero-links,
 html body[data-theme] .aero-header .header-socials { display:none!important; }
 html body[data-theme] .aero-header[data-menu-open="true"] .aero-links { display:flex!important; flex-wrap:wrap; grid-column:1/-1; grid-row:3; gap:4px; width:auto; margin:0; }
 html body[data-theme] .aero-header[data-menu-open="true"] .aero-links a { min-height:44px; display:flex; align-items:center; padding:8px 10px; }
 html body[data-theme] .aero-header[data-menu-open="true"] .header-socials { display:flex!important; grid-column:1/-1; grid-row:4; }
 html body[data-theme] .header-socials a { width:44px; height:44px; }
 html body[data-theme] .signal-header { display:flex; flex-wrap:wrap; gap:8px; padding:10px 16px; }
 html body[data-theme] .signal-header .signal-brand { flex:1; min-width:0; }
 html body[data-theme] .signal-header .signal-nav { order:3; flex-basis:100%; overflow:auto; margin:0; }
 html body[data-theme] .signal-header .header-socials { display:none; }
 html body[data-theme] .signal-header .signal-header__actions { margin:0; }
}
.mobile-header-toggle { display:none; }
@media(max-width:780px) {
 html body[data-theme] .aero-theme-toggle [data-aibyphone-theme-label] { display:inline!important; }
}
@media(max-width:760px) {
 html body[data-theme] .app-shell-head { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:6px 8px; padding:8px 12px; }
 html body[data-theme] .app-shell-head .app-brand { grid-column:1; grid-row:1; margin:0; }
 html body[data-theme] .app-shell-head .theme-switch { grid-column:2; grid-row:1; min-height:44px; }
 html body[data-theme] .app-shell-head .account-menu { grid-column:3; grid-row:1; }
 html body[data-theme] .app-shell-head .account-menu__button { min-height:44px; }
 html body[data-theme] .app-shell-head .header-socials { grid-column:1/3; grid-row:2; }
 html body[data-theme] .app-shell-head .live-chip { grid-column:3; grid-row:2; justify-self:end; }
 html body[data-theme] .app-nav { display:flex; flex-wrap:nowrap; overflow-x:auto; overflow-y:hidden; }
 html body[data-theme] .app-nav a { flex:0 0 auto; min-width:74px; padding:6px 10px; }
}
.service-actions { display:flex; flex-wrap:wrap; gap:12px; margin:20px 0; }
.service-number { display:block; font:700 clamp(26px,6vw,42px)/1.3 Arial,sans-serif; margin:18px 0; overflow-wrap:anywhere; }
