/* ===========================================================
   RareVision — shared design system
   Used by: department pages, checkout, and the cart drawer.
   index.html keeps its own inline CSS and also loads this for
   the shared chrome (cart button + drawer + departments grid).
   =========================================================== */
:root{
  --bg:#050505;--bg-soft:#0a0a0c;--bg-card:#111111;
  --line:rgba(255,255,255,.08);--line-strong:rgba(255,255,255,.16);
  --txt:#ffffff;--muted:#9a9a9a;--muted-2:#6a6a72;
  --vio:#8B5CF6;--cy:#00C2FF;--lime:#00C2FF;--violet:#8B5CF6;--cyan:#00C2FF;
  --r:18px;--grad:linear-gradient(95deg,var(--vio),var(--cy));
}
html[data-theme="light"]{--bg:#f6f6f8;--bg-soft:#eeeef2;--bg-card:#ffffff;--line:rgba(10,10,20,.1);--line-strong:rgba(10,10,20,.2);--txt:#0b0b10;--muted:#5b5b63;--muted-2:#9a9aa2;}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body.rv{background:var(--bg);color:var(--txt);font-family:'Inter',sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .4s,color .4s;min-height:100vh;display:flex;flex-direction:column}
::selection{background:var(--vio);color:#fff}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
[dir="rtl"]{text-align:right}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px;width:100%}
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--vio)}
h1,h2,h3{font-weight:800;letter-spacing:-.025em;line-height:1.06}
.glow{position:absolute;border-radius:50%;filter:blur(120px);pointer-events:none;z-index:0}
.glow.v{background:rgba(139,92,246,.24)}.glow.c{background:rgba(0,194,255,.17)}
html[data-theme="light"] .glow{opacity:.5}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600;font-size:14px;padding:14px 26px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:.35s;white-space:nowrap;font-family:inherit;color:#fff}
.btn .arr{transition:transform .35s}.btn:hover .arr{transform:translateX(4px)}
.btn-grad{background:var(--grad);color:#fff}
.btn-grad:hover{box-shadow:0 0 34px -6px rgba(139,92,246,.65);transform:translateY(-2px)}
.btn-grad:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.btn-ghost{background:rgba(255,255,255,.04);color:var(--txt);border-color:var(--line)}
.btn-ghost:hover{border-color:rgba(255,255,255,.28)}
html[data-theme="light"] .btn-ghost{background:rgba(10,10,20,.04)}
.btn-dark{background:var(--bg-card);color:var(--txt);border-color:var(--line)}
.btn-dark:hover{border-color:var(--line-strong)}
.btn-sm{padding:11px 18px;font-size:13.5px}

/* ---------- top nav (department/checkout pages) ---------- */
.rvnav{position:sticky;top:0;z-index:900;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 28px;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.rvnav .brand b{font-size:17px;font-weight:800;letter-spacing:.18em;line-height:1}
.rvnav .brand span{display:block;font-size:8.5px;letter-spacing:.4em;color:var(--muted);margin-top:3px}
.rvnav .links{display:flex;gap:24px;font-size:13.5px;color:var(--muted)}
.rvnav .links a{padding:4px 0;transition:.25s}
.rvnav .links a:hover,.rvnav .links a.active{color:var(--txt)}
.rvnav .right{display:flex;align-items:center;gap:10px}
.langsel{background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--txt);border-radius:10px;padding:9px 12px;font-family:inherit;font-size:13px;cursor:pointer}
html[data-theme="light"] .langsel{background:rgba(10,10,20,.05)}
.themebtn{width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--txt);cursor:pointer;display:grid;place-items:center;transition:.3s}
html[data-theme="light"] .themebtn{background:rgba(10,10,20,.04)}
.themebtn:hover{border-color:var(--line-strong)}
.menu-toggle{display:none;background:none;border:1px solid var(--line-strong);color:var(--txt);border-radius:10px;padding:9px 12px;cursor:pointer;font-size:18px;line-height:1}
.rvnav.open .menu-toggle{background:var(--grad);border-color:transparent;color:#fff}

/* ---------- cart button (works in any nav) ---------- */
.cartbtn{position:relative;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--txt);cursor:pointer;font-family:inherit;font-size:13.5px;font-weight:600;transition:.25s}
html[data-theme="light"] .cartbtn{background:rgba(10,10,20,.04)}
.cartbtn:hover{border-color:var(--line-strong)}
.cartbtn .cc{min-width:20px;height:20px;padding:0 6px;border-radius:100px;background:var(--grad);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center}
.cartbtn .cc.zero{background:var(--line-strong);color:var(--muted)}
.cartbtn .lbl{display:inline}

