/* ═══════════════════════════════════════════
   AdMirror — V3 Cinematic
   British Racing Green + Cream
   ═══════════════════════════════════════════ */

:root {
  --primary-dark: #0F2921;
  --primary: #1B4332;
  --primary-light: #2D6B4F;
  --accent: #D4A373;
  --accent-light: #E0BD96;
  --accent-dark: #B8864F;
  --bg: #FEFAE0;
  --bg-alt: #F5EFD0;
  --card: #FEFAE0;
  --border: #E5DFC8;
  --border-subtle: #F0EAD4;
  --text-primary: #2B2D2E;
  --text-secondary: #525250;
  --text-tertiary: #7A7A76;
  --text-inverse: #FEFAE0;
  --heading: 'Space Grotesk', sans-serif;
  --body: 'Inter', sans-serif;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { font-size:16px; scroll-behavior:smooth; }
html.lenis, html.lenis body { height:auto; }
.lenis.lenis-smooth { scroll-behavior:auto !important; }
body {
  font-family: var(--body);
  background: var(--bg);
  color: var(--text-primary);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  cursor: none;
}
a, button { color:inherit; text-decoration:none; cursor:none; }
img { display:block; max-width:100%; }

/* ── PRELOADER ── */
.preloader {
  position:fixed; inset:0; z-index:9999;
  background:var(--primary-dark);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  transition: opacity 0.6s ease, visibility 0.6s ease;
}
.preloader.done { opacity:0; visibility:hidden; pointer-events:none; }
.preloader-logo {
  font-family:var(--heading); font-size:2.2rem; font-weight:700;
  color:var(--accent); letter-spacing:-0.02em; margin-bottom:36px;
}
.preloader-logo em { font-style:normal; font-weight:300; color:rgba(254,250,224,0.35); }
.preloader-bar { width:120px; height:2px; background:rgba(254,250,224,0.06); border-radius:2px; overflow:hidden; }
.preloader-fill { height:100%; width:0%; background:var(--accent); border-radius:2px; transition:width 0.3s ease; }

/* ── CURSOR ── */
.cursor {
  position:fixed; top:0; left:0; width:12px; height:12px;
  background:var(--accent); border-radius:50%;
  pointer-events:none; z-index:9998;
  transform:translate(-50%,-50%);
  transition: width 0.25s var(--ease-out), height 0.25s var(--ease-out), opacity 0.2s;
}
.cursor.expand { width:56px; height:56px; opacity:0.7; }
.cursor-ring {
  position:fixed; top:0; left:0; width:36px; height:36px;
  border:1.5px solid var(--accent); border-radius:50%;
  pointer-events:none; z-index:9997; opacity:0.3;
  transform:translate(-50%,-50%);
  transition: width 0.35s var(--ease-out), height 0.35s var(--ease-out), opacity 0.3s;
}
.cursor-ring.expand { width:64px; height:64px; opacity:0; }

/* ── GRAIN ── */
.grain {
  position:fixed; inset:0; z-index:9000; pointer-events:none; opacity:0.03;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-repeat:repeat; background-size:180px;
}

/* ── NAV ── */
.nav {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  padding:24px 48px;
  display:flex; justify-content:space-between; align-items:center;
  transition: all 0.5s var(--ease-out);
}
.nav.scrolled {
  background:rgba(254,250,224,0.94); backdrop-filter:blur(20px);
  padding:16px 48px; box-shadow:0 1px 0 rgba(0,0,0,0.04);
}
.nav-logo {
  font-family:var(--heading); font-size:1.3rem; font-weight:700;
  color:#fff; letter-spacing:-0.01em;
}
.nav.scrolled .nav-logo { color:var(--primary); }
.nav-logo em { font-style:normal; font-weight:300; }
.nav-links { display:flex; gap:32px; align-items:center; }
.nav-links a {
  font-family:var(--heading); font-size:0.8rem; font-weight:500;
  color:rgba(255,255,255,0.55); transition:color 0.2s;
}
.nav.scrolled .nav-links a { color:var(--text-secondary); }
.nav-links a:hover { color:#fff; }
.nav.scrolled .nav-links a:hover { color:var(--primary); }
.nav-cta {
  color:var(--primary-dark)!important; background:var(--accent)!important;
  padding:10px 22px; border-radius:6px; font-weight:600!important;
  transition:all 0.3s var(--ease-out);
}
.nav-cta:hover { transform:translateY(-1px); box-shadow:0 4px 20px rgba(212,163,115,0.3); }

/* ── HERO ── */
.hero {
  min-height:100vh; display:flex; flex-direction:column; justify-content:flex-end;
  padding:0 60px 100px; position:relative; overflow:hidden;
  background:var(--primary-dark);
}
.hero-bg-canvas { position:absolute; inset:0; z-index:0; }
.hero-content { position:relative; z-index:1; }
.hero-overline {
  font-family:var(--heading); font-size:0.7rem; font-weight:600;
  letter-spacing:0.25em; text-transform:uppercase;
  color:var(--accent); margin-bottom:28px;
  opacity:0; transform:translateY(20px);
}
.hero h1 {
  font-family:var(--heading); font-size:clamp(3.5rem,8.5vw,8rem);
  font-weight:700; line-height:0.95; letter-spacing:-0.05em;
  color:var(--text-inverse); max-width:95%; margin-bottom:36px;
}
.hero h1 .line { display:block; overflow:hidden; }
.hero h1 .line-inner { display:block; transform:translateY(110%); }
.hero h1 .line-inner em { font-style:normal; color:var(--accent); }
.hero-bottom { display:flex; justify-content:space-between; align-items:flex-end; margin-top:20px; }
.hero-sub {
  font-size:1.05rem; font-weight:300; line-height:1.8;
  color:rgba(254,250,224,0.4); max-width:400px;
  opacity:0; transform:translateY(20px);
}
.hero-btns { display:flex; gap:16px; opacity:0; transform:translateY(20px); }
.btn-primary {
  display:inline-flex; align-items:center; gap:8px;
  padding:18px 38px; background:var(--accent); color:var(--primary-dark);
  font-family:var(--heading); font-weight:600; font-size:0.95rem;
  border-radius:8px; border:none; transition:all 0.3s var(--ease-out);
}
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 8px 30px rgba(212,163,115,0.25); }
.btn-outline {
  display:inline-flex; align-items:center; padding:16px 36px;
  background:transparent; color:var(--text-inverse);
  font-family:var(--heading); font-weight:500; font-size:0.95rem;
  border:1.5px solid rgba(254,250,224,0.2); border-radius:8px;
  transition:all 0.3s var(--ease-out);
}
.btn-outline:hover { border-color:var(--accent); color:var(--accent); }
.scroll-indicator {
  position:absolute; bottom:32px; left:60px;
  display:flex; align-items:center; gap:12px;
  font-family:var(--heading); font-size:0.6rem; font-weight:500;
  letter-spacing:0.15em; text-transform:uppercase;
  color:rgba(254,250,224,0.2); z-index:1;
}
.scroll-line { width:40px; height:1px; background:rgba(254,250,224,0.1); position:relative; overflow:hidden; }
.scroll-line::after {
  content:''; position:absolute; left:0;top:0;width:100%;height:100%;
  background:var(--accent); animation:scrollPulse 2s ease-in-out infinite;
}
@keyframes scrollPulse { 0%{transform:translateX(-100%)} 50%{transform:translateX(0)} 100%{transform:translateX(100%)} }

/* ── MARQUEE ── */
.marquee-wrap {
  overflow:hidden; padding:24px 0;
  border-top:1px solid var(--border); border-bottom:1px solid var(--border);
  background:var(--bg);
}
.marquee-wrap.dark { border-color:rgba(254,250,224,0.06); background:var(--primary-dark); }
.marquee { display:flex; white-space:nowrap; animation:marqueeScroll 30s linear infinite; }
.marquee-item {
  font-family:var(--heading); font-size:0.7rem; font-weight:600;
  letter-spacing:0.2em; text-transform:uppercase;
  color:var(--text-tertiary); padding:0 36px; flex-shrink:0;
}
.marquee-wrap.dark .marquee-item { color:rgba(254,250,224,0.12); }
.marquee-dot { color:var(--accent); padding:0 4px; flex-shrink:0; }
@keyframes marqueeScroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* ── SECTIONS ── */
.section { padding:140px 60px; position:relative; }
.section-dark { background:var(--primary-dark); color:var(--text-inverse); }
.section-green { background:var(--primary); color:var(--text-inverse); }
.section-alt { background:var(--bg-alt); }
.section-label {
  font-family:var(--heading); font-size:0.65rem; font-weight:600;
  letter-spacing:0.2em; text-transform:uppercase; margin-bottom:20px;
}
.section-title {
  font-family:var(--heading); font-size:clamp(2.5rem,4.5vw,4rem);
  font-weight:700; letter-spacing:-0.035em; line-height:1.05;
  margin-bottom:20px; max-width:700px;
}
.section-desc { font-size:1.05rem; font-weight:300; line-height:1.8; max-width:480px; opacity:0.6; }

/* ── PROBLEM ── */
.problems { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; margin-top:64px; border-radius:16px; overflow:hidden; }
.problem-card {
  background:var(--primary); padding:52px 36px;
  position:relative; overflow:hidden;
  transition:background 0.4s var(--ease-out);
}
.problem-card:hover { background:var(--primary-light); }
.problem-card::before {
  content:''; position:absolute; top:0;left:0;right:0; height:3px;
  background:var(--accent); transform:scaleX(0); transform-origin:left;
  transition:transform 0.6s var(--ease-out);
}
.problem-card:hover::before { transform:scaleX(1); }
.problem-num {
  font-family:var(--heading); font-size:5rem; font-weight:700;
  color:rgba(254,250,224,0.04); line-height:1; margin-bottom:16px;
}
.problem-title {
  font-family:var(--heading); font-size:1.15rem; font-weight:600;
  color:var(--text-inverse); margin-bottom:12px;
}
.problem-desc { font-size:0.9rem; font-weight:300; line-height:1.7; color:rgba(254,250,224,0.5); }

/* ── SERVICES (EXPANDABLE CARDS) ── */
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:64px; }
.service-card {
  background:var(--card); border:1.5px solid var(--border);
  border-radius:16px; padding:36px 28px;
  cursor:pointer; position:relative; overflow:hidden;
  transition:all 0.4s var(--ease-out);
  transform-style:preserve-3d;
}
.service-card::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(27,67,50,0.03) 0%, transparent 60%);
  opacity:0; transition:opacity 0.4s;
}
.service-card:hover::before { opacity:1; }
.service-card:hover {
  border-color:var(--primary-light);
  transform:translateY(-4px);
  box-shadow:0 20px 60px rgba(27,67,50,0.1);
}
.service-card.active {
  border-color:var(--primary);
  background:var(--primary);
  transform:translateY(-4px);
  box-shadow:0 24px 60px rgba(27,67,50,0.15);
}
.service-card.active::before { opacity:0; }
.service-card-num {
  font-family:var(--heading); font-size:0.65rem; font-weight:600;
  letter-spacing:0.15em; text-transform:uppercase;
  color:var(--accent-dark); margin-bottom:16px;
  transition:color 0.3s;
}
.service-card.active .service-card-num { color:var(--accent); }
.service-card-icon {
  font-size:2rem; margin-bottom:16px;
  transition:transform 0.4s var(--ease-out);
}
.service-card:hover .service-card-icon { transform:scale(1.1); }
.service-card-title {
  font-family:var(--heading); font-size:1.2rem; font-weight:700;
  letter-spacing:-0.02em; color:var(--primary);
  margin-bottom:8px; transition:color 0.3s;
}
.service-card.active .service-card-title { color:var(--text-inverse); }
.service-card-short {
  font-size:0.85rem; font-weight:400; line-height:1.6;
  color:var(--text-tertiary); transition:color 0.3s;
}
.service-card.active .service-card-short { color:rgba(254,250,224,0.45); }
.service-card-expand {
  display:flex; align-items:center; gap:6px;
  margin-top:16px; font-family:var(--heading);
  font-size:0.7rem; font-weight:600; letter-spacing:0.08em;
  text-transform:uppercase; color:var(--primary-light);
  transition:color 0.3s;
}
.service-card.active .service-card-expand { color:var(--accent); }
.service-card-arrow {
  display:inline-block; transition:transform 0.3s var(--ease-out);
  font-size:0.8rem;
}
.service-card.active .service-card-arrow { transform:rotate(180deg); }

