/* ──────────────────────────────────────────────────────────────
   encontrepersonal.com.br — CSS Principal
   Paleta: Azul #1A4FA0 · Laranja #E87B1E · Cinza #F4F6FA
────────────────────────────────────────────────────────────── */
:root {
  --blu:  #1A4FA0; --blu2: #2E6FD9; --blu-l:#C8DDEF; --blu-d:#0D2E66;
  --ora:  #E87B1E; --ora-l:#FAEADA; --ora-d:#A04A05;
  --gray: #F4F6FA; --gray2:#E2E6EF; --gray3:#8A94A6;
  --grn:  #1A8C5B;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'Barlow', sans-serif; color: #1A2035; background: var(--gray); }

/* ── TAGS HERO ─────────────────────────────────────────── */

.ep-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center;

  max-width:760px;
  margin:0 auto;
}

.ep-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:6px 14px;

  border-radius:999px;

  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);

  color:rgba(255,255,255,.88);
  text-decoration:none;

  font-size:12px;
  font-weight:600;

  transition:.18s;
}

.ep-tag:hover{
  background:var(--ora);
  border-color:var(--ora);
  color:#fff;

  transform:translateY(-1px);
}

/* ── BANNER HERO ─────────────────────────────────────────── */

.ep-banner{
  position:relative;
  background:var(--blu-d);
  min-height:320px;
  display:flex;
  align-items:center;
  overflow:hidden;
}

.ep-banner-bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      120deg,
      #0D2E66 0%,
      #1A4FA0 55%,
      #1A8C5B 100%
    );
}

.ep-banner-pattern{
  position:absolute;
  inset:0;
  background-image:
    radial-gradient(
      circle,
      rgba(255,255,255,.04) 1px,
      transparent 1px
    );

  background-size:28px 28px;
}

.ep-banner-stripe{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:4px;
  background:
    linear-gradient(
      90deg,
      var(--ora),
      var(--blu2)
    );
}

.ep-banner-content{
  position:relative;
  z-index:2;
  padding:56px 1.5rem 64px;
  max-width:760px;
  margin:0 auto;
  text-align:center;
  width:100%;
}

.ep-banner-tag{
  display:inline-block;
  background:rgba(232,123,30,.18);
  color:#FFD2A7;
  border:1px solid rgba(255,180,120,.4);

  font-family:'Barlow Condensed',sans-serif;
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;

  padding:5px 16px;
  border-radius:100px;
  margin-bottom:18px;
}

.ep-banner h1{
  font-family:'Barlow Condensed',sans-serif;
  font-size:52px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:-1px;

  color:#fff;
  line-height:1;
  margin-bottom:14px;
}

.ep-banner-sub{
  font-size:16px;
  color:rgba(255,255,255,.72);
  line-height:1.7;
  margin-bottom:30px;
  font-weight:300;
}
/* ── STATS ───────────────────────────────────────────── */

.ep-statsbar{
  background:#fff;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;

  border-bottom:1px solid var(--gray2);
}

.ep-stat{
  text-align:center;
  padding:18px 34px;
}

.ep-stat-n{
  font-family:'Barlow Condensed',sans-serif;
  font-size:30px;
  font-weight:800;
  color:var(--blu);
}

.ep-stat-l{
  font-size:11px;
  color:var(--gray3);
  text-transform:uppercase;
  letter-spacing:.08em;
}

/* ── SECTIONS ────────────────────────────────────────────── */
.ep-section {
    padding:40px 1.5rem;
    max-width:1400px;
    margin:0 auto;
}
.ep-sec-hd { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:12px; }
.ep-sec-title { font-family:'Barlow Condensed',sans-serif; font-size:20px; font-weight:800; text-transform:uppercase; letter-spacing:.5px; }
.ep-sec-title span { color:var(--ora); }
.ep-sec-more { font-size:12px; color:var(--blu); font-weight:600; text-decoration:none; }

/* ── TRAINER CARDS ───────────────────────────────────────── */

.ep-grid{
    display:grid;
    grid-template-columns:repeat(5, minmax(0,1fr));
    gap:25px;
    width:100%;
}

/* Tablet */
@media (max-width: 992px){
    .ep-grid{
        grid-template-columns:repeat(2, minmax(0,1fr));
    }
}

/* Celular */
@media (max-width: 640px){
    .ep-grid{
        grid-template-columns:1fr;
    }
}

