
:root{
  --deep:#14382a;--forest:#1f5c3e;--sage:#3d7a55;--leaf:#5a9e6f;
  --mint:#a8d5b5;--cream:#fffef4;--warm:#e8ddc8;--gold:#c4892a;
  --amber:#f8f134;--text:#1a1a18;--muted:#5a5a52;--white:#fff;
  --red:#c0392b;--green:#27ae60;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--text);overflow-x:hidden}

/* ── HERO ── */
.hero{
  background:linear-gradient(145deg,var(--deep) 0%,var(--forest) 55%,#2d7a50 100%);
  min-height:100vh;display:flex;flex-direction:column;
  justify-content:center;align-items:center;text-align:center;
  padding:30px 40px 100px;position:relative;overflow:hidden;
}
.hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(transparent,var(--cream));}
.hero-tag{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:4px;color:var(--mint);background:rgba(255,255,255,.08);border:1px solid rgba(168,213,181,.3);padding:8px 20px;border-radius:40px;margin-bottom:24px;display:inline-block;position:relative;z-index:1;}
.hero-brand{font-family:'DM Mono',monospace;font-size:13px;letter-spacing:6px;color:var(--amber);text-transform:uppercase;margin-bottom:10px;position:relative;z-index:1;}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,9vw,96px);font-weight:700;color:var(--white);line-height:1;margin-bottom:6px;position:relative;z-index:1;}
.hero h1 span{font-style:italic;color:var(--mint);}
.hero-sub{font-family:'Playfair Display',serif;font-size:clamp(16px,2.5vw,24px);font-style:italic;color:var(--amber);margin-bottom:24px;position:relative;z-index:1;}

/* Hero product image */
.hero-img-wrap{position:relative;z-index:1;margin-bottom:32px;}
.hero-img-wrap img{width:min(480px,90vw);border-radius:20px;filter:drop-shadow(0 16px 40px rgba(0,0,0,.45));}

.hero-badges{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;position:relative;z-index:1;}
.badge{display:flex;flex-direction:column;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(168,213,181,.25);border-radius:14px;padding:12px 7px;min-width:105px;backdrop-filter:blur(8px);transition:all .3s;}
.badge:hover{background:rgba(255,255,255,.14);transform:translateY(-3px);}
.badge-num{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:var(--amber);line-height:1;}
.badge-lbl{font-size:16px;color:var(--mint);margin-top:4px;text-align:center;}

/* ── TABS ── */
.tabs-nav{display:flex;background:var(--deep);position:sticky;top:0;z-index:100;box-shadow:0 4px 20px rgba(0,0,0,.2);overflow-x:auto;}
.tab-btn{flex:1;min-width:180px;padding:18px 20px;background:transparent;border:none;color:rgba(255,255,255,.45);font-family:'DM Sans',sans-serif;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s;border-bottom:3px solid transparent;white-space:nowrap;}
.tab-btn:hover{color:var(--mint);}
.tab-btn.active{color:var(--amber);border-bottom:3px solid var(--amber);background:rgba(255,255,255,.05);}

/* ── SECTIONS ── */
.section{display:none;animation:fadeUp .4s ease;}
.section.active{display:block;}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.section-top{display:block;height:1px;}/* scroll anchor */

/* ── SHARED ── */
.eyebrow{font-family:'DM Mono',monospace;font-size:16px;letter-spacing:4px;color:var(--sage);text-transform:uppercase;margin-bottom:14px;}
.eyebrow.light{color:var(--mint);}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(26px,4vw,50px);font-weight:700;color:var(--deep);line-height:1.15;margin-bottom:18px;}
.sec-title em{font-style:italic;color:var(--sage);}
.sec-title.white{color:var(--white);}
.sec-body{font-size:16px;color:var(--muted);line-height:1.8;max-width:680px;margin:0 auto;}
.sec-body.white{color:rgba(255,255,255,.72);}
.block-center{text-align:center;padding:64px 40px 48px;max-width:960px;margin:0 auto;}

