/* =========================================================================
   IPI — HOME (design system aplicado em seções Elementor)
   Escopo: .ipi-home — não afeta header, footer, loja, produto nem checkout.
   ========================================================================= */

.ipi-home{
  --r:var(--ipi-radius); --rs:var(--ipi-radius-sm); --rl:var(--ipi-radius-lg);
  --ease:var(--ipi-ease);
  font-family:var(--ipi-font-body);
  color:var(--ipi-text);
  font-size:17px;
  line-height:1.6;
  padding:0;
}
.ipi-home *,
.ipi-home *::before,
.ipi-home *::after{box-sizing:border-box;}

.ipi-home .wrap{width:min(1180px,92vw);margin-inline:auto;}
.ipi-home section{padding:clamp(44px,5vw,72px) 0;}
.ipi-home #ipi-produtos{padding-top:clamp(28px,3vw,44px);}
.ipi-home #ipi-tecnologia{padding-top:clamp(34px,4vw,56px);}
.ipi-home h1,.ipi-home h2,.ipi-home h3,.ipi-home h4{
  font-family:var(--ipi-font-display);color:var(--ipi-title);
  line-height:1.12;letter-spacing:.03em;font-weight:700;margin:0 0 12px;
}
.ipi-home p{margin:0 0 14px;color:var(--ipi-text);}
.ipi-home a{color:var(--ipi-magenta-soft);text-decoration:none;transition:color .25s var(--ease);}
.ipi-home a:hover{color:var(--ipi-cyan);}
.ipi-home img{max-width:100%;height:auto;}

/* utilidades */
.ipi-home .grad{background:var(--ipi-grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.ipi-home .grad3{background:var(--ipi-grad-3);-webkit-background-clip:text;background-clip:text;color:transparent;}
.ipi-home .eyebrow{
  font-family:var(--ipi-font-display);font-size:.7rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--ipi-lilac);margin-bottom:6px;display:block;
}

/* botões */
.ipi-home .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--ipi-font-display);font-size:.76rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;padding:14px 26px;
  border-radius:var(--rs);border:1px solid transparent;cursor:pointer;
  transition:.3s var(--ease);white-space:nowrap;
}
.ipi-home .btn-primary{background:linear-gradient(90deg,var(--ipi-purple-deep),var(--ipi-magenta))!important;color:#fff!important;border:0!important;}
.ipi-home .btn-primary:hover{box-shadow:0 0 40px rgba(168,85,247,.42);transform:translateY(-1px);color:#fff;}
.ipi-home .btn-ghost{background:transparent!important;border:1px solid var(--ipi-line)!important;color:var(--ipi-title)!important;box-shadow:none!important;}
.ipi-home .btn-ghost:hover{border-color:var(--ipi-magenta);color:var(--ipi-magenta-soft);box-shadow:0 0 26px var(--ipi-glow);}
.ipi-home .btn-sm{padding:11px 18px;font-size:.68rem;letter-spacing:.16em;}

/* ---------- hero ---------- */
.ipi-home .hero{padding:clamp(48px,7vw,96px) 0 40px;}
.ipi-home .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;}
.ipi-home .hero h1{font-size:clamp(2.4rem,5.4vw,4.4rem);letter-spacing:.02em;margin:14px 0 20px;}
.ipi-home .hero p.lead{font-size:1.08rem;max-width:44ch;color:var(--ipi-text);}
.ipi-home .hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px;}
.ipi-home .hero-stage{position:relative;display:grid;place-items:center;min-height:340px;}
.ipi-home .hero-stage::before{
  content:"";position:absolute;inset:8% 2%;border-radius:50%;
  background:radial-gradient(closest-side,rgba(139,92,246,.32),rgba(232,121,249,.08) 60%,transparent 78%);
  filter:blur(18px);
}
.ipi-home .hero-stage img{
  position:relative;width:100%;max-width:620px;
  filter:drop-shadow(0 30px 60px rgba(0,0,0,.65));
  animation:ipi-float 7s ease-in-out infinite;
}
@keyframes ipi-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.ipi-home .chip{
  position:absolute;z-index:3;padding:9px 14px;border-radius:var(--rs);
  background:var(--ipi-glass);border:1px solid var(--ipi-line);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  font-family:var(--ipi-font-display);font-size:.66rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ipi-title);
  white-space:nowrap;animation:ipi-bob 5.5s ease-in-out infinite;
}
.ipi-home .chip.b{top:16%;left:2%;animation-delay:.4s;}
.ipi-home .chip.c{bottom:18%;right:2%;animation-delay:.9s;animation-duration:6.5s;}
@keyframes ipi-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* stats */
.ipi-home .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:56px;}
.ipi-home .stat{
  background:rgba(255,255,255,.02);border:1px solid var(--ipi-line-soft);
  border-radius:var(--r);padding:22px;transition:.35s var(--ease);
}
.ipi-home .stat:hover{border-color:var(--ipi-line);box-shadow:0 0 36px var(--ipi-glow);transform:translateY(-3px);}
.ipi-home .stat b{display:block;font-family:var(--ipi-font-display);font-size:1.7rem;letter-spacing:.02em;}
.ipi-home .stat span{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ipi-muted);font-family:var(--ipi-font-display);}