.ep-card { background:#fff; border:1px solid var(--gray2); border-radius:10px; padding:18px 14px; text-decoration:none; color:inherit; cursor:pointer; transition:all .15s; position:relative; overflow:hidden; display:block; }
.ep-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--gray2); }
.ep-card.destaque::before { background:var(--ora); }
.ep-card.elite::before { background:var(--blu); }
.ep-card:hover { border-color:var(--ora); transform:translateY(-2px); box-shadow:0 4px 16px rgba(232,123,30,.12); }
.ep-cbadge { position:absolute; top:12px; right:10px; font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:3px 8px; border-radius:100px; font-family:'Barlow Condensed',sans-serif; }
.ep-cbadge.d { background:var(--ora-l); color:var(--ora-d); }
.ep-cbadge.e { background:var(--blu-l); color:var(--blu-d); }
.ep-av { width:50px; height:50px; border-radius:0; display:flex; align-items:center; justify-content:center; font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:17px; margin-bottom:10px; border:2px solid; overflow:hidden; }
.av-o { background:var(--ora-l); color:var(--ora-d); border-color:var(--ora); }
.av-b { background:var(--blu-l); color:var(--blu-d); border-color:var(--blu); }
.ep-cname { font-family:'Barlow Condensed',sans-serif; font-size:15px; font-weight:800; text-transform:uppercase; letter-spacing:.3px; margin-bottom:2px; }
.ep-cspec { font-size:12px; color:var(--gray3); margin-bottom:8px; }
.ep-cmeta { display:flex; align-items:center; gap:8px; font-size:11px; color:var(--gray3); margin-bottom:6px; }
.ep-stars { color:var(--ora); font-size:11px; }
.ep-cviews { font-size:10px; color:var(--gray3); display:flex; align-items:center; gap:3px; margin-bottom:6px; }
.ep-cprice { font-size:13px; font-weight:600; color:var(--blu); }
.ep-chips { display:flex; flex-wrap:wrap; gap:4px; margin-top:7px; }
.ep-chip { font-size:10px; padding:2px 8px; background:var(--gray); border-radius:100px; color:var(--gray3); border:1px solid var(--gray2); }
.ep-empty { text-align:center; padding:40px; color:var(--gray3); }
.ep-empty a { color:var(--blu); }

