/* tavern.ca - shared stylesheet, "best online casinos canada" build (2026-10).
   Architecture ported from the gtagiupponi.com betting-slip generator.
   Palette: AURORA BOREAL. Deep indigo-violet chrome, aurora-mint primary, magenta accent,
   gold CTA on a white/lilac ground.
   RULE: --cta is RESERVED. It appears on action buttons and NOTHING else.
   RULE: every grid in the slip chain carries min-width:0 / minmax(0,1fr). One missing level
   pins the document to that element's min-content width on narrow viewports. */

:root{
  --disp:'Space Grotesk','Inter',-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  --ink-deep:#182C25; --ink-chrome:#2C3A35; --ink-soft:#4A6B5F;
  --mint:#2C3A35; --mint-deep:#28453A; --glow:#82A497; --mint-pale:#D8E4E0;
  --magenta:#A8341F; --magenta-deep:#8A2A18;
  --cta:#6C3795; --cta-dark:#4F266D; --cta-ink:#ffffff;   /* reserved: CTAs only */
  --ink:#1A1C1A; --muted:#5C625E; --line:#E4E7E4;
  --bg:#fff; --bg-soft:#F6F7F5; --bg-mint:#EFF4F2;
  --wrap:1140px; --r:14px;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--bg);
     font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:var(--mint-deep)}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:20px;min-width:0}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:12px;top:12px;z-index:99;background:var(--cta);color:var(--cta-ink);
  padding:10px 16px;border-radius:8px;font-weight:700}

/* ---------- masthead ---------- */
.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative}
.header-inner{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:20px;
  display:flex;align-items:center;gap:18px;min-height:78px;min-width:0;flex-wrap:nowrap}
.logo-link{flex:0 1 auto;min-width:0}
.logo{height:50px;width:auto;max-width:min(48vw,250px);object-fit:contain}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:24px;min-width:0;flex-shrink:1;
  overflow:hidden}
.main-nav a{color:var(--ink-chrome);text-decoration:none;font-weight:600;font-size:15px;
  white-space:nowrap}
.main-nav a:hover{color:var(--mint-deep)}
.header-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto;min-width:0}
.nav-cta{display:inline-block;background:var(--cta);color:var(--cta-ink);text-decoration:none;
  font-weight:800;font-size:14px;padding:10px 16px;border-radius:8px;white-space:nowrap;
  min-width:0;overflow:hidden;text-overflow:ellipsis}
.nav-cta:hover{background:var(--cta-dark)}
.burger{display:none;background:none;border:1.5px solid var(--line);border-radius:10px;
  width:46px;height:42px;cursor:pointer;padding:0}
.burger span{display:block;height:2px;width:20px;margin:4px auto;background:var(--ink-chrome);border-radius:2px}
.mobile-nav{display:none;flex-direction:column;background:#fff;border-bottom:1px solid var(--line);
  padding:6px 20px 16px}
.mobile-nav.open{display:flex}
.mobile-nav a{color:var(--ink-chrome);text-decoration:none;font-weight:600;padding:12px 0;
  border-bottom:1px solid var(--line)}
.mobile-nav .nav-cta{margin-top:12px;text-align:center;border-bottom:0}

/* ---------- hero ---------- */
.hero{padding:20px 0 4px}
.hero--centered .hero-content{max-width:none}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--bg-mint);
  border:1px solid var(--mint-pale);color:var(--mint-deep);font-size:12px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;padding:6px 13px;border-radius:999px;margin-bottom:14px}
.hero-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--glow);
  box-shadow:0 0 0 3px rgba(126,140,168,.28)}
.page-h1,h1{font-size:clamp(26px,3.4vw,41px);line-height:1.16;margin:0 0 10px;
  letter-spacing:-.022em;color:var(--ink-chrome);font-weight:800}
.hero-lede{font-size:16.5px;line-height:1.55;color:var(--muted);margin:0 0 14px;max-width:72ch}
.byline{display:flex;align-items:center;gap:14px;padding:10px 0 11px;border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);margin-bottom:16px;flex-wrap:wrap;min-width:0}
.byline__img{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:0 0 46px;
  background:var(--mint-pale);border:2px solid var(--glow)}
.byline__who{font-weight:700;color:var(--ink-chrome);font-size:15px;line-height:1.3}
.byline__who a{color:var(--ink-chrome);text-decoration:none}
.byline__role{display:block;font-weight:500;color:var(--muted);font-size:13.5px}
.byline__date{display:block;font-weight:500;color:var(--muted);font-size:12.5px}
.byline__meta{margin-left:auto;text-align:right;font-size:12.5px;color:var(--muted);line-height:1.5;
  min-width:0}
.byline__meta span{display:block}
.byline__meta b{color:var(--ink-chrome);font-weight:600}

/* top-3 hero offer cards */
.hero-offers__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:6px}
.hero-offer-card{position:relative;display:grid;grid-template-rows:auto auto 1fr auto;gap:10px;
  background:linear-gradient(170deg,#3D5B50,#182C25);color:#EEF3F1;border-radius:var(--r);
  padding:18px 16px 16px;min-width:0;overflow:hidden}
.hero-offer-card::after{content:"";position:absolute;inset:0 0 auto 0;height:4px;
  background:linear-gradient(90deg,var(--glow),var(--magenta))}
.hero-offer-card__rank{font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--glow)}
.hero-offer-card__logo{height:48px;display:grid;place-items:center;background:#fff;
  border-radius:8px;padding:6px}
.hero-offer-card__logo-img{max-height:36px;max-width:120px;width:auto;object-fit:contain}
.hero-offer-card__body{display:flex;flex-direction:column;gap:10px;min-width:0}
.hero-offer-card__top{display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  min-width:0}
.hero-offer-card__name{margin:0;font-size:16px;font-weight:700;color:#C8D6D1;letter-spacing:.01em;
  min-width:0;overflow-wrap:anywhere}
