/* ============================================================
   TELEVISION — every colour, radius, weight and the typeface
   come from ds.css tokens. Section classes are tv- prefixed so
   nothing collides with the design system or the main site CSS.
   ============================================================ */

:root{
  --tv-ink:    var(--od-black,   #14151b);
  --tv-deep:   #0b0c10;                      /* a deeper shade of --od-black */
  --tv-light:  var(--od-grey-50, #F4F6FB);
  --tv-line:   var(--od-grey-200,#E3E7F0);
  --tv-muted:  var(--od-grey-600,#5E6488);
  --tv-blue:   var(--myt-blue,   #153ED9);
  --tv-digital:var(--myt-digital,#0a6ed2);
  --tv-aqua:   var(--myt-aqua,   #00B4C8);
  --tv-amber:  var(--amber-gold, #EBA72A);
  --tv-dline:  rgba(255,255,255,.14);
  --tv-dmuted: rgba(255,255,255,.66);
}

body{font-family:var(--font,'Poppins',sans-serif);background:#fff;color:var(--tv-ink)}

/* ---------- shared band + heading furniture ---------- */
.tv-band{padding:clamp(64px,8vw,120px) 0}
.tv-band--light{background:var(--tv-light)}
/* a deep brand gradient instead of flat black — indigo into blue into teal,
   lit by two soft radial glows */
.tv-band--dark{position:relative;overflow:hidden;isolation:isolate;color:#fff;
  background:
    radial-gradient(880px 520px at 16% 10%, rgba(21,62,217,.46), transparent 62%),
    radial-gradient(760px 520px at 88% 90%, rgba(0,180,200,.32), transparent 66%),
    linear-gradient(135deg,#0f1136,#141a4a 42%,#0e2b50 76%,#0a3346)}
.tv-band--dark > *{position:relative;z-index:1}
.tv-band--dark h2,.tv-band--dark h3,.tv-band--dark h4{color:#fff}
.tv-band--dark p{color:var(--tv-dmuted)}
.tv-wrap{max-width:var(--container,1270px);margin:0 auto;padding:0 24px}
@media (max-width:760px){.tv-wrap{padding:0 18px}}

.tv-head{max-width:810px;margin:0 auto clamp(36px,4vw,56px);text-align:center}
.tv-head .sec__eyebrow{display:block;margin-bottom:12px}
.tv-head h2{font-size:clamp(30px,4.2vw,54px);
  letter-spacing:-.03em;line-height:1.08;margin:0 0 16px}
.tv-head p{font-size:clamp(15px,1.3vw,18px);line-height:1.65;margin:0;color:var(--tv-muted)}
.tv-band--dark .tv-head p{color:var(--tv-dmuted)}
.tv-band--dark .tv-head .sec__eyebrow{color:var(--tv-aqua)}

/* ============================================================
   1 — HERO v2 : copy left, TV right, full width, animated
   ============================================================ */
.tv-hero{position:relative;overflow:hidden;isolation:isolate;background:var(--tv-deep);
  color:#fff;padding: 170px 0 60px;}
.tv-hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(780px 520px at 76% 44%, rgba(21,62,217,.44), transparent 66%),
    radial-gradient(560px 400px at 8% 86%, rgba(0,180,200,.22), transparent 70%)}
/* fine grid texture, Samsung-ish */
.tv-hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:72px 72px;
  mask:radial-gradient(85% 70% at 40% 45%,#000 20%,transparent 80%)}

.tv-hero__in{position:relative;z-index:1}
.tv-hero__grid{display:grid;grid-template-columns:1fr 1.12fr;
  gap:clamp(32px,4vw,64px);align-items:center}
.tv-hero__grid > *{min-width:0}

.tv-hero__brand{font-size:clamp(12px,1.1vw,15px);font-weight:var(--fw-semibold,600);
  letter-spacing:.42em;text-transform:uppercase;color:rgba(255,255,255,.82);margin:0 0 18px}
.tv-hero h1{font-size:clamp(32px,3.9vw,54px);font-weight:var(--fw-semibold,600);
  letter-spacing:-.035em;line-height:1.02;margin:0 0 18px;color:#fff}
.tv-hero h1 em{font-style:normal;color:var(--tv-aqua)}
.tv-hero__lede{font-size:clamp(15px,1.25vw,18px);line-height:1.65;color:var(--tv-dmuted);
  max-width:46ch;margin:0 0 28px}

/* the saving reads as a headline statistic, not a control:
   no capsule, no border, no fill — an aqua rule carries it instead */
.tv-save{display:block;margin:0 0 clamp(26px,3.2vw,36px);
  padding-left:22px;border-left:3px solid var(--tv-aqua)}
.tv-save__rule{display:none}
.tv-save__lbl{display:block;font-size:11px;font-weight:var(--fw-bold,700);
  letter-spacing:.2em;text-transform:uppercase;color:var(--tv-dmuted);margin-bottom:5px}
.tv-save__amt{display:block;font-size:clamp(40px,4.8vw,66px);
  font-weight:var(--fw-extrabold,800);letter-spacing:-.045em;line-height:.95;
  color:var(--tv-aqua)}
.tv-save__on{display:block;font-size:13px;color:var(--tv-dmuted);margin-top:7px}

.tv-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:clamp(28px,3.5vw,40px)}
.tv-btn{display:inline-flex;align-items:center;gap:10px;cursor:pointer;text-decoration:none;
  font-family:inherit;font-weight:var(--fw-semibold,600);font-size:15px;line-height:1;
  border-radius:var(--r-pill,999px);padding:16px 28px;border:1.5px solid transparent;
  transition:transform .18s,background .18s,color .18s,border-color .18s,box-shadow .18s}
.tv-btn svg{width:16px;height:16px}
.tv-btn--light{background:#fff;color:var(--tv-ink)}
.tv-btn--light:hover{background:var(--tv-aqua);color:var(--tv-deep);transform:translateY(-2px)}
.tv-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.tv-btn--ghost:hover{background:#fff;border-color:#fff;color:var(--tv-ink);transform:translateY(-2px)}
.tv-btn--blue{background:var(--tv-blue);color:#fff}
.tv-btn--blue:hover{background:var(--tv-ink);transform:translateY(-2px)}
.tv-btn--dark{background:var(--tv-ink);color:#fff}
.tv-btn--dark:hover{background:var(--tv-blue);transform:translateY(-2px)}
.tv-btn--outline{background:transparent;color:var(--tv-ink);border-color:var(--tv-ink)}
.tv-btn--outline:hover{background:var(--tv-ink);color:#fff;transform:translateY(-2px)}
a.tv-btn--dark:hover {color: #fff !important;}
/* the stat strip under the copy */
.tv-stats{display:flex;flex-wrap:wrap;align-items:stretch;
  border-top:1px solid var(--tv-dline);padding-top:22px;margin:0;list-style:none}
.tv-stats li{padding-right:26px;margin-right:26px;border-right:1px solid var(--tv-dline)}
.tv-stats li:last-child{border-right:0;margin-right:0;padding-right:0}
.tv-stats b{display:block;font-size:clamp(16px,1.5vw,21px);font-weight:var(--fw-extrabold,800);
  letter-spacing:-.02em;color:#fff;line-height:1.1}
.tv-stats span{display:block;font-size:11.5px;color:var(--tv-dmuted);margin-top:5px;
  letter-spacing:.06em;text-transform:uppercase;font-weight:var(--fw-semibold,600)}

/* --- the animated TV, bleeding off the right --- */
.tv-stage{position:relative;margin-right:clamp(-80px,-4vw,0px)}
.tv-stage__glow{position:absolute;left:52%;top:10%;width:78%;height:70%;z-index:0;
  transform:translateX(-50%);border-radius:50%;filter:blur(58px);
  background:radial-gradient(circle at 50% 50%,rgba(0,180,200,.5),rgba(21,62,217,.4) 46%,transparent 74%);
  animation:tvGlow 7s ease-in-out infinite}
@keyframes tvGlow{0%,100%{opacity:.55;transform:translateX(-50%) scale(.94)}
                  50%    {opacity:1;  transform:translateX(-50%) scale(1.06)}}
.tv-stage__img{position:relative;z-index:1;display:block;width:100%;height:auto;
  animation:tvFloat 8s ease-in-out infinite}
@keyframes tvFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

.tv-stage__sweep{position:absolute;z-index:2;left:6%;right:6%;top:3%;height:54%;
  pointer-events:none;overflow:hidden;border-radius:12px}
.tv-stage__sweep::after{content:"";position:absolute;top:-30%;bottom:-30%;width:34%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.17) 48%,transparent);
  transform:skewX(-14deg);animation:tvSweep 6.5s ease-in-out infinite}
@keyframes tvSweep{0%{left:-40%}55%,100%{left:120%}}

.tv-patch{position:absolute;z-index:3;left:-5%;bottom:15%;
  width:clamp(94px,11vw,142px);aspect-ratio:1;border-radius:50%;
  display:grid;place-items:center;text-align:center;line-height:1.2;
color:#fff;
  animation:tvFloat 6s ease-in-out infinite;animation-delay:-2s}
.tv-patch b{display:block;font-size:clamp(12px,1.3vw,20px);font-weight:var(--fw-extrabold,800)}
.tv-patch i{display:block;font-style:normal;font-size:clamp(9px,1vw,14.5px);
  color:rgba(255,255,255,.88);margin-top:3px}

@media (prefers-reduced-motion:reduce){
  .tv-stage__glow,.tv-stage__img,.tv-stage__sweep::after,.tv-patch{animation:none}
}
@media (max-width:980px){
  .tv-hero__grid{grid-template-columns:1fr;gap:40px}
  .tv-hero__lede{max-width:none}
  .tv-stage{margin-right:0;order:-1}
  .tv-patch{left:0;bottom:8%}
}
@media (max-width:560px){
  .tv-hero__cta .tv-btn{width:100%;justify-content:center}
  .tv-save{padding-left:16px}
  .tv-save__on{font-size:12px}
  .tv-stats li{padding-right:16px;margin-right:16px}
  .tv-stats b{font-size:16px}
  .tv-stats span{font-size:10px}
}

/* ============================================================
   2 — WHY BUY WITH US  (ZERO card leads)
   ============================================================ */
.tv-why{display:grid;grid-template-columns:1.12fr 1fr;gap:20px;align-items:stretch}
.tv-why > *{min-width:0}

.tv-zero{position:relative;overflow:hidden;isolation:isolate;
  border-radius:var(--r-lg,50px);padding:clamp(28px,4vw,52px);color:#fff;
  background:linear-gradient(145deg,var(--tv-blue),var(--tv-digital) 52%,var(--tv-aqua));
  display:flex;flex-direction:column;justify-content:center}
.tv-zero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(520px 340px at 92% 8%,rgba(255,255,255,.22),transparent 62%)}
/* scrim: keeps white copy legible wherever the gradient reaches its aqua end */
.tv-zero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(100deg,rgba(3,8,38,.88),rgba(3,8,38,.74) 48%,
                             rgba(3,8,38,.34) 76%,transparent 96%)}
.tv-zero > *{position:relative;z-index:1}
.tv-zero__only{display:inline-flex;align-items:center;gap:9px;align-self:flex-start;
  background:rgba(0,0,0,.26);border:1px solid rgba(255,255,255,.4);
  border-radius:var(--r-pill,999px);padding:8px 18px;margin-bottom:22px;
  font-size:14px;font-weight:var(--fw-semi-bold,600);}
.tv-zero__only svg{width:14px;height:14px}
.tv-zero__big{font-size:clamp(34px,5.4vw,66px);font-weight:600;
  letter-spacing:-.04em;line-height:1.1;margin:0 0 18px;color:#fff}
.tv-zero__big span{display:block}
.tv-zero__big i{font-style:normal;color:var(--tv-aqua)}
.tv-zero p{font-size:clamp(14.5px,1.2vw,17px);line-height:1.6;color:rgba(255,255,255,.9);
  margin:0 0 8px;max-width:46ch}
.tv-zero p.tv-zero__fine{font-size:13px;color:rgba(255,255,255,.74);margin:6px 0 0}

.tv-perks{display:grid;gap:20px}
.tv-perk{position:relative;overflow:hidden;isolation:isolate;
  border-radius:var(--r-lg,50px);padding:60px 30px;
  flex-direction:column;justify-content:center;
  transition:transform .2s,box-shadow .2s}
.tv-perk:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(16,16,24,.12)}
.tv-perk--a{background:var(--od-paleblue,#DDEBF9)}
.tv-perk--b{background:var(--od-paleblue,#DDEBF9)}
.tv-perk > *{position:relative;z-index:1}

/* the oversized watermark bleeding off the corner */
.tv-perk__bg{position:absolute;z-index:0;right:-26px;bottom:-34px;
  width:clamp(140px,17vw,200px);height:auto;color:var(--tv-blue);opacity:.15;
  pointer-events:none}
.tv-perk--b .tv-perk__bg{color:var(--tv-blue)}
.tv-perk:hover .tv-perk__bg{opacity:.2;transition:opacity .2s}

.tv-perk__ic{flex:0 0 auto;width:56px;height:56px;border-radius:18px;display:grid;
  place-items:center;background:#fff;color:var(--tv-blue);margin-bottom:20px;
  box-shadow:0 6px 16px rgba(16,16,24,.08)}
.tv-perk__ic svg{width:27px;height:27px}
.tv-perk h3{font-size:clamp(21px,1.85vw,27px);font-weight:var(--fw-semibold,600);
  margin:0 0 9px;letter-spacing:-.02em;line-height:1.15;color:var(--tv-blue)}
.tv-perk--b h3{color:var(--tv-blue)}
.tv-perk p{margin:0;font-size:clamp(15.5px,1.25vw,17.5px);line-height:1.5;
  color:var(--od-grey-700,#3C4366);font-weight:var(--fw-medium,500)}

/* the two cards sit side by side under the Zero card on wide screens */
@media (min-width:981px){
  .tv-perks{grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch}
  .tv-perks > *{min-width:0}
}

@media (max-width:980px){.tv-why{grid-template-columns:1fr}}
@media (max-width:560px){
  .tv-zero,.tv-perk{border-radius:var(--r-md,40px)}
}

/* ============================================================
   3 — PRODUCT LISTING
   ============================================================ */
.tv-models{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.tv-model{position:relative;background:#fff;border:1px solid var(--tv-line);
  border-radius:var(--r-lg,50px);overflow:hidden;display:flex;flex-direction:column;
  transition:transform .22s,box-shadow .22s,border-color .22s; margin-bottom: 30px;}
.tv-model:hover{transform:translateY(-6px);border-color:#cfd7ea;
  box-shadow:0 30px 70px rgba(16,16,24,.14)}
.tv-model.is-picked{border-color:var(--tv-blue);
  box-shadow:0 0 0 2px var(--tv-blue) inset,0 24px 56px rgba(21,62,217,.14)}

/* ---- product shot ---- */
.tv-model__shot{position:relative;
  padding:clamp(12px,1.5vw,20px) clamp(20px,3vw,40px) clamp(0px,1.7vw,0px);
  display:grid;place-items:center;min-height:0;
  background:var(--tv-light);    padding-top: 40px !important;}
.tv-model__shot img{width:100%;max-width:430px;height:auto;display:block;
  filter:drop-shadow(0 26px 44px rgba(0,0,0,.3))}

/* ---- body ---- */
.tv-model__body{padding:clamp(24px,3vw,38px);display:flex;flex-direction:column;flex:1 1 auto;    background: var(--tv-light);}

/* size switch + compare, above the title */
.tv-model__top{display:flex;align-items:center;justify-content:space-between;gap:14px;
  flex-wrap:wrap;margin-bottom:20px}
.tv-sizes{display:inline-flex;gap:5px;
  background:var(--tv-light);border:1.5px solid var(--tv-line);
  border-radius:var(--r-pill,999px);padding:5px}
.tv-sizes button{border:0;background:transparent;font-family:inherit;cursor:pointer;
  font-size:15.5px;font-weight:var(--fw-bold,700);color:var(--tv-muted);
  border-radius:var(--r-pill,999px);padding:11px 24px;transition:.16s;line-height:1}
.tv-sizes button:hover{color:var(--tv-ink);background:rgba(21,62,217,.07)}
.tv-sizes button.is-on{background:var(--tv-blue);color:#fff;
  box-shadow:0 8px 20px rgba(21,62,217,.3)}
.tv-sizes button.is-on:hover{background:var(--tv-blue)}
.tv-sizes button:focus-visible{outline:2px solid var(--tv-blue);outline-offset:2px}

/* compare checkbox */
.tv-pick{display:inline-flex;align-items:center;gap:9px;cursor:pointer;
  font-size:13.5px;font-weight:var(--fw-semibold,600);color:var(--tv-muted);
  padding:6px 2px;user-select:none}
.tv-pick:hover{color:var(--tv-ink)}
.tv-pick__in{position:absolute;opacity:0;width:0;height:0}
.tv-pick__box{width:22px;height:22px;border-radius:7px;flex:0 0 auto;display:grid;
  place-items:center;background:#fff;border:1.8px solid var(--od-grey-400,#A7AECC);
  transition:.15s}
.tv-pick__box svg{width:0;height:0;color:#fff}
.tv-pick__in:checked + .tv-pick__box{background:var(--tv-blue);border-color:var(--tv-blue)}
.tv-pick__in:checked + .tv-pick__box svg{width:13px;height:13px}
.tv-pick__in:checked ~ .tv-pick__txt{color:var(--tv-blue)}
.tv-pick__in:focus-visible + .tv-pick__box{box-shadow:0 0 0 3px rgba(21,62,217,.25)}
.tv-pick__in:disabled + .tv-pick__box{opacity:.4}
.tv-pick:has(.tv-pick__in:disabled){cursor:not-allowed;opacity:.55}

.tv-model__body h3{font-size:clamp(21px,2.1vw,28px);font-weight:var(--fw-bold,700);
  letter-spacing:-.025em;margin:0 0 7px;line-height:1.15}
.tv-model__sub{font-size:13.5px;color:var(--tv-muted);margin:0 0 22px;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:-.01em}

.tv-model .feat-list{margin:0 0 24px;display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.tv-model .feat-list li{font-size:14px !important;line-height:1.4;min-width:0}

/* ---- price: no panel, badge hugging the figure ---- */
.tv-price{margin-top:auto;padding-top:20px;border-top:1px solid var(--tv-line)}
.tv-price__was{font-size:18px;color:var(--tv-muted);text-decoration:line-through;margin:0}
.tv-price__row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:4px}
.tv-price__now{font-size:clamp(28px,3vw,38px);font-weight:var(--fw-extrabold,800);
  letter-spacing:-.03em;margin:0;line-height:1;color:var(--tv-ink)}
.tv-price__mo{margin:10px 0 0;font-size:20px;color:#000;
  font-weight:var(--fw-medium,500)}
.tv-price__mo b{color:var(--tv-ink);font-weight:var(--fw-bold,700)}

.tv-model__flag{display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;text-align:center;flex:0 0 auto;
  background:var(--amber-gold,#EBA72A);color:var(--tv-ink);
  border-radius:16px;padding:9px 14px;
  box-shadow:0 10px 22px rgba(235,167,42,.34)}
.tv-model__flag small{display:block;font-size:9px;font-weight:var(--fw-bold,700);
  letter-spacing:.14em;text-transform:uppercase;opacity:.78;line-height:1}
.tv-model__flag b{display:block;font-size:clamp(15px,1.5vw,19px);
  font-weight:var(--fw-extrabold,800);letter-spacing:-.02em;line-height:1.1;white-space:nowrap}

/* zero interest / zero deposit */
.tv-zeroline{display:inline-flex;align-items:center;gap:9px;align-self:flex-start;
  margin:5px 0 0;border-radius:var(--r-pill,999px);color:var(--tv-blue);
  font-size:13px;font-weight:var(--fw-bold,700);letter-spacing:.01em}
.tv-zeroline svg{width:15px;height:15px;flex:0 0 auto}

.tv-model .tv-btn{width:100%;justify-content:center;margin-top:20px}

@media (max-width:1180px){.tv-model .feat-list{grid-template-columns:1fr}}
@media (max-width:900px){
  .tv-models{grid-template-columns:1fr}
  .tv-model .feat-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:620px){.tv-model .feat-list{grid-template-columns:1fr}}
@media (max-width:560px){
  .tv-model{border-radius:var(--r-md,40px)}
  .tv-sizes button{padding:11px 18px;font-size:15px}
}

/* ============================================================
   COMPARE — sticky tray + modal
   ============================================================ */
.tv-tray{position:fixed;left:0;right:0;bottom:0;z-index:60;
  background:rgba(11,12,16,.96);backdrop-filter:blur(10px);
  border-top:1px solid rgba(255,255,255,.14);
  transform:translateY(110%);visibility:hidden;pointer-events:none;
  transition:transform .28s cubic-bezier(.4,0,.2,1),visibility 0s linear .28s}
.tv-tray.is-open{transform:translateY(0);visibility:visible;pointer-events:auto;
  transition:transform .28s cubic-bezier(.4,0,.2,1),visibility 0s}
.tv-tray__in{display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:16px 0;flex-wrap:wrap}
.tv-tray__items{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}
.tv-tray__slot{display:flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  border-radius:16px;padding:8px 10px 8px 8px;max-width:270px}
.tv-tray__slot img{width:46px;height:34px;object-fit:contain;flex:0 0 auto;
  background:rgba(255,255,255,.08);border-radius:9px}
.tv-tray__slot span{font-size:12.5px;font-weight:var(--fw-semibold,600);color:#fff;
  line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tv-tray__x{border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;
  width:24px;height:24px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;
  font-size:15px;line-height:1;transition:.15s}
.tv-tray__x:hover{background:var(--energy-coral,#EB5D5B)}
.tv-tray__hint{font-size:13px;color:rgba(255,255,255,.7);margin:0}
.tv-tray__act{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.tv-tray__clear{border:0;background:transparent;color:rgba(255,255,255,.72);
  font-family:inherit;font-size:13.5px;font-weight:var(--fw-semibold,600);cursor:pointer;
  text-decoration:underline;padding:8px}
.tv-tray__clear:hover{color:#fff}
.tv-tray .tv-btn{padding:14px 26px}
.tv-tray .tv-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}

/* modal */
.tv-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px}
.tv-modal[hidden]{display:none}
.tv-modal__back{position:absolute;inset:0;background:rgba(8,9,20,.72);
  backdrop-filter:blur(4px)}
.tv-modal__box{position:relative;z-index:1;background:#fff;color:var(--tv-ink);
  border-radius:var(--r-md,40px);width:min(1100px,100%);max-height:88vh;
  display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 40px 100px rgba(0,0,0,.45)}
.tv-modal__head{display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:clamp(20px,3vw,30px) clamp(20px,3vw,34px);border-bottom:1px solid var(--tv-line)}
.tv-modal__head h2{margin:0;font-size:clamp(20px,2.3vw,28px);font-weight:var(--fw-bold,700);
  letter-spacing:-.02em}
.tv-modal__x{border:0;background:var(--tv-light);color:var(--tv-ink);cursor:pointer;
  width:42px;height:42px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;
  transition:.15s}
.tv-modal__x svg{width:18px;height:18px}
.tv-modal__x:hover{background:var(--tv-ink);color:#fff}
.tv-modal__body{overflow:auto;-webkit-overflow-scrolling:touch;
  padding:clamp(18px,2.4vw,26px) clamp(18px,3vw,34px) clamp(24px,3vw,34px)}

.tv-ctab{width:100%;border-collapse:collapse;font-size:14.5px}
.tv-ctab th,.tv-ctab td{padding:14px 16px;text-align:left;vertical-align:top;
  border-bottom:1px solid var(--tv-line)}
.tv-ctab tbody tr:last-child td,.tv-ctab tbody tr:last-child th{border-bottom:0}
.tv-ctab tbody tr:nth-child(odd) td,.tv-ctab tbody tr:nth-child(odd) th{background:var(--tv-light)}
.tv-ctab th[scope=row]{font-weight:var(--fw-bold,700);color:var(--tv-ink);
  width:190px;white-space:nowrap}
.tv-ctab thead th{border-bottom:2px solid var(--tv-line);background:#fff;vertical-align:bottom}
.tv-chead{display:flex;flex-direction:column;gap:10px;min-width:150px}
.tv-chead img{width:100%;max-width:170px;height:auto;border-radius:14px;
  background:var(--tv-light);padding:8px}
.tv-chead b{font-size:15px;font-weight:var(--fw-bold,700);line-height:1.25;
  letter-spacing:-.015em}
.tv-chead span{font-size:12px;color:var(--tv-muted);
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.tv-ctab .is-price{font-size:20px;font-weight:var(--fw-extrabold,800);
  letter-spacing:-.02em;color:var(--tv-ink)}
.tv-modal__hint{display:none;font-size:12.5px;color:var(--tv-muted);text-align:center;
  margin:14px 0 0}
.tv-ctab .is-save{display:inline-block;margin-top:4px;background:var(--amber-gold,#EBA72A);
  color:var(--tv-ink);border-radius:var(--r-pill,999px);padding:4px 11px;
  font-size:11.5px;font-weight:var(--fw-bold,700)}
@media (max-width:760px){
  .tv-modal{padding:0}
  .tv-modal__box{border-radius:0;max-height:100vh;height:100vh;width:100%}
  .tv-modal__body{padding:16px}
  .tv-ctab{font-size:13px;min-width:520px}
  .tv-ctab th,.tv-ctab td{padding:11px 12px}
  .tv-ctab th[scope=row]{width:130px}
  .tv-modal__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .tv-modal__hint{display:block}
  .tv-tray__in{padding:12px 0;gap:12px}
  .tv-tray__slot span{display:none}
  .tv-tray__slot{padding:7px;max-width:none}
  .tv-tray .tv-btn{flex:1 1 auto;justify-content:center}
}
body.tv-locked{overflow:hidden}

/* ============================================================
   4 — BIG PICTURE, BIGGER SOUND
   ============================================================ */
.tv-sound{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(28px,4vw,60px);
  align-items:center}
.tv-sound > *{min-width:0}
.tv-sound h2{font-size:clamp(32px,4.6vw,58px);
  letter-spacing:-.035em;line-height:1.04;margin:14px 0 38px}
.tv-sound h2 em{font-style:normal;color:var(--tv-aqua)}
.tv-sound p{font-size:clamp(15px,1.25vw,18px);line-height:1.65;margin:0 0 26px;
  max-width:46ch}
/* a lit backdrop panel — a black soundbar needs something to read against */
.tv-sound__art{position:relative;display:grid;place-items:center;
  border-radius:var(--r-lg,50px);padding:clamp(30px,4vw,58px);


  backdrop-filter:blur(8px);
}
.tv-sound__art::before{content:"";position:absolute;inset:10% 8%;border-radius:50%;
  filter:blur(46px);z-index:0;
  background:radial-gradient(circle,rgba(0,180,200,.55),rgba(21,62,217,.34) 52%,transparent 76%);
  animation:tvGlowB 7s ease-in-out infinite}
@keyframes tvGlowB{0%,100%{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
.tv-sound__art img{position:relative;z-index:1;width:100%;max-width:560px;height:auto;
  display:block;animation:tvFloat 7.5s ease-in-out infinite}

.tv-roundel{position:absolute;z-index:2;right:-2%;bottom:-4%;
  width:clamp(104px,14vw,180px);aspect-ratio:1;border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;line-height:1.15;color:#fff;
  background:var(--tv-aqua);box-shadow:0 18px 44px rgba(0,180,200,.4);
  font-size:clamp(13px,1.5vw,18px);font-weight:var(--fw-extrabold,800);padding:12px}

  .tv-roundel2{position:absolute;z-index:2;right:-2%;bottom:-4%;
    width:35%;aspect-ratio:1;border-radius:50%;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-align:center;line-height:1.15;color:#fff;
    background:var(--tv-aqua);box-shadow:0 18px 44px rgba(0,180,200,.4);
    font-size:clamp(13px,1.5vw,18px);font-weight:var(--fw-extrabold,800);}

.tv-roundel span{display:block;font-size:clamp(9.5px,1.1vw,12px);
  font-weight:var(--fw-extrabold,800);color:#fff;margin-top:5px}

/* ---- sound: an equaliser that plays under the product ---- */
.tv-eq{position:absolute;z-index:1;left:0;right:0;bottom:0;
  height:46%;display:flex;align-items:flex-end;justify-content:center;
  gap:clamp(2px,.55vw,6px);
  padding:0 clamp(16px,3vw,40px) clamp(18px,2.6vw,34px);
  pointer-events:none;overflow:hidden;
  mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.tv-eq i{flex:1 1 0;min-width:0;max-width:13px;height:var(--h);
  border-radius:99px;transform-origin:bottom;opacity:.7;
  background:linear-gradient(180deg,var(--tv-aqua),rgba(21,62,217,.22));
  animation:tvEq var(--t) ease-in-out var(--d) infinite alternate}
@keyframes tvEq{from{transform:scaleY(.14)}to{transform:scaleY(1)}}

/* a faster beat layered over the slow glow */
.tv-sound__art::after{content:"";position:absolute;z-index:0;
  left:50%;bottom:14%;width:min(420px,62%);aspect-ratio:1;
  transform:translateX(-50%);border-radius:50%;filter:blur(40px);
  background:radial-gradient(circle,rgba(0,180,200,.42),transparent 68%);
  animation:tvBeat 1.9s ease-in-out infinite}
@keyframes tvBeat{0%,100%{opacity:.3;transform:translateX(-50%) scale(.82)}
                  50%    {opacity:.8;transform:translateX(-50%) scale(1.04)}}

/* the little four-bar glyph beside the eyebrow */
.tv-eqmini{display:inline-flex;align-items:flex-end;gap:2.5px;height:13px;
  margin-right:9px;vertical-align:-1px}
.tv-eqmini i{width:2.5px;height:100%;border-radius:99px;background:currentColor;
  transform-origin:bottom;
  animation:tvEq var(--t) ease-in-out var(--d) infinite alternate}
@media (prefers-reduced-motion:reduce){
  .tv-sound__art::before,.tv-sound__art::after,.tv-sound__art img,
  .tv-eq i,.tv-eqmini i{animation:none}
  .tv-eq i{transform:scaleY(.55)}
}
@media (max-width:900px){
  .tv-sound{grid-template-columns:1fr;text-align:center}
  .tv-sound p{margin-left:auto;margin-right:auto}
  .tv-sound .tv-btn{margin:0 auto}
  .tv-sound__copy{display:flex;flex-direction:column;align-items:center}
}

@media (max-width:767px){

  .tv-roundel{position:absolute;z-index:2;right:-72%;bottom:-73%;
    width:166% !important;aspect-ratio:1;border-radius:50%;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-align:center;line-height:1.15;color:#fff;
    background:var(--tv-aqua);box-shadow:0 18px 44px rgba(0,180,200,.4);
    font-size:clamp(13px,1.5vw,18px);font-weight:var(--fw-extrabold,800);}


    .tv-roundel2{position:absolute;z-index:2;right:-2%;bottom:-4%;
      width:50%;aspect-ratio:1;border-radius:50%;
      display:flex;flex-direction:column;align-items:center;justify-content:center;
      text-align:center;line-height:1.15;color:#fff;
      background:var(--tv-aqua);box-shadow:0 18px 44px rgba(0,180,200,.4);
      font-size:clamp(13px,1.5vw,18px);font-weight:var(--fw-extrabold,800);padding:23px;}

      span.worthprice {font-size: 16px !important;}

}

/* ============================================================
   6 — HOW TO GET YOURS  (layout kept, background adapted)
   ============================================================ */
.tv-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tv-steps > *{min-width:0}
.tv-step{background:#fff;border:1px solid var(--tv-line);border-radius:var(--r-lg,50px);
  padding:clamp(24px,3vw,36px);transition:transform .2s,box-shadow .2s}
.tv-step:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(16,16,24,.1)}
.tv-step__fig{background:var(--od-lavender,#DEE4FA);border-radius:var(--r-sm,30px);
  padding:22px;margin-bottom:24px;display:grid;place-items:center;min-height:132px}
.tv-step__fig svg{width:100%;height:auto;max-width:260px}
.tv-step h3{font-size:clamp(18px,1.8vw,22px);font-weight:var(--fw-semibold,600);
  margin:0 0 8px;display:flex;gap:10px;align-items:baseline}
.tv-step__n{color:var(--tv-blue);font-weight:var(--fw-extrabold,800)}
.tv-step p{margin:0;font-size:14.5px;line-height:1.6;color:var(--tv-muted)}
@media (max-width:900px){.tv-steps{grid-template-columns:1fr}}
@media (max-width:560px){.tv-step{border-radius:var(--r-md,40px)}}

.termsandco ol {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

.termsandco ol > li {
    padding-left: 0.35rem;
    margin-bottom: 1rem;
    line-height: 1.6;
	text-align: left;
}

.termsandco ul {
    padding-left: 1.5rem;
    margin-top: 0.5rem;
}

.termsandco ul li {
    margin-bottom: 0.35rem;
}

@media (max-width: 576px) {
    .termsandco ol {
        padding-left: 1.25rem;
    }

    .termsandco ol > li {
        padding-left: 0.2rem;
        margin-bottom: 0.85rem;
    }
}
