/* Terrabis homepages: brand type, colors and layout for the Elementor sections (classes tb-*). */
@font-face{font-family:"Averta";src:url(fonts/Averta-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Averta";src:url(fonts/Averta-Semibold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Averta";src:url(fonts/Averta-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Averta";src:url(fonts/Averta-ExtraBold.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Averta";src:url(fonts/Averta-Black.woff2) format("woff2");font-weight:900;font-display:swap}

:root{--tb-navy:#003459;--tb-navy-2:#0a2f5c;--tb-sky:#00aeef;--tb-sky-2:#1fa8e8;--tb-orange:#fb6107;--tb-orange-2:#ff8a1f;--tb-light:#e4f3fc;--tb-tile:#e1f1fb;--tb-ink:#0d2238;--tb-muted:#4a5d72;--tb-line:#cfe3f1;--tb-r:16px;--tb-max:1240px;--tb-font:"Averta","Avenir Next","Segoe UI",system-ui,sans-serif}

/* Reset Elementor container spacing inside our sections; layout is set per class below. */
.tb,.tb .e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--min-height:0px}
.tb .e-con{flex-wrap:nowrap}
.tb .elementor-widget{margin:0!important}
.tb .elementor-widget-container{margin:0;padding:0}
.tb,.tb *{font-family:var(--tb-font)}
.tb{color:var(--tb-ink);font-size:16px;line-height:1.45;overflow:hidden}
.tb p{margin:0}
.tb a{text-decoration:none}
.tb .elementor-heading-title{font-family:var(--tb-font)!important;text-transform:none!important;letter-spacing:-.01em!important;color:var(--tb-navy);margin:0;line-height:1.05}
.tb img{display:block;max-width:100%;height:auto}
.tb-wrap{width:min(var(--tb-max),100% - 32px)!important;margin-left:auto!important;margin-right:auto!important}
.tb-sec{padding-block:44px 8px!important}

/* Type */
.tb .tb-h1 .elementor-heading-title{font-size:clamp(38px,5.6vw,78px);font-weight:900;letter-spacing:-.02em!important;line-height:.98}
.tb .tb-h2 .elementor-heading-title{font-size:clamp(28px,3.2vw,40px);font-weight:900}
.tb .tb-h3 .elementor-heading-title{font-size:clamp(20px,2vw,26px);font-weight:800}
.tb .tb-h4 .elementor-heading-title{font-size:19px;font-weight:800}
.tb .tb-white .elementor-heading-title,.tb .tb-white,.tb .tb-white p{color:#fff}
.tb .tb-navy .elementor-heading-title,.tb .tb-navy,.tb .tb-navy p{color:var(--tb-navy)}
.tb-lead p{font-size:clamp(17px,1.6vw,21px);font-weight:600}
.tb-note p{font-size:14px;color:var(--tb-muted)}
.tb-muted p{color:var(--tb-muted);font-size:15px}
.tb-eyebrow p{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--tb-navy)}
.tb-eyebrow-light p{color:#fff}
.tb-eyebrow-bar p::after{content:"";display:block;width:34px;height:4px;border-radius:2px;background:var(--tb-orange);margin-top:10px}
.tb-link a{color:var(--tb-navy);font-weight:700;font-size:15px}
.tb-link a:hover{color:var(--tb-orange)}
.tb-ico{width:22px;height:22px;vertical-align:-5px;margin-right:10px;color:var(--tb-navy)}

/* Buttons (Elementor button widget with tb-btn classes) */
.tb .tb-btn .elementor-button,.tb-btn-raw{font-family:var(--tb-font)!important;font-weight:700!important;font-size:17px!important;line-height:1!important;border-radius:999px!important;padding:15px 26px!important;border:2px solid transparent!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important;transition:transform .15s,background-color .15s,color .15s}
.tb .tb-btn .elementor-button:hover{transform:translateY(-1px)}
.tb .tb-btn-navy .elementor-button,.tb-btn-raw{background:var(--tb-navy)!important;color:#fff!important}
.tb .tb-btn-orange .elementor-button{background:var(--tb-orange)!important;color:#fff!important}
.tb .tb-btn-white .elementor-button{background:#fff!important;color:var(--tb-navy)!important}
.tb .tb-btn-outline .elementor-button{background:#fff!important;color:var(--tb-navy)!important;border-color:var(--tb-navy)!important}
.tb .tb-btn-ghost .elementor-button{background:transparent!important;color:#fff!important;border-color:#fff!important}
.tb .tb-btn-sm .elementor-button{font-size:15px!important;padding:11px 18px!important}
.tb .tb-btn-arrow .elementor-button-text::after{content:" \2192";font-weight:700}
.tb .tb-btn-caret .elementor-button-text::after{content:" \25BE"}
.tb .tb-btn-pin .elementor-button-text::before{content:"";display:inline-block;width:14px;height:17px;margin-right:9px;vertical-align:-2px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M12 27s10-8.6 10-16a10 10 0 1 0-20 0c0 7.4 10 16 10 16zm0-12a4 4 0 1 1 0-8 4 4 0 0 1 0 8z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M12 27s10-8.6 10-16a10 10 0 1 0-20 0c0 7.4 10 16 10 16zm0-12a4 4 0 1 1 0-8 4 4 0 0 1 0 8z'/%3E%3C/svg%3E") center/contain no-repeat}
.tb-btns{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:12px!important}

/* Arrow circles */
.tb-arrow-w{flex:0 0 auto}
.tb-arrow{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%}
.tb-arrow svg{width:22px;height:22px}
.tb-arrow-white{background:#fff;color:var(--tb-navy)}
.tb-arrow-outline{border:2.5px solid var(--tb-navy);color:var(--tb-navy)}
.tb-arrow-plain{color:var(--tb-navy);width:28px}

/* Decorative topographic lines */
.tb-topo{position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.55;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 400' fill='none' stroke='%23ffb36b' stroke-width='2'%3E%3Cpath d='M-20 330c90-40 120 20 210-10s90-110 190-100 110 70 240 30'/%3E%3Cpath d='M-20 360c90-40 140 25 230-5s100-100 200-90 100 70 210 35'/%3E%3Cpath d='M-20 390c100-35 150 25 240 0s110-90 210-80 90 60 200 30'/%3E%3Cpath d='M380 -10c-30 60 40 90 10 150s-110 60-90 130'/%3E%3Cpath d='M420 -10c-30 60 40 95 10 155s-100 70-80 140'/%3E%3Cpath d='M30 -10c40 50-20 90 30 130s120 10 140 70'/%3E%3C/svg%3E") center/cover no-repeat}
.tb-topo-footer{opacity:.9;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 300' fill='none' stroke-width='2.5'%3E%3Cpath stroke='%2300aeef' d='M330 300c40-80 120-90 160-150s80-110 140-120'/%3E%3Cpath stroke='%2300aeef' d='M380 300c40-70 110-80 150-140s70-100 110-110'/%3E%3Cpath stroke='%23fb6107' d='M430 300c30-60 90-70 120-120s60-80 80-90'/%3E%3C/svg%3E");background-position:right bottom;background-size:auto 100%}

/* ---------- Header ---------- */
.tb-header{background:#fff;border-bottom:1px solid #eef3f7;position:relative;z-index:50}
.tb-hwrap{width:min(1320px,100% - 32px)!important;margin:0 auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;min-height:76px}
.tb-logo img{width:210px!important}
.tb-nav{display:flex!important;flex-direction:row!important;gap:6px!important;margin-left:auto!important}
.tb .tb-navlink .elementor-button{background:transparent!important;color:var(--tb-navy)!important;font-weight:700!important;font-size:17px!important;padding:10px 16px!important;border-radius:8px!important;box-shadow:none!important;font-family:var(--tb-font)!important}
.tb .tb-navlink .elementor-button:hover{color:var(--tb-orange)!important}
.tb-hcta{display:flex!important;flex-direction:row!important;align-items:center!important;gap:14px!important}
.tb-bag{display:none;color:var(--tb-navy)}
.tb-bag svg{width:28px;height:28px}
body:has(.tb-b) .tb-hcta .tb-btn{display:none}
body:has(.tb-b) .tb-bag{display:block}

/* ---------- Footer ---------- */
.tb-footer{background:var(--tb-navy);color:#fff;position:relative}
.tb-fwrap{width:min(1240px,100% - 32px)!important;margin:0 auto!important;display:grid!important;grid-template-columns:300px 1fr;gap:40px!important;padding-block:44px!important;position:relative;z-index:1}
.tb-flogo img{width:200px!important}
.tb-fbrand{display:flex!important;flex-direction:column!important;gap:14px!important;border-right:1px solid rgba(255,255,255,.25);padding-right:30px!important}
.tb-fcols{display:grid!important;grid-template-columns:repeat(4,1fr);gap:24px!important}
.tb .tb-fh .elementor-heading-title{color:#fff;font-size:16px;font-weight:800;margin-bottom:8px}
.tb-flinks p{line-height:1.8;font-size:14px}
.tb-flinks a{color:#d7e6f3}
.tb-flinks a:hover{color:#fff}
.tb-footer .tb-topo{z-index:0}

/* ---------- Product rows (placeholder + Jane slot) ---------- */
.tb-shead{display:flex!important;flex-direction:row!important;align-items:center!important;gap:22px!important;margin-bottom:18px!important;flex-wrap:wrap!important}
.tb-shead-l{display:flex!important;flex-direction:column!important;gap:4px!important}
.tb-shead-r{display:flex!important;flex-direction:row!important;align-items:center!important;gap:16px!important;margin-left:auto!important}
.tb-shead-bar .tb-note{border-left:3px solid var(--tb-orange);padding-left:14px!important}
.tb-pager{display:inline-flex;gap:8px}
.tb-pager button{width:34px;height:34px;border-radius:50%;border:0;background:var(--tb-light);color:var(--tb-navy);font-size:22px;line-height:1;cursor:pointer;padding:0}
.tb-pgrid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px!important}
.tb-pgrid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tb-pcard{display:flex!important;flex-direction:column!important;gap:4px!important}
.tb-pcard-img img{width:100%!important;aspect-ratio:1.2;object-fit:cover;border-radius:12px;background:var(--tb-tile)}
.tb-pcard-buy .tb-pcard-img img{aspect-ratio:1}
.tb .tb-pcard-name .elementor-heading-title{font-size:18px;font-weight:800;margin-top:10px}
.tb-pcard-buy .tb-pcard-name .elementor-heading-title{margin-top:0}
.tb-pcard-brand p{font-size:14px;color:var(--tb-muted)}
.tb-pcard-buy .tb-pcard-brand p{margin-top:8px;font-size:12px}
.tb-pcard-price p{font-size:15px;color:var(--tb-ink);margin:8px 0 10px}
.tb-size{display:inline-block;border:1.5px solid var(--tb-navy);border-radius:999px;padding:2px 10px;font-size:13px;font-weight:700;margin-right:8px}
.tb-pcard .tb-btn .elementor-button{width:100%;justify-content:center}
.tb-pcard .tb-btn{width:100%}
.tb-jane-slot:empty,.tb-jane-slot jane-menu-row:empty{display:block;min-height:0}
.tb-products.has-jane .tb-jane-ph{display:none!important}

/* ---------- Homepage A ---------- */
.tb-a-hero{display:grid!important;grid-template-columns:1fr 300px;gap:10px!important;padding-top:8px!important}
.tb-a-main{position:relative;background:var(--tb-orange-2);border-radius:var(--tb-r);overflow:hidden;min-height:430px;display:block!important}
.tb-a-copy{position:relative;z-index:2;padding:34px 0 0 34px!important;display:flex!important;flex-direction:column!important;gap:14px!important;max-width:52%}
.tb-a-copy .tb-h1 .elementor-heading-title{font-size:clamp(40px,5vw,70px)}
.tb-a-sub p{font-size:clamp(20px,2.2vw,30px);font-weight:800;color:var(--tb-navy)}
.tb-a-bags{position:absolute!important;right:0;bottom:0;width:62%;z-index:1}
.tb-a-bags img{width:100%!important}
.tb-dots{position:absolute;left:30px;bottom:24px;display:flex;gap:10px;z-index:2}
.tb-dots i{width:11px;height:11px;border-radius:50%;border:2px solid #fff}
.tb-dots i.on{background:#fff}
.tb-a-side{display:grid!important;grid-template-rows:1fr 1fr;gap:10px!important}
.tb-a-card{position:relative;border-radius:var(--tb-r);overflow:hidden;padding:20px 22px!important;display:block!important;min-height:205px}
.tb-a-card-store{background:linear-gradient(160deg,#21b7f2,#0a8fd4)}
.tb-a-card-club{background:var(--tb-navy)}
.tb-a-card .tb-h3 .elementor-heading-title{font-size:clamp(24px,2.5vw,32px);font-weight:900;line-height:.98;position:relative;z-index:2}
.tb-a-card .tb-arrow-w{position:absolute!important;top:20px;right:18px;z-index:2}
.tb-a-card-img{position:absolute!important;left:0;right:0;bottom:0}
.tb-a-card-img img{width:100%!important}
.tb-a-card-club .tb-a-card-img{left:auto;width:82%}
.tb-band-light{background:var(--tb-light);margin-top:10px!important}
.tb-a-select-in{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:60px!important;padding-block:12px!important}
.tb-a-select-l p{font-size:20px;color:var(--tb-navy)}
.tb-a-states{display:flex!important;flex-direction:row!important;gap:46px!important;padding-left:60px!important;border-left:1.5px solid var(--tb-navy)}
.tb .tb-btn-state .elementor-button{min-width:170px;justify-content:center}
.tb-cats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px!important}
.tb-a-cats{margin-top:28px!important}
.tb-a-cat{position:relative;border-radius:14px;overflow:hidden;min-height:136px;padding:16px 18px!important;display:block!important}
.tb-a-cat-navy{background:var(--tb-navy-2)}.tb-a-cat-orange{background:var(--tb-orange-2)}.tb-a-cat-sky{background:var(--tb-sky-2)}
.tb-a-cat .tb-h3,.tb-a-cat .tb-arrow-w{position:relative;z-index:2}
.tb-a-cat .tb-arrow-w{margin-top:10px!important}
.tb-a-cat .tb-arrow{width:30px;height:30px}
.tb-a-cat-img{position:absolute!important;right:0;bottom:0;width:66%;z-index:1}
.tb-a-cat-img img{width:100%!important}
.tb-a-club{position:relative;background:var(--tb-orange-2);margin-top:20px!important;overflow:hidden}
.tb-a-club-in{display:grid!important;grid-template-columns:1fr 1fr;align-items:center!important;position:relative;z-index:1;min-height:180px}
.tb-a-club-copy{display:flex!important;flex-direction:column!important;gap:10px!important;padding-block:22px!important;align-items:flex-start!important}
.tb-a-club-img{align-self:end}
.tb-a-locs{display:grid!important;grid-template-columns:1fr 1fr;gap:16px!important}
.tb-a-loc{display:grid!important;grid-template-columns:1.9fr 1fr;background:var(--tb-light);border-radius:12px;overflow:hidden;align-items:center!important}
.tb-a-loc-img img{width:100%!important;height:100%;object-fit:cover}
.tb-a-loc-txt{display:flex!important;flex-direction:column!important;gap:10px!important;padding:18px!important}
.tb-state{font-weight:900;color:var(--tb-navy);font-size:13px;letter-spacing:.12em}
.tb-faqbar{display:flex!important;flex-direction:row!important;align-items:center!important;gap:40px!important;background:var(--tb-light);border-radius:12px;padding:16px 26px!important;margin-block:22px 30px!important}
.tb-faqbar-links{display:flex!important;flex-direction:row!important;gap:40px!important;padding-left:40px!important;border-left:1.5px solid var(--tb-navy);flex:1}
.tb .tb-ilink .elementor-button{background:transparent!important;color:var(--tb-navy)!important;font-weight:600!important;padding:4px 0!important;font-size:16px!important;box-shadow:none!important}

/* ---------- Homepage B ---------- */
.tb-b-local{display:flex!important;flex-direction:row!important;align-items:center!important;gap:24px!important;background:var(--tb-light);border-radius:12px;padding:8px 10px 8px 26px!important;margin-top:8px!important}
.tb-b-local-l p{font-size:20px;color:var(--tb-navy);padding-right:24px;border-right:1.5px solid var(--tb-navy)}
.tb-b-local-m{flex:1}
.tb-b-local-m p{font-size:17px}
.tb-b-catnav{display:flex!important;flex-direction:row!important;justify-content:space-around!important;padding-block:6px!important}
.tb .tb-catlink .elementor-button{background:transparent!important;color:var(--tb-navy)!important;font-weight:700!important;font-size:17px!important;padding:10px 12px!important;box-shadow:none!important}
.tb-b-hero{display:grid!important;grid-template-columns:1fr 1fr;border:3px solid var(--tb-orange-2);border-radius:22px;overflow:hidden;margin-top:6px!important;background:#fff}
.tb-b-hero-media{position:relative;min-height:440px;display:block!important;border-radius:0 160px 160px 0/0 50% 50% 0;overflow:hidden}
.tb-b-hero-img{position:absolute!important;inset:0}
.tb-b-hero-img img{width:100%!important;height:100%!important;object-fit:cover}
.tb-b-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,32,64,.05) 30%,rgba(0,32,64,.85) 100%);z-index:1}
.tb-b-hero-copy{position:absolute!important;left:34px;right:28px;top:24px;bottom:30px;z-index:2;display:flex!important;flex-direction:column!important;gap:8px!important}
.tb-b-hero-copy .tb-h1{margin-top:auto!important}
.tb-b-hero-copy .tb-h1 .elementor-heading-title{font-size:clamp(34px,3.6vw,50px)}
.tb-b-hero-products{padding:20px 22px!important;display:flex!important;flex-direction:column!important}
.tb-shead-tight{margin-bottom:12px!important}
.tb-b-cats{margin-top:18px!important}
.tb-b-cat{position:relative;border-radius:14px;overflow:hidden;display:block!important}
.tb-b-cat-img img{width:100%!important;aspect-ratio:1.85;object-fit:cover}
.tb-b-cat::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55))}
.tb-b-cat-label{position:absolute!important;left:18px;bottom:14px;z-index:2}
.tb-b-promos{display:grid!important;grid-template-columns:1fr 1.1fr;gap:16px!important;margin-top:24px!important}
.tb-b-promo{position:relative;border-radius:var(--tb-r);overflow:hidden;min-height:224px;display:grid!important;grid-template-columns:1.1fr 1fr;align-items:center!important}
.tb-b-promo-orange{background:linear-gradient(120deg,#ffa327,#fb7a10)}
.tb-b-promo-navy{background:var(--tb-navy)}
.tb-b-promo-copy{padding:24px!important;display:flex!important;flex-direction:column!important;gap:10px!important;align-items:flex-start!important;position:relative;z-index:2}
.tb-b-promo-copy .tb-h2 .elementor-heading-title{font-size:clamp(30px,3.4vw,46px);line-height:.95}
.tb-b-promo-img{align-self:stretch;position:relative;z-index:1}
.tb-b-promo-img img{width:100%!important;height:100%!important;object-fit:cover}
.tb-toggle{display:inline-flex;border:1.5px solid var(--tb-navy);border-radius:999px;overflow:hidden}
.tb-toggle a{padding:8px 26px;font-weight:700;color:var(--tb-navy);font-size:15px}
.tb-toggle a.on{background:var(--tb-navy);color:#fff}
.tb-b-locs{display:grid!important;grid-template-columns:1fr 1fr;gap:20px!important}
.tb-b-loc{display:flex!important;flex-direction:column!important;gap:10px!important}
.tb-b-loc-img img{width:100%!important;aspect-ratio:2.45;object-fit:cover;border-radius:12px}
.tb-b-faq{gap:24px!important}
.tb-qicon{display:inline-grid;place-items:center;width:38px;height:38px;border:2.5px solid var(--tb-navy);border-radius:50%;font-weight:900;color:var(--tb-navy);font-size:20px}
.tb-faqbar-m{flex:1;padding-left:24px!important;border-left:1.5px solid var(--tb-navy)}

/* ---------- Homepage C ---------- */
.tb-c-hero{position:relative;min-height:470px;display:block!important}
.tb-c-hero-img{position:absolute!important;inset:0}
.tb-c-hero-img img{width:100%!important;height:100%!important;object-fit:cover;object-position:center 30%}
.tb-c-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,20,35,.72),rgba(10,20,35,.2) 55%,rgba(10,20,35,0))}
.tb-c-hero-in{position:relative;z-index:2;display:grid!important;grid-template-columns:1fr 330px;align-items:center!important;min-height:470px}
.tb-c-hero-copy{display:flex!important;flex-direction:column!important;gap:14px!important;padding-top:60px!important}
.tb-c-hero-copy .tb-h1 .elementor-heading-title{font-size:clamp(38px,4.4vw,62px)}
.tb-c-finder{background:#fff;border-radius:14px;padding:24px!important;display:flex!important;flex-direction:column!important;gap:16px!important;box-shadow:0 18px 50px rgba(0,0,0,.25)}
.tb-finder{display:flex;flex-direction:column;gap:12px}
.tb-finder-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tb-finder-tabs button{border:1.5px solid var(--tb-navy);background:#fff;color:var(--tb-navy);font:700 15px var(--tb-font);border-radius:8px;padding:11px;cursor:pointer}
.tb-finder-tabs button.on{background:var(--tb-navy);color:#fff}
.tb-finder-in{display:flex;align-items:center;gap:8px;border:1.5px solid #c9d6e2;border-radius:8px;padding:0 12px;color:var(--tb-navy)}
.tb-finder-in svg{width:20px;height:20px;flex:0 0 auto}
.tb-finder-in input{border:0!important;outline:0;padding:12px 0!important;font:16px var(--tb-font);width:100%;background:transparent;box-shadow:none!important}
.tb-btn-raw{cursor:pointer;width:100%;border-radius:999px}
.tb-c-states{display:grid!important;grid-template-columns:1fr 1fr 1fr;gap:12px!important;align-items:center!important;padding-block:22px!important}
.tb-c-states-l{display:flex!important;flex-direction:column!important;gap:16px!important;padding-right:20px!important}
.tb-bar{display:block;width:44px;height:4px;border-radius:2px;background:var(--tb-orange)}
.tb-c-store{position:relative;border-radius:14px;overflow:hidden;display:block!important}
.tb-c-store-img img{width:100%!important;aspect-ratio:1.88;object-fit:cover}
.tb-c-store::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.6))}
.tb-c-store .tb-h3{position:absolute!important;left:18px;bottom:18px;z-index:2}
.tb-c-store .tb-btn{position:absolute!important;right:14px;bottom:14px;z-index:2}
.tb-c-browse{margin-top:30px!important}
.tb-c-browse-in{display:grid!important;grid-template-columns:240px 1fr;gap:20px!important;align-items:center!important;padding-block:22px!important}
.tb-c-browse-l{display:flex!important;flex-direction:column!important;gap:12px!important}
.tb-c-cat{position:relative;border-radius:12px;overflow:hidden;display:block!important}
.tb-c-cat-img img{width:100%!important;aspect-ratio:1.55;object-fit:cover}
.tb-pill{position:absolute!important;left:12px;bottom:12px;z-index:2}
.tb-pill p{background:#fff;border-radius:999px;padding:6px 14px;font-weight:800;font-size:14px;color:var(--tb-navy)}
.tb-c-club{position:relative;min-height:330px;display:block!important;overflow:hidden}
.tb-c-club-img{position:absolute!important;inset:0}
.tb-c-club-img img{width:100%!important;height:100%!important;object-fit:cover}
.tb-c-club-in{position:relative;z-index:2;display:flex!important;justify-content:flex-end!important;min-height:330px;align-items:center!important}
.tb-c-club-copy{width:46%;display:flex!important;flex-direction:column!important;gap:12px!important;align-items:flex-start!important;border-left:4px solid var(--tb-orange);padding-left:26px!important}
.tb-c-plan{display:grid!important;grid-template-columns:1fr 1fr 1fr;gap:20px!important;align-items:center!important;padding-block:30px!important}
.tb-c-plan-l{display:flex!important;flex-direction:column!important;gap:8px!important}
.tb-c-plan-card{display:flex!important;flex-direction:row!important;align-items:center!important;gap:16px!important;background:var(--tb-light);border-radius:12px;padding:18px 22px!important}
.tb-c-plan-txt{flex:1;display:flex!important;flex-direction:column!important;gap:2px!important}
.tb-picon{display:inline-block;width:30px;height:30px;background:var(--tb-navy);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.tb-i-chat{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 5h16v11H9l-5 4z'/%3E%3C/svg%3E")}
.tb-i-book{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M3 5c3-1 6-1 9 1 3-2 6-2 9-1v14c-3-1-6-1-9 1-3-2-6-2-9-1z M12 6v14'/%3E%3C/svg%3E")}

/* ---------- Tablet ---------- */
@media (max-width:1024px){
 .tb-pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .tb-nav{display:none!important}
 .tb-a-hero{grid-template-columns:1fr}
 .tb-a-side{grid-template-columns:1fr 1fr;grid-template-rows:auto}
 .tb-b-hero{grid-template-columns:1fr}
 .tb-b-hero-media{border-radius:0}
 .tb-c-states{grid-template-columns:1fr 1fr}
 .tb-c-states-l{grid-column:1/-1}
 .tb-fwrap{grid-template-columns:1fr}
 .tb-fbrand{border-right:0;padding-right:0!important}
}
/* ---------- Phone ---------- */
@media (max-width:767px){
 .tb-sec{padding-block:30px 4px!important}
 .tb-hwrap{min-height:64px}
 .tb-logo img{width:150px!important}
 .tb .tb-hcta .tb-btn .elementor-button{font-size:14px!important;padding:11px 14px!important}
 .tb-pgrid,.tb-pgrid-3{grid-template-columns:repeat(6,72%);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px!important}
 .tb-pgrid-3{grid-template-columns:repeat(3,72%)}
 .tb-pcard{scroll-snap-align:start}
 .tb-shead .tb-note{order:3;width:100%}
 .tb-a-main{min-height:520px}
 .tb-a-copy{max-width:none;padding:26px 22px 0!important}
 .tb-a-bags{width:96%}
 .tb-a-side{grid-template-columns:1fr}
 .tb-a-card{min-height:190px}
 .tb-a-select-in{flex-wrap:wrap!important;gap:12px!important}
 .tb-a-states{padding-left:0!important;border-left:0;gap:10px!important;width:100%}
 .tb-a-states .tb-btn{flex:1}
 .tb .tb-btn-state .elementor-button{min-width:0;width:100%}
 .tb-a-select-in .tb-arrow-w{display:none}
 .tb-cats{grid-template-columns:1fr 1fr}
 .tb-a-club-in{grid-template-columns:1fr}
 .tb-a-locs,.tb-b-locs,.tb-b-promos{grid-template-columns:1fr}
 .tb-faqbar{flex-direction:column!important;align-items:flex-start!important;gap:14px!important}
 .tb-faqbar-links{flex-direction:column!important;gap:6px!important;padding-left:0!important;border-left:0}
 .tb-faqbar>.tb-arrow-w{display:none}
 .tb-faqbar-m{padding-left:0!important;border-left:0}
 .tb-b-local{flex-wrap:wrap!important;padding:12px 14px!important;gap:10px!important}
 .tb-b-local-l p{border-right:0;padding-right:0}
 .tb-b-local-m{display:none!important}
 .tb-b-catnav{justify-content:flex-start!important;overflow-x:auto;flex-wrap:nowrap!important}
 .tb-b-hero-media{min-height:420px}
 .tb-b-hero-copy{left:20px;right:20px}
 .tb-b-promo{grid-template-columns:1fr 0.8fr}
 .tb-c-hero,.tb-c-hero-in{min-height:0}
 .tb-c-hero-in{grid-template-columns:1fr;gap:22px!important;padding-block:40px 24px!important}
 .tb-c-hero-copy{padding-top:0!important}
 .tb-c-states{grid-template-columns:1fr}
 .tb-c-browse-in{grid-template-columns:1fr}
 .tb-c-club-copy{width:100%;background:rgba(0,30,55,.72);padding:22px!important;border-radius:12px}
 .tb-c-plan{grid-template-columns:1fr}
 .tb-fcols{grid-template-columns:1fr 1fr}
}

/* ---------- Fixes after first look ---------- */
/* Headings: beat the theme kit's global heading colors */
.tb .elementor-heading-title{color:var(--tb-navy)!important}
.tb .tb-white .elementor-heading-title{color:#fff!important}
.tb .tb-navy .elementor-heading-title{color:var(--tb-navy)!important}
/* Row containers: children size to their content */
.tb-shead>.elementor-element,.tb-shead-r>.elementor-element,.tb-faqbar>.elementor-element,.tb-faqbar-links>.elementor-element,.tb-b-local>.elementor-element,.tb-a-select-in>.elementor-element,.tb-hwrap>.elementor-element,.tb-nav>.elementor-element,.tb-hcta>.elementor-element,.tb-btns>.elementor-element,.tb-a-states>.elementor-element,.tb-b-catnav>.elementor-element,.tb-c-plan-card>.elementor-element{width:auto!important;max-width:none!important}
.tb-shead{flex-wrap:nowrap!important}
.tb-b-local-m,.tb-faqbar-m,.tb-c-plan-txt{flex:1 1 auto!important}
.tb-faqbar-links{flex:1 1 auto!important}
.tb-a-select-l p,.tb-b-local-l p{white-space:nowrap}
/* Header */
.tb-logo{flex:0 0 auto!important}
.tb-logo img{width:205px!important;max-width:none!important}
.tb-nav{flex:0 0 auto!important;margin-left:auto!important;margin-right:24px!important}
/* A hero */
.tb-a-copy{z-index:3!important}
.tb-a-bags{width:54%!important;right:-1%}
.tb-a-main>.elementor-widget-html{position:absolute!important;inset:0;z-index:0;pointer-events:none}
.tb-a-main>.elementor-widget-html .tb-dots{z-index:4}
/* Lazy images: never collapse */
.tb img{min-height:1px}
@media (max-width:767px){
 .tb-shead{flex-wrap:wrap!important}
 .tb-a-bags{width:96%!important;right:-2%}
 .tb-a-select-l p,.tb-b-local-l p{white-space:normal}
 .tb-nav{display:none!important}
}
.tb .tb-fh .elementor-heading-title{color:#fff!important}
.tb-fwrap{padding-block:40px 34px!important}
.tb-a-bags{width:50%!important}
.tb .tb-catlink .elementor-button{white-space:nowrap}
@media (max-width:767px){
 .tb-b-catnav{gap:4px!important;scrollbar-width:none}
 .tb-b-catnav>.elementor-element{flex:0 0 auto!important}
 .tb-b-promo-img img{object-position:left center}
 .tb-b-promo-copy .tb-h2 .elementor-heading-title{font-size:30px}
}

/* ---------- B hero, matched to the design: S-curve edge with an orange line, photo fading to navy ---------- */
.tb-b-hero{grid-template-columns:50% 50%;border:3px solid var(--tb-orange-2);border-radius:26px;position:relative}
.tb-b-hero-media{border-radius:0!important;min-height:460px;background:#0b2c58;
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0H99C93 8 90 18 92 30C94 44 96 56 92 70C89 82 84 92 76 100H0Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0H99C93 8 90 18 92 30C94 44 96 56 92 70C89 82 84 92 76 100H0Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.tb-b-hero-img{bottom:auto!important;height:68%}
.tb-b-hero-img img{object-position:center 40%}
.tb-b-hero-media::after{background:linear-gradient(180deg,rgba(11,44,88,0) 0%,rgba(11,44,88,0) 38%,rgba(11,44,88,.75) 56%,#0b2c58 70%)}
.tb-b-hero-copy{left:40px;right:16%}
.tb-b-hero-copy .tb-h1 .elementor-heading-title{font-size:clamp(34px,3.7vw,54px);line-height:1}
.tb-b-hero-copy .tb-eyebrow p{letter-spacing:.22em}
.tb-b-deco{position:absolute!important;top:0;bottom:0;left:0;width:50%;z-index:3;pointer-events:none}
.tb-b-curve{position:absolute;inset:0;width:100%;height:100%}
.tb-b-lines{position:absolute;left:0;bottom:0;width:38%;height:34%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 120' fill='none' stroke-width='2.5'%3E%3Cpath stroke='%2300aeef' d='M0 20c40 0 60 30 80 55s50 45 90 45'/%3E%3Cpath stroke='%23fb6107' d='M0 45c35 0 55 25 72 47s40 38 70 38'/%3E%3Cpath stroke='%23ffb36b' d='M0 70c30 0 45 20 60 38s30 22 50 22'/%3E%3C/svg%3E") left bottom/contain no-repeat}
.tb-b-hero-products{padding:22px 24px 22px 18px!important}
.tb-b-hero-products .tb-h2 .elementor-heading-title{font-size:clamp(28px,2.8vw,40px)}
@media (max-width:1024px){
 .tb-b-hero{grid-template-columns:1fr}
 .tb-b-deco{width:100%;height:460px;bottom:auto}
 .tb-b-curve{display:none}
 .tb-b-hero-media{-webkit-mask:none;mask:none}
}
.tb-b-deco{inset:0!important;width:100%!important;height:100%!important}
@media (max-width:1024px){.tb-b-deco{height:100%!important}}

/* =================== PHONE DESIGN (designed for 360–430px, overrides everything above) =================== */
@media (max-width:767px){
 .tb{font-size:15px}
 .tb-wrap{width:calc(100% - 32px)!important}
 /* Header: one row, compact */
 .tb-hwrap{width:calc(100% - 28px)!important;min-height:60px;gap:10px!important}
 .tb-logo img{width:126px!important}
 .tb .tb-hcta .tb-btn .elementor-button{font-size:13px!important;padding:9px 13px!important;white-space:nowrap}
 .tb .tb-btn-pin .elementor-button-text::before{width:11px;height:13px;margin-right:6px}
 /* Type scale */
 .tb .tb-h1 .elementor-heading-title{font-size:38px;line-height:1}
 .tb .tb-h2 .elementor-heading-title{font-size:26px}
 .tb .tb-h3 .elementor-heading-title{font-size:19px}
 .tb .tb-btn .elementor-button{font-size:15px!important;padding:12px 18px!important;white-space:nowrap}
 .tb .tb-btn-sm .elementor-button{font-size:13px!important;padding:9px 14px!important}
 /* Section heads: title + "View all" on one row, note underneath, no arrows */
 .tb-shead{display:grid!important;grid-template-columns:1fr auto;align-items:end!important;gap:4px 12px!important;margin-bottom:12px!important}
 .tb-shead>.tb-note,.tb-shead-l>.tb-note{grid-column:1/-1;order:3}
 .tb-shead-bar .tb-note{border-left:0;padding-left:0!important}
 .tb-shead-r{margin-left:0!important}
 .tb-pager{display:none}
 /* Product rows: swipeable, ~2.3 cards visible */
 .tb-pgrid,.tb-pgrid-3{display:grid!important;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:43%;gap:10px!important;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-16px!important;padding-right:16px!important;scrollbar-width:none}
 .tb-pgrid::-webkit-scrollbar{display:none}
 .tb-pcard-img img{aspect-ratio:1}
 .tb .tb-pcard-name .elementor-heading-title{font-size:15px;margin-top:8px}
 .tb-pcard-brand p{font-size:12px}
 .tb-pcard-price p{font-size:13px;margin:4px 0 8px}
 .tb .tb-pcard .tb-btn .elementor-button{font-size:13px!important;padding:9px 8px!important}
 .tb-size{font-size:11px;padding:1px 7px;margin-right:4px}

 /* ---- A ---- */
 .tb-a-hero{gap:10px!important}
 .tb-a-main{min-height:0;padding-bottom:0!important}
 .tb-a-copy{max-width:none;padding:26px 20px 0!important;gap:10px!important}
 .tb-a-copy .tb-h1 .elementor-heading-title{font-size:40px}
 .tb-a-sub p{font-size:20px}
 .tb-a-bags{position:relative!important;right:auto;bottom:auto;width:100%!important;margin-top:8px!important}
 .tb-dots{display:none}
 .tb-a-side{grid-template-columns:1fr 1fr!important;grid-template-rows:auto!important;gap:10px!important}
 .tb-a-card{min-height:178px;padding:14px!important}
 .tb-a-card .tb-h3 .elementor-heading-title{font-size:19px}
 .tb-a-card .tb-arrow-w{top:12px;right:12px}
 .tb-a-card .tb-arrow{width:30px;height:30px}
 .tb-a-card .tb-arrow svg{width:17px;height:17px}
 .tb-a-card-img img{height:96px;object-fit:cover;object-position:center top}
 .tb-a-card-club .tb-a-card-img{width:100%}
 .tb-a-select-in{flex-direction:column!important;gap:10px!important;padding-block:14px!important}
 .tb-a-states{gap:10px!important;width:100%!important}
 .tb-a-cats{gap:8px!important}
 .tb-a-cat{min-height:112px;padding:12px 14px!important}
 .tb-a-cat .tb-arrow{width:26px;height:26px}
 .tb-a-cat .tb-arrow svg{width:15px;height:15px}
 .tb-a-cat-img{width:72%}
 .tb-a-club-copy{padding-block:24px 4px!important}
 .tb-a-loc{grid-template-columns:1fr!important}
 .tb-a-loc-img img{aspect-ratio:2.3;height:auto}
 .tb-a-loc-txt{flex-direction:row!important;align-items:center!important;justify-content:space-between!important;padding:12px 16px!important}
 .tb-a-loc-txt .tb-state-w{display:none}
 .tb-a-loc-txt .tb-arrow{width:34px;height:34px}
 .tb-faqbar{padding:18px 20px!important}

 /* ---- B ---- */
 .tb-b-local{display:grid!important;grid-template-columns:1fr auto;align-items:center!important;padding:8px 8px 8px 14px!important;gap:8px!important}
 .tb-b-local-l p{font-size:15px;white-space:nowrap}
 .tb .tb-b-local .tb-btn .elementor-button{font-size:13px!important;padding:10px 14px!important}
 .tb-b-catnav{margin-right:0!important;-webkit-mask:linear-gradient(90deg,#000 85%,transparent);mask:linear-gradient(90deg,#000 85%,transparent)}
 .tb .tb-catlink .elementor-button{font-size:15px!important;padding:10px 10px!important}
 .tb-b-hero{border-radius:20px}
 .tb-b-hero-media{min-height:400px}
 .tb-b-hero-img{height:62%}
 .tb-b-hero-copy{left:20px;right:20px;top:20px;bottom:22px}
 .tb-b-hero-copy .tb-h1 .elementor-heading-title{font-size:32px}
 .tb-b-hero-copy .tb-btns{gap:8px!important;flex-wrap:nowrap!important}
 .tb .tb-b-hero-copy .tb-btn .elementor-button{font-size:14px!important;padding:11px 16px!important}
 .tb-b-lines{width:60%;height:26%}
 .tb-b-hero-products{padding:18px 0 18px 16px!important}
 .tb-b-hero-products .tb-shead{padding-right:16px!important}
 .tb-b-hero-products .tb-h2 .elementor-heading-title{font-size:24px}
 .tb-b-hero-products .tb-pgrid{margin-right:0!important}
 .tb-b-cats{gap:8px!important}
 .tb .tb-b-cat-label .elementor-heading-title{font-size:17px}
 .tb-b-promos{gap:10px!important}
 .tb-b-promo{grid-template-columns:1fr 38%!important;min-height:190px}
 .tb-b-promo-copy{padding:18px!important;gap:8px!important}
 .tb-b-promo-copy .tb-h2 .elementor-heading-title{font-size:26px!important}
 .tb-b-promo-copy p{font-size:14px}
 .tb .tb-b-promo .tb-btn .elementor-button{font-size:13px!important;padding:10px 14px!important}
 .tb-b-promo-img img{object-position:20% center}
 .tb-b-locs{gap:22px!important}
 .tb-b-loc-img img{aspect-ratio:2}
 .tb-sec .tb-shead .tb-toggle{order:3}
 .tb-shead-r:has(.tb-toggle){grid-column:1/-1;justify-content:space-between!important;width:100%}
 .tb-b-faq{display:grid!important;grid-template-columns:auto 1fr;gap:6px 12px!important}
 .tb-b-faq .tb-faqbar-m,.tb-b-faq .tb-btns{grid-column:1/-1}

 /* ---- C ---- */
 .tb-c-hero-copy .tb-h1 .elementor-heading-title{font-size:36px}
 .tb-c-hero-in{padding-block:34px 22px!important;gap:20px!important}
 .tb-c-finder{padding:18px!important}
 .tb-c-states{gap:10px!important;padding-block:26px 0!important}
 .tb-c-store-img img{aspect-ratio:2.1}
 .tb-c-browse-in{gap:14px!important}
 .tb-c-cats{gap:8px!important}
 .tb-c-club,.tb-c-club-in{min-height:300px}
 .tb-c-club-in{align-items:flex-end!important;padding-bottom:20px!important}
 .tb-c-plan{gap:10px!important}
 .tb-c-plan-l{margin-bottom:6px!important}

 /* Footer */
 .tb-fbrand{align-items:flex-start!important}
 .tb-flogo img{width:150px!important}
 .tb-fwrap{gap:26px!important;padding-block:32px 28px!important}
}
/* Polish: B lines sit behind the text, photo blends into navy, A packs blend into the orange */
.tb-b-deco{z-index:1!important}
.tb-b-hero-copy{z-index:3!important}
.tb-b-hero-img{height:76%!important}
.tb-b-hero-media::after{background:linear-gradient(180deg,rgba(11,44,88,0) 0%,rgba(11,44,88,0) 40%,rgba(11,44,88,.8) 60%,#0b2c58 74%)!important}
.tb-b-lines{width:30%;height:28%;opacity:.9}
@media (max-width:767px){
 .tb-a-bags img{-webkit-mask:linear-gradient(180deg,transparent 0,#000 18%);mask:linear-gradient(180deg,transparent 0,#000 18%)}
 .tb-b-hero-img{height:78%!important}
 .tb-b-lines{width:46%;height:16%}
 .tb-toggle a{padding:8px 16px;font-size:14px}
 .tb-shead-r:has(.tb-toggle) .tb-link a{font-size:14px;white-space:nowrap}
}

/* =================== v2: fluid layout + the Terrabis image packs =================== */
:root{--tb-gut:clamp(16px,2.8vw,56px);--tb-edge:clamp(10px,.9vw,18px)}
.tb-wrap{width:calc(100% - 2 * var(--tb-gut))!important;max-width:none!important}
.tb-hwrap,.tb-fwrap{width:calc(100% - 2 * var(--tb-gut))!important;max-width:none!important}
/* Heroes run the full width (A and B keep a slim edge, C is edge to edge) */
.tb-a-hero,.tb-b-hero{width:calc(100% - 2 * var(--tb-edge))!important}
.tb .tb-h1 .elementor-heading-title{font-size:clamp(38px,5.2vw,104px)}
.tb .tb-h2 .elementor-heading-title{font-size:clamp(26px,2.6vw,52px)}
.tb .tb-h3 .elementor-heading-title{font-size:clamp(19px,1.7vw,32px)}
.tb-sec{padding-block:clamp(30px,3.2vw,64px) 8px!important}

/* Product wells: transparent cutouts, contained on ice blue */
.tb-pcard-img img{object-fit:contain!important;background:#e6f5fc!important;padding:10%;box-sizing:border-box}
.tb-pcard-buy .tb-pcard-img img{padding:8%}

@media (min-width:768px){
 /* A */
 .tb-a-hero{grid-template-columns:1fr clamp(280px,24vw,480px)!important}
 .tb-a-main{min-height:clamp(430px,33vw,700px)}
 .tb-a-copy{padding:clamp(28px,3vw,60px) 0 0 clamp(28px,3vw,60px)!important;max-width:48%}
 .tb-a-copy .tb-h1 .elementor-heading-title{font-size:clamp(42px,5.2vw,104px)}
 .tb-a-sub p{font-size:clamp(20px,2.1vw,40px)}
 .tb-a-bags{width:62%!important;right:0}
 .tb-a-card .tb-h3 .elementor-heading-title{font-size:clamp(24px,2.4vw,44px)}
 .tb-a-card-store .tb-a-card-img{top:46%}
 .tb-a-card-store .tb-a-card-img img{height:100%;object-fit:cover;object-position:right 40%}
 .tb-a-card-club .tb-a-card-img{width:86%;right:-6%;bottom:-8%;left:auto}
 .tb-a-cat{min-height:clamp(136px,11vw,220px)}
 .tb-a-club-in{min-height:clamp(180px,15vw,300px)}
 /* B */
 .tb-b-hero{grid-template-columns:52% 48%!important}
 .tb-b-hero-media{min-height:clamp(460px,34vw,700px);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0H99.4C82.8 5.6 98.8 72 72.8 100H0Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0H99.4C82.8 5.6 98.8 72 72.8 100H0Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat!important}
 .tb-b-hero-copy{left:clamp(28px,3vw,60px);right:22%}
 .tb-b-hero-copy .tb-h1 .elementor-heading-title{font-size:clamp(34px,3.7vw,72px)}
 .tb-b-hero-products{padding:clamp(20px,2vw,40px) clamp(20px,2vw,40px) clamp(20px,2vw,40px) 12px!important}
 .tb-b-hero-products .tb-h2 .elementor-heading-title{font-size:clamp(28px,2.8vw,52px)}
 .tb-b-promo{min-height:clamp(224px,17vw,340px)}
 .tb-b-promo-copy .tb-h2 .elementor-heading-title{font-size:clamp(30px,3.2vw,60px)}
 /* C */
 .tb-c-hero,.tb-c-hero-in{min-height:clamp(470px,38vw,760px)}
 .tb-c-hero-in{grid-template-columns:1fr clamp(320px,24vw,420px)!important}
 .tb-c-hero-copy .tb-h1 .elementor-heading-title{font-size:clamp(40px,4.6vw,92px)}
 .tb-c-club,.tb-c-club-in{min-height:clamp(320px,31vw,620px)}
 .tb-c-club-copy{width:42%}
 .tb-c-browse-in{grid-template-columns:clamp(220px,18vw,340px) 1fr!important}
}
/* Pack photos and plates */
.tb-b-hero-img img{object-position:50% 45%!important}
.tb-c-hero-img img{object-position:50% 40%!important}
.tb-c-hero::after{background:linear-gradient(90deg,rgba(0,32,64,.78) 0%,rgba(0,32,64,.35) 50%,rgba(0,32,64,0) 75%)!important}
.tb-a-cat-img{position:absolute!important;inset:0;width:100%!important;z-index:0}
.tb-a-cat-img img{width:100%!important;height:100%!important;object-fit:cover}
.tb-a-cat::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(0,20,40,.45),rgba(0,20,40,0) 45%);z-index:1}
.tb-b-promo-img{align-self:end!important}
.tb-b-promo-img img{height:auto!important;object-fit:contain!important;max-height:100%}
.tb-c-club-img img{object-position:left center}
.tb-c-club::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,0) 40%,rgba(30,15,5,.55) 70%)}
/* Contour artwork from the packs */
.tb-topo-hero{background:url(img/contours-outpost-stage.svg) center/cover no-repeat!important;opacity:1}
.tb-topo-band{background:url(img/contours-outpost-stage.svg) right center/cover no-repeat!important;opacity:1}
.tb-b-lines{background:url(img/contours-bottom-left.svg) left bottom/contain no-repeat!important}
.tb-topo-footer{background:url(img/contours-top-right.svg) right bottom/auto 120% no-repeat!important;opacity:.85;transform:rotate(0)}
@media (max-width:767px){
 .tb-a-cat-img{width:100%!important}
 .tb-a-card-store .tb-a-card-img img{height:96px}
 .tb-a-card-club .tb-a-card-img img{height:auto;object-fit:contain}
 .tb-b-promo-img img{max-height:200px;object-position:center bottom!important}
 .tb-c-club::before{background:rgba(0,0,0,.15)}
 .tb-c-club-img img{object-position:20% center}
}
/* Fluid text and controls on laptops and wide screens */
@media (min-width:768px){
 .tb{font-size:clamp(15px,1vw,20px)}
 .tb .tb-btn .elementor-button,.tb-btn-raw{font-size:clamp(15px,1.05vw,21px)!important;padding:clamp(13px,.95vw,19px) clamp(22px,1.7vw,34px)!important}
 .tb .tb-btn-sm .elementor-button{font-size:clamp(14px,.92vw,18px)!important;padding:clamp(10px,.75vw,15px) clamp(16px,1.2vw,24px)!important}
 .tb .tb-navlink .elementor-button,.tb .tb-catlink .elementor-button{font-size:clamp(16px,1.1vw,21px)!important}
 .tb-logo img{width:clamp(180px,13vw,250px)!important}
 .tb-hwrap{min-height:clamp(70px,5vw,96px)}
 .tb .tb-pcard-name .elementor-heading-title{font-size:clamp(16px,1.15vw,22px)}
 .tb-pcard-brand p,.tb-note p,.tb-muted p{font-size:clamp(13px,.85vw,17px)}
 .tb-pcard-price p,.tb-link a,.tb-a-select-l p,.tb-b-local-l p,.tb-b-local-m p,.tb-faqbar-m p{font-size:clamp(15px,1vw,20px)}
 .tb-lead p{font-size:clamp(17px,1.4vw,26px)}
 .tb-eyebrow p{font-size:clamp(12px,.8vw,16px)}
 .tb-pill p{font-size:clamp(13px,.9vw,17px)}
 .tb-flinks p{font-size:clamp(14px,.9vw,17px)}
 .tb .tb-fh .elementor-heading-title{font-size:clamp(16px,1.05vw,20px)}
 .tb-arrow{width:clamp(36px,2.6vw,52px);height:clamp(36px,2.6vw,52px)}
 .tb-c-finder{padding:clamp(22px,1.8vw,34px)!important}
 .tb-finder-tabs button,.tb-finder-in input{font-size:clamp(15px,1vw,19px)}
 /* C rewards: copy sits on the clear wood at right */
 .tb-c-club-copy{margin-left:auto!important;width:min(42%,640px)!important}
}

/* C rewards band: the container stacks as a column, so center the copy vertically and keep it in the open wood, clear of the compass */
@media (min-width:768px){
 .tb-c-club-in{flex-direction:column!important;justify-content:center!important;align-items:flex-end!important;padding-block:clamp(36px,4vw,80px)!important}
 .tb-c-club-copy{width:min(32%,560px)!important;margin-left:auto!important;margin-right:clamp(0px,9vw,220px)!important;gap:clamp(12px,1vw,18px)!important;padding-block:6px!important}
 .tb-c-club-copy .tb-h2 .elementor-heading-title{font-size:clamp(30px,2.8vw,56px)}
}

/* =================== INNER PAGES (tbi-*) =================== */
.tbi{background:#fff}
.tbi .tb-wrap{width:calc(100% - 2 * var(--tb-gut))!important}
.tbi-sec{padding-block:clamp(40px,4.4vw,88px)!important;display:flex!important;flex-direction:column!important;gap:clamp(20px,2vw,36px)!important}
.tbi-sec-first{padding-top:clamp(36px,3.6vw,72px)!important}
.tbi-band-ice{background:var(--tb-light)}
.tbi-band-navy{background:var(--tb-navy);position:relative;overflow:hidden}
.tbi-band-navy::before{content:"";position:absolute;inset:0;background:url(img/contours-top-right.svg) right top/auto 140% no-repeat;opacity:.35;pointer-events:none}
.tbi-band-navy>.tbi-sec{position:relative;z-index:1}
.tbi .tbi-head{display:flex!important;flex-direction:column!important;gap:12px!important;max-width:860px}
.tbi-intro p,.tbi-prose p{font-size:clamp(16px,1.05vw,20px);line-height:1.6;color:var(--tb-muted)}
.tbi-intro.tb-white p{color:#d9e8f4}
.tbi-intro p+p,.tbi-prose p+p{margin-top:12px}
.tbi-prose a,.tbi-intro a,.tbi-ans a,.tbi-small a{color:var(--tb-navy);font-weight:700;text-decoration:underline;text-decoration-color:var(--tb-orange);text-underline-offset:3px}
.tbi-small p{font-size:14px;color:var(--tb-muted)}
.tbi-center{text-align:center;justify-content:center!important;align-self:center}
.tbi-ico{width:24px;height:24px;flex:0 0 auto;color:var(--tb-orange)}

/* Hero: navy panel, photo on the right behind the S-curve, orange line on the curve */
.tbi-hero-band{padding-top:clamp(8px,.6vw,12px)!important}
.tbi-hero{width:calc(100% - 2 * var(--tb-edge))!important;margin:0 auto!important;display:grid!important;grid-template-columns:52% 48%;background:var(--tb-navy);border-radius:26px;overflow:hidden;position:relative;min-height:clamp(380px,30vw,600px)}
.tbi-hero-copy{position:relative;z-index:3;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:clamp(12px,1vw,20px)!important;padding:clamp(28px,3.4vw,72px) clamp(24px,2vw,40px) clamp(32px,3.4vw,72px) clamp(28px,3.4vw,72px)!important}
.tbi .tbi-h1 .elementor-heading-title{font-size:clamp(36px,4.2vw,84px);line-height:1}
.tbi-lead p{color:#dbe9f5!important;max-width:40ch}
.tbi-hero-btns{margin-top:6px!important}
.tbi-hero-media{position:relative;display:block!important;
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M100 0H0.6C17.2 5.6 1.2 72 27.2 100H100Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M100 0H0.6C17.2 5.6 1.2 72 27.2 100H100Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.tbi-hero-img{position:absolute!important;inset:0}
.tbi-hero-img img{width:100%!important;height:100%!important;object-fit:cover;object-position:center 55%}
.tbi-hero-deco{position:absolute!important;inset:0;z-index:2;pointer-events:none}
.tbi-curve{position:absolute;inset:0;width:100%;height:100%}
.tbi-hero-lines-w{position:absolute!important;left:0;bottom:0;width:30%;height:36%;z-index:1;pointer-events:none}
.tbi-hero-lines{width:100%;height:100%;background:url(img/contours-bottom-left.svg) left bottom/contain no-repeat;opacity:.8}
.tbi-hero-menu .tbi-hero-img img{object-fit:contain;object-position:right bottom;background:var(--tb-orange-2)}
.tbi-hero-club .tbi-hero-img img{object-position:20% center}
.tbi .tbi-eyebrow p{color:#9fd8f5}

/* Breadcrumbs (inside the hero) */
.tbi-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:#9cb8cf}
.tbi-crumbs li+li::before{content:"/";margin-right:6px;opacity:.6}
.tbi-crumbs a{color:#cfe2f1}
.tbi-crumbs a:hover{color:#fff}
.tbi-crumbs [aria-current]{color:#fff;font-weight:700}

/* Store facts strip */
.tbi-facts{margin-top:clamp(14px,1.2vw,22px)!important}
.tbi-facts .elementor-widget-html{width:100%}
.tbi-facts .elementor-widget-container>*:not(script){}
.tbi-facts .elementor-widget-container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tbi-fact{display:flex;gap:14px;background:var(--tb-light);border-radius:16px;padding:clamp(16px,1.4vw,26px)}
.tbi-fact .k{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-navy);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tbi-fact .v{font-size:clamp(16px,1.05vw,20px);font-weight:700;color:var(--tb-ink);margin-top:4px!important;line-height:1.35}
.tbi-fact .v a{color:var(--tb-ink)}
.tbi-fact .s{font-size:14px;color:var(--tb-muted);margin-top:4px!important}
.tbi-fact>div>a{display:inline-block;margin-top:8px;font-weight:700;color:var(--tb-navy);font-size:15px}
.tbi-fact>div>a:hover{color:var(--tb-orange)}
.tbi-open{display:inline-block;font-size:12px;letter-spacing:.04em;text-transform:none;font-weight:800;border-radius:999px;padding:2px 9px}
.tbi-open:empty{display:none}
.tbi-open.is-open{background:#dff5e6;color:#11743a}
.tbi-open.is-closed{background:#fde7dc;color:#a8410a}
.tbi-week{margin-top:8px}
.tbi-week summary{cursor:pointer;font-weight:700;color:var(--tb-navy);font-size:15px;list-style:none}
.tbi-week summary::-webkit-details-marker{display:none}
.tbi-week summary::after{content:" \25BE"}
.tbi-week table{margin-top:8px;border-collapse:collapse;font-size:14px;width:100%}
.tbi-week th{text-align:left;font-weight:600;padding:3px 12px 3px 0;color:var(--tb-muted)}
.tbi-week td{padding:3px 0;color:var(--tb-ink);white-space:nowrap}
.tbi-week tr.today th,.tbi-week tr.today td{color:var(--tb-navy);font-weight:800}

/* Split: copy + media */
.tbi-split{display:grid!important;grid-template-columns:1.05fr 1fr;gap:clamp(24px,4vw,80px)!important;align-items:center!important}
.tbi-split-rev>.tbi-split-copy{order:2}
.tbi-split-copy{display:flex!important;flex-direction:column!important;gap:16px!important}
.tbi-split-img img{width:100%!important;aspect-ratio:4/3;object-fit:cover;border-radius:20px}
.tbi-bags img{object-fit:contain;background:var(--tb-orange-2)}
.tbi-mini-map{border-radius:20px;overflow:hidden;background:var(--tb-light);min-height:320px}
.tbi-map,.tbi-map .elementor-widget-container{height:100%}
.tbi-map iframe{display:block;width:100%;height:100%;min-height:clamp(320px,26vw,460px);border:0}

/* Cards */
.tbi-cards{display:grid!important;gap:14px!important}
.tbi-cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tbi-card{background:var(--tb-light);border-radius:18px;padding:clamp(18px,1.6vw,30px)!important;display:flex!important;flex-direction:column!important;gap:8px!important;position:relative;transition:transform .15s,box-shadow .15s}
.tbi-card-link:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,52,89,.12)}
.tbi .tbi-card-h .elementor-heading-title{font-size:clamp(18px,1.25vw,24px);font-weight:800}
.tbi-card-p p{font-size:clamp(14px,.95vw,17px);line-height:1.55;color:var(--tb-muted)}
.tbi-more{margin-top:auto!important;font-weight:800;color:var(--tb-orange)!important;font-size:15px;padding-top:6px}
.tbi-more-w{margin-top:auto!important}
.tbi-cats .tbi-card{border-top:5px solid var(--tb-sky)}
.tbi-cats .tbi-card:nth-child(4n+2){border-top-color:var(--tb-orange)}
.tbi-cats .tbi-card:nth-child(4n+3){border-top-color:var(--tb-navy)}
.tbi-cats .tbi-card:nth-child(4n){border-top-color:#ffb36b}
.tbi-num{display:inline-block;font-weight:900;font-size:14px;letter-spacing:.1em;color:var(--tb-orange)}
.tbi-cards-dark .tbi-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14)}
.tbi .tbi-cards-dark .tbi-card-h .elementor-heading-title{color:#fff!important}
.tbi-cards-dark .tbi-card-p p{color:#cfe0ee}

/* Chips */
.tbi-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.tbi-chips li a,.tbi-chips li{display:inline-block}
.tbi-chips a,.tbi-chips-plain li{border:2px solid var(--tb-navy);color:var(--tb-navy);border-radius:999px;padding:10px 20px;font-weight:700;font-size:clamp(15px,1vw,18px);background:#fff}
.tbi-chips a:hover{background:var(--tb-navy);color:#fff}
.tbi-chips-plain li{border:0;background:var(--tb-light);padding:8px 16px;font-size:15px}
.tbi-effects{display:grid!important;grid-template-columns:1fr 1.1fr;gap:clamp(20px,4vw,72px)!important;align-items:center!important}

/* Specials (orange promo + Jane deals row) */
.tbi-specials{min-height:clamp(240px,18vw,340px)}
.tbi-jane-row:not(.has-jane){display:none!important}

/* Payments */
.tbi-pay{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px!important}
.tbi-paycard{background:#fff;border-radius:18px;padding:clamp(18px,1.6vw,30px)!important;display:flex!important;flex-direction:column!important;gap:8px!important}
.tbi-paycard .tbi-ico{width:34px;height:34px}

/* Rewards band on inner pages */
.tbi-club{margin-top:0!important}
.tbi-club-in{display:grid!important;grid-template-columns:1.2fr 1fr;align-items:center!important;gap:clamp(20px,3vw,60px)!important;padding-block:clamp(36px,3.6vw,72px)!important;position:relative;z-index:1}
.tbi-club-copy{display:flex!important;flex-direction:column!important;gap:16px!important;align-items:flex-start!important}
.tbi-club-p p{font-size:clamp(16px,1.1vw,21px);color:var(--tb-navy);font-weight:600;max-width:46ch}
.tbi-perks{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px!important;width:100%;margin-block:4px 8px!important}
.tbi-perk{background:rgba(255,255,255,.88);border-radius:14px;padding:16px!important;display:flex!important;flex-direction:column!important;gap:6px!important}
.tbi-perk-p p{font-size:14px;line-height:1.45;color:var(--tb-muted)}
.tbi-club-img img{width:100%!important}

/* Reviews */
.tbi-reviews{display:grid!important;grid-template-columns:auto 1fr auto;gap:clamp(18px,2.4vw,48px)!important;align-items:center!important;border:2px solid var(--tb-line);border-radius:22px;padding:clamp(22px,2.4vw,44px)!important}
.tbi-stars{display:flex;gap:4px;color:var(--tb-orange)}
.tbi-stars .tbi-ico{width:28px;height:28px;fill:currentColor}
.tbi-reviews-copy{display:flex!important;flex-direction:column!important;gap:8px!important}

/* Location */
.tbi-loc{display:grid!important;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,48px)!important;align-items:start!important}
.tbi-loc-col{display:flex!important;flex-direction:column!important;gap:14px!important;background:var(--tb-light);border-radius:20px;padding:clamp(20px,2vw,36px)!important}
.tbi-att{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.tbi-att li{display:flex;gap:14px;align-items:baseline;font-size:clamp(15px,1vw,18px);color:var(--tb-ink);padding-bottom:8px;border-bottom:1px solid var(--tb-line)}
.tbi-att b{flex:0 0 auto;min-width:72px;color:var(--tb-orange);font-weight:900}
.tbi-cities-h{margin-top:8px!important}
.tbi-dirs details,.tbi-faq details{background:#fff;border-radius:14px;margin-bottom:10px}
.tbi-dirs summary,.tbi-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;font-weight:800;color:var(--tb-navy);font-size:clamp(15px,1.05vw,19px)}
.tbi-dirs summary::-webkit-details-marker,.tbi-faq summary::-webkit-details-marker{display:none}
.tbi-dirs summary i,.tbi-faq summary i{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--tb-light);position:relative}
.tbi-dirs summary i::before,.tbi-dirs summary i::after,.tbi-faq summary i::before,.tbi-faq summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;background:var(--tb-navy);transform:translate(-50%,-50%);border-radius:2px;transition:transform .2s}
.tbi-dirs summary i::after,.tbi-faq summary i::after{transform:translate(-50%,-50%) rotate(90deg)}
details[open]>summary i::after{transform:translate(-50%,-50%) rotate(0)!important}
.tbi-steps{margin:0;padding:0 18px 16px 38px;font-size:15px;line-height:1.5;color:var(--tb-ink)}
.tbi-steps li{margin:3px 0}
.tbi-steps li.leg{list-style:none;margin:10px 0 2px -20px;color:var(--tb-navy)}
.tbi-ans{padding:0 18px 18px;font-size:clamp(15px,1vw,18px);line-height:1.6;color:var(--tb-muted)}

/* FAQ section */
.tbi-faq-grid{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(20px,4vw,80px)!important;align-items:start!important}
.tbi-faq-grid>.tbi-head{position:sticky;top:24px}
.tbi-faq details{background:var(--tb-light)}
.tbi-band-ice .tbi-faq details{background:#fff}
.tbi-faq summary i{background:#fff}
.tbi-band-ice .tbi-faq summary i{background:var(--tb-light)}

/* Medical card band */
.tbi-med{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:28px!important;background:linear-gradient(120deg,#0a8fd4,#00aeef);border-radius:24px;padding:clamp(26px,3vw,56px)!important;position:relative;overflow:hidden}
.tbi-med::after{content:"";position:absolute;right:-40px;bottom:-30px;width:46%;height:140%;background:url(img/contours-top-right.svg) right bottom/contain no-repeat;opacity:.35;pointer-events:none}
.tbi-med-copy{display:flex!important;flex-direction:column!important;gap:10px!important;max-width:820px;position:relative;z-index:1}
.tbi-med>.elementor-element{position:relative;z-index:1}
.tbi-med .tbi-intro p{color:#eaf7ff}

/* Closing CTA */
.tbi-cta{background:var(--tb-navy);position:relative;overflow:hidden}
.tbi-cta-in{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:32px!important;padding-block:clamp(40px,4vw,80px)!important;position:relative;z-index:1}
.tbi-cta-copy{display:flex!important;flex-direction:column!important;gap:12px!important;max-width:880px}
.tbi-cta-p p{color:#d4e5f2!important;font-weight:500!important}
.tbi-lines-w{position:absolute!important;inset:0;pointer-events:none;z-index:0}
.tbi-cta-lines{position:absolute;right:0;bottom:0;width:40%;height:100%;background:url(img/contours-top-right.svg) right bottom/auto 130% no-repeat;opacity:.55}

/* Store cards */
.tbi-storewrap{display:flex!important;flex-direction:column!important;gap:18px!important}
.tbi-stores{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.4vw,26px)!important}
.tbi-store{background:#fff;border:1.5px solid var(--tb-line);border-radius:20px;overflow:hidden;display:flex!important;flex-direction:column!important}
.tbi-band-ice .tbi-store{border-color:#fff}
.tbi-store[hidden],.tbi-store.is-off{display:none!important}
.tbi-store-img img{width:100%!important;aspect-ratio:16/10;object-fit:cover;transition:transform .3s}
.tbi-store-img{overflow:hidden}
.tbi-store:hover .tbi-store-img img{transform:scale(1.03)}
.tbi-store-body{padding:clamp(16px,1.3vw,24px);display:flex;flex-direction:column;gap:8px}
.tbi-store-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tbi-tag{background:var(--tb-navy);color:#fff;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.tbi-tag-soft{background:var(--tb-light);color:var(--tb-navy)}
.tbi-store-h{margin:2px 0 0!important;font-size:clamp(22px,1.6vw,30px)!important;font-weight:900!important;line-height:1.1!important;font-family:var(--tb-font)!important}
.tbi-store-h a{color:var(--tb-navy)!important}
.tbi-store-line{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--tb-ink);line-height:1.4}
.tbi-store-line .tbi-ico{width:19px;height:19px;margin-top:1px}
.tbi-store-line a{color:var(--tb-ink);font-weight:700}
.tbi-store-act{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px!important}
.tbi-sbtn{display:inline-flex;align-items:center;border-radius:999px;padding:10px 16px;font-weight:800;font-size:14px;background:var(--tb-orange);color:#fff!important;border:2px solid var(--tb-orange)}
.tbi-sbtn-alt{background:var(--tb-navy);border-color:var(--tb-navy)}
.tbi-sbtn-line{background:#fff;color:var(--tb-navy)!important;border-color:var(--tb-navy)}
.tbi-sbtn:hover{filter:brightness(1.06)}
.tbi-filter{display:inline-flex;gap:8px;flex-wrap:wrap}
.tbi-filter button{border:2px solid var(--tb-navy);background:#fff;color:var(--tb-navy);border-radius:999px;padding:10px 18px;font:800 15px var(--tb-font);cursor:pointer}
.tbi-filter button b{opacity:.6;margin-left:4px}
.tbi-filter button.on{background:var(--tb-navy);color:#fff}

/* Tiles (categories with product art) */
.tbi-tiles{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px!important}
.tbi-tile{background:#fff;border-radius:16px;overflow:hidden;display:flex!important;flex-direction:column!important;transition:transform .15s}
.tbi-tile:hover{transform:translateY(-2px)}
.tbi-tile-img img{width:100%!important;aspect-ratio:1;object-fit:contain;padding:12%;box-sizing:border-box;background:#fff}
.tbi-tile-ph{display:grid;place-items:center;aspect-ratio:1;background:#fff}
.tbi-tile-ph .tbi-ico{width:38%;height:38%;color:var(--tb-sky)}
.tbi-tile-name p{padding:12px 14px 16px;font-weight:800;color:var(--tb-navy);font-size:clamp(15px,1vw,18px)}

/* Law card */
.tbi-law{display:flex!important;flex-direction:column!important;gap:16px!important;border:2px solid var(--tb-line);border-radius:24px;padding:clamp(22px,2.6vw,52px)!important}
.tbi-law-cols{display:grid!important;grid-template-columns:1fr 1fr;gap:14px!important}
.tbi-law-col{background:var(--tb-light);border-radius:16px;padding:clamp(16px,1.6vw,28px)!important;display:flex!important;flex-direction:column!important;gap:10px!important}
.tbi-law-ul ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.tbi-law-ul li{font-size:clamp(15px,1vw,18px);color:var(--tb-ink);line-height:1.45}
.tbi-law-ul b{color:var(--tb-orange);font-weight:900}

/* About */
.tbi-star{background:var(--tb-navy);position:relative;overflow:hidden}
.tbi-star-in{padding-block:clamp(48px,6vw,120px)!important;display:flex!important;flex-direction:column!important;gap:18px!important;position:relative;z-index:1}
.tbi .tbi-star-h .elementor-heading-title{font-size:clamp(28px,3.6vw,68px);max-width:22ch;line-height:1.08}

/* Rewards */
.tbi-perkgrid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px!important}
.tbi-perkcard{background:var(--tb-light);border-radius:20px;padding:clamp(20px,1.8vw,34px)!important;display:flex!important;flex-direction:column!important;gap:10px!important}
.tbi-perk-ico{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--tb-navy)}
.tbi-perk-ico .tbi-ico{color:#fff}
.tbi-steps3{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px!important;counter-reset:s}
.tbi-step{background:#fff;border-radius:20px;padding:clamp(20px,1.8vw,34px)!important;display:flex!important;flex-direction:column!important;gap:10px!important}
.tbi-stepn{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--tb-orange);color:#fff;font-weight:900;font-size:20px}
.tbi-duo{display:grid!important;grid-template-columns:1fr 1fr;gap:14px!important}
.tbi-duo-card{border-radius:22px;padding:clamp(24px,2.4vw,46px)!important;display:flex!important;flex-direction:column!important;gap:14px!important;align-items:flex-start!important;position:relative;overflow:hidden}
.tbi-duo-navy{background:var(--tb-navy)}
.tbi-duo-orange{background:linear-gradient(120deg,#ffa327,#fb7a10)}
.tbi-duo-card p{font-size:clamp(15px,1vw,18px);line-height:1.5}

/* Contact */
.tbi-contact{display:grid!important;grid-template-columns:.8fr 1.4fr;gap:clamp(20px,4vw,80px)!important;align-items:start!important}
.tbi-form{background:var(--tb-light);border-radius:22px;padding:clamp(20px,2.2vw,40px);display:flex;flex-direction:column;gap:16px}
.tbi-form-tabs{display:flex;flex-wrap:wrap;gap:8px}
.tbi-form-tabs button{border:2px solid var(--tb-navy);background:#fff;color:var(--tb-navy);border-radius:999px;padding:9px 16px;font:800 14px var(--tb-font);cursor:pointer}
.tbi-form-tabs button.on{background:var(--tb-navy);color:#fff}
.tbi-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tbi-form label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:14px;color:var(--tb-navy)}
.tbi-form label[hidden]{display:none}
.tbi-f-full{grid-column:1/-1}
.tbi-form input,.tbi-form select,.tbi-form textarea{font:16px var(--tb-font)!important;border:1.5px solid #c9d6e2!important;border-radius:10px!important;padding:12px 14px!important;background:#fff!important;color:var(--tb-ink)!important;box-shadow:none!important;width:100%}
.tbi-form input:focus,.tbi-form select:focus,.tbi-form textarea:focus{outline:3px solid rgba(0,174,239,.35);border-color:var(--tb-sky)!important}
.tbi-hp{position:absolute!important;left:-9999px}
.tbi-form .tb-btn-raw{align-self:flex-start;width:auto;padding:15px 30px;font-size:17px}
.tbi-form-note{font-weight:700;color:#11743a}

/* Menu picker */
.tbi-menu{display:grid!important;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,40px)!important}
.tbi-menu-col{display:flex!important;flex-direction:column!important;gap:12px!important}
.tbi-mlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.tbi-mrow{display:flex;justify-content:space-between;align-items:center;gap:14px;background:var(--tb-light);border-radius:16px;padding:16px 18px}
.tbi-mrow b{display:block;font-size:clamp(17px,1.2vw,22px);color:var(--tb-navy);font-weight:900}
.tbi-mrow small{display:block;font-size:14px;color:var(--tb-muted);margin-top:2px}
.tbi-mbtns{display:flex;gap:8px;flex:0 0 auto}
.tbi-mbtns a{background:var(--tb-orange);color:#fff;border-radius:999px;padding:10px 16px;font-weight:800;font-size:14px;white-space:nowrap}
.tbi-mbtns a+a{background:var(--tb-navy)}

/* Row containers: children size to content */
.tbi-reviews>.elementor-element,.tbi-med>.elementor-element,.tbi-cta-in>.elementor-element{width:auto!important;max-width:none!important}
.tbi-reviews-copy,.tbi-med-copy,.tbi-cta-copy{flex:1 1 auto!important}
.tbi .elementor-widget-html{width:100%}

/* ---------- Tablet ---------- */
@media (max-width:1024px){
 .tbi-hero{grid-template-columns:1fr 42%}
 .tbi-facts .elementor-widget-container{grid-template-columns:1fr 1fr}
 .tbi-cards-4,.tbi-perkgrid{grid-template-columns:1fr 1fr}
 .tbi-stores{grid-template-columns:1fr 1fr}
 .tbi-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
 .tbi-club-in{grid-template-columns:1fr}
 .tbi-club-img{display:none!important}
 .tbi-effects,.tbi-faq-grid,.tbi-contact{grid-template-columns:1fr}
 .tbi-faq-grid>.tbi-head{position:static}
 .tbi-reviews{grid-template-columns:1fr auto}
 .tbi-stars-w{grid-column:1/-1}
}
/* ---------- Phone ---------- */
@media (max-width:767px){
 .tbi-sec{padding-block:34px!important;gap:18px!important}
 .tbi-hero{grid-template-columns:1fr;border-radius:20px;min-height:0}
 .tbi-hero-media{order:-1;-webkit-mask:none!important;mask:none!important;aspect-ratio:16/10}
 .tbi-hero-deco{display:none!important}
 .tbi-hero-copy{padding:20px 20px 26px!important;gap:12px!important}
 .tbi .tbi-h1 .elementor-heading-title{font-size:34px}
 .tbi-lead p{font-size:16px}
 .tbi-hero-media::after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,var(--tb-navy))}
 .tbi-hero-lines-w{width:60%;height:18%}
 .tbi-hero-btns{flex-wrap:nowrap!important;gap:8px!important}
 .tbi-hero-btns>.elementor-element{flex:1 1 0!important}
 .tbi-hero-btns .elementor-button{width:100%;justify-content:center}
 .tbi-facts .elementor-widget-container{grid-template-columns:1fr;gap:8px}
 .tbi-fact{padding:14px 16px}
 .tbi-split,.tbi-loc,.tbi-law-cols,.tbi-duo,.tbi-menu,.tbi-pay,.tbi-steps3{grid-template-columns:1fr}
 .tbi-split-rev>.tbi-split-copy{order:0}
 .tbi-cards-4{grid-template-columns:1fr 1fr;gap:8px!important}
 .tbi-cats .tbi-card{padding:14px!important}
 .tbi-cats .tbi-card-p{display:none}
 .tbi-cards-dark{grid-template-columns:1fr}
 .tbi-perkgrid{grid-template-columns:1fr 1fr;gap:8px!important}
 .tbi-perkcard{padding:16px!important}
 .tbi-stores{grid-template-columns:1fr}
 .tbi-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}
 .tbi-tile-name p{padding:8px 10px 12px;font-size:14px}
 .tbi-perks{grid-template-columns:1fr}
 .tbi-reviews{grid-template-columns:1fr;text-align:left}
 .tbi-med,.tbi-cta-in{flex-direction:column!important;align-items:flex-start!important}
 .tbi-chips a{padding:9px 16px;font-size:15px}
 .tbi-form-grid{grid-template-columns:1fr}
 .tbi-mrow{flex-direction:column;align-items:flex-start}
 .tbi-specials{grid-template-columns:1fr 38%!important}
 .tbi-crumbs ol{font-size:13px}
}
/* Fixes after first look at the inner pages (Elementor 4 markup) */
.tbi .elementor-widget-image a{display:block}
.tbi-facts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tbi-map{height:100%}
.tbi-hero{background:var(--tb-navy)!important}
.tbi-med{background:linear-gradient(120deg,#0a8fd4,#00aeef)!important}
.tbi-cta,.tbi-star,.tbi-band-navy,.tbi-duo-navy{background:var(--tb-navy)!important}
.tbi-band-ice{background:var(--tb-light)!important}
.tbi-card,.tbi-fact,.tbi-loc-col,.tbi-law-col,.tbi-perkcard,.tbi-mrow{background-color:var(--tb-light)!important}
.tbi-cards-dark .tbi-card{background:rgba(255,255,255,.07)!important}
.tbi-paycard,.tbi-step,.tbi-store,.tbi-tile{background-color:#fff!important}
.tbi-duo-orange{background:linear-gradient(120deg,#ffa327,#fb7a10)!important}
.tbi-band-navy::before{opacity:.18}
.tbi-specials{min-height:0!important}
.tbi-specials .tb-b-promo-img img{max-height:clamp(220px,20vw,380px);width:auto!important;margin-left:auto}
.tbi .tbi-cta .tb-btn .elementor-button,.tbi .tbi-med .tb-btn .elementor-button,.tbi .tbi-reviews .tb-btn .elementor-button{white-space:nowrap}
.tbi-cta-in>.tb-btns{flex-wrap:nowrap!important;flex:0 0 auto!important}
@media (max-width:1024px){.tbi-facts-grid{grid-template-columns:1fr 1fr}}
@media (max-width:767px){
 .tbi-facts-grid{grid-template-columns:1fr 1fr;gap:8px}
 .tbi-fact{flex-direction:column;gap:6px;padding:14px!important}
 .tbi-fact .v{font-size:15px}
 .tbi-fact .k{font-size:11px}
 .tbi-cta-in>.tb-btns{flex-wrap:wrap!important}
 .tbi-mini-map{min-height:260px}
}

/* Explorer's Club pass in the hero (opens the rewards wallet) */
.tbi-pass{display:inline-flex;align-items:center;gap:14px;margin-top:10px;padding:10px 18px 10px 10px;border-radius:999px;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.28);color:#fff!important;max-width:100%;transition:background .15s,transform .15s}
.tbi-pass:hover{background:rgba(255,255,255,.18);transform:translateY(-1px)}
.tbi-pass-seal{flex:0 0 auto;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffa327,#fb6107);box-shadow:0 0 0 3px rgba(251,97,7,.35);color:#fff}
.tbi-pass-seal svg{width:24px;height:24px}
.tbi-pass-txt{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.tbi-pass-txt b{font-weight:800;font-size:clamp(15px,1vw,18px)}
.tbi-pass-txt small{font-size:clamp(13px,.85vw,15px);color:#cfe2f1}
.tbi-pass-go{font-weight:900;font-size:20px;color:#ffb36b;margin-left:4px}
@media (max-width:767px){.tbi-pass{padding:8px 14px 8px 8px;gap:10px}.tbi-pass-seal{width:40px;height:40px}}

/* Gate & Discover in Terrabis type; the wallet opens from the hero pass, so its floating badge stays hidden there */
.ew-tools,.ew-tools *{font-family:var(--tb-font)!important}
body:has(.tb-a),body:has(.tb-b),body:has(.tb-c){}

/* =================== BLOG (tbb-*) — plain templates, same tokens as the Elementor pages =================== */
.tbb{font-size:clamp(15px,1vw,19px)}
.tbb .tbi-hero-copy{display:flex;flex-direction:column;justify-content:center;gap:clamp(12px,1vw,18px)}
.tbb .tbi-hero{display:grid}
.tbb .tbi-hero-media{display:block}
.tbb-eyebrow{font-size:clamp(12px,.8vw,15px);font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#9fd8f5;margin:0}
.tbb-h1{font-family:var(--tb-font);font-weight:900;font-size:clamp(36px,4.2vw,84px);line-height:1;letter-spacing:-.02em;color:#fff;margin:0;text-wrap:balance}
.tbb-h1-post{font-size:clamp(30px,3.2vw,64px);line-height:1.05}
.tbb-h2{font-family:var(--tb-font);font-weight:900;font-size:clamp(26px,2.6vw,52px);line-height:1.05;color:var(--tb-navy);margin:0;letter-spacing:-.01em}
.tbb-white{color:#fff}
.tbb-lead{font-size:clamp(16px,1.25vw,22px);font-weight:600;color:#dbe9f5;margin:0;max-width:44ch;line-height:1.45}
.tbb-search{display:flex;gap:8px;max-width:520px;margin-top:6px}
.tbb-search input[type=search]{flex:1;min-width:0;border:0!important;border-radius:999px!important;padding:13px 20px!important;font:16px var(--tb-font)!important;color:var(--tb-ink)!important;background:#fff!important}
.tbb-search button,.tbb-btn{border:0;border-radius:999px;padding:13px 24px;font:800 16px var(--tb-font);cursor:pointer;background:var(--tb-orange);color:#fff!important;display:inline-flex;align-items:center;white-space:nowrap;text-decoration:none!important}
.tbb-btn-ghost{background:transparent;border:2px solid #fff}
.tbb-btn-orange{background:var(--tb-orange)}
.tbb-btns{display:flex;flex-wrap:wrap;gap:12px}
.tbb .tbi-cta-in{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:32px}
.tbb .tbi-cta-copy{display:flex;flex-direction:column;gap:10px}
.tbb .tbi-sec{display:flex;flex-direction:column}
.tbb-catnav{overflow-x:auto;scrollbar-width:none;margin-inline:-4px;padding:4px}
.tbb-chips{flex-wrap:nowrap}
.tbb-chips a{white-space:nowrap;font-size:clamp(14px,.95vw,17px)!important;padding:9px 18px!important}
.tbb-chips a.on{background:var(--tb-navy);color:#fff}
@media (min-width:1025px){.tbb-chips{flex-wrap:wrap}}
.tbb-feature .tbb-card-big{display:grid;grid-template-columns:1.25fr 1fr;align-items:stretch}
.tbb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,28px)}
.tbb-card{background:#fff;border:1.5px solid var(--tb-line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.tbb-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,52,89,.12)}
.tbi-band-ice .tbb-card{border-color:#fff}
.tbb-card-media{display:block;overflow:hidden;background:var(--tb-light)}
.tbb-card-img{display:block;width:100%!important;height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .3s}
.tbb-card-big .tbb-card-img{height:100%;aspect-ratio:auto;min-height:320px}
.tbb-card:hover .tbb-card-img{transform:scale(1.03)}
.tbb-card-ph{display:block;aspect-ratio:16/10;background:linear-gradient(135deg,var(--tb-light),#cfe9f9)}
.tbb-card-body{padding:clamp(16px,1.4vw,26px);display:flex;flex-direction:column;gap:8px;flex:1}
.tbb-card-big .tbb-card-body{justify-content:center;padding:clamp(22px,2.6vw,52px);gap:14px}
.tbb-cat{align-self:flex-start;background:var(--tb-light);color:var(--tb-navy)!important;font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:4px 11px;text-decoration:none!important}
.tbb-cat-light{background:var(--tb-orange);color:#fff!important}
.tbb-card-h{margin:0;font-family:var(--tb-font);font-weight:800;font-size:clamp(18px,1.3vw,24px);line-height:1.2;color:var(--tb-navy)}
.tbb-card-big .tbb-card-h{font-size:clamp(26px,2.4vw,46px);font-weight:900;line-height:1.05}
.tbb-card-h a{color:var(--tb-navy)!important;text-decoration:none!important}
.tbb-card-h a:hover{color:var(--tb-orange)!important}
.tbb-card-p{margin:0;color:var(--tb-muted);font-size:clamp(14px,.95vw,17px);line-height:1.55}
.tbb-meta{margin:auto 0 0;font-size:14px;color:var(--tb-muted);font-weight:600}
.tbb-meta-light{color:#cfe2f1;margin:0}
.tbb-pages ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.tbb-pages a,.tbb-pages span{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 14px;border-radius:999px;border:2px solid var(--tb-navy);color:var(--tb-navy);font-weight:800;text-decoration:none}
.tbb-pages .current{background:var(--tb-navy);color:#fff}
.tbb-pages .dots{border:0}
.tbb-empty a{color:var(--tb-navy);font-weight:700}
/* Article */
.tbb-layout{display:grid!important;grid-template-columns:minmax(0,1fr) clamp(260px,22vw,360px);gap:clamp(24px,4vw,80px);padding-block:clamp(36px,4vw,80px)}
.tbb-article{max-width:760px;font-size:clamp(17px,1.1vw,20px);line-height:1.7;color:var(--tb-ink)}
.tbb-article>*:first-child{margin-top:0}
.tbb-article p,.tbb-article ul,.tbb-article ol{margin:0 0 1.1em}
.tbb-article h2{font-family:var(--tb-font);font-weight:900;color:var(--tb-navy);font-size:clamp(26px,2vw,38px);line-height:1.1;margin:1.6em 0 .55em;letter-spacing:-.01em}
.tbb-article h3{font-family:var(--tb-font);font-weight:800;color:var(--tb-navy);font-size:clamp(20px,1.4vw,26px);line-height:1.2;margin:1.4em 0 .45em}
.tbb-article a{color:var(--tb-navy);font-weight:700;text-decoration:underline;text-decoration-color:var(--tb-orange);text-underline-offset:3px}
.tbb-article img{border-radius:16px;height:auto}
.tbb-article li{margin:.3em 0}
.tbb-article li::marker{color:var(--tb-orange)}
.tbb-article table{width:100%;border-collapse:collapse;margin:0 0 1.4em;font-size:.92em;display:block;overflow-x:auto}
.tbb-article td,.tbb-article th{border:1px solid var(--tb-line);padding:10px 12px;text-align:left;vertical-align:top}
.tbb-article tr:first-child td,.tbb-article th{background:var(--tb-light);font-weight:800;color:var(--tb-navy)}
.tbb-article blockquote{margin:1.4em 0;padding:4px 0 4px 22px;border-left:4px solid var(--tb-orange);font-weight:600;color:var(--tb-navy)}
.tbb-tags{list-style:none;padding:0;margin:2em 0 0;display:flex;flex-wrap:wrap;gap:8px}
.tbb-tags a{display:inline-block;background:var(--tb-light);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:700;color:var(--tb-navy);text-decoration:none}
.tbb-aside{display:flex;flex-direction:column;gap:14px;position:sticky;top:24px;align-self:start}
.tbb-aside-card{background:var(--tb-light);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.tbb-aside-card p{margin:0;font-size:16px;line-height:1.5;color:var(--tb-muted)}
.tbb-aside-h{font-weight:900!important;font-size:22px!important;color:var(--tb-navy)!important;line-height:1.1!important}
.tbb-aside-navy{background:var(--tb-navy)}
.tbb-aside-navy p{color:#d4e5f2}
.tbb-aside-navy .tbb-aside-h{color:#fff!important}
.tbb-link{font-weight:800;color:var(--tb-navy);text-decoration:none}
.tbb .tbi-band-ice .tbi-sec{gap:24px}
@media (max-width:1024px){
 .tbb-grid{grid-template-columns:1fr 1fr}
 .tbb-feature .tbb-card-big{grid-template-columns:1fr}
 .tbb-card-big .tbb-card-img{min-height:0;aspect-ratio:16/9}
 .tbb-layout{grid-template-columns:1fr}
 .tbb-aside{position:static;flex-direction:row;flex-wrap:wrap}
 .tbb-aside-card{flex:1 1 260px}
}
@media (max-width:767px){
 .tbb .tbi-hero{grid-template-columns:1fr}
 .tbb .tbi-hero-media{order:-1;aspect-ratio:16/9;-webkit-mask:none;mask:none}
 .tbb .tbi-hero-deco{display:none}
 .tbb-h1{font-size:34px}.tbb-h1-post{font-size:28px}
 .tbb-grid{grid-template-columns:1fr}
 .tbb-search button{padding:12px 16px}
 .tbb .tbi-cta-in{flex-direction:column;align-items:flex-start}
 .tbb-aside{flex-direction:column}
}
/* Article hero without a photo: the featured graphic shows whole, above the text */
.tbb-hero-text{grid-template-columns:1fr!important;min-height:0!important}
.tbb-hero-text .tbi-hero-copy{padding-block:clamp(36px,4vw,80px)!important;max-width:1100px}
.tbb-hero-text .tbi-hero-lines-w{left:auto;right:0;width:34%;height:100%;transform:scaleX(-1)}
.tbb-figure{margin:0 0 1.6em}
.tbb-figure img{width:100%;height:auto;border-radius:20px;display:block}
/* Homepage promo colors survive Elementor 4's container styles */
.tb-b-promo-orange{background:linear-gradient(120deg,#ffa327,#fb7a10)!important}
.tb-b-promo-navy{background:var(--tb-navy)!important}
.tb-a-club{background:var(--tb-orange-2)!important}
/* Sections that only make sense once Jane renders */
.tbi-jane-only:not(:has(.has-jane)){display:none!important}
@media (max-width:767px){
 .tbi-hero-btns{flex-wrap:wrap!important}
 .tbi-hero-btns>.elementor-element{flex:1 1 auto!important}
}

/* =================== SEO/AEO pass: orders, speed, accessibility =================== */
/* Text contrast: orange text darkens to pass AA on light backgrounds */
.tbi-more{color:#c24600!important}
.tbi-att b{color:#c24600}
/* Map loads on tap (saves ~400 KB of Google Maps on first load) */
.tbi-mapf{position:relative;height:100%;min-height:clamp(300px,24vw,440px);border-radius:20px;overflow:hidden;background:var(--tb-light) url(img/contours-outpost-stage.svg) center/cover no-repeat}
.tbi-mapf::before{content:"";position:absolute;inset:0;background:rgba(228,243,252,.78)}
.tbi-mapf-in{position:relative;z-index:1;height:100%;min-height:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px}
.tbi-mapf-in .tbi-ico{width:44px;height:44px;color:var(--tb-orange)}
.tbi-mapf-a{font-weight:800;color:var(--tb-navy);font-size:clamp(16px,1.1vw,20px);max-width:28ch}
.tbi-mapf-btn{border:0;border-radius:999px;padding:13px 26px;font:800 16px var(--tb-font);background:var(--tb-navy);color:#fff;cursor:pointer}
.tbi-mapf-dir{font-weight:800;color:var(--tb-navy);font-size:15px}
.tbi-mapf iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:2}
/* City links */
.tbi-chips-cities a{border:0;background:var(--tb-light);padding:8px 16px;font-size:15px;color:var(--tb-navy);text-decoration:underline;text-decoration-color:var(--tb-orange);text-underline-offset:3px}
.tbi-band-ice .tbi-chips-cities a,.tbi-band-ice .tbi-chips-plain li{background:#fff}
.tbi-chips-cities a:hover{background:var(--tb-navy);color:#fff}
.tbi-att-html li{display:block}
.tbi-att-html a{color:var(--tb-navy);font-weight:700}
.tbi-att-html li>a:first-child{color:#c24600;font-weight:900;margin-right:4px}
.tbi-hub{display:flex!important;flex-direction:column!important;gap:12px!important}
.tbi-hubrow{display:grid!important;grid-template-columns:minmax(220px,.8fr) 2fr;gap:20px!important;align-items:center!important;background:var(--tb-light)!important;border-radius:18px;padding:clamp(16px,1.6vw,28px)!important}
.tbi-band-ice .tbi-hubrow{background:#fff!important}
.tbi-hubrow .tb-h4 a{color:var(--tb-navy)}
/* Phone action bar on store and city pages */
.tbi-actbar{display:none}
@media (max-width:767px){
 .tbi-actbar{display:flex;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px max(12px,env(safe-area-inset-left,0px)) calc(10px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.96);backdrop-filter:blur(8px);box-shadow:0 -6px 24px rgba(0,52,89,.14)}
 .tbi-ab-shop{flex:1;display:grid;place-items:center;border-radius:999px;padding:13px 10px;font-weight:800;font-size:15px;background:var(--tb-orange);color:#fff!important}
 .tbi-ab-shop.alt{background:var(--tb-navy)}
 .tbi-ab-ico{flex:0 0 48px;display:grid;place-items:center;border-radius:50%;border:2px solid var(--tb-navy);color:var(--tb-navy)}
 .tbi-ab-ico .tbi-ico{color:var(--tb-navy);width:22px;height:22px}
 body:has(.tbi-actbar) .tb-footer{padding-bottom:84px}
 body:has(.tbi-actbar) .ew-wallet-badge,body:has(.tbi-actbar) .discovery-float{bottom:96px!important}
 .tbi-hubrow{grid-template-columns:1fr}
}
/* Header store button remembers the visitor's store */
.tb-hcta .tb-btn-pin .elementor-button-text{max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* =================== Marquee above the header (like terrabis.co) =================== */
.tb-header{display:flex!important;flex-direction:column!important}
.tb-mq-w{width:100%}
.tb-mq{background:var(--tb-navy);color:#fff;overflow:hidden;white-space:nowrap;font-size:clamp(13px,.85vw,15px);font-weight:600;line-height:1}
.tb-mq-track{display:inline-flex;padding-block:10px;animation:tb-mq 60s linear infinite}
.tb-mq:hover .tb-mq-track{animation-play-state:paused}
.tb-mq-item{display:inline-flex;align-items:center;gap:14px;padding-right:14px}
.tb-mq-item b{font-weight:800;color:#9fd8f5}
.tb-mq-item i{font-style:normal;color:var(--tb-orange);font-size:8px}
.tb-mq-item a{color:#ffb36b;font-weight:800;text-decoration:underline;text-underline-offset:3px}
@keyframes tb-mq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tb-mq-track{animation:none}}

/* =================== Gate & Discover wallet in Terrabis colors =================== */
.ew-wallet-shell .ew-wallet-badge{background:var(--tb-orange)!important;color:#fff!important;border:2px solid #fff!important;box-shadow:0 10px 28px rgba(0,52,89,.35)}
.ew-wallet-shell .ew-wallet-badge:hover{background:#e55600!important}
.ew-wallet-shell .ew-wallet-badge::before{border-color:rgba(255,255,255,.55)!important}
.ew-wallet-shell .ew-wallet-badge::after{border-color:rgba(255,255,255,.25)!important}
.ew-wallet-shell .ew-badge-number{font-weight:900!important;letter-spacing:.02em}
.ew-wallet-shell .ew-badge-label,.ew-wallet-shell .ew-badge-plus{color:#fff!important}
.ew-wallet-shell button:focus-visible{outline-color:var(--tb-sky)!important}
.ew-wallet{background:#fff!important}
.ew-wallet-shell dialog::backdrop{background:rgba(0,26,46,.72)!important}
.ew-rewards{color:var(--tb-ink)!important}
.ew-rewards .elementor-heading-title{font-family:var(--tb-font)!important;color:var(--tb-navy)!important;letter-spacing:-.01em!important}
.ew-rewards .ew-drawer-header{background:var(--tb-navy)!important}
.ew-rewards .ew-drawer-header .elementor-heading-title,.ew-rewards .ew-drawer-header p{color:#fff!important}
.ew-rewards .ew-drawer-title .elementor-heading-title{font-weight:900!important;font-size:28px!important}
.ew-rewards .ew-drawer-mark{border-color:var(--tb-orange)!important;background:var(--tb-orange)!important}
.ew-rewards .ew-drawer-mark .elementor-heading-title{color:#fff!important;font-size:18px!important;font-weight:900!important}
.ew-rewards .ew-kicker p{color:var(--tb-orange)!important;font-weight:800!important;letter-spacing:.14em!important;font-size:12px!important}
.ew-rewards-drawer .ew-balance-total .ew-points,.ew-rewards-drawer .ew-points{color:var(--tb-navy)!important;font-weight:900!important;font-size:84px!important}
.ew-rewards-drawer .ew-offer-card{background:linear-gradient(120deg,#ffa327,#fb7a10)!important}
.ew-rewards-drawer .ew-offer-card,.ew-rewards-drawer .ew-offer-card *{color:var(--tb-navy)!important}
.ew-rewards-drawer .ew-offer-title{font-weight:900!important;font-size:64px!important}
.ew-rewards .ew-view-reward .elementor-button,.ew-rewards-drawer .ew-copy-referral .elementor-button{background:var(--tb-navy)!important;color:#fff!important;border-radius:999px!important}
.ew-rewards-drawer .ew-referral-compact,.ew-rewards-drawer .ew-referral-card{background:var(--tb-navy)!important}
.ew-rewards-drawer .ew-referral-card *{color:#fff}
.ew-rewards-drawer .ew-referral-title .elementor-heading-title{color:#ffb36b!important;font-weight:900!important;font-size:34px!important}
.ew-rewards-drawer .ew-copy-referral .elementor-button{background:var(--tb-orange)!important}
.ew-rewards-drawer .ew-referral-input{color:var(--tb-ink)!important}
.ew-rewards-drawer .ew-shop-button .elementor-button{color:var(--tb-navy)!important;font-weight:800!important}
.ew-member-login button{background:var(--tb-navy)!important;color:#fff!important;border-radius:999px!important}

.ew-rewards-drawer .ew-offer-card .ew-view-reward .elementor-button,.ew-rewards-drawer .ew-offer-card .ew-view-reward .elementor-button *{color:#fff!important}

/* No floating badges for Terrabis: the wallet opens from the hero pass */
.ew-wallet-shell .ew-wallet-badge,.discovery-float{display:none!important}

/* Explorer's Club seal on the hero photo (static, like Elemental's 408 PERKS seal) */
.tbi-seal-w{position:absolute!important;top:clamp(14px,1.6vw,30px);right:clamp(14px,1.6vw,30px);z-index:4;width:auto!important}
.tbi-seal{--s:clamp(104px,9vw,156px);position:relative;display:grid;place-items:center;width:var(--s);height:var(--s);border-radius:50%;background:var(--tb-navy);border:3px solid var(--tb-orange);box-shadow:0 14px 36px rgba(0,20,40,.45);color:#fff!important;transform:rotate(6deg);transition:transform .2s}
.tbi-seal:hover{transform:rotate(0) scale(1.04)}
.tbi-seal::before{content:"";position:absolute;inset:7px;border:1.5px dashed rgba(251,97,7,.7);border-radius:50%;pointer-events:none}
.tbi-seal::after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.18);border-radius:50%;pointer-events:none}
.tbi-seal-face{display:flex;flex-direction:column;align-items:center;line-height:1;gap:2px}
.tbi-seal-leaf svg{width:calc(var(--s) * .16);height:calc(var(--s) * .16);color:var(--tb-orange);display:block}
.tbi-seal-face b{font-family:var(--tb-font);font-weight:900;font-size:calc(var(--s) * .3);letter-spacing:-.01em;color:var(--tb-orange)}
.tbi-seal-face small{font-weight:800;font-size:calc(var(--s) * .085);letter-spacing:.2em;color:#fff;margin-top:2px}
.tbi-seal-plus{position:absolute;right:-2px;bottom:12%;width:calc(var(--s) * .26);height:calc(var(--s) * .26);border-radius:50%;background:var(--tb-orange);color:var(--tb-navy);display:grid;place-items:center;font-weight:900;font-size:calc(var(--s) * .2);line-height:1;border:2px solid var(--tb-navy)}
@media (max-width:767px){.tbi-seal{--s:92px}.tbi-seal-w{top:12px;right:12px}}

/* Seal v2: layered rings, club name around the edge, topo face, live + bubble */
.tbi-seal{--s:clamp(124px,10vw,172px);border:0!important;transform:rotate(-8deg);
 background:radial-gradient(circle at 35% 30%,#0b4a78 0%,#003459 55%,#00263f 100%);
 box-shadow:0 0 0 3px var(--tb-orange),0 0 0 7px rgba(0,38,63,.9),0 0 0 8.5px rgba(251,97,7,.85),0 18px 40px rgba(0,16,32,.5)}
.tbi-seal::before{inset:0;border:0;border-radius:50%;background:url(img/contours-top-right.svg) center/150% no-repeat;opacity:.16}
.tbi-seal::after{inset:26%;border:1px solid rgba(255,255,255,.16)}
.tbi-seal:hover{transform:rotate(0) scale(1.05)}
.tbi-seal-ring{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;animation:tbi-seal-spin 40s linear infinite}
.tbi-seal-ring text{font-family:var(--tb-font);font-weight:800;font-size:8.6px;letter-spacing:.5px;fill:#ffb36b}
.tbi-seal:hover .tbi-seal-ring{animation-play-state:paused}
@keyframes tbi-seal-spin{to{transform:rotate(360deg)}}
.tbi-seal-face{position:relative;z-index:1;gap:0}
.tbi-seal-leaf svg{width:calc(var(--s) * .12);height:calc(var(--s) * .12);margin-bottom:1px}
.tbi-seal-face b{font-size:calc(var(--s) * .25);color:#fff;letter-spacing:.01em;line-height:.95;text-shadow:0 2px 0 rgba(0,0,0,.18)}
.tbi-seal-face i{display:block;width:calc(var(--s) * .16);height:2px;border-radius:2px;background:var(--tb-orange);margin:4px 0 3px}
.tbi-seal-face small{font-size:calc(var(--s) * .062);letter-spacing:.28em;color:#cfe2f1;margin:0;padding-left:.28em}
.tbi-seal-plus{right:2%;bottom:4%;width:calc(var(--s) * .27);height:calc(var(--s) * .27);background:var(--tb-orange);color:#fff;border:3px solid #fff;font-size:calc(var(--s) * .19);box-shadow:0 6px 16px rgba(0,0,0,.3);transform:rotate(8deg)}
.tbi-seal-plus::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(251,97,7,.7);animation:tbi-seal-pulse 2.4s ease-out infinite}
.tbi-seal-plus span{line-height:1;margin-top:-2px}
@keyframes tbi-seal-pulse{0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.5);opacity:0}}
@media (prefers-reduced-motion:reduce){.tbi-seal-ring,.tbi-seal-plus::after{animation:none}}
@media (max-width:767px){.tbi-seal{--s:100px}}

/* Beat the site reset that strips every shadow (*{box-shadow:none!important}) */
.tbi-seal{box-shadow:0 0 0 3px var(--tb-orange),0 0 0 7px rgba(0,38,63,.9),0 0 0 8.5px rgba(251,97,7,.85),0 18px 40px rgba(0,16,32,.5)!important}
.tbi-seal-plus{box-shadow:0 6px 16px rgba(0,0,0,.3)!important}
.tbi-card-link:hover,.tbb-card:hover{box-shadow:0 12px 30px rgba(0,52,89,.12)!important}

/* =================== Blog article: progress, share, TOC, sign-up =================== */
.tbb-progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:9999;background:transparent;pointer-events:none}
.tbb-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--tb-orange),#ffb36b);transition:width .1s linear}
.tbb-share{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px}
.tbb-sh{display:inline-flex;align-items:center;gap:8px;height:42px;min-width:42px;justify-content:center;padding:0 12px;border-radius:999px;border:1.5px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff!important;font:700 14px var(--tb-font);cursor:pointer;text-decoration:none!important}
.tbb-sh[hidden]{display:none}
.tbb-sh svg{width:18px;height:18px}
.tbb-sh:hover{background:var(--tb-orange);border-color:var(--tb-orange)}
.tbb-sh.is-done{background:#11743a;border-color:#11743a}
.tbb-end{margin:2.4em 0 0;padding:22px 24px;border-radius:20px;background:var(--tb-navy);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.tbb-article .tbb-end-h{margin:0!important;color:#fff!important;font-size:22px!important}
.tbb-end .tbb-share{margin:0}
.tbb-toc{background:#fff;border:1.5px solid var(--tb-line);border-radius:20px;padding:20px 22px}
.tbb-eyebrow-dark{color:var(--tb-orange)!important;margin-bottom:10px!important}
.tbb-toc ol{margin:0;padding:0 0 0 18px;display:flex;flex-direction:column;gap:8px;counter-reset:t}
.tbb-toc li{font-size:15px;line-height:1.35}
.tbb-toc li::marker{color:var(--tb-orange);font-weight:800}
.tbb-toc a{color:var(--tb-navy);font-weight:600;text-decoration:none}
.tbb-toc a:hover,.tbb-toc a.on{color:var(--tb-orange)}
.tbb-toc a.on{font-weight:800}
.tbb-article h2[id]{scroll-margin-top:90px}
.tbb-signup{margin:2em 0;border-radius:22px;padding:clamp(22px,2.4vw,36px);background:linear-gradient(120deg,#ffa327,#fb7a10);display:grid;gap:16px;position:relative;overflow:hidden}
.tbb-signup::after{content:"";position:absolute;right:-30px;bottom:-30px;width:55%;height:120%;background:url(img/contours-top-right.svg) right bottom/contain no-repeat;opacity:.25;pointer-events:none}
.tbb-signup>*{position:relative;z-index:1}
.tbb-signup .tbb-eyebrow{color:var(--tb-navy)!important}
.tbb-article .tbb-signup-h,.tbb-signup-h{margin:4px 0 6px!important;font-weight:900;font-size:clamp(24px,1.9vw,34px);line-height:1.05;color:var(--tb-navy)}
.tbb-article .tbb-signup-p,.tbb-signup-p{margin:0!important;color:var(--tb-navy);font-size:16px;line-height:1.5}
.tbb-signup-row{display:flex;gap:8px}
.tbb-signup-row input{flex:1;min-width:0;border:0!important;border-radius:999px!important;padding:14px 20px!important;font:16px var(--tb-font)!important;background:#fff!important;color:var(--tb-ink)!important}
.tbb-signup-row button{border:0;border-radius:999px;padding:14px 22px;font:800 16px var(--tb-font);background:var(--tb-navy);color:#fff;cursor:pointer;white-space:nowrap}
.tbb-signup-row button:disabled{opacity:.7}
.tbb-consent{display:flex;gap:10px;align-items:flex-start;margin-top:10px;font-size:12.5px!important;line-height:1.45;color:var(--tb-navy)}
.tbb-consent input{margin-top:3px;accent-color:var(--tb-navy)}
.tbb-hp{position:absolute!important;left:-9999px}
.tbb-article .tbb-signup-status,.tbb-signup-status{margin:6px 0 0!important;font-weight:800;color:var(--tb-navy);font-size:15px;min-height:1px}
.tbb-article .tbb-signup-club,.tbb-signup-club{margin:0!important;font-size:14px;color:var(--tb-navy)}
.tbb-article .tbb-signup-club a{color:var(--tb-navy)}
.tbb-signup-mid{grid-template-columns:1fr}
@media (min-width:1025px){.tbb-signup-end{grid-template-columns:1fr 1.1fr;align-items:center}.tbb-signup-end .tbb-signup-club{grid-column:1/-1}}
@media (max-width:1024px){.tbb-toc{display:none}}
@media (max-width:767px){.tbb-signup-row{flex-direction:column}.tbb-sh span{display:none}.tbb-sh{padding:0}.tbb-sh-copy span,.tbb-sh-native span{display:inline}.tbb-sh-copy,.tbb-sh-native{padding:0 14px}}

/* =================== Article v2 (Elemental structure, Terrabis look) =================== */
.tbb-hero-text .tbi-hero-copy{gap:14px}
.tbb-strip{background:var(--tb-light);border-bottom:1px solid var(--tb-line)}
.tbb-strip-in{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:14px}
.tbb-strip-in p{margin:0;color:var(--tb-navy);font-size:15px}
.tbb-strip-in b{text-transform:uppercase;letter-spacing:.12em;font-size:13px;margin-right:6px}
.tbb-strip .tbb-sh,.tbb-bottomshare .tbb-sh{border-color:var(--tb-navy);color:var(--tb-navy)!important;background:#fff}
.tbb-strip .tbb-sh:hover,.tbb-bottomshare .tbb-sh:hover{background:var(--tb-navy);color:#fff!important}
.tbb-strip .tbb-share{margin:0}
.tbb-mtoc{display:none;border:1.5px solid var(--tb-line);border-radius:16px;padding:0 16px;margin:0 0 1.4em}
.tbb-mtoc summary{list-style:none;display:flex;align-items:center;gap:10px;padding:14px 0;font-weight:900;color:var(--tb-navy);text-transform:uppercase;letter-spacing:.1em;font-size:13px;cursor:pointer}
.tbb-mtoc summary::-webkit-details-marker{display:none}
.tbb-mtoc summary span{color:var(--tb-muted);font-weight:600;text-transform:none;letter-spacing:0}
.tbb-mtoc summary i{margin-left:auto;font-style:normal;font-size:20px;color:var(--tb-orange)}
.tbb-mtoc[open] summary i{transform:rotate(45deg)}
.tbb-mtoc ol{margin:0 0 14px;padding-left:20px;font-size:15px;line-height:1.4}
.tbb-mtoc li{margin:6px 0}.tbb-mtoc a{color:var(--tb-navy);font-weight:600;text-decoration:none}
.tbb-toc summary{list-style:none;display:flex;justify-content:space-between;align-items:baseline;cursor:pointer;margin-bottom:6px}
.tbb-toc summary::-webkit-details-marker{display:none}
.tbb-toc-n{font-size:13px;color:var(--tb-muted);font-weight:600}
.tbb-shopcard{display:grid;grid-template-columns:84px 1fr;gap:14px;align-items:center;background:var(--tb-light);border-radius:20px;padding:18px}
.tbb-shopcard img{width:84px;height:84px;object-fit:contain;background:#fff;border-radius:14px;padding:8px;box-sizing:border-box}
.tbb-shopcard .tbb-eyebrow{margin:0 0 4px!important}
.tbb-shopcard-p{margin:0 0 10px!important;font-size:14px!important;line-height:1.45!important;color:var(--tb-muted)!important}
.tbb-shopcard .tbb-btn{padding:10px 18px;font-size:14px}
.tbb-next{display:flex;flex-direction:column;gap:10px;background:#fff;border:1.5px solid var(--tb-line);border-radius:20px;padding:20px}
.tbb-next .tbb-eyebrow,.tbb-next .tbb-aside-h{margin:0!important}
.tbb-next-card{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;text-decoration:none!important;padding-top:10px;border-top:1px solid var(--tb-line)}
.tbb-next-card img,.tbb-next-ph{width:56px!important;height:56px!important;border-radius:12px;object-fit:cover;background:var(--tb-light);display:block}
.tbb-next-card small{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--tb-orange)}
.tbb-next-card strong{display:block;font-size:14px;line-height:1.3;color:var(--tb-navy)}
.tbb-next-card b{color:var(--tb-orange)}
.tbb-takeaways{background:var(--tb-light);border-left:5px solid var(--tb-orange);border-radius:0 16px 16px 0;padding:18px 20px 18px 40px!important;list-style:none}
.tbb-takeaways li{position:relative}
.tbb-takeaways li::before{content:"";position:absolute;left:-22px;top:.55em;width:10px;height:10px;border-radius:50%;background:var(--tb-orange)}
.tbb-perks{margin-top:0!important}
.tbb-perks-in{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(20px,3vw,60px);padding-block:clamp(36px,4vw,72px);position:relative;z-index:1}
.tbb-perks-in>div{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.tbb-perks-p{margin:0;color:var(--tb-navy);font-weight:600;font-size:clamp(16px,1.1vw,20px);max-width:46ch}
.tbb-perks-img{width:100%;height:auto}
.tbb-btn-navy{background:var(--tb-navy)}
.tbb-btn-line{background:transparent;border:2px solid var(--tb-navy);color:var(--tb-navy)!important}
.tbb-news{padding-block:clamp(20px,2vw,40px) 0}
.tbb-sechead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.tbb-sechead .tbb-eyebrow{margin:0 0 6px!important}
.tbb-bottomshare{text-align:center;padding-block:clamp(40px,4vw,72px);display:flex;flex-direction:column;align-items:center;gap:14px}
.tbb-bottomshare p{margin:0;color:var(--tb-muted)}
.tbb-bottomshare .tbb-share{justify-content:center}
.tbb-mshop{display:none}
@media (max-width:1024px){.tbb-mtoc{display:block}.tbb-perks-in{grid-template-columns:1fr}.tbb-perks-img{max-width:520px}}
@media (max-width:767px){
 .tbb-strip-in{flex-direction:column;align-items:flex-start}
 .tbb-mshop:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.97);box-shadow:0 -6px 24px rgba(0,52,89,.14)!important;font-weight:800;color:var(--tb-navy);font-size:14px}
 .tbb-mshop .tbb-btn{padding:11px 18px;font-size:14px}
 body:has(.tbb-mshop:not([hidden])) .tb-footer{padding-bottom:76px}
}

/* =================== Plan your visit (Elemental "everything you need before you stop by", Terrabis colors) =================== */
.tbi-visit-w{margin-top:clamp(14px,1.2vw,22px)!important}
.tbi-visit{background:var(--tb-navy);color:#fff;border-radius:24px;padding:clamp(22px,3.2vw,52px);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(20px,3.6vw,56px);position:relative;overflow:hidden}
.tbi-visit::before{content:"";position:absolute;left:-40px;bottom:-40px;width:42%;height:70%;background:url(img/contours-bottom-left.svg) left bottom/contain no-repeat;opacity:.35;pointer-events:none}
.tbi-visit>*{position:relative;z-index:1}
.tbi-visit-k{margin:0 0 8px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#ffb36b}
.tbi-visit h2{margin:0;font-family:var(--tb-font);font-weight:900;font-size:clamp(30px,3vw,52px);line-height:1.02;letter-spacing:-.01em;color:#fff;text-wrap:balance}
.tbi-visit-lead{margin:12px 0 22px;color:#cfe2f1;font-size:clamp(15px,1.05vw,19px);line-height:1.5;max-width:58ch}
.tbi-vtabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.tbi-vtabs button{appearance:none;border:1.5px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:999px;padding:9px 18px;font:800 14px var(--tb-font);cursor:pointer}
.tbi-vtabs button[aria-selected=true]{background:var(--tb-orange);border-color:var(--tb-orange)}
.tbi-vtabs button:focus-visible{outline:3px solid var(--tb-sky);outline-offset:2px}
.tbi-vpanel[hidden]{display:none}
.tbi-vpanel p{margin:0 0 12px;color:#dbe9f5;line-height:1.55;font-size:clamp(15px,1vw,18px)}
.tbi-vpanel b{color:#fff}
.tbi-vam{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tbi-vam li{display:flex;gap:12px;align-items:flex-start;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px 14px}
.tbi-vam .tbi-ico{color:#ffb36b;width:22px;height:22px;margin-top:1px}
.tbi-vam b{display:block;color:#fff;font-size:15px}
.tbi-vam span{color:#cfe2f1;font-size:13.5px;line-height:1.4}
.tbi-vbtn{display:inline-flex;align-items:center;justify-content:center;padding:11px 20px;border-radius:999px;font-weight:800;font-size:15px;background:var(--tb-orange);color:#fff!important;border:2px solid var(--tb-orange);text-decoration:none!important;margin:0 6px 6px 0}
.tbi-vbtn.o{background:transparent;border-color:rgba(255,255,255,.6)}
.tbi-vbtn:hover{filter:brightness(1.08)}
.tbi-vcard{background:#fff;color:var(--tb-ink);border-radius:20px;padding:clamp(18px,1.8vw,28px);align-self:start}
.tbi-vstatus{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-weight:800;color:var(--tb-navy)}
.tbi-vstatus i{width:10px;height:10px;border-radius:50%;background:#9aa8b6}
.tbi-vcard:has(.is-open) .tbi-vstatus i{background:#1fa95b;box-shadow:0 0 0 4px rgba(31,169,91,.2)!important}
.tbi-vcard:has(.is-closed) .tbi-vstatus i{background:#e0662a}
.tbi-vstatus em{font-style:normal;font-weight:600;color:var(--tb-muted);font-size:14px}
.tbi-vhours{width:100%;border-collapse:collapse;font-size:15px}
.tbi-vhours th,.tbi-vhours td{padding:7px 0;border-bottom:1px solid var(--tb-line);text-align:left}
.tbi-vhours th{font-weight:600;color:var(--tb-muted)}
.tbi-vhours td{text-align:right;color:var(--tb-ink);white-space:nowrap}
.tbi-vhours tr.today th,.tbi-vhours tr.today td{color:var(--tb-navy);font-weight:900}
.tbi-vhours tr.today th::after{content:" · Today";color:var(--tb-orange);font-weight:800;font-size:12px}
.tbi-vaddr{margin:14px 0;font-size:15px;line-height:1.45;color:var(--tb-ink)}
.tbi-vaddr a{color:var(--tb-navy);font-weight:800}
.tbi-vact{display:flex;flex-wrap:wrap}
.tbi-vcard .tbi-vbtn.o{border-color:var(--tb-navy);color:var(--tb-navy)!important}
@media (max-width:1024px){.tbi-visit{grid-template-columns:1fr}}
@media (max-width:767px){.tbi-vam{grid-template-columns:1fr}.tbi-visit{border-radius:20px}.tbi-vtabs button{padding:8px 14px;font-size:13px}}
.tbi-vhours,.tbi-vhours tbody,.tbi-vhours tr,.tbi-vhours th,.tbi-vhours td{border:0!important;background:transparent!important}
.tbi-vhours th,.tbi-vhours td{border-bottom:1px solid var(--tb-line)!important;padding:8px 0!important}
.tbi-vhours tr:last-child th,.tbi-vhours tr:last-child td{border-bottom:0!important}
.tbb-perks .tbb-eyebrow{color:var(--tb-navy)!important}
.tbb-signup-club a{color:var(--tb-navy)!important;font-weight:800}

/* Hours chart: one timeline per day, today in orange, a live "now" marker */
.tbi-hrs{display:flex;flex-direction:column;gap:12px}
.tbi-hrs-head{display:grid;gap:2px}
.tbi-hrs-k{margin:0;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--tb-orange)}
.tbi-hrs-status{margin:0;display:flex;align-items:center;gap:10px;font-size:clamp(20px,1.5vw,26px);font-weight:900;color:var(--tb-navy);line-height:1.15}
.tbi-hrs-status i{flex:0 0 auto;width:12px;height:12px;border-radius:50%;background:#9aa8b6}
.tbi-hrs.is-open .tbi-hrs-status i{background:#1fa95b;box-shadow:0 0 0 5px rgba(31,169,91,.18)!important;animation:tbi-live 2s ease-in-out infinite}
.tbi-hrs.is-closed .tbi-hrs-status i{background:#e0662a}
@keyframes tbi-live{50%{box-shadow:0 0 0 9px rgba(31,169,91,0)!important}}
.tbi-hrs-sub{margin:0;font-size:14px;color:var(--tb-muted);font-weight:600}
.tbi-hrs-week{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}
.tbi-hrs-week li,.tbi-hrs-axis{display:grid;grid-template-columns:40px 1fr 112px;align-items:center;gap:12px}
.tbi-hd{font-size:13px;font-weight:800;color:var(--tb-muted);text-transform:uppercase;letter-spacing:.06em}
.tbi-ht{position:relative;height:12px;border-radius:999px;background:var(--tb-light)}
.tbi-hb{position:absolute;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,#4fb6e6,var(--tb-sky))}
.tbi-hnow{position:absolute;top:-5px;bottom:-5px;width:3px;margin-left:-1.5px;border-radius:2px;background:var(--tb-navy)}
.tbi-hnow::after{content:"";position:absolute;top:-4px;left:50%;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;background:var(--tb-navy)}
.tbi-hv{font-size:13.5px;font-weight:700;color:var(--tb-ink);text-align:right;white-space:nowrap}
.tbi-hrs-week li.today .tbi-hd,.tbi-hrs-week li.today .tbi-hv{color:var(--tb-navy);font-weight:900}
.tbi-hrs-week li.today .tbi-hb{background:linear-gradient(90deg,#ff9b4a,var(--tb-orange))}
.tbi-hrs-week li.today .tbi-hd::after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--tb-orange);margin-left:5px;vertical-align:2px}
.tbi-hrs-axis{margin-top:-2px}
.tbi-hrs-ticks{position:relative;height:16px}
.tbi-hrs-ticks span{position:absolute;top:0;transform:translateX(-50%);font-size:11px;font-weight:700;color:var(--tb-muted);white-space:nowrap}
.tbi-hrs-ticks span:first-child{transform:none}
.tbi-hrs-ticks span:last-child{transform:translateX(-100%)}
.tbi-vaddr{display:flex;gap:10px;align-items:flex-start;padding-top:14px;border-top:1px solid var(--tb-line)}
.tbi-vaddr .tbi-ico{color:var(--tb-orange);width:22px;height:22px}
@media (max-width:767px){.tbi-hrs-week li,.tbi-hrs-axis{grid-template-columns:34px 1fr 96px;gap:10px}.tbi-hv{font-size:12.5px}}

/* =================== Rhythm + phone compaction pass =================== */
/* One vertical rhythm: back-to-back white sections share their gap instead of doubling it */
.tbi>.tbi-sec+.tbi-sec{padding-top:clamp(8px,1vw,24px)!important}
.tbi-visit h2{margin-bottom:2px}
.tbi-visit-lead{margin:14px 0 24px!important}
.tbi-hd{white-space:nowrap}
.tbi-loc-col .tbi-chips-plain li,.tbi-loc-col .tbi-chips-cities a{background:#fff}
.tbi-chips-plain li{color:var(--tb-navy);font-weight:700}
.tbi-specials .tb-b-promo-copy{padding:clamp(24px,3vw,56px)!important}
@media (max-width:767px){
 .tbi-hrs-week li,.tbi-hrs-axis{grid-template-columns:44px 1fr 92px}
 .tbi-hrs-week li.today .tbi-hd::after{margin-left:3px}
 /* swipe rows instead of tall stacks */
 .tbi-cards-dark,.tbi-perks,.tbi-more-stores .tbi-stores,.tbi-pay{display:grid!important;grid-auto-flow:column;grid-template-columns:none!important;grid-auto-columns:82%;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px!important;margin-right:-16px!important;padding-right:16px!important;scrollbar-width:none}
 .tbi-cards-dark>*,.tbi-perks>*,.tbi-more-stores .tbi-store,.tbi-pay>*{scroll-snap-align:start}
 .tbi-cards-dark::-webkit-scrollbar,.tbi-perks::-webkit-scrollbar,.tbi-stores::-webkit-scrollbar,.tbi-pay::-webkit-scrollbar{display:none}
 .tbi-perks{grid-auto-columns:72%}
 .tbi-pay{grid-auto-columns:64%}
 .tbi-paycard{padding:16px!important}
 .tbi-split-img img{aspect-ratio:16/10}
 .tbi-sec{padding-block:30px!important}
 .tbi>.tbi-sec+.tbi-sec{padding-top:6px!important}
 .tbi-visit-lead{font-size:15px}
 .tbi-reviews{padding:20px!important}
}

/* Hours, plain and readable */
.tbi-hrs{gap:6px}
.tbi-hrs-status{font-size:clamp(20px,1.6vw,26px);margin-bottom:8px}
.tbi-hlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.tbi-hlist li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--tb-light)}
.tbi-hl-d{font-weight:800;color:var(--tb-navy);font-size:16px}
.tbi-hl-v{font-weight:700;color:var(--tb-ink);font-size:16px;white-space:nowrap}
.tbi-hlist li.today{background:var(--tb-navy)}
.tbi-hlist li.today .tbi-hl-d,.tbi-hlist li.today .tbi-hl-v{color:#fff}
.tbi-hlist li.today .tbi-hl-d::after{content:"Today";margin-left:8px;padding:2px 8px;border-radius:999px;background:var(--tb-orange);color:#fff;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;vertical-align:2px}

/* =================== Readable buttons everywhere =================== */
:root{--tb-btn-orange:#e04e00}
.tb .tb-btn-orange .elementor-button,.tbi-sbtn:not(.tbi-sbtn-alt):not(.tbi-sbtn-line),.tbi-vbtn:not(.o),.tbb-btn-orange,.tbb-search button,.tbi-ab-shop:not(.alt),.tbi-mbtns a:first-child,.tbi-mapf-btn,.tbb-signup-row button{background:var(--tb-btn-orange)!important;border-color:var(--tb-btn-orange)!important;color:#fff!important}
.tb .tb-btn .elementor-button,.tb .tb-btn .elementor-button-text{font-weight:800!important;letter-spacing:.01em!important}
.tb .tb-btn .elementor-button{font-size:max(16px,clamp(16px,1.05vw,20px))!important}
.tb .tb-btn-sm .elementor-button{font-size:16px!important;padding:12px 20px!important}
.tbi-sbtn{font-size:15px;padding:12px 18px}
.tbi-vbtn,.tbb-btn,.tbi-ab-shop,.tbb-search button,.tbb-signup-row button,.tbi-mbtns a,.tbi-mapf-btn{font-size:16px!important;font-weight:800!important}
.tbb-shopcard .tbb-btn{font-size:15px!important;padding:11px 18px}
.tbi-filter button,.tbi-vtabs button,.tbi-form-tabs button{font-size:15px!important}
@media (max-width:767px){
 .tb .tb-btn .elementor-button{font-size:16px!important;padding:13px 20px!important}
 .tb .tb-btn-sm .elementor-button{font-size:15px!important;padding:11px 16px!important}
 .tb .tb-hcta .tb-btn .elementor-button{font-size:14px!important;padding:10px 14px!important}
 .tbi-sbtn{font-size:15px;padding:11px 16px}
}

/* Hours: all seven days by name, compact */
.tbi-hlist{gap:4px}
.tbi-hlist li{padding:9px 14px;border-radius:10px}
.tbi-hl-d,.tbi-hl-v{font-size:15.5px}
/* Solid cards on navy: no contour lines showing through the text */
.tbi-vam li{background:#0e4470!important;border-color:#1b5584!important}
.tbi-vam li:last-child:nth-child(odd){grid-column:1/-1}
.tbi-cards-dark .tbi-card{background:#0e4470!important;border-color:#1b5584!important}
.tbi-visit::before{opacity:.22}

/* =================== Header v2: store picker bar, marquee, menu, search, category bar =================== */
:root{--tb-mq-bg:#cf4900;--tb-open:#1f8a4c;--tb-open-l:#5fd38d;--tb-closed:#c2410c;--tb-shadow:0 18px 50px rgba(0,36,64,.18)}
html.tb-lock{overflow:hidden}
.tb-header{position:relative;z-index:60;overflow:visible!important}
.tb-header .tb-util-w,.tb-header .tb-mq-w,.tb-header .tb-cb-w,.tb-header .tb-mn-w,.tb-header .tb-ht-w{width:100%}
/* Utility bar */
.tb-util{background:var(--tb-navy);color:#fff}
.tb-util-in{width:calc(100% - 2 * var(--tb-gut));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px}
.tb-storebtn{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:10px;cursor:pointer;padding:8px 12px 8px 6px;border-radius:12px;color:#fff;min-width:0;transition:background .2s}
.tb-storebtn:hover,.tb-storebtn:focus-visible{background:rgba(255,255,255,.1)}
.tb-storebtn:focus-visible{outline:2px solid var(--tb-sky);outline-offset:2px}
.tb-storebtn>svg:first-child{width:26px;height:26px;flex:0 0 26px;color:var(--tb-sky)}
.tb-storebtn>svg:last-child{width:18px;height:18px;flex:0 0 18px;opacity:.85}
.tb-storebtn-t{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.tb-storebtn-t b{font-weight:800;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-storebtn-t small{font-size:13px;font-weight:600;color:#cfe3f1;white-space:nowrap}
.tb-storebtn-t small.is-open::before,.tb-storebtn-t small.is-closed::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:1px;background:var(--tb-open-l)}
.tb-storebtn-t small.is-closed::before{background:#ff9b6b}
.tb-util-r{display:flex;gap:6px}
.tb-util-r a{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:700;font-size:13px;line-height:1.15;padding:8px 10px;border-radius:10px}
.tb-util-r a:hover{background:rgba(255,255,255,.1);color:#fff}
.tb-util-r svg{width:22px;height:22px;color:var(--tb-orange);flex:0 0 22px}
/* Main row */
.tb-hwrap2{gap:clamp(12px,1.6vw,28px)!important;min-height:76px!important}
.tb-hwrap2 .tb-logo img{width:clamp(132px,10vw,168px)!important}
.tb-hwrap2>.tb-mn-w{flex:1 1 auto!important;width:auto!important;min-width:0}
.tb-hwrap2>.tb-ht-w{flex:0 0 auto!important;width:auto!important}
.tb-mn ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:center;gap:2px}
.tb-mn li{position:relative}
.tb-mn-a,.tb-mn-dd>button{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;padding:10px clamp(7px,.7vw,12px);border-radius:10px;font:700 15px/1 var(--tb-font);color:var(--tb-navy);cursor:pointer;white-space:nowrap}
.tb-mn-a:hover,.tb-mn-dd>button:hover,.tb-mn-dd.is-open>button{background:var(--tb-light);color:var(--tb-navy)}
.tb-mn-a:focus-visible,.tb-mn-dd>button:focus-visible{outline:2px solid var(--tb-sky);outline-offset:1px}
.tb-mn-hot{color:var(--tb-btn-orange,#e04e00)!important}
.tb-mn-dd>button svg{width:16px;height:16px;transition:transform .2s}
.tb-mn-dd.is-open>button svg{transform:rotate(180deg)}
.tb-mn-panel{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,6px);min-width:300px;background:#fff;border:1px solid #e3edf5;border-radius:18px;box-shadow:var(--tb-shadow)!important;padding:10px;opacity:0;visibility:hidden;transition:opacity .16s,transform .16s,visibility 0s .16s;z-index:80}
.tb-mn-panel::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.tb-mn-dd.is-open>.tb-mn-panel{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .16s,transform .16s}
.tb-mn-card{display:block;padding:12px 14px;border-radius:12px;color:var(--tb-navy)}
.tb-mn-card:hover,.tb-mn-card:focus-visible{background:var(--tb-light)}
.tb-mn-card b{display:block;font-weight:800;font-size:15px}
.tb-mn-card small{display:block;font-size:13.5px;color:var(--tb-muted);margin-top:2px}
.tb-mn-wide .tb-mn-panel{min-width:520px;padding:18px}
.tb-mn-locs{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tb-mn-st{font-size:12px!important;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-muted);margin:0 0 6px!important}
.tb-mn-loccol ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.tb-mn-loccol li{display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:10px;padding:2px 2px 2px 8px}
.tb-mn-loccol li:hover{background:var(--tb-light)}
.tb-mn-loccol a{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--tb-navy);padding:8px 0}
.tb-mn-loccol i,.tb-nav-loc i{width:8px;height:8px;border-radius:50%;background:var(--tb-open)}
.tb-mn-loccol i.is-closed,.tb-nav-loc i.is-closed{background:#b8c6d3}
.tb-mn-loccol button,.tb-nav-loc button{all:unset;cursor:pointer;font:800 13px/1 var(--tb-font);color:#fff;background:var(--tb-navy);padding:8px 12px;border-radius:999px}
.tb-mn-loccol button:hover{background:var(--tb-btn-orange,#e04e00)}
.tb-mn-foot{display:flex;gap:18px;border-top:1px solid #e3edf5;margin:14px 0 0!important;padding-top:12px}
.tb-mn-foot a{font-weight:800;color:var(--tb-navy);font-size:14px}
/* Tools: search, bag, burger */
.tb-ht{display:flex;align-items:center;gap:8px}
.tb-hs{position:relative;display:flex;align-items:center;background:#f2f6f9;border:1px solid #e3edf5;border-radius:999px;width:clamp(200px,17vw,300px);transition:border-color .2s,box-shadow .2s}
.tb-hs:focus-within{border-color:var(--tb-sky);box-shadow:0 0 0 3px rgba(0,174,239,.18)!important;background:#fff}
.tb-hs input{all:unset;box-sizing:border-box;flex:1;min-width:0;height:44px;padding:0 6px 0 18px;font:600 15px var(--tb-font);color:var(--tb-ink)}
.tb-hs input::placeholder{color:#6b7f93}
.tb-hs button{all:unset;cursor:pointer;display:grid;place-items:center;width:36px;height:36px;margin-right:4px;border-radius:50%;background:var(--tb-navy);color:#fff}
.tb-hs button svg{width:18px;height:18px}
.tb-ht-btn{all:unset;box-sizing:border-box;cursor:pointer;position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--tb-navy)}
.tb-ht-btn:hover{background:var(--tb-light)}
.tb-ht-btn:focus-visible{outline:2px solid var(--tb-sky)}
.tb-ht-btn svg{width:24px;height:24px}
.tb-ht-search,.tb-ht-burger{display:none}
.tb-bag-n{position:absolute;top:2px;right:0;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--tb-btn-orange,#e04e00);color:#fff;font:800 12px/20px var(--tb-font);text-align:center;box-sizing:border-box}
.tb-hs-pop{position:absolute;top:calc(100% + 10px);right:0;width:min(440px,92vw);max-height:min(70vh,560px);overflow:auto;background:#fff;border:1px solid #e3edf5;border-radius:18px;box-shadow:var(--tb-shadow)!important;padding:14px;z-index:90}
/* Category bar */
.tb-cb{background:#f2f6f9;border-top:1px solid #e3edf5;border-bottom:1px solid #e3edf5}
.tb-cb-in{width:calc(100% - 2 * var(--tb-gut));margin:0 auto;display:flex;gap:8px;overflow-x:auto;padding-block:10px;scrollbar-width:none;scroll-behavior:smooth;justify-content:safe center}
.tb-cb-in::-webkit-scrollbar{display:none}
.tb-cb-a{flex:0 0 auto;display:inline-flex;align-items:center;height:38px;padding:0 16px;border-radius:999px;border:1.5px solid #b9cfe0;background:#fff;color:var(--tb-navy)!important;font:700 14.5px/1 var(--tb-font);white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.tb-cb-a:hover{border-color:var(--tb-navy)}
.tb-cb-a.is-on{background:var(--tb-navy);border-color:var(--tb-navy);color:#fff!important}
.tb-cb-hob{background:var(--tb-btn-orange,#e04e00);border-color:var(--tb-btn-orange,#e04e00);color:#fff!important}
.tb-cb-hob:hover{background:#c24100;border-color:#c24100}
@media (max-width:1279px){
 .tb-hs{display:none}
 .tb-ht-search{display:grid}
}
@media (max-width:1100px){
 .tb-hwrap2>.tb-mn-w{display:none!important}
 .tb-ht-burger{display:grid}
 .tb-hwrap2>.tb-ht-w{margin-left:auto!important}
}
@media (max-width:767px){
 .tb-util-in{min-height:52px;gap:6px;width:calc(100% - 20px)}
 .tb-storebtn{padding:6px 6px 6px 0;gap:8px}
 .tb-storebtn-t b{font-size:14px}
 .tb-storebtn-t small{font-size:12px}
 .tb-util-r a{flex-direction:column;gap:2px;padding:4px 6px;font-size:11px;text-align:center}
 .tb-util-r svg{width:20px;height:20px}
 .tb-hwrap2{min-height:62px!important}
 .tb-hwrap2 .tb-logo img{width:124px!important}
 .tb-ht{gap:2px}
 .tb-cb-in{width:100%;padding-inline:12px;justify-content:flex-start;padding-block:9px}
 .tb-cb-a{height:36px;padding:0 14px;font-size:14px}
}
/* Campaign banner */
.tb-campaign-w{padding-top:clamp(20px,2.4vw,36px)!important}
.tb-campaign-w.is-off,.tb-campaign.is-off{display:none!important}
.tb-campaign{border-radius:clamp(12px,1.4vw,20px);overflow:hidden;box-shadow:0 14px 40px rgba(0,36,64,.14)!important}
.tb-campaign a{display:block}
.tb-campaign img{width:100%!important;height:auto!important;aspect-ratio:1532/661;object-fit:cover}
.tbi-menu-top{padding-top:clamp(16px,2vw,28px)!important;width:calc(100% - 2 * var(--tb-gut))!important;margin:0 auto!important;max-width:1500px}
.tbi-menu-top>.tb-campaign{margin-bottom:clamp(18px,2vw,28px)}

/* =================== Sheets (store picker, search, phone menu, categories) =================== */
.tb-sheet{position:fixed;inset:0;z-index:9990;background:rgba(0,26,48,.5);display:flex;justify-content:flex-end;opacity:0;transition:opacity .2s}
.tb-sheet.is-on{opacity:1}
.tb-sheet[hidden]{display:none}
.tb-sheet-in{box-sizing:border-box;width:min(460px,100%);height:100%;overflow:auto;background:#fff;padding:20px 22px 28px;transform:translateX(24px);transition:transform .22s;font-family:var(--tb-font);color:var(--tb-ink)}
.tb-sheet.is-on .tb-sheet-in{transform:none}
.tb-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.tb-sheet-head h2{margin:0;font:900 24px/1.1 var(--tb-font);color:var(--tb-navy);letter-spacing:-.01em}
.tb-x{all:unset;cursor:pointer;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f2f6f9;color:var(--tb-navy);flex:0 0 42px}
.tb-x:hover{background:var(--tb-light)}
.tb-x:focus-visible{outline:2px solid var(--tb-sky)}
.tb-x svg{width:20px;height:20px}
.tb-sheet button,.tb-sheet input{font-family:var(--tb-font)}
/* Store picker */
.tb-sp-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.tb-seg{display:inline-flex;background:#f2f6f9;border-radius:999px;padding:4px}
.tb-seg button{all:unset;cursor:pointer;padding:9px 14px;border-radius:999px;font-weight:800;font-size:14px;color:var(--tb-navy)}
.tb-seg button.on{background:var(--tb-navy);color:#fff}
.tb-sp-near{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:14px;color:var(--tb-navy);padding:9px 12px;border-radius:999px;border:1.5px solid #b9cfe0}
.tb-sp-near svg{width:18px;height:18px;color:var(--tb-sky)}
.tb-sp-near.is-busy{opacity:.6}
.tb-sp-note{font-size:14px;color:var(--tb-muted);margin:-4px 0 12px}
.tb-sp-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.tb-sp-card{border:1.5px solid #e3edf5;border-radius:18px;padding:16px;background:#fff}
.tb-sp-card.is-cur{border-color:var(--tb-navy);background:#f3f9fd}
.tb-sp-cur{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--tb-sky-2);margin:0 0 6px}
.tb-sp-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.tb-sp-top h3{margin:0;font:900 19px/1.15 var(--tb-font);color:var(--tb-navy)}
.tb-sp-top h3 small{font-size:12px;font-weight:800;color:var(--tb-muted);margin-left:6px;letter-spacing:.08em}
.tb-sp-mi{font-weight:800;font-size:13px;color:var(--tb-muted);white-space:nowrap}
.tb-sp-status{display:flex;align-items:center;gap:7px;font-weight:700;font-size:14px;margin:6px 0 0}
.tb-sp-status i{width:9px;height:9px;border-radius:50%;background:var(--tb-open)}
.tb-sp-status.is-open{color:var(--tb-open)}
.tb-sp-status.is-closed{color:var(--tb-muted)}
.tb-sp-status.is-closed i{background:#b8c6d3}
.tb-sp-addr{font-size:14.5px;line-height:1.45;color:var(--tb-ink);margin:8px 0 0}
.tb-sp-addr a{color:var(--tb-navy);font-weight:700}
.tb-sp-tags{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}
.tb-sp-tags span{font-size:12.5px;font-weight:700;color:var(--tb-navy);background:#eaf3f9;border-radius:999px;padding:5px 10px}
.tb-sp-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}
.tb-sp-go{all:unset;cursor:pointer;box-sizing:border-box;flex:1 1 auto;text-align:center;font-weight:800;font-size:15px;color:#fff;background:var(--tb-navy);padding:12px 16px;border-radius:999px;min-width:120px}
.tb-sp-go:hover{background:#00253f}
.tb-sp-go2{background:#fff;color:var(--tb-navy);box-shadow:inset 0 0 0 2px var(--tb-navy)!important}
.tb-sp-go2:hover{background:var(--tb-light)}
.tb-sp-go:focus-visible{outline:2px solid var(--tb-sky);outline-offset:2px}
.tb-sp-info{font-weight:800;font-size:14px;color:var(--tb-navy);text-decoration:underline!important;text-underline-offset:3px;padding:8px 4px}
/* Search sheet */
.tb-sheet-search{justify-content:center;align-items:flex-start}
.tb-sheet-search .tb-sheet-in{width:min(680px,100%);height:auto;max-height:100%;border-radius:0 0 22px 22px;transform:translateY(-16px);padding:14px 16px 20px}
.tb-sheet-search.is-on .tb-sheet-in{transform:none}
.tb-srch-f{display:flex;align-items:center;gap:8px;border:1.5px solid var(--tb-sky);border-radius:999px;padding:4px 4px 4px 16px;box-shadow:0 0 0 3px rgba(0,174,239,.15)!important}
.tb-srch-f>span{display:grid;color:var(--tb-navy)}
.tb-srch-f>span svg{width:20px;height:20px}
.tb-srch-f input{all:unset;flex:1;min-width:0;height:44px;font:600 16px var(--tb-font);color:var(--tb-ink)}
.tb-srch-r{padding-top:6px}
.tb-srch-h{display:flex;justify-content:space-between;align-items:baseline;font-size:12px!important;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-muted);margin:16px 0 8px!important}
.tb-srch-h a{font-size:13px;letter-spacing:0;text-transform:none;color:var(--tb-navy);font-weight:800}
.tb-chiprow{display:flex;flex-wrap:wrap;gap:8px}
.tb-chiprow a,.tb-chiprow button{all:unset;cursor:pointer;font:700 14px/1 var(--tb-font);color:var(--tb-navy);background:#f2f6f9;border:1px solid #e3edf5;border-radius:999px;padding:10px 14px}
.tb-chiprow a:hover,.tb-chiprow button:hover{background:var(--tb-light);border-color:#b9cfe0}
.tb-srch-p,.tb-srch-l{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.tb-srch-p a{display:flex;align-items:center;gap:12px;padding:8px;border-radius:12px;color:var(--tb-ink)}
.tb-srch-p a:hover,.tb-srch-l a:hover,.tb-srch-p a:focus-visible,.tb-srch-l a:focus-visible{background:#f2f6f9}
.tb-srch-p img{width:48px;height:48px;border-radius:10px;border:1px solid #e3edf5;object-fit:contain;background:#fff;flex:0 0 48px}
.tb-srch-p span{flex:1;min-width:0;display:flex;flex-direction:column}
.tb-srch-p small{font-size:12px;font-weight:700;color:var(--tb-muted)}
.tb-srch-p b{font-size:14.5px;font-weight:700;color:var(--tb-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-srch-p em{font-style:normal;font-weight:800;color:var(--tb-navy)}
.tb-srch-l a{display:flex;justify-content:space-between;gap:10px;padding:11px 10px;border-radius:12px;color:var(--tb-navy)}
.tb-srch-l b{font-weight:700;font-size:15px}
.tb-srch-l small{font-size:13px;font-weight:700;white-space:nowrap}
.tb-srch-l small.is-open{color:var(--tb-open)}
.tb-srch-l small.is-closed{color:var(--tb-muted)}
.tb-srch-empty{color:var(--tb-muted);font-size:15px;margin:14px 4px!important}
.tb-srch-all{display:block;margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--tb-light);font-weight:800;color:var(--tb-navy)}
/* Phone menu */
.tb-nav-logo img{height:30px;width:auto}
.tb-nav-store{all:unset;cursor:pointer;box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--tb-navy);color:#fff;border-radius:16px;padding:14px 16px}
.tb-nav-store small{display:block;font-size:12px;font-weight:700;color:#cfe3f1}
.tb-nav-store b{font-size:17px;font-weight:800}
.tb-nav-store em{font-style:normal;font-weight:800;font-size:14px;color:#9fd8f5}
.tb-nav-search{display:flex;gap:8px;margin:12px 0 6px}
.tb-nav-search input{all:unset;box-sizing:border-box;flex:1;min-width:0;height:46px;padding:0 16px;border-radius:999px;background:#f2f6f9;border:1px solid #e3edf5;font:600 16px var(--tb-font)}
.tb-nav-search button{all:unset;cursor:pointer;padding:0 16px;border-radius:999px;background:var(--tb-navy);color:#fff;font-weight:800;font-size:14px}
.tb-nav-list{list-style:none;margin:6px 0 0;padding:0}
.tb-nav-list>li{border-bottom:1px solid #edf2f6}
.tb-nav-a{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 4px;font:800 18px/1.1 var(--tb-font);color:var(--tb-navy)!important}
.tb-nav-acc i{width:22px;height:22px;position:relative}
.tb-nav-acc i::before,.tb-nav-acc i::after{content:"";position:absolute;left:4px;right:4px;top:10px;height:2.4px;border-radius:2px;background:currentColor;transition:transform .2s}
.tb-nav-acc i::after{transform:rotate(90deg)}
.tb-nav-acc[aria-expanded="true"] i::after{transform:rotate(0)}
.tb-nav-panel{padding:0 0 12px}
.tb-nav-sub{display:block;padding:10px 12px;border-radius:10px;font-weight:700;font-size:16px;color:var(--tb-ink)!important}
.tb-nav-sub:hover{background:#f2f6f9}
.tb-nav-loc .tb-mn-st{margin:10px 0 4px 12px!important}
.tb-nav-loc ul{list-style:none;margin:0;padding:0}
.tb-nav-loc li{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 4px 12px}
.tb-nav-loc a{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:16px;color:var(--tb-ink);padding:8px 0}
.tb-nav-rw{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.tb-nav-rbtn{text-align:center;padding:14px;border-radius:999px;background:var(--tb-btn-orange,#e04e00);color:#fff!important;font-weight:800;font-size:15px}
.tb-nav-rbtn2{background:#fff;color:var(--tb-navy)!important;box-shadow:inset 0 0 0 2px var(--tb-navy)!important}
/* Category sheet */
.tb-catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tb-catgrid a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:84px;border-radius:16px;background:#f2f6f9;border:1px solid #e3edf5;font-weight:800;font-size:14px;color:var(--tb-navy);text-align:center;padding:10px 6px}
.tb-catgrid a:hover{background:var(--tb-light)}
.tb-catgrid .tb-catgrid-all{background:var(--tb-navy);color:#fff;border-color:var(--tb-navy)}
.tb-catgrid .tb-catgrid-sp{background:var(--tb-btn-orange,#e04e00);color:#fff;border-color:var(--tb-btn-orange,#e04e00)}
.tb-ci{width:30px;height:30px;border-radius:50%;background:#fff;border:2px solid var(--tb-sky);display:block;position:relative}
.tb-ci::after{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--tb-orange)}
.tb-sheet-cats h3{font:900 17px/1 var(--tb-font);color:var(--tb-navy);margin:22px 0 10px}
.tb-cats-foot{margin-top:22px!important}
.tb-cats-foot a{font-weight:800;color:var(--tb-navy)}
@media (max-width:640px){
 .tb-sheet{align-items:flex-end}
 .tb-sheet-in{width:100%;height:auto;max-height:92%;border-radius:22px 22px 0 0;transform:translateY(30px);padding:18px 16px calc(24px + env(safe-area-inset-bottom,0px))}
 .tb-sheet-nav .tb-sheet-in{height:100%;max-height:100%;border-radius:0}
 .tb-sheet-search{align-items:flex-start}
 .tb-sheet-search .tb-sheet-in{border-radius:0 0 22px 22px;transform:translateY(-20px)}
}

/* =================== Phone bottom bar =================== */
.tb-bb{display:none}
@media (max-width:767px){
 .tb-bb{display:block;position:fixed;left:0;right:0;bottom:0;z-index:900;background:#fff;border-top:1px solid #e3edf5;box-shadow:0 -8px 24px rgba(0,36,64,.08)!important;padding-bottom:env(safe-area-inset-bottom,0px)}
 .tb-bb[hidden]{display:none}
 .tb-bb-in{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;height:64px}
 .tb-bb-menu{grid-template-columns:1fr 1fr 1fr}
 .tb-bb-in[hidden]{display:none}
 .tb-bb-in>a,.tb-bb-in>button{all:unset;box-sizing:border-box;cursor:pointer;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:64px;color:var(--tb-navy);font:700 11.5px/1 var(--tb-font);text-align:center;-webkit-tap-highlight-color:transparent}
 .tb-bb-in svg{width:24px;height:24px}
 .tb-bb-in span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 2px}
 .tb-bb-in>.tb-bb-shop{margin-top:-18px;height:76px;justify-content:flex-end;padding-bottom:9px}
 .tb-bb-shop svg{box-sizing:content-box;width:26px;height:26px;padding:14px;border-radius:50%;background:var(--tb-navy);color:#fff;border:4px solid #fff;box-shadow:0 8px 20px rgba(0,52,89,.3)!important;margin-bottom:-2px}
 .tb-bb-shop .tb-bag-n{top:-2px;right:calc(50% - 34px);border:2px solid #fff;height:22px;line-height:18px}
 .tb-bb-count{position:absolute;top:8px;right:calc(50% - 22px);min-width:18px;height:18px;border-radius:999px;background:var(--tb-sky);color:#fff;font:800 11px/18px var(--tb-font);padding:0 4px}
 .tb-bb-count[hidden]{display:none}
 html.tb-has-bb body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
 html.tb-has-bb .ew-wallet-badge,html.tb-has-bb .discovery-float{bottom:84px!important}
}

/* =================== Demo menu =================== */
.tbm{font-family:var(--tb-font);color:var(--tb-ink);--tbm-card:clamp(158px,15vw,212px)}
.tbm *{box-sizing:border-box}
.tbm button,.tbm input,.tbm select{font-family:var(--tb-font)}
.tbm-shop{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--tb-navy);color:#fff;border-radius:20px;padding:18px clamp(18px,2vw,28px)}
.tbm-eyebrow{font-size:12px!important;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#9fd8f5;margin:0 0 4px!important}
.tbm-h1{margin:0;font:900 clamp(24px,2.6vw,36px)/1.05 var(--tb-font);color:#fff;letter-spacing:-.01em}
.tbm-shop-meta{margin:6px 0 0!important;font-weight:700;font-size:14.5px;color:#cfe3f1}
.tbm-shop-meta .is-open{color:var(--tb-open-l)}
.tbm-shop-meta .is-closed{color:#ffb38a}
.tbm-btn{all:unset;cursor:pointer;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:0 20px;border-radius:999px;font:800 15px/1 var(--tb-font);text-align:center}
.tbm-btn:focus-visible{outline:2px solid var(--tb-sky);outline-offset:2px}
.tbm-btn-line{box-shadow:inset 0 0 0 2px currentColor!important;color:var(--tb-navy)}
.tbm-shop .tbm-btn-line{color:#fff}
.tbm-btn-line:hover{background:rgba(0,174,239,.1)}
.tbm-btn-navy{background:var(--tb-navy);color:#fff}
.tbm-btn-navy:hover{background:#00253f}
.tbm-btn-orange{background:var(--tb-btn-orange,#e04e00);color:#fff}
.tbm-btn-orange:hover{background:#c24100}
.tbm-skel{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-top:24px}
.tbm-skel span{height:300px;border-radius:18px;background:linear-gradient(90deg,#eef4f8,#f6f9fb,#eef4f8);background-size:200% 100%;animation:tbm-sk 1.2s infinite}
@keyframes tbm-sk{to{background-position:-200% 0}}
.tbm-demo{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin:14px 0 0;padding:10px 14px;border-radius:12px;background:#fff6ef;border:1px solid #ffd9bf;font-size:14px;color:#6b3410}
.tbm-demo b{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#a23b00}
.tbm-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(20px,2.4vw,36px);margin-top:22px;align-items:start}
/* Filters */
.tbm-side{position:sticky;top:16px;max-height:calc(100vh - 32px);display:flex}
.tbm-side .tbm-layer-in{display:flex;flex-direction:column;width:100%;min-height:0}
.tbm-side .tbm-layer-h,.tbm-side .tbm-layer-f{display:none}
.tbm-fbody{overflow:auto;padding-right:6px;scrollbar-width:thin}
.tbm-fs{border-bottom:1px solid #e3edf5}
.tbm-fs summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:14px 2px;font-weight:800;font-size:15.5px;color:var(--tb-navy)}
.tbm-fs summary::-webkit-details-marker{display:none}
.tbm-fs summary::after{content:"";margin-left:auto;width:9px;height:9px;border-right:2.4px solid currentColor;border-bottom:2.4px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.tbm-fs[open] summary::after{transform:rotate(-135deg) translateY(-1px)}
.tbm-fs summary em{font-style:normal;font-size:12px;font-weight:800;background:var(--tb-sky);color:#fff;border-radius:999px;padding:2px 8px}
.tbm-fs-b{padding:0 0 12px;display:grid;gap:2px}
.tbm-opt{display:flex;align-items:center;gap:10px;padding:7px 6px;border-radius:10px;cursor:pointer;font-weight:600;font-size:15px;color:var(--tb-ink)}
.tbm-opt:hover{background:#f2f6f9}
.tbm-opt input{appearance:none;-webkit-appearance:none;margin:0;flex:0 0 20px;width:20px;height:20px;border:2px solid #9db6ca;border-radius:6px;display:grid;place-items:center;background:#fff;cursor:pointer}
.tbm-opt input[type=radio]{border-radius:50%}
.tbm-opt input:checked{background:var(--tb-navy);border-color:var(--tb-navy)}
.tbm-opt input:checked::after{content:"";width:9px;height:5px;border-left:2.4px solid #fff;border-bottom:2.4px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.tbm-opt input[type=radio]:checked::after{width:8px;height:8px;border:0;border-radius:50%;background:#fff;transform:none}
.tbm-opt input:focus-visible{outline:2px solid var(--tb-sky);outline-offset:2px}
.tbm-opt span{flex:1;min-width:0}
.tbm-opt small{font-size:13px;font-weight:700;color:var(--tb-muted)}
.tbm-opt.is-zero{opacity:.45}
.tbm-more{all:unset;cursor:pointer;font-weight:800;font-size:14px;color:var(--tb-navy);text-decoration:underline;text-underline-offset:3px;padding:8px 6px}
/* Toolbar */
.tbm-bar{display:flex;gap:12px;align-items:center}
.tbm-qw{flex:1;display:flex;align-items:center;gap:8px;height:48px;border-radius:999px;background:#f2f6f9;border:1px solid #e3edf5;padding:0 16px;color:var(--tb-navy)}
.tbm-qw:focus-within{border-color:var(--tb-sky);background:#fff;box-shadow:0 0 0 3px rgba(0,174,239,.15)!important}
.tbm-qw svg{width:20px;height:20px;flex:0 0 20px}
.tbm-q{all:unset;flex:1;min-width:0;font:600 15.5px var(--tb-font);color:var(--tb-ink)}
.tbm-sortw{display:flex;align-items:center;gap:8px;font-weight:800;font-size:14px;color:var(--tb-navy)}
.tbm-sort{height:48px;border-radius:999px;border:1.5px solid #b9cfe0;background:#fff;padding:0 36px 0 16px;font:700 14.5px var(--tb-font);color:var(--tb-navy);appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#003459 50%),linear-gradient(135deg,#003459 50%,transparent 50%);background-position:calc(100% - 20px) 21px,calc(100% - 14px) 21px;background-size:6px 6px;background-repeat:no-repeat;cursor:pointer}
.tbm-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tbm-chips:empty{display:none}
.tbm-chip{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:var(--tb-navy);color:#fff;font-weight:700;font-size:14px}
.tbm-chip i{font-style:normal;font-size:18px;line-height:1;opacity:.8}
.tbm-chip-clear{background:transparent;color:var(--tb-navy);text-decoration:underline;text-underline-offset:3px}
/* Rows & grid */
.tbm-results{margin-top:6px}
.tbm-row{margin-top:clamp(24px,2.6vw,36px)}
.tbm-row-h{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.tbm-row-h h2,.tbm-gh h2{margin:0;font:900 clamp(21px,2vw,27px)/1.1 var(--tb-font);color:var(--tb-navy);letter-spacing:-.01em}
.tbm-row-note{font-size:13.5px;font-weight:600;color:var(--tb-muted)}
.tbm-row-h a{margin-left:auto;font-weight:800;font-size:14.5px;color:var(--tb-navy);white-space:nowrap}
.tbm-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:var(--tbm-card);gap:14px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x mandatory;scrollbar-width:thin}
.tbm-scroll>*{scroll-snap-align:start}
.tbm-scroll:focus-visible{outline:2px solid var(--tb-sky);outline-offset:4px;border-radius:12px}
.tbm-gh{display:flex;align-items:baseline;justify-content:space-between;margin:clamp(18px,2vw,26px) 0 14px}
.tbm-gh p{font-weight:700;color:var(--tb-muted);margin:0!important}
.tbm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--tbm-card),1fr));gap:16px}
.tbm-morew{display:flex;justify-content:center;margin-top:24px}
.tbm-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.tbm-tile{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:16px;background:#f2f6f9;border:1px solid #e3edf5;color:var(--tb-navy)!important;font-weight:800;font-size:15.5px;transition:border-color .15s,background .15s}
.tbm-tile:hover{background:#fff;border-color:var(--tb-navy)}
.tbm-tile img{width:56px;height:56px;border-radius:12px;background:#fff;object-fit:contain;flex:0 0 56px}
.tbm-tile small{display:block;font-size:12.5px;font-weight:700;color:var(--tb-muted);margin-top:2px}
.tbm-feelrow{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.tbm-feelc{display:flex;flex-direction:column;justify-content:flex-end;min-height:110px;padding:16px;border-radius:18px;color:#fff!important;background:var(--tb-navy);position:relative;overflow:hidden}
.tbm-feelc::before{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;border:14px solid rgba(255,255,255,.14)}
.tbm-feelc b{font-size:19px;font-weight:900}
.tbm-feelc small{font-size:13.5px;font-weight:600;opacity:.9;margin-top:2px}
.tbm-feel-happy{background:#c84400}
.tbm-feel-creative{background:#0b6e99}
.tbm-feel-sleepy{background:#2b2f6b}
.tbm-feel-energetic{background:#1d7a52}
/* Card */
.tbm-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #e3edf5;border-radius:18px;overflow:hidden;transition:box-shadow .2s,transform .2s,border-color .2s}
.tbm-card:hover{box-shadow:0 14px 34px rgba(0,36,64,.12)!important;border-color:#cfe0ec}
.tbm-card-img{position:relative;display:block;aspect-ratio:1;background:#fff;padding:10px}
.tbm-card-img img{width:100%;height:100%;object-fit:contain}
.tbm-badge{position:absolute;left:10px;top:10px;background:var(--tb-btn-orange,#e04e00);color:#fff;font:800 12.5px/1 var(--tb-font);padding:6px 9px;border-radius:999px}
.tbm-card-b{display:flex;flex-direction:column;gap:4px;padding:2px 14px 14px;flex:1}
.tbm-brand{font-size:12px!important;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--tb-muted);margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tbm-name{margin:0;font:800 15px/1.25 var(--tb-font);color:var(--tb-navy);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em}
.tbm-name a{color:inherit}
.tbm-name a::after{content:"";position:absolute;inset:0 0 64px}
.tbm-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px;font-weight:700;color:var(--tb-muted);margin:2px 0 0!important}
.tbm-strain{display:inline-block;border-radius:999px;padding:3px 8px;font-size:11.5px;font-weight:800;color:#fff;background:#4b5b6e}
.tbm-strain.is-indica{background:#4a3a8c}
.tbm-strain.is-sativa{background:#c84400}
.tbm-strain.is-hybrid{background:#0b6e99}
.tbm-strain.is-cbd{background:#1d7a52}
.tbm-card-f{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px}
.tbm-price{margin:0!important;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}
.tbm-price b{font-size:18px;font-weight:900;color:var(--tb-navy)}
.tbm-price b small{font-size:12px;font-weight:700;color:var(--tb-muted)}
.tbm-price s{font-size:13.5px;color:var(--tb-muted);font-weight:600}
.tbm-add{all:unset;cursor:pointer;position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--tb-navy);color:#fff;flex:0 0 42px;transition:background .15s,transform .15s}
.tbm-add:hover{background:var(--tb-btn-orange,#e04e00)}
.tbm-add:active{transform:scale(.92)}
.tbm-add:focus-visible{outline:2px solid var(--tb-sky);outline-offset:2px}
.tbm-add svg{width:20px;height:20px}
.tbm-empty{text-align:center;padding:40px 16px;border-radius:18px;background:#f2f6f9;display:grid;gap:8px;justify-items:center}
.tbm-empty p{margin:0!important}
/* Layers: product dialog, bag, filters & sort on phones */
.tbm-layer[hidden]{display:none}
.tbm-dlg,.tbm-bag,.tbm-sortsheet{position:fixed;inset:0;z-index:9995;background:rgba(0,26,48,.5);display:flex;opacity:0;transition:opacity .2s}
.tbm-layer.is-on{opacity:1}
.tbm-dlg{align-items:center;justify-content:center;padding:24px}
.tbm-dlg>.tbm-layer-in{position:relative;width:min(960px,100%);max-height:100%;overflow:auto;background:#fff;border-radius:24px;padding:clamp(18px,2.4vw,32px);transform:translateY(12px);transition:transform .2s}
.tbm-dlg.is-on>.tbm-layer-in{transform:none}
.tbm-dlg-x{position:absolute;right:14px;top:14px;z-index:2}
.tbm-dlg-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(18px,2.6vw,40px)}
.tbm-dlg-img{position:relative;border:1px solid #e3edf5;border-radius:20px;padding:18px;align-self:start}
.tbm-dlg-img img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.tbm-dlg-h{margin:4px 0 8px;font:900 clamp(22px,2.4vw,30px)/1.1 var(--tb-font);color:var(--tb-navy);letter-spacing:-.01em;padding-right:44px}
.tbm-pot{display:flex;gap:10px;margin:14px 0 0}
.tbm-pot p{margin:0!important;border-radius:14px;background:#f2f6f9;padding:10px 16px;min-width:104px}
.tbm-pot small{display:block;font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--tb-muted)}
.tbm-pot b{font-size:20px;font-weight:900;color:var(--tb-navy)}
.tbm-fx{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0!important}
.tbm-fx span{font-size:13px;font-weight:700;color:var(--tb-navy);background:#eaf3f9;border-radius:999px;padding:6px 11px}
.tbm-deal{margin:12px 0 0!important;padding:10px 14px;border-radius:12px;background:#fff6ef;color:#7a2e00;font-weight:700;font-size:14px}
.tbm-deal b{color:var(--tb-btn-orange,#e04e00);margin-right:6px}
.tbm-sizes{border:0;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.tbm-sizes legend{font-weight:800;font-size:14px;color:var(--tb-navy);margin-bottom:8px;padding:0}
.tbm-sizes label{cursor:pointer}
.tbm-sizes input{position:absolute;opacity:0;pointer-events:none}
.tbm-sizes label span{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:86px;padding:10px 12px;border-radius:14px;border:1.5px solid #b9cfe0;text-align:center}
.tbm-sizes b{font-weight:800;color:var(--tb-navy)}
.tbm-sizes small{font-weight:700;font-size:13px;color:var(--tb-muted)}
.tbm-sizes input:checked+span{border-color:var(--tb-navy);background:var(--tb-navy)}
.tbm-sizes input:checked+span b,.tbm-sizes input:checked+span small{color:#fff}
.tbm-sizes input:focus-visible+span{outline:2px solid var(--tb-sky);outline-offset:2px}
.tbm-buy{display:flex;gap:12px;align-items:center;margin-top:20px}
.tbm-qty{display:inline-flex;align-items:center;border:1.5px solid #b9cfe0;border-radius:999px;height:52px}
.tbm-qty button{all:unset;cursor:pointer;width:44px;height:100%;display:grid;place-items:center;font-size:22px;font-weight:700;color:var(--tb-navy)}
.tbm-qty output{min-width:26px;text-align:center;font-weight:800;font-size:16px}
.tbm-qty-sm{height:38px;margin-top:8px}
.tbm-qty-sm button{width:36px;font-size:18px}
.tbm-buy-go{flex:1;min-height:52px;font-size:16px}
.tbm-desc{margin-top:22px;border-top:1px solid #e3edf5;padding-top:16px}
.tbm-desc h3{margin:0 0 6px;font:800 15px var(--tb-font);color:var(--tb-navy)}
.tbm-desc p{margin:0!important;font-size:14.5px;line-height:1.6;color:var(--tb-muted)}
.tbm-bag{justify-content:flex-end}
.tbm-bag>.tbm-layer-in{width:min(440px,100%);height:100%;overflow:auto;background:#fff;padding:20px 22px 28px;display:flex;flex-direction:column;transform:translateX(24px);transition:transform .22s}
.tbm-bag.is-on>.tbm-layer-in{transform:none}
.tbm-layer-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.tbm-layer-h h2{margin:0;font:900 24px/1.1 var(--tb-font);color:var(--tb-navy)}
.tbm-pick{margin:0 0 12px!important;font-size:14px;color:var(--tb-muted)}
.tbm-pick b{color:var(--tb-navy)}
.tbm-lines{list-style:none;margin:0;padding:0;display:grid}
.tbm-lines li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;padding:14px 0;border-bottom:1px solid #edf2f6}
.tbm-lines img{width:64px;height:64px;object-fit:contain;border:1px solid #e3edf5;border-radius:12px}
.tbm-line-n{margin:2px 0 0!important;font-weight:800;font-size:14.5px;color:var(--tb-navy);line-height:1.25}
.tbm-line-o{margin:2px 0 0!important;font-size:13px;color:var(--tb-muted);font-weight:600}
.tbm-line-r{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}
.tbm-line-r b{font-weight:900;color:var(--tb-navy)}
.tbm-rm{all:unset;cursor:pointer;font-size:13px;font-weight:700;color:var(--tb-muted);text-decoration:underline;text-underline-offset:2px}
.tbm-sum{margin-top:auto;padding-top:16px;display:grid;gap:8px}
.tbm-sum p{margin:0!important;display:flex;justify-content:space-between;font-weight:800;font-size:16px;color:var(--tb-navy)}
.tbm-sum .tbm-save{color:var(--tb-open);font-size:14.5px}
.tbm-sum .tbm-tax{font-weight:600;font-size:13px;color:var(--tb-muted);display:block}
.tbm-checkout{width:100%;min-height:54px;font-size:16px;margin-top:6px}
.tbm-demo-note{margin-top:8px;padding:12px 14px;border-radius:12px;background:#fff6ef;border:1px solid #ffd9bf;color:#6b3410;font-size:14px;line-height:1.45}
.tbm-sortsheet{align-items:flex-end;justify-content:center}
.tbm-sortsheet>.tbm-layer-in{width:100%;background:#fff;border-radius:22px 22px 0 0;padding:18px 16px calc(20px + env(safe-area-inset-bottom,0px));transform:translateY(24px);transition:transform .2s}
.tbm-sortsheet.is-on>.tbm-layer-in{transform:none}
.tbm-sortlist{display:grid}
.tbm-sortlist button{all:unset;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:16px 6px;border-bottom:1px solid #edf2f6;font-weight:700;font-size:16px;color:var(--tb-navy)}
.tbm-sortlist button[aria-checked="true"]{font-weight:900}
.tbm-sortlist button[aria-checked="true"]::after{content:"";width:12px;height:6px;border-left:3px solid var(--tb-btn-orange,#e04e00);border-bottom:3px solid var(--tb-btn-orange,#e04e00);transform:rotate(-45deg)}
.tbm-toast{position:fixed;left:50%;bottom:24px;z-index:9996;transform:translate(-50%,20px);opacity:0;transition:opacity .2s,transform .2s;display:flex;align-items:center;gap:12px;width:min(440px,calc(100% - 24px));background:var(--tb-navy);color:#fff;border-radius:18px;padding:10px 10px 10px 12px;box-shadow:0 18px 40px rgba(0,26,48,.35)!important}
.tbm-toast.is-on{opacity:1;transform:translate(-50%,0)}
.tbm-toast img{width:40px;height:40px;border-radius:10px;background:#fff;object-fit:contain}
.tbm-toast span{flex:1;min-width:0;font-size:13.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tbm-toast span b{display:block;font-size:14.5px}
.tbm-toast button{all:unset;cursor:pointer;font-weight:800;font-size:14px;background:#fff;color:var(--tb-navy);border-radius:999px;padding:10px 14px}
@media (max-width:1024px){
 .tbm-layout{grid-template-columns:minmax(0,1fr)}
 .tbm-side{position:fixed;inset:0;z-index:9995;max-height:none;background:rgba(0,26,48,.5);opacity:0;visibility:hidden;transition:opacity .2s,visibility 0s .2s;align-items:flex-end;justify-content:flex-end}
 .tbm-side.is-on{opacity:1;visibility:visible;transition:opacity .2s}
 .tbm-side .tbm-layer-in{width:min(440px,100%);height:100%;background:#fff;padding:18px 18px 0;transform:translateX(24px);transition:transform .22s}
 .tbm-side.is-on .tbm-layer-in{transform:none}
 .tbm-side .tbm-layer-h{display:flex}
 .tbm-side .tbm-layer-f{display:flex;gap:10px;padding:14px 0 calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid #e3edf5;background:#fff}
 .tbm-side .tbm-layer-f .tbm-btn{flex:1}
 .tbm-fbody{flex:1;min-height:0}
 .tbm-feelrow{grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto;padding-bottom:6px}
}
@media (min-width:768px) and (max-width:1024px){
 .tbm-bar::after{content:none}
}
@media (max-width:767px){
 .tbi-menu-top{width:calc(100% - 24px)!important}
 .tbm{--tbm-card:156px}
 .tbm-shop{border-radius:16px;padding:14px 16px}
 .tbm-shop-r .tbm-btn{min-height:40px;padding:0 14px;font-size:14px}
 .tbm-demo{font-size:13px}
 .tbm-sortw{display:none}
 .tbm-bar{position:sticky;top:0;z-index:5;background:#fff;padding:8px 0}
 .tbm-grid{grid-template-columns:1fr 1fr;gap:10px}
 .tbm-card-b{padding:0 10px 10px}
 .tbm-name{font-size:14px}
 .tbm-price b{font-size:16px}
 .tbm-add{width:38px;height:38px;flex-basis:38px}
 .tbm-tiles{grid-template-columns:1fr 1fr;gap:8px}
 .tbm-tile{font-size:14px;padding:8px}
 .tbm-tile img{width:44px;height:44px;flex-basis:44px}
 .tbm-dlg{padding:0;align-items:flex-end}
 .tbm-dlg>.tbm-layer-in{border-radius:22px 22px 0 0;max-height:94%;padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px))}
 .tbm-dlg-g{grid-template-columns:1fr}
 .tbm-dlg-img{padding:8px;max-width:260px;margin:0 auto;width:100%}
 .tbm-buy{position:sticky;bottom:0;background:#fff;padding:10px 0 0}
 .tbm-side .tbm-layer-in{width:100%;height:92%;border-radius:22px 22px 0 0;transform:translateY(30px)}
 .tbm-bag>.tbm-layer-in{width:100%}
 .tbm-toast{bottom:calc(80px + env(safe-area-inset-bottom,0px))}
}
@media (prefers-reduced-motion:reduce){.tb-sheet-in,.tbm-layer-in,.tbm-toast,.tb-mn-panel{transition:none!important}.tbm-skel span{animation:none}}
/* Campaign slot: rotating banners */
.tb-campaigns{position:relative;display:grid!important}
.tb-campaigns>.tb-campaign{grid-area:1/1}
.tb-campaigns.is-slider>.tb-campaign{opacity:0;visibility:hidden;transition:opacity .5s,visibility 0s .5s}
.tb-campaigns.is-slider>.tb-campaign.is-cur{opacity:1;visibility:visible;transition:opacity .5s}
.tb-cdots{position:absolute;left:0;right:0;bottom:-26px;display:flex;justify-content:center;gap:8px}
.tb-cdots button{all:unset;cursor:pointer;width:9px;height:9px;border-radius:999px;background:#b9cfe0;transition:width .2s,background .2s}
.tb-cdots button.on{width:26px;background:var(--tb-navy)}
.tb-cdots button:focus-visible{outline:2px solid var(--tb-sky);outline-offset:2px}
.tb-campaigns.is-slider{margin-bottom:26px}
.tbi-menu-top>.tb-campaigns{margin-bottom:clamp(18px,2vw,28px)}
.tbi-menu-top>.tb-campaigns.is-slider{margin-bottom:calc(26px + clamp(18px,2vw,28px))}
/* Lock our button colors: the theme paints any hovered/focused button pink */
.tb-x,.tb-x:hover,.tb-x:focus{background:#f2f6f9;color:var(--tb-navy)}
.tb-x:hover{background:var(--tb-light)}
.tb-storebtn,.tb-storebtn:focus{background:transparent;color:#fff}
.tb-storebtn:hover,.tb-storebtn:focus-visible{background:rgba(255,255,255,.1);color:#fff}
.tb-mn-dd>button,.tb-mn-dd>button:focus,.tb-ht-btn,.tb-ht-btn:focus{background:transparent;color:var(--tb-navy)}
.tb-mn-dd>button:hover,.tb-mn-dd.is-open>button,.tb-ht-btn:hover{background:var(--tb-light);color:var(--tb-navy)}
.tb-hs button,.tb-hs button:hover,.tb-hs button:focus{background:var(--tb-navy);color:#fff}
.tb-seg button,.tb-seg button:hover,.tb-seg button:focus{background:transparent;color:var(--tb-navy)}
.tb-seg button.on,.tb-seg button.on:hover,.tb-seg button.on:focus{background:var(--tb-navy);color:#fff}
.tb-sp-near,.tb-sp-near:hover,.tb-sp-near:focus{background:#fff;color:var(--tb-navy)}
.tb-sp-near:hover{background:var(--tb-light)}
.tb-sp-go,.tb-sp-go:focus{background:var(--tb-navy);color:#fff}
.tb-sp-go:hover{background:#00253f;color:#fff}
.tb-sp-go2,.tb-sp-go2:focus{background:#fff;color:var(--tb-navy)}
.tb-sp-go2:hover{background:var(--tb-light);color:var(--tb-navy)}
.tb-nav-store,.tb-nav-store:hover,.tb-nav-store:focus{background:var(--tb-navy);color:#fff}
.tb-nav-search button,.tb-nav-search button:hover,.tb-nav-search button:focus{background:var(--tb-navy);color:#fff}
.tb-nav-a,.tb-nav-a:hover,.tb-nav-a:focus{background:transparent;color:var(--tb-navy)}
.tb-nav-acc[aria-expanded="true"]{color:var(--tb-btn-orange,#e04e00)!important}
.tb-chiprow button,.tb-chiprow button:focus{background:#f2f6f9;color:var(--tb-navy)}
.tb-chiprow button:hover{background:var(--tb-light);color:var(--tb-navy)}
.tb-mn-loccol button,.tb-nav-loc button,.tb-mn-loccol button:focus,.tb-nav-loc button:focus{background:var(--tb-navy);color:#fff}
.tb-mn-loccol button:hover,.tb-nav-loc button:hover{background:var(--tb-btn-orange,#e04e00);color:#fff}
.tb-bb-in>button,.tb-bb-in>button:hover,.tb-bb-in>button:focus{background:transparent;color:var(--tb-navy)}
.tb-cdots button,.tb-cdots button:hover,.tb-cdots button:focus{background:#b9cfe0}
.tb-cdots button.on,.tb-cdots button.on:hover,.tb-cdots button.on:focus{background:var(--tb-navy)}
.tbm-btn-line,.tbm-btn-line:focus{background:#fff;color:var(--tb-navy)}
.tbm-btn-line:hover{background:var(--tb-light);color:var(--tb-navy)}
.tbm-shop .tbm-btn-line,.tbm-shop .tbm-btn-line:focus{background:transparent;color:#fff}
.tbm-shop .tbm-btn-line:hover{background:rgba(255,255,255,.12);color:#fff}
.tbm-btn-navy,.tbm-btn-navy:focus{background:var(--tb-navy);color:#fff}
.tbm-btn-navy:hover{background:#00253f;color:#fff}
.tbm-btn-orange,.tbm-btn-orange:focus{background:var(--tb-btn-orange,#e04e00);color:#fff}
.tbm-btn-orange:hover{background:#c24100;color:#fff}
.tbm-add,.tbm-add:focus{background:var(--tb-navy);color:#fff}
.tbm-add:hover{background:var(--tb-btn-orange,#e04e00);color:#fff}
.tbm-chip,.tbm-chip:hover,.tbm-chip:focus{background:var(--tb-navy);color:#fff}
.tbm-chip-clear,.tbm-chip-clear:hover,.tbm-chip-clear:focus,.tbm-more,.tbm-more:hover,.tbm-more:focus,.tbm-rm,.tbm-rm:hover,.tbm-rm:focus,.tbm-qty button,.tbm-qty button:hover,.tbm-qty button:focus,.tbm-sortlist button,.tbm-sortlist button:hover,.tbm-sortlist button:focus{background:transparent;color:var(--tb-navy)}
.tbm-rm,.tbm-rm:hover,.tbm-rm:focus{color:var(--tb-muted)}
.tbm-toast button,.tbm-toast button:hover,.tbm-toast button:focus{background:#fff;color:var(--tb-navy)}
.tb-header button,.tb-sheet button,.tbm button,.tb-bb button{text-decoration:none;border:0}
/* Text fields: the theme draws its own border inside our pill inputs */
.tb-hs input,.tb-srch-f input,.tb-nav-search input,.tbm-q,.tb-hs input:focus,.tb-srch-f input:focus,.tbm-q:focus{border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;border-radius:0!important;padding-block:0!important}
.tb-nav-search input,.tb-nav-search input:focus{background:#f2f6f9!important;border:1px solid #e3edf5!important;border-radius:999px!important;padding:0 16px!important}
.tbm-q{padding:0!important;height:46px}
.tb-srch-f input{padding:0!important}
/* Search results: long names truncate, price stays */
.tb-srch-p span{overflow:hidden}
.tb-srch-p b{display:block;max-width:100%}
.tb-srch-p em{flex:0 0 auto;margin-left:6px}
/* Locations dropdown: more room, lighter Shop buttons */
.tb-mn-wide .tb-mn-panel{min-width:560px}
.tb-mn-loccol li{padding:2px 4px 2px 10px}
.tb-mn-loccol button,.tb-mn-loccol button:focus{background:#fff;color:var(--tb-navy);box-shadow:inset 0 0 0 1.5px #b9cfe0!important}
.tb-mn-loccol button:hover{background:var(--tb-navy);color:#fff}
.tb-nav-logo{display:inline-flex}
@media (max-width:767px){
 /* Menu page on phones: compact store bar and demo note so products start sooner */
 .tbm-shop{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px}
 .tbm-eyebrow{font-size:11px!important;margin-bottom:2px!important}
 .tbm-h1{font-size:20px}
 .tbm-shop-meta{font-size:13px;margin-top:3px!important}
 .tbm-shop-r .tbm-btn{min-height:38px;padding:0 12px;font-size:13px}
 .tbm-demo{margin-top:10px;padding:8px 12px;font-size:12.5px;line-height:1.4}
 .tbm-layout{margin-top:10px}
 .tbm-qw{height:44px}
 .tbi-menu-top>.tb-campaigns{margin-bottom:14px}
 .tbi-menu-top>.tb-campaigns.is-slider{margin-bottom:38px}
 /* Product sheet: the Add-to-bag bar sits flush with the bottom edge */
 .tbm-dlg>.tbm-layer-in{padding-bottom:0}
 .tbm-buy{padding:12px 0 calc(14px + env(safe-area-inset-bottom,0px));margin-top:16px;box-shadow:0 -10px 16px -12px rgba(0,36,64,.25)!important}
 .tbm-desc{margin-bottom:8px}
}
/* Footer v2: sign-up, shop/company/resources, both states' stores, socials, legal */
.tb-fwrap>.tb-fsign{grid-column:1/-1;width:100%!important}
.tb-fsign .tbb-signup{margin:0;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:18px 36px}
.tb-fsign .tbb-signup-h{font-size:clamp(26px,2.4vw,38px)}
.tb-fsign .tbb-signup-p{color:var(--tb-navy)}
.tb-f2-w{width:100%!important;min-width:0}
.tb-f2-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.tb-f2-h{margin:0 0 10px;font:900 14px/1 var(--tb-font)!important;letter-spacing:.12em;text-transform:uppercase;color:#9fd8f5!important}
.tb-f2-h a{color:inherit!important}
.tb-f2-h2{margin-top:24px}
.tb-fl{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.tb-fl a,.tb-f2-more a{display:inline-block;padding:5px 0;color:#fff!important;font-weight:600;font-size:15px;opacity:.92}
.tb-fl a:hover,.tb-f2-more a:hover{opacity:1;text-decoration:underline!important;text-underline-offset:3px}
.tb-f2-more{margin-top:10px!important;font-size:14px;color:#cfe3f1}
.tb-f2-base{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2)}
.tb-f2-soc{list-style:none;margin:0;padding:0;display:flex;gap:8px}
.tb-f2-soc a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff!important}
.tb-f2-soc a:hover{background:var(--tb-btn-orange,#e04e00)}
.tb-f2-soc svg{width:20px;height:20px}
.tb-f2-legal{font-size:13.5px;color:#cfe3f1;max-width:62ch}
.tb-f2-legal a{color:#fff!important;font-weight:700;margin-left:10px;text-decoration:underline!important;text-underline-offset:3px}
@media (max-width:1024px){.tb-fsign .tbb-signup{grid-template-columns:1fr}}
@media (max-width:767px){.tb-f2-cols{grid-template-columns:1fr 1fr;gap:22px 16px}.tb-f2-cols>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.tb-f2-cols>div:last-child .tb-f2-h2{margin-top:0;grid-column:2;grid-row:1}.tb-f2-cols>div:last-child .tb-fl:nth-of-type(2){grid-column:2;grid-row:2}.tb-f2-cols>div:last-child .tb-f2-more{grid-column:1/-1}}
.tb-catgrid img{width:52px;height:52px;border-radius:12px;background:#fff;object-fit:contain;border:1px solid #e3edf5}
.tb-catgrid a{min-height:96px}

/* Header: bag count on the original bag icon; category pills sit right under the header */
.tb-hcta .tb-bag{position:relative}
.tb-hcta .tb-bag .tb-bag-n{top:-4px;right:-6px}

/* Reserve the dots' space so the page doesn't move when the banners start rotating */
.tbi-menu-top>.tb-campaigns,.tbi-menu-top>.tb-campaigns.is-slider{margin-bottom:calc(26px + clamp(18px,2vw,28px))}
@media (max-width:767px){.tbi-menu-top>.tb-campaigns,.tbi-menu-top>.tb-campaigns.is-slider{margin-bottom:38px}}
.tbm-skel{min-height:900px}

html.tb-has-cart .tb-hcta .tb-bag{display:block}

/* =================== House of Brands =================== */
.tbh-hero-pack .tbi-hero-img img{object-fit:contain;object-position:center;background:linear-gradient(160deg,#0a4a77,#003459);padding:clamp(16px,3vw,48px)}
.tbh-facts-sec{padding-block:clamp(18px,2.4vw,30px) 0!important}
.tbh-facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tbh-facts li{background:#fff;border:1px solid #e3edf5;border-radius:18px;padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.tbh-facts b{font:900 clamp(20px,1.8vw,26px)/1.05 var(--tb-font);color:var(--tb-navy)}
.tbh-facts span{font-size:14.5px;font-weight:600;color:var(--tb-muted)}
.tbh-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-self:center}
.tbh-trio img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff;border:1px solid #e3edf5;border-radius:18px}
.tbh-trio img:nth-child(2){transform:translateY(-18px)}
.tbh-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.tbh-filter button,.tbh-filter button:hover,.tbh-filter button:focus{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px;border-radius:999px;background:#fff;border:1.5px solid #b9cfe0;color:var(--tb-navy);font:800 14.5px/1 var(--tb-font)}
.tbh-filter button b{font-size:12px;background:#eaf3f9;border-radius:999px;padding:3px 8px}
.tbh-filter button.on{background:var(--tb-navy);border-color:var(--tb-navy);color:#fff}
.tbh-filter button.on b{background:rgba(255,255,255,.18);color:#fff}
.tbh-filter button:focus-visible{outline:2px solid var(--tb-sky);outline-offset:2px}
.tbh-strains{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.tbh-strain{display:flex;flex-direction:column;background:#fff;border:1px solid #e3edf5;border-radius:22px;overflow:hidden;transition:box-shadow .2s,border-color .2s}
.tbh-strain[hidden]{display:none}
.tbh-strain:hover{box-shadow:0 16px 36px rgba(0,36,64,.12)!important;border-color:#cfe0ec}
.tbh-strain-img{aspect-ratio:1;background:#fff;border-bottom:1px solid #eef3f7}
.tbh-strain-img img{width:100%;height:100%;object-fit:contain}
.tbh-strain-b{display:flex;flex-direction:column;gap:10px;padding:16px 18px 18px;flex:1}
.tbh-strain-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0!important}
.tbh-thc{font-weight:800;font-size:13.5px;color:var(--tb-navy);background:#eaf3f9;border-radius:999px;padding:4px 10px}
.tbm-strain.is-new{background:var(--tb-btn-orange,#e04e00)}
.tbh-strain-h{margin:0;font:900 21px/1.1 var(--tb-font);color:var(--tb-navy);letter-spacing:-.01em}
.tbh-strain small,.tbh-terps small{display:block;font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--tb-muted);margin-bottom:3px}
.tbh-lin{margin:0!important;font-weight:700;font-size:14.5px;color:var(--tb-ink)}
.tbh-terps ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.tbh-terps li{font-size:12.5px;font-weight:700;color:#0b6e99;background:#e6f5fc;border-radius:999px;padding:5px 10px}
.tbh-desc{margin:0!important;font-size:14.5px;line-height:1.55;color:var(--tb-muted)}
.tbh-sizes{display:flex;flex-wrap:wrap;gap:8px;margin:auto 0 0!important;padding-top:4px}
.tbh-sizes span{font-size:13.5px;font-weight:700;color:var(--tb-muted);border:1px solid #e3edf5;border-radius:12px;padding:7px 10px}
.tbh-sizes b{color:var(--tb-navy);font-weight:900;margin-left:4px}
.tbh-shop{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:999px;background:var(--tb-navy);color:#fff!important;font-weight:800;font-size:15px;margin-top:4px}
.tbh-shop:hover{background:var(--tb-btn-orange,#e04e00)}
.tbh-shop-line{background:#fff;color:var(--tb-navy)!important;box-shadow:inset 0 0 0 2px var(--tb-navy)!important}
.tbh-shop-line:hover{background:var(--tb-navy);color:#fff!important}
.tbh-where{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.tbh-where li{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid #e3edf5;border-radius:18px;padding:14px 14px 14px 18px}
.tbh-where li>a:first-child{display:flex;flex-direction:column;color:var(--tb-navy)!important;min-width:0}
.tbh-where b{font-weight:900;font-size:16px}
.tbh-where small{font-size:13.5px;font-weight:600;color:var(--tb-muted)}
.tbh-where-shop{flex:0 0 auto;font-weight:800;font-size:14px;color:#fff!important;background:var(--tb-navy);border-radius:999px;padding:10px 16px}
.tbh-where-shop:hover{background:var(--tb-btn-orange,#e04e00)}
.tbh-flag{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tbh-flag-card{display:grid;grid-template-rows:auto 1fr;border-radius:24px;overflow:hidden;background:var(--tb-navy);color:#fff!important;transition:transform .2s}
.tbh-flag-card:hover{transform:translateY(-3px)}
.tbh-flag-mo{background:#0b4f7d}
.tbh-flag-imgs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px 18px 0}
.tbh-flag-imgs img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:16px}
.tbh-flag-b{display:flex;flex-direction:column;gap:6px;padding:20px 24px 24px}
.tbh-flag-b small{font-size:12px;font-weight:800;letter-spacing:.14em;color:#9fd8f5}
.tbh-flag-b b{font:900 clamp(24px,2.2vw,32px)/1.05 var(--tb-font)}
.tbh-flag-b span{font-size:15px;color:#cfe3f1;font-weight:600}
.tbh-flag-b em{font-style:normal;font-weight:800;color:#ffb36b;margin-top:6px}
.tbh-brands{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tbh-brand{display:flex;flex-direction:column;background:#fff;border:1px solid #e3edf5;border-radius:22px;overflow:hidden;color:var(--tb-navy)!important;transition:box-shadow .2s,border-color .2s}
.tbh-brand:hover{box-shadow:0 16px 36px rgba(0,36,64,.12)!important;border-color:#cfe0ec}
.tbh-brand-img{aspect-ratio:1;background:#fff;display:block}
.tbh-brand-img img{width:100%;height:100%;object-fit:cover}
.tbh-brand-b{display:flex;flex-direction:column;gap:4px;padding:14px 18px 18px}
.tbh-brand-b small{font-size:13px;font-weight:700;color:var(--tb-muted)}
.tbh-brand-b b{font:900 21px/1.1 var(--tb-font)}
.tbh-brand-b em{font-style:normal;font-weight:800;font-size:14px;color:var(--tb-btn-orange,#e04e00);margin-top:4px}
.tbh-prods{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
.tbh-prod{display:flex;flex-direction:column;background:#fff;border:1px solid #e3edf5;border-radius:18px;overflow:hidden}
.tbh-prod img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff;padding:10px}
.tbh-prod>div{display:flex;flex-direction:column;gap:4px;padding:2px 14px 14px;flex:1}
.tbh-prod h3{margin:0;font:800 15px/1.25 var(--tb-font);color:var(--tb-navy)}
.tbh-prod-p{margin:auto 0 0!important;padding-top:6px;font-size:13.5px;color:var(--tb-muted);font-weight:600}
.tbh-prod-p b{font-size:17px;font-weight:900;color:var(--tb-navy)}
.tbi-chips.tbh-formats li{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.25)}
@media (max-width:1024px){.tbh-facts{grid-template-columns:1fr 1fr}.tbh-brands{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){
 .tbh-flag{grid-template-columns:1fr}
 .tbh-strains{grid-template-columns:1fr}
 .tbh-strain{display:grid;grid-template-columns:118px minmax(0,1fr)}
 .tbh-strain-img{aspect-ratio:auto;border-bottom:0;border-right:1px solid #eef3f7;padding:8px}
 .tbh-strain-img img{height:auto;aspect-ratio:1}
 .tbh-strain-b{padding:14px;gap:8px}
 .tbh-strain-h{font-size:19px}
 .tbh-desc{font-size:14px}
 .tbh-shop{grid-column:1/-1}
 .tbh-prods{grid-template-columns:1fr 1fr;gap:10px}
 .tbh-brands{gap:10px}
 .tbh-brand-b{padding:10px 12px 14px}
 .tbh-brand-b b{font-size:17px}
 .tbh-trio{gap:8px}
 .tbh-facts li{padding:14px}
}
.tbi-chips.tbh-formats{gap:8px;margin-top:4px}
.tbi-chips.tbh-formats li{background:rgba(255,255,255,.1)!important;color:#fff!important;border:1px solid rgba(255,255,255,.3)!important;border-radius:999px;padding:7px 13px!important;font-size:13px;font-weight:700;line-height:1.2}
@media (max-width:767px){.tbh-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}
