/* SimPass Go: navy, blue and teal in solid surfaces. */
:root{--blue:var(--brand-primary);--cyan:var(--brand-teal);--muted:#53657a}
.site-header{background:#fff;backdrop-filter:none;border-bottom:1px solid #dbe4ed}
.hero,.hero-premium,.home-hero{background-color:#edf5fb;background-image:none}
.btn-primary,.button-primary,.checkout-submit,.cart-sticky-action,.plan-card .btn,.plan-buy,.plan-cta{background:#0766b4;color:#fff;border-color:#0766b4;text-shadow:none}
.btn-primary:hover,.button-primary:hover,.checkout-submit:hover,.cart-sticky-action:hover,.plan-buy:hover,.plan-cta:hover{background:#084c86;color:#fff}
.plan-card,.destination-card,.checkout-card,.order-summary,.search-panel{background:#fff;border-color:#d7e2ed;backdrop-filter:none}
.hero h1 span,.gradient-text{color:#0766b4;background:none;-webkit-text-fill-color:currentColor}
.hero h1 em{color:#0766b4;background:none;-webkit-text-fill-color:currentColor}.hero h1 em:after{background:#bce6e5}
.search-control button,.primary-button,.nav-actions .account,.my-esims,.mobile-auth .mobile-account{background:#0766b4;color:#fff}
.search-control button:hover,.primary-button:hover{background:#084c86;color:#fff}
.hero-stamp{background:#087f87;color:#fff}.connection-card{background:#fff;backdrop-filter:none}
.destination-card,.destination-card.card-7{background:#fff}.soft-section,.narrow-hero,.account-hero,.simple-page{background:#edf5fb}
.compatibility,.final-cta{background:#102c4d}.final-cta .primary-button{background:#fff;color:#102c4d}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #087f87;outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.hero:before,.hero-visual:before{display:none}.steps li{background:#183c60;border-color:#345572}.step-icon{background:#214b6c;color:#86e5df}
.how{background:#102c4d}.compatibility h2,.how h2,.final-cta h2{color:#fff}.compatibility p,.how-heading p,.final-cta p{color:#d6e3f1}.compatibility .kicker,.how .kicker,.final-cta .kicker{color:#86e5df}

/* Readable text on navy sections; light search fields keep their own ink color. */
.how,.compatibility,.final-cta,.compat-callout{color:#fff;--muted:#d6e3f1}
.how h2,.how h3,.compatibility h2,.compatibility h3,.final-cta h2,.compat-callout h2{color:#fff}
.how .how-heading p,.how .steps p,.compatibility .compat-copy p,.final-cta p,.compat-callout p{color:#e0e9f5}
.how .kicker,.compatibility .kicker,.final-cta .kicker,.compat-callout .kicker{color:#9ff5e9}
.how .steps li>span{color:#b5dbed;opacity:1}
.compatibility .outline-button,.how .primary-button{background:#fff;color:#102c4d;border-color:#fff}
.compatibility .outline-button:hover,.how .primary-button:hover{background:#dff7f2;color:#102c4d;border-color:#dff7f2}
footer .footer-brand>p,footer .footer-grid a,footer .footer-grid button{color:#e0e9f5}
footer .shop-footer-grid small{color:#cbd8e9}footer .footer-grid h3{color:#a5f5ec}
.how a:focus-visible,.compatibility a:focus-visible,.final-cta a:focus-visible,footer a:focus-visible{outline-color:#a5f5ec}
/* One palette for public, purchase and account actions. */

[data-destination-shop] .purchase-cta:not(:disabled){background:var(--brand-primary);color:#fff;border:2px solid var(--brand-primary);box-shadow:none}
[data-destination-shop] .purchase-cta:not(:disabled):hover{background:var(--brand-hover);border-color:var(--brand-hover);box-shadow:none}
[data-destination-shop] .purchase-cta:disabled{background:#e7edf4;color:#44556b;border:1px solid #becbd9;opacity:1;box-shadow:none;cursor:not-allowed}
.outline-button,.dashboard-nav a{color:var(--brand-hover);border-color:var(--brand-border)}
.outline-button{background:#fff}.outline-button:hover{background:var(--brand-surface);color:var(--brand-hover)}
.esim-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.esim-filters button{font:inherit;font-size:.85rem;font-weight:650;min-height:40px;padding:8px 14px;border:1px solid var(--brand-border);border-radius:9px;background:#fff;color:var(--brand-hover);cursor:pointer}.esim-filters button[aria-pressed=true]{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.esim-filters button:hover{border-color:var(--brand-primary)}
[data-esim-card][hidden],[data-esim-state][hidden],[data-esim-filter-empty][hidden]{display:none!important}
.install-deadline{font-size:.85rem;overflow-wrap:anywhere}.install-deadline.is-near{color:#805514;border-left:3px solid #b37a19;padding-left:8px}
.plan-installation-rules>details>ol{padding-left:22px;margin:10px 0}.plan-installation-rules>details>ol li{margin:8px 0}.plan-installation-rules>details>ol li strong{color:var(--brand-navy)}

/* Make inline help links recognizable without changing navigation or buttons. */
.faq-list details p a{color:var(--brand-primary);text-decoration:underline;text-underline-offset:3px}
.faq-list details p a:hover,.faq-list details p a:focus-visible{color:var(--brand-hover)}

.chat-launcher{background:var(--brand-primary)}
.chat-launcher:hover,.chat-launcher:focus-visible{background:var(--brand-hover)}

.header-logout{margin:0}.header-logout button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid var(--brand-border);border-radius:10px;background:#fff;color:var(--brand-hover);font:inherit;font-size:.8rem;font-weight:650;white-space:nowrap;cursor:pointer}.header-logout button:hover{background:var(--brand-surface)}.header-logout button:focus-visible{outline:3px solid var(--brand-primary);outline-offset:3px}
.mobile-auth:has(.header-logout){grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.mobile-auth .header-logout button{width:100%;font-size:12px;padding:8px 5px}.mobile-auth:has(.header-logout)>a{font-size:12px;gap:4px}.mobile-auth:has(.header-logout) .mobile-account svg{display:none}
@media(max-width:1280px){.has-customer-nav .desktop-nav,.has-customer-nav .nav-actions{display:none}.has-customer-nav .menu-button{display:grid;place-items:center}.has-customer-nav .mobile-nav.is-open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;padding:14px 20px 22px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 15px 30px #071b611f}.has-customer-nav .mobile-nav>a{padding:12px 4px;font-weight:700}.has-customer-nav .mobile-selects{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:7px;padding-top:13px}.has-customer-nav .mobile-selects select{max-width:100%;min-width:0;height:40px}}
/* Mobile navigation remains scrollable in short and landscape viewports. */
@media(max-width:1280px){
.site-header .mobile-nav.is-open{max-height:calc(100dvh - 86px - env(safe-area-inset-top));overflow-y:auto;overscroll-behavior:contain;padding:8px 16px calc(12px + env(safe-area-inset-bottom));gap:0}
.site-header .mobile-nav>a,.site-header .mobile-auth>a{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 4px;font-size:.86rem;line-height:1.35;color:var(--brand-navy);background:transparent;border:0;border-radius:0;justify-content:flex-start;overflow-wrap:anywhere}
.site-header .mobile-nav a svg{width:18px;height:18px;flex:0 0 18px;opacity:.75}
.site-header .mobile-auth{display:flex;flex-direction:column;gap:0;margin-top:8px;padding-top:8px;border-top:1px solid var(--brand-border)}
.site-header .mobile-auth .header-logout{order:2;margin-top:4px}.site-header .mobile-auth .header-logout button{justify-content:flex-start;border:0;padding:8px 4px;font-size:.8rem;color:#64748b}
.site-header .mobile-selects{gap:8px;margin:4px 0;padding-top:4px}.site-header .mobile-selects select{height:40px;min-width:0;max-width:100%}
}
/* Reserve a separate bottom support strip throughout the customer panel. */
@media(max-width:760px){
body:has(.account-content){padding-bottom:calc(66px + env(safe-area-inset-bottom))}
body:has(.account-content) .support-chat{left:0;right:0;bottom:0;height:calc(62px + env(safe-area-inset-bottom));padding:7px max(16px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom));display:flex;justify-content:flex-end;background:#fffffff5;border-top:1px solid #dce8ef;backdrop-filter:blur(8px)}
body:has(.account-content) .chat-launcher{height:46px;min-height:46px;width:auto;padding:0 16px;gap:8px}
body:has(.account-content) .chat-launcher span{position:static;width:auto;height:auto;clip:auto;overflow:visible;font-size:.8rem}
body:has(.account-content) .chat-panel{position:fixed;inset:0;width:100%;height:100dvh;max-height:none;border:0;border-radius:0}
}
@media(max-width:760px){body:has(.customer-scroll){display:flex;flex-direction:column;height:100dvh;overflow:hidden;padding-bottom:calc(62px + env(safe-area-inset-bottom))}body:has(.customer-scroll)>.site-header{flex-shrink:0}.customer-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scroll-padding-block:12px}.customer-scroll main{min-width:0}}

@media(max-width:1280px){.site-header .mobile-nav .mobile-auth>a.mobile-account{display:flex;justify-content:flex-start!important;margin:0;font-size:.86rem;text-align:left;padding:8px 4px;gap:10px;background:transparent;color:var(--brand-navy);border:0}.site-header .mobile-nav .mobile-auth .mobile-account svg:first-child{display:block}.site-header .mobile-nav .mobile-auth .mobile-account svg:last-child{display:none}}
