/* Booking pages (eSIMs, lounges) – sits on top of /account/account.css */
body{background:#fff}
.bk-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#D9EEFB,#F4F9FD 55%,#E6F2FB)}
.bk-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.bk-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.7) 45%,rgba(255,255,255,.2) 100%)}
.bk-hero .wrap{position:relative;z-index:1;padding:46px 0 40px}
.bk-hero h1{font-size:clamp(34px,4.6vw,56px);letter-spacing:-.03em;line-height:1.05}
.bk-hero p.lead{color:var(--ink);font-size:18px;margin:10px 0 22px;max-width:620px}
.crumbs{font-size:14px;font-weight:600;margin-bottom:12px}
.crumbs a{color:var(--sky-deep)}
.bar{display:flex;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:22px;padding:8px;box-shadow:0 24px 60px -34px rgba(11,31,58,.45);max-width:860px;position:relative}
.bar .fld{flex:1 1 240px;display:flex;flex-direction:column;justify-content:center;background:var(--mist);border-radius:16px;padding:8px 16px;border:1.5px solid transparent;position:relative}
.bar .fld:focus-within{border-color:var(--sky-deep);background:#fff}
.bar .fld span{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.bar .fld input,.bar .fld select{border:0;background:none;font:inherit;font-size:16.5px;font-weight:600;color:var(--navy);outline:none;padding:2px 0;width:100%}
.bar .go{border:0;cursor:pointer;font:inherit;font-weight:700;font-size:16px;background:var(--navy);color:#fff;border-radius:16px;padding:0 26px;min-height:58px}
.sugg{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 50px -24px rgba(11,31,58,.4);z-index:30;overflow:hidden}
.sugg button{display:flex;width:100%;gap:12px;align-items:center;text-align:left;border:0;background:none;padding:11px 16px;cursor:pointer;font:inherit}
.sugg button:hover,.sugg button.on{background:var(--mist)}
.sugg b{color:var(--navy)}
.sugg small{color:var(--muted)}
.sugg .code{font-weight:800;color:var(--sky-deep);width:42px}
.page{padding:34px 0 70px}
.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.ccard{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px;cursor:pointer;text-align:left;font:inherit;transition:transform .15s,box-shadow .15s,border-color .15s}
.ccard:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#CFE3F5}
.ccard img{width:44px;height:32px;border-radius:6px;object-fit:cover;flex-shrink:0;background:var(--mist)}
.ccard b{display:block;color:var(--navy)}
.ccard small{color:var(--muted)}
.plans{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
.plan{background:#fff;border:1.5px solid var(--line);border-radius:18px;padding:18px;cursor:pointer;text-align:left;font:inherit;display:flex;flex-direction:column;gap:4px}
.plan:hover{border-color:#CFE3F5;box-shadow:var(--shadow)}
.plan.on{border-color:var(--sky-deep);box-shadow:0 0 0 3px rgba(30,111,217,.15)}
.plan .gb{font-size:26px;font-weight:800;color:var(--navy);line-height:1.1}
.plan .pr{font-size:20px;font-weight:800;color:var(--sky-deep);margin-top:6px}
.lcard{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;cursor:pointer;text-align:left;font:inherit;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s;padding:0}
.lcard:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.lcard .ph{height:170px;background:linear-gradient(135deg,#0B1F3A,#1E6FD9);position:relative}
.lcard .ph img{width:100%;height:100%;object-fit:cover;display:block}
.lcard .body{padding:16px 18px 18px;display:grid;gap:4px}
.lcard .price{font-size:22px;font-weight:800;color:var(--navy)}
.fac{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.fac span{font-size:12.5px;font-weight:600;color:var(--sky-deep);background:var(--info-bg);border-radius:999px;padding:3px 10px}
.gallery{display:grid;grid-template-columns:2fr 1fr;gap:10px;border-radius:22px;overflow:hidden;height:380px}
.gallery img{width:100%;height:100%;object-fit:cover;display:block;min-height:0}
.gallery .gside{display:grid;gap:10px;grid-template-rows:1fr 1fr;min-height:0}
.layout{display:grid;grid-template-columns:1fr 420px;gap:28px;align-items:start}
.sticky{position:sticky;top:90px}
.sum{display:grid;gap:8px;font-size:15px}
.sum div{display:flex;justify-content:space-between;gap:10px}
.sum .tot{border-top:1px solid var(--line);padding-top:10px;font-weight:800;color:var(--navy);font-size:18px}
#payment-element{margin:6px 0 4px}
.steps{display:flex;gap:8px;font-size:13px;font-weight:700;color:var(--muted);margin-bottom:14px;flex-wrap:wrap}
.steps span.on{color:var(--navy)}
.ok-big{text-align:center;padding:10px 0}
.ok-big .tick{width:64px;height:64px;border-radius:50%;background:var(--ok-bg);color:var(--ok);display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px}
@media (max-width:960px){.layout{grid-template-columns:1fr}.sticky{position:static}.gallery{grid-template-columns:1fr}.gallery .gside{display:none}}
@media (max-width:560px){.bar .go{width:100%}.hide-s{display:none}}

body.detail .bk-hero h1,body.detail .bk-hero .lead{display:none}
body.detail .bk-hero .wrap{padding:22px 0}
@media (max-width:960px){.gallery{height:240px}}