.hero-offer-card__rating{margin:0;font-size:12.5px;color:#C8D6D1;white-space:nowrap}
.hero-offer-card__rating b{color:#fff;font-size:13.5px;margin-left:2px}
/* the welcome offer is the point of the card, so it gets the panel, the size and the colour */
.hero-offer-card__offer{position:relative;margin:0;padding:13px 15px 14px;border-radius:11px;
  background:linear-gradient(135deg,rgba(126,140,168,.16),rgba(168,52,31,.10));
  border:1px solid rgba(126,140,168,.34);min-width:0;flex:1 1 auto;
  display:flex;flex-direction:column;justify-content:center}
.hero-offer-card__offer::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;
  border-radius:0 3px 3px 0;background:linear-gradient(180deg,var(--glow),var(--magenta))}
.hero-offer-card__lab{margin:0 0 5px;font-size:9.5px;font-weight:800;letter-spacing:.15em;
  text-transform:uppercase;color:var(--glow)}
.hero-offer-card__bonus{margin:0;font-size:20px;line-height:1.2;font-weight:800;color:#fff;
  letter-spacing:-.015em;overflow-wrap:anywhere;text-wrap:balance}
.stars{color:var(--cta);letter-spacing:1px}
.hero-offer-card__btn{display:block;text-align:center;text-decoration:none;background:var(--cta);
  color:var(--cta-ink);font-weight:800;font-size:14px;padding:11px 14px;border-radius:8px;margin-top:4px}
.hero-offer-card__btn:hover{background:var(--cta-dark)}

/* ---------- table of contents ---------- */
.toc{background:var(--bg-soft);border:1px solid var(--line);border-left:5px solid var(--glow);
  border-radius:0 var(--r) var(--r) 0;padding:12px 20px;margin:18px 0 10px;min-width:0}
.toc__title{margin:0;font-size:11.5px;font-weight:800;letter-spacing:.13em;cursor:pointer;
  text-transform:uppercase;color:var(--mint-deep);list-style:none;position:relative;padding-right:26px}
.toc__title::-webkit-details-marker{display:none}
.toc__title::after{content:"";position:absolute;right:4px;top:4px;width:7px;height:7px;
  border-right:2px solid var(--mint-deep);border-bottom:2px solid var(--mint-deep);
  transform:rotate(45deg);transition:transform .15s}
.toc[open] .toc__title::after{transform:rotate(-135deg);top:7px}
.toc__list{margin:12px 0 2px;padding-left:20px;columns:2;column-gap:28px;font-size:14.5px}
.toc__list li{margin-bottom:5px;break-inside:avoid}
.toc__list a{color:var(--ink-chrome);text-decoration:none}
.toc__list a:hover{color:var(--mint-deep);text-decoration:underline}

/* ---------- headings + sections ---------- */
.section{margin:0;min-width:0}
h2,.section-heading{font-family:var(--disp);font-size:clamp(21px,2.5vw,30px);line-height:1.25;color:var(--ink-chrome);
  font-weight:800;letter-spacing:-.018em;margin:40px 0 14px;position:relative}
h3{font-size:clamp(17.5px,1.9vw,21px);color:var(--ink-chrome);font-weight:700;margin:26px 0 10px}
h4{font-size:16px;color:var(--ink-chrome);font-weight:700}
#offers > .section-heading::after,#casino-reviews > .section-heading::after,
#compare > .section-heading::after,#faq > .section-heading::after{content:"";display:block;
  width:56px;height:4px;border-radius:3px;margin-top:10px;
  background:linear-gradient(90deg,var(--glow),var(--magenta))}
p{margin:0 0 14px}
.section-intro{color:var(--muted)}
.section-note{font-size:13px;color:var(--muted);border-top:1px dashed var(--line);padding-top:12px}
b.code{display:inline-block;background:var(--ink-chrome);color:var(--glow);font-weight:700;
  letter-spacing:.06em;padding:1px 7px;border-radius:4px;font-size:12.5px}

/* ---------- the ranking slips ---------- */
.slips{list-style:none;margin:0;padding:0;display:grid;gap:16px;min-width:0}
.slip{position:relative;display:grid;grid-template-columns:74px minmax(0,1fr);
  border:1.5px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;min-width:0}
.slip--lead{border-color:var(--ink-chrome);box-shadow:0 3px 0 var(--ink-chrome)}
.slip__ribbon{position:absolute;top:0;right:0;z-index:2;background:var(--magenta);color:#fff;
  font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  padding:4px 12px;border-radius:0 0 0 10px}