/* Expanded detail panel */
.service-detail-panel {
  max-height:0; overflow:hidden;
  transition:max-height 0.5s var(--ease-out), margin 0.5s var(--ease-out), opacity 0.4s;
  opacity:0; margin-top:0;
}
.service-detail-panel.open {
  max-height:300px; opacity:1; margin-top:20px;
}
.service-detail-inner {
  padding-top:20px; border-top:1px solid rgba(254,250,224,0.1);
}
.service-detail-text {
  font-size:0.88rem; font-weight:300; line-height:1.75;
  color:rgba(254,250,224,0.6);
}
.service-detail-items {
  display:flex; flex-wrap:wrap; gap:8px; margin-top:14px;
}
.service-detail-tag {
  font-family:var(--heading); font-size:0.65rem; font-weight:500;
  letter-spacing:0.05em; text-transform:uppercase;
  padding:5px 12px; border-radius:20px;
  background:rgba(254,250,224,0.08); color:rgba(254,250,224,0.5);
}

/* ── WHY US ── */
.why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:64px; }
.why-card {
  padding:44px 32px;
  background:rgba(254,250,224,0.04);
  border:1px solid rgba(254,250,224,0.06);
  border-radius:14px;
  transition:all 0.4s var(--ease-out);
  transform-style:preserve-3d;
}
.why-card:hover { border-color:rgba(212,163,115,0.2); transform:translateY(-4px); }
.why-number {
  font-family:var(--heading); font-size:3.5rem; font-weight:700;
  color:var(--accent); line-height:1; margin-bottom:4px;
  letter-spacing:-0.03em;
}
.why-suffix {
  font-family:var(--heading); font-size:0.7rem; font-weight:600;
  letter-spacing:0.15em; text-transform:uppercase;
  color:rgba(254,250,224,0.35); margin-bottom:16px;
}
.why-title {
  font-family:var(--heading); font-size:1.15rem; font-weight:600;
  color:var(--text-inverse); margin-bottom:10px;
}
.why-desc { font-size:0.88rem; font-weight:300; line-height:1.7; color:rgba(254,250,224,0.45); }

