/* ════════════════════════════════════════════
   HELDER FREIRE IMÓVEIS — v3.0
   Estrutura completa: Site + Admin + Cadastro
   ════════════════════════════════════════════ */
:root {
  --navy:       #0c2461;
  --navy-mid:   #0e2d6b;
  --navy-light: #1a3a7a;
  --sky:        #38bdf8;
  --sky-dark:   #0284c7;
  --gold:       #c9a84c;
  --gold-lt:    #e2c87a;
  --gold-pale:  #f0e4c2;
  --white:      #ffffff;
  --off:        #f8fafc;
  --g100:       #f1f5f9;
  --g200:       #e2e8f0;
  --g400:       #94a3b8;
  --g600:       #475569;
  --text:       #0f172a;
  --textl:      #475569;
  --green:      #25D366;
  --red:        #ef4444;
  --orange:     #f59e0b;
  --success:    #22c55e;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Outfit',sans-serif;background:var(--navy);color:var(--white);overflow-x:hidden}

/* ─── NAV ─── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  height:76px;display:flex;align-items:center;justify-content:space-between;
  padding:0 60px;
  background:rgba(12,36,97,0.97);backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(201,168,76,0.2);
  transition:all .3s;
}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.nav-check{width:34px;height:34px;border:1.5px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nav-logo-text{display:flex;flex-direction:column}
.nav-logo-name{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--white)}
.nav-logo-sub{font-size:9px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
.nav-links{display:flex;gap:32px;list-style:none}
.nav-links a{text-decoration:none;color:rgba(255,255,255,.75);font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;transition:color .3s}
.nav-links a:hover{color:var(--gold)}
.nav-right{display:flex;align-items:center;gap:12px}
.wa-nav-btn{
  display:flex;align-items:center;gap:8px;
  padding:9px 18px;
  background:var(--green);color:var(--white);
  text-decoration:none;border-radius:6px;
  font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  transition:all .2s;
}
.wa-nav-btn:hover{background:#20ba58;transform:translateY(-1px);box-shadow:0 4px 16px rgba(37,211,102,.4)}

/* ─── HERO ─── */
.hero{
  position:relative;height:100vh;min-height:700px;
  display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:80px;
  overflow:hidden;
  background:linear-gradient(180deg,#0a1e4a 0%,#0c2461 55%,#0d2d6e 100%);
}
.hero-buildings{
  position:absolute;bottom:0;left:0;right:0;height:78%;
  z-index:0;pointer-events:none;
}
.hero::before{
  content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(ellipse at 15% 65%,rgba(56,189,248,.08) 0%,transparent 55%),
    radial-gradient(ellipse at 85% 25%,rgba(56,189,248,.05) 0%,transparent 50%);
}
.hero::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:40%;z-index:1;pointer-events:none;
  background:linear-gradient(to top,#0c2461 0%,transparent 100%);
}
.hero-content{
  position:relative;z-index:2;
  max-width:1300px;margin:0 auto;width:100%;padding:0 60px;
}
.hero-eyebrow{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.hero-eyebrow-line{width:40px;height:1px;background:var(--gold)}
.hero-eyebrow-text{font-size:10px;font-weight:500;letter-spacing:4px;text-transform:uppercase;color:var(--gold)}
.hero-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(48px,7vw,92px);font-weight:300;line-height:.95;letter-spacing:-2px;margin-bottom:28px;
}
.hero-title em{font-style:italic;color:var(--sky)}
.hero-desc{font-size:15px;font-weight:300;color:rgba(255,255,255,.6);max-width:400px;line-height:1.8;margin-bottom:36px}
.hero-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.btn-primary{
  display:inline-flex;align-items:center;gap:10px;padding:15px 32px;
  background:var(--gold);color:var(--navy);
  text-decoration:none;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  border-radius:4px;transition:all .3s;border:none;cursor:pointer;font-family:'Outfit',sans-serif;
}
.btn-primary:hover{background:var(--gold-lt);transform:translateY(-2px);box-shadow:0 8px 24px rgba(201,168,76,.3)}
.btn-wa-hero{
  display:inline-flex;align-items:center;gap:10px;padding:15px 32px;
  background:var(--green);color:var(--white);
  text-decoration:none;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  border-radius:4px;transition:all .3s;
}
.btn-wa-hero:hover{background:#20ba58;transform:translateY(-2px);box-shadow:0 8px 24px rgba(37,211,102,.35)}
.btn-secondary{
  display:inline-flex;align-items:center;gap:10px;padding:15px 32px;
  border:1px solid rgba(255,255,255,.3);color:rgba(255,255,255,.8);
  text-decoration:none;font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;
  border-radius:4px;transition:all .3s;
}
.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}

/* hero stats bar */
.hero-stats{
  position:absolute;bottom:0;right:0;z-index:3;
  display:flex;background:rgba(12,36,97,.85);backdrop-filter:blur(16px);
  border-top:1px solid rgba(56,189,248,.2);border-left:1px solid rgba(56,189,248,.2);
}
.hsb{padding:20px 32px;border-right:1px solid rgba(56,189,248,.15);text-align:center}
.hsb:last-child{border-right:none}
.hsb-num{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:600;color:var(--sky);line-height:1}
.hsb-lbl{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-top:3px}

/* ─── CHECK STRIP ─── */
.check-strip{
  background:linear-gradient(90deg,#0a1e4a 0%,#0c2461 50%,#0a1e4a 100%);
  border-top:1px solid rgba(201,168,76,.15);border-bottom:1px solid rgba(201,168,76,.15);
  padding:16px 0;overflow:hidden;
}
.check-strip-inner{
  display:flex;align-items:center;justify-content:center;gap:36px;flex-wrap:wrap;
  max-width:1300px;margin:0 auto;padding:0 40px;
}
.csi{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.65)}
.csi-dot{width:1px;height:18px;background:rgba(255,255,255,.12)}

/* ─── WHATSAPP SECTION ─── */
.wa-section{
  background:linear-gradient(135deg,#0a1e4a 0%,var(--navy) 100%);
  padding:64px 0;border-top:1px solid rgba(201,168,76,.1);
}
.wa-section-inner{
  max-width:1300px;margin:0 auto;padding:0 60px;
  display:grid;grid-template-columns:1fr auto 1fr;gap:40px;align-items:center;
}
.wa-text h2{font-family:'Cormorant Garamond',serif;font-size:38px;font-weight:600;color:var(--white);line-height:1.15;margin-bottom:10px}
.wa-text h2 em{font-style:italic;color:var(--green)}
.wa-text p{font-size:14px;color:rgba(255,255,255,.55);line-height:1.7;margin-bottom:24px}
.wa-big-btn{
  display:inline-flex;align-items:center;gap:14px;
  padding:18px 36px;background:var(--green);color:var(--white);
  text-decoration:none;border-radius:8px;
  font-size:14px;font-weight:700;letter-spacing:1px;
  transition:all .3s;box-shadow:0 8px 32px rgba(37,211,102,.3);
}
.wa-big-btn:hover{background:#20ba58;transform:translateY(-3px);box-shadow:0 12px 40px rgba(37,211,102,.45)}
.wa-big-btn svg{flex-shrink:0}
.wa-divider{
  width:1px;height:200px;
  background:linear-gradient(to bottom,transparent,rgba(255,255,255,.15),transparent);
}
.wa-qr-card{
  background:var(--white);border-radius:16px;padding:24px;
  text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.35);
  position:relative;
}
.wa-qr-card::before{
  content:'WhatsApp';position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  background:var(--green);color:var(--white);
  padding:4px 16px;border-radius:20px;
  font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
}
.wa-qr-img{width:180px;height:auto;border-radius:8px;display:block;margin:0 auto 10px}
.wa-qr-label{font-size:11px;color:var(--textl);font-family:'Outfit',sans-serif;font-weight:500}
.wa-scan-hint{font-size:10px;color:var(--g400);margin-top:3px}

/* ─── SECTION COMMONS ─── */
.section{padding:84px 0}
.section-dark{background:var(--navy)}
.section-mid{background:var(--navy-mid)}
.section-light{background:#0a1e4a}
.container{max-width:1300px;margin:0 auto;padding:0 60px}
.section-header{margin-bottom:48px}
.eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.eyebrow-line{width:32px;height:1px;background:var(--gold)}
.eyebrow-text{font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
.sec-title{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,48px);font-weight:300;line-height:1.1}
.sec-title em{font-style:italic;color:var(--sky)}

/* ─── PROPERTY CARDS ─── */
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}
.fchip{
  padding:8px 18px;border-radius:20px;border:1px solid rgba(255,255,255,.15);
  background:transparent;color:rgba(255,255,255,.55);
  font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase;
  cursor:pointer;transition:all .2s;font-family:'Outfit',sans-serif;
}
.fchip.active,.fchip:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.08)}
.prop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pcard{
  background:var(--navy-light);border:1px solid rgba(255,255,255,.08);border-radius:12px;
  overflow:hidden;cursor:pointer;transition:all .3s;position:relative;
}
.pcard:hover{border-color:rgba(201,168,76,.3);transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.35)}
.pcard-img{
  height:190px;position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--navy) 0%,var(--sky-dark) 100%);
  display:flex;align-items:center;justify-content:center;
}
.pcard-img-bg{
  position:absolute;inset:0;opacity:.35;
  background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0,rgba(255,255,255,.05) 1px,transparent 0,transparent 50%);
  background-size:20px 20px;
}
.pcard-type-icon{font-size:48px;opacity:.4;position:relative;z-index:1}
.pcard-badge{
  position:absolute;top:12px;left:12px;
  padding:4px 12px;border-radius:20px;
  font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;
}
.badge-venda{background:var(--gold);color:var(--navy)}
.badge-aluguel{background:var(--sky);color:var(--navy)}
.badge-novo{background:var(--green);color:var(--white)}
.pcard-verified{
  position:absolute;top:12px;right:12px;
  background:rgba(12,36,97,.9);border:1px solid rgba(56,189,248,.4);
  border-radius:20px;padding:4px 10px;
  display:flex;align-items:center;gap:5px;
  font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--sky);
}
.pcard-body{padding:18px 20px}
.pcard-cat{font-size:9px;color:var(--gold);font-weight:600;letter-spacing:2px;text-transform:uppercase;margin-bottom:5px}
.pcard-name{font-family:'Cormorant Garamond',serif;font-size:18px;color:var(--white);margin-bottom:3px}
.pcard-loc{font-size:11px;color:rgba(255,255,255,.45);margin-bottom:12px}
.pcard-div{height:1px;background:rgba(255,255,255,.08);margin-bottom:12px}
.pcard-foot{display:flex;justify-content:space-between;align-items:center}
.pcard-price{font-family:'Cormorant Garamond',serif;font-size:18px;color:var(--sky);font-weight:600}
.pcard-specs{display:flex;gap:10px}
.pcs{font-size:10px;color:rgba(255,255,255,.4)}
.empty-state{
  grid-column:1/-1;text-align:center;padding:80px 20px;
  color:rgba(255,255,255,.3);
}
.empty-state div{font-size:48px;margin-bottom:16px}