/* ── HOW IT WORKS ────────────────────────────────────────── */
.ep-how { background:var(--blu-d); padding:36px 1.5rem; display:flex; justify-content:center; flex-wrap:wrap; }
.ep-step { text-align:center; padding:0 24px; flex:1; min-width:130px; border-right:1px solid rgba(255,255,255,.1); }
.ep-step:last-child { border-right:none; }
.ep-step-n { width:34px; height:34px; border-radius:50%; background:var(--ora); color:#fff; display:flex; align-items:center; justify-content:center; font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:16px; margin:0 auto 10px; }
.ep-step-t { font-family:'Barlow Condensed',sans-serif; font-size:13px; font-weight:700; text-transform:uppercase; color:#fff; letter-spacing:.5px; margin-bottom:4px; }
.ep-step-d { font-size:11px; color:rgba(255,255,255,.5); line-height:1.5; }

/* ── PERFIL ──────────────────────────────────────────────── */
.ep-banner-stripe-top { height:4px; background:linear-gradient(90deg,var(--ora),var(--blu)); }
.ep-profile-head { background:#fff; border-bottom:1px solid var(--gray2); padding:26px 1.5rem; display:flex; gap:18px; align-items:flex-start; flex-wrap:wrap; }
.ep-pav { width:76px; height:76px; border-radius:50%; background:var(--ora-l); display:flex; align-items:center; justify-content:center; font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:24px; color:var(--ora-d); flex-shrink:0; border:3px solid var(--ora); overflow:hidden; }
.ep-pinfo { flex:1; min-width:180px; }
.ep-pname { font-family:'Barlow Condensed',sans-serif; font-size:25px; font-weight:800; text-transform:uppercase; letter-spacing:.5px; margin-bottom:4px; }
.ep-psub { font-size:13px; color:var(--gray3); margin-bottom:10px; }
.ep-pbadges { display:flex; flex-wrap:wrap; gap:6px; }
.ep-pb { display:flex; align-items:center; gap:4px; font-size:11px; padding:4px 10px; border-radius:100px; border:1px solid var(--gray2); color:var(--gray3); }
.ep-pb.ok { background:var(--ora-l); border-color:var(--ora); color:var(--ora-d); font-weight:600; }
.ep-pb.views { background:var(--blu-l); border-color:var(--blu); color:var(--blu-d); font-weight:600; }
.ep-cbuttons { display:flex; flex-direction:column; gap:6px; min-width:148px; }
.ep-bwa  { background:#25D366; color:#fff; border:none; padding:9px 14px; border-radius:6px; font-size:12px; font-weight:700; cursor:pointer; font-family:'Barlow Condensed',sans-serif; letter-spacing:.8px; text-transform:uppercase; display:flex; align-items:center; gap:5px; justify-content:center; text-decoration:none; }
.ep-big  { background:var(--ora); color:#fff; border:none; padding:9px 14px; border-radius:6px; font-size:12px; font-weight:700; cursor:pointer; font-family:'Barlow Condensed',sans-serif; letter-spacing:.8px; text-transform:uppercase; display:flex; align-items:center; gap:5px; justify-content:center; text-decoration:none; }
.ep-bfb  { background:var(--blu); color:#fff; border:none; padding:9px 14px; border-radius:6px; font-size:12px; font-weight:700; cursor:pointer; font-family:'Barlow Condensed',sans-serif; letter-spacing:.8px; text-transform:uppercase; display:flex; align-items:center; gap:5px; justify-content:center; text-decoration:none; }
.ep-bem  { background:var(--gray); color:#1A2035; border:1px solid var(--gray2); padding:9px 14px; border-radius:6px; font-size:12px; font-weight:700; cursor:pointer; font-family:'Barlow Condensed',sans-serif; letter-spacing:.8px; text-transform:uppercase; display:flex; align-items:center; gap:5px; justify-content:center; text-decoration:none; }

/* ── ABAS ────────────────────────────────────────────────── */
.ep-tabs-bar { display:flex; background:#fff; border-bottom:1px solid var(--gray2); padding:0 1.5rem; overflow-x:auto; }
.ep-tab { padding:11px 14px; font-size:12px; font-weight:700; color:var(--gray3); cursor:pointer; border:none; background:none; border-bottom:2px solid transparent; white-space:nowrap; text-transform:uppercase; letter-spacing:.5px; font-family:'Barlow Condensed',sans-serif; transition:all .15s; }
.ep-tab.active { color:var(--blu); border-bottom-color:var(--ora); }
.ep-tab:hover:not(.active) { color:#1A2035; }
.ep-tab-c { display:none; }
.ep-tab-c.active { display:block; }
.ep-icard { background:#fff; border:1px solid var(--gray2); border-radius:10px; padding:18px; margin-bottom:12px; border-left:3px solid var(--ora); }
.ep-icard-t { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--ora); border-bottom:1px solid var(--ora-l); padding-bottom:8px; margin-bottom:12px; font-family:'Barlow Condensed',sans-serif; }
.ep-row { display:flex; justify-content:space-between; align-items:center; padding:7px 0; border-bottom:.5px solid var(--gray2); font-size:13px; }
.ep-row:last-child { border-bottom:none; }
.ep-rl { color:var(--gray3); }
.ep-rv { font-weight:500; }

/* ── PLANOS ──────────────────────────────────────────────── */
.ep-plans-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:12px; }
.ep-plan { background:#fff; border:1px solid var(--gray2); border-radius:10px; padding:18px 14px; position:relative; }
.ep-plan.pop { border:2px solid var(--ora); }
.ep-plan-badge { position:absolute; top:-10px; left:50%; transform:translateX(-50%); background:var(--ora); color:#fff; font-size:9px; font-weight:700; padding:3px 12px; border-radius:100px; white-space:nowrap; letter-spacing:.08em; text-transform:uppercase; font-family:'Barlow Condensed',sans-serif; }
.ep-plan-name { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--ora); margin-bottom:7px; font-family:'Barlow Condensed',sans-serif; }
.ep-plan-price { font-family:'Barlow Condensed',sans-serif; font-size:30px; font-weight:800; color:#1A2035; letter-spacing:-1px; line-height:1; margin-bottom:3px; }
.ep-plan-price sup { font-size:14px; vertical-align:super; font-weight:600; }
.ep-plan-period { font-size:11px; color:var(--gray3); margin-bottom:12px; }
.ep-plan-features { list-style:none; margin-bottom:12px; }
.ep-plan-features li { font-size:12px; color:var(--gray3); padding:4px 0; display:flex; gap:5px; align-items:flex-start; }
.ep-plan-features li .ti { color:var(--ora); font-size:14px; flex-shrink:0; margin-top:1px; }

/* ── QUEM SOMOS ──────────────────────────────────────────── */
.ep-qs-hero { background:var(--blu-d); padding:40px 1.5rem; text-align:center; }
.ep-qs-hero h2 { font-family:'Barlow Condensed',sans-serif; font-size:30px; font-weight:800; text-transform:uppercase; color:#fff; margin-bottom:8px; }
.ep-qs-hero p { font-size:14px; color:rgba(255,255,255,.6); max-width:480px; margin:0 auto; line-height:1.6; }
.ep-qs-cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:14px; }
.ep-qs-card { background:#fff; border:1px solid var(--gray2); border-radius:10px; padding:22px 16px; text-align:center; border-top:3px solid var(--ora); }
.ep-qs-icon { width:44px; height:44px; border-radius:50%; background:var(--ora-l); display:flex; align-items:center; justify-content:center; margin:0 auto 12px; color:var(--ora); font-size:20px; }
.ep-qs-card h3 { font-family:'Barlow Condensed',sans-serif; font-size:15px; font-weight:800; text-transform:uppercase; margin-bottom:6px; }
.ep-qs-card p { font-size:12px; color:var(--gray3); line-height:1.6; }

/* ── FOOTER RESPONSIVO AJUSTADO ──────────────────────────── */
.ep-footer { 
    background: var(--blu-d); 
    padding: 50px 1.5rem 30px; 
}

.ep-footer-grid { 
    display: grid; 
    /* 4 colunas perfeitas no desktop com limite largo de portal (1200px) */
    grid-template-columns: 2fr 1fr 1fr 1.2fr; 
    gap: 40px; 
    max-width: 1200px; 
    margin: 0 auto 30px; 
}

.ep-footer-col h4 { 
    font-family: 'Barlow Condensed', sans-serif; 
    font-size: 15px; 
    font-weight: 700; 
    text-transform: uppercase; 
    color: var(--ora); 
    letter-spacing: .5px; 
    margin-bottom: 14px; 
}

.ep-footer-col a { 
    display: block; 
    font-size: 13px; 
    color: rgba(255, 255, 255, .6); 
    text-decoration: none; 
    margin-bottom: 8px; 
    transition: all .2s; 
}

.ep-footer-col a:hover { 
    color: var(--ora); 
    transform: translateX(2px); /* Efeito sutil ao passar o mouse */
}

/* MEDIAS QUERIES — ADAPTAÇÃO PARA TELAS MENORES */

/* Tablet e Notebooks menores */
@media (max-width: 992px) {
    .ep-footer-grid {
        /* Quebra para 2 colunas lado a lado */
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
}

/* Celulares */
@media (max-width: 600px) {
    .ep-footer-grid {
        /* Transforma tudo em uma única coluna vertical */
        grid-template-columns: 1fr;
        gap: 24px;
        text-align: center; /* Centraliza os textos para melhorar a leitura no celular */
    }
    
    /* Centraliza também as redes sociais da primeira coluna no mobile */
    .ep-footer-grid .ep-footer-col:first-child {
        align-items: center;
    }
    
    .ep-footer-grid .ep-footer-col p {
        max-width: 100% !important;
    }
}



/* ── BUSCA HERO ─────────────────────────────────────────── */

.ep-search-wrap {
  display: flex;
  flex-wrap: wrap;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  max-width: 780px;
  margin: 0 auto 14px;
  border: 2px solid var(--ora);
}

.ep-search-icon {
  font-size: 18px;
  padding: 0 0 0 12px;
  color: var(--ora);
  align-self: center;
}

.ep-search-wrap input {
  flex: 1;
  min-width: 180px;
  border: none;
  padding: 12px 14px;
  font-size: 14px;
  outline: none;
  font-family: inherit;
  color: #1A2035;
}

.ep-search-wrap select {
  border: none;
  border-left: 1px solid var(--ora-l);
  padding: 12px 8px;
  font-size: 12px;
  background: #FFF8F2;
  color: var(--ora-d);
  outline: none;
  font-family: inherit;
  font-weight: 500;
  min-width: 0;
}

.ep-search-btn {
  background: var(--ora);
  color: #fff;
  border: none;
  padding: 12px 20px;
  cursor: pointer;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  transition: opacity .15s;
  white-space: nowrap;
}

.ep-search-btn:hover {
  opacity: .85;
}

/* Tablet: selects + botão quebram para segunda linha */
@media (max-width: 860px) {
  .ep-search-wrap input {
    width: 100%;
    border-bottom: 1px solid var(--ora-l);
    flex: unset;
  }
  .ep-search-icon {
    padding: 12px 0 12px 12px;
  }
  .ep-search-wrap select {
    flex: 1;
    border-left: none;
    border-top: 1px solid var(--ora-l);
    border-right: 1px solid var(--ora-l);
  }
  .ep-search-btn {
    width: 100%;
    border-top: 1px solid var(--ora-l);
  }
}

/* Mobile: tudo em coluna */
@media (max-width: 600px) {
  .ep-search-wrap {
    flex-direction: column;
  }
  .ep-search-wrap input,
  .ep-search-wrap select,
  .ep-search-btn {
    width: 100%;
    border-left: none;
    border-right: none;
    border-top: 1px solid var(--ora-l);
  }
  .ep-search-icon {
    display: none;
  }
}

.grid-planos{
    display:grid;
    grid-template-columns:repeat(2,minmax(450px,1fr));
    gap:30px;
    justify-content:center;
    align-items:stretch;
}

@media (max-width:992px){
    .grid-planos{
        grid-template-columns:1fr;
    }
}
.plano-card{
    height:100%;
    display:flex;
    flex-direction:column;
}
/* ── PARCEIROS CARROSSEL ─────────────────────────────────── */
.ep-parc-slider {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 10px 0;
    mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
}

.ep-parc-track {
    display: flex;
    align-items: center;
    gap: 32px;
    width: max-content;
    animation: epParceiros 20s linear infinite;
}

.ep-parc-track:hover {
    animation-play-state: paused;
}

@keyframes epParceiros {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

/* Wrapper — agora é um CARD: empilha logo + rodapé, com altura fixa total */
.ep-parc-item-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    flex-shrink: 0;
    width: 220px;
    height: 230px;
    padding: 16px 14px 14px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
    transition: transform .25s ease, box-shadow .25s ease;
    overflow: visible;
}

.ep-parc-item-wrapper:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 24px rgba(0,0,0,0.12);
}

.ep-parc-item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 150px;
    overflow: hidden;
    text-decoration: none;
    opacity: .95;
}
.ep-parc-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 8px;
    width: 100%;
}

/* Imagem — sempre proporcional, nunca maior que o slot */
.ep-parc-item img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

.ep-parc-fallback {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--gray3);
}

.ep-parc-fallback i {
    font-size: 24px;
}

/* Rodapé: distância + whatsapp lado a lado, abaixo da logo */
.ep-parc-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
    width: 100%;
}

/* Whatsapp — saiu do overlay/losango, agora é botão redondo normal no rodapé */
.ep-parc-whatsapp {
    background: #25D366;
    color: #fff;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    box-shadow: 0 2px 5px rgba(0,0,0,.2);
    text-decoration: none;
    flex-shrink: 0;
    transition: transform .15s ease, background .15s ease;
}

.ep-parc-whatsapp:hover {
    background: #1ebe5b;
    transform: scale(1.1);
}

/* Reduz o slot em telas pequenas para caber melhor */
@media (max-width: 600px) {
    .ep-parc-item-wrapper {
        width: 170px;
        height: 165px;
    }
    .ep-parc-item {
        height: 90px;
    }
    .ep-parc-track {
        gap: 20px;
    }
}

.ep-parc-distancia{
    background:#f5f5f5;
    border-radius:30px;
    padding:4px 10px;
    font-size:12px;
    font-weight:600;
    color:#555;
    margin:0;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 4px;
}

.ep-parc-distancia i{
    color:var(--ora);
}
/* ============================================================
   NAVBAR RESPONSIVA — VERSÃO LIMPA
============================================================ */

/* NAV */
.ep-nav{
    background:#fff;
    border-bottom:3px solid var(--ora);

    padding:0 1.5rem;

    display:flex;
    align-items:center;
    justify-content:space-between;

    min-height:90px;

    position:sticky;
    top:0;

    z-index:9999;

    box-shadow:0 2px 10px rgba(0,0,0,.07);
}

/* LOGO */
.ep-logo{
    display:flex;
    align-items:center;
    text-decoration:none;
}

.ep-logo img{
    max-height:80px;
    width:auto;
    display:block;
}

/* LINKS DESKTOP */
.ep-nav-links{
    display:flex;
    align-items:center;
    gap:2px;
}

.ep-nav-link{
    font-family:'Barlow Condensed',sans-serif;
    font-size:13px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.4px;

    color:var(--gray3);

    text-decoration:none;

    padding:6px 11px;

    border-radius:5px;
    border-bottom:2px solid transparent;

    transition:.15s;
}

.ep-nav-link:hover{
    color:var(--blu);
}

.ep-nav-link.active{
    color:var(--blu);
    border-bottom-color:var(--ora);
}

/* DIREITA */
.ep-nav-right{
    display:flex;
    align-items:center;
    gap:10px;
    flex-shrink:0;
}

/* REDES */
.ep-social{
    display:flex;
    align-items:center;
    gap:10px;
}

.ep-social-link{
    width:36px;
    height:36px;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    text-decoration:none;

    background:var(--gray);

    color:var(--blu);

    font-size:18px;

    transition:.2s ease;
}

.ep-social-link:hover{
    transform:translateY(-2px);
}

.ep-social-link.instagram:hover{
    background:#E1306C;
    color:#fff;
}

.ep-social-link.whatsapp{
    background:#25D366;
    color:#fff;
}

.ep-social-link.whatsapp:hover{
    background:#1ebe5d;
}

/* ADMIN */
.ep-btn-admin{
    display:inline-flex;
    align-items:center;
    gap:5px;

    background:var(--ora);

    color:#fff;
    text-decoration:none;

    border-radius:6px;

    font-family:'Barlow Condensed',sans-serif;
    font-size:12px;
    font-weight:700;

    letter-spacing:.8px;
    text-transform:uppercase;

    padding:7px 14px;

    white-space:nowrap;

    transition:.15s;
}

.ep-btn-admin:hover{
    opacity:.85;
}

/* BOTÃO MENU */
.ep-nav-toggle{

    display:none;

    width:44px;
    height:44px;

    padding:0;

    border:none;
    outline:none;

    background-color:transparent;

    -webkit-appearance:none;
    appearance:none;

    box-shadow:none;

    align-items:center;
    justify-content:center;

    cursor:pointer;

    color:var(--blu-d);

    border-radius:8px;

    flex-shrink:0;

    -webkit-tap-highlight-color:transparent;
}

.ep-nav-toggle svg{
    display:block;
    pointer-events:none;
}

/* ============================================================
   MOBILE
============================================================ */

@media (max-width: 600px){

    .ep-nav{
        padding:0 1rem;
        min-height:74px;
    }

    .ep-logo img{
        max-height:42px;
    }

    /* MENU */
    .ep-nav-links{

        display:none;

        position:fixed;

        top:74px;
        left:0;
        right:0;

        background:var(--blu-d);

        flex-direction:column;

        padding:8px 0;

        z-index:9998;

        box-shadow:0 6px 20px rgba(0,0,0,.18);
    }

    .ep-nav-links.active{
    display:flex;
    animation:menuFade .2s ease;
}

    .ep-nav-link{
        width:100%;

        color:#fff;

        padding:14px 20px;

        border-radius:0;

        border-bottom:1px solid rgba(255,255,255,.08);

        font-size:14px;
    }

    .ep-nav-link.active{
        color:var(--ora);
    }

    .ep-nav-link:last-child{
        border-bottom:none;
    }

    /* REDES */
    .ep-social{
        gap:6px;
    }

    .ep-social-link{
        width:32px;
        height:32px;
        font-size:15px;
    }

    /* ADMIN */
    .ep-btn-admin span{
        display:none;
    }

    .ep-btn-admin{
        padding:7px 10px;
        font-size:15px;
    }

    /* MENU BUTTON */
    .ep-nav-toggle{
        display:flex;
    }
}

@keyframes menuFade{
    from{
        opacity:0;
        transform:translateY(-10px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}

    .ep-tags-light {
        display:flex;
        flex-wrap:wrap;
        gap:8px;
    }


.ep-tags-light .ep-tag {
    background:#FFF4E6;
    color:var(--ora);
    border:1px solid #FFD8A8;
    font-weight:700;
}

.ep-tags-light .ep-tag:hover {
    background:var(--ora);
    color:#fff;
    border-color:var(--ora);
}

.ep-tags-light .ep-tag-active {
    background:var(--ora);
    color:#fff;
    border-color:var(--ora);
}

.ep-card.elite{
    border:2px solid #FFD700;
    box-shadow:0 12px 30px rgba(255,215,0,.18);
    position:relative;
    overflow:hidden;
    transition:.25s ease;
}

.ep-card.elite:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 38px rgba(255,215,0,.28);
}

.ep-av-img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ep-card.elite .ep-av{
    box-shadow: 0 10px 30px rgba(255, 215, 0, .12);
border-top: 3px solid #FFD700;
}
.ep-card{
    transition:.25s ease;
}

.ep-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 35px rgba(0,0,0,.10);
    border-color:#dbe4ea;
}
.ep-card img{
    transition:.35s ease;
}

.ep-card:hover img{
    transform:scale(1.05);
}
.ep-card.elite{
    border:1px solid rgba(255,215,0,.45);
    background:linear-gradient(
        to bottom,
        #fffdf7 0%,
        #ffffff 18%
    );
}


.personal-socials{
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:18px;
    flex-wrap:wrap;
}

.social-btn{
    width:46px;
    height:46px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:20px;
    text-decoration:none;
    transition:.2s;
}

.social-btn:hover{
    transform:translateY(-3px);
}

.insta{
    background:linear-gradient(135deg,#833AB4,#FD1D1D,#FCAF45);
}

.face{
    background:#1877F2;
}

.yt{
    background:#FF0000;
}

.linkedin{
    background:#0A66C2;
}

.site{
    background:#111827;
}
.btn-email{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    width:100%;
    padding:16px;
    background:#111827;
    color:#fff;
    text-decoration:none;
    border-radius:16px;
    font-weight:800;
    margin-top:15px;
}
.btn-email{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    width:100%;
    padding:16px;
    background:#2563eb;
    color:#fff;
    text-decoration:none;
    border-radius:16px;
    font-weight:800;
    margin-top:12px;
}

.personal-socials{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-top:18px;
}

.social-btn{
    width:48px;
    height:48px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:20px;
    text-decoration:none;
}

.social-btn.insta{
    background:linear-gradient(135deg,#fd5949,#d6249f,#285AEB);
}

.social-btn.face{
    background:#1877F2;
}

.personal-fast{
    margin-top:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-size:13px;
    font-weight:700;
    color:#16a34a;
}

.personal-fast span{
    width:10px;
    height:10px;
    background:#22c55e;
    border-radius:50%;
}
.btn-email{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    width:100%;
    padding:16px;
    background:#111827;
    color:#fff;
    text-decoration:none;
    border-radius:16px;
    font-weight:800;
    margin-top:12px;
}

.personal-socials{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-top:18px;
}

.social-btn{
    width:48px;
    height:48px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:22px;
    text-decoration:none;
    transition:.2s;
}

.social-btn:hover{
    transform:translateY(-3px);
}

.insta{
    background:linear-gradient(135deg,#E1306C,#C13584,#833AB4);
}

.face{
    background:#1877F2;
}

.personal-fast{
    margin-top:15px;
    background:#DCFCE7;
    color:#166534;
    padding:10px 14px;
    border-radius:12px;
    font-size:13px;
    font-weight:800;
}
.video-wrap{
    border-radius:20px;
    overflow:hidden;
    position:relative;
    padding-top:56.25%;
    background:#000;
}

.video-wrap iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.video-wrap video{
    position:absolute;
    width:100%;
    height:100%;
    left:0;
    top:0;
    border:0;
}

.personal-socials{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-top:18px;
}

.social-btn{
    width:46px;
    height:46px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    color:#fff;
    font-size:20px;
    transition:.2s;
}

.social-btn:hover{
    transform:translateY(-3px);
}

.social-btn.insta{
    background:linear-gradient(135deg,#E1306C,#F77737);
}

.social-btn.face{
    background:#1877F2;
}
.personal-socials{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-top:18px;
}

.social-btn{
    width:46px;
    height:46px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    color:#fff;
    font-size:20px;
    transition:.2s;
}

.social-btn:hover{
    transform:translateY(-3px);
}

.social-btn.insta{
    background:linear-gradient(135deg,#E1306C,#F77737);
}

.social-btn.face{
    background:#1877F2;
}

.personal-card.ouro{
    border:2px solid #FFD700;
    box-shadow:
        0 0 0 1px rgba(255,215,0,.2),
        0 10px 40px rgba(255,215,0,.18);
}

.galeria-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:20px;
    margin-top:20px;
}

.galeria-item{
    border-radius:20px;
    overflow:hidden;
    background:#fff;
    border:1px solid #eee;
    box-shadow:0 8px 25px rgba(0,0,0,.05);
    transition:.25s;
}

.galeria-item:hover{
    transform:translateY(-5px);
}

.galeria-item img{
    width:100%;
    height:260px;
    object-fit:cover;
    display:block;
}

.galeria-legenda{
    padding:14px;
    font-size:14px;
    color:#374151;
    font-weight:600;
}

.avaliacoes-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:20px;
}

.avaliacao-card{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:20px;
    padding:22px;
}

.avaliacao-topo{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:15px;
    gap:10px;
}

.avaliacao-nome{
    font-weight:800;
    color:#111827;
}

.avaliacao-estrelas{
    font-size:18px;
}

.avaliacao-texto{
    color:#374151;
    line-height:1.7;
    margin-bottom:15px;
}

.avaliacao-data{
    font-size:12px;
    color:#6b7280;
}
.avaliacao-form{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.form-group input,
.form-group select,
.form-group textarea{
    width:100%;
    border:1px solid #e5e7eb;
    border-radius:14px;
    padding:16px;
    font-size:15px;
    background:#fff;
}

.form-group textarea{
    min-height:140px;
    resize:vertical;
}

.btn-avaliacao{
    border:none;
    background:#111827;
    color:#fff;
    padding:16px;
    border-radius:14px;
    font-weight:800;
    cursor:pointer;
    transition:.2s;
}

.btn-avaliacao:hover{
    transform:translateY(-2px);
    opacity:.95;
}

.avaliacoes-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:20px;
}

.avaliacao-card{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:20px;
    padding:22px;
    transition:.2s;
}

.avaliacao-card:hover{
    transform:translateY(-4px);
    box-shadow:0 10px 25px rgba(0,0,0,.06);
}

.avaliacao-topo{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:15px;
    margin-bottom:14px;
}

.avaliacao-nome{
    font-weight:800;
    font-size:16px;
    color:#111827;
}

.avaliacao-estrelas{
    font-size:18px;
    letter-spacing:2px;
}

.avaliacao-texto{
    line-height:1.7;
    color:#374151;
    font-size:15px;
    margin-bottom:16px;
}

.avaliacao-data{
    font-size:12px;
    color:#6b7280;
}

/* =========================
   PLANOS ADMIN - CRUD UI
   ========================= */

.adm-main {
    padding: 24px;
    background: #f5f7fb;
    min-height: 100vh;
    font-family: Arial, sans-serif;
}

/* Header */
.adm-main h1 {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 28px;
    font-weight: 800;
    text-transform: uppercase;
    color: #1A2035;
    margin-bottom: 16px;
}

/* Botões */
.adm-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #1E4FFF;
    color: #fff;
    padding: 10px 16px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: 0.2s;
}

.adm-btn-primary:hover {
    background: #1639c7;
    transform: translateY(-1px);
}

/* ALERTAS */
.adm-alert {
    padding: 12px 14px;
    border-radius: 8px;
    font-size: 13px;
    margin-bottom: 12px;
}

.adm-alert.ok {
    background: #e7f7ee;
    border: 1px solid #2ecc71;
    color: #1e7d4f;
}

.adm-alert.erro {
    background: #ffecec;
    border: 1px solid #e74c3c;
    color: #b02318;
}

/* FORM BOX */
.adm-form-box {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    border: 1px solid #e6e8ef;
    box-shadow: 0 4px 14px rgba(0,0,0,0.05);
}

/* GRID */
.adm-form-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.adm-field {
    display: flex;
    flex-direction: column;
}

.adm-field label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    color: #6b7280;
    margin-bottom: 6px;
}

/* INPUTS */
.adm-field input,
.adm-field textarea,
.adm-field select {
    border: 1px solid #d7dbe7;
    border-radius: 8px;
    padding: 10px;
    font-size: 14px;
    outline: none;
    transition: 0.2s;
    background: #fff;
}

.adm-field input:focus,
.adm-field textarea:focus,
.adm-field select:focus {
    border-color: #1E4FFF;
    box-shadow: 0 0 0 3px rgba(30,79,255,0.1);
}

/* textarea ajuste */
.adm-field textarea {
    resize: vertical;
    min-height: 70px;
}

/* FULL WIDTH */
.adm-full {
    grid-column: 1 / -1;
}

/* CHECKBOX TAG */
.adm-check-tag {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    color: #374151;
}

/* TABELA */
table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 3px 12px rgba(0,0,0,0.04);
}

table th {
    background: #1A2035;
    color: #fff;
    text-align: left;
    font-size: 12px;
    padding: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

table td {
    padding: 12px;
    border-bottom: 1px solid #eee;
    font-size: 13px;
    color: #333;
}

table tr:hover {
    background: #f8faff;
}

/* LINKS AÇÕES */
table a {
    color: #1E4FFF;
    font-weight: 600;
    text-decoration: none;
    margin-right: 8px;
}

table a:hover {
    text-decoration: underline;
}

/* RESPONSIVO */
@media (max-width: 768px) {
    .adm-form-grid {
        grid-template-columns: 1fr;
    }

    table {
        font-size: 12px;
    }
}

.adm-tabs {
    display: flex;
    gap: 0;
    margin-bottom: 24px;
    border-bottom: 2px solid #e5e7eb;
}

.adm-tabs a {
    padding: 10px 20px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .4px;
    font-family: 'Barlow Condensed', sans-serif;
    text-decoration: none;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    color: #8A94A6;
}

.adm-tabs a.active {
    color: #f97316;
    border-bottom-color: #f97316;
}

.adm-tabs .badge-tab {
    background: #f97316;
    color: #fff;
    font-size: 9px;
    padding: 1px 6px;
    border-radius: 100px;
    margin-left: 4px;
}

.badge-regioes{
    display:inline-block;
    margin-left:4px;
    padding:2px 6px;
    border-radius:20px;
    background:#f0f0f0;
    font-size:12px;
    font-weight:600;
}

/* Ajuste do verificador Turnstile */
.ep-field-turnstile {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 10px 0;
    overflow: hidden;
}

/* Mantém o Turnstile centralizado */
.ep-field-turnstile .cf-turnstile {
    transform-origin: center;
}

/* Ajuste para celulares */
@media (max-width: 480px) {
    .ep-field-turnstile .cf-turnstile {
        transform: scale(0.85);
        margin: -8px 0;
    }
}

.ep-field {
    width: 100%;
    max-width: 100%;
}