/* ── PROTOCOLO ── */
.detox-strip{background:var(--deep);padding:64px 40px;}
.detox-inner{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.detox-inner h2{font-family:'Playfair Display',serif;font-size:clamp(22px,3vw,36px);color:var(--white);line-height:1.25;margin-bottom:18px;}
.detox-inner h2 em{font-style:italic;color:var(--amber);}
.detox-inner p{font-size:16px;color:rgba(255,255,255,.72);line-height:1.6;margin-bottom:14px;}
.organ-list{list-style:none;display:flex;flex-direction:column;gap:10px;}
.organ-item{display:flex;align-items:center;gap:14px;background:rgba(255, 255, 255, 0.145);border:1px solid rgba(255, 255, 255, 0.589);border-radius:12px;padding:12px 16px;}
.organ-pct{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;color:var(--amber);min-width:62px;text-align:center;}
.organ-nm{font-weight:600;color:var(--white);font-size:18px;}
.organ-ds{font-size:16px;color:rgba(255,255,255,.55);margin-top:2px;}

.sys-block{padding:56px 40px;max-width:960px;margin:0 auto;}
.sys-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:12px;margin-top:32px;}
.sys-card{background:var(--white);border-radius:14px;padding:20px 14px;text-align:center;border:2px solid transparent;box-shadow:0 2px 10px rgba(0,0,0,.06);transition:all .3s;}
.sys-card:hover{border-color:var(--leaf);transform:translateY(-4px);box-shadow:0 8px 20px rgba(31,92,62,.12);}
.sys-icon{font-size:26px;margin-bottom:8px;}
.sys-nm{font-size:16px;font-weight:600;color:var(--deep);}
.sys-ds{font-size:14px;color:var(--muted);margin-top:4px;line-height:1.4;}