/* ─── SOBRE ─── */
.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center}
.about-photo-wrap{position:relative}
.about-photo{
  width:100%;aspect-ratio:3/4;border-radius:12px;overflow:hidden;
  background:linear-gradient(160deg,var(--navy-light) 0%,var(--sky-dark) 100%);position:relative;
}
.about-photo img{width:100%;height:100%;object-fit:cover;object-position:top center}
.about-creci-badge{
  position:absolute;bottom:-16px;left:50%;transform:translateX(-50%);
  background:var(--navy-light);border:1px solid rgba(56,189,248,.4);
  border-radius:30px;padding:8px 18px 8px 10px;
  display:flex;align-items:center;gap:8px;
  font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--sky);
  white-space:nowrap;box-shadow:0 8px 24px rgba(0,0,0,.3);
}
.about-text{padding-left:8px}
.about-name{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:600;color:var(--white);line-height:1.05;margin:16px 0 18px}
.about-name em{font-style:italic;color:var(--sky)}
.about-p{font-size:14px;color:rgba(255,255,255,.6);line-height:1.9;margin-bottom:14px}
.check-list{list-style:none;display:flex;flex-direction:column;gap:12px;margin:22px 0 30px}
.check-list li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:rgba(255,255,255,.65);line-height:1.5}
.cli-icon{flex-shrink:0;margin-top:1px}

