/* ==========================================================================
   ABTS - 163º Curso de Tratamentos de Superfície - Digital via Zoom
   Tema visual baseado no anúncio oficial (verde profundo + dourado)
   Carregar SEMPRE depois de css/style.css
   ========================================================================== */

:root{
  --g900:#06251b;
  --g800:#0a3225;
  --g700:#0f4131;
  --g600:#14523e;
  --teal:#294b43;
  --gold:#f2a900;
  --gold-lt:#ffc23d;
  --ink:#0a3225;
  --muted:#5c6d68;
  --line:rgba(255,255,255,.18);
  --font-head:"Barlow","Open Sans",Helvetica,Arial,sans-serif;
}

body{ font-family:"Open Sans",Helvetica,Arial,sans-serif; }

h1,h2,h3,h4,h5,.section-title,.price-title,.btn-blue,.btn-white,.btn-white-border{
  font-family:var(--font-head)!important;
}

/* ---------- 1. Navbar ---------- */

.navbar-fixed-top{
  background-color:transparent!important;
  box-shadow:none!important;
}
.navbar-fixed-top.opaque{
  background-color:var(--g800)!important;
  border-bottom:1px solid rgba(242,169,0,.35);
  box-shadow:0 6px 26px rgba(0,0,0,.28)!important;
}
.navbar-fixed-top .navbar-brand img{
  background:#fff;
  border-radius:10px;
  padding:8px 14px;
}
.navbar-fixed-top .navbar-nav > li > a{
  color:#eaf3ef!important;
  font-weight:600;
  letter-spacing:.2px;
}
.navbar-fixed-top .navbar-nav > li > a:hover,
.navbar-fixed-top .navbar-nav .current a,
.navbar-fixed-top.opaque .navbar-nav .current a{
  color:var(--gold)!important;
}
.navbar-fixed-top .navbar-nav > li > a.discover-btn{
  background:var(--gold);
  border:1px solid var(--gold);
  color:var(--g800)!important;
  font-weight:700;
  border-radius:40px;
  padding:11px 24px!important;
  white-space:nowrap;
}
.navbar-fixed-top .navbar-nav > li > a.discover-btn:hover{
  background:var(--gold-lt);
  border-color:var(--gold-lt);
  color:var(--g800)!important;
}
.navbar-toggler-icon i{ color:var(--gold); }

/* ---------- 2. Hero ---------- */

.home-section.hero163{
  background:url(../images/bg-ts.jpg) center center / cover no-repeat;
  padding:0;
  overflow:hidden;
}
.hero163 .hero-veil{
  position:absolute;
  top:0; left:0; right:0; bottom:0;
  background:
    linear-gradient(101deg,
      rgba(6,37,27,.985) 0%,
      rgba(9,47,35,.975) 34%,
      rgba(12,58,44,.925) 50%,
      rgba(20,74,60,.66) 62%,
      rgba(28,84,72,.42) 78%,
      rgba(33,90,80,.30) 100%);
}
.hero163 .hero-bar{
  position:absolute; left:0; top:0; bottom:0;
  width:14px; background:var(--gold); z-index:3;
}
.hero163 .container{ position:relative; z-index:2; }
.hero163 .hero-inner{ padding:170px 15px 110px 15px; }

.hero163 .hero-badge{
  display:inline-flex; align-items:center;
  border:1px solid rgba(255,255,255,.45);
  border-radius:40px;
  padding:9px 22px;
  font-family:var(--font-head);
  font-size:14px; font-weight:700; letter-spacing:2.4px;
  text-transform:uppercase; color:#fff;
  margin-bottom:34px;
  background:rgba(255,255,255,.05);
}
.hero163 .hero-badge::before{
  content:""; width:9px; height:9px; border-radius:50%;
  background:var(--gold); flex:0 0 9px; margin-right:10px;
}

.hero163 .hero-edition{
  display:flex; align-items:baseline; flex-wrap:wrap;
  margin-bottom:2px;
}
.hero163 .hero-edition strong{
  font-family:var(--font-head);
  font-size:82px; line-height:1; font-weight:800;
  color:var(--gold); letter-spacing:-1px;
  margin-right:22px;
}
.hero163 .hero-edition span{
  font-family:var(--font-head);
  font-size:24px; font-weight:600; letter-spacing:6px;
  text-transform:uppercase; color:#cfded8;
}
.hero163 h1{
  font-family:var(--font-head);
  font-size:64px; line-height:1.03; font-weight:800;
  color:#fff; margin:6px 0 10px 0; letter-spacing:-.5px;
}
.hero163 .hero-format{
  font-family:var(--font-head);
  font-size:34px; font-weight:600; color:var(--gold);
  margin-bottom:26px; line-height:1.2;
}
.hero163 .hero-format img{ height:26px; margin-left:6px; vertical-align:-3px; }

