/* ============================================================
   INNER PAGE HEADER
   ============================================================ */
.page-header{
  padding:100px 0 64px;
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(700px 340px at 88% -10%,rgba(123,47,255,.16),transparent 60%),
    radial-gradient(600px 300px at 10% 0%,rgba(0,212,255,.10),transparent 60%);
}
.page-header__title{font-size:clamp(2.1rem,4vw,3.1rem);margin:16px 0 16px;max-width:22ch;}
.page-header__desc{color:var(--text-1);max-width:60ch;font-size:1.02rem;line-height:1.65;}
.page-header__stats{display:flex;gap:44px;margin-top:36px;flex-wrap:wrap;}
.page-header__stat b{display:block;font-size:1.7rem;font-family:'Space Mono',monospace;color:var(--cyan);}
.page-header__stat span{font-size:.82rem;color:var(--text-2);}

section.block{padding:88px 0;}
section.block + section.block{border-top:1px solid var(--line);}
.block--alt{background:var(--bg-1);}

/* ============================================================
   SERVICE DETAIL BLOCK  (Serviços page)
   ============================================================ */
.service-block{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center;}
.service-block.is-reverse{grid-template-columns:1.1fr .9fr;}
.service-block.is-reverse .service-block__media{order:2;}
.service-block__media img{border-radius:var(--radius-l);border:1px solid var(--line);aspect-ratio:4/3;object-fit:cover;}
.service-block__num{font-family:'Space Mono',monospace;color:var(--text-2);font-size:.85rem;margin-bottom:14px;display:block;}
.service-block__title{font-size:1.9rem;margin-bottom:16px;}
.service-block__desc{color:var(--text-1);line-height:1.7;margin-bottom:26px;max-width:56ch;}
.deliverables{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin-bottom:30px;}
.deliverables li{
  display:flex;gap:10px;align-items:flex-start;
  font-size:.92rem;color:var(--text-1);
}
.deliverables li svg{width:16px;height:16px;color:var(--cyan);flex-shrink:0;margin-top:2px;}
.gallery-strip{display:flex;gap:10px;overflow-x:auto;margin-top:26px;scrollbar-width:none;}
.gallery-strip::-webkit-scrollbar{display:none;}
.gallery-strip img{width:150px;height:110px;object-fit:cover;border-radius:var(--radius-s);flex-shrink:0;border:1px solid var(--line);}

@media (max-width:900px){
  .service-block,.service-block.is-reverse{grid-template-columns:1fr;}
  .service-block.is-reverse .service-block__media{order:0;}
  .deliverables{grid-template-columns:1fr;}
}

/* ============================================================
   CONVERSION BLOCK (WhatsApp / Email / Form) — reused everywhere
   ============================================================ */