/* ─── CONTACT ─── */
.contact-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:60px}
.ci{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}
.ci-icon{width:40px;height:40px;background:rgba(56,189,248,.1);border:1px solid rgba(56,189,248,.2);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.ci-lbl{font-size:9px;color:rgba(255,255,255,.35);font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-bottom:2px}
.ci-val{font-size:14px;color:var(--white);font-weight:500}
.ci-sub{font-size:11px;color:rgba(255,255,255,.35);margin-top:1px}
.fg{margin-bottom:12px}
.fg label{display:block;font-size:10px;font-weight:600;color:rgba(255,255,255,.4);margin-bottom:5px;letter-spacing:.5px;text-transform:uppercase}
.fg input,.fg select,.fg textarea{
  width:100%;padding:11px 13px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:6px;
  font-family:'Outfit',sans-serif;font-size:13px;color:var(--white);outline:none;
  transition:border-color .2s;
}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--gold)}
.fg input::placeholder,.fg textarea::placeholder{color:rgba(255,255,255,.2)}
.fg select option{background:var(--navy-mid);color:var(--white)}
.fg textarea{resize:vertical;min-height:100px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.f-submit{
  width:100%;padding:13px;background:var(--gold);color:var(--navy);border:none;border-radius:6px;
  cursor:pointer;font-family:'Outfit',sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;
  text-transform:uppercase;transition:background .2s;
}
.f-submit:hover{background:var(--gold-lt)}

/* ─── FOOTER ─── */
footer{background:#06122e;border-top:1px solid rgba(201,168,76,.1);padding:50px 0 22px}
.footer-grid{max-width:1300px;margin:0 auto;padding:0 60px 36px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:20px}
.f-name{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600;color:var(--white);margin-bottom:3px}
.f-sub{font-size:9px;color:rgba(255,255,255,.28);letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}
.f-bio{font-size:12px;color:rgba(255,255,255,.35);line-height:1.8}
.f-ctitle{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:12px}
.f-col ul{list-style:none}
.f-col li{margin-bottom:7px}
.f-col a{text-decoration:none;color:rgba(255,255,255,.42);font-size:12px;transition:color .2s}
.f-col a:hover{color:var(--gold)}
.footer-bot{max-width:1300px;margin:0 auto;padding:0 60px;display:flex;justify-content:space-between;align-items:center}
.f-copy{font-size:11px;color:rgba(255,255,255,.22)}
.f-creci{font-size:11px;color:rgba(255,255,255,.32)}

/* ─── FLOAT WA ─── */
.float-wa{
  position:fixed;bottom:24px;right:24px;z-index:800;
  display:flex;align-items:center;gap:10px;
  padding:12px 20px 12px 16px;background:var(--green);color:var(--white);
  text-decoration:none;border-radius:50px;
  font-size:12px;font-weight:700;letter-spacing:.5px;
  box-shadow:0 6px 24px rgba(37,211,102,.45);
  transition:all .3s;
}
.float-wa:hover{background:#20ba58;transform:translateY(-2px);box-shadow:0 10px 32px rgba(37,211,102,.55)}
.float-wa-pulse{
  width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.7);
  animation:pulse 1.8s ease-in-out infinite;flex-shrink:0;
}
@keyframes pulse{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.4);opacity:1}}