/* ---------- cart drawer ---------- */
.cart-scrim{position:fixed;inset:0;z-index:1500;background:rgba(3,3,5,.6);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:.3s}
.cart-scrim.open{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;z-index:1600;width:min(420px,92vw);background:var(--bg-soft);border-left:1px solid var(--line);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
[dir="rtl"] .cart-drawer{right:auto;left:0;border-left:none;border-right:1px solid var(--line);transform:translateX(-100%)}
.cart-drawer.open{transform:none}
.cart-drawer .cd-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line)}
.cart-drawer .cd-head h3{font-size:16px;display:flex;align-items:center;gap:10px}
.cart-drawer .cd-head .cc{font-size:11px;background:var(--grad);color:#fff;border-radius:100px;padding:3px 10px;font-weight:800}
.cd-close{width:36px;height:36px;border-radius:9px;border:1px solid var(--line);background:none;color:var(--muted);cursor:pointer;font-size:18px;display:grid;place-items:center;transition:.2s}
.cd-close:hover{border-color:var(--line-strong);color:var(--txt)}
.cd-body{flex:1;overflow-y:auto;padding:16px 22px;display:flex;flex-direction:column;gap:10px}
.cd-empty{text-align:center;color:var(--muted-2);padding:48px 12px;font-size:14px}
.cd-empty .ic{width:58px;height:58px;border-radius:16px;margin:0 auto 16px;background:rgba(139,92,246,.1);border:1px solid rgba(139,92,246,.25);display:grid;place-items:center;color:#b79bff}
.cd-line{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:12px 13px;background:var(--bg-card)}
.cd-line .thumb{width:46px;height:46px;border-radius:10px;object-fit:cover;flex:none;background:#000;border:1px solid var(--line)}
.cd-line .ci{flex:1;min-width:0}
.cd-line .ci b{font-size:13.5px;font-weight:600;display:block;line-height:1.3}
.cd-line .ci span{font-size:11.5px;color:var(--muted)}
.cd-line .cp{font-weight:700;font-size:13.5px;white-space:nowrap}
.cd-qty{display:inline-flex;align-items:center;border:1px solid var(--line-strong);border-radius:9px;overflow:hidden;margin-top:6px}
.cd-qty button{width:26px;height:26px;background:rgba(255,255,255,.04);border:none;color:var(--txt);font-size:15px;cursor:pointer;font-family:inherit}
html[data-theme="light"] .cd-qty button{background:rgba(10,10,20,.04)}
.cd-qty button:hover{background:var(--grad);color:#fff}
.cd-qty .qv{min-width:28px;text-align:center;font-weight:700;font-size:13px}
.cd-rm{width:24px;height:24px;border-radius:7px;border:1px solid var(--line);background:none;color:var(--muted);cursor:pointer;font-size:13px;flex:none;transition:.2s}
.cd-rm:hover{border-color:#e57373;color:#e57373}
.cd-foot{border-top:1px solid var(--line);padding:18px 22px;display:flex;flex-direction:column;gap:13px;background:var(--bg-soft)}
.cd-tot{display:flex;justify-content:space-between;align-items:baseline}
.cd-tot .tl{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.cd-tot .tv{font-size:24px;font-weight:800;letter-spacing:-.02em}
.cd-note{font-size:11.5px;color:var(--muted-2);text-align:center;display:flex;align-items:center;justify-content:center;gap:6px}

/* toast */
.rv-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);z-index:1700;background:var(--bg-card);border:1px solid var(--line-strong);border-radius:12px;padding:13px 20px;font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:10px;opacity:0;pointer-events:none;transition:.3s;box-shadow:0 20px 50px -20px rgba(0,0,0,.6)}
.rv-toast.show{opacity:1;transform:translate(-50%,0)}
.rv-toast .dot{width:18px;height:18px;border-radius:50%;background:var(--grad);display:grid;place-items:center;flex:none}

/* ---------- generic section / page chrome ---------- */
.section{padding:90px 0;position:relative}
.page-hero{position:relative;padding:120px 0 50px;overflow:hidden}
.page-hero .eyebrow{margin-bottom:14px}
.page-hero h1{font-size:clamp(36px,6vw,68px);letter-spacing:-.03em}
.page-hero p.lede{color:var(--muted);font-size:clamp(15px,2vw,18px);max-width:560px;margin-top:18px;line-height:1.6}
.crumbs{display:flex;gap:8px;align-items:center;font-size:12.5px;color:var(--muted-2);margin-bottom:22px}
.crumbs a:hover{color:var(--txt)}
.crumbs .sep{opacity:.5}

/* ---------- departments grid (homepage + cross-links) ---------- */
.dept-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.dept{position:relative;display:flex;flex-direction:column;justify-content:flex-end;grid-column:span 2;min-height:260px;border:1px solid var(--line);border-radius:20px;padding:24px;overflow:hidden;background:var(--bg-card);isolation:isolate;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .45s}
.dept.feature{grid-column:span 3;min-height:330px;padding:30px}
.dept:hover{transform:translateY(-7px);border-color:rgba(139,92,246,.5);box-shadow:0 32px 84px -36px rgba(139,92,246,.62)}
.dept .dimg{position:absolute;inset:0;z-index:-3;object-fit:cover;width:100%;height:100%;opacity:.62;transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .5s}
.dept:hover .dimg{opacity:.78;transform:scale(1.07)}
.dept::after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(5,5,7,.12) 0%,rgba(5,5,7,.5) 52%,rgba(5,5,7,.95) 100%)}
html[data-theme="light"] .dept::after{background:linear-gradient(180deg,rgba(246,246,248,.05),rgba(246,246,248,.55) 52%,rgba(246,246,248,.97))}
.dept::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(120% 80% at 12% -10%,rgba(139,92,246,.32),transparent 55%),radial-gradient(120% 90% at 105% 110%,rgba(0,194,255,.26),transparent 55%);opacity:0;transition:opacity .5s}
.dept:hover::before{opacity:1}
.dept .dicon{position:absolute;top:22px;left:24px;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.09);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:#fff;transition:.45s}
.dept:hover .dicon{transform:translateY(-2px);background:rgba(255,255,255,.16)}
.dept .dno{position:absolute;top:14px;right:22px;font-size:48px;font-weight:800;letter-spacing:-.05em;line-height:1;color:transparent;-webkit-text-stroke:1.4px rgba(255,255,255,.26);user-select:none}
html[data-theme="light"] .dept .dno{-webkit-text-stroke-color:rgba(10,10,20,.18)}
.dept.feature .dno{font-size:64px}
.dept h3{font-size:22px;margin-bottom:7px;letter-spacing:-.02em;color:#fff}
html[data-theme="light"] .dept h3{color:var(--txt)}
.dept.feature h3{font-size:28px}
.dept p{font-size:13.5px;color:#cdcdd6;line-height:1.5;max-width:36ch}
html[data-theme="light"] .dept p{color:#3a3a44}
.dept .go{margin-top:16px;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#fff}
html[data-theme="light"] .dept .go{color:var(--txt)}
.dept .go .arr{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--grad);color:#fff;font-size:12px;transition:transform .35s}
.dept:hover .go .arr{transform:translateX(5px)}
.dept .from{position:absolute;bottom:24px;right:24px;font-size:12.5px;font-weight:700;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.22);padding:6px 13px;border-radius:100px;color:#fff}
.dept.book .from,.dept.book .dicon{background:var(--grad);border-color:transparent;color:#fff}

/* category switcher (on department pages) */
.cat-switch{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:36px}
.cat-switch a{padding:10px 17px;border-radius:11px;border:1px solid var(--line);font-size:13px;color:var(--muted);transition:.25s;font-weight:600}
.cat-switch a:hover{border-color:var(--line-strong);color:var(--txt)}
.cat-switch a.active{background:var(--grad);border-color:transparent;color:#fff}

/* ---------- product cards ---------- */
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}
.prod-grid.two{grid-template-columns:repeat(2,1fr)}
.pcard{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--bg-card);display:flex;flex-direction:column;transition:.4s;position:relative}
.pcard:hover{border-color:rgba(139,92,246,.4);transform:translateY(-4px);box-shadow:0 26px 64px -32px rgba(139,92,246,.5)}
.pcard.feature{border-color:rgba(139,92,246,.45)}
.pcard .ribbon{position:absolute;top:14px;right:14px;z-index:3;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;background:var(--grad);color:#fff;padding:5px 11px;border-radius:100px}
.pcard .pmedia{position:relative;aspect-ratio:16/10;background:#000;overflow:hidden;cursor:zoom-in}
.pcard .pmedia img,.pcard .pmedia video{width:100%;height:100%;object-fit:cover;transition:.5s}
.pcard:hover .pmedia img,.pcard:hover .pmedia video{transform:scale(1.04)}
.pcard .pbody{padding:22px 22px 0;display:flex;flex-direction:column;gap:9px;flex:1}
.pcard .pk{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#7fd6ff;font-weight:700}
.pcard h3{font-size:19px}
.pcard .pdesc{font-size:13.5px;color:var(--muted);line-height:1.55}
.pcard .feats{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:4px}
.pcard .feats li{display:flex;gap:9px;font-size:13px;color:var(--txt);align-items:flex-start}
.pcard .feats li::before{content:"";flex:none;width:17px;height:17px;border-radius:50%;margin-top:2px;background:rgba(0,194,255,.16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='%2300C2FF' stroke-width='3'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/11px no-repeat}
.pcard .pfoot{margin-top:auto;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.pcard .price{font-size:24px;font-weight:800;letter-spacing:-.02em}
.pcard .price small{display:block;font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.1em}
.pcard .price .was{font-size:13px;color:var(--muted-2);text-decoration:line-through;margin-right:6px;-webkit-text-decoration:line-through}

/* table-style price rows (template page) */
.price-rows{display:flex;flex-direction:column;gap:1px;border-radius:12px;overflow:hidden;border:1px solid var(--line)}
.price-rows .pr{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:rgba(255,255,255,.025);font-size:14px;gap:14px}
html[data-theme="light"] .price-rows .pr{background:rgba(10,10,20,.03)}
.price-rows .pr .lbl b{font-weight:700;font-size:15px;display:block}
.price-rows .pr .lbl span{font-size:12px;color:var(--muted)}
.price-rows .pr .rt{display:flex;align-items:center;gap:14px}
.price-rows .pr .px{font-size:17px;font-weight:800}

/* format chips */
.fmtpick{display:flex;align-items:center;gap:10px;margin-bottom:24px;flex-wrap:wrap}
.fmtpick .lab{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.fmtchip{padding:9px 18px;border-radius:10px;border:1px solid var(--line);background:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;transition:.25s}
.fmtchip.active{background:var(--grad);color:#fff;border-color:transparent}

/* feature banner / monthly */
.banner{display:grid;grid-template-columns:1.05fr 1fr;gap:0;border:1px solid rgba(139,92,246,.32);border-radius:var(--r);overflow:hidden;background:var(--bg-card)}
.banner .bmedia{position:relative;background:#000;min-height:300px}
.banner .bmedia img,.banner .bmedia video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.banner .bbody{padding:44px 40px;background:linear-gradient(150deg,rgba(139,92,246,.14),rgba(0,194,255,.05)),var(--bg-card)}
.banner .bbody h2{font-size:clamp(26px,3.2vw,38px);margin:12px 0 14px}
.banner .bbody p{color:var(--muted);max-width:420px;margin-bottom:22px;line-height:1.6}
.banner .bbody .price{font-size:34px;font-weight:800;letter-spacing:-.02em;margin-bottom:24px}
.banner .bbody .price small{font-size:14px;font-weight:600;color:var(--muted)}

/* booking form (custom page) */
.formcard{border:1px solid var(--line);border-radius:var(--r);background:var(--bg-card);padding:32px}
.fld{margin-bottom:16px}
.fld label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:8px}
.fld .req{color:var(--cy)}
.fin{width:100%;background:var(--bg-soft);border:1px solid var(--line);border-radius:11px;padding:13px 14px;color:var(--txt);font-family:inherit;font-size:14px;transition:.2s}
.fin:focus{outline:none;border-color:var(--cy)}
textarea.fin{resize:vertical;min-height:96px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{padding:9px 15px;border:1px solid var(--line-strong);border-radius:10px;font-size:13px;color:var(--muted);cursor:pointer;transition:.25s;user-select:none}
.chip.on{background:var(--grad);color:#fff;border-color:transparent}
.fmsg{font-size:13px;display:none;margin-top:6px}

/* model picker (checkout) */
.mgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.mcard{border:1px solid var(--line);border-radius:12px;overflow:hidden;cursor:pointer;background:var(--bg-card);transition:.25s}
.mcard:hover{border-color:var(--line-strong)}
.mcard.sel{border:1.5px solid transparent;background:linear-gradient(var(--bg-card),var(--bg-card)) padding-box,var(--grad) border-box}
.mcard img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.mcard .mn{padding:9px 11px;font-size:12.5px;font-weight:600;display:flex;align-items:center;justify-content:space-between}
.mcard .mn .dot{width:13px;height:13px;border-radius:50%;border:1px solid var(--line-strong)}
.mcard.sel .mn .dot{background:var(--grad);border-color:transparent}

/* trust strip */
.trust-strip{display:flex;gap:26px;flex-wrap:wrap;margin-top:30px}
.trust-strip .ts{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}
.trust-strip .ts svg{flex:none;color:#7fd6ff}
.trust-strip .ts b{color:var(--txt);font-weight:600}

/* footer */
.rvfoot{border-top:1px solid var(--line);background:var(--bg-soft);padding:54px 0 26px;position:relative;z-index:1;margin-top:auto}
.foot-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:38px;margin-bottom:44px}
.foot-top .fb b{font-size:20px;font-weight:800;letter-spacing:.08em}
.foot-top .fb p{color:var(--muted);font-size:13.5px;margin-top:13px;max-width:240px;line-height:1.6}
.fcol h5{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:16px}
.fcol a{display:block;color:var(--muted);font-size:13.5px;margin-bottom:11px;transition:.25s}
.fcol a:hover{color:var(--txt)}
.foot-bot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:24px;color:var(--muted-2);font-size:12px;flex-wrap:wrap;gap:14px}

/* reveal */
.reveal{opacity:0;transform:translateY(26px);filter:blur(6px);transition:.8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none;filter:blur(0)}

/* ---------- responsive ---------- */
@media(max-width:1000px){
  .rvnav .links{display:none}
  .rvnav.open .links{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:2px;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 28px 16px;font-size:15px}
  .rvnav.open .links a{padding:13px 4px;border-bottom:1px solid var(--line)}
  .rvnav.open .links a:last-child{border-bottom:none}
  .menu-toggle{display:block}
  .dept-grid{grid-template-columns:repeat(2,1fr)}
  .dept,.dept.feature{grid-column:span 1;min-height:240px}
  .prod-grid,.prod-grid.two{grid-template-columns:1fr 1fr}
  .banner{grid-template-columns:1fr}.banner .bmedia{min-height:220px}
  .foot-top{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .wrap{padding:0 18px}.rvnav{padding:13px 16px}.section{padding:64px 0}
  .page-hero{padding:96px 0 36px}
  .cartbtn .lbl{display:none}.cartbtn{padding:0 10px}
  .dept-grid,.prod-grid,.prod-grid.two,.grid2,.mgrid,.foot-top{grid-template-columns:1fr}
  .dept,.dept.feature{grid-column:auto;min-height:200px}
  .langsel{display:none}
  .rvnav.open .langsel{display:block}
  .formcard{padding:22px}
  .banner .bbody{padding:28px 22px}
  .trust-strip{gap:14px}
}
