/* Certificações Hub */

/* Hero — split layout */
.ch-hero{
  padding: var(--page-top) 0 clamp(56px,7vw,72px);
  background:linear-gradient(160deg,#fffdf7,#f6efe0);
  position:relative;overflow:hidden;
}
.ch-hero::before{
  content:"";position:absolute;top:-200px;right:-200px;
  width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(159,118,27,.05),transparent 60%);
  pointer-events:none;
}
.ch-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}
.ch-bread{margin-bottom:20px;font-size:.72rem;font-weight:600;color:var(--quiet)}
.ch-bread a{color:var(--gold)}
.ch-bread span{margin:0 6px;color:var(--light)}
.ch-hero h1{font-size:clamp(2rem,4.5vw,3.2rem);line-height:.94;letter-spacing:-.02em}
.ch-hero-sub{margin-top:14px;font-size:clamp(.88rem,1.1vw,1rem);line-height:1.72;color:var(--muted);max-width:500px}
.ch-hero-ctas{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
.ch-hero-img{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.ch-hero-img img{width:100%;height:auto;display:block}
.ch-hero-caption{
  position:absolute;bottom:0;left:0;right:0;
  padding:10px 16px;
  background:linear-gradient(transparent,rgba(0,0,0,.5));
  color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.04em;
}

/* Authority strip */
.ch-auth{background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(28px,4vw,40px) 0}
.ch-auth-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.ch-auth-item{
  padding:14px 10px;border-radius:var(--r);text-align:center;
  background:var(--white);border:1px solid var(--line);
}
.ch-auth-item strong{display:block;font-family:var(--serif);font-size:15px;font-weight:700;color:var(--gold);margin-bottom:2px}
.ch-auth-item span{font-size:.6rem;line-height:1.3;color:var(--quiet);display:block}

/* Cert cards */
.ch-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.ch-card{
  display:block;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-lg);
  background:var(--white);text-decoration:none;color:var(--ink);
  transition:all .35s cubic-bezier(.22,1,.36,1);
}
.ch-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.ch-card-top{
  min-height:90px;display:grid;place-items:center;
  color:#fff;font-family:var(--serif);font-size:2.2rem;font-weight:700;
  position:relative;overflow:hidden;
}
.ch-card-top::after{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(circle at 30% 70%,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:18px 18px;
}
.ch-card--gold{background:linear-gradient(135deg,#C4A24E,#A68A3A)}
.ch-card--purple{background:linear-gradient(135deg,#8B5CF6,#6D28D9)}
.ch-card--blue{background:linear-gradient(135deg,#3B82F6,#1D4ED8)}
.ch-card--teal{background:linear-gradient(135deg,#0F766E,#065F46)}
.ch-card-body{padding:22px}
.ch-card-body h3{font-size:1.05rem;letter-spacing:-.02em;margin-bottom:4px}
.ch-card-org{display:block;color:var(--gold);font-size:.68rem;font-weight:800;margin-bottom:8px}
.ch-card-body>p{color:var(--muted);font-size:.82rem;line-height:1.56;margin-bottom:14px}
.ch-card-details{border-top:1px solid var(--line);padding-top:12px}
.ch-card-details li{display:flex;justify-content:space-between;padding:4px 0;font-size:.76rem}
.ch-card-details strong{color:var(--quiet);font-weight:600}
.ch-card-details span{color:var(--ink);font-weight:700}
.ch-card-cta{display:block;margin-top:14px;font-size:.8rem;font-weight:800;color:var(--gold)}

/* Comparador */
.ch-compare{background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ch-comp-list{max-width:700px;margin:0 auto}
.ch-comp{
  display:block;padding:18px 20px;border-bottom:1px solid var(--line);
  text-decoration:none;color:var(--ink);
  transition:background .2s,padding-left .2s;
}
.ch-comp:first-child{border-top:1px solid var(--line)}
.ch-comp:hover{background:var(--white);padding-left:28px}
.ch-comp-q{display:block;font-size:.9rem;font-weight:600;margin-bottom:4px}
.ch-comp-a{display:block;font-size:.78rem;color:var(--gold);font-weight:700}

/* Condição especial */
.ch-offer{background:var(--dark);color:#fff}
.ch-offer-box{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.ch-offer .ey{color:var(--gold-soft)}
.ch-offer h2{color:#fff;font-size:clamp(1.8rem,3.5vw,2.6rem);letter-spacing:-.02em}
.ch-offer h2 em{color:var(--gold-soft)}
.ch-offer-text>p{color:rgba(255,255,255,.55);font-size:.88rem;line-height:1.65;margin-top:12px}
.ch-offer-ctas{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.ch-offer .btn-outline{border-color:rgba(255,255,255,.14);color:#fff}
.ch-offer .btn-outline:hover{border-color:var(--gold-soft);color:var(--gold-soft)}
.ch-offer-price{display:flex;flex-direction:column;gap:14px}
.ch-offer-p{
  padding:24px;border-radius:var(--r-lg);text-align:center;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);
}
.ch-offer-p span{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.45);margin-bottom:6px}
.ch-offer-p strong{font-size:clamp(2.4rem,5vw,3.2rem);font-weight:700;letter-spacing:-.03em}
.ch-offer-p strong sup{font-size:.4em;font-weight:600}
.ch-offer-p--pack{border-color:rgba(201,165,84,.2);background:rgba(201,165,84,.06)}
.ch-offer-p--pack strong{color:var(--gold-soft)}

/* SEO intro */
.ch-seo-intro{background:var(--white);padding:clamp(40px,5vw,64px) 0}
.ch-seo-intro h2{font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.02em;margin-bottom:14px}
.ch-seo-intro h2 em{font-style:normal;color:var(--gold)}
.ch-seo-intro>div>p{font-size:.92rem;line-height:1.72;color:var(--muted);max-width:760px;margin-bottom:28px}
.ch-seo-choose{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ch-seo-choose-item{padding:20px;border-radius:var(--r);background:var(--warm);border:1px solid var(--line)}
.ch-seo-choose-item strong{display:block;font-size:.88rem;margin-bottom:6px;color:var(--ink)}
.ch-seo-choose-item p{font-size:.8rem;line-height:1.56;color:var(--muted);margin:0}
.ch-seo-choose-item a{color:var(--gold);font-weight:700;text-decoration:none}
.ch-seo-choose-item a:hover{text-decoration:underline}

/* FAQ */
.ch-faq{background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ch-faq-list{max-width:740px;margin:0 auto}
.ch-faq-i{border-bottom:1px solid var(--line)}
.ch-faq-i:first-child{border-top:1px solid var(--line)}
.ch-faq-i summary{
  padding:18px 0;font-size:.95rem;font-weight:700;color:var(--ink);
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;
}
.ch-faq-i summary::after{content:"+";font-size:1.2rem;font-weight:400;color:var(--quiet);transition:transform .2s}
.ch-faq-i[open] summary::after{content:"\2212"}
.ch-faq-i summary::-webkit-details-marker{display:none}
.ch-faq-a{padding:0 0 18px}
.ch-faq-a p{font-size:.86rem;line-height:1.7;color:var(--muted);margin:0}

/* Responsive */
@media(max-width:1080px){
  .ch-hero-grid{grid-template-columns:1fr}
  .ch-hero-img{max-width:540px}
  .ch-auth-grid{grid-template-columns:repeat(3,1fr)}
  .ch-cards{grid-template-columns:1fr}
  .ch-offer-box{grid-template-columns:1fr}
}
@media(max-width:680px){
  /* Hero mobile */
  .ch-hero{padding:clamp(48px,8vw,64px) 0 clamp(32px,5vw,44px)}
  .ch-hero .wrap{width:100%;max-width:100%;padding-left:16px;padding-right:16px;box-sizing:border-box}
  .ch-hero-grid{grid-template-columns:1fr;gap:24px}
  .ch-hero h1{font-size:clamp(1.7rem,7.5vw,2.2rem);line-height:.95;max-width:100%;overflow-wrap:break-word}
  .ch-hero-sub{width:100%;max-width:100%;white-space:normal;overflow-wrap:break-word}
  .ch-hero-img{max-width:100%;border-radius:var(--r)}
  .ch-hero-img img{height:200px;object-fit:cover}
  .ch-hero-ctas{flex-direction:column}
  .ch-hero-ctas .btn{width:100%}
  .ch-bread{font-size:.65rem}

  /* Authority */
  .ch-auth-grid{grid-template-columns:repeat(2,1fr)}

  /* Cards */
  .ch-card-top{min-height:70px;font-size:1.8rem}

  /* Comparador */
  .ch-comp{padding:14px 16px}
  .ch-comp-q{font-size:.84rem}

  /* Offer */
  .ch-offer-box{gap:24px}
  .ch-offer h2{font-size:clamp(1.5rem,6vw,2rem)}
  .ch-offer-ctas{flex-direction:column}
  .ch-offer-ctas .btn{width:100%}
  .ch-offer-price{flex-direction:row;gap:8px}
  .ch-offer-p{flex:1;padding:16px}
  .ch-offer-p strong{font-size:clamp(1.8rem,6vw,2.4rem)}

  /* SEO intro */
  .ch-seo-choose{grid-template-columns:1fr}
  .ch-seo-intro h2{font-size:clamp(1.3rem,5vw,1.6rem)}

  /* FAQ */
  .ch-faq-i summary{font-size:.88rem;padding:14px 0}
  .ch-faq-a p{font-size:.82rem}
}