/* ════════════════════════════════
   MODAL CADASTRO IMÓVEL (PÚBLICO)
   ════════════════════════════════ */
.modal-overlay{
  position:fixed;inset:0;z-index:2000;
  background:rgba(0,0,0,.85);backdrop-filter:blur(8px);
  display:none;align-items:flex-start;justify-content:center;
  padding:20px;overflow-y:auto;
}
.modal-overlay.open{display:flex}
.modal{
  background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:12px;
  width:100%;max-width:760px;margin:auto;position:relative;
}
.modal-header{
  padding:28px 36px 20px;border-bottom:1px solid rgba(255,255,255,.08);
  display:flex;justify-content:space-between;align-items:flex-start;
}
.modal-title{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:600;color:var(--white)}
.modal-sub{font-size:11px;color:rgba(255,255,255,.4);margin-top:3px}
.modal-close{
  width:34px;height:34px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-size:13px;color:rgba(255,255,255,.5);flex-shrink:0;margin-left:12px;transition:all .2s;
}
.modal-close:hover{background:rgba(255,255,255,.12);color:var(--white)}
.modal-body{padding:24px 36px 36px}
.type-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}
.type-btn{
  padding:14px 10px;border:1.5px solid rgba(255,255,255,.1);border-radius:8px;
  background:transparent;color:rgba(255,255,255,.55);cursor:pointer;text-align:center;
  font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;letter-spacing:.5px;
  transition:all .2s;
}
.type-btn .type-icon{font-size:24px;display:block;margin-bottom:5px}
.type-btn.active,.type-btn:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.08)}
.fields-group{display:none}
.fields-group.active{display:block}
.section-label{
  font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:var(--gold);margin:20px 0 12px;padding-bottom:8px;
  border-bottom:1px solid rgba(201,168,76,.2);
}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid.col3{grid-template-columns:1fr 1fr 1fr}
.full{grid-column:1/-1}
.modal-info-box{
  background:rgba(56,189,248,.06);border:1px solid rgba(56,189,248,.2);border-radius:6px;
  padding:12px 16px;display:flex;align-items:flex-start;gap:10px;
  margin-bottom:20px;font-size:12px;color:rgba(255,255,255,.55);line-height:1.7;
}
.modal-submit{
  width:100%;padding:14px;background:var(--gold);color:var(--navy);border:none;border-radius:6px;
  cursor:pointer;font-family:'Outfit',sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;
  text-transform:uppercase;margin-top:12px;transition:background .2s;
  display:flex;align-items:center;justify-content:center;gap:8px;
}
.modal-submit:hover{background:var(--gold-lt)}
.success-screen{
  display:none;flex-direction:column;align-items:center;justify-content:center;
  padding:60px 36px;text-align:center;
}
.success-screen.show{display:flex}
.success-check-svg{margin-bottom:20px}

