/* Mobile promotion uses the shared font, colors and 8px spacing rhythm. */
.mobile-promo{position:relative;isolation:isolate;border:1px solid #d5e5ed;border-radius:32px;background:#e8f4fc;color:var(--ink,#14283c)}
.mobile-promo--spotlight{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.9fr);margin-top:48px;overflow:hidden}
.mobile-promo__copy{padding:40px;z-index:1;min-width:0}
.mobile-promo__eyebrow{color:#385e79;font-size:.75rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;margin:0 0 16px}
.mobile-promo__copy h2{font-size:clamp(2rem,4vw,3.15rem);margin:0 0 20px;letter-spacing:-.045em;line-height:1.1}
.mobile-promo__lead{max-width:38rem;font-size:1.08rem;line-height:1.65;margin:0 0 24px;color:#3c566a}
.mobile-promo__status{font-size:.8rem;font-weight:650;color:#365a70;line-height:1.5;margin:0 0 24px}
.mobile-promo__status::before{content:"";display:inline-block;width:7px;height:7px;background:#528568;border-radius:50%;margin:0 8px 1px 0}
.mobile-promo__actions{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap}
.mobile-promo__actions .button{gap:20px;max-width:100%;min-height:52px}
.mobile-promo__text-link{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem;font-weight:650;color:#174e7e;text-underline-offset:5px}
.mobile-promo__art{display:grid;place-items:center;position:relative;min-width:0;align-self:stretch;padding:24px 24px 48px;background:radial-gradient(ellipse at 55% 50%,#cde8f5 0%,#e8f4fc00 67%)}
.mobile-promo__mascot{position:relative;z-index:1;width:100%;max-width:340px;height:auto;filter:drop-shadow(0 16px 18px #1b4c6d20)}
.mobile-promo__art>svg.george-motion{position:relative;z-index:1;width:100%;max-width:340px;height:auto;filter:drop-shadow(0 16px 18px #1b4c6d20)}
.mobile-promo__orbit{position:absolute;width:72%;aspect-ratio:1;border:1px solid #9cc7da66;border-radius:50%;pointer-events:none}
.mobile-promo__orbit--outer{width:94%;border-color:#9cc7da40}
.mobile-promo__art-note{position:absolute;z-index:2;bottom:24px;left:24px;right:24px;justify-self:center;text-align:center;font-size:.75rem;font-weight:600;color:#41647b}
.mobile-promo__highlights{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:20px 32px;gap:24px;background:#ffffff70;border-top:1px solid #cddfe980}
.mobile-promo__highlights li{display:flex;align-items:center;justify-content:center;gap:12px;font-size:.84rem;font-weight:650;line-height:1.4}
.mobile-promo__highlights svg{flex:none;color:#2f6b8b}
.mobile-promo--compact{display:flex;align-items:center;gap:24px;margin-top:40px;padding:24px 32px;background:#edf5ed;border-color:#d9e7d7}
.mobile-promo__compact-george,.mobile-promo--compact>svg.george-motion{width:88px;height:88px;flex:none}
.mobile-promo__compact-copy{flex:1;min-width:0}
.mobile-promo__compact-copy h2{font-size:1.4rem;margin:0 0 8px}
.mobile-promo__compact-copy>p{font-size:.88rem;margin:0 0 8px;line-height:1.55}
.mobile-promo__compact-copy>.mobile-promo__eyebrow{font-size:.68rem;margin-bottom:8px}
.mobile-promo__compact-copy>.mobile-promo__status{font-size:.74rem;margin-bottom:0;color:#42604c}
.mobile-promo--compact .button{flex:none;font-size:.9rem}
.mobile-app-page{padding-bottom:8px}
.mobile-promo--hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.85fr);overflow:hidden;background:#e8f4fc}
.mobile-promo--hero .mobile-promo__copy{padding:48px 0 48px 40px}
.mobile-promo--hero h1{font-size:clamp(2.4rem,4.65vw,4rem);line-height:1.08;letter-spacing:-.05em;margin:0 0 24px}
.mobile-promo--hero .mobile-promo__lead{max-width:32rem}
.mobile-promo__art--large{padding:32px 24px 56px}
.mobile-promo__art--large .mobile-promo__mascot,.mobile-promo__art--large>svg.george-motion{max-width:400px}
.mobile-features,.mobile-app-faq{margin-top:56px;scroll-margin-top:24px}
.mobile-section-heading{margin-bottom:24px;max-width:650px}
.mobile-section-heading .mobile-promo__eyebrow{margin-bottom:12px}
.mobile-section-heading h2{margin:0;font-size:clamp(1.8rem,3vw,2.45rem)}
.mobile-features__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.mobile-feature{position:relative;min-width:0;border-radius:24px;padding:32px;background:white;border:1px solid #dde5e8}
.mobile-feature h3{font-size:1.4rem;line-height:1.2;margin:16px 0 12px;max-width:22rem}
.mobile-feature p,.mobile-benefits p{font-size:.95rem;line-height:1.65;margin:0;color:#405b6c;max-width:33rem}
.mobile-feature__icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#d8e9f8;color:#275c8b;flex:none}
.mobile-feature--globe{grid-row:span 2;display:flex;flex-direction:column;background:#e7f2fb;overflow:hidden}
.mobile-feature--globe .mobile-feature__icon{background:#d3e6f7}
.mobile-feature__copy{position:relative;z-index:1}
.mobile-feature__globe{width:100%;max-width:340px;height:auto;margin:24px auto 0;filter:drop-shadow(0 12px 12px #153a5a17)}
.mobile-feature--formats{background:#f1edfb;border-color:#e6dff5}
.mobile-feature--formats .mobile-feature__icon{background:#e4dcf5;color:#7450a9}
.mobile-feature--practice{background:#eaf4e9;border-color:#dce9d9}
.mobile-feature--practice .mobile-feature__icon{background:#d6e8d2;color:#40704a}
.mobile-feature__tags{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:24px 0 0}
.mobile-feature__tags li{background:#ffffffb8;border:1px solid #e1daed;border-radius:24px;padding:6px 12px;color:#594775;font-weight:650;font-size:.72rem}
.mobile-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:32px 8px 0}
.mobile-benefits article{min-width:0}
.mobile-benefits h3{font-size:1.15rem;margin:16px 0 10px}
.mobile-benefits p{font-size:.88rem}
.mobile-benefits article:first-child .mobile-feature__icon{background:#fbebc9;color:#936222}
.mobile-benefits article:nth-child(2) .mobile-feature__icon{background:#deeee4;color:#3d7156}
.mobile-launch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;margin-top:56px;padding:32px;background:#fff;border:1px solid var(--line,#dce5e9);border-radius:28px;scroll-margin-top:24px}
.mobile-launch__intro{min-width:0}
.mobile-launch__intro .mobile-promo__eyebrow{margin-bottom:12px}
.mobile-launch__intro h2{font-size:1.8rem;line-height:1.15;margin-bottom:16px}
.mobile-launch__intro p:not(.mobile-promo__eyebrow){font-size:.9rem;line-height:1.65;margin:0 0 12px}
.mobile-launch__intro p:last-child{margin-bottom:0}
.mobile-launch__platforms{align-self:center;display:grid;gap:12px;min-width:0}
.mobile-launch__platform{display:flex;align-items:center;gap:16px;padding:20px;background:#f4f7f9;border:1px solid #e0e8ec;border-radius:18px;flex-wrap:wrap}
.mobile-launch__platform>svg{flex:none;color:#4d6a7d}
.mobile-launch__platform>div{display:grid;gap:4px;flex:1;min-width:6rem}
.mobile-launch__platform strong{font-size:1rem;line-height:1.3}
.mobile-launch__platform>div>span{font-size:.78rem;color:#526676}
.mobile-launch__pending{font-size:.7rem;font-weight:650;color:#496477;border-radius:24px;background:#e5edf2;padding:6px 10px;white-space:nowrap}
.mobile-launch__store-link{font-size:.8rem;font-weight:650;min-height:44px;display:inline-flex;align-items:center;gap:8px}
.mobile-app-faq{max-width:760px;margin-left:auto;margin-right:auto}
.mobile-app-faq h2{font-size:1.8rem;margin-bottom:24px}
.mobile-app-faq details{border-bottom:1px solid var(--line,#dce5e9);padding:0 0 16px;margin-bottom:16px}
.mobile-app-faq summary{cursor:pointer;min-height:44px;padding:8px 24px 8px 0;font-size:1rem;font-weight:650;color:var(--ink,#14283c)}
.mobile-app-faq details p{font-size:.92rem;line-height:1.7;margin:12px 0 8px;max-width:42rem}
.mobile-app-faq details>a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.9rem;font-weight:650}
.mobile-browser-cta{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:56px;padding:32px;border-radius:28px;background:#fff0cf;border:1px solid #eedeb7}
.mobile-browser-cta>div{min-width:0}
.mobile-browser-cta .mobile-promo__eyebrow{margin-bottom:12px;color:#796234}
.mobile-browser-cta h2{font-size:1.9rem;margin-bottom:12px}
.mobile-browser-cta p:last-child{margin:0;font-size:.95rem;color:#665b43}
.mobile-browser-cta .button{flex:none}
@media(max-width:800px){
 .mobile-promo--spotlight,.mobile-promo--hero{grid-template-columns:minmax(0,1fr) minmax(180px,.7fr)}
 .mobile-promo__copy{padding:32px}
 .mobile-promo--hero .mobile-promo__copy{padding:32px 0 32px 32px}
 .mobile-promo__copy h2{font-size:2.35rem}
 .mobile-promo--hero h1{font-size:2.65rem}
 .mobile-promo__lead{font-size:1rem}
 .mobile-promo__art{padding:24px 16px 56px}
 .mobile-promo__art-note{left:12px;right:12px;font-size:.7rem}
 .mobile-promo__highlights{padding:20px 24px;gap:16px}
 .mobile-promo__highlights li{align-items:flex-start;justify-content:flex-start;font-size:.78rem;gap:8px}
 .mobile-promo__highlights svg{width:20px;height:20px}
 .mobile-promo--compact{padding:24px;gap:16px;flex-wrap:wrap}
 .mobile-promo__compact-george,.mobile-promo--compact>svg.george-motion{width:72px;height:72px}
 .mobile-promo--compact .button{margin-left:88px}
 .mobile-feature{padding:24px}
 .mobile-feature h3{font-size:1.25rem}
 .mobile-benefits{gap:20px;padding:24px 0 0}
 .mobile-launch{gap:24px;padding:24px}
}
@media(max-width:600px){
 .mobile-promo{border-radius:24px}
 .mobile-promo--spotlight{margin-top:32px;grid-template-columns:minmax(0,1fr)}
 .mobile-promo__copy,.mobile-promo--hero .mobile-promo__copy{padding:24px}
 .mobile-promo__copy h2{font-size:2.2rem}
 .mobile-promo__eyebrow{font-size:.68rem;margin-bottom:12px}
 .mobile-promo__lead{font-size:.98rem;line-height:1.6;margin-bottom:20px}
 .mobile-promo__status{font-size:.75rem;margin-bottom:20px}
 .mobile-promo__actions{gap:12px 16px}
 .mobile-promo__actions .button{width:100%;font-size:.9rem}
 .mobile-promo__text-link{font-size:.85rem}
 .mobile-promo--spotlight .mobile-promo__art{position:absolute;right:20px;top:20px;width:80px;min-height:80px;padding:0;background:none}
 .mobile-promo--spotlight .mobile-promo__copy>.mobile-promo__eyebrow{max-width:calc(100% - 80px);min-height:40px;display:flex;align-items:center}
 .mobile-promo--spotlight .mobile-promo__orbit,.mobile-promo--spotlight .mobile-promo__art-note{display:none}
 .mobile-promo__highlights{grid-template-columns:minmax(0,1fr);padding:20px 24px;gap:14px}
 .mobile-promo__highlights li{align-items:center;font-size:.82rem;gap:12px}
 .mobile-promo--hero{grid-template-columns:minmax(0,1fr)}
 .mobile-promo--hero h1{font-size:clamp(2.1rem,9vw,3rem)}
 .mobile-promo--hero .mobile-promo__art{padding:0 24px 36px;min-height:240px}
 .mobile-promo--hero .mobile-promo__art .mobile-promo__mascot,.mobile-promo--hero .mobile-promo__art>svg.george-motion{max-width:240px}
 .mobile-promo--hero .mobile-promo__orbit{width:200px}
 .mobile-promo--hero .mobile-promo__orbit--outer{width:260px}
 .mobile-promo--hero .mobile-promo__art-note{bottom:16px}
 .mobile-promo--compact{padding:20px;gap:12px;margin-top:32px}
 .mobile-promo__compact-george,.mobile-promo--compact>svg.george-motion{width:56px;height:56px;align-self:flex-start}
 .mobile-promo__compact-copy h2{font-size:1.2rem}
 .mobile-promo__compact-copy>p{font-size:.83rem}
 .mobile-promo--compact .button{margin:8px 0 0;width:100%;font-size:.9rem}
 .mobile-features,.mobile-app-faq{margin-top:40px}
 .mobile-section-heading h2{font-size:1.8rem}
 .mobile-features__grid{grid-template-columns:minmax(0,1fr)}
 .mobile-feature--globe{grid-row:auto}
 .mobile-feature__globe{max-width:260px;margin-top:24px}
 .mobile-feature h3{font-size:1.35rem}
 .mobile-feature p{font-size:.92rem}
 .mobile-benefits{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:24px}
 .mobile-benefits article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px 16px}
 .mobile-benefits .mobile-feature__icon{grid-row:span 2}
 .mobile-benefits h3{margin:0;align-self:center;min-height:28px;font-size:1.12rem}
 .mobile-benefits p{grid-column:2}
 .mobile-launch{grid-template-columns:minmax(0,1fr);margin-top:40px;padding:24px;gap:24px;border-radius:24px}
 .mobile-launch__intro h2,.mobile-app-faq h2{font-size:1.65rem}
 .mobile-launch__platform{padding:16px;gap:12px}
 .mobile-launch__pending{font-size:.65rem;padding:5px 8px}
 .mobile-browser-cta{flex-direction:column;align-items:stretch;gap:24px;margin-top:40px;padding:24px;border-radius:24px}
 .mobile-browser-cta h2{font-size:1.7rem}
 .mobile-browser-cta .button{width:100%}
}
@media(prefers-reduced-motion:reduce){.mobile-promo *, .mobile-app-page *{scroll-behavior:auto}}
@media print{.mobile-promo--spotlight,.mobile-promo--compact,.mobile-promo__art,.mobile-browser-cta{display:none}.mobile-feature__globe{max-width:200px}.mobile-features__grid,.mobile-benefits,.mobile-launch{break-inside:avoid}}
/* Text enlargement must wrap rather than disappear into a rounded card edge. */
.mobile-promo :is(h1,h2,h3,p,a),.mobile-app-page :is(h1,h2,h3,p,a,li){overflow-wrap:anywhere}
@media(max-width:600px){
 .mobile-promo--hero .mobile-promo__art{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 24px 24px}
 .mobile-promo--hero .mobile-promo__art-note{position:static;max-width:100%}
}
@media(max-width:360px){
 .mobile-promo--compact{display:block}
 .mobile-promo__compact-george,.mobile-promo--compact>svg.george-motion{display:none}
 .mobile-promo--compact .button{margin-top:20px}
}
@media(max-width:360px){.mobile-promo__copy h2,.mobile-promo--hero h1{font-size:1.8rem}}
