/* ============================================================
   Hotel Olympia Garden — site stylesheet
   Design system reused verbatim from Microbiome Friendly
   (navy/ivory/gold · Bricolage Grotesque + Hanken Grotesk).
   ============================================================ */
:root{
  --navy:#1B3856; --deep:#1B3856; --navy-line:#3A567A;
  --ivory:#F1EADC; --ivory2:#E7DECB; --science:#FBFAF6;
  --ink:#16203A; --ink-2:#565E78; --line:#D9CFBC;
  --gold:#C7A24B; --green:#2F7D55; --violet:#6B5CCB; --teal:#178B7A;
  --coral:#E2725B; --periwinkle:#7C83D8; --blue:#4E79A8;
  --display:'Bricolage Grotesque',system-ui,sans-serif;
  --sans:'Hanken Grotesk',system-ui,sans-serif;
  --r-sm:8px; --r-md:14px; --r-lg:22px; --r-pill:999px;
  --maxw:1240px;
  --shadow:0 18px 40px rgba(16,23,52,.10);
  --shadow-sm:0 6px 18px rgba(16,23,52,.08);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);
  font-weight:450;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
::selection{background:var(--navy);color:var(--ivory);}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
sup{font-feature-settings:"sups";font-size:.6em;}
h1,h2,h3,h4{margin:0;}

/* ---------- typography ---------- */
.h-display{font-family:var(--display);font-weight:800;letter-spacing:-0.035em;line-height:0.94;
  font-size:clamp(40px,6.4vw,86px);}
.h1{font-family:var(--display);font-weight:800;letter-spacing:-0.03em;line-height:1.0;
  font-size:clamp(30px,3.9vw,52px);}
.h2{font-family:var(--display);font-weight:700;letter-spacing:-0.02em;line-height:1.06;
  font-size:clamp(23px,2.5vw,32px);}
.h3{font-family:var(--display);font-weight:700;letter-spacing:-0.015em;line-height:1.12;
  font-size:clamp(18px,1.5vw,21px);}
.lead{font-family:var(--sans);font-weight:500;font-size:clamp(17px,1.55vw,21px);line-height:1.5;
  max-width:64ch;}
.body{font-size:16px;line-height:1.62;font-weight:500;}
.muted{color:var(--ink-2);}
.kicker{font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:0.5px;text-transform:uppercase;
  color:var(--ink-2);display:flex;align-items:center;gap:11px;margin-bottom:20px;}
.kicker .num{opacity:.5;}
.kicker::before{content:"";width:26px;height:2px;background:currentColor;opacity:.4;display:inline-block;flex:none;}
.label{font-family:var(--sans);font-weight:700;font-size:11px;letter-spacing:0.5px;text-transform:uppercase;color:var(--ink-2);}