.convert{
  margin-top:44px;
  border-radius:var(--radius-l);
  border:1px solid var(--line);
  background:var(--bg-1);
  padding:30px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.convert__opt{
  display:flex;align-items:center;gap:14px;
  padding:18px;border-radius:var(--radius-m);
  border:1px solid var(--line);
  background:var(--bg-0);
  transition:border-color .2s,transform .2s;
}
.convert__opt:hover{border-color:var(--cyan);transform:translateY(-2px);}
.convert__icon{
  width:42px;height:42px;border-radius:11px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.convert__icon svg{width:19px;height:19px;}
.convert__opt--wa .convert__icon{background:rgba(30,169,82,.15);color:#26c765;}
.convert__opt--mail .convert__icon{background:rgba(0,212,255,.12);color:var(--cyan);}
.convert__opt--form .convert__icon{background:rgba(255,45,155,.12);color:var(--pink);}
.convert__label{font-size:.92rem;font-weight:600;}
.convert__sub{font-size:.78rem;color:var(--text-2);}

@media (max-width:760px){.convert{grid-template-columns:1fr;}}

/* ============================================================
   GENERIC GRID LISTINGS (Produtos / Cursos / Portfólio / Eventos)
   ============================================================ */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;}
@media (max-width:980px){.grid-3{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.grid-3,.grid-2{grid-template-columns:1fr;}}

.listing-card{
  border:1px solid var(--line);
  border-radius:var(--radius-m);
  overflow:hidden;
  background:var(--bg-1);
  display:flex;flex-direction:column;
  transition:border-color .25s,transform .25s;
}
.listing-card:hover{border-color:var(--cyan);transform:translateY(-3px);}
.listing-card__img{height:190px;background-size:cover;background-position:center;position:relative;}
.listing-card__tag{
  position:absolute;top:12px;left:12px;
  font-family:'Space Mono',monospace;font-size:.64rem;letter-spacing:.05em;text-transform:uppercase;
  background:rgba(5,13,26,.75);border:1px solid var(--line-strong);
  padding:4px 10px;border-radius:100px;backdrop-filter:blur(6px);
}
.listing-card__body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1;}
.listing-card__title{font-size:1.08rem;}
.listing-card__desc{font-size:.87rem;color:var(--text-1);line-height:1.55;flex:1;}
.listing-card__price{font-family:'Space Mono',monospace;color:var(--cyan);font-size:.88rem;}
.listing-card__meta{display:flex;gap:14px;font-size:.78rem;color:var(--text-2);flex-wrap:wrap;}

/* ============================================================
   EVENT FEATURE CARD (reused on Eventos page)
   ============================================================ */
.evento-feature{
  border-radius:var(--radius-l);
  border:1px solid var(--line);
  background:linear-gradient(135deg,var(--bg-2),var(--bg-1));
  padding:38px;
  display:flex;
  gap:28px;
}
.evento-date{
  flex-shrink:0;
  width:92px;height:92px;
  border-radius:var(--radius-m);
  background:linear-gradient(150deg,var(--purple),var(--pink));
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  color:#fff;
}
.evento-date__day{font-size:1.8rem;font-weight:700;line-height:1;}
.evento-date__month{font-family:'Space Mono',monospace;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;margin-top:4px;}
.evento-body{flex:1;}
.evento-tag{
  display:inline-block;
  font-family:'Space Mono',monospace;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;
  color:var(--purple);margin-bottom:10px;
}
.evento-title{font-size:1.4rem;margin-bottom:14px;}
.evento-meta{display:flex;gap:22px;margin-bottom:22px;flex-wrap:wrap;}
.evento-meta span{
  display:flex;align-items:center;gap:8px;
  font-size:.85rem;color:var(--text-1);
}
.evento-meta svg{width:15px;height:15px;color:var(--text-2);}
@media (max-width:760px){.evento-feature{flex-direction:column;}}

.curso-tags{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap;}
.curso-tag{
  font-family:'Space Mono',monospace;
  font-size:.68rem;letter-spacing:.05em;
  padding:5px 12px;border-radius:100px;
  border:1px solid var(--line-strong);
  color:var(--text-1);
}

/* ============================================================
   FEATURED STRIP (top of Cursos/Portfólio pages etc.)
   ============================================================ */
.featured-strip{
  display:flex;align-items:center;gap:36px;
  padding:34px;
  border-radius:var(--radius-l);
  border:1px solid var(--line);
  background:linear-gradient(120deg,var(--bg-2),var(--bg-1));
  margin-bottom:52px;
}
.featured-strip__img{width:280px;height:200px;border-radius:var(--radius-m);object-fit:cover;flex-shrink:0;border:1px solid var(--line);}
.featured-strip__body{flex:1;}
@media (max-width:760px){.featured-strip{flex-direction:column;}.featured-strip__img{width:100%;height:220px;}}

/* ============================================================
   CATEGORY TILES (Solicitar form)
   ============================================================ */
.cat-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:40px 0 50px;}
.cat-tile{
  padding:24px 18px;
  border:1px solid var(--line);
  border-radius:var(--radius-m);
  background:var(--bg-1);
  display:flex;flex-direction:column;gap:12px;
  transition:all .2s var(--ease);
  text-align:left;
}
.cat-tile svg{width:22px;height:22px;color:var(--text-1);transition:color .2s;}
.cat-tile span{font-size:.9rem;font-weight:500;}
.cat-tile:hover{border-color:var(--line-strong);transform:translateY(-2px);}
.cat-tile.is-selected{border-color:var(--cyan);background:rgba(0,212,255,.06);}
.cat-tile.is-selected svg{color:var(--cyan);}
@media (max-width:900px){.cat-tiles{grid-template-columns:repeat(2,1fr);}}

/* ============================================================
   FORM
   ============================================================ */
.form-panel{
  max-width:680px;
  border:1px solid var(--line);
  border-radius:var(--radius-l);
  background:var(--bg-1);
  padding:40px;
}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.field{display:flex;flex-direction:column;gap:8px;}
.field.full{grid-column:1/-1;}
.field label{font-size:.84rem;color:var(--text-1);font-weight:500;}
.field input,.field select,.field textarea{
  background:var(--bg-0);
  border:1px solid var(--line-strong);
  border-radius:var(--radius-s);
  padding:12px 14px;
  color:var(--text-0);
  font-family:inherit;
  font-size:.92rem;
}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--cyan);}
.field textarea{resize:vertical;min-height:110px;}
.form-suggestion{
  font-size:.84rem;color:var(--text-2);
  background:rgba(0,212,255,.06);
  border:1px solid rgba(0,212,255,.2);
  border-radius:var(--radius-s);
  padding:12px 14px;
  margin-bottom:22px;
  display:none;
}
.form-suggestion.is-visible{display:block;}
@media (max-width:640px){.form-row{grid-template-columns:1fr;}.form-panel{padding:26px;}}