/* ── STEPS ── */
.steps { display:grid; grid-template-columns:repeat(4,1fr); gap:40px; margin-top:64px; }
.step { text-align:center; }
.step-num { font-family:var(--heading); font-size:4rem; font-weight:700; color:var(--accent); line-height:1; margin-bottom:16px; }
.step-title { font-family:var(--heading); font-size:1rem; font-weight:600; color:var(--text-inverse); margin-bottom:8px; }
.step-desc { font-size:0.85rem; font-weight:300; line-height:1.6; color:rgba(254,250,224,0.4); }

/* ── PRICING ── */
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.price-card {
  border:1px solid var(--border); border-radius:16px; padding:48px 32px;
  background:var(--card); position:relative;
  transition:all 0.4s var(--ease-out);
  transform-style:preserve-3d;
}
.price-card:hover { transform:translateY(-6px); box-shadow:0 24px 60px rgba(27,67,50,0.08); }
.price-card.featured {
  background:var(--primary); color:var(--text-inverse);
  border-color:var(--primary); transform:scale(1.03);
}
.price-card.featured:hover { transform:scale(1.03) translateY(-6px); }
.price-badge {
  position:absolute; top:-12px; right:24px;
  background:var(--accent); color:var(--primary-dark);
  font-family:var(--heading); font-size:0.6rem; font-weight:600;
  letter-spacing:0.1em; text-transform:uppercase;
  padding:6px 14px; border-radius:20px;
}
.price-name { font-family:var(--heading); font-size:0.7rem; font-weight:600; letter-spacing:0.15em; text-transform:uppercase; margin-bottom:8px; }
.price-amount { font-family:var(--heading); font-size:3.2rem; font-weight:700; letter-spacing:-0.03em; line-height:1; margin-bottom:4px; }
.price-period { font-size:0.8rem; font-weight:400; opacity:0.5; margin-bottom:28px; }
.price-list { list-style:none; margin-bottom:36px; }
.price-list li { font-size:0.88rem; font-weight:300; line-height:1.6; padding:6px 0; padding-left:20px; position:relative; }
.price-list li::before { content:'✓'; position:absolute; left:0; font-weight:600; }
.price-card.featured .price-list li::before { color:var(--accent); }
.price-btn {
  display:block; width:100%; text-align:center; padding:15px; border-radius:8px;
  font-family:var(--heading); font-weight:600; font-size:0.9rem;
  border:none; transition:all 0.3s var(--ease-out);
}
.price-btn:hover { transform:translateY(-1px); }