/* ---------- layout ---------- */
.section{padding:96px 0;}
.section--tight{padding:64px 0;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 7%;}
.wrap--narrow{max-width:900px;}
.dark{background:var(--navy);color:#fff;}
.dark .muted{color:rgba(255,255,255,.62);}
.dark .kicker{color:rgba(255,255,255,.6);}
.dark .label{color:rgba(255,255,255,.6);}
.deep{background:var(--deep);color:#fff;}
.deep .muted{color:rgba(255,255,255,.62);}
.deep .kicker{color:rgba(255,255,255,.6);}
.ivory2{background:var(--ivory2);}
.science-bg{background:var(--science);}
.grid{display:grid;gap:22px;}
.g2{grid-template-columns:repeat(2,1fr);}
.g3{grid-template-columns:repeat(3,1fr);}
.g4{grid-template-columns:repeat(4,1fr);}
.g5{grid-template-columns:repeat(5,1fr);}
.center{text-align:center;}
.mxauto{margin-left:auto;margin-right:auto;}

/* ---------- buttons ---------- */
.btn{font-family:var(--sans);font-weight:650;font-size:15px;padding:13px 24px;border-radius:var(--r-pill);
  border:none;cursor:pointer;transition:.18s;display:inline-flex;align-items:center;gap:9px;line-height:1;}
.btn svg{width:17px;height:17px;}
.btn--primary{background:var(--navy);color:#fff;}
.btn--primary:hover{filter:brightness(1.14);transform:translateY(-1px);box-shadow:var(--shadow-sm);}
.btn--ghost{background:transparent;border:1.6px solid var(--navy);color:var(--navy);}
.btn--ghost:hover{background:var(--navy);color:#fff;}
.btn--gold{background:var(--gold);color:var(--ink);}
.btn--gold:hover{filter:brightness(1.06);transform:translateY(-1px);}
.dark .btn--ghost,.deep .btn--ghost,.hero .btn--ghost,.akk-hero .btn--ghost,.g-hero .btn--ghost,.cta-band .btn--ghost{border-color:rgba(255,255,255,.55);color:#fff;}
.dark .btn--ghost:hover,.deep .btn--ghost:hover,.hero .btn--ghost:hover,.akk-hero .btn--ghost:hover,.g-hero .btn--ghost:hover,.cta-band .btn--ghost:hover{background:#fff;color:var(--ink);border-color:#fff;}
.btn--lg{padding:16px 30px;font-size:16px;}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;}

/* ---------- pills / tags ---------- */
.pill{display:inline-flex;align-items:center;gap:7px;font-family:var(--sans);font-weight:700;font-size:11px;
  letter-spacing:0.5px;text-transform:uppercase;padding:6px 12px;border-radius:var(--r-pill);
  border:1.5px solid var(--line);color:var(--ink-2);background:#fff8;}
.dark .pill,.deep .pill,.hero .pill{border-color:var(--navy-line);color:rgba(255,255,255,.85);background:rgba(255,255,255,.06);}
.tag{display:inline-flex;align-items:center;font-family:var(--sans);font-weight:700;font-size:10.5px;
  letter-spacing:0.4px;text-transform:uppercase;padding:5px 11px;border-radius:var(--r-pill);color:var(--ink)!important;}
.dark .tag,.deep .tag,.hero .tag,.akk-hero .tag,.cta-band .tag,.mech .tag{color:#fff!important;}
.trust-strip{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center;}
.trust-strip .pill{font-size:10.5px;}

/* ---------- cards ---------- */
.card{background:var(--science);border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;}
.card--soft{background:#fff;}
.dark .card,.deep .card{background:rgba(255,255,255,.04);border-color:var(--navy-line);color:#fff;}
.card-ic{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;margin-bottom:16px;
  background:var(--navy);}
.card-ic svg{width:24px;height:24px;color:#fff;}
.card h3{margin-bottom:8px;}
.accent-dot{width:10px;height:10px;border-radius:50%;display:inline-block;}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:60;background:rgba(251,250,246,.86);backdrop-filter:saturate(140%) blur(12px);
  border-bottom:1px solid var(--line);}
.hdr__in{max-width:var(--maxw);margin:0 auto;padding:0 7%;display:flex;align-items:center;gap:18px;height:68px;}
.hdr__logo{display:flex;align-items:center;gap:10px;flex:none;}
.hdr__logo img{height:42px;width:auto;}
.hdr__nav{display:flex;align-items:center;gap:2px;margin-left:auto;}
.hdr__nav a{font-weight:550;font-size:14.5px;color:var(--ink);padding:9px 12px;border-radius:9px;transition:.15s;white-space:nowrap;}
.hdr__nav a:hover{background:#0000000a;}
.hdr__nav a.active{color:var(--navy);font-weight:700;}
.hdr__cta{display:flex;align-items:center;gap:10px;flex:none;margin-left:6px;}
.hdr__burger{display:none;background:none;border:none;cursor:pointer;padding:8px;margin-left:auto;}
.hdr__burger span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;border-radius:2px;transition:.2s;}
.langtog{font-weight:700;font-size:12px;letter-spacing:.5px;border:1.5px solid var(--line);border-radius:var(--r-pill);padding:9px 13px;color:var(--ink-2);transition:.15s;}
.langtog:hover{border-color:var(--navy);color:var(--navy);}
.cart-btn{position:relative;background:none;border:1.5px solid var(--navy);border-radius:var(--r-pill);
  width:42px;height:42px;display:grid;place-items:center;cursor:pointer;color:var(--navy);}
.cart-btn svg{width:19px;height:19px;}
.cart-count{position:absolute;top:-6px;right:-6px;background:var(--gold);color:#1f1804;font-size:10px;font-weight:800;
  min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;padding:0 4px;}
.cart-count:empty{display:none;}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;background:
   radial-gradient(1100px 620px at 78% -10%, rgba(255,255,255,.07) 0%, rgba(255,255,255,0) 60%),
   var(--navy);color:#fff;}
.hero__in{max-width:var(--maxw);margin:0 auto;padding:84px 7% 88px;display:grid;grid-template-columns:1.05fr .95fr;
  gap:40px;align-items:center;}
.hero h1{font-family:var(--display);font-weight:800;letter-spacing:-0.04em;line-height:0.92;
  font-size:clamp(46px,7vw,92px);text-shadow:0 2px 26px rgba(8,16,30,.5);}
.hero .sub{font-size:clamp(18px,1.7vw,23px);font-weight:500;color:rgba(255,255,255,.9);margin-top:20px;max-width:34ch;
  text-shadow:0 1px 14px rgba(8,16,30,.55);}
.hero .pill{text-shadow:none;}
.hero__art{position:relative;}
/* full-bleed hero photo as semi-background on the right, blended into navy */
.hero__bg{position:absolute;top:0;right:0;bottom:0;width:56%;z-index:0;
  background-size:cover;background-position:center;}
.hero__bg::after{content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg, var(--navy) 2%, rgba(27,56,86,.62) 24%, rgba(27,56,86,.10) 56%, rgba(27,56,86,.30) 100%),
    linear-gradient(0deg, rgba(20,42,66,.55), rgba(20,42,66,0) 42%);}
.hero__in{position:relative;z-index:1;}
@media (max-width:900px){
  .hero__bg{width:100%;}
  .hero__bg::after{background:linear-gradient(0deg, rgba(20,42,66,.82), rgba(20,42,66,.55) 60%, rgba(20,42,66,.62));}
}

/* product floating on a soft spotlight (for dark sections), no frame */
.prodglow{position:relative;display:grid;place-items:center;padding:20px;}
.prodglow::before{content:"";position:absolute;width:80%;height:88%;border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.16) 0%, rgba(255,255,255,0) 64%);}
.prodglow img{position:relative;z-index:1;filter:drop-shadow(0 22px 36px rgba(0,0,0,.45));}

/* ---------- biome ring inline svg holder ---------- */
.ring{display:inline-block;line-height:0;}

/* ---------- product card ---------- */
.pcard{background:var(--science);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;
  display:flex;flex-direction:column;transition:.2s;}
.pcard:hover{transform:translateY(-3px);box-shadow:var(--shadow);}
.pcard__img{padding:22px 18px 6px;display:grid;place-items:center;}
.pcard__img img{height:230px;width:auto;object-fit:contain;filter:drop-shadow(0 16px 26px rgba(16,23,52,.16));}
.pcard__b{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1;}
.pcard__cat{font-weight:700;font-size:11px;letter-spacing:.4px;text-transform:uppercase;margin-bottom:7px;color:var(--navy)!important;}
.pcard__name{font-family:var(--display);font-weight:800;letter-spacing:-0.02em;font-size:22px;}
.pcard__tag{color:var(--ink-2);font-size:14px;margin-top:6px;line-height:1.4;}
.pcard__benefits{list-style:none;padding:0;margin:13px 0 16px;display:flex;flex-direction:column;gap:6px;}
.pcard__benefits li{font-size:13.5px;font-weight:500;display:flex;gap:8px;align-items:center;}
.pcard__benefits li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);flex:none;}
.pcard__foot{margin-top:auto;display:flex;gap:10px;align-items:center;}
.pcard__price{font-family:var(--display);font-weight:800;font-size:19px;}

/* ---------- axis / mechanism steps ---------- */
.steps{counter-reset:step;display:grid;gap:18px;}
.step{display:flex;gap:18px;align-items:flex-start;}
.step__n{counter-increment:step;flex:none;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;
  font-family:var(--display);font-weight:800;display:grid;place-items:center;}
.step__n::before{content:counter(step);}

/* ---------- table ---------- */
.tbl{width:100%;border-collapse:collapse;font-size:14.5px;}
.tbl th{text-align:left;font-weight:700;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-2);
  padding:0 16px 12px;border-bottom:1.5px solid var(--line);}
.tbl td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;}
.tbl tr:last-child td{border-bottom:none;}

/* ---------- do / don't ---------- */
.do-dont{list-style:none;padding:0;margin:0;}
.do-dont li{margin-bottom:12px;line-height:1.45;padding-left:28px;position:relative;}
.do-dont li::before{position:absolute;left:0;top:0;font-weight:800;}
.do li::before{content:"✓";color:var(--green);}
.dont li::before{content:"✕";color:var(--coral);}

/* ---------- accordion (faq) ---------- */
.acc{border:1px solid var(--line);border-radius:var(--r-md);background:var(--science);margin-bottom:12px;overflow:hidden;}
.acc__q{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:20px 22px;
  font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-0.01em;color:var(--ink);
  display:flex;justify-content:space-between;gap:16px;align-items:center;}
.acc__q::after{content:"+";font-family:var(--display);font-weight:700;font-size:24px;color:var(--ink-2);flex:none;transition:.2s;}
.acc.open .acc__q::after{transform:rotate(45deg);}
.acc__a{position:relative;max-height:0;overflow:hidden;transition:max-height .28s ease;}
.acc__a::before{content:"";position:absolute;inset:0;background-image:var(--faq-img);
  background-size:cover;background-position:center;opacity:0;transition:opacity .4s ease;pointer-events:none;}
.acc.open .acc__a::before{opacity:.22;}
.acc.open .acc__a{max-height:520px;}
.acc__a > div{position:relative;z-index:1;min-height:140px;display:flex;align-items:center;
  padding:26px 28px;color:var(--ink);font-size:17px;line-height:1.7;font-weight:500;}

/* ---------- quiz ---------- */
.quiz{max-width:760px;margin:0 auto;}
.quiz__bar{height:6px;background:var(--ivory2);border-radius:99px;overflow:hidden;margin-bottom:30px;}
.quiz__bar i{display:block;height:100%;background:var(--green);border-radius:99px;transition:width .35s ease;}
.quiz__opts{display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-top:26px;}
.qopt{text-align:left;background:var(--science);border:1.5px solid var(--line);border-radius:var(--r-md);
  padding:18px 20px;cursor:pointer;font-family:var(--sans);font-weight:600;font-size:16px;color:var(--ink);transition:.15s;
  display:flex;align-items:center;gap:13px;}
.qopt:hover{border-color:var(--navy);transform:translateY(-2px);}
.qopt.sel{border-color:var(--green);background:#2F7D5510;box-shadow:0 0 0 1.5px var(--green) inset;}
.qopt .dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);flex:none;}
.qopt.sel .dot{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 3px var(--science);}
.quiz__nav{display:flex;justify-content:space-between;margin-top:30px;align-items:center;}

/* ---------- cart drawer ---------- */
.drawer-bg{position:fixed;inset:0;background:rgba(16,23,52,.45);opacity:0;visibility:hidden;transition:.25s;z-index:80;}
.drawer-bg.open{opacity:1;visibility:visible;}
.drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,100%);background:var(--ivory);z-index:90;
  transform:translateX(100%);transition:transform .28s ease;display:flex;flex-direction:column;box-shadow:var(--shadow);}