/* cabeçalho de seção */
.ipi-home .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:40px;flex-wrap:wrap;}
.ipi-home .section-head h2{font-size:clamp(1.7rem,3.4vw,2.7rem);margin:0;}
.ipi-home .section-head p{max-width:52ch;color:var(--ipi-muted);margin:0;}

/* cards genéricos */
.ipi-home .features{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.ipi-home .card{
  background:rgba(255,255,255,.02);border:1px solid var(--ipi-line-soft);
  border-radius:var(--r);padding:26px;
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s;
}
.ipi-home .card:hover{transform:translateY(-4px);border-color:var(--ipi-line);box-shadow:0 0 40px var(--ipi-glow);}
.ipi-home .card .ico{
  width:40px;height:40px;border-radius:11px;display:grid;place-items:center;
  background:rgba(139,92,246,.12);border:1px solid var(--ipi-line);
  margin-bottom:16px;color:var(--ipi-magenta);font-family:var(--ipi-font-display);font-size:.9rem;font-weight:700;
}
.ipi-home .card h3{font-size:.95rem;letter-spacing:.06em;margin-bottom:8px;}
.ipi-home .card p{font-size:.94rem;color:var(--ipi-muted);margin:0;}

/* showcase */
.ipi-home .showcase{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;}
.ipi-home .stage{
  position:relative;border-radius:var(--rl);border:1px solid var(--ipi-line);
  background:radial-gradient(72% 72% at 50% 42%,rgba(139,92,246,.18),transparent 70%),rgba(255,255,255,.02);
  padding:34px;display:grid;place-items:center;min-height:380px;
}
.ipi-home .stage img{max-height:360px;width:auto;filter:drop-shadow(0 26px 50px rgba(0,0,0,.6));}
.ipi-home .stage .badge{
  position:absolute;top:20px;left:20px;font-family:var(--ipi-font-display);
  font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;
  padding:7px 12px;border-radius:9px;background:var(--ipi-glass);
  border:1px solid var(--ipi-line);color:var(--ipi-cyan);
}
.ipi-home .showcase h2{font-size:clamp(1.6rem,3vw,2.3rem);margin:8px 0 14px;}
.ipi-home .spec{list-style:none;padding:0;margin:22px 0 26px;display:grid;gap:12px;}
.ipi-home .spec li{display:flex;gap:12px;align-items:flex-start;font-size:.96rem;color:var(--ipi-text);}
.ipi-home .spec li::before{
  content:"";width:7px;height:7px;margin-top:9px;flex:0 0 7px;border-radius:50%;
  background:var(--ipi-grad);box-shadow:0 0 12px rgba(232,121,249,.6);
}
.ipi-home .price-hero{display:flex;align-items:baseline;gap:12px;margin-bottom:20px;}
.ipi-home .price-hero b{font-family:var(--ipi-font-display);font-size:1.9rem;color:var(--ipi-title);letter-spacing:.02em;}
.ipi-home .price-hero span{font-size:.85rem;color:var(--ipi-muted);}

/* categorias */
.ipi-home .cats{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.ipi-home .cat{
  position:relative;overflow:hidden;border:1px solid var(--ipi-line-soft);
  border-radius:var(--rl);padding:34px;min-height:230px;
  background:linear-gradient(160deg,rgba(139,92,246,.09),transparent 62%),rgba(255,255,255,.015);
  transition:.35s var(--ease);
}
.ipi-home .cat:hover{border-color:var(--ipi-line);box-shadow:0 0 44px var(--ipi-glow);transform:translateY(-4px);}
.ipi-home .cat .num{
  font-family:var(--ipi-font-display);font-size:3.2rem;font-weight:800;line-height:1;
  color:transparent;-webkit-text-stroke:1px rgba(168,85,247,.45);
}
.ipi-home .cat h3{font-size:1.3rem;margin:10px 0 8px;}
.ipi-home .cat p{color:var(--ipi-muted);font-size:.94rem;max-width:30ch;margin:0;}
.ipi-home .cat img{
  position:absolute;right:22px;bottom:18px;
  width:auto;height:auto;max-height:132px;max-width:44%;
  opacity:.95;filter:drop-shadow(0 16px 30px rgba(0,0,0,.6));pointer-events:none;
}

/* grade de produtos */
.ipi-home .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.ipi-home .product{
  position:relative;display:flex;flex-direction:column;
  background:linear-gradient(180deg,rgba(139,92,246,.07),transparent 60%),rgba(255,255,255,.02);
  border:1px solid var(--ipi-line-soft);border-radius:var(--r);
  padding:16px 16px 18px;transition:.35s var(--ease);
}
.ipi-home .product:hover{border-color:var(--ipi-line);box-shadow:0 0 40px var(--ipi-glow);transform:translateY(-4px);}
.ipi-home .product .ph{
  position:relative;height:200px;display:grid;place-items:center;margin-bottom:14px;
  border-radius:var(--rs);
  background:radial-gradient(70% 70% at 50% 45%,rgba(139,92,246,.13),transparent 72%);
}
.ipi-home .product .ph img{
  width:100%;height:200px;object-fit:contain;object-position:center;
  transition:transform .5s var(--ease);
}
.ipi-home .product:hover .ph img{transform:scale(1.045);}
.ipi-home .product h4{
  font-size:.86rem;letter-spacing:.04em;margin:0 0 6px;line-height:1.3;
  font-family:var(--ipi-font-display);color:var(--ipi-title);
}
.ipi-home .product .price{
  font-family:var(--ipi-font-display);color:var(--ipi-title);
  font-size:1rem;margin:0 0 14px;letter-spacing:.02em;
}
.ipi-home .product .price small{color:var(--ipi-muted);font-family:var(--ipi-font-body);font-size:.8rem;font-weight:400;}
.ipi-home .product .tag{
  position:absolute;top:12px;left:12px;z-index:2;
  font-family:var(--ipi-font-display);font-size:.54rem;letter-spacing:.12em;text-transform:uppercase;
  padding:6px 9px;border-radius:8px;background:var(--ipi-glass);
  border:1px solid var(--ipi-line);color:var(--ipi-title);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
.ipi-home .product .tag.soon{border-color:rgba(34,211,238,.45);color:var(--ipi-cyan);}
.ipi-home .product .btn{margin-top:auto;width:100%;padding:12px 14px;font-size:.66rem;}
.ipi-home .product .btn.is-soon{
  background:rgba(5,4,10,.6)!important;
  border:1px solid rgba(34,211,238,.35)!important;
  color:var(--ipi-cyan)!important;
  box-shadow:none!important;cursor:default;transform:none!important;
}
.ipi-home .product .btn.is-soon:hover{box-shadow:0 0 20px rgba(34,211,238,.18)!important;}

/* tecnologia */
.ipi-home .tech{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.ipi-home .tech .card{padding:30px;}
.ipi-home .tech .big{
  font-family:var(--ipi-font-display);font-size:2.3rem;letter-spacing:.02em;
  margin-bottom:6px;background:var(--ipi-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}

/* faixa CTA */
.ipi-home .band{
  border:1px solid var(--ipi-line);border-radius:var(--rl);padding:clamp(30px,5vw,56px);
  background:
    radial-gradient(80% 120% at 12% 20%,rgba(139,92,246,.20),transparent 60%),
    radial-gradient(60% 100% at 88% 80%,rgba(232,121,249,.14),transparent 60%),
    rgba(255,255,255,.02);
  display:grid;grid-template-columns:1.2fr auto;gap:32px;align-items:center;
}
.ipi-home .band h2{font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:10px;}

/* reveal — visível por padrão (a animação é só um enfeite opcional) */
.ipi-home .reveal{opacity:1;transform:none;}
.ipi-home.ipi-anim .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
.ipi-home.ipi-anim .reveal.in{opacity:1;transform:none;}

@media(max-width:1100px){
  .ipi-home .grid{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:980px){
  .ipi-home .hero-grid,.ipi-home .showcase,.ipi-home .band{grid-template-columns:1fr;}
  .ipi-home .features,.ipi-home .tech{grid-template-columns:repeat(2,1fr);}
  .ipi-home .stats{grid-template-columns:repeat(2,1fr);}
  .ipi-home .hero-stage{order:-1;min-height:280px;}
}
@media(max-width:600px){
  .ipi-home{font-size:16px;}
  .ipi-home .features,.ipi-home .tech,.ipi-home .grid,.ipi-home .stats,.ipi-home .cats{grid-template-columns:1fr;}
  .ipi-home .btn{width:100%;}
  .ipi-home .band .btn{width:auto;}
}
@media(prefers-reduced-motion:reduce){
  .ipi-home *{animation:none!important;transition-duration:.001ms!important;}
  .ipi-home .reveal{opacity:1;transform:none;}
}
/* Elementor: remove respiro/overflow do container */
.ipihome-section .elementor-container{max-width:none!important;}
.ipihome-section .elementor-column-wrap,
.ipihome-section .elementor-widget-wrap{padding:0!important;}
.ipihome-section .elementor-widget-html,
.ipihome-section .elementor-widget-container{margin:0!important;}