/* ── RESULTS (no fake testimonials) ── */
.results-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:64px; }
.result-card {
  background:rgba(254,250,224,0.03); border:1px solid rgba(254,250,224,0.06);
  border-radius:14px; padding:44px 32px;
  transition:all 0.4s var(--ease-out);
}
.result-card:hover { border-color:rgba(212,163,115,0.15); transform:translateY(-4px); }
.result-icon { font-size:2rem; margin-bottom:20px; }
.result-title { font-family:var(--heading); font-size:1.1rem; font-weight:600; color:var(--text-inverse); margin-bottom:10px; }
.result-desc { font-size:0.88rem; font-weight:300; line-height:1.7; color:rgba(254,250,224,0.45); }

/* ── BIG CTA ── */
.big-cta { text-align:center; padding:160px 60px; position:relative; overflow:hidden; }
.big-cta h2 {
  font-family:var(--heading); font-size:clamp(3rem,6vw,5.5rem);
  font-weight:700; letter-spacing:-0.04em; line-height:1.02;
  color:var(--text-inverse); margin-bottom:24px;
}
.big-cta p {
  font-size:1.1rem; font-weight:300; color:rgba(254,250,224,0.4);
  max-width:440px; margin:0 auto 44px; line-height:1.7;
}
.btn-cta-big {
  display:inline-flex; align-items:center; gap:8px;
  padding:22px 48px; background:var(--accent); color:var(--primary-dark);
  font-family:var(--heading); font-weight:700; font-size:1.05rem;
  border-radius:10px; border:none; transition:all 0.3s var(--ease-out);
}
.btn-cta-big:hover { transform:translateY(-3px); box-shadow:0 12px 40px rgba(212,163,115,0.3); }

