/* ===================== TONE THERAPY -- 128Hz Product Page ===================== */

/* ── Reset & Base (page-specific overrides) ── */
:root {
  --blue:#146bdd;
  --blue-dark:#0d50a8;
  --blue-light:#e8f1fd;
  --blue-mid:#3a88e8;
  --text:#1a1a1a;
  --text-2:#444;
  --text-3:#777;
  --bg:#fff;
  --bg2:#f7f9fc;
  --border:#e3e8ef;
  --star:#f5a623;
  --green:#22c55e;
  --r:12px;
  --rl:20px;
  --sh:0 4px 24px rgba(20,107,221,.10);
  --shl:0 8px 40px rgba(20,107,221,.15);
}

/* ===================== UTILITIES ===================== */
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.container-sm{max-width:860px;margin:0 auto;padding:0 24px}
.text-center{text-align:center}
.accent{color:var(--blue)}

/* Section headers */
h1,h2,h3,.sh{font-family:'DM Serif Display',Georgia,serif}
.sh{font-size:clamp(26px,4vw,40px);font-weight:400;line-height:1.15;margin-bottom:10px}
.sub{font-size:16px;color:var(--text-3);max-width:600px;margin:0 auto 44px;line-height:1.65}
.tag-pill{display:inline-flex;align-items:center;gap:6px;background:var(--blue-light);color:var(--blue);font-size:12px;font-weight:700;padding:5px 14px;border-radius:20px;text-transform:uppercase;letter-spacing:.8px;margin-bottom:14px}
.stars{color:var(--star)}