/* ============================================================
   SOBRE — VALUES / STATS / TEAM
   ============================================================ */
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.value-card{padding:26px 22px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--bg-1);}
.value-card svg{width:24px;height:24px;color:var(--cyan);margin-bottom:16px;}
.value-card h3{font-size:1.02rem;margin-bottom:8px;}
.value-card p{font-size:.85rem;color:var(--text-1);}
@media (max-width:900px){.values-grid{grid-template-columns:1fr 1fr;}}

.stats-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:40px 0;}
.stat{text-align:center;flex:1;min-width:120px;}
.stat b{display:block;font-size:2.4rem;font-family:'Space Mono',monospace;background:linear-gradient(120deg,var(--cyan),var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent;}
.stat span{color:var(--text-2);font-size:.85rem;}

.founder-row{display:flex;gap:40px;align-items:center;}
.founder-row img{width:220px;height:220px;border-radius:var(--radius-l);object-fit:cover;flex-shrink:0;border:1px solid var(--line);}
@media (max-width:760px){.founder-row{flex-direction:column;text-align:center;}}

.team-placeholder{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:14px;padding:60px;border:1px dashed var(--line-strong);border-radius:var(--radius-l);
  color:var(--text-2);text-align:center;
}

/* ============================================================
   NOVIDADES — social grid
   ============================================================ */
.social-card{position:relative;border-radius:var(--radius-m);overflow:hidden;border:1px solid var(--line);background:var(--bg-1);}
.social-card__img{height:220px;background-size:cover;background-position:center;}
.social-card__platform{
  position:absolute;top:12px;right:12px;
  width:34px;height:34px;border-radius:9px;
  background:rgba(5,13,26,.75);backdrop-filter:blur(6px);
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--line-strong);
}
.social-card__platform svg{width:16px;height:16px;}
.social-card__body{padding:18px;}
.social-card__caption{font-size:.87rem;color:var(--text-1);margin-bottom:14px;line-height:1.5;}

/* ============================================================
   CONTACTO PAGE
   ============================================================ */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
.contact-info{display:flex;flex-direction:column;gap:18px;}
.contact-info__item{
  display:flex;gap:16px;align-items:flex-start;
  padding:18px;border:1px solid var(--line);border-radius:var(--radius-m);
  background:var(--bg-1);
}
.contact-info__item svg{width:19px;height:19px;color:var(--cyan);flex-shrink:0;margin-top:2px;}
.map-placeholder{
  height:100%;min-height:320px;
  border-radius:var(--radius-l);
  border:1px dashed var(--line-strong);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;color:var(--text-2);
  background:
    linear-gradient(var(--line) 1px,transparent 1px) 0 0/32px 32px,
    linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/32px 32px,
    var(--bg-1);
}
.map-placeholder svg{width:30px;height:30px;color:var(--pink);}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr;}}