/* Phases */
.phases-wrap{background:var(--warm);padding:16px 20px;}
.phases-inner{max-width:960px;margin:0 auto;}
.phases-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:32px;}
.phase-card{background:var(--white);border-radius:18px;overflow:hidden;box-shadow:0 4px 18px rgba(0,0,0,.08);}
.phase-head{padding:22px 24px 14px;border-bottom:1px solid #f0ece4;}
.phase-tag{font-family:'DM Mono',monospace;font-size:14px;letter-spacing:3px;text-transform:uppercase;padding:5px 12px;border-radius:20px;display:inline-block;margin-bottom:10px;}
.phase-tag.a{background:#fdecea;color:var(--red);}
.phase-tag.r{background:#eaf7ee;color:var(--green);}
.phase-nm{font-family:'Playfair Display',serif;font-size:21px;font-weight:700;color:var(--deep);}
.phase-dur{font-family:'Playfair Display',serif;font-size:44px;font-weight:700;line-height:1;margin:4px 0;}
.phase-dur.a{color:var(--red);}
.phase-dur.r{color:var(--green);}
.phase-sub{font-size:15px;color:var(--muted);}
.phase-body{padding:18px 14px 14px;}
.dose-box{background:#f8f6f1;border-radius:10px;padding:12px 14px;margin-bottom:10px;font-size:14px;line-height:1.65;}
.dose-prod{font-weight:600;color:var(--deep);display:flex;align-items:center;gap:7px;margin-bottom:3px; font-size: 18px;}
.dose-dot{width:7px;height:7px;border-radius:50%;background:var(--leaf);flex-shrink:0;}
.phase-note{font-size:14px;color:var(--muted);line-height:1.6;font-style:italic;margin-top:8px;}

/* Diet alert */
.diet-alert{background:linear-gradient(135deg,#fff8e1,#fff3cd);border:2px solid var(--amber);border-radius:14px;padding:20px 22px;margin-top:16px;}
.diet-alert-title{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--gold);margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.diet-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
.diet-col{background:rgba(192,57,43,.07);border-radius:9px;padding:10px 12px;border-left:3px solid var(--red);}
.diet-col.ok{background:rgba(39,174,96,.07);border-left-color:var(--green);}
.diet-col-lbl{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--red);margin-bottom:6px;}
.diet-col.ok .diet-col-lbl{color:var(--green);}
.diet-item{font-size:14px;color:#4a3010;margin-bottom:2px;display:flex;align-items:center;gap:5px;}
.diet-item.ok{color:#1a3a20;}
.diet-why{margin-top:14px;background:rgba(31,92,62,.08);border-radius:9px;padding:10px 12px;font-size:12px;color:var(--deep);line-height:1.6;border-left:3px solid var(--leaf);}

/* ── CTA BANNER ── */
.cta-banner{background:linear-gradient(135deg,var(--deep) 0%,var(--forest) 100%);padding:56px 40px;}
.cta-inner{max-width:880px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;}
.cta-left{}
.cta-kit-img{width:220px;filter:drop-shadow(0 12px 28px rgba(0,0,0,.5));flex-shrink:0;}
.cta-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(224,168,58,.15);border:1px solid rgba(224,168,58,.4);border-radius:30px;padding:5px 16px;margin-bottom:18px;font-size:11px;color:var(--amber);font-family:'DM Mono',monospace;letter-spacing:2px;text-transform:uppercase;}
.cta-title{font-family:'Playfair Display',serif;font-size:clamp(22px,3.5vw,38px);font-weight:700;color:var(--white);margin-bottom:12px;line-height:1.2;}
.cta-title em{font-style:italic;color:var(--mint);}
.cta-desc{font-size:16px;color:rgba(255,255,255,.7);margin-bottom:22px;line-height:1.6;}
.cta-bonus{display:flex;flex-direction:column;gap:10px;margin-bottom:26px;}
.bonus-item{background:rgba(255,255,255,.07);border:1px solid rgba(168,213,181,.2);border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:10px;font-size:13px;color:var(--white);}
.bonus-icon{font-size:70px;flex-shrink:0;}
.bonus-text{line-height:1.4;}
.bonus-text strong{color:var(--mint);display:block;font-size:16px;margin-bottom:1px;}
.cta-btn{display:inline-flex;align-items:center;gap:10px;background:var(--amber);color:var(--deep);font-family:'DM Sans',sans-serif;font-size:18px;font-weight:700;padding:15px 32px;border-radius:50px;text-decoration:none;border:none;cursor:pointer;transition:all .3s;box-shadow:0 6px 22px rgba(224,168,58,.4); text-align: center; text-transform: uppercase;}
.cta-btn:hover{background:#f0b832;transform:translateY(-2px);box-shadow:0 10px 28px rgba(224,168,58,.5);}
.cta-sub{margin-top:12px;font-size:11px;color:var(--mint); }

/* ── ROTEIRO ── */
.rot-head{max-width:960px;margin:0 auto;padding:56px 40px 0;text-align:center;}
.legend{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin:20px 0 32px;}
.leg-item{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;}
.leg-dot{width:11px;height:11px;border-radius:50%;}
.leg-dot.a{background:var(--red);}
.leg-dot.r{background:var(--green);}
/* --- Calendário Roteiro (Ajuste Mobile) --- */
/* --- Ajuste Geral do Calendário --- */
.cal-outer {
  max-width: 900px;    /* Mesma largura do resto do conteúdo */
  margin: 0 auto;      /* Centraliza no desktop */
  width: 100%;         /* Garante que ocupe o espaço disponível */
  overflow-x: auto;    /* Permite o scroll lateral apenas no mobile/quando necessário */
  padding-bottom: 20px;
}

/* Garante que o grid não force o layout inteiro a aumentar */
.cal-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 10px;
  min-width: 600px;    /* Força o scroll horizontal apenas em telas < 600px */
}

/* Hint apenas para Mobile */
.swipe-hint {
  display: none; 
  text-align: center;
  font-size: 13px;
  color: #888;
  margin-bottom: 10px;
  font-style: italic;
}

@media (max-width: 767px) {
  .swipe-hint { display: block; }
}
/* Centraliza o texto dos cabeçalhos (Seg, Ter, Qua...) */
.cal-hdr {
  text-align: center;
  font-weight: bold;
  color: var(--sage);
  padding-bottom: 10px;
}
.cal-day{border-radius:9px;padding:9px 5px;text-align:center;cursor:pointer;transition:all .22s;border:2px solid transparent;}
.cal-day.a{background:#fdecea;border-color:#e74c3c22;}
.cal-day.a:hover{background:var(--red);}
.cal-day.r{background:#eaf7ee;border-color:#27ae6022;}
.cal-day.r:hover{background:var(--green);}
.d-num{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;line-height:1;}
.cal-day.a .d-num{color:var(--red);}
.cal-day.a:hover .d-num{color:var(--white);}
.cal-day.r .d-num{color:var(--green);}
.cal-day.r:hover .d-num{color:var(--white);}
.d-ph{font-size:12px;margin-top:3px;font-weight:600;}
.cal-day.a .d-ph{color:var(--red);}
.cal-day.a:hover .d-ph{color:rgba(255,255,255,.8);}
.cal-day.r .d-ph{color:var(--green);}
.cal-day.r:hover .d-ph{color:rgba(255,255,255,.8);}
.d-dose{font-size:11px;margin-top:3px;color:#999;line-height:1.3;}
.cal-day:hover .d-dose{color:rgba(255,255,255,.7);}

.dose-guide{background:var(--deep);padding:56px 40px;}
.dg-inner{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.dc{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:26px;}
.dc-lbl{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:3px;text-transform:uppercase;padding:4px 11px;border-radius:20px;display:inline-block;margin-bottom:16px;}
.dc-lbl.a{background:rgba(192,57,43,.3);color:#ff8a7a;}
.dc-lbl.r{background:rgba(39,174,96,.25);color:#7de8a0;}
.dc h3{font-family:'Playfair Display',serif;font-size:21px;color:var(--white);margin-bottom:16px;}
.di{background:rgba(255,255,255,.05);border-radius:9px;padding:11px 14px;margin-bottom:10px;border-left:3px solid var(--leaf);}
.di-prod{font-size:18px;font-weight:600;color:var(--mint);margin-bottom:2px;}
.di-amt{font-size:19px;font-family:'Playfair Display',serif;color:var(--amber);}
.di-how{font-size:12px;color:rgba(255,255,255,.58);margin-top:3px;line-height:1.5;}
.dc-tip{margin-top:14px;background:rgba(196,137,42,.15);border:1px solid rgba(196,137,42,.3);border-radius:9px;padding:11px 14px;font-size:13px;color:var(--amber);line-height:1.6;}

.cycles-note{max-width:960px;margin:0 auto;padding:48px 40px;text-align:center;}
.cycles-note h3{font-family:'Playfair Display',serif;font-size:35px;color:var(--deep);margin-bottom:12px;}
.cycles-note p{font-size:15px;color:var(--muted);max-width:560px;margin:0 auto;line-height:1.7;}
.cycle-pills{display:flex;gap:12px;justify-content:center;margin-top:24px;flex-wrap:wrap;}
.cpill{background:var(--forest);color:var(--white);padding:10px 20px;border-radius:40px;font-size:14px;font-weight:500;}
.cpill span{color:var(--amber);font-family:'Playfair Display',serif;font-size:16px;font-weight:700;}

/* ── INGREDIENTES ── */
.ing-head{background:var(--forest);padding:56px 40px 48px;text-align:center; margin-top: -31px;}

/* Product showcase with real images */
.prod-showcase{background:var(--deep);padding:40px;}
.ps-inner{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.ps-card{background:rgba(255,255,255,.06);border:1px solid rgba(168,213,181,.2);border-radius:18px;padding:24px;display:flex;align-items:center;gap:18px;}
.ps-prod-img{width:100px;height:130px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 6px 16px rgba(0,0,0,.45));}
.ps-info{}
.ps-info-tag{font-family:'DM Mono',monospace;font-size:12px;letter-spacing:2px;color:var(--amber);text-transform:uppercase;margin-bottom:8px;}
.ps-info h3{font-family:'Playfair Display',serif;font-size:25px;color:var(--white);margin-bottom:4px;}
.ps-info h3 em{font-style:italic;color:var(--mint);}
.ps-info p{font-size:14px;color:rgba(255,255,255,.65);line-height:1.6;}

.prod-sec{max-width:960px;margin:0 auto;padding:48px 40px;}

/* Ajuste do container pai */
.prod-bar {
  display: flex;
  align-items: center; /* Alinha texto e vídeo verticalmente */
  gap: 40px;           /* Espaço maior entre texto e vídeo */
  margin-bottom: 28px;
  padding-bottom: 30px;
  border-bottom: 2px solid var(--warm);
  flex-wrap: wrap;     /* Isso faz o vídeo cair para baixo no celular */
}

/* Largura das colunas no Desktop */
.prod-text-content {
  flex: 1;             /* Ocupa o espaço disponível */
  min-width: 300px;    /* Garante que não fique espremido demais */
}

.prod-video-content {
  flex: 0 0 350px;     /* Tamanho fixo para o card do vídeo */
  width: 100%;
}

/* Responsividade: No celular, força a quebra para parecer uma coluna única */
@media (max-width: 768px) {
  .prod-bar {
    flex-direction: column; /* Empilha tudo */
    text-align: center;     /* Centraliza o texto no celular */
  }
  
  .prod-video-content {
    flex: 0 0 100%;       /* O card ocupa a largura toda no mobile */
    margin-top: 20px;
  }
}

.prod-title{font-family:'Playfair Display',serif;font-size:34px;font-weight:700;color:var(--deep);line-height:1;}
.prod-title em{font-style:italic;color:var(--sage);}
.prod-sub-lbl{font-size:14px;color:var(--muted);margin-top:4px;}
.prod-type{font-family:'DM Mono',monospace;font-size:12px;letter-spacing:3px;text-transform:uppercase;padding:6px 13px;border-radius:20px;background:var(--deep);color:var(--mint);}
.synergy{background:var(--deep);color:var(--white);border-radius:13px;padding:20px 24px;margin-bottom:24px;font-size:14px;line-height:1.75;border-left:4px solid var(--amber);}
.synergy strong{color:var(--amber);}


/* GLINAC */
.glinac-block{background:linear-gradient(135deg,#0d2b1e,#1a4a30);border:2px solid rgba(90,158,111,.4);border-radius:16px;padding:24px 28px;margin-bottom:24px;position:relative;overflow:hidden;}
.glinac-block::before{content:'GLINAC';position:absolute;right:-8px;top:-8px;font-family:'Playfair Display',serif;font-size:76px;font-weight:700;color:rgba(90,158,111,.08);line-height:1;}
.glinac-header{display:flex;align-items:center;gap:14px;margin-bottom:16px;}
.glinac-shield{width:48px;height:48px;background:linear-gradient(145deg,#3d7a55,#5a9e6f);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 14px rgba(90,158,111,.4);flex-shrink:0;}
.glinac-titles h3{font-family:'Playfair Display',serif;font-size:22px;color:var(--white);margin-bottom:2px;}
.glinac-titles span{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:3px;color:var(--mint);text-transform:uppercase;}
.glinac-desc{font-size:14px;color:rgba(255,255,255,.72);line-height:1.75;margin-bottom:14px;}
.glinac-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;}
.glinac-item{background:rgba(255,255,255,.06);border-radius:9px;padding:12px 13px;border-top:2px solid var(--leaf);}
.glinac-item-name{font-weight:600;color:var(--mint);font-size:12px;margin-bottom:3px;}
.glinac-item-dose{font-family:'DM Mono',monospace;font-size:14px;color:var(--amber);margin-bottom:3px;}
.glinac-item-desc{font-size:12px;color:rgba(255,255,255,.6);line-height:1.5;}
.glinac-benefits{display:flex;flex-wrap:wrap;gap:7px;}
.glinac-benefit{background:rgba(90,158,111,.2);border-radius:20px;padding:4px 11px;font-size:11px;color:var(--mint);font-weight:500;}

.ing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:14px;}
.ic{background:var(--white);border-radius:13px;padding:18px;box-shadow:0 2px 10px rgba(0,0,0,.06);border:1px solid #ede9e0;transition:all .3s;position:relative;overflow:hidden;}
.ic::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--sage),var(--leaf));}
.ic:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(31,92,62,.12);}
.ic-em{font-size:25px;margin-bottom:7px;}
.ic-nm{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--deep);margin-bottom:2px;}
.ic-role{font-size:12px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--sage);margin-bottom:8px;}
.ic-dose-badge{display:inline-flex;align-items:center;gap:4px;background:var(--deep);color:var(--amber);font-family:'DM Mono',monospace;font-size:12px;padding:3px 8px;border-radius:10px;margin-bottom:8px;}
.ic-desc{font-size:14px;color:var(--muted);line-height:1.65;}
.ic-hl{margin-top:13px;background:#f0f7f3;border-radius:7px;padding:7px 11px;font-size:13px;color:var(--forest);font-weight:500;border-left:2px solid var(--leaf);}

.divider{background:var(--warm);height:3px;max-width:880px;margin:0 auto;}

footer{background:var(--deep);color:rgba(255,255,255,.45);text-align:center;padding:36px;font-size:13px;line-height:1.9;}
footer strong{color:var(--mint);}
footer a{color:var(--amber);text-decoration:none;}
footer small{display:block;margin-top:10px;font-size:11px;color:rgba(255,255,255,.26);}

::-webkit-scrollbar{width:5px;}
::-webkit-scrollbar-track{background:var(--cream);}
::-webkit-scrollbar-thumb{background:var(--sage);border-radius:3px;}

@media(max-width:700px){
  .detox-inner,.phases-grid,.dg-inner,.ps-inner,.glinac-grid,.cta-inner{grid-template-columns:1fr;}
  .cta-kit-img{display:none;}
  .block-center,.sys-block,.prod-sec,.rot-head,.cal-outer,.cycles-note,.prod-showcase,.dose-guide,.phases-wrap .phases-inner{padding-left:18px;padding-right:18px;}
  .prod-bar{flex-direction:column;align-items:flex-start;}
  .diet-grid{grid-template-columns:1fr;}
}

/* --- Rolagem Suave e Correção das Seções --- */
html { scroll-behavior: smooth; }

.section {
  display: block !important; /* Força todas as seções a aparecerem */
  padding-top: 90px; /* Margem para o menu fixo não engolir o título da seção */
  margin-top: -60px; /* Compensa o visual do padding */
}

/* --- STICKY NAV (Menu Fixo) --- */
.tabs-nav {
  position: sticky;
  top: 0;
  background: #205e3fcc;
  backdrop-filter: blur(8px);
  z-index: 1000;
  display: flex;
  justify-content: flex-start; /* Alinha à esquerda no mobile para o scroll funcionar bem */
  gap: 10px;
  padding: 12px 15px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.06);
  overflow-x: auto; 
  white-space: nowrap;
  width: 100%; /* Trava a largura para não vazar da tela */
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch; /* Deixa o arrastar lisinho no iPhone */
}

/* Esconde a barrinha feia de rolagem */
.tabs-nav::-webkit-scrollbar { display: none; } 

.nav-link {
  text-decoration: none;
  background: #f4ede0;
  color: #14382a;
  padding: 10px 16px;
  font-size: 14px; /* Fonte um pelinho menor no mobile */
  font-weight: 600;
  border-radius: 8px;
  transition: all 0.3s ease;
  flex-shrink: 0; /* Impede o botão de espremer o texto */
}

.nav-link:hover, .nav-link.active {
  background: #14382a;
  color: #fff;
  transform: translateY(-2px);
}

/* --- Ajuste fino para Desktop (Telas maiores) --- */
@media (min-width: 768px) {
  .tabs-nav {
    justify-content: center; /* Volta a ficar no centro quando tem espaço */
    padding: 15px 20px;
    gap: 15px;
  }
  .nav-link {
    font-size: 15px;
    padding: 12px 20px;
  }
}


.swipe-hint {
  display: none; /* Esconde no desktop */
    text-align: center;
    font-size: 15px;
    color: #c0392b;
    margin-bottom: 10px;
    font-style: italic;
    font-weight: 600;
    border: 1px dotted;
    width: 90%;
    margin: 10px auto;
    border-radius: 10px;
    padding: 2px 5px;
}

/* Mostra apenas no mobile */
@media (max-width: 767px) {
  .swipe-hint { display: block; }
}


/* --- Estilos Comuns para Desktop e Mobile --- */
.prod-showcase {
  padding: 50px 0; /* espaço ao redor do showcase */
}

.ps-inner {
  display: flex;
  justify-content: center; /* centraliza os cards */
  gap: 30px; /* espaço entre os cards */
}

.ps-card {
  display: flex;
  align-items: center; /* centraliza verticalmente no desktop */
  background: rgba(255, 255, 255, 0.03); /* ligeiro tom escuro */
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  padding: 30px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  box-sizing: border-box; /* padding/borda dentro da largura */
}

/* Base de estilos para a imagem do card (mantendo os inline) */
.ps-card img {
  max-width: 220px; /* como no inline original */
  border-radius: 20px; /* como no inline original */
  object-fit: contain; /* mantém a proporção */
}

/* Base de estilos para o texto do card */
.ps-info {
  flex: 1; /* texto ocupa o espaço restante */
}


/* --- Mobile (Telas menores que 768px) --- */
@media (max-width: 767px) {
  .ps-inner {
    flex-direction: column; /* Stacks product cards vertically */
    gap: 20px; /* reduz espaço entre cards empilhados no mobile */
  }
  .ps-card {
    flex-direction: column; /* Stack image and text vertically */
    width: 90%; /* card ocupa toda a largura no mobile */
    padding: 20px; /* reduz padding interno no mobile */
    align-items: center; /* centraliza o conteúdo horizontalmente no mobile */
    text-align: center; /* centraliza o texto no mobile */
    margin: 0 auto;
  }
  .ps-card img {
    max-width: 250px !important; /* Foto em evidência, centralizada, override do inline original */
    margin: 0 auto 20px auto; /* Centraliza horizontalmente e adiciona margem inferior */
    border-radius: 20px !important; /* assegura o border radius inline */
  }
  .ps-info {
    width: 100%; /* texto ocupa toda a largura abaixo da imagem */
    padding: 0 10px; /* ligeira margem interna para o texto nas laterais */
  }
}

/* --- Desktop (Telas 768px ou maiores) --- */
@media (min-width: 768px) {
  .ps-inner {
    flex-direction: row; /* mantém layout em linha no desktop */
  }
  .ps-card {
    flex-direction: row; /* imagem à esquerda, texto à direita */
    width: calc(50% - 15px); /* largura de cada card no desktop */
    align-items: center; /* centraliza verticalmente */
  }
  .ps-card img {
    margin-right: 5px; /* espaço entre imagem e texto no desktop */
  }
}



/* --- CONTAINER E CAPA DO VÍDEO --- */
.video-showcase {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
  margin: 40px 0;
}

.video-card {
    position: relative;
    max-width: 350px;
    width: 100%;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 8px 16px rgb(21 56 42 / 40%);
    background: #15382a;
    border: 3px solid #f2fff7;
}

.v-thumb {
  width: 100%;
  display: block;
  transition: transform 0.4s ease, opacity 0.4s ease;
  opacity: 0.85; /* Deixa a imagem sutilmente mais escura para o botão branco brilhar */
}

/* Efeito sutil ao passar o mouse na imagem */
.video-card:hover .v-thumb {
  transform: scale(1.05);
  opacity: 0.7;
}

/* --- O BOTÃO SOFTING (PULSANTE) --- */
.softing-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;
  height: 50px;
  background-color: #f8f135;
  color: #218f50; /* Cor do triângulo do play (teu verde) */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: all 0.3s ease;
}

/* Ajuste do ícone para ficar perfeitamente no centro visual */
.softing-play svg {
  width: 28px;
  height: 28px;
  margin-left: 4px; 
}

/* Hover no próprio botão */
.softing-play:hover {
  background-color: #14382a;
  color: #ffffff;
  transform: translate(-50%, -50%) scale(1.1);
}

/* --- AS ONDAS (RIPPLE EFFECT) --- */
.softing-play::before,
.softing-play::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background-color: #ffffff; /* Cor da onda */
  border-radius: 50%;
  z-index: -1;
  animation: radar-pulse 2s linear infinite;
}

/* A segunda onda sai com atraso para dar o efeito de sequência */
.softing-play::after {
  animation-delay: 1s;
}

/* Motor da Animação */
@keyframes radar-pulse {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.6;
  }
  100% {
    transform: translate(-50%, -50%) scale(1.8); /* Tamanho máximo da onda */
    opacity: 0; /* Desaparece suavemente no final */
  }
}



/* ==========================================
   FOOTER NUTRISCIENCE PREMIUM
   ========================================== */
/* Container que respeita a largura da tua LP */
.footer-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

.footer-nutri {
  background-color: var(--deep);
  color: #fff;
  padding: 60px 0 20px;
}

/* Grid que se adapta sozinho */
.footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 40px;
  margin-bottom: 40px;
}

.footer-col h5 {
  color: var(--mint);
  margin-bottom: 20px;
  font-size: 1.2rem;
}

.contact-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  opacity: 0.9;
}

.selos-seguranca {
   gap: 25px;
}

.selos-seguranca img {
  height: 40px;
  opacity: 0.8;
}

.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.1);
  padding-top: 20px;
  text-align: center;
  font-size: 0.8rem;
}

.dev-link img {
  margin-top: 15px;
  max-width: 150px;
  opacity: 0.5;
  transition: 0.3s;
}

.dev-link img:hover { opacity: 1; }