/* PINTOR PREMIADO — estilos específicos desta página */

.pp-hero{
  position:relative;min-height:82vh;display:flex;align-items:center;
  padding:150px 8vw 90px;overflow:hidden;color:#fff;
  background:radial-gradient(1100px 600px at 85% -10%, rgba(217,160,43,0.22), transparent 60%),
             linear-gradient(160deg,#0a2b17 0%, #052617 55%, var(--ink) 100%);
}
.pp-hero-blob{
  position:absolute;border-radius:50%;filter:blur(60px);opacity:0.35;pointer-events:none;
}
.pp-hero-blob.one{width:420px;height:420px;background:var(--mustard);top:-140px;right:-80px;}
.pp-hero-blob.two{width:320px;height:320px;background:var(--green-light);bottom:-140px;left:-60px;opacity:0.25;}
.pp-hero-content{position:relative;z-index:2;max-width:720px;}
.pp-hero h1{color:#fff;font-size:clamp(32px,4.4vw,56px);margin-top:14px;line-height:1.08;}
.pp-hero h1 .accent{color:var(--mustard);}
.pp-hero-lede{color:rgba(255,255,255,0.72);font-size:17px;line-height:1.65;margin-top:20px;max-width:600px;}
.pp-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px;}

/* Regra base em destaque */
.pp-rule{
  display:flex;align-items:center;gap:18px;
  background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:26px 30px;margin-top:-40px;position:relative;z-index:3;
  box-shadow:0 24px 48px rgba(20,23,26,0.1);
}
.pp-rule-icon{
  flex-shrink:0;width:54px;height:54px;border-radius:12px;
  background:var(--green-tint);color:var(--green-deep);
  display:flex;align-items:center;justify-content:center;
}
.pp-rule p{font-size:15.5px;line-height:1.6;color:var(--ink);}
.pp-rule b{color:var(--green-deep);}

/* Steps (como participa) */
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.step-card{background:#fff;padding:36px 28px;position:relative;transition:transform .3s ease, box-shadow .3s ease;}
.step-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent,var(--green));transform:scaleX(0);transform-origin:left;transition:transform .35s ease;}
.step-card:hover{transform:translateY(-8px);box-shadow:0 24px 48px rgba(20,23,26,0.12);z-index:2;}
.step-card:hover::before{transform:scaleX(1);}
.step-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--accent,var(--green));color:#fff;margin-bottom:20px;}
.step-card h3{font-size:17px;margin-bottom:10px;}
.step-card p{font-size:14px;color:var(--muted);line-height:1.6;}

/* Tabela de prêmios */
.tier-note{font-size:13.5px;color:var(--muted);margin-top:-32px;margin-bottom:40px;max-width:640px;}
.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;}
.tier-card{
  background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:24px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tier-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px rgba(20,23,26,0.1);}
.tier-card.featured{border-color:var(--mustard);background:linear-gradient(180deg,var(--green-tint),#fff 55%);}
.tier-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;}
.tier-icon{
  width:46px;height:46px;border-radius:12px;flex-shrink:0;
  background:var(--green-deep);color:#fff;
  display:flex;align-items:center;justify-content:center;
  transition:transform .3s ease;
}
.tier-card:hover .tier-icon{transform:rotate(-6deg) scale(1.06);}
.tier-card.featured .tier-icon{background:linear-gradient(135deg,var(--mustard),var(--terracotta));}
.tier-points{text-align:right;font-family:'Space Grotesk',sans-serif;}
.tier-points b{font-size:22px;line-height:1;color:var(--ink);}
.tier-points span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted);margin-top:3px;}
.tier-choose{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.07em;color:var(--green-deep);margin-bottom:10px;}
.tier-card.featured .tier-choose{color:#a06a1f;}
.tier-items{list-style:none;font-size:14px;color:var(--ink);line-height:1.5;}
.tier-items li{position:relative;padding-left:14px;}
.tier-items li::before{content:'';position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--green);}
.tier-items li b{color:var(--green-deep);}
.tier-items li:not(:last-child)::after{
  content:'ou';display:block;margin:2px 0 6px 0;
  font-family:'IBM Plex Mono',monospace;font-size:10px;font-style:italic;color:var(--muted);
}

/* Regulamento (accordion) */
.reg-list{display:flex;flex-direction:column;gap:10px;}
.reg-item{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;}
.reg-item summary{
  list-style:none;cursor:pointer;padding:20px 24px;
  display:flex;align-items:center;gap:14px;font-weight:600;font-size:15px;
  font-family:'Space Grotesk',sans-serif;
}
.reg-item summary::-webkit-details-marker{display:none;}
.reg-item summary::marker{content:'';}
.reg-item summary .reg-idx{
  font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--green-deep);
  background:var(--green-tint);border-radius:6px;padding:3px 9px;flex-shrink:0;
}
.reg-item summary .reg-chevron{margin-left:auto;color:var(--muted);transition:transform .25s ease;flex-shrink:0;}
.reg-item[open] summary .reg-chevron{transform:rotate(180deg);}
.reg-item-body{padding:0 24px 22px 58px;font-size:14px;color:var(--muted);line-height:1.7;}
.reg-item-body p{margin-bottom:10px;}
.reg-item-body p:last-child{margin-bottom:0;}
.reg-footnote{margin-top:24px;font-size:13px;color:var(--muted);text-align:center;}

/* CTA final */
.pp-cta{background:var(--ink);color:#fff;text-align:center;}
.pp-cta .container{max-width:640px;}
.pp-cta h2{color:#fff;font-size:clamp(24px,3vw,34px);}
.pp-cta p{color:rgba(255,255,255,0.62);margin-top:14px;font-size:15.5px;line-height:1.6;}
.pp-cta .ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px;}
.pp-cta .pp-contact-line{margin-top:28px;color:rgba(255,255,255,0.5);font-size:13.5px;}

@media (max-width:900px){
  .steps-grid{grid-template-columns:repeat(2,1fr);}
  .pp-rule{flex-direction:column;text-align:center;margin-top:-24px;}
}
@media (max-width:640px){
  .steps-grid{grid-template-columns:1fr;}
  .tier-grid{grid-template-columns:1fr;}
  .reg-item-body{padding-left:24px;}
}