/* Buttons */
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--blue);color:#fff;font-size:18px;font-weight:700;padding:19px 28px;border-radius:100px;transition:all .2s;box-shadow:0 6px 24px rgba(20,107,221,.30);width:100%;letter-spacing:.3px}
.btn-primary:hover{background:var(--blue-dark);transform:translateY(-2px);box-shadow:0 10px 32px rgba(20,107,221,.38)}
.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:transparent;color:#111;border:2px solid #bbc4d0;font-size:17px;font-weight:700;padding:17px 28px;border-radius:100px;transition:all .2s;width:100%;letter-spacing:.3px}
.btn-outline:hover{border-color:var(--blue);color:var(--blue)}
/* Buy it now button */
.btn-buy-now{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#111;border:2px solid #bbc4d0;font-size:17px;font-weight:700;padding:17px 28px;border-radius:100px;transition:all .2s;width:100%;letter-spacing:.3px;cursor:pointer;font-family:'Outfit',sans-serif;margin-top:10px}
.btn-buy-now:hover{border-color:var(--blue);color:var(--blue)}

/* ===================== ANNOUNCEMENT ===================== */
.ann-bar{background:var(--blue);color:#fff;text-align:center;padding:10px 20px;font-size:13px;font-weight:500;letter-spacing:.2px}
.ann-bar strong{font-weight:800}

/* ===================== HEADER -- ToneTherapy-style layout ===================== */
.site-header{
  position:sticky;top:0;z-index:900;
  background:#fff;
  border-bottom:1px solid var(--border);
  padding:0 32px;
  height:72px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:32px;
  box-shadow:0 2px 14px rgba(0,0,0,.07);
}
/* Logo -- left, bigger */
.site-header .logo img{height:54px;width:auto;display:block}
/* Center nav */
.header-nav{
  display:flex;gap:32px;font-size:14px;font-weight:500;color:var(--text-2);
  justify-content:center;
}
.header-nav a{display:flex;align-items:center;gap:4px;transition:color .15s;white-space:nowrap}
.header-nav a:hover{color:var(--blue)}
.header-nav .shop-arrow{font-size:10px;opacity:.6}
/* Right icons */
.header-right{display:flex;align-items:center;gap:18px}
.header-icon-btn{background:none;border:none;cursor:pointer;padding:6px;color:var(--text-2);transition:color .2s;display:flex;align-items:center}
.header-icon-btn:hover{color:var(--blue)}
.header-icon-btn svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8}
.header-cart-count{position:relative}
.cart-badge{position:absolute;top:-6px;right:-7px;background:var(--blue);color:#fff;font-size:10px;font-weight:800;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}
@media(max-width:900px){
  .header-nav{gap:18px;font-size:13px}
  .header-nav a.hide-md{display:none}
}
@media(max-width:640px){
  .site-header{grid-template-columns:auto 1fr;padding:0 16px}
  .header-nav{display:none}
  .header-right{gap:12px}
}

/* ===================== SECTION 1: HERO / PRODUCT ===================== */
.product-section{padding:44px 0 64px}
.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}
@media(max-width:820px){.product-grid{grid-template-columns:1fr;gap:32px}}

/* Gallery */
.gallery-main{position:relative;border-radius:var(--rl);overflow:hidden;background:#f1f5fe;cursor:zoom-in;aspect-ratio:1/1}
.gallery-main img{width:100%;height:100%;object-fit:cover;transition:opacity .25s}
.gallery-badge{position:absolute;top:14px;left:14px;background:var(--blue);color:#fff;font-size:11px;font-weight:800;padding:6px 14px;border-radius:20px;letter-spacing:1px;text-transform:uppercase;z-index:2}
.gallery-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.g-thumb{width:72px;height:72px;border-radius:10px;overflow:hidden;border:2px solid transparent;cursor:pointer;transition:border-color .2s;flex-shrink:0}
.g-thumb:hover,.g-thumb.active{border-color:var(--blue)}
.g-thumb img{width:100%;height:100%;object-fit:cover}

/* Product info */
.product-brand-label{font-size:12px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--blue);margin-bottom:10px}
.product-title{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(26px,3.5vw,38px);font-weight:400;line-height:1.2;margin-bottom:16px}
.review-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.review-row .stars{font-size:17px}
.review-row .score{font-size:14px;font-weight:700}
.review-row a{font-size:14px;color:var(--text-3);border-bottom:1px solid var(--text-3);transition:.15s}
.review-row a:hover{color:var(--blue);border-color:var(--blue)}

/* Benefit pills -- vertical list, icon-box left + text right */
.benefit-pills{display:flex;flex-direction:column;gap:16px;margin-bottom:28px}
.bp{
  display:flex;
  align-items:center;
  gap:16px;
  background:none;
  border-radius:0;
  padding:0;
  text-align:left;
}
.bp .icon-box{
  width:54px;height:54px;
  background:var(--blue-light);
  border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.bp .icon-box svg{width:26px;height:26px;stroke:var(--blue);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bp span{font-size:16px;font-weight:600;color:var(--text);line-height:1.35}

/* Price */
.price-row{display:flex;align-items:baseline;gap:14px;margin-bottom:6px;flex-wrap:wrap}
.price-now{font-size:38px;font-weight:900;color:var(--blue);line-height:1}
.price-was{font-size:20px;color:#aaa;text-decoration:line-through}
.price-save{background:#fff3e0;color:#c05a00;font-size:12px;font-weight:800;padding:4px 12px;border-radius:20px}
.stock-line{font-size:13px;color:var(--green);font-weight:700;margin-bottom:20px;display:flex;align-items:center;gap:6px}

/* Variant selector */
.var-label{font-size:13px;font-weight:700;color:var(--text-3);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}
.var-options{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.var-btn{border:2px solid var(--border);border-radius:8px;padding:9px 20px;font-size:14px;font-weight:600;background:#fff;transition:.2s;color:var(--text)}
.var-btn:hover,.var-btn.active{border-color:var(--blue);color:var(--blue);background:var(--blue-light)}

/* Trust badges */
.trust-badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.tb{display:flex;align-items:center;gap:7px;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:8px 13px;font-size:12px;font-weight:600;color:var(--text-3)}
.tb .i{font-size:17px}

/* Highlights */
.highlights{display:flex;flex-direction:column;gap:9px;margin-bottom:24px}
.highlights li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--text-2)}
.highlights li::before{content:"\2713";color:var(--blue);font-weight:900;font-size:16px;flex-shrink:0;margin-top:-1px}

/* Payment row */
.pay-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px}
.pay-row span.label{font-size:11px;color:var(--text-3);font-weight:600;letter-spacing:.4px;text-transform:uppercase;margin-right:2px}
.pay-ic{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1.5px solid #dce2ea;border-radius:6px;padding:4px 7px;height:30px;min-width:46px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.pay-ic img{display:block;height:18px;width:auto}
.pay-ic svg{display:block;height:18px;width:auto;overflow:visible}
.pay-badge{height:28px;width:auto;display:inline-block;border-radius:5px;box-shadow:0 1px 3px rgba(0,0,0,.08)}

/* ===================== TRUST STRIP ===================== */
.trust-strip-section{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:0}
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:1200px;margin:0 auto}
@media(max-width:640px){.trust-strip{grid-template-columns:repeat(2,1fr)}}
.ts-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 20px 28px;gap:10px;position:relative}
.ts-item:not(:last-child)::after{content:'';position:absolute;right:0;top:15%;height:70%;width:1px;background:var(--border)}
@media(max-width:640px){.ts-item:nth-child(2)::after,.ts-item:nth-child(4)::after{display:none}.ts-item:nth-child(1)::before,.ts-item:nth-child(2)::before{content:'';position:absolute;bottom:0;left:10%;width:80%;height:1px;background:var(--border)}}
.ts-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center}
.ts-icon svg{width:40px;height:40px;stroke:var(--blue);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ts-title{font-size:14px;font-weight:700;color:var(--text);line-height:1.3}
.ts-sub{font-size:12px;color:var(--text-3);line-height:1.5;max-width:140px}

/* ===================== ATC MINI REVIEWS ===================== */
.atc-reviews{margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}
.atc-reviews-header{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.atc-reviews-header .stars{font-size:15px;color:var(--star)}
.atc-reviews-header span{font-size:13px;color:var(--text-3);font-weight:500}
.atc-rev-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;position:relative}
.atc-rev-track::-webkit-scrollbar{display:none}
.atc-rev-card{scroll-snap-align:start}
.atc-rev-card{background:var(--blue-light);border-radius:14px;padding:16px 18px;flex:0 0 100%;display:flex;flex-direction:column;gap:10px;transition:transform .3s}
.atc-rev-top{display:flex;align-items:center;gap:10px}
.atc-rev-avatar{width:42px;height:42px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;font-size:15px;flex-shrink:0;overflow:hidden}
.atc-rev-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.atc-rev-name{font-weight:700;font-size:13px;color:var(--text)}
.atc-rev-loc{font-size:11px;color:var(--text-3)}
.atc-rev-stars{font-size:13px;color:var(--star);margin-top:1px}
.atc-rev-quote{font-size:13px;color:var(--text);line-height:1.6;font-style:italic}
.atc-rev-dots{display:flex;gap:6px;justify-content:center;margin-top:12px}
.atc-rev-dot{width:7px;height:7px;border-radius:50%;background:#c5d8f7;cursor:pointer;transition:background .2s}
.atc-rev-dot.active{background:var(--blue)}

/* ===================== SECTION 2: TESTIMONIALS ===================== */
.testi-section{background:var(--bg2);padding:72px 0}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:900px){.testi-grid{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.testi-grid{grid-template-columns:1fr}}
.tc{background:#fff;border-radius:var(--rl);padding:28px;box-shadow:var(--sh);display:flex;flex-direction:column;gap:14px}
.tc .stars{font-size:16px}
.tc blockquote{font-size:15px;color:var(--text);line-height:1.68;font-style:italic;flex:1}
.tc-author{display:flex;align-items:center;gap:12px;margin-top:auto}
.ta-av{width:46px;height:46px;border-radius:50%;background:var(--blue-light);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--blue);font-size:18px;flex-shrink:0}
.ta-name{font-weight:700;font-size:14px}
.ta-loc{font-size:12px;color:var(--text-3)}
.ta-v{font-size:11px;color:var(--blue);font-weight:700;margin-top:2px;display:flex;align-items:center;gap:3px}

/* ===================== SECTION 3: HOW IT WORKS ===================== */
.hiw-section{padding:72px 0}
.hiw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;position:relative}
@media(max-width:768px){.hiw-grid{grid-template-columns:1fr}}
.hiw-card{text-align:center;padding:36px 24px;background:#fff;border-radius:var(--rl);box-shadow:var(--sh);border-top:4px solid var(--blue);position:relative}
.hiw-num{width:52px;height:52px;background:var(--blue);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:900;margin:0 auto 16px}
.hiw-icon{font-size:44px;margin-bottom:16px}
.hiw-title{font-size:18px;font-weight:800;margin-bottom:10px}
.hiw-desc{font-size:14px;color:var(--text-3);line-height:1.7}

/* connector */
.hiw-grid::before{content:'';position:absolute;top:68px;left:calc(33.33% - 1px);width:34%;height:2px;background:linear-gradient(90deg,var(--blue-light),var(--blue),var(--blue-light));z-index:0}
@media(max-width:768px){.hiw-grid::before{display:none}}

/* ===================== SECTION 4: HOW TO USE ===================== */
.htu-section{background:var(--bg2);padding:72px 0}
.htu-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
@media(max-width:820px){.htu-grid{grid-template-columns:1fr}}
.use-steps{display:flex;flex-direction:column;gap:18px}
.use-step{display:flex;gap:16px;align-items:flex-start;background:#fff;border-radius:var(--r);padding:18px;box-shadow:0 2px 12px rgba(0,0,0,.05)}
.us-num{width:36px;height:36px;background:var(--blue);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;flex-shrink:0}
.us-title{font-weight:700;font-size:15px;margin-bottom:3px}
.us-desc{font-size:13px;color:var(--text-3);line-height:1.6}
.htu-img{border-radius:var(--rl);overflow:hidden;box-shadow:var(--shl)}

/* ===================== SECTION 5: TRUST BAR ===================== */
.trust-bar{background:var(--blue);padding:30px 0}
.trust-bar-flex{display:flex;justify-content:center;align-items:center;gap:48px;flex-wrap:wrap}
.tbi{display:flex;align-items:center;gap:14px;color:#fff}
.tbi .i{font-size:30px}
.tbi .l{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;line-height:1.3}
.tbi .sl{font-size:12px;opacity:.8;margin-top:1px}
@media(max-width:768px){.trust-bar-flex{gap:20px}}

/* ===================== SECTION 6: BUNDLE ===================== */
.bundle-section{padding:72px 0;background:linear-gradient(160deg,var(--blue-light) 0%,#fff 50%)}
.bundle-card{background:#fff;border-radius:var(--rl);padding:48px;box-shadow:var(--shl);display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;border:2px solid rgba(20,107,221,.15)}
@media(max-width:820px){.bundle-card{grid-template-columns:1fr;padding:28px}}
.bun-badge{display:inline-block;background:var(--blue);color:#fff;font-size:11px;font-weight:800;padding:6px 16px;border-radius:20px;margin-bottom:14px;text-transform:uppercase;letter-spacing:1px}
.bun-title{font-size:clamp(22px,3vw,30px);font-weight:800;margin-bottom:16px;line-height:1.25}
.bun-inc-label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--text-3);margin-bottom:12px}
.bun-list{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.bun-list li{display:flex;align-items:flex-start;gap:10px;font-size:15px;color:var(--text)}
.bun-list li .ck{width:22px;height:22px;background:var(--blue);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;flex-shrink:0;margin-top:1px}
.bun-pr{display:flex;align-items:baseline;gap:14px;margin-bottom:20px;flex-wrap:wrap}
.bun-pr-now{font-size:34px;font-weight:900;color:var(--blue)}
.bun-pr-was{font-size:18px;color:#aaa;text-decoration:line-through}
.bun-pr-save{background:#fff3e0;color:#c05a00;font-size:13px;font-weight:800;padding:4px 12px;border-radius:20px}
.bun-img{border-radius:var(--rl);overflow:hidden;box-shadow:var(--shl)}

/* ===================== SECTION 7: VIDEO TESTIMONIALS (SWIPER) ===================== */
.vt-section{padding:72px 0;background:#fff;overflow:hidden}
.vt-header{text-align:center;margin-bottom:44px}
.vt-count{display:inline-flex;align-items:center;gap:8px;background:var(--bg2);border-radius:20px;padding:8px 18px;font-size:14px;font-weight:700;margin-bottom:16px}
.vt-count .stars{font-size:15px}

/* Swiper container */
.vt-swiper-wrap{position:relative;padding:0 0 52px}
/* Full bleed: stretch carousel to viewport edges */
.vt-section .vt-full{width:100vw;margin-left:calc(50% - 50vw);padding:0}
.vt-swiper{padding:10px 0 0 !important;overflow:visible !important}
.vt-swiper .swiper-wrapper{align-items:stretch}
.vt-swiper .swiper-slide{height:auto}
/* First & last slide get extra outer margin so they don't cut off */
.vt-swiper .swiper-slide:first-child{margin-left:24px}
.vt-swiper .swiper-slide:last-child{margin-right:24px}

/* Video card -- hover-to-play, auto-enlarge */
.vc{
  border-radius:var(--rl);
  overflow:hidden;
  box-shadow:0 6px 32px rgba(0,0,0,.18);
  position:relative;
  background:#111;
  cursor:pointer;
  transition:transform .35s cubic-bezier(.25,.46,.45,.94), box-shadow .35s ease;
  transform-origin:center bottom;
  will-change:transform;
}
.vc:hover{
  transform:scale(1.06);
  box-shadow:0 18px 56px rgba(0,0,0,.32);
  z-index:10;
  position:relative;
}
.vc video{
  width:100%;
  display:block;
  object-fit:cover;
  height:480px;
  pointer-events:none;
  transition:opacity .3s;
}
/* Play icon -- completely hidden */
.vc-play{ display:none !important; }
.vc-overlay{
  position:absolute;
  bottom:0;left:0;right:0;
  background:linear-gradient(transparent,rgba(0,0,0,.80));
  padding:20px 16px 16px;
  color:#fff;
  pointer-events:none;
}
.vc-stars{font-size:13px;color:var(--star);margin-bottom:5px}
.vc-quote{font-size:13px;font-weight:600;line-height:1.45}

/* Swiper nav arrows -- hidden */
.vt-prev,.vt-next{display:none}

/* Swiper pagination -- hidden */
.vt-swiper .swiper-pagination{display:none}

/* ===================== VIDEO SPLIT SECTIONS ===================== */
.vsplit-section{padding:80px 0}
.vsplit-section.alt{background:var(--bg2)}
.vsplit-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.vsplit-grid.reverse{direction:rtl}
.vsplit-grid.reverse>*{direction:ltr}
@media(max-width:820px){.vsplit-grid,.vsplit-grid.reverse{grid-template-columns:1fr;direction:ltr}}
.vsplit-vid{border-radius:20px;overflow:hidden;box-shadow:0 12px 48px rgba(20,107,221,.15)}
.vsplit-vid video{width:100%;display:block;max-height:480px;object-fit:cover}
.vsplit-content .tag-pill{margin-bottom:14px}
.vsplit-content h2{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(24px,3vw,36px);font-weight:400;line-height:1.2;margin-bottom:14px;color:var(--text)}
.vsplit-content .lead{font-size:16px;color:var(--text-3);line-height:1.7;margin-bottom:24px}
.vsplit-list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
.vsplit-list li{display:flex;align-items:flex-start;gap:10px;font-size:15px;color:var(--text-2);line-height:1.55}
.vsplit-list li::before{content:'';width:20px;height:20px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2 6l3 3 5-5' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:12px}

/* ===================== SECTION 8: BENEFITS ===================== */
.benefits-section{padding:72px 0;background:var(--bg2)}
.benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media(max-width:820px){.benefits-grid{grid-template-columns:1fr}}
.ben-list{display:flex;flex-direction:column;gap:20px}
.bi{display:flex;gap:16px;align-items:flex-start}
.bi .icon-wrap{width:50px;height:50px;background:var(--blue-light);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}
.bi .content .title{font-weight:800;font-size:16px;margin-bottom:4px}
.bi .content .desc{font-size:14px;color:var(--text-3);line-height:1.65}
.ben-img{border-radius:var(--rl);overflow:hidden;box-shadow:var(--shl)}

/* ===================== SECTION 9: PAIN POINT CARDS ===================== */
.expand-section{padding:72px 0;background:var(--bg)}
.exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-top:64px}
@media(max-width:900px){.exp-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}
.exp-card{background:#fff;border-radius:20px;border:2px solid rgba(20,107,221,.18);padding:32px 26px 32px;position:relative;margin-top:64px;text-align:center;box-shadow:0 4px 24px rgba(20,107,221,.07);transition:box-shadow .2s,border-color .2s}
.exp-card:hover{box-shadow:0 8px 36px rgba(20,107,221,.14);border-color:rgba(20,107,221,.35)}
.exp-card-img-wrap{width:116px;height:116px;border-radius:50%;background:#f0f6ff;position:absolute;top:-58px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;overflow:hidden;border:4px solid #fff;box-shadow:0 6px 20px rgba(20,107,221,.18)}
.exp-card-img-wrap img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.exp-card-img-wrap svg{width:68px;height:68px}
.exp-htitle{font-family:'DM Serif Display',Georgia,serif;font-size:20px;font-weight:400;color:var(--text);margin:12px 0 10px;line-height:1.3}
.exp-desc{font-size:14px;color:var(--text-3);line-height:1.65;margin-bottom:16px}
.exp-check-list{list-style:none;padding:0;margin:0;text-align:left;display:flex;flex-direction:column;gap:8px}
.exp-check-list li{display:flex;align-items:flex-start;gap:9px;font-size:14px;color:var(--text-2);line-height:1.5}
.exp-check-list li::before{content:'\2713';color:var(--blue);font-weight:800;font-size:14px;flex-shrink:0;margin-top:1px}
.exp-head .htitle{font-weight:800;font-size:17px;line-height:1.3}
/* Arrow completely hidden */
.exp-arrow{display:none}
/* Body always visible */
.exp-body{display:block !important;max-height:none !important}
.exp-body-inner{font-size:14px;color:var(--text-3);line-height:1.78;padding:0}

/* ===================== SECTION 10: TARGETED USE ===================== */
.targeted-section{padding:72px 0;background:var(--bg2)}
.targeted-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media(max-width:820px){.targeted-grid{grid-template-columns:1fr}}
.tg-img{border-radius:var(--rl);overflow:hidden;box-shadow:var(--shl)}
.tg-content .tag-pill{margin-bottom:16px}
.tg-content h2{font-size:clamp(24px,3.5vw,34px);font-weight:800;margin-bottom:16px;line-height:1.2}
.tg-content p{font-size:15px;color:var(--text-3);margin-bottom:18px;line-height:1.7}

/* ===================== SECTION 11: PRECISE HEALING ===================== */
.precise-section{padding:72px 0}
.precise-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media(max-width:820px){.precise-grid{grid-template-columns:1fr}}
/* Plain list -- no boxes, no borders */
.pr-list{display:flex;flex-direction:column;gap:14px}
.pr-list li{display:flex;align-items:center;gap:14px;font-size:15px;color:var(--text-2);padding:0;background:none;border:none;box-shadow:none}
.pr-dot{width:9px;height:9px;background:var(--blue);border-radius:50%;flex-shrink:0}
.pr-img{border-radius:var(--rl);overflow:hidden;box-shadow:var(--shl)}

/* ===================== SECTION 12: REBALANCE VIDEO ===================== */
.rebal-section{padding:72px 0;background:var(--bg2)}
.rebal-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media(max-width:820px){.rebal-grid{grid-template-columns:1fr}}
.rebal-vid{border-radius:var(--rl);overflow:hidden;box-shadow:var(--shl)}
.rebal-vid video{width:100%;display:block}
.rebal-list{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.rebal-list li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-2)}
.rebal-list li .arr{color:var(--blue);font-weight:900;font-size:16px;flex-shrink:0}

/* ===================== SECTION 13: FAQ (DARK THEME) ===================== */
.faq-section{padding:80px 0;background:#0a1a3a}
.faq-section .sh{color:#fff}
.faq-section .sub{color:rgba(255,255,255,.6)}
.faq-section .accent{color:#5fa0ff}
.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq-item{background:rgba(255,255,255,.06);border-radius:var(--r);border:1px solid rgba(255,255,255,.12);overflow:hidden;transition:border-color .2s}
.faq-item.open{border-color:rgba(95,160,255,.4);background:rgba(255,255,255,.09)}
.faq-q{padding:20px 24px;font-weight:700;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;user-select:none;transition:color .15s;color:#fff}
.faq-q:hover{color:#5fa0ff}
.faq-q .arr{font-size:20px;color:#5fa0ff;transition:transform .3s;flex-shrink:0}
.faq-item.open .faq-q .arr{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-item.open .faq-a{max-height:400px}
.faq-a-inner{padding:0 24px 20px;font-size:15px;color:rgba(255,255,255,.65);line-height:1.75}

/* ===================== SECTION 14: BODY MAP UPSELL ===================== */
.bmap-section{padding:72px 0;background:var(--blue-light)}
.bmap-card{background:#fff;border-radius:var(--rl);padding:52px;display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;box-shadow:var(--shl);border:2px solid rgba(20,107,221,.15)}
@media(max-width:820px){.bmap-card{grid-template-columns:1fr;padding:28px}}
.bmap-content h2{font-size:clamp(22px,3vw,32px);font-weight:800;margin-bottom:14px;line-height:1.25}
.bmap-content p{font-size:15px;color:var(--text-3);margin-bottom:24px;line-height:1.7}
.bmap-note{font-size:13px;color:var(--text-3);margin-top:14px}
.bmap-note span{color:var(--green);font-weight:700}
.bmap-img{border-radius:var(--rl);overflow:hidden;box-shadow:var(--shl)}

/* ===================== SECTION 15: CUSTOMER REVIEWS ===================== */
.rev-section{padding:72px 0;background:var(--bg2)}
.rev-summary{display:flex;align-items:flex-start;gap:48px;margin-bottom:52px;flex-wrap:wrap;background:#fff;border-radius:var(--rl);padding:36px;box-shadow:var(--sh)}
.rev-score-col{text-align:center;flex-shrink:0}
.rev-big{font-size:68px;font-weight:900;color:var(--blue);line-height:1}
.rev-stars-big{font-size:24px;color:var(--star);margin:4px 0}
.rev-count{font-size:14px;color:var(--text-3)}
.rev-bars{flex:1;min-width:180px}
.rb-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.rb-label{font-size:13px;font-weight:600;width:36px;flex-shrink:0}
.rb-bar{flex:1;height:8px;background:var(--border);border-radius:4px;overflow:hidden}
.rb-fill{height:100%;background:var(--star);border-radius:4px}
.rb-pct{font-size:13px;color:var(--text-3);width:36px;text-align:right}
.rev-write{margin-left:auto;align-self:center}
@media(max-width:768px){.rev-write{width:100%}}
.btn-write-rev{background:var(--blue);color:#fff;padding:13px 28px;border-radius:var(--r);font-size:15px;font-weight:700;transition:.2s;white-space:nowrap}
.btn-write-rev:hover{background:var(--blue-dark)}
.rev-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}
@media(max-width:700px){.rev-grid{grid-template-columns:1fr}}
.rev-card{background:#fff;border-radius:var(--rl);padding:28px;box-shadow:var(--sh)}
.rc-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.rc-av{width:44px;height:44px;border-radius:50%;background:var(--blue-light);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--blue);font-size:16px;flex-shrink:0}
.rc-name{font-weight:700;font-size:15px}
.rc-date{font-size:12px;color:var(--text-3)}
.rc-text{font-size:14px;color:var(--text);line-height:1.68}
.rc-v{font-size:12px;color:var(--green);font-weight:700;margin-top:10px;display:flex;align-items:center;gap:4px}
.btn-load{display:block;margin:0 auto;background:#fff;border:2px solid var(--blue);color:var(--blue);font-size:15px;font-weight:700;padding:13px 44px;border-radius:var(--r);transition:.2s}
.btn-load:hover{background:var(--blue);color:#fff}

/* ===================== SECTION 16: GUARANTEE ===================== */
.guarantee-section{background:var(--blue);padding:72px 0;text-align:center;color:#fff}
.gu-icon{font-size:76px;margin-bottom:16px;line-height:1}
.gu-title{font-size:clamp(28px,4.5vw,46px);font-weight:900;margin-bottom:14px;line-height:1.1}
.gu-sub{font-size:18px;opacity:.9;max-width:560px;margin:0 auto 32px;line-height:1.65}
.btn-gu{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--blue);font-size:18px;font-weight:800;padding:18px 40px;border-radius:var(--r);box-shadow:0 8px 30px rgba(0,0,0,.25);transition:.2s}
.btn-gu:hover{transform:translateY(-3px);box-shadow:0 14px 40px rgba(0,0,0,.3)}
.gu-note{opacity:.65;font-size:13px;margin-top:18px}

/* ===================== FOOTER (128Hz override -- scoped to .tt-page) ===================== */
.tt-page footer{background:#0d1117;color:#999;padding:64px 0 28px}
.tt-page .footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;margin-bottom:52px}
@media(max-width:900px){.tt-page .footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.tt-page .footer-grid{grid-template-columns:1fr}}
.tt-page .footer-brand .f-logo{height:40px;filter:brightness(0) invert(1);margin-bottom:18px}
.tt-page .footer-brand p{font-size:14px;line-height:1.65;color:#666;margin-bottom:22px}
.tt-page .f-email-form{display:flex;gap:8px}
.tt-page .f-email-form input{flex:1;padding:10px 14px;border-radius:8px;border:1px solid #222;background:#1a1f2b;color:#fff;font-size:14px;font-family:'Outfit',sans-serif}
.tt-page .f-email-form input::placeholder{color:#444}
.tt-page .f-email-form button{background:var(--blue);color:#fff;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:700;transition:.2s;white-space:nowrap}
.tt-page .f-email-form button:hover{background:var(--blue-dark)}
.tt-page .footer-col h4{font-size:13px;font-weight:800;color:#fff;margin-bottom:18px;text-transform:uppercase;letter-spacing:.8px}
.tt-page .footer-col ul{display:flex;flex-direction:column;gap:10px}
.tt-page .footer-col ul li a{font-size:14px;color:#666;transition:.15s}
.tt-page .footer-col ul li a:hover{color:var(--blue)}
.tt-page .footer-bottom{border-top:1px solid #1e2530;padding-top:24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.tt-page .footer-bottom p{font-size:13px;color:#444}
.tt-page .pay-icons-footer{display:flex;gap:8px;flex-wrap:wrap}
.tt-page .pay-icons-footer .pay-ic{opacity:.55;filter:brightness(0) invert(1)}

/* ===================== STICKY ATC ===================== */
.sticky-atc{display:none;position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#fff;border-top:2px solid var(--blue);padding:12px 20px;box-shadow:0 -4px 20px rgba(0,0,0,.1)}
@media(max-width:820px){.sticky-atc{display:block}}
.sticky-atc .btn-primary{font-size:16px;padding:14px 20px}

/* ===================== URGENCY BANNER ===================== */
.pdp-urgency-banner{background:linear-gradient(135deg,#e02020 0%,#ff4444 100%);color:#fff;border-radius:var(--r);padding:0.85rem 1.2rem;margin-bottom:1rem;text-align:center}
.pdp-urgency-text{display:block;font-weight:700;font-size:0.85rem;letter-spacing:0.04em;margin-bottom:0.35rem}
.pdp-urgency-timer{font-size:0.8rem;opacity:0.9}
.pdp-countdown{font-weight:700;font-variant-numeric:tabular-nums}

/* ===================== BUNDLE SELECTOR ===================== */
.pdp-bundle-selector{display:flex;flex-direction:column;gap:0.6rem;margin-bottom:1rem}
.pdp-bundle-option{border:2px solid var(--border);border-radius:var(--r);cursor:pointer;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}
.pdp-bundle-option input[type="radio"]{position:absolute;opacity:0;pointer-events:none}
.pdp-bundle-option.selected{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue),0 4px 12px rgba(20,107,221,.15)}
.pdp-bundle-option-inner{padding:1rem 1.2rem}
.pdp-bundle-option-header{display:flex;align-items:center;gap:0.75rem}
.pdp-bundle-radio{width:20px;height:20px;border-radius:50%;border:2px solid rgba(0,0,0,.2);flex-shrink:0;position:relative;transition:border-color .2s}
.pdp-bundle-option.selected .pdp-bundle-radio{border-color:var(--blue)}
.pdp-bundle-option.selected .pdp-bundle-radio::after{content:'';position:absolute;top:3px;left:3px;width:10px;height:10px;border-radius:50%;background:var(--blue)}
.pdp-bundle-option-title{flex:1;display:flex;align-items:center;gap:0.5rem;min-width:0}
.pdp-bundle-option-title strong{font-size:0.95rem;color:var(--text)}
.pdp-bundle-discount{font-size:0.7rem;font-weight:700;color:#fff;background:var(--green);padding:0.15rem 0.5rem;border-radius:100px;white-space:nowrap}
.pdp-bundle-option-price{text-align:right;flex-shrink:0}
.pdp-bundle-price-now{display:block;font-size:1.1rem;font-weight:700;color:var(--text)}
.pdp-bundle-price-was{display:block;font-size:0.78rem;color:#aaa;text-decoration:line-through}
.pdp-bundle-price-unit{display:block;font-size:0.72rem;color:var(--text-3);font-weight:500}
.pdp-bundle-option-sub{display:block;font-size:0.8rem;color:var(--text-3);margin-top:0.3rem;padding-left:2.5rem}
.pdp-bundle-badge{display:inline-block;font-size:0.72rem;font-weight:700;color:var(--blue);margin-top:0.25rem;padding-left:2.5rem}
.pdp-bundle-bonuses{margin-top:0.75rem;padding-top:0.75rem;border-top:1px solid rgba(0,0,0,.06);display:none}
.pdp-bundle-option.selected .pdp-bundle-bonuses{display:block}
.pdp-bundle-bonus-item{display:flex;align-items:center;gap:0.75rem;padding:0.4rem 0}
.pdp-bonus-thumb{width:44px;height:44px;object-fit:cover;border-radius:8px;border:1px solid rgba(0,0,0,.06)}
.pdp-bonus-info{flex:1;min-width:0}
.pdp-bonus-label{display:block;font-size:0.68rem;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:.03em}
.pdp-bonus-name{display:block;font-size:0.82rem;color:var(--text);font-weight:500}
.pdp-bonus-price{text-align:right;flex-shrink:0}
.pdp-bonus-free{display:block;font-size:0.95rem;font-weight:700;color:var(--green)}
.pdp-bonus-was{display:block;font-size:0.72rem;color:var(--text-3);text-decoration:line-through}

/* ===================== PRICE SUMMARY + GREEN ATC ===================== */
.pdp-price-summary{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.6rem;padding:0.5rem 0}
.pdp-price-was{font-size:1.05rem;color:#e02020;text-decoration:line-through;font-weight:500}
.pdp-price-now{font-size:1.5rem;font-weight:800;color:var(--text)}
.pdp-price-badge{font-size:0.75rem;font-weight:700;color:#fff;background:#e02020;padding:0.2rem 0.55rem;border-radius:4px;letter-spacing:0.02em}
.btn-primary.green-atc{background:#00c853;font-weight:700;letter-spacing:0.02em}
.btn-primary.green-atc:hover{background:#00a844}

/* ===================== TRUST STRIP (below ATC) ===================== */
.pdp-trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.06)}
.pdp-trust-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0.5rem}
.pdp-trust-item svg{color:var(--green);width:42px;height:42px}
.pdp-trust-item span{font-size:0.88rem;color:var(--text-3);line-height:1.3;font-weight:700}

/* ===================== LIGHTBOX ===================== */
.lightbox{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.88);align-items:center;justify-content:center}
.lightbox.open{display:flex}
.lb-inner{position:relative;max-width:92vw;max-height:92vh}
.lb-inner img{max-width:92vw;max-height:92vh;object-fit:contain;border-radius:var(--r)}
.lb-close{position:absolute;top:-18px;right:-18px;width:38px;height:38px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;color:#333;box-shadow:0 2px 12px rgba(0,0,0,.3);font-weight:700}

/* ===================== RESPONSIVE MISC ===================== */
@media(max-width:768px){
  /* benefit-pills stays vertical on mobile */
  .trust-badges{gap:8px}
}