/* ════════════
   ADMIN PANEL
   ════════════ */
.admin-panel{position:fixed;inset:0;z-index:5000;background:var(--off);display:none;overflow:hidden}
.admin-panel.open{display:flex}

/* sidebar */
.adm-side{
  width:260px;background:#0f172a;display:flex;flex-direction:column;
  padding:0;flex-shrink:0;border-right:1px solid rgba(255,255,255,.06);
}
.adm-side-logo{
  padding:22px 20px;border-bottom:1px solid rgba(255,255,255,.06);
  display:flex;align-items:center;gap:10px;
}
.adm-logo-name{font-family:'Cormorant Garamond',serif;font-size:16px;color:var(--white);font-weight:600}
.adm-logo-sub{font-size:9px;color:rgba(255,255,255,.28);letter-spacing:2px;text-transform:uppercase}
.adm-nav{flex:1;overflow-y:auto;padding:12px 0}
.adm-group{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.2);padding:14px 20px 5px}
.adm-item{
  display:flex;align-items:center;gap:10px;padding:11px 20px;
  color:rgba(255,255,255,.45);cursor:pointer;font-size:12px;
  transition:all .2s;border-left:3px solid transparent;
}
.adm-item:hover{color:var(--white);background:rgba(255,255,255,.04)}
.adm-item.active{color:var(--white);border-left-color:var(--sky);background:rgba(56,189,248,.06)}
.adm-badge{
  margin-left:auto;background:var(--orange);color:var(--white);
  border-radius:10px;padding:1px 7px;font-size:10px;font-weight:700;
}
.adm-badge.red{background:var(--red)}
.adm-bottom{padding:16px 20px;border-top:1px solid rgba(255,255,255,.06)}
.adm-logout{
  width:100%;padding:9px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);
  border-radius:6px;color:rgba(239,68,68,.8);cursor:pointer;font-family:'Outfit',sans-serif;
  font-size:11px;font-weight:600;transition:all .2s;
}
.adm-logout:hover{background:rgba(239,68,68,.2);color:var(--red)}

/* main content */
.adm-main{flex:1;overflow-y:auto;background:var(--off)}
.adm-topbar{
  padding:0 36px;height:64px;display:flex;align-items:center;
  justify-content:space-between;background:var(--white);
  border-bottom:1px solid var(--g200);position:sticky;top:0;z-index:10;
}
.adm-page-title{font-family:'Cormorant Garamond',serif;font-size:22px;color:var(--text)}
.adm-close-site-btn{
  padding:8px 16px;background:var(--navy);color:var(--white);border:none;border-radius:6px;
  cursor:pointer;font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;transition:all .2s;
}
.adm-close-site-btn:hover{background:var(--navy-mid)}
.adm-content{padding:28px 36px}

/* tabs */
.adm-tab{display:none}
.adm-tab.active{display:block}

/* kpis */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}
.kpi{background:var(--white);border:1px solid var(--g200);border-radius:10px;padding:18px}
.kpi-lbl{font-size:10px;color:var(--textl);font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}
.kpi-val{font-family:'Cormorant Garamond',serif;font-size:32px;color:var(--text)}
.kpi-delta{font-size:11px;color:var(--success);margin-top:3px}
.kpi-delta.warn{color:var(--orange)}
.kpi-delta.danger{color:var(--red)}

/* tables */
.adm-table-wrap{background:var(--white);border:1px solid var(--g200);border-radius:10px;overflow:hidden;margin-bottom:20px}
.adm-table{width:100%;border-collapse:collapse}
.adm-table th{
  text-align:left;padding:11px 14px;font-size:10px;font-weight:700;letter-spacing:1px;
  text-transform:uppercase;color:var(--textl);background:var(--g100);border-bottom:1px solid var(--g200);
}
.adm-table td{padding:13px 14px;font-size:12px;color:var(--text);border-bottom:1px solid var(--g100);vertical-align:middle}
.adm-table tr:last-child td{border-bottom:none}
.adm-table tr:hover td{background:var(--g100)}