.drawer.open{transform:translateX(0);}
.drawer__h{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;}
.drawer__items{flex:1;overflow-y:auto;padding:10px 24px;}
.drawer__f{padding:22px 24px;border-top:1px solid var(--line);}
.citem{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);align-items:center;}
.citem img{width:54px;height:auto;border-radius:8px;background:#fff;}
.citem__x{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--ink-2);font-size:20px;}
.x-btn{background:none;border:none;cursor:pointer;font-size:26px;color:var(--ink-2);line-height:1;}

/* ---------- toast ---------- */
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--deep);color:#fff;
  padding:14px 22px;border-radius:var(--r-pill);font-weight:600;font-size:14.5px;opacity:0;visibility:hidden;
  transition:.25s;z-index:100;box-shadow:var(--shadow);}
.toast.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}

/* ---------- article modal ---------- */
.artmodal-bg{position:fixed;inset:0;background:rgba(16,23,52,.55);backdrop-filter:blur(4px);opacity:0;visibility:hidden;
  transition:.25s;z-index:120;display:grid;place-items:start center;overflow-y:auto;padding:40px 20px;}
.artmodal-bg.open{opacity:1;visibility:visible;}
.artmodal{position:relative;background:var(--ivory);border-radius:var(--r-lg);max-width:760px;width:100%;
  padding:46px 42px;box-shadow:var(--shadow);transform:translateY(20px);transition:.28s;}
.artmodal-bg.open .artmodal{transform:none;}
.artmodal__x{position:absolute;top:16px;right:18px;background:var(--science);border:1px solid var(--line);
  width:40px;height:40px;border-radius:50%;font-size:22px;line-height:1;color:var(--ink-2);cursor:pointer;z-index:2;}