/* ── FOOTER ── */
.footer {
  padding:48px 60px; display:flex; justify-content:space-between;
  align-items:center; border-top:1px solid var(--border);
}
.footer-logo { font-family:var(--heading); font-size:1.1rem; font-weight:700; color:var(--primary); }
.footer-logo em { font-style:normal; font-weight:300; }
.footer-copy { font-size:0.8rem; color:var(--text-tertiary); }
.footer-legal { display:flex; gap:12px; align-items:center; margin-top:8px; }
.footer-legal a { font-size:0.75rem; color:var(--text-tertiary); text-decoration:none; transition:color 0.3s; }
.footer-legal a:hover { color:var(--accent); }
.footer-legal span { color:var(--text-tertiary); font-size:0.7rem; }

/* ── WHATSAPP FLOAT ── */
.whatsapp-float {
  position:fixed; bottom:32px; right:32px; z-index:8000;
  width:60px; height:60px; border-radius:50%;
  background:#25D366; display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 24px rgba(37,211,102,0.4);
  transition:all 0.3s var(--ease-out);
  cursor:none;
}
.whatsapp-float:hover { transform:scale(1.1) translateY(-2px); box-shadow:0 8px 32px rgba(37,211,102,0.5); }
.whatsapp-float svg { width:30px; height:30px; fill:#fff; }
@media(max-width:768px) { .whatsapp-float { cursor:auto; bottom:20px; right:20px; } }

/* ── REVEALS ── */
.reveal { opacity:0; transform:translateY(40px); }
.reveal-left { opacity:0; transform:translateX(-40px); }

/* ── RESPONSIVE ── */
@media(max-width:1024px) {
  .problems, .why-grid, .pricing-grid, .results-grid { grid-template-columns:1fr 1fr; }
  .steps { grid-template-columns:1fr 1fr; gap:32px; }
  .services-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:768px) {
  body { cursor:auto; }
  .cursor,.cursor-ring { display:none; }
  .hero,.section,.big-cta,.footer { padding-left:24px; padding-right:24px; }
  .nav { padding:16px 24px; }
  .nav-links a:not(.nav-cta) { display:none; }
  .problems,.why-grid,.pricing-grid,.results-grid,.steps,.services-grid { grid-template-columns:1fr; }
  .price-card.featured { transform:none; }
  .hero h1 { font-size:2.8rem; }
  .hero-bottom { flex-direction:column; gap:32px; }
}

/* ── VERTICALS ── */
.verticals-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:64px; }
.vertical-card {
  background:var(--card); border:1.5px solid var(--border);
  border-radius:16px; padding:48px 36px;
  transition:all 0.4s var(--ease-out);
  transform-style:preserve-3d;
  position:relative; overflow:hidden;
}
.vertical-card::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(27,67,50,0.04) 0%, transparent 60%);
  opacity:0; transition:opacity 0.4s;
}
.vertical-card:hover::before { opacity:1; }
.vertical-card:hover {
  border-color:var(--primary-light);
  transform:translateY(-6px);
  box-shadow:0 24px 60px rgba(27,67,50,0.1);
}
.vertical-icon { font-size:2.5rem; margin-bottom:16px; }
.vertical-label {
  font-family:var(--heading); font-size:0.6rem; font-weight:600;
  letter-spacing:0.2em; text-transform:uppercase;
  color:var(--accent-dark); margin-bottom:12px;
}
.vertical-title {
  font-family:var(--heading); font-size:1.6rem; font-weight:700;
  letter-spacing:-0.02em; color:var(--primary);
  margin-bottom:12px;
}
.vertical-desc {
  font-size:0.95rem; font-weight:300; line-height:1.7;
  color:var(--text-secondary); margin-bottom:20px;
}
.vertical-question {
  font-family:var(--heading); font-size:0.9rem; font-weight:500;
  font-style:italic; color:var(--primary-light);
  padding:16px 20px; border-left:3px solid var(--accent);
  background:rgba(27,67,50,0.03); border-radius:0 8px 8px 0;
  margin-bottom:20px;
}
.vertical-tags { display:flex; flex-wrap:wrap; gap:8px; }
.vertical-tags span {
  font-family:var(--heading); font-size:0.65rem; font-weight:500;
  letter-spacing:0.05em; text-transform:uppercase;
  padding:5px 14px; border-radius:20px;
  background:rgba(27,67,50,0.06); color:var(--primary-light);
}