.hero163 .hero-when{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:20px 0;
  margin-bottom:30px;
  font-family:var(--font-head);
  font-size:23px; color:#fff; line-height:1.5;
}
.hero163 .hero-when b{ font-weight:700; }
.hero163 .hero-when .dot{ color:var(--gold); margin:0 12px; font-weight:700; }

.hero163 .hero-list{
  list-style:none; padding:0; margin:0 0 36px 0;
  display:grid; grid-template-columns:1fr 1fr; grid-gap:16px 34px;
}
.hero163 .hero-list li{
  font-family:var(--font-head);
  font-size:21px; font-weight:500; color:#fff;
  padding-left:34px; position:relative; line-height:1.35;
}
.hero163 .hero-list li::before{
  content:"\2713";
  position:absolute; left:0; top:-1px;
  color:var(--gold); font-size:21px; font-weight:700;
}

.hero163 .hero-cta{ display:flex; align-items:center; flex-wrap:wrap; }
.hero163 .hero-cta .btn-gold{ margin-right:26px; }
.hero163 .hero-price{
  font-family:var(--font-head); color:#fff; line-height:1.35;
}
.hero163 .hero-price strong{ font-size:26px; font-weight:700; display:block; }
.hero163 .hero-price span{ font-size:15px; color:#c9dad4; }

/* ---------- 3. Botões ---------- */

.btn-gold{
  display:inline-block;
  font-family:var(--font-head);
  font-size:20px; font-weight:700; letter-spacing:.5px;
  color:var(--g800)!important;
  background:var(--gold);
  border:1px solid var(--gold);
  border-radius:10px;
  padding:18px 42px;
  text-shadow:none;
  box-shadow:0 10px 30px rgba(0,0,0,.28);
  transition:all .25s ease-in-out;
}
.btn-gold:hover,.btn-gold:focus,.btn-gold:visited{
  background:var(--gold-lt); border-color:var(--gold-lt);
  color:var(--g800)!important; text-decoration:none;
  box-shadow:0 6px 16px rgba(0,0,0,.32);
}
.btn-gold .fas{ margin-right:10px; }

.btn-gold-line{
  display:inline-block;
  font-family:var(--font-head);
  font-size:18px; font-weight:600;
  color:var(--gold)!important;
  background:transparent;
  border:1px solid var(--gold);
  border-radius:10px;
  padding:15px 32px;
  transition:all .25s ease-in-out;
}
.btn-gold-line:hover{
  background:var(--gold); color:var(--g800)!important; text-decoration:none;
}

/* ---------- 4. Seções ---------- */

.section-title{ color:var(--ink)!important; font-weight:800; }
.section-subtitle{ color:var(--muted); }
.section-white.section-top-border,.section-grey.section-top-border{ border-top:none; }

.eyebrow{
  display:block;
  font-family:var(--font-head);
  font-size:14px; font-weight:700; letter-spacing:3px;
  text-transform:uppercase; color:var(--gold);
  margin-bottom:12px;
}
.gold-rule{
  width:64px; height:4px; background:var(--gold);
  border-radius:2px; margin:22px auto 34px auto;
}
.gold-rule.left{ margin-left:0; margin-right:0; }

/* cards de destaque */
.fact-card{
  background:#fff;
  border:1px solid #e6ebe9;
  border-top:4px solid var(--gold);
  border-radius:12px;
  padding:34px 26px;
  height:100%;
  text-align:center;
  transition:all .25s ease-in-out;
}
.fact-card:hover{ box-shadow:0 16px 40px rgba(10,50,37,.12); transform:translateY(-4px); }
.fact-card i{ font-size:42px; color:var(--g600); display:block; margin-bottom:16px; }
.fact-card h4{
  font-size:20px; font-weight:700; color:var(--ink); margin-bottom:8px;
}
.fact-card p{ font-size:15px; color:var(--muted); margin:0; line-height:1.6; }

/* bloco escuro */
.section-dark{
  background:linear-gradient(115deg,var(--g900) 0%,var(--g800) 45%,var(--g700) 100%);
  padding:90px 0;
  position:relative;
}
.section-dark .section-title,.section-dark h2,.section-dark h3,.section-dark h4{ color:#fff!important; }
.section-dark p,.section-dark li{ color:#d5e2dd; }

/* programação */
.programa-list{
  list-style:none; padding:0; margin:0;
  column-count:2; column-gap:40px;
}
.programa-list li{
  break-inside:avoid; -webkit-column-break-inside:avoid; page-break-inside:avoid;
  padding:12px 0 12px 30px;
  position:relative;
  font-size:16.5px; line-height:1.45; color:#e3ede9;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.programa-list li::before{
  content:"\f058"; font-family:"Font Awesome 5 Free"; font-weight:900;
  position:absolute; left:0; top:13px; color:var(--gold); font-size:15px;
}

.zoom-card{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
  padding:30px;
  margin-top:36px;
}
.zoom-card img{ max-width:100%; height:auto; border-radius:8px; }
.zoom-card{ height:calc(100% - 36px); display:flex; flex-direction:column; justify-content:center; }
.zoom-card h4{ font-size:22px; font-weight:700; margin-bottom:14px; }
.zoom-card p{ font-size:16px; line-height:1.7; margin-bottom:0; }

/* professores */
.prof-list{ display:grid; grid-template-columns:repeat(3,1fr); grid-gap:18px; }
.prof-item{
  background:#fff;
  border:1px solid #e6ebe9;
  border-left:4px solid var(--gold);
  border-radius:10px;
  padding:20px 22px;
  transition:all .25s ease-in-out;
}
.prof-item:hover{ box-shadow:0 14px 34px rgba(10,50,37,.12); }
.prof-item h4{
  font-family:var(--font-head);
  font-size:19px; font-weight:700; color:var(--ink);
  margin:0 0 6px 0; line-height:1.25;
}
.prof-item p{
  font-size:15px; color:var(--muted); margin:0; line-height:1.5;
}

/* investimento */
.price-card{
  background:#fff;
  border:1px solid #e6ebe9;
  border-radius:14px;
  padding:38px 30px;
  height:100%;
  text-align:center;
  transition:all .25s ease-in-out;
}
.price-card:hover{ box-shadow:0 18px 44px rgba(10,50,37,.14); }
.price-card.featured{
  background:linear-gradient(150deg,var(--g800) 0%,var(--g600) 100%);
  border-color:var(--gold);
  box-shadow:0 18px 44px rgba(10,50,37,.28);
}
.price-card .tag{
  display:inline-block;
  font-family:var(--font-head);
  font-size:12.5px; font-weight:700; letter-spacing:2px; text-transform:uppercase;
  background:#eef3f1; color:var(--g700);
  border-radius:30px; padding:7px 18px; margin-bottom:20px;
}
.price-card.featured .tag{ background:var(--gold); color:var(--g800); }
.price-card .value{
  font-family:var(--font-head);
  font-size:44px; font-weight:800; color:var(--ink); line-height:1.1;
}
.price-card.featured .value{ color:var(--gold); }
.price-card .value small{ font-size:22px; font-weight:600; vertical-align:6px; margin-right:4px; }
.price-card .note{ font-size:15px; color:var(--muted); margin:14px 0 0 0; line-height:1.6; }
.price-card.featured .note{ color:#cfded8; }
.price-card .off{
  font-family:var(--font-head);
  font-size:17px; font-weight:700; color:var(--gold); margin-top:10px;
}

.extra-box{
  background:#f6f8f7;
  border:1px solid #e6ebe9;
  border-radius:14px;
  padding:34px;
  margin-top:34px;
  height:100%;
}
.extra-box h4{ font-size:20px; font-weight:700; color:var(--ink); margin-bottom:18px; }
.extra-box ul{ list-style:none; padding:0; margin:0; }
.extra-box li{
  position:relative; padding:8px 0 8px 30px; color:#3f524c; font-size:16px; line-height:1.5;
}
.extra-box li::before{
  content:"\f0da"; font-family:"Font Awesome 5 Free"; font-weight:900;
  position:absolute; left:6px; top:9px; color:var(--gold);
}

/* faixa CTA final */
.section-blue,.cta-band{
  background:linear-gradient(115deg,var(--g900) 0%,var(--g700) 100%)!important;
}
.cta-band .section-title{ color:#fff!important; }
.cta-band .section-subtitle{ color:#cfded8!important; }
.btn-white{ color:var(--g800)!important; }

/* ---------- 5. Rodapé ---------- */

.footer-white-box i,.footer-grey-box i,.footer-dark-grey-box i{ color:var(--g600); }
.footer-white-box h5,.footer-grey-box h5,.footer-dark-grey-box h5{ color:var(--ink); }
ul.footer_social{ padding-top:18px!important; }
ul.footer_social li{ margin:0 6px!important; }
ul.footer_social li a{
  display:inline-flex; align-items:center; justify-content:center;
  width:46px; height:46px; border-radius:50%;
  background:var(--g800);
  transition:all .25s ease-in-out;
}
ul.footer_social li a i{
  margin:0!important; padding:0!important;
  font-size:20px!important; line-height:1!important;
  color:#fff!important;
}
ul.footer_social li a:hover{ background:var(--gold); }
ul.footer_social li a:hover i{ color:var(--g800)!important; }
.footer-bottom{ background:var(--g900); padding:34px 0; }
.footer-bottom p,.footer-bottom p a,.footer-bottom a strong{ color:#cfded8!important; }

/* ---------- 6. Responsivo ---------- */

/* navbar comprimida entre 992px e 1199px (evita quebra dos itens) */
@media (min-width:992px) and (max-width:1199px){
  .navbar-fixed-top .navbar-brand img{ width:210px; height:auto; }
  .navbar-fixed-top .navbar-nav > li > a{
    padding:10px 11px!important; font-size:15px!important; white-space:nowrap;
  }
  .navbar-fixed-top .navbar-nav > li > a.discover-btn{
    padding:10px 16px!important; font-size:15px!important; margin-left:6px; margin-right:0;
  }
}

@media (max-width:1199px){
  .hero163 h1{ font-size:54px; }
  .hero163 .hero-edition strong{ font-size:70px; }
  .hero163 .hero-format{ font-size:30px; }
}

@media (max-width:991px){
  .hero163 .hero-veil{
    background:linear-gradient(120deg,rgba(6,37,27,.97) 0%,rgba(12,58,44,.93) 60%,rgba(20,74,60,.86) 100%);
  }
  .hero163 .hero-inner{ padding:140px 15px 80px 15px; }
  .hero163 h1{ font-size:44px; }
  .hero163 .hero-edition strong{ font-size:58px; }
  .hero163 .hero-edition span{ font-size:19px; letter-spacing:4px; }
  .hero163 .hero-format{ font-size:26px; }
  .hero163 .hero-when{ font-size:19px; }
  .hero163 .hero-list li{ font-size:18px; }
  .programa-list{ column-count:1; }
  .prof-list{ grid-template-columns:repeat(2,1fr); }
  .navbar-fixed-top{ border-bottom:none!important; }
  .navbar-fixed-top.opaque{ border-bottom:1px solid rgba(242,169,0,.35)!important; }
  .navbar-fixed-top .navbar-collapse{
    background:var(--g800); border-radius:10px; padding:10px 0; margin-top:10px;
  }
  .navbar-fixed-top .navbar-nav > li > a.discover-btn{
    display:inline-block; margin:10px 20px;
  }
}

@media (max-width:767px){
  .hero163 .hero-bar{ width:8px; }
  .hero163 .hero-inner{ padding:152px 15px 64px 15px; }
  .hero163 .hero-badge{ font-size:12px; letter-spacing:1.6px; padding:8px 16px; margin-bottom:24px; }
  .hero163 h1{ font-size:34px; }
  .hero163 .hero-edition strong{ font-size:46px; margin-right:14px; }
  .hero163 .hero-edition span{ font-size:16px; letter-spacing:3px; }
  .hero163 .hero-format{ font-size:22px; margin-bottom:20px; }
  .hero163 .hero-when{ font-size:17px; padding:16px 0; }
  .hero163 .hero-when .dot{ margin:0 7px; }
  .hero163 .hero-list{ grid-template-columns:1fr; grid-gap:12px; margin-bottom:28px; }
  .hero163 .hero-list li{ font-size:17px; }
  .hero163 .hero-cta .btn-gold{ margin-right:0; margin-bottom:18px; }
  .btn-gold{ font-size:18px; padding:16px 32px; width:100%; text-align:center; }
  .prof-list{ grid-template-columns:1fr; grid-gap:14px; }
  .prof-item{ padding:18px 20px; }
  .price-card .value{ font-size:36px; }
  .extra-box{ padding:26px 22px; }
}