.artmodal__x:hover{background:#fff;color:var(--ink);}
.artmodal__body .src,.src{font-size:12px;color:var(--ink-2);line-height:1.5;}
@media(max-width:560px){.artmodal{padding:34px 22px;}}

/* ---------- footer ---------- */
.ftr{background:var(--deep);color:#fff;padding:72px 0 36px;}
.ftr__top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;}
.ftr__brand{display:flex;align-items:center;gap:14px;}
.ftr__wm{font-family:var(--display);font-weight:800;letter-spacing:-0.02em;line-height:.85;font-size:25px;color:#fff;}
.ftr .muted{color:rgba(255,255,255,.62);}
.ftr h4{font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:.5px;text-transform:uppercase;
  color:rgba(255,255,255,.5);margin-bottom:16px;}
.ftr a{display:block;color:rgba(255,255,255,.78);padding:6px 0;font-size:14.5px;transition:.15s;}
.ftr a:hover{color:#fff;}
.ftr__bottom{margin-top:48px;padding-top:24px;border-top:1px solid var(--navy-line);
  display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;color:rgba(255,255,255,.55);font-size:13px;}
.disclaimer{background:rgba(255,255,255,.04);border:1px solid var(--navy-line);border-radius:var(--r-md);
  padding:14px 18px;margin-top:30px;font-size:12.5px;color:rgba(255,255,255,.6);line-height:1.5;}

/* ---------- breadcrumb / page head ---------- */
.phead{padding:54px 0 10px;}
.crumb{font-weight:600;font-size:13px;color:var(--ink-2);margin-bottom:14px;}
.crumb a:hover{color:var(--navy);}

/* ---------- misc ---------- */
.divider{height:1px;background:var(--line);border:none;margin:0;}
.dark .divider,.deep .divider{background:var(--navy-line);}
.note{font-size:13px;color:var(--ink-2);}
.spaced{margin-top:18px;}
.stat{font-family:var(--display);font-weight:800;letter-spacing:-0.02em;font-size:clamp(30px,3vw,42px);}

/* ---------- brand source icons (Booking / Tripadvisor / Travelers' Choice) — unified 24x24 grid, inherit color ---------- */
.brandic{width:19px;height:19px;border-radius:5px;background:#fff;display:inline-flex;align-items:center;justify-content:center;
  flex:none;overflow:hidden;padding:3px;box-shadow:0 1px 3px rgba(8,16,30,.28);}
.brandic img{width:100%;height:100%;object-fit:contain;display:block;}
.brandic--tile{padding:0;}
.statlabel{display:flex;flex-direction:column;align-items:center;gap:11px;}
.statlabel .brandic{width:38px;height:38px;border-radius:10px;padding:6px;box-shadow:0 3px 11px rgba(8,16,30,.34);}
.statlabel .brandic--tile{padding:0;}

/* ---------- review score bar (category breakdown) — on navy .deep section ---------- */
.scorebar{display:grid;grid-template-columns:210px 1fr;gap:34px;align-items:center;}
.scorebar__big .stat{color:#fff;line-height:1;}
.scorebar__big .stat small{font-size:.48em;font-weight:700;color:rgba(255,255,255,.6);}
.rbar{display:grid;grid-template-columns:1fr 1fr;gap:13px 36px;}
.rbar__row{display:flex;align-items:center;gap:12px;}
.rbar__label{font-family:var(--sans);font-weight:600;font-size:13.5px;color:rgba(255,255,255,.9);width:92px;flex:none;}
.rbar__track{flex:1;height:8px;border-radius:var(--r-pill);background:rgba(6,14,28,.55);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);}
.rbar__fill{height:100%;border-radius:var(--r-pill);background:linear-gradient(90deg,#C7A24B,#F0CE6E);box-shadow:0 0 10px rgba(240,206,110,.45);}
.rbar__val{font-family:var(--display);font-weight:700;font-size:13.5px;color:var(--gold);width:26px;text-align:right;flex:none;}
@media (max-width:720px){.scorebar{grid-template-columns:1fr;gap:22px;}.rbar{grid-template-columns:1fr;}}

/* ---------- review cards (synced, newest first) — on navy .deep section ---------- */
.rev__head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:7px;}
.rev__name{font-family:var(--display);font-weight:700;font-size:14.5px;color:#fff;}
.rev__date{font-family:var(--sans);font-size:12px;color:rgba(255,255,255,.55);flex:none;white-space:nowrap;}
.rev__stars{color:var(--gold);font-size:13px;letter-spacing:2px;margin-bottom:9px;}
.rev__title{font-family:var(--display);font-weight:700;font-size:15.5px;color:#fff;margin:0 0 7px;letter-spacing:-0.01em;}
.rev__text{font-family:var(--sans);font-size:14.5px;line-height:1.62;color:rgba(255,255,255,.82);margin:0;}
.rev__src{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:rgba(255,255,255,.55);}
.chip-row{display:flex;flex-wrap:wrap;gap:9px;}
.filterbtn{font-family:var(--sans);font-weight:600;font-size:13.5px;border:1.5px solid var(--line);background:var(--science);
  color:var(--ink-2);padding:8px 15px;border-radius:var(--r-pill);cursor:pointer;transition:.15s;}
.filterbtn:hover{border-color:var(--navy);color:var(--navy);}
.filterbtn.on{background:var(--navy);color:#fff;border-color:var(--navy);}

/* ---------- responsive ---------- */
@media (max-width:1080px){
  .g4{grid-template-columns:repeat(2,1fr);}
  .g5{grid-template-columns:repeat(3,1fr);}
  .ftr__top{grid-template-columns:1fr 1fr;}
}
@media (max-width:880px){
  .hero__in{grid-template-columns:1fr;text-align:center;gap:34px;}
  .hero .sub{margin-left:auto;margin-right:auto;}
  .hero .btn-row{justify-content:center;}
  .hdr__nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--science);flex-direction:column;
    align-items:stretch;padding:10px 7%;border-bottom:1px solid var(--line);gap:0;}
  .hdr__nav.open{display:flex;}
  .hdr__nav a{padding:13px 6px;border-bottom:1px solid var(--line);}
  .hdr__burger{display:block;}
  .hdr__cta .btn{display:none;}
  .section{padding:64px 0;}
}
@media (max-width:680px){
  .g2,.g3,.g4,.g5{grid-template-columns:1fr;}
  .quiz__opts{grid-template-columns:1fr;}
  .ftr__top{grid-template-columns:1fr;}
  .wrap{padding:0 24px;}
  .hero__in{padding:60px 24px 64px;}
}


/* ---------- conversion additions ---------- */
.segment-entry{background:linear-gradient(180deg,var(--science),var(--ivory));}
.segment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.segment-card{position:relative;overflow:hidden;min-height:150px;background:var(--science);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;justify-content:space-between;transition:.18s;box-shadow:0 10px 24px rgba(16,23,52,.04);}
.segment-card::after{content:"";position:absolute;right:-34px;bottom:-44px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(199,162,75,.22),rgba(47,125,85,.08) 62%,transparent 70%);}
.segment-card span{font-family:var(--display);font-size:24px;font-weight:800;letter-spacing:-.025em;line-height:1.02;position:relative;z-index:1;}
.segment-card small{font-size:14px;font-weight:500;color:var(--ink-2);line-height:1.35;max-width:28ch;position:relative;z-index:1;}
.segment-card:hover{transform:translateY(-3px);border-color:var(--navy);box-shadow:var(--shadow);}
.save-plan{margin-top:28px;padding:24px;border:1.5px solid var(--line);border-radius:var(--r-lg);background:var(--science);display:grid;grid-template-columns:1fr;gap:18px;}
.save-plan__form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.save-plan__form input{flex:1 1 220px;min-width:0;padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--r-pill);font:600 15px var(--sans);color:var(--ink);background:#fff;}
.save-plan__form button{flex:0 0 auto;}
.save-plan__form input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(47,125,85,.12);}
@media(max-width:900px){.segment-grid{grid-template-columns:1fr 1fr}.save-plan{grid-template-columns:1fr}.save-plan__form{flex-direction:column;align-items:stretch}}
@media(max-width:560px){.segment-grid{grid-template-columns:1fr}.segment-card{min-height:126px}}


/* ---------- richer diagnostic quiz ---------- */
.quiz-stage{padding:74px 0 96px;background:linear-gradient(180deg,var(--ivory),var(--science) 58%,var(--ivory));}
.quiz-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;align-items:center;margin-bottom:38px;}
.quiz-orbit{position:relative;min-height:260px;display:grid;place-items:center;color:var(--navy);}
.quiz-orbit>div{position:absolute;inset:0;display:grid;place-items:center;filter:drop-shadow(0 18px 32px rgba(16,23,52,.10));}
.quiz-orbit strong{position:relative;z-index:2;font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.03em;color:var(--ink);background:rgba(251,250,246,.78);border:1px solid var(--line);border-radius:999px;padding:16px 20px;backdrop-filter:blur(10px);}
.quiz-board{display:grid;grid-template-columns:290px minmax(0,1fr);gap:22px;align-items:start;}
.quiz-map{position:sticky;top:92px;background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow);}
.quiz-map .label{color:rgba(255,255,255,.64);}
.qmap-row{margin-top:18px;}
.qmap-row span{display:flex;justify-content:space-between;font-family:var(--display);font-weight:750;letter-spacing:-.015em;margin-bottom:8px;}
.qmap-row i,.result-axis i{display:block;height:9px;border-radius:99px;background:rgba(255,255,255,.13);overflow:hidden;position:relative;}
.qmap-row i::after,.result-axis i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w,0%);border-radius:99px;background:linear-gradient(90deg,var(--gold),var(--green),var(--periwinkle));transition:width .3s ease;}
.quiz-map .note{color:rgba(255,255,255,.68);margin-top:22px;}
.quiz-panel{background:rgba(251,250,246,.72);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:34px;box-shadow:0 18px 38px rgba(16,23,52,.07);}
.q-meta{display:flex;gap:16px;align-items:center;margin-bottom:20px;}
.q-meta p{margin:0;color:var(--ink-2);font-weight:550;}
.quiz__opts--rich{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px;}
.qopt--rich{min-height:128px;align-items:flex-start;display:grid;grid-template-columns:22px 1fr;grid-template-rows:auto 1fr;gap:8px 14px;padding:22px;border-width:1.7px;}
.qopt--rich .dot{grid-row:1 / span 2;margin-top:2px;}
.qopt--rich strong{font-family:var(--display);font-size:21px;font-weight:800;line-height:1.05;letter-spacing:-.02em;}
.qopt--rich small{font-size:14px;font-weight:550;color:var(--ink-2);line-height:1.35;}
.qopt--rich.sel{background:linear-gradient(180deg,rgba(47,125,85,.12),rgba(199,162,75,.08));}
.result-wrap{margin-top:20px;}
.result-head{text-align:center;margin-bottom:34px;}
.result-grid{align-items:stretch;gap:24px;}
.result-product,.result-card{background:var(--science);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:30px;box-shadow:var(--shadow-sm);}
.result-product img{height:310px;width:auto;margin:18px auto;filter:drop-shadow(0 20px 32px rgba(16,23,52,.18));}
.result-axis{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:14px;margin-top:12px;}
.result-axis span{font-family:var(--sans);font-weight:750;text-transform:uppercase;font-size:11px;letter-spacing:.5px;color:var(--ink-2);}
.result-axis i{background:var(--ivory2);}
@media(max-width:980px){.quiz-hero{grid-template-columns:1fr}.quiz-orbit{min-height:190px}.quiz-board{grid-template-columns:1fr}.quiz-map{position:relative;top:auto}.quiz__opts--rich{grid-template-columns:1fr}}
@media(max-width:560px){.quiz-stage{padding-top:42px}.quiz-panel{padding:22px}.q-meta{align-items:flex-start;flex-direction:column}.qopt--rich{min-height:112px}.result-product,.result-card{padding:22px}}