.slip__stub{background:var(--ink-chrome);color:#fff;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:4px;padding:14px 6px;position:relative}
.slip--lead .slip__stub{background:linear-gradient(170deg,var(--mint-deep),var(--ink-chrome))}
.slip__no{font-size:30px;font-weight:800;line-height:1}
.slip__pos{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.72}
.slip__stub::after{content:"";position:absolute;top:6px;bottom:6px;right:-1px;width:2px;
  background:repeating-linear-gradient(180deg,#fff 0 5px,transparent 5px 11px)}
.slip__body{display:grid;grid-template-rows:auto auto;min-width:0}
.slip__id{display:grid;grid-template-columns:132px minmax(0,1fr) auto;align-items:center;
  gap:16px;padding:14px 18px 12px;border-bottom:1px dashed var(--line);min-width:0}
.slip__mark{height:52px;display:grid;place-items:center;background:#fff;min-width:0}
.slip__mark img{max-height:44px;max-width:126px;width:auto;object-fit:contain}
.slip__idtext{min-width:0}
.slip__name{font-weight:800;color:var(--ink-chrome);font-size:18px;margin:0 0 2px;overflow-wrap:anywhere}
.slip__for{font-size:13.5px;color:var(--muted);margin:0;overflow-wrap:anywhere}
.slip__score{text-align:right;white-space:nowrap}
.slip__score b{display:block;font-size:19px;color:var(--ink-chrome);line-height:1}
.slip__score span{display:block;font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.slip__score .stars{font-size:12px;letter-spacing:0}
.slip__grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,.8fr) minmax(0,.62fr) minmax(0,.7fr) 196px;
  align-items:stretch;padding:0;min-width:0}
.slip__cell{padding:13px 16px;border-right:1px dashed var(--line);min-width:0;
  display:flex;flex-direction:column;justify-content:center;overflow-wrap:anywhere}
.slip__cell--bonus{background:linear-gradient(90deg,var(--bg-mint),#FAFCFB);
  border-left:5px solid var(--glow);padding:15px 18px}
.slip__lab{font-size:9.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
  color:var(--muted);margin:0 0 3px}
.slip__cell--bonus .slip__lab{color:var(--mint-deep);font-size:10px}
.slip__val{font-size:18px;line-height:1.18;font-weight:800;color:var(--mint-deep);margin:0;
  overflow-wrap:anywhere}
.slip__cell--bonus .slip__val{font-size:21px;line-height:1.16;letter-spacing:-.012em}
.slip__sub{font-size:12.5px;color:var(--muted);margin:3px 0 0;line-height:1.4;overflow-wrap:anywhere}
.slip__min{font-size:16px;font-weight:700;color:var(--ink-chrome);margin:0}
.slip__act{padding:13px 16px;min-width:0}
.slip__tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none}
.slip__tags li{font-size:11.5px;font-weight:600;color:var(--ink-chrome);background:var(--bg-soft);
  border:1px solid var(--line);border-radius:4px;padding:3px 8px}

/* ---------- action button ---------- */
.act{display:block;text-align:center;text-decoration:none;font-weight:800;font-size:15px;
  color:var(--cta-ink);background:var(--cta);padding:13px 16px;letter-spacing:.01em;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%);
  transition:filter .1s ease}
.act:hover{filter:brightness(1.06)}
.act__sub{display:block;font-weight:600;font-size:10.5px;opacity:.78;margin-top:2px}
.act--wide{width:100%}

/* ---------- info + advantage strips ---------- */
.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:12px}
.info-card{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;
  padding:14px 16px;min-width:0}
.info-card__k{margin:0 0 4px;font-size:11px;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:var(--mint-deep)}
.info-card__v{margin:0;font-size:14px;line-height:1.55;color:var(--ink);overflow-wrap:anywhere}
.adv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:16px;
  margin-bottom:8px}
.adv-card{border:1px solid var(--line);border-radius:var(--r);padding:18px;min-width:0}
.adv-card__dot{display:block;width:30px;height:5px;border-radius:3px;margin-bottom:12px;
  background:linear-gradient(90deg,var(--glow),var(--magenta))}
.adv-card h3{margin:0 0 6px;font-size:17px}
.adv-card p{margin:0;font-size:14.5px;color:var(--muted)}

