/* LaunchBridge storefront V2.2.0 — loaded after v2.css. Typography, logo, neutral brand identities, grouped offer cards. */
:root{
  --lb-ui:'Instrument Sans',ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --lb-display:'Sora',ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --lb-amber:#E8A33D;
}
body{font-family:var(--lb-ui)}

/* Original LB monogram and wordmark, restored exactly as in V2.1.9.5 (Georgia), independent of the new display font */
.v2-monogram,.v2-brand-copy strong{font-family:Georgia,"Times New Roman",serif}
/* Destination chevron drawn as an icon, so it no longer depends on a font glyph */
.v2-chevron{display:inline-grid;place-items:center;color:var(--lb-ink)}

/* Hero: headline in the display face; the image fades in only once it has fully loaded */
.v2-hero h1{font-family:var(--lb-display);font-weight:600;letter-spacing:-.04em;line-height:1.02}
.v2-hero-media>#heroImage{transition:opacity .3s ease}
.v2-hero-media.is-loading>#heroImage{opacity:.35}

/* Country selector: keep the flag and the name apart */
.v2-destination>span:first-child{display:inline-flex;align-items:center;gap:10px;min-width:0}
.v2-destination .v2-flag{flex:0 0 auto}
.v2-country-option{gap:12px}
.v2-country-option .v2-flag{flex:0 0 auto}

/* Neutral network identity: name + colour dot. Replaces every logo-like treatment from v2.css. */
body .v2-network .v2-network-word,
body .v2-network-word{background:#fff!important;color:var(--lb-ink)!important;border:1px solid var(--lb-line)!important;border-radius:14px!important;box-shadow:none!important;padding:0 14px!important;font-style:normal!important;font-family:var(--lb-ui)!important;min-width:0!important;width:auto!important}
.brand-sign{font-family:var(--lb-ui)!important;gap:8px}
.brand-sign-generic b{font-size:15px;font-weight:600;color:var(--lb-ink)}
.brand-dot{display:inline-block;width:11px;height:11px;border-radius:50%;flex:0 0 auto;background:var(--op1,var(--lb-accent));box-shadow:0 0 0 1px rgba(7,24,56,.18)}
.v2-network.active .v2-network-word{border-color:var(--lb-ink)!important}

/* Hidden basket panel: no shadow leaking into the page edge, and not focusable while closed */
.v2-basket-panel{visibility:hidden;transition:transform .25s ease,visibility 0s linear .25s}
.v2-basket.open .v2-basket-panel{visibility:visible;transition:transform .25s ease}
/* Network chooser: the chip already carries the name */
.v2-network-copy strong{display:none}

/* Grouped offer cards */
#productGrid.v2-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.lb-offer{--brand:var(--op1,var(--lb-accent));position:relative;background:#fff;border:1px solid var(--lb-line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:0 12px 32px rgba(16,37,71,.055)}
.lb-offer-band{height:6px;background:var(--brand)}
.lb-offer-head{display:flex;align-items:center;gap:12px;padding:18px 20px 0}
.lb-offer-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;background:color-mix(in srgb,var(--brand) 14%,#fff);color:var(--lb-ink)}
.lb-offer-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lb-offer-id{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.lb-offer-id strong{font:600 16px/1.2 var(--lb-display);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lb-offer-id small{font-size:12.5px;color:#4a5a73;line-height:1.3}
.lb-offer-count{font-size:11px;font-weight:600;letter-spacing:.04em;color:#4a5a73;background:var(--lb-surface);border-radius:999px;padding:5px 9px;white-space:nowrap}
.lb-offer-main{padding:16px 20px 0;display:flex;flex-direction:column;gap:5px}
.lb-offer-value{font:600 32px/1.08 var(--lb-display);letter-spacing:-.025em;color:var(--lb-ink);overflow-wrap:anywhere}
.lb-offer-detail{font-size:14px;font-weight:600;color:var(--lb-ink)}
.lb-offer-name{margin:2px 0 0;font-size:13px;line-height:1.45;color:#4a5a73;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lb-offer-chips{display:flex;flex-wrap:wrap;gap:8px;padding:14px 20px 0}
.lb-chip{min-height:40px;min-width:52px;padding:0 12px;border-radius:12px;border:1px solid #d5dce6;background:#fff;color:var(--lb-ink);font-size:13px;font-weight:500;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lb-chip:hover{border-color:var(--lb-ink)}
.lb-chip.active{background:var(--lb-ink);border-color:var(--lb-ink);color:#fff;font-weight:600}
.lb-chip-more{border-style:dashed;color:#4a5a73}
.lb-chip:focus-visible,.lb-offer-add:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 55%,#fff);outline-offset:2px}
.lb-offer-foot{margin-top:auto;padding:18px 20px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.lb-offer-price{display:flex;flex-direction:column;gap:2px;min-width:0}
.lb-offer-price strong{font:600 16px/1.2 var(--lb-display)}
.lb-offer-price small{font-size:12px;color:#4a5a73}
.lb-offer-add{min-height:44px;padding:0 20px;border-radius:12px;border:0;background:var(--lb-ink);color:#fff;font-weight:600;font-size:14px;flex:0 0 auto}
.lb-offer-add:hover{background:#1c3157}

/* Gift cards and PINs: a neutral card face in the brand's colours, name as text only */
.lb-gift-face{margin:16px 20px 0;border-radius:16px;min-height:118px;padding:16px 18px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,var(--mt1,var(--brand)),var(--mt2,#1E2B40));color:var(--mton,#fff)}
.lb-gift-face small{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;opacity:.9}
.lb-gift-face strong{font:600 20px/1.15 var(--lb-display);letter-spacing:-.01em}
.lb-gift-face span{font:600 15px/1.2 var(--lb-ui);opacity:.95}
.lb-offer.cat-voucher .lb-offer-band,.lb-offer.cat-pin .lb-offer-band{display:none}

/* eSIM cards use the destination's own colours */
.lb-offer.cat-esim{--brand:var(--lb-accent)}

/* Utility provider identity sits inside the card body */
.lb-offer .v2-service-provider{margin:14px 20px 0;position:static}

@media(max-width:1040px){#productGrid.v2-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  #productGrid.v2-products{grid-template-columns:1fr;gap:14px}
  .lb-offer-value{font-size:28px}
}

/* Kept from v2.css after removing logo-imitation rules */
.v2-cat[data-cat="mobile"]{font-weight:900}
/* Pagination wraps on phones instead of widening the page */
.v2-pagination{flex-wrap:wrap}

/* Search inside the current category */
.v2-search{position:relative;display:flex;align-items:center;height:44px;border:1px solid var(--lb-line);border-radius:14px;background:#fff;padding:0 12px;gap:8px;min-width:260px;color:#4a5a73}
.v2-search:focus-within{border-color:var(--lb-ink)}
.v2-search input{border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:var(--lb-ink);flex:1;min-width:0;height:100%}
.v2-search small{font-size:12px;white-space:nowrap}
@media(max-width:600px){.v2-catalogue-tools{flex-wrap:wrap}.v2-search{min-width:0;flex:1 1 100%}}
