:root{
  --ink:#101114;
  --muted:#6b7078;
  --paper:#f5f4f0;
  --white:#ffffff;
  --accent:#ff5a1f;
  --accent-two:#ff9b42;
  --accent-soft:#fff0e8;
  --dark:#111318;
  --dark-two:#1c2027;
  --line:#dedbd3;
  --success:#1f9d6b;
  --shadow:0 24px 70px rgba(18,20,24,.14)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  overflow-x:hidden
}
body.modal-open{overflow:hidden}
button,a{font:inherit}
button{color:inherit}
a{text-decoration:none;color:inherit}
.announcement{
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.75rem;
  padding:.45rem 1rem;
  background:#0b0d10;
  color:#dce0e6;
  font-size:.78rem;
  letter-spacing:.04em
}
.announcement span{
  color:#fff;
  background:var(--accent);
  border-radius:999px;
  padding:.25rem .55rem;
  font-weight:900;
  font-size:.68rem
}
.site-header{
  position:sticky;
  top:0;
  z-index:30;
  max-width:100%;
  min-height:78px;
  padding:0 max(1.25rem,calc((100vw - 1220px)/2));
  display:flex;
  align-items:center;
  gap:2rem;
  background:rgba(255,255,255,.92);
  border-bottom:1px solid rgba(20,20,20,.08);
  backdrop-filter:blur(18px)
}
.logo{
  display:flex;
  align-items:center;
  gap:.7rem;
  font-weight:950;
  font-size:1.2rem;
  letter-spacing:-.03em
}
.logo>span:last-child span{color:var(--accent)}
.logo-mark{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:12px;
  background:linear-gradient(135deg,var(--accent),var(--accent-two));
  color:#fff;
  font-size:.78rem;
  box-shadow:0 12px 25px rgba(255,90,31,.25)
}
.desktop-nav{
  display:flex;
  align-items:center;
  gap:1.8rem;
  margin-left:auto;
  font-size:.92rem;
  font-weight:800
}
.desktop-nav a{position:relative}
.desktop-nav a:after{
  content:"";
  position:absolute;
  left:0;right:100%;bottom:-8px;
  height:2px;
  background:var(--accent);
  transition:.2s
}
.desktop-nav a:hover:after{right:0}
.header-actions{display:flex;align-items:center;gap:.55rem}
.icon-button,.menu-button{
  width:42px;height:42px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
  cursor:pointer
}
.basket-button{
  border:0;
  background:var(--dark);
  color:#fff;
  border-radius:999px;
  padding:.72rem 1rem;
  font-weight:900;
  cursor:pointer
}
.basket-button span{
  display:inline-grid;
  place-items:center;
  min-width:22px;height:22px;
  margin-left:.35rem;
  border-radius:999px;
  background:var(--accent);
  font-size:.75rem
}
.menu-button{display:none;font-size:1.25rem}
.mobile-menu{
  position:fixed;
  z-index:25;
  top:114px;
  left:1rem;right:1rem;
  display:none;
  padding:1rem;
  border-radius:20px;
  background:#fff;
  box-shadow:var(--shadow)
}
.mobile-menu.open{display:grid}
.mobile-menu a{padding:1rem;border-bottom:1px solid var(--line);font-weight:850}
.mobile-menu a:last-child{border-bottom:0}
.hero{
  position:relative;
  min-height:760px;
  overflow:hidden;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:4rem;
  align-items:center;
  padding:5.5rem max(1.5rem,calc((100vw - 1220px)/2));
  color:#fff;
  background:
    linear-gradient(120deg,rgba(255,90,31,.08),transparent 34%),
    radial-gradient(circle at 10% 40%,rgba(255,90,31,.22),transparent 28%),
    linear-gradient(135deg,#0e1014,#242a32)
}
.hero-orb{
  position:absolute;
  border-radius:50%;
  filter:blur(3px);
  pointer-events:none
}
.orb-one{
  width:430px;height:430px;
  left:-180px;top:70px;
  background:radial-gradient(circle,rgba(255,90,31,.36),transparent 68%)
}
.orb-two{
  width:520px;height:520px;
  right:-250px;bottom:-180px;
  background:radial-gradient(circle,rgba(255,155,66,.22),transparent 68%)
}
.hero-content,.featured-wrap{position:relative;z-index:2}
.hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  padding:.55rem .8rem;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:#dce1e7;
  font-size:.78rem;
  font-weight:800
}
.live-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 6px rgba(255,90,31,.12)
}
.hero h1{
  max-width:760px;
  margin:1.2rem 0 1.4rem;
  font-size:clamp(3.4rem,7.2vw,6.8rem);
  line-height:.91;
  letter-spacing:-.068em
}
.hero h1 span{
  color:transparent;
  background:linear-gradient(135deg,#fff,var(--accent-two),var(--accent));
  -webkit-background-clip:text;
  background-clip:text
}
.hero-content>p{
  max-width:650px;
  color:#c6cbd3;
  font-size:1.14rem;
  line-height:1.7
}
.hero-actions{display:flex;gap:.8rem;margin:2.2rem 0}
.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:.85rem 1.25rem;
  border:0;
  border-radius:999px;
  font-weight:900;
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,opacity .18s
}
.button:hover{transform:translateY(-2px)}
.button.accent{
  color:#fff;
  background:linear-gradient(135deg,var(--accent),var(--accent-two));
  box-shadow:0 16px 34px rgba(255,90,31,.28)
}
.button.dark{background:var(--dark);color:#fff}
.button.glass{
  color:#fff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.18)
}
.button.full{width:100%}
.trust-row{
  display:flex;
  gap:2.2rem;
  padding-top:1.7rem;
  border-top:1px solid rgba(255,255,255,.13)
}
.trust-row div{display:grid;gap:.18rem}
.trust-row strong{font-size:1.05rem}
.trust-row span{color:#9fa7b2;font-size:.8rem}
.featured-wrap{perspective:1200px}
.featured-card{
  max-width:520px;
  margin-left:auto;
  padding:1.1rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius:32px;
  background:linear-gradient(160deg,rgba(255,255,255,.14),rgba(255,255,255,.055));
  box-shadow:0 35px 90px rgba(0,0,0,.35);
  backdrop-filter:blur(18px);
  transform:rotateY(-2deg)
}
.featured-topline{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  padding:.2rem .2rem 1rem
}
.pill,.badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:.42rem .7rem;
  border-radius:999px;
  background:#fff;
  color:var(--dark);
  font-size:.7rem;
  font-weight:950
}
.closing{font-size:.74rem;color:#cbd1d9}
.closing strong{color:#fff}
.featured-visual{
  min-height:240px;
  overflow:hidden;
  border-radius:23px;
  background:
    radial-gradient(circle at 50% 65%,rgba(255,155,66,.35),transparent 36%),
    linear-gradient(145deg,#3a424d,#191c22)
}
.bathroom-scene{position:relative;height:240px;display:grid;place-items:center}
.bathroom-scene:before{
  content:"";
  position:absolute;inset:18px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:18px
}
.bath{position:relative;z-index:2;font-size:7rem;filter:drop-shadow(0 24px 28px rgba(0,0,0,.3))}
.tile{position:absolute;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.07);border-radius:14px}
.tile-a{width:110px;height:150px;left:35px;top:30px;transform:rotate(-8deg)}
.tile-b{width:100px;height:130px;right:40px;bottom:28px;transform:rotate(9deg)}
.spark{position:absolute;color:var(--accent-two);font-size:1.6rem}
.spark-a{left:28%;top:22%}.spark-b{right:26%;bottom:23%}
.featured-copy{padding:1.25rem .4rem .35rem}
.competition-label{
  color:var(--accent-two);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.7rem;
  font-weight:950
}
.featured-copy h2{margin:.45rem 0;font-size:2rem;letter-spacing:-.035em}
.featured-copy>p{margin:.5rem 0 1.2rem;color:#c5cbd4;line-height:1.55}
.featured-numbers{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:.65rem;
  margin-bottom:1rem
}
.featured-numbers div{
  padding:.8rem;
  border-radius:14px;
  background:rgba(255,255,255,.07);
  display:grid;gap:.25rem
}
.featured-numbers span{color:#aeb5bf;font-size:.69rem}
.featured-numbers strong{font-size:1.05rem}
.progress-line{margin:1rem 0 1.2rem}
.progress-labels{
  display:flex;
  justify-content:space-between;
  margin-bottom:.45rem;
  color:var(--muted);
  font-size:.76rem
}
.featured-card .progress-labels{color:#b8c0ca}
.progress-track{
  width:100%;
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:#e9e6df
}
.featured-card .progress-track{background:rgba(255,255,255,.12)}
.progress-track span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--accent),var(--accent-two))
}
.proof-strip{
  position:relative;
  z-index:4;
  max-width:1180px;
  margin:-38px auto 0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:var(--shadow)
}
.proof-strip div{
  display:grid;
  gap:.2rem;
  padding:1.45rem;
  text-align:center;
  border-right:1px solid var(--line)
}
.proof-strip div:last-child{border-right:0}
.proof-strip strong{font-size:1.4rem}
.proof-strip span{font-size:.78rem;color:var(--muted)}
.section{max-width:1220px;margin:auto;padding:7rem 1.5rem}
.section-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:2.5rem;
  margin-bottom:2rem
}
.section-heading>p{max-width:520px;color:var(--muted);line-height:1.6}
.eyebrow{
  color:var(--accent);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.73rem;
  font-weight:950
}
.section-heading h2,.split-section h2,.faq-intro h2,.launch-cta h2{
  max-width:760px;
  margin:.45rem 0;
  font-size:clamp(2.35rem,5vw,4.5rem);
  line-height:.97;
  letter-spacing:-.055em
}
.filter-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.5rem}
.filter{
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  padding:.7rem 1rem;
  font-weight:850;
  cursor:pointer
}
.filter.active{background:var(--dark);color:#fff;border-color:var(--dark)}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.competition-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:25px;
  background:#fff;
  box-shadow:0 18px 45px rgba(20,20,20,.06);
  transition:transform .2s ease,box-shadow .2s ease
}
.competition-card:hover{transform:translateY(-7px);box-shadow:0 28px 60px rgba(20,20,20,.12)}
.competition-card.hidden{display:none}
.card-image{
  position:relative;
  min-height:235px;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#21252c,#414a56)
}
.card-image:after{
  content:"";
  position:absolute;
  width:230px;height:230px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,132,65,.48),transparent 65%)
}
.card-image.boiler{background:linear-gradient(145deg,#202329,#4d3130)}
.card-image.bathroom{background:linear-gradient(145deg,#25323b,#494a52)}
.card-image.tools{background:linear-gradient(145deg,#202327,#3d342b)}
.badge{position:absolute;z-index:3;top:1rem;left:1rem}
.badge.hot{background:#ffede7;color:#ce3c0a}
.badge.low{background:#e9f8f1;color:#13774e}
.card-icon{position:relative;z-index:2;font-size:6rem;filter:drop-shadow(0 22px 30px rgba(0,0,0,.28))}
.image-copy{
  position:absolute;
  z-index:3;
  left:1rem;right:1rem;bottom:1rem;
  display:flex;
  gap:.45rem
}
.image-copy span{
  padding:.36rem .55rem;
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  background:rgba(0,0,0,.18);
  color:#fff;
  font-size:.65rem;
  font-weight:850;
  backdrop-filter:blur(8px)
}
.card-body{padding:1.35rem}
.card-title-row{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  color:var(--accent);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.67rem;
  font-weight:950
}
.card-title-row .ends{color:var(--muted);letter-spacing:0;text-transform:none}
.card-body h3{margin:.55rem 0;font-size:1.42rem;line-height:1.1;letter-spacing:-.03em}
.card-body p{min-height:70px;color:var(--muted);line-height:1.55}
.competition-offer{
  margin:.8rem 0;
  padding:.72rem .85rem;
  border:1px solid #ffd0bf;
  border-radius:13px;
  background:#fff1eb;
  color:#bd390e;
  font-size:.78rem;
  font-weight:950
}
.competition-expiry{
  margin:-.25rem 0 .8rem;
  color:var(--muted);
  font-size:.75rem;
  font-weight:800
}
.worth,.entry-row{display:flex;justify-content:space-between;align-items:center}
.worth{
  padding:.9rem 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)
}
.entry-row{padding:1rem 0}
.entry-row strong{color:var(--accent);font-size:1.45rem}
.card-body .progress-track{margin-bottom:1.15rem}
.how-section{
  padding:7rem max(1.5rem,calc((100vw - 1220px)/2));
  color:#fff;
  background:
    radial-gradient(circle at 85% 20%,rgba(255,90,31,.16),transparent 25%),
    var(--dark)
}
.section-heading.light h2{color:#fff}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.steps>div{
  min-height:270px;
  padding:1.6rem;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:rgba(255,255,255,.045)
}
.steps>div>span{color:var(--accent-two);font-weight:950}
.step-icon{margin:2rem 0 1rem;font-size:2.6rem}
.steps h3{font-size:1.45rem;margin:.5rem 0}
.steps p{color:#b8bec7;line-height:1.6}
.split-section{
  display:grid;
  grid-template-columns:1fr .78fr;
  gap:4rem;
  align-items:center
}
.lead{color:var(--muted);font-size:1.12rem;line-height:1.75}
.check-list{list-style:none;padding:0;display:grid;gap:.85rem}
.check-list li{
  display:flex;
  align-items:center;
  gap:.75rem;
  font-weight:750
}
.check-list li:before{
  content:"✓";
  display:grid;
  place-items:center;
  flex:0 0 28px;
  width:28px;height:28px;
  border-radius:50%;
  background:#dff4eb;
  color:var(--success);
  font-weight:950
}
.vision-card{
  min-height:390px;
  padding:2.5rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-radius:32px;
  color:#fff;
  background:
    radial-gradient(circle at 90% 5%,rgba(255,255,255,.2),transparent 30%),
    linear-gradient(140deg,var(--accent),var(--accent-two));
  box-shadow:0 30px 70px rgba(255,90,31,.22)
}
.vision-brand{display:flex;align-items:center;gap:.6rem;font-weight:950}
.vision-brand .logo-mark{background:#fff;color:var(--accent);box-shadow:none}
.quote-mark{font-size:6rem;line-height:.8;margin-top:1.7rem}
.vision-card blockquote{margin:.5rem 0 1.5rem;font-size:2rem;line-height:1.12;font-weight:900}
.winners-section{padding-top:4rem}
.winner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.winner-grid article{
  padding:1.2rem;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff
}
.winner-placeholder{
  min-height:190px;
  display:grid;
  place-items:center;
  margin-bottom:1rem;
  border-radius:17px;
  background:linear-gradient(145deg,#e9e7e1,#f8f7f3);
  font-size:4rem
}
.winner-grid article>span{color:var(--accent);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:950}
.winner-grid h3{margin:.45rem 0}
.winner-grid p{color:var(--muted);line-height:1.5}
.faq-section{
  max-width:1220px;
  margin:auto;
  padding:4rem 1.5rem 7rem;
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:4rem
}
.faq-intro p{color:var(--muted);line-height:1.6}
.faq-list{display:grid;gap:.8rem}
details{
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  padding:0 1.1rem
}
summary{
  cursor:pointer;
  list-style:none;
  padding:1.2rem .1rem;
  font-weight:900
}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";float:right;color:var(--accent);font-size:1.25rem}
details[open] summary:after{content:"−"}
details p{margin:0;padding:0 .1rem 1.2rem;color:var(--muted);line-height:1.6}
.launch-cta{
  max-width:1180px;
  margin:0 auto 6rem;
  padding:3rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  border-radius:30px;
  background:#efe7dc
}
.launch-cta p{color:var(--muted)}
footer{
  display:grid;
  grid-template-columns:2fr 1fr 1.35fr;
  gap:2rem;
  padding:4.5rem max(1.5rem,calc((100vw - 1220px)/2));
  background:#0b0d10;
  color:#fff
}
footer>div{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}
footer p,footer span,footer a{color:#aeb5bf}
.footer-brand{max-width:420px}
.demo-label{
  display:inline-flex;
  padding:.45rem .6rem;
  border-radius:999px;
  background:rgba(255,90,31,.16);
  color:var(--accent-two)!important;
  font-size:.68rem;
  font-weight:950
}
.footer-bottom{
  grid-column:1/-1;
  margin-top:1rem;
  padding-top:1.3rem;
  border-top:1px solid rgba(255,255,255,.12)
}
.modal-backdrop{
  position:fixed;
  z-index:100;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:1rem;
  background:rgba(5,7,10,.72);
  backdrop-filter:blur(8px)
}
.modal-backdrop.open{display:flex}
.modal{
  position:relative;
  width:min(650px,100%);
  max-height:92vh;
  overflow:auto;
  padding:2rem;
  border-radius:28px;
  background:#fff;
  box-shadow:0 35px 100px rgba(0,0,0,.4)
}
.modal.compact{width:min(520px,100%)}
.modal h2{margin:.5rem 0;font-size:2rem;letter-spacing:-.04em}
.modal-note{color:var(--muted)}
.modal-close{
  position:absolute;
  top:1rem;right:1rem;
  width:40px;height:40px;
  border:0;border-radius:50%;
  background:#eeeae4;
  font-size:1.5rem;
  cursor:pointer
}
.question-label{
  display:block;
  margin-top:1.4rem;
  color:var(--accent);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.7rem;
  font-weight:950
}
.question{font-weight:850}
.answer-grid{display:grid;gap:.6rem}
.answer{
  padding:1rem;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  text-align:left;
  font-weight:800;
  cursor:pointer
}
.answer.selected{border-color:var(--accent);background:var(--accent-soft)}
.quantity-panel{
  margin:1.2rem 0;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:1rem;
  padding:1rem;
  border-radius:17px;
  background:#f3f1ec
}
.quantity-panel>div:first-child{display:grid;gap:.2rem}
.quantity-panel>div:first-child span{color:var(--muted);font-size:.75rem}
.ticket-controls{
  display:grid;
  grid-template-columns:46px 1fr 46px;
  align-items:center;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
  text-align:center
}
.ticket-controls button{
  height:46px;
  border:0;
  background:#ece9e3;
  font-size:1.25rem;
  cursor:pointer
}
.ticket-quantity-field{
  min-width:0;
  display:block
}
.ticket-quantity-field input{
  width:100%;
  height:46px;
  border:0;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-weight:900;
  text-align:center;
  outline:none;
  appearance:textfield;
  -moz-appearance:textfield
}
.ticket-quantity-field input::-webkit-inner-spin-button,
.ticket-quantity-field input::-webkit-outer-spin-button{
  margin:0;
  -webkit-appearance:none
}
.ticket-quantity-field input:focus{
  box-shadow:inset 0 0 0 3px rgba(255,90,31,.2)
}
.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
.quick-picks{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}
.quick-picks button{
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  padding:.75rem .4rem;
  font-size:.77rem;
  font-weight:850;
  cursor:pointer
}
.ticket-offer{
  margin:1rem 0 0;
  padding:.85rem 1rem;
  border:1px solid #ffd0bf;
  border-radius:14px;
  background:#fff1eb;
  color:#bd390e;
  font-size:.82rem;
  font-weight:900;
  line-height:1.45
}
.modal-total{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:1.3rem 0;
  font-size:1.05rem
}
.modal-total strong{font-size:1.75rem}
.basket-items{display:grid;gap:.8rem;margin:1.2rem 0}
.basket-empty{
  padding:2rem;
  border:1px dashed var(--line);
  border-radius:16px;
  color:var(--muted);
  text-align:center
}
.basket-item{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:1rem;
  border-radius:15px;
  background:#f3f1ec
}
.basket-item span{color:var(--muted);font-size:.78rem}
.text-button{
  width:100%;
  margin-top:.8rem;
  border:0;
  background:transparent;
  color:var(--muted);
  text-decoration:underline;
  cursor:pointer
}
.account-preview{display:grid;gap:.7rem;margin:1.2rem 0}
.account-preview>div{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:.15rem .7rem;
  padding:1rem;
  border-radius:16px;
  background:#f3f1ec
}
.account-preview>div>span{grid-row:1/3;font-size:1.4rem}
.account-preview small{color:var(--muted)}
.toast{
  position:fixed;
  z-index:200;
  left:50%;bottom:2rem;
  transform:translate(-50%,30px);
  opacity:0;
  padding:.85rem 1.1rem;
  border-radius:999px;
  background:#101114;
  color:#fff;
  box-shadow:0 20px 50px rgba(0,0,0,.25);
  transition:.25s;
  pointer-events:none;
  text-align:center
}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:980px){
  .desktop-nav{display:none}
  .menu-button{display:block}
  .hero{grid-template-columns:1fr;gap:3rem;padding-top:4rem}
  .featured-card{margin:auto}
  .card-grid,.steps,.winner-grid{grid-template-columns:1fr}
  .proof-strip{grid-template-columns:repeat(2,1fr);margin:0;border-radius:0}
  .proof-strip div:nth-child(2){border-right:0}
  .proof-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .split-section,.faq-section{grid-template-columns:1fr}
  footer{grid-template-columns:1fr 1fr}
  .launch-cta{margin:0;border-radius:0}
}
@media(max-width:640px){
  .announcement{font-size:.68rem}
  .site-header{min-height:68px;padding:0 1rem;gap:.5rem}
  .logo{font-size:1.05rem}
  .logo-mark{width:36px;height:36px}
  .header-actions{gap:.35rem}
  .icon-button{display:grid;place-items:center;flex:0 0 42px}
  .basket-button{padding:.65rem .8rem}
  .hero{min-height:auto;padding:3.5rem 1rem 4rem}
  .hero h1{font-size:3.45rem}
  .hero-actions{flex-direction:column}
  .trust-row{gap:1rem;flex-wrap:wrap}
  .featured-card{padding:.85rem;border-radius:24px;transform:none}
  .featured-topline{align-items:flex-start;flex-direction:column}
  .featured-numbers{grid-template-columns:1fr 1fr}
  .featured-numbers div:last-child{grid-column:1/-1}
  .proof-strip{grid-template-columns:1fr 1fr}
  .section{padding:5rem 1rem}
  .section-heading{display:block}
  .section-heading>p{margin-top:1rem}
  .faq-section{padding:3rem 1rem 5rem;gap:2rem}
  .launch-cta{display:block;padding:2.2rem 1rem}
  .launch-cta .button{width:100%;margin-top:1rem}
  footer{grid-template-columns:1fr}
  .modal{padding:1.4rem}
  .quantity-panel{grid-template-columns:1fr}
  .quick-picks{grid-template-columns:1fr 1fr}
}
@media(max-width:360px){
  .logo>span:last-child{display:none}
}