/* ── PRICE SETUP LINE ── */
.price-setup {
  font-family:var(--heading); font-size:0.75rem; font-weight:500;
  color:var(--text-tertiary); margin-bottom:24px;
  letter-spacing:0.03em;
}

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

/* ═══════════════════════════════════════════
   VETERINARIOS PAGE — Additional Components
   ═══════════════════════════════════════════ */

/* ── VET HERO STAT STRIP ── */
.vet-stat-strip {
  display:flex; align-items:flex-start; gap:0;
  border-top:1px solid rgba(254,250,224,0.08);
  margin-top:64px; padding-top:40px;
  position:relative; z-index:1;
}
.vet-stat { flex:1; padding:0 40px 0 0; }
.vet-stat:first-child { padding-left:0; }
.vet-stat-num {
  font-family:var(--heading); font-size:2.8rem; font-weight:700;
  color:var(--accent); letter-spacing:-0.04em; line-height:1;
  margin-bottom:8px;
}
.vet-stat-label {
  font-size:0.78rem; font-weight:300; line-height:1.6;
  color:rgba(254,250,224,0.35); max-width:220px;
}
.vet-stat-divider {
  width:1px; background:rgba(254,250,224,0.06);
  align-self:stretch; margin:0 40px 0 0; flex-shrink:0;
}

/* ── BEFORE / AFTER ── */
.ba-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:20px; margin-top:64px;
}
.ba-col {
  border-radius:16px; padding:44px 36px;
}
.ba-col-before {
  background:var(--primary-dark);
  border:1px solid rgba(254,250,224,0.06);
}
.ba-col-after {
  background:var(--primary);
  border:1px solid rgba(212,163,115,0.15);
}
.ba-col-header { margin-bottom:28px; }
.ba-tag {
  display:inline-block;
  font-family:var(--heading); font-size:0.6rem; font-weight:600;
  letter-spacing:0.15em; text-transform:uppercase;
  padding:5px 14px; border-radius:20px; margin-bottom:14px;
}
.ba-tag-before {
  background:rgba(254,250,224,0.06);
  color:rgba(254,250,224,0.35);
}
.ba-tag-after {
  background:rgba(212,163,115,0.15);
  color:var(--accent);
}
.ba-col-title {
  font-family:var(--heading); font-size:1.4rem; font-weight:700;
  letter-spacing:-0.02em; color:var(--text-inverse);
}
.ba-list { list-style:none; }
.ba-item {
  font-size:0.9rem; font-weight:300; line-height:1.6;
  padding:10px 0; padding-left:24px; position:relative;
  border-bottom:1px solid rgba(254,250,224,0.05);
}
.ba-item:last-child { border-bottom:none; }
.ba-item::before {
  position:absolute; left:0; font-weight:700; font-size:0.85rem;
}
.ba-item-bad { color:rgba(254,250,224,0.45); }
.ba-item-bad::before { content:'✕'; color:rgba(254,100,100,0.5); }
.ba-item-good { color:rgba(254,250,224,0.7); }
.ba-item-good::before { content:'✓'; color:var(--accent); }