/* status pills */
.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:10px;font-weight:700;letter-spacing:.5px}
.pill-pending{background:#fef9c3;color:#92400e}
.pill-approved{background:#dcfce7;color:#166534}
.pill-rejected{background:#fee2e2;color:#991b1b}
.pill-active{background:#dbeafe;color:#1e40af}

/* action buttons */
.act-btn{
  padding:5px 12px;border-radius:5px;font-size:10px;font-weight:600;cursor:pointer;
  font-family:'Outfit',sans-serif;transition:all .2s;border:none;margin-right:4px;
}
.act-approve{background:#dcfce7;color:#166534}
.act-approve:hover{background:#bbf7d0}
.act-reject{background:#fee2e2;color:#991b1b}
.act-reject:hover{background:#fecaca}
.act-edit{background:var(--g100);color:var(--text)}
.act-edit:hover{background:var(--g200)}
.act-delete{background:#fee2e2;color:#991b1b}
.act-delete:hover{background:#fecaca}
.act-view{background:#dbeafe;color:#1e40af}
.act-view:hover{background:#bfdbfe}

/* admin forms */
.adm-form-card{background:var(--white);border:1px solid var(--g200);border-radius:10px;padding:24px;margin-bottom:20px}
.adm-form-title{font-size:14px;font-weight:700;color:var(--text);margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--g200)}
.adm-fg{margin-bottom:12px}
.adm-fg label{display:block;font-size:10px;font-weight:600;color:var(--textl);margin-bottom:5px;text-transform:uppercase;letter-spacing:.5px}
.adm-fg input,.adm-fg select,.adm-fg textarea{
  width:100%;padding:10px 12px;background:var(--off);border:1.5px solid var(--g200);border-radius:6px;
  font-family:'Outfit',sans-serif;font-size:13px;color:var(--text);outline:none;transition:border-color .2s;
}
.adm-fg input:focus,.adm-fg select:focus,.adm-fg textarea:focus{border-color:var(--navy)}
.adm-fg textarea{resize:vertical;min-height:90px}
.adm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.adm-form-grid.col3{grid-template-columns:1fr 1fr 1fr}
.adm-btn{
  padding:10px 20px;border:none;border-radius:6px;cursor:pointer;
  font-family:'Outfit',sans-serif;font-size:11px;font-weight:700;
  letter-spacing:.5px;transition:all .2s;display:inline-flex;align-items:center;gap:6px;
}
.adm-btn-primary{background:var(--navy);color:var(--white)}
.adm-btn-primary:hover{background:var(--navy-light)}
.adm-btn-success{background:var(--success);color:var(--white)}
.adm-btn-danger{background:var(--red);color:var(--white)}
.adm-btn-ghost{background:var(--g100);color:var(--text)}
.adm-btn-ghost:hover{background:var(--g200)}
.adm-btn-gold{background:var(--gold);color:var(--navy)}
.adm-btn-gold:hover{background:var(--gold-lt)}

/* search/filter bar admin */
.adm-filter-bar{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;align-items:center}
.adm-search{
  flex:1;min-width:200px;padding:9px 13px;background:var(--white);border:1.5px solid var(--g200);
  border-radius:6px;font-family:'Outfit',sans-serif;font-size:13px;color:var(--text);outline:none;
}
.adm-select{
  padding:9px 13px;background:var(--white);border:1.5px solid var(--g200);border-radius:6px;
  font-family:'Outfit',sans-serif;font-size:12px;color:var(--text);cursor:pointer;outline:none;
}

/* audit log */
.audit-entry{
  display:flex;align-items:flex-start;gap:12px;padding:12px 0;
  border-bottom:1px solid var(--g200);
}
.audit-entry:last-child{border-bottom:none}
.audit-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}
.audit-dot.green{background:var(--success)}
.audit-dot.red{background:var(--red)}
.audit-dot.blue{background:var(--sky-dark)}
.audit-dot.orange{background:var(--orange)}
.audit-text{font-size:12px;color:var(--text);line-height:1.5}
.audit-time{font-size:10px;color:var(--textl);margin-top:2px}

/* login */
.login-screen{
  position:fixed;inset:0;z-index:6000;background:var(--navy);
  display:flex;align-items:center;justify-content:center;
  display:none;
}
.login-screen.open{display:flex}
.login-card{
  background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:12px;
  padding:44px;width:100%;max-width:420px;text-align:center;
}
.login-logo{font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--white);margin-bottom:4px}
.login-sub{font-size:11px;color:rgba(255,255,255,.4);letter-spacing:2px;text-transform:uppercase;margin-bottom:32px}
.login-err{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);border-radius:6px;padding:10px;font-size:12px;color:var(--red);margin-bottom:16px;display:none}
.login-btn{
  width:100%;padding:13px;background:var(--gold);color:var(--navy);border:none;border-radius:6px;
  cursor:pointer;font-family:'Outfit',sans-serif;font-size:12px;font-weight:700;letter-spacing:2px;
  text-transform:uppercase;margin-top:8px;transition:background .2s;
}
.login-btn:hover{background:var(--gold-lt)}

/* reject modal */
.reject-modal{
  position:fixed;inset:0;z-index:7000;background:rgba(0,0,0,.8);
  display:none;align-items:center;justify-content:center;
}
.reject-modal.open{display:flex}
.reject-card{
  background:var(--white);border-radius:10px;padding:28px;width:100%;max-width:440px;
}
.reject-title{font-size:18px;font-weight:700;color:var(--text);margin-bottom:16px}

/* responsive */
@media(max-width:1024px){
  nav,.wa-section-inner,.footer-bot{padding-left:28px;padding-right:28px}
  .container{padding:0 28px}
  .prop-grid{grid-template-columns:repeat(2,1fr)}
  .about-grid,.contact-grid{grid-template-columns:1fr;gap:36px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px;padding:0 28px 32px}
  .kpis{grid-template-columns:1fr 1fr}
  .wa-section-inner{grid-template-columns:1fr;text-align:center}
  .wa-divider{display:none}
  .wa-qr-card{margin:0 auto}
  .wa-text p{max-width:100%}
}
@media(max-width:768px){
  .nav-links{display:none}
  .prop-grid{grid-template-columns:1fr}
  .hero-content{padding:0 24px}
  .hero-stats{position:static;border:none;background:none;flex-wrap:wrap;padding:16px 24px}
  .type-selector{grid-template-columns:repeat(2,1fr)}
  .form-grid,.adm-form-grid{grid-template-columns:1fr}
  .frow{grid-template-columns:1fr}
  .adm-side{display:none}
}

  /* ── FORM CARDS ── */
  .forms-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:860px;margin:0 auto}
  .fcard{
    background:var(--navy-light);border:1px solid rgba(255,255,255,.1);border-radius:14px;
    padding:36px;cursor:pointer;transition:all .3s;position:relative;overflow:hidden;
  }
  .fcard::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--sky))}
  .fcard:hover{border-color:rgba(201,168,76,.4);transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,0,0,.35)}
  .fcard-icon{font-size:40px;margin-bottom:14px;display:block}
  .fcard-badge{display:inline-block;padding:3px 12px;border-radius:20px;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:14px}
  .fcard-badge-sky{background:rgba(56,189,248,.15);color:var(--sky);border:1px solid rgba(56,189,248,.3)}
  .fcard-badge-gold{background:rgba(201,168,76,.15);color:var(--gold);border:1px solid rgba(201,168,76,.3)}
  .fcard-title{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:600;color:var(--white);line-height:1.15;margin-bottom:10px}
  .fcard-desc{font-size:13px;color:rgba(255,255,255,.5);line-height:1.75;margin-bottom:18px}
  .fcard-items{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:24px}
  .fcard-items li{display:flex;align-items:center;gap:8px;font-size:12px;color:rgba(255,255,255,.6)}
  .fcard-btn{display:inline-flex;align-items:center;gap:6px;padding:11px 22px;background:var(--gold);color:var(--navy);border-radius:6px;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;transition:background .2s}
  .fcard:hover .fcard-btn{background:var(--gold-lt)}

  /* ── INTEGRATED FORMS MODAL ── */
  .iform-overlay{position:fixed;inset:0;z-index:3000;background:rgba(0,0,0,.88);backdrop-filter:blur(10px);display:none;align-items:flex-start;justify-content:center;padding:16px;overflow-y:auto}
  .iform-overlay.open{display:flex}
  .iform-modal{background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:14px;width:100%;max-width:780px;margin:auto;position:relative;overflow:hidden}
  .iform-header{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);padding:28px 36px;border-bottom:1px solid rgba(201,168,76,.2);position:relative}
  .iform-header::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--sky))}
  .iform-logo{display:flex;align-items:center;gap:10px;margin-bottom:14px}
  .iform-logo-circle{width:36px;height:36px;border:1.5px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
  .iform-logo-name{font-family:'Cormorant Garamond',serif;font-size:16px;color:var(--white);font-weight:600}
  .iform-logo-sub{font-size:9px;color:var(--gold);letter-spacing:2px;text-transform:uppercase}
  .iform-title{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:600;color:var(--white);line-height:1.1}
  .iform-subtitle{font-size:12px;color:rgba(255,255,255,.5);margin-top:5px}
  .iform-close{position:absolute;top:18px;right:20px;width:34px;height:34px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;color:rgba(255,255,255,.6);transition:all .2s}
  .iform-close:hover{background:rgba(255,255,255,.15);color:var(--white)}
  .iform-body{padding:28px 36px 36px}
  .iform-progress{display:flex;gap:0;margin-bottom:28px;border-radius:6px;overflow:hidden}
  .ipstep{flex:1;padding:9px 4px;text-align:center;font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;background:rgba(255,255,255,.06);color:rgba(255,255,255,.35);transition:all .3s;border-right:1px solid rgba(255,255,255,.08)}
  .ipstep:last-child{border-right:none}
  .ipstep.active{background:rgba(201,168,76,.15);color:var(--gold)}
  .ipstep.done{background:rgba(34,197,94,.12);color:var(--success)}
  .iform-step{display:none}
  .iform-step.active{display:block}
  .iform-slabel{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin:20px 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(201,168,76,.18)}
  .ifg{margin-bottom:13px}
  .ifg label{display:block;font-size:10px;font-weight:600;color:rgba(255,255,255,.45);margin-bottom:5px;letter-spacing:.5px;text-transform:uppercase}
  .ifg input,.ifg select,.ifg textarea{width:100%;padding:11px 14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:6px;font-family:'Outfit',sans-serif;font-size:13px;color:var(--white);outline:none;transition:border-color .2s}
  .ifg input:focus,.ifg select:focus,.ifg textarea:focus{border-color:rgba(201,168,76,.5)}
  .ifg input::placeholder,.ifg textarea::placeholder{color:rgba(255,255,255,.2)}
  .ifg select option{background:var(--navy-mid);color:var(--white)}
  .ifg textarea{resize:vertical;min-height:88px}
  .ifgrid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
  .ifgrid.col3{grid-template-columns:1fr 1fr 1fr}
  .iffull{grid-column:1/-1}
  .iform-info{background:rgba(56,189,248,.07);border:1px solid rgba(56,189,248,.2);border-radius:6px;padding:12px 16px;display:flex;align-items:flex-start;gap:10px;margin-bottom:20px;font-size:12px;color:rgba(255,255,255,.55);line-height:1.7}
  .iform-nav{display:flex;gap:10px;margin-top:20px;align-items:center}
  .iform-next{flex:1;padding:13px;background:var(--gold);color:var(--navy);border:none;border-radius:6px;cursor:pointer;font-family:'Outfit',sans-serif;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;transition:background .2s;display:flex;align-items:center;justify-content:center;gap:8px}
  .iform-next:hover{background:var(--gold-lt)}
  .iform-back{padding:13px 20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:6px;cursor:pointer;font-family:'Outfit',sans-serif;font-size:12px;font-weight:600;color:rgba(255,255,255,.6);transition:all .2s}
  .iform-back:hover{background:rgba(255,255,255,.1);color:var(--white)}
  .iform-tipo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}
  .iform-tipo-btn{padding:14px 8px;border:1.5px solid rgba(255,255,255,.1);border-radius:8px;background:transparent;color:rgba(255,255,255,.55);cursor:pointer;text-align:center;font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;transition:all .2s}
  .iform-tipo-btn .ticon{font-size:24px;display:block;margin-bottom:5px}
  .iform-tipo-btn.sel{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.08)}
  .iform-success{display:none;flex-direction:column;align-items:center;justify-content:center;padding:60px 36px;text-align:center}
  .iform-success.show{display:flex}
  .iform-sheets-link{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:10px 20px;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.3);border-radius:6px;color:var(--success);font-size:12px;font-weight:600;text-decoration:none;transition:all .2s}
  .iform-sheets-link:hover{background:rgba(34,197,94,.2)}
  .status-sending{opacity:.6;pointer-events:none}
  @media(max-width:768px){
    .forms-cards-grid{grid-template-columns:1fr}
    .iform-tipo-grid{grid-template-columns:repeat(2,1fr)}
    .ifgrid,.ifgrid.col3{grid-template-columns:1fr}
    .iform-body,.iform-header{padding:20px}
  }