/* ---------- conversion intrigue layer for diagnostic quiz ---------- */
.quiz-cliff,.quiz-reveal,.result-insight{margin-top:24px;border-radius:26px;border:1.5px solid rgba(199,162,75,.32);background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(199,162,75,.10));box-shadow:0 18px 34px rgba(16,23,52,.08);}
.quiz-cliff{padding:20px 22px;}
.quiz-cliff span,.result-insight span,.mini-label{display:inline-flex;font-size:11px;font-weight:850;letter-spacing:.9px;text-transform:uppercase;color:var(--green);margin-bottom:8px;}
.quiz-cliff p,.quiz-reveal p,.result-insight p{margin:0;color:var(--ink);font-weight:620;line-height:1.45;}
.quiz-reveal{display:grid;grid-template-columns:1fr 1fr;gap:1px;overflow:hidden;padding:0;background:rgba(16,23,52,.08);}
.quiz-reveal>div{padding:22px;background:linear-gradient(180deg,var(--science),rgba(255,255,255,.82));}
.quiz-reveal>div:nth-child(2){background:linear-gradient(180deg,rgba(22,66,52,.08),rgba(199,162,75,.12));}
.quiz-reveal p{font-size:16px;}
.qopt--rich{position:relative;overflow:hidden;}
.qopt--rich::after{content:"";position:absolute;right:-34px;top:-34px;width:86px;height:86px;border-radius:50%;background:radial-gradient(circle,rgba(199,162,75,.22),rgba(199,162,75,0) 68%);opacity:0;transition:opacity .22s ease,transform .22s ease;}
.qopt--rich:hover::after,.qopt--rich.sel::after{opacity:1;transform:scale(1.18);}
.qopt--rich.sel strong{color:var(--navy);}
.result-insight{max-width:760px;margin:0 auto 28px;padding:24px 28px;text-align:center;background:linear-gradient(135deg,var(--navy),#183c36);border-color:rgba(255,255,255,.16);}
.result-insight span{color:var(--gold);}
.result-insight p{color:#fff;font-family:var(--display);font-size:clamp(20px,2.6vw,30px);font-weight:800;letter-spacing:-.03em;line-height:1.1;}
@media(max-width:760px){.quiz-reveal{grid-template-columns:1fr}.quiz-reveal>div{padding:18px}.quiz-cliff,.result-insight{border-radius:22px}}


/* ---------- v7 quiz visual direction: warm biotech diagnostic chamber ---------- */
.quiz-stage{position:relative;overflow:hidden;padding:66px 0 104px;background:
  radial-gradient(900px 520px at 84% 4%,rgba(199,162,75,.20),rgba(199,162,75,0) 58%),
  radial-gradient(760px 480px at 8% 22%,rgba(47,125,85,.20),rgba(47,125,85,0) 62%),
  linear-gradient(180deg,#142d49 0%,#1B3856 36%,var(--ivory) 36%,var(--ivory) 100%);}
.quiz-stage::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.16) 1px,transparent 1px);background-size:24px 24px;opacity:.16;pointer-events:none;}
.quiz-stage .wrap{position:relative;z-index:1;}
.quiz-hero{grid-template-columns:minmax(0,1fr) 260px;gap:34px;margin-bottom:30px;color:#fff;}
.quiz-hero .pill{border-color:rgba(255,255,255,.28);color:rgba(255,255,255,.86);background:rgba(255,255,255,.08);}
.quiz-hero .lead{color:rgba(255,255,255,.78);max-width:58ch;}
.quiz-orbit{min-height:230px;color:#fff;}
.quiz-orbit::before,.quiz-orbit::after{content:"";position:absolute;border-radius:42% 58% 54% 46%;border:1.5px solid rgba(255,255,255,.20);inset:24px;animation:bioFloat 9s ease-in-out infinite alternate;}
.quiz-orbit::after{inset:54px;border-color:rgba(199,162,75,.42);animation-duration:12s;animation-direction:alternate-reverse;}
.quiz-orbit strong{background:rgba(251,250,246,.12);color:#fff;border-color:rgba(255,255,255,.22);box-shadow:0 20px 44px rgba(0,0,0,.18);}
@keyframes bioFloat{from{transform:rotate(-8deg) scale(.98)}to{transform:rotate(11deg) scale(1.04)}}
.quiz-board{position:relative;grid-template-columns:310px minmax(0,1fr);gap:0;background:rgba(251,250,246,.94);border:1.5px solid rgba(255,255,255,.32);border-radius:34px;box-shadow:0 34px 80px rgba(16,23,52,.22);overflow:hidden;}
.quiz-map{position:sticky;top:92px;align-self:stretch;min-height:100%;border-radius:0;background:
  radial-gradient(220px 160px at 84% 12%,rgba(199,162,75,.22),transparent 66%),
  linear-gradient(180deg,#112640,#193857);box-shadow:none;padding:30px 26px;}
.quiz-map .label::after{content:"";display:block;width:42px;height:3px;border-radius:99px;background:var(--gold);margin-top:12px;}
.qmap-row span{font-size:18px;}
.qmap-row i{height:12px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);}
.quiz-panel{border:0;border-radius:0;background:linear-gradient(180deg,var(--science),#fffaf0);box-shadow:none;padding:38px clamp(24px,4vw,52px) 34px;}
.quiz__bar{height:10px;background:var(--ivory2);border-radius:999px;overflow:hidden;margin-bottom:28px;}
.quiz__bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--gold),var(--coral));box-shadow:0 0 24px rgba(199,162,75,.30);}
.q-meta{align-items:flex-start;background:rgba(27,56,86,.06);border:1px solid rgba(27,56,86,.09);border-radius:22px;padding:14px 16px;margin-bottom:22px;}
.q-meta .pill{background:var(--navy);color:#fff;border-color:var(--navy);}
.q-meta p{font-size:15.5px;font-weight:650;color:#33415d;}
.quiz__opts--rich{gap:16px;margin-top:30px;}
.qopt--rich{background:#fff;border:1.6px solid rgba(27,56,86,.14);border-radius:26px;box-shadow:0 14px 28px rgba(16,23,52,.055);min-height:138px;padding:24px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;}
.qopt--rich:hover{transform:translateY(-3px);border-color:rgba(47,125,85,.52);box-shadow:0 22px 42px rgba(16,23,52,.10);}
.qopt--rich .dot{width:16px;height:16px;border-radius:50%;border:2px solid rgba(27,56,86,.32);background:#fff;margin-top:4px;box-shadow:0 0 0 6px rgba(27,56,86,.045);}
.qopt--rich.sel{background:linear-gradient(135deg,rgba(47,125,85,.13),rgba(199,162,75,.13));border-color:var(--green);box-shadow:0 24px 48px rgba(47,125,85,.16);}
.qopt--rich.sel .dot{background:var(--green);border-color:var(--green);box-shadow:0 0 0 7px rgba(47,125,85,.13);}
.qopt--rich strong{font-size:23px;color:#112640;}
.qopt--rich small{font-size:15px;color:#5b6378;font-weight:600;}
.quiz-reveal,.quiz-cliff{margin-top:26px;border-radius:28px;overflow:hidden;border:1.5px solid rgba(27,56,86,.12);box-shadow:0 20px 40px rgba(16,23,52,.08);}
.quiz-cliff{background:linear-gradient(135deg,#132a45,#1d4c42);color:#fff;padding:24px 26px;}
.quiz-cliff span{color:var(--gold);}
.quiz-cliff p{color:#fff;font-family:var(--display);font-size:22px;font-weight:800;letter-spacing:-.02em;line-height:1.12;}
.quiz-reveal{grid-template-columns:1.05fr .95fr;background:#10263e;}
.quiz-reveal>div{background:linear-gradient(180deg,#fff,var(--science));padding:26px;}
.quiz-reveal>div:nth-child(2){background:linear-gradient(160deg,#163451,#1c5145);}
.quiz-reveal>div:nth-child(2) .mini-label{color:var(--gold);}
.quiz-reveal>div:nth-child(2) p{color:#fff;}
.mini-label{font-size:10.5px;font-weight:900;letter-spacing:1.1px;}
.quiz__nav{margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:14px;}
.quiz__nav .note{font-weight:800;color:#6a604f;}
.result-wrap{background:rgba(251,250,246,.94);border-radius:34px;padding:34px;box-shadow:0 34px 80px rgba(16,23,52,.18);}
.result-head .pill{background:var(--navy);color:#fff;border-color:var(--navy);}
.result-grid{gap:0;border-radius:30px;overflow:hidden;border:1.5px solid var(--line);}
.result-product,.result-card{border:0;border-radius:0;box-shadow:none;}
.result-product{background:linear-gradient(180deg,#132a45,#1B3856);color:#fff;}
.result-product .muted,.result-product .note{color:rgba(255,255,255,.74);}
.result-product .label{color:rgba(255,255,255,.58);}
.result-card{background:var(--science);}
@media(max-width:980px){.quiz-stage{background:linear-gradient(180deg,#142d49 0%,#1B3856 38%,var(--ivory) 38%)}.quiz-hero{grid-template-columns:1fr}.quiz-orbit{display:none}.quiz-board{grid-template-columns:1fr;border-radius:30px}.quiz-map{position:relative;top:auto;border-radius:0}.quiz-panel{padding:28px 22px}.quiz-reveal{grid-template-columns:1fr}}
@media(max-width:560px){.quiz-stage{padding-top:34px}.quiz-hero{gap:18px}.quiz-board,.result-wrap{border-radius:24px}.quiz-map{padding:22px}.qopt--rich{min-height:118px;padding:20px;border-radius:22px}.qopt--rich strong{font-size:20px}.quiz-reveal>div{padding:20px}.result-wrap{padding:18px}}


/* ---------- v7 contrast tightening ---------- */
.qmap-row i{height:14px;background:rgba(255,255,255,.20);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 6px 14px rgba(0,0,0,.10);}
.qmap-row i::after{min-width:8px;}
.qopt--rich .dot{width:18px;height:18px;border:2.5px solid var(--navy);background:linear-gradient(180deg,#fff,var(--ivory));box-shadow:0 0 0 6px rgba(27,56,86,.075);}
.qopt--rich:hover .dot{border-color:var(--green);box-shadow:0 0 0 7px rgba(47,125,85,.12);}
.disclaimer{font-size:13.5px;font-weight:550;color:rgba(255,255,255,.72);}

/* ---------- Olympia additions ---------- */
.wordmark{font-family:var(--display);font-weight:800;letter-spacing:-0.02em;
  font-size:23px;line-height:1;color:var(--navy);}
.hdr .wordmark{color:var(--navy);}
.ftr__wm{font-size:34px;}   /* override only if a larger footer wordmark is wanted */

/* real photos */
.hero__photo{position:relative;z-index:1;width:min(440px,90%);aspect-ratio:4/3;border-radius:var(--r-lg);
  object-fit:cover;box-shadow:0 26px 60px rgba(0,0,0,.34);}
.pcard__img.has-photo{padding:0;min-height:0;}
.pcard__img.has-photo img{width:100%;height:236px;object-fit:cover;display:block;}
.gtile{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3;
  background:var(--navy) center/cover no-repeat;display:flex;align-items:flex-end;padding:18px;box-shadow:var(--shadow-sm);}
.gtile::before{content:"";position:absolute;inset:0;
  background:linear-gradient(to top,rgba(11,18,38,.66),rgba(11,18,38,0) 58%);}
.gtile .label{position:relative;z-index:1;color:#fff;}
.mapframe{width:100%;aspect-ratio:4/3;border:0;border-radius:var(--r-lg);box-shadow:var(--shadow);display:block;}

/* ---------- rating cards: BIG brand logo one side, score+label the other (robust, dark-on-white) ---------- */
.card.ratecard{display:flex;align-items:center;gap:17px;text-align:left;background:#fff;border:1px solid var(--line);color:var(--ink);padding:22px 24px;}
.deep .card.ratecard{background:#fff;border-color:rgba(255,255,255,.16);color:var(--ink);}
.ratecard__logo{width:60px;height:60px;flex:none;border-radius:15px;background:#fff;display:flex;align-items:center;justify-content:center;padding:9px;box-shadow:0 3px 10px rgba(8,16,30,.15);border:1px solid var(--line);}
.ratecard__logo--tile{padding:0;overflow:hidden;border:none;}
.ratecard__logo--rank{padding:0;border:none;background:linear-gradient(150deg,#E7C265,#C19A41);color:#fff;}
.ratecard__logo--rank svg{width:30px;height:30px;}
.ratecard__logo img{width:100%;height:100%;object-fit:contain;display:block;}
.ratecard__num{font-family:var(--display);font-weight:800;font-size:25px;letter-spacing:-0.02em;color:var(--ink);line-height:1.04;}
.ratecard__cap{font-family:var(--sans);font-weight:600;font-size:13.5px;color:var(--ink-2);margin-top:4px;}
@media (max-width:1080px){.card.ratecard{gap:13px;padding:18px;}.ratecard__logo{width:52px;height:52px;}.ratecard__num{font-size:22px;}}
/* RATECARD-BLOCK-V1 */
.card.ratecard{display:flex;align-items:center;gap:17px;text-align:left;background:#fff;border:1px solid var(--line);color:var(--ink);padding:22px 24px;}
.deep .card.ratecard{background:#fff;border-color:rgba(255,255,255,.16);color:var(--ink);}
.ratecard__logo{width:60px;height:60px;flex:none;border-radius:15px;background:#fff;display:flex;align-items:center;justify-content:center;padding:9px;box-shadow:0 3px 10px rgba(8,16,30,.15);border:1px solid var(--line);}
.ratecard__logo--tile{padding:0;overflow:hidden;border:none;}
.ratecard__logo--rank{padding:0;border:none;background:linear-gradient(150deg,#E7C265,#C19A41);color:#fff;}
.ratecard__logo--rank svg{width:30px;height:30px;}
.ratecard__logo img{width:100%;height:100%;object-fit:contain;display:block;}
.ratecard__num{font-family:var(--display);font-weight:800;font-size:25px;letter-spacing:-0.02em;color:var(--ink);line-height:1.04;}
.ratecard__cap{font-family:var(--sans);font-weight:600;font-size:13.5px;color:var(--ink-2);margin-top:4px;}
@media (max-width:1080px){.card.ratecard{gap:13px;padding:18px;}.ratecard__logo{width:52px;height:52px;}.ratecard__num{font-size:22px;}}
/* RATECARD-SIZE-V2 — balance icon area ~= text area */
.ratecard__logo{width:48px;height:48px;border-radius:12px;padding:7px;}
.ratecard__logo--rank svg{width:25px;height:25px;}
.ratecard__num{font-size:21px;}
.ratecard__cap{font-size:13px;margin-top:3px;}
.card.ratecard{gap:14px;padding:20px 22px;}
@media (max-width:1080px){.ratecard__logo{width:44px;height:44px;}.ratecard__num{font-size:19px;}.card.ratecard{padding:16px;}}
/* I18N-V1 — native fonts, RTL, language switcher */
html[lang="zh"]{--display:'Noto Sans SC','Bricolage Grotesque',system-ui,sans-serif;--sans:'Noto Sans SC','Hanken Grotesk',system-ui,sans-serif;}
html[lang="ar"]{--display:'Cairo','Bricolage Grotesque',system-ui,sans-serif;--sans:'Cairo','Hanken Grotesk',system-ui,sans-serif;}
html[lang="fa"]{--display:'Vazirmatn','Bricolage Grotesque',system-ui,sans-serif;--sans:'Vazirmatn','Hanken Grotesk',system-ui,sans-serif;}
[dir="rtl"] .ratecard{text-align:right;}
[dir="rtl"] .hero__bg{right:auto;left:0;}
[dir="rtl"] .hero__bg::after{transform:scaleX(-1);}
[dir="rtl"] [style*="padding-left:18px"]{padding-left:0!important;padding-right:18px!important;}
.langs{display:inline-flex;gap:9px;align-items:center;flex-wrap:wrap;}
.langs a{font-size:12px;font-weight:700;letter-spacing:.3px;color:var(--ink-2);transition:.15s;white-space:nowrap;}
.langs a:hover{color:var(--navy);}
.langs a.on{color:var(--navy);text-decoration:underline;text-underline-offset:3px;}
/* RBAR-FILL-FIX — fill was an inline span (width/height ignored); make it block so the gold actually shows */
.rbar__track{display:block;}
.rbar__fill{display:block;}
/* HOVER-ZOOM-V1 — photos zoom inside their frame on mouse hover */
.gtile{cursor:pointer;}
.gtile::after{content:"";position:absolute;inset:0;background-image:inherit;background-position:center;background-size:cover;transition:transform .6s cubic-bezier(.2,.6,.2,1);z-index:0;}
.gtile:hover::after{transform:scale(1.09);}
.gtile::before{z-index:1;}
.gtile .label{position:relative;z-index:2;}
.pcard__img{overflow:hidden;}
.pcard__img.has-photo img{transition:transform .6s cubic-bezier(.2,.6,.2,1);}
.pcard:hover .pcard__img.has-photo img{transform:scale(1.07);}
/* HOVER-ZOOM-V2 — gallery tile pops OUT of the frame, enlarges to 1.30 on hover */
.gtile{transition:transform .45s cubic-bezier(.2,.6,.2,1), box-shadow .45s ease;}
.gtile:hover{transform:scale(1.30);z-index:30;box-shadow:0 34px 80px rgba(11,18,38,.55);}
.gtile:hover::after{transform:none;}
/* LIGHTBOX-V1 — click a gallery photo to view it fullscreen */
.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(8,14,26,.93);display:flex;align-items:center;justify-content:center;padding:4vh 2vw;}
.lightbox[hidden]{display:none;}
.lb__fig{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;}
.lb__img{max-width:92vw;max-height:80vh;width:auto;height:auto;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.6);object-fit:contain;}
.lb__cap{color:rgba(255,255,255,.85);font-family:var(--sans);font-weight:600;font-size:14px;letter-spacing:.3px;text-align:center;}
.lb__close{position:absolute;top:16px;right:22px;background:none;border:none;color:#fff;font-size:42px;line-height:1;cursor:pointer;opacity:.85;}
.lb__close:hover{opacity:1;}
.lb__nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);border:none;color:#fff;width:54px;height:54px;border-radius:50%;font-size:30px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s;}
.lb__nav:hover{background:rgba(255,255,255,.26);}
.lb__prev{left:18px;}.lb__next{right:18px;}
@media(max-width:640px){.lb__nav{width:44px;height:44px;font-size:24px;}.lb__close{font-size:34px;}}