/* ── VET DELIVERABLES ── */
.vet-deliverables {
  display:grid; grid-template-columns:1fr 1fr;
  gap:2px; margin-top:64px;
  background:var(--border); border-radius:16px; overflow:hidden;
}
.vet-deliverable {
  display:flex; gap:20px; align-items:flex-start;
  background:var(--card); padding:32px 28px;
  transition:background 0.3s var(--ease-out);
}
.vet-deliverable:hover { background:var(--bg-alt); }
.vet-del-icon { font-size:1.6rem; flex-shrink:0; margin-top:2px; }
.vet-del-title {
  font-family:var(--heading); font-size:1rem; font-weight:600;
  color:var(--primary); margin-bottom:6px; letter-spacing:-0.01em;
}
.vet-del-desc {
  font-size:0.82rem; font-weight:300; line-height:1.6;
  color:var(--text-tertiary);
}

/* ── WHY VETS TEXT ── */
.vet-why-text {
  margin-top:56px; max-width:720px;
  display:flex; flex-direction:column; gap:28px;
}
.vet-why-p {
  font-size:1.05rem; font-weight:300; line-height:1.85;
  color:rgba(254,250,224,0.55);
}
.vet-why-p strong { color:var(--accent); font-weight:500; }

/* ── FAQ ── */
.faq-list {
  margin-top:56px; max-width:720px;
  border-top:1px solid var(--border);
}
.faq-item { border-bottom:1px solid var(--border); }
.faq-q {
  width:100%; display:flex; justify-content:space-between; align-items:center;
  padding:24px 0; background:none; border:none; cursor:none;
  font-family:var(--heading); font-size:1rem; font-weight:600;
  color:var(--primary); letter-spacing:-0.01em; text-align:left;
  gap:16px; transition:color 0.2s;
}
.faq-q:hover { color:var(--primary-light); }
.faq-arrow {
  font-size:1.4rem; font-weight:300; line-height:1;
  color:var(--accent); flex-shrink:0;
  transition:transform 0.35s var(--ease-out);
}
.faq-item.faq-open .faq-arrow { transform:rotate(45deg); }
.faq-a {
  max-height:0; overflow:hidden;
  transition:max-height 0.45s var(--ease-out);
}
.faq-a p {
  font-size:0.92rem; font-weight:300; line-height:1.8;
  color:var(--text-secondary); padding-bottom:24px;
}

/* ── BIG CTA WHATSAPP LINK ── */
.vet-cta-wa {
  margin-top:28px;
}
.vet-cta-wa-link {
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--heading); font-size:0.85rem; font-weight:500;
  color:rgba(254,250,224,0.4); letter-spacing:0.02em;
  border-bottom:1px solid rgba(254,250,224,0.1);
  padding-bottom:2px;
  transition:color 0.2s, border-color 0.2s;
}
.vet-cta-wa-link:hover { color:rgba(37,211,102,0.9); border-color:rgba(37,211,102,0.3); }

/* ── VET RESPONSIVE ── */
@media(max-width:1024px) {
  .vet-deliverables { grid-template-columns:1fr; }
  .ba-grid { grid-template-columns:1fr; }
}
@media(max-width:768px) {
  .vet-stat-strip { flex-direction:column; gap:28px; }
  .vet-stat { padding:0; max-width:100%; }
  .vet-stat-divider { display:none; }
  .vet-deliverables { grid-template-columns:1fr; border-radius:12px; }
  .faq-q { cursor:auto; font-size:0.92rem; }
  .vet-cta-wa-link { cursor:auto; }
}