/* ---------- reviews ---------- */
.review{border:1px solid var(--line);border-radius:var(--r);padding:22px;margin:0 0 18px;
  background:#fff;min-width:0}
.review h3{margin-top:0}
.review__head{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-width:0}
.review__head .slip__mark{height:62px;width:150px;flex:0 0 150px;border:1px solid var(--line);
  border-radius:8px;padding:6px}
.review__facts{flex:1 1 240px;min-width:0}
.review__score{text-align:right;white-space:nowrap}
.review__score b{display:block;font-size:26px;font-weight:800;color:var(--ink-chrome);line-height:1}
.review__score span{font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.verdict{font-size:16px;font-weight:500;color:var(--ink);background:var(--bg-soft);
  border-left:4px solid var(--glow);border-radius:0 10px 10px 0;padding:14px 16px;margin:16px 0}
.review__cta{max-width:320px;margin-top:16px}
.pc{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:18px;margin-top:6px}
.pc--wide{margin-top:18px}
.pc ul{list-style:none;margin:6px 0 0;padding:0}
.pc li{position:relative;padding-left:22px;margin-bottom:6px;font-size:14.5px;overflow-wrap:anywhere}
.pc__pro li::before,.pc__con li::before{position:absolute;left:0;top:9px;width:11px;height:11px;
  border-radius:50%;content:""}
.pc__pro li::before{background:var(--glow)}
.pc__con li::before{background:var(--magenta);opacity:.55}
.pc h3{margin:0 0 4px;font-size:16px}
.pc h4{margin:0;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* ---------- mini reviews ---------- */
.minis{display:grid;gap:12px;margin-top:8px;min-width:0}
.mini{display:flex;gap:14px;align-items:flex-start;background:var(--bg-soft);
  border:1px solid var(--line);border-radius:var(--r);padding:13px 15px;min-width:0}
.mini .slip__mark{flex:0 0 92px;height:52px;background:#fff;border:1px solid var(--line);
  border-radius:10px;display:grid;place-items:center;padding:6px}
.mini .slip__mark img{max-width:100%;max-height:100%;object-fit:contain}
.mini__b{flex:1 1 auto;min-width:0}
.mini__top{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}
.mini__b h4{margin:0;font-size:17px;overflow-wrap:anywhere}
.mini__score{font-weight:800;color:var(--mint-deep)}
.mini__b p{margin:5px 0 0;font-size:14.5px;overflow-wrap:anywhere}
.mini__fig{color:var(--muted);font-size:13px}

/* ---------- comparison table ---------- */
.tbl{overflow-x:auto;margin:0 0 20px;border:1px solid var(--line);border-radius:var(--r);min-width:0}
.tbl table{border-collapse:collapse;width:100%;min-width:820px;font-size:14px}
.tbl th,.tbl td{border-bottom:1px solid var(--line);padding:11px 13px;text-align:left;vertical-align:top}
.tbl thead th{background:var(--ink-chrome);color:#fff;font-weight:700;border-bottom:0;
  position:sticky;top:0;white-space:nowrap}
.tbl tbody tr:nth-child(even){background:var(--bg-soft)}
.tbl td.t-brand{font-weight:700;color:var(--ink-chrome);white-space:nowrap}
.tbl td.t-score{font-weight:800;color:var(--mint-deep)}
.tbl em{color:var(--muted);font-style:normal}

/* ---------- FAQ ---------- */
.faq-list{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-top:8px;min-width:0}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list details:last-child{border-bottom:0}
.faq-list summary{cursor:pointer;padding:15px 18px;font-weight:700;color:var(--ink-chrome);
  font-size:16px;list-style:none;position:relative;padding-right:46px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"";position:absolute;right:20px;top:22px;width:9px;height:9px;
  border-right:2px solid var(--mint-deep);border-bottom:2px solid var(--mint-deep);
  transform:rotate(45deg);transition:transform .15s}
.faq-list details[open] summary::after{transform:rotate(-135deg);top:25px}
.faq-answer{padding:0 18px 16px;font-size:15.5px;color:var(--ink)}
.faq-answer p{margin:0}

/* ---------- author + updated bar ---------- */
.author-section{margin-top:34px}
.profile__card{display:flex;gap:22px;align-items:flex-start;border:1px solid var(--line);
  border-radius:var(--r);padding:22px;background:var(--bg-soft);min-width:0}
.profile__media{flex:0 0 150px}
.profile__media img{width:150px;height:auto;border-radius:12px;object-fit:cover;
  border:3px solid var(--glow)}
.profile__content{min-width:0}
.profile__eyebrow{margin:0;font-size:11px;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;color:var(--mint-deep)}
.profile__heading{margin:2px 0 8px;font-size:22px}
.profile__name{margin:0;font-size:19px;font-weight:800;color:var(--ink-chrome)}
.profile__role{margin:2px 0 10px;font-size:14px;color:var(--muted)}
.profile__bio{margin:0;font-size:15px}
.profile__link{margin:12px 0 0;font-size:14.5px}
.profile__card--page{margin-bottom:22px}
.last-updated-section{margin:26px 0 0}
.last-updated-bar{display:inline-block;background:var(--bg-mint);border:1px solid var(--mint-pale);
  color:var(--mint-deep);font-size:13px;font-weight:700;padding:7px 15px;border-radius:999px}

/* ---------- prose (EEAT pages) ---------- */
.hero--page{padding:30px 0 4px;border-bottom:1px solid var(--line);margin-bottom:18px}
.prose{max-width:78ch}
.prose h2{font-size:clamp(20px,2.2vw,26px);margin:32px 0 12px}
.prose ul{padding-left:20px}
.prose li{margin-bottom:8px}
.rg-list{padding-left:20px}
.rg-list li{margin-bottom:9px}

/* ---------- footer ---------- */
footer{background:var(--ink-deep);color:#C4D2CD;margin-top:56px;padding:0 0 26px;font-size:14px}
footer::before{content:"";display:block;height:6px;
  background:repeating-linear-gradient(90deg,var(--glow) 0 14px,transparent 14px 24px)}
.footer-inner{width:100%;max-width:var(--wrap);margin-inline:auto;padding:30px 20px 0;min-width:0}
footer a{color:#fff;text-decoration:none}
footer a:hover{color:var(--glow)}
.footer-brand{margin-bottom:22px}
.footer-brand img{height:42px;width:auto;margin-bottom:10px}
.footer-brand p{margin:0;font-size:14px;color:#A5BAB2;max-width:52ch}
.footer-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));
  gap:20px;margin-bottom:8px}
.footer-col ul{list-style:none;margin:8px 0 0;padding:0}
.footer-col li{margin-bottom:7px}
.footer-col-title{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--glow)}
.footer-legal{border-top:1px solid rgba(255,255,255,.14);margin-top:20px;padding-top:18px}
.rg{font-size:13.5px;line-height:1.65;color:#C4D2CD}
.rg b{color:#fff}
.age{display:inline-block;border:1.5px solid #A5BAB2;border-radius:50%;width:30px;height:30px;
  line-height:27px;text-align:center;font-weight:800;font-size:12px;color:#fff;margin-right:10px}
.disclosure{border-top:1px solid rgba(255,255,255,.14);margin-top:16px;padding-top:14px;
  font-size:12.5px;color:#97ADA5;line-height:1.6}
.copyright{font-size:12.5px;color:#7C978D;margin:10px 0 0}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .main-nav{display:none}
  .burger{display:block}
}
@media (max-width:1020px){
  .slip__grid{grid-template-columns:minmax(0,1.5fr) minmax(0,.9fr) 168px}
  .slip__cell--min,.slip__grid > .slip__cell:nth-child(4){display:none}
  .slip__id{grid-template-columns:112px minmax(0,1fr) auto;gap:12px}
  .toc__list{columns:1}
  .hero-offers__grid{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}
}
@media (max-width:760px){
  body{font-size:16px}
  .header-inner{min-height:62px;gap:10px}
  .logo{height:40px}
  .nav-cta{font-size:13px;padding:9px 12px}
  .hero{padding:12px 0 2px}
  .page-h1,h1{font-size:23px;line-height:1.2;margin-bottom:8px}
  .hero-lede{font-size:15px;margin-bottom:10px}
  .hero-badge{font-size:11px;padding:5px 11px;margin-bottom:10px}
  .byline{gap:10px;padding:8px 0 9px;margin-bottom:14px}
  .byline__img{width:38px;height:38px;flex:0 0 38px}
  .byline__who{font-size:14px}
  .byline__role{font-size:12.5px}
  .byline__meta{margin-left:0;text-align:left;font-size:11.5px;flex-basis:100%;line-height:1.5;
    display:flex;flex-wrap:wrap;gap:0 6px}
  .byline__meta span{display:inline}
  .byline__meta span:not(:last-child)::after{content:"|";margin-left:6px;color:var(--line)}
  h2,.section-heading{font-family:var(--disp);font-size:20px;margin:28px 0 10px}
  .hero-offers__grid{grid-template-columns:1fr;gap:8px}
  .hero-offer-card__bonus{font-size:18px}
  .hero-offer-card__offer{padding:11px 13px 12px}
  .hero-offer-card__name{font-size:15px}
  .hero-offer-card__btn{padding:10px 12px;font-size:14px}
  .toc{margin:12px 0 8px;padding:11px 16px}
  .hero-offer-card{grid-template-rows:none;grid-template-columns:auto 1fr;
    grid-template-areas:"rank logo" "body body" "btn btn";
    align-items:center;gap:8px 12px;padding:14px}
  .hero-offer-card__rank{grid-area:rank;font-size:18px}
  .hero-offer-card__logo{grid-area:logo;height:40px;justify-self:start;padding:5px 10px}
  .hero-offer-card__body{grid-area:body;gap:8px}
  .hero-offer-card__btn{grid-area:btn}

  /* mobile slip: the stub becomes a top rail, the data grid stacks */
  .slip{grid-template-columns:minmax(0,1fr)}
  .slip__ribbon{border-radius:0 0 0 8px}
  .slip__stub{flex-direction:row;justify-content:center;gap:9px;padding:7px 12px}
  .slip__stub::after{top:auto;bottom:-1px;left:8px;right:8px;width:auto;height:2px;
    background:repeating-linear-gradient(90deg,#fff 0 5px,transparent 5px 11px)}
  .slip__no{font-size:19px}
  .slip__id{grid-template-columns:104px minmax(0,1fr);grid-template-areas:"mark name" "score score";
    gap:10px 14px;padding:13px 14px 11px}
  .slip__mark{grid-area:mark;height:46px}
  .slip__idtext{grid-area:name}
  .slip__score{grid-area:score;text-align:left;display:flex;align-items:baseline;gap:8px}
  .slip__score b,.slip__score span{display:inline}
  .slip__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0}
  .slip__cell{border-right:0;border-bottom:1px dashed var(--line);padding:11px 14px;
    align-items:center;text-align:center}
  .slip__grid > .slip__cell:nth-child(2){border-right:1px dashed var(--line)}
  .slip__cell--bonus{grid-column:1/-1;border-left:0;border-top:3px solid var(--glow);
    padding:14px 16px 15px;text-align:center;align-items:center}
  .slip__cell--min,.slip__grid > .slip__cell:nth-child(4){display:flex}
  .slip__val{font-size:17px}
  .slip__cell--bonus .slip__val{font-size:20px}
  .slip__act{grid-column:1/-1;padding:12px 14px 14px}
  .act{width:100%;padding:14px 16px}
  .review{padding:16px}
  .review__head .slip__mark{flex:0 0 120px;width:120px;height:54px}
  .review__score{text-align:left}
  .review__cta{max-width:none}
  .mini{flex-direction:column;align-items:stretch}
  .mini .slip__mark{flex:0 0 auto;width:110px}
  .profile__card{flex-direction:column;align-items:center;text-align:center}
  .profile__media{flex:0 0 auto}
  .profile__media img{width:140px}
  .toc{padding:14px 16px}
}
@media (max-width:380px){
  .page-h1,h1{font-size:21px}
  .slip__cell--bonus .slip__val{font-size:18px}
  .slip__id{grid-template-columns:84px minmax(0,1fr)}
}

/* ---- calgarybuffaloes.ca deviations from the tavern origin -----------------
   1. Display face: tavern is single-font Poppins. Headings here take Space
      Grotesk against an Inter body so the two sites do not share a voice.
   2. .slip__score is NOT emitted. tavern prints an invented 9.7/10 beside
      every brand; our gates ban ratings we did not measure, so the element
      is removed at the emitter and the grid closes over it.
   3. No .hero-badge and no .hero-offers. Both are banned (L_NEW_7 forbids any
      eyebrow above the H1; L_NEW_7b forbids the hero #1-pick promo block).
      The hero is H1 -> byline -> one-sentence lede and nothing else. */
.slip__id{grid-template-columns:auto 1fr}
.hero{padding-top:34px}

/* ---- components carried from the rncan sheet ------------------------------
   The tavern template styles its own chrome, hero, TOC and slip list but has
   no rules for the comparison table, review cards, FAQ, flow steps, author
   block, breadcrumbs or EAT page hero -- those components come from our own
   emitter. Carried across and re-tokened to this site's palette; rncan's
   custom properties are remapped onto tavern's (--paper -> --bg-soft etc.)
   so there is exactly one palette in the sheet. ------------------------- */

.hero .lede{font-size:1.06rem;color:#5C625E;max-width:64ch;margin:0}
.lb-logo{width:84px;height:44px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:9px;padding:4px 7px;flex:none}

.lb-bonus{grid-area:bonus}
.lb-bonus-l{display:block;font-size:.6rem;text-transform:uppercase;letter-spacing:.09em;color:var(--lime-d);font-weight:700;margin-bottom:5px;font-family:var(--sans)}
.lb-bonus-v{display:block;font-family:var(--disp);font-weight:700;font-size:1.08rem;line-height:1.2;color:var(--ink-deep);
 background:linear-gradient(120deg,#E6EBE8,#CBD2CD);border:1px solid #B2BAB5;border-left:5px solid var(--cta);border-radius:10px;padding:10px 13px}


.revs{display:grid;gap:18px;margin:1.4em 0}
.rev{background:var(--bg);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh-sm);padding:20px 22px}
.rev-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.rev-rank{font-family:var(--disp);font-weight:700;font-size:1.4rem;color:var(--lime-d)}
.rev .lb-logo{width:96px;height:50px}
.rev-h{min-width:0}
.rev-h h3{margin:0;font-size:1.3rem}
.rev-meta{font-size:.82rem;color:var(--muted);display:inline-flex;align-items:center;gap:5px}
.rev-meta .eng-ic{color:var(--lime-d);width:1em;height:1em}
.rev-cta-btn{margin-left:auto}
.rev-bonus{margin:14px 0 4px}
.rev-bonus .lb-bonus-v{font-size:1.12rem}
.rev-body{margin-top:6px}
.rev-body p{margin:0 0 .8em;font-size:1rem;color:#5C625E}
.rev-for{background:var(--bg-soft);border-left:3px solid var(--cta);border-radius:0 8px 8px 0;padding:8px 12px;color:var(--ink-deep)!important}
.rev-for b{color:var(--ink-deep)}
.rev-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px;margin-top:6px}
@media(max-width:640px){
 .rev{padding:16px}
 .rev-cta-btn{margin-left:0;width:100%;order:5}
 .rev-head{gap:10px}
 .rev-foot .eng-btn{width:100%}}


.fig{margin:1.6em 0;background:var(--bg);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--sh-sm)}
.fig>figcaption{font-size:.89rem;color:#5C625E;padding:13px 16px;background:var(--bg-soft);border-bottom:1px solid var(--line)}
.t-scroll{overflow-x:auto}
.t{width:100%;border-collapse:collapse;font-size:.91rem}
.t th{text-align:left;font-family:var(--sans);font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-chrome);background:var(--bg);padding:11px 15px;border-bottom:2px solid var(--line)}
.t td{padding:11px 15px;border-bottom:1px solid var(--line);vertical-align:top}
.t tbody tr:nth-child(even){background:var(--bg)}
.t tbody tr:hover{background:#F0F2F0}
.t-time{color:var(--ink-deep);font-weight:700}.t-mut{color:var(--muted)}


.fl,.sc{list-style:none;margin:0;padding:18px;display:grid;gap:13px;background:var(--bg);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-sm)}
.fl-step,.sc-item{display:flex;gap:13px;align-items:flex-start}
.fl-n,.sc-n{flex:none;width:31px;height:31px;border-radius:50%;background:var(--ink-chrome);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}
.fl-step p,.sc-item p{margin:.12em 0 0;font-size:.91rem;color:#5C625E}
.checklist{list-style:none;margin:1em 0;padding:0}
.checklist li{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.95rem}
.checklist .eng-ic{color:var(--amber);flex:none;margin-top:3px}
.faq{border:1px solid var(--line);border-radius:12px;background:var(--bg);overflow:hidden;box-shadow:var(--sh-sm)}
.faq summary{cursor:pointer;padding:15px 18px;font-weight:600;list-style:none;position:relative;padding-right:46px;font-family:var(--disp)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:12px;font-family:var(--sans);font-size:1.4rem;color:var(--lime-d)}
.faq[open] summary::after{content:"–"}.faq[open] summary{background:var(--bg-soft)}
.faq-a{padding:3px 18px 16px;font-size:.95rem;color:#5C625E}


.page-hero{background:var(--bg);border-bottom:1px solid var(--line);padding:42px 0}
.page-hero h1{font-size:clamp(1.7rem,3vw,2.3rem);margin:0}
.page-hero .crumb{font-size:.85rem;color:var(--muted);margin-bottom:10px}
.page-hero .crumb a{color:var(--lime-d)}
.by-link{color:var(--ink-deep);text-decoration:none;border-bottom:1.5px solid var(--cta)}
.by-link:hover b{color:var(--lime-d)}
.author-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.author-avatar{width:104px;height:104px;border-radius:50%;object-fit:cover;border:3px solid var(--cta);box-shadow:var(--sh-sm);flex:none}
.author-role{margin:.3em 0 .1em;color:var(--lime-d);font-weight:600;font-family:var(--disp)}
.author-cred{margin:0;color:var(--muted);font-size:.92rem}
@media(max-width:640px){.hero .lede{font-size:1rem}
 .lb-bonus-v{font-size:1.05rem}}


.lede-toggle{display:none;background:none;border:0;padding:0;margin-left:6px;font:inherit;
 font-weight:700;color:var(--lime-d);cursor:pointer;text-decoration:underline}
@media(max-width:640px){
  .lede-more{display:none}
  .lede.expanded .lede-more{display:inline}
  .lede-toggle{display:inline}
  .lede{font-size:.95rem;line-height:1.5;margin-bottom:0}
  .lb-row .lb-logo{max-height:34px}
  .lb-bonus{padding:8px 10px}
  .lb-bonus-v{font-size:1.02rem;line-height:1.2}}
@media(max-width:640px){          
  .lede{font-size:.92rem;line-height:1.45}
  .lb-row .lb-logo{max-height:30px}
  .lb-bonus{padding:7px 10px}
  .lb-bonus-l{font-size:.55rem;letter-spacing:.13em;margin-bottom:1px}
  .lb-bonus-v{font-size:.99rem;line-height:1.18}}

.t-scroll{border:1px solid var(--line);border-radius:14px;background:var(--bg)}


.fl-step,.sc-item{display:flex;gap:13px;align-items:flex-start}
.fl-n,.sc-n{flex:none;width:31px;height:31px;border-radius:50%;background:var(--ink-chrome);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}
.fl-step p,.sc-item p{margin:.12em 0 0;font-size:.91rem;color:#4F5A54}
.lb-bonus-note{display:block;margin-top:4px;font-family:var(--sans);font-size:.7rem;
  line-height:1.35;letter-spacing:0;text-transform:none;color:#222B27}
.lb-full{display:block;font-size:.72rem;line-height:1.4;color:var(--muted);margin-top:6px}
.lb-full b{color:var(--ink-chrome);font-weight:600}
.hero-intro.expanded .lede-more{display:inline}
.t th:first-child,.t td:first-child{width:28px}
.t th,.t td{padding:9px 10px}
.checklist li,.fl-step,.hero-by,.rev-head{min-width:0}
.checklist li,.checklist li *,.fl-step,.fl-step *,.sec-head *,.prose *{
  overflow-wrap:anywhere;word-break:normal}
.lb-bcol .lb-bonus{margin:0;min-width:0}
.prov b{display:inline-flex;align-items:center;gap:6px;padding:5px 11px 5px 9px;
  border:1px solid var(--line);border-radius:999px;background:var(--bg);
  font-size:.74rem;font-weight:600;color:var(--ink-chrome);line-height:1.3}
.prov b::before{content:"";width:6px;height:6px;border-radius:50%;
  background:var(--muted);flex:0 0 auto}
.prov b.on{border-color:var(--cta);color:var(--ink)}
.prov b.on::before{background:var(--cta)}
@media(max-width:420px){
  .lb-row .lb-bonus-l{display:none}
  .lb-bonus-note{font-size:.62rem;line-height:1.25} .lb-bonus-v{padding:6px 10px}}
@media(max-width:420px){.lb-bonus-v{font-size:1rem;padding:5px 9px}}
@media(max-width:360px){
  .lb-bonus-v,.lb-bonus-full{overflow-wrap:anywhere}}

/* ---- remaining gaps: variants our emitter uses that neither sheet defined -- */
:root{ --sh-sm:0 1px 2px rgba(22,29,46,.06); --amber:var(--magenta); --lime-d:var(--cta-dark); }
.ranking{padding-top:6px}
.section--soft{background:var(--bg-soft)}
.act--ghost{background:transparent;color:var(--ink-chrome);border:1px solid var(--line);
  box-shadow:none;font-weight:700}
.act--ghost:hover{background:var(--bg-soft);color:var(--ink-deep)}
/* a market-exit / no-link row carries no call to action by design */
.act--gone{background:var(--bg-mint);color:var(--muted);border:1px dashed var(--line);
  box-shadow:none;cursor:default;font-weight:600;display:flex;align-items:center;
  justify-content:center;text-align:center}

/* ---- fixes found by the render gate after the tavern port ------------------ */
/* 1. the comparison table is our component and overflowed every mobile width
      by up to 188px. tavern's own sheet warns that one missing min-width:0 in
      a grid chain pins the document to min-content; same class of bug. */
.t-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.fig{min-width:0;max-width:100%}
.t{min-width:560px}
.prose{min-width:0}
/* 2. [hidden] must beat the slip's own display rule or load-more cannot hide
      rows (the same restatement the rncan sheet needed). */
.slip[hidden],#morewrap[hidden]{display:none!important}
/* 3. the bonus value must outrank the brand name typographically -- they were
      both landing at 18px. */
.slip__val{font-size:1.18rem;font-weight:800;line-height:1.25}
.slip__name{font-size:1rem}
/* 4. plate-to-CTA ratio: the bonus cell was up to 3.18x the button. Give the
      act a real presence on the wide grid rather than shrinking the plate,
      which would cost the offer its legibility. */
@media(min-width:641px){
  .slip__act{min-width:220px}
  .slip__act .act{min-height:76px;display:flex;flex-direction:column;
    align-items:center;justify-content:center}
}

/* ---- fold budget at 375 ---------------------------------------------------
   The first CTA sat at 1163px against a 567px budget. Three costs, in order:
   a 185px ranking intro and a 49px TOC both sitting between the H1 and the
   list (moved below it in the emitter), and the slip itself running 480px
   tall. The rules below compact the slip on mobile and put the action
   directly under the offer, where the other three facts can follow it. */
@media(max-width:640px){
  .byline{gap:8px;font-size:.84rem}
  .byline__img{width:38px;height:38px}
  .slip__mark img{max-height:38px;width:auto}
  .slip__tags{display:none}
  .slip__for{font-size:.82rem}
  .slip__grid{display:flex;flex-direction:column;gap:8px}
  .slip__cell--bonus{order:1}
  .slip__act{order:2}
  .slip__cell{order:3;display:flex;align-items:baseline;gap:8px}
  .slip__cell .slip__lab{margin:0;min-width:92px}
  .slip__cell .slip__sub,.slip__cell .slip__min{margin:0}
}
/* ---- plate-to-CTA ratio on the wide grid ----------------------------------
   The gate measures the <a>, not its cell. The act was 188x76 inside a 220x102
   cell, so a third of the column read as empty and the offer cell came out at
   2.87x. Filling the cell is the honest fix -- shrinking the plate would cost
   the offer its legibility, which is the one thing the row exists to show. */
@media(min-width:641px){
  .slip__act{min-width:200px;display:flex}
  .slip__act .act,.slip__act .act--gone{width:100%;height:100%;min-height:0}
  .slip__cell--bonus{max-width:340px}
}

/* ---- fold + ratio, second pass -------------------------------------------
   Two mistakes in the first pass, both found by measuring rather than reading:
   (a) `.slip__cell{order:3}` was declared AFTER `.slip__cell--bonus{order:1}`
       at equal specificity, so the bonus cell took order 3 and the button
       rendered above the offer it belongs to. Reading order must be offer
       then action, so the bonus rule now carries the higher specificity.
   (b) `.slip__act` has cell padding, so width/height:100% on the anchor still
       left a 168x87 button in a 200x113 cell and the ratio stayed over. */
@media(min-width:641px){
  .slip__act{padding:0}
}
@media(max-width:640px){
  .hero{padding-top:16px}
  .byline{gap:8px;font-size:.8rem;line-height:1.3}
  .byline__img{width:34px;height:34px}
  .byline__meta{font-size:.76rem}
  .slip__mark img{max-height:34px}
  /* keep the provenance line -- it is real information -- but hold it to one */
  .slip__for{font-size:.78rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;
    -webkit-box-orient:vertical;overflow:hidden;margin:2px 0 0}
  .slip__grid .slip__cell--bonus{order:1}
  .slip__grid .slip__act{order:2}
  .slip__grid .slip__cell{order:3}
  .slip__act .act{padding:11px 14px}
  .act__sub{font-size:.68rem;margin-top:2px}
}

/* ---- last 34px of fold budget --------------------------------------------
   Trimmed from the vertical rhythm above the list rather than from the slip,
   which is already as compact as it can be without losing a fact. */
@media(max-width:640px){
  .hero{padding-bottom:14px}
  .hero-lede{font-size:.95rem;line-height:1.5;margin:8px 0 0}
  .page-h1{margin-bottom:8px}
  .ranking{padding-top:0}
  .ranking .section-heading{margin:0 0 10px}
  .slips{margin-top:0}
  .slip{padding-top:12px}
}
@media(max-width:640px){
  .site-header .header-inner{min-height:58px}
  .byline{margin:6px 0}
  .slip__id{padding-bottom:6px}
  .slip__grid{gap:6px}
}
@media(max-width:640px){
  .site-header .header-inner{min-height:52px}
  .logo{height:38px}
  .hero{padding-top:10px}
}

/* ---- two bugs a screenshot caught that all 227 assertions passed ----------
   1. ORDER, again. `.slip__cell--bonus` also carries `.slip__cell`, so the
      generic `.slip__grid .slip__cell{order:3}` declared after it won at equal
      specificity and the button rendered above the offer. Chaining both
      classes raises the bonus rule above the generic one for good.
   2. The nav CTA overlapped the logo at 375: .header-inner is a nowrap flex
      row and nothing told the CTA it could shrink. It is hidden on the
      narrowest widths -- it is duplicated in the mobile nav panel -- and
      allowed to shrink in the band above that. */
@media(max-width:640px){.slip__grid .slip__cell.slip__cell--bonus{order:1}}
@media(max-width:560px){
  .header-actions .nav-cta{display:none}
}
@media(min-width:561px) and (max-width:900px){
  .header-actions .nav-cta{min-width:0;flex-shrink:1;white-space:nowrap;
    overflow:hidden;text-overflow:ellipsis;max-width:40vw}
}
.header-inner .logo-link{flex:0 1 auto;min-width:0;overflow:hidden}

/* ---- fold, final pass: measured costs, not guesses ------------------------
   At 375 the first CTA bottom was 637 against 567. The three elements above it
   that still had slack: the byline stacked three lines (80px), the hero lede
   ran three (68px), and the action block set its label and small print as two
   generously padded lines (93px). Each is tightened; nothing is removed. */
@media(max-width:640px){
  .byline{display:grid;grid-template-columns:34px 1fr;gap:4px 10px;align-items:center;
    padding:6px 0;margin:4px 0}
  .byline__img{grid-row:span 2}
  .byline__who{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;line-height:1.2}
  .byline__role{font-size:.74rem}
  .byline__meta{display:flex;gap:8px;font-size:.72rem;line-height:1.2}
  .hero-lede{font-size:.92rem;line-height:1.42;margin:4px 0 0}
  .slip__act .act{padding:9px 12px;line-height:1.2}
  .act__sub{font-size:.66rem;margin-top:1px;line-height:1.2}
}
@media(max-width:640px){
  .hero{padding-top:6px;padding-bottom:10px}
  .page-h1{font-size:1.42rem;line-height:1.22;margin-bottom:6px}
  .ranking .section-heading{font-size:1.18rem;line-height:1.25;margin:0 0 8px}
}
@media(max-width:640px){ .slip__id{padding-bottom:2px} .slip{padding-top:10px} }

/* A cell explaining a MISSING figure is not an offer and must not be set like
   one -- at 1.18rem/800 the longer reasons wrapped to three lines and pushed
   the plate past 1.9x the CTA at 375. Quieter, lighter, italic. */
.slip__val--reason{font-size:.92rem;font-weight:500;font-style:italic;
  color:var(--muted);line-height:1.35}

/* ---- Fold, German. -------------------------------------------------------
   German compounds run longer than the English the budget was tuned on:
   the H1 takes two lines, the lede three, and the first CTA landed at 605
   against a 567 budget. Trimmed from the rhythm above the list, not from the
   slip, which already carries only the four facts. */
@media(max-width:640px){
  .hero{padding-top:6px;padding-bottom:8px}
  .page-h1{font-size:1.34rem;line-height:1.2;margin-bottom:6px}
  .hero-lede{font-size:.88rem;line-height:1.4;margin:4px 0 0}
  .byline{padding:4px 0;margin:4px 0;gap:3px 9px}
  .byline__img{width:32px;height:32px}
  .byline__role{font-size:.72rem}
  .byline__meta{font-size:.7rem}
  .ranking .section-heading{font-size:1.1rem;line-height:1.22;margin:0 0 7px}
  .slip{padding-top:9px}
  .slip__id{padding-bottom:2px}
  .slip__mark img{max-height:30px}
}

/* ---- German compounds in the cell labels ---------------------------------
   "Mindesteinzahlung" is one word and broke as MINDESTEINZA / HLUNG inside
   its cell. Hyphenation with a soft break is the fix; the label is uppercase
   and letter-spaced, so a mid-word break reads as a typo. Same class of
   problem as the flex-child overflow in memory, different element. */
.slip__lab{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:normal;word-break:keep-all;
  min-width:0;font-size:.63rem;letter-spacing:.06em}
.slip__cell,.slip__cell--min{min-width:0}
@media(min-width:641px){ .slip__grid>.slip__cell{min-width:0} }
