/*
Theme Name: Grúas Córdoba
Theme URI: https://cordobagrua.com.ar
Description: Custom theme for Grúas Córdoba 24hs — gc-* design system, es-AR.
Version: 1.0.0
License: Proprietary
Text Domain: gruascordoba
*/
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,600&display=swap');

/* ============================================================
   GRÚAS CÓRDOBA 24HS — SISTEMA DE DISEÑO HIGH-END v8.0
   Design System de Alta Gama para Servicios de Auxilio y Remolque
   Tipografía: Plus Jakarta Sans | Paleta: Deep Carbon / Solar Amber
   Efectos Hápticos, Micro-interacciones & Máxima Conversión CRO
   ============================================================ */

:root {
  --gc-black: #0A0C10;
  --gc-black-deep: #060709;
  --gc-gray-900: #11141D;
  --gc-gray-800: #181D2A;
  --gc-gray-700: #22293A;
  --gc-gray-600: #374151;
  --gc-gray-500: #6B7280;
  --gc-gray-400: #94A3B8;
  --gc-gray-300: #CBD5E1;
  --gc-white: #F8FAFC;
  --gc-white-pure: #FFFFFF;
  --gc-orange: #FF5500;
  --gc-orange-hover: #FF7026;
  --gc-orange-dim: #E04800;
  --gc-orange-glow: rgba(255, 85, 0, 0.28);
  --gc-orange-text: #FFFFFF;
  --gc-green-wa: #25D366;
  --gc-green-wa-hover: #20BD5A;
  --gc-green-wa-glow: rgba(37, 211, 102, 0.28);
  --gc-red: #EF4444;
  --gc-radius: 18px;
  --gc-radius-lg: 24px;
  --gc-radius-sm: 10px;
  --gc-radius-pill: 50px;
  --gc-border: rgba(255, 255, 255, 0.08);
  --gc-border-hover: rgba(255, 85, 0, 0.35);
  --gc-shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.4);
  --gc-shadow-md: 0 10px 30px -5px rgba(0, 0, 0, 0.6);
  --gc-shadow-lg: 0 20px 45px -10px rgba(0, 0, 0, 0.7);
  --gc-shadow-glow: 0 8px 30px rgba(255, 85, 0, 0.35);
  --gc-shadow-brutal: 0 8px 25px rgba(255, 85, 0, 0.25);
  --gc-ease: 0.25s cubic-bezier(0.32, 0.72, 0, 1);
  --gc-ease-slow: 0.5s cubic-bezier(0.32, 0.72, 0, 1);
  --gc-font: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --gc-max-width: 1160px;
}

/* RESET & BASE */
.gc-page *, .gc-page *::before, .gc-page *::after { box-sizing:border-box; margin:0; padding:0; }
.gc-page { font-family:var(--gc-font); background:var(--gc-black); color:var(--gc-gray-300); line-height:1.7; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; overflow-x:hidden; scroll-behavior:smooth; }
.gc-page img { max-width:100%; height:auto; display:block; }
.gc-page a { color:inherit; text-decoration:none; transition:all var(--gc-ease); }
.gc-page strong { color:var(--gc-white); font-weight:700; }
.gc-page ::selection { background:var(--gc-orange); color:var(--gc-white-pure); }

/* STICKY HEADER (Glassmorphic Navigation) */
.gc-header { position:sticky; top:0; z-index:1000; background:rgba(10, 12, 16, 0.85); backdrop-filter:blur(20px) saturate(1.4); -webkit-backdrop-filter:blur(20px); border-bottom:1px solid rgba(255, 255, 255, 0.08); padding:0.75rem 1.5rem; transition:all var(--gc-ease); }
.gc-header-inner { max-width:var(--gc-max-width); margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.gc-logo { font-size:1.4rem; font-weight:900; color:var(--gc-white); letter-spacing:-0.03em; display:inline-flex; align-items:center; gap:4px; }
.gc-logo span { color:var(--gc-orange); }
.gc-btn-call { display:inline-flex; align-items:center; gap:0.5rem; background:linear-gradient(135deg, var(--gc-orange) 0%, var(--gc-orange-hover) 100%); color:var(--gc-orange-text)!important; font-weight:800; font-size:0.85rem; padding:0.65rem 1.4rem; border-radius:var(--gc-radius-pill); border:1px solid rgba(255,255,255,0.2); cursor:pointer; text-transform:uppercase; letter-spacing:0.04em; transition:all var(--gc-ease); box-shadow:0 4px 15px rgba(255,85,0,0.3); }
.gc-btn-call:hover { transform:translateY(-2px); box-shadow:0 8px 25px rgba(255,85,0,0.45); }
.gc-btn-call svg { width:15px; height:15px; fill:var(--gc-orange-text); }

/* HERO — Kinetic Agency Hero */
.gc-hero { position:relative; min-height:100vh; display:flex; align-items:center; justify-content:center; text-align:center; padding:6.5rem 1.5rem 4.5rem; overflow:hidden; background:var(--gc-black-deep); }
.gc-hero-bg { position:absolute; inset:0; z-index:0; }
.gc-hero-bg img { width:100%; height:100%; object-fit:cover; border-radius:0; filter:brightness(0.35) contrast(1.1) saturate(0.8); }
.gc-hero-bg::after { content:''; position:absolute; inset:0; background:radial-gradient(circle at 50% 35%, rgba(255,85,0,0.08) 0%, transparent 70%), linear-gradient(to bottom, rgba(6,7,9,0.55) 0%, rgba(10,12,16,0.8) 60%, var(--gc-black) 100%); }
.gc-hero-content { position:relative; z-index:2; max-width:860px; margin:0 auto; }
.gc-hero h1 { font-size:clamp(2.7rem,7vw,5.5rem); font-weight:900; color:var(--gc-white-pure); line-height:1.02; margin-bottom:1.2rem; letter-spacing:-0.04em; }
.gc-hero h1 span { color:var(--gc-orange); display:block; }
.gc-hero-sub { font-size:clamp(1.02rem,2vw,1.22rem); color:var(--gc-gray-300); margin-bottom:2.2rem; max-width:640px; margin-left:auto; margin-right:auto; line-height:1.75; font-weight:400; }
.gc-hero-actions { display:flex; flex-direction:column; gap:1rem; align-items:center; justify-content:center; }
.gc-btn-hero-call { display:inline-flex; align-items:center; justify-content:center; gap:0.6rem; background:linear-gradient(135deg, #FF5500 0%, #FF7026 100%); color:var(--gc-orange-text)!important; font-weight:800; font-size:1.1rem; padding:1.15rem 2.8rem; border-radius:var(--gc-radius-pill); transition:all var(--gc-ease); border:1px solid rgba(255,255,255,0.25); cursor:pointer; text-transform:uppercase; letter-spacing:0.02em; box-shadow:0 10px 30px rgba(255,85,0,0.4), inset 0 1px 1px rgba(255,255,255,0.3); min-width:300px; }
.gc-btn-hero-call:hover { transform:translateY(-2px) scale(1.01); box-shadow:0 14px 40px rgba(255,85,0,0.55), inset 0 1px 1px rgba(255,255,255,0.4); }
.gc-btn-hero-call:active { transform:translateY(1px) scale(0.98); }
.gc-btn-hero-wa { display:inline-flex; align-items:center; justify-content:center; gap:0.6rem; background:rgba(37,211,102,0.08); color:var(--gc-white-pure)!important; font-weight:700; font-size:1rem; padding:1.05rem 2.2rem; border-radius:var(--gc-radius-pill); transition:all var(--gc-ease); border:1.5px solid rgba(37,211,102,0.4); box-shadow:0 4px 20px rgba(0,0,0,0.3); }
.gc-btn-hero-wa:hover { border-color:var(--gc-green-wa); background:rgba(37,211,102,0.18); box-shadow:0 8px 30px rgba(37,211,102,0.35); transform:translateY(-2px); }

/* GPS & LIVE RADAR BADGE */
.gc-gps-badge, .gc-locate-badge { display:inline-flex; align-items:center; gap:0.6rem; background:rgba(17,20,29,0.88); border:1px solid rgba(255,85,0,0.35); padding:0.45rem 1.1rem; border-radius:var(--gc-radius-pill); margin-bottom:1.5rem; font-size:0.78rem; color:var(--gc-white); font-weight:700; letter-spacing:0.04em; text-transform:uppercase; backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); box-shadow:0 4px 20px rgba(0,0,0,0.4); }
.gc-gps-badge::before, .gc-locate-badge::before { content:''; width:8px; height:8px; background:#25D366; border-radius:50%; box-shadow:0 0 10px #25D366; animation:gc-pulse 2s infinite; flex-shrink:0; }
@keyframes gc-pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.4)} }

/* BENTO GRID (Double-Bezel Card Hierarchy) */
.gc-bento { padding:0 1.5rem 4rem; max-width:var(--gc-max-width); margin:0 auto; }
.gc-bento-grid { display:grid; grid-template-columns:1fr; gap:1.2rem; }
.gc-bento-card { background:var(--gc-gray-900); border:1px solid var(--gc-border); border-radius:var(--gc-radius); padding:2rem; transition:all var(--gc-ease); position:relative; overflow:hidden; box-shadow:var(--gc-shadow-md), inset 0 1px 0 rgba(255,255,255,0.06); }
.gc-bento-card:hover { border-color:var(--gc-border-hover); transform:translateY(-4px); box-shadow:0 16px 40px -10px rgba(0,0,0,0.7), 0 0 25px rgba(255,85,0,0.15); }
.gc-bento-card.gc-bento-accent { background:linear-gradient(135deg, #FF5500 0%, #D84200 100%); color:var(--gc-white-pure); border:1px solid rgba(255,255,255,0.25); box-shadow:0 14px 35px rgba(255,85,0,0.35), inset 0 1px 1px rgba(255,255,255,0.3); }
.gc-bento-card.gc-bento-accent strong { color:var(--gc-white-pure); }
.gc-bento-card.gc-bento-accent:hover { background:linear-gradient(135deg, #FF661A 0%, #E04800 100%); transform:translateY(-4px); box-shadow:0 18px 45px rgba(255,85,0,0.45); }
.gc-bento-num { font-size:clamp(2.5rem,6vw,3.5rem); font-weight:900; line-height:1; letter-spacing:-0.04em; color:var(--gc-orange); margin-bottom:0.5rem; }
.gc-bento-accent .gc-bento-num { color:var(--gc-white-pure); }
.gc-bento-label { font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:0.12em; color:var(--gc-gray-400); margin-bottom:0.3rem; }
.gc-bento-accent .gc-bento-label { color:rgba(255,255,255,0.85); }
.gc-bento-title { font-size:1.15rem; font-weight:800; color:var(--gc-white); margin-bottom:0.5rem; letter-spacing:-0.02em; }
.gc-bento-text { font-size:0.92rem; color:var(--gc-gray-400); line-height:1.7; }
.gc-bento-accent .gc-bento-text { color:rgba(255,255,255,0.9); }

/* SECTIONS */
.gc-section { padding:5rem 1.5rem; max-width:var(--gc-max-width); margin:0 auto; }
.gc-section-title { font-size:clamp(2rem,4.5vw,3rem); font-weight:900; text-align:left; margin-bottom:0.8rem; color:var(--gc-white); letter-spacing:-0.035em; line-height:1.12; }
.gc-section-title span { color:var(--gc-orange); }
.gc-section-subtitle { text-align:left; color:var(--gc-gray-400); font-size:1.05rem; margin-bottom:3.5rem; max-width:680px; line-height:1.8; }

/* SERVICE CARDS (Machined Double-Bezel) */
.gc-services-grid { display:grid; grid-template-columns:1fr; gap:1.2rem; }
.gc-card { background:var(--gc-gray-900); border-radius:var(--gc-radius); overflow:hidden; border:1px solid var(--gc-border); transition:all var(--gc-ease); display:flex; flex-direction:column; box-shadow:var(--gc-shadow-md), inset 0 1px 0 rgba(255,255,255,0.06); }
.gc-card:hover { transform:translateY(-4px); border-color:var(--gc-border-hover); box-shadow:0 18px 45px -10px rgba(0,0,0,0.7), 0 0 25px rgba(255,85,0,0.18); }
.gc-card-img-wrap { overflow:hidden; height:220px; position:relative; }
.gc-card-img { width:100%; height:100%; object-fit:cover; transition:transform var(--gc-ease-slow); border-radius:0; filter:saturate(0.9) brightness(0.95); }
.gc-card:hover .gc-card-img { transform:scale(1.05); filter:saturate(1) brightness(1); }
.gc-card-body { padding:1.6rem; flex:1; display:flex; flex-direction:column; }
.gc-card h3 { font-size:1.15rem; font-weight:800; color:var(--gc-white); margin-bottom:0.6rem; letter-spacing:-0.02em; }
.gc-card p { font-size:0.92rem; color:var(--gc-gray-400); line-height:1.7; flex:1; }
.gc-card-cta { display:inline-flex; align-items:center; gap:0.4rem; color:var(--gc-orange); font-weight:700; font-size:0.88rem; margin-top:1.2rem; transition:all var(--gc-ease); }
.gc-card-cta:hover { gap:0.7rem; color:var(--gc-orange-hover); }

/* EMERGENCY CTA */
.gc-emergency { background:linear-gradient(180deg, var(--gc-gray-900) 0%, rgba(10,12,16,0.95) 100%); border-top:3px solid var(--gc-orange); padding:4.5rem 1.5rem; text-align:center; border-radius:var(--gc-radius-lg); margin:2rem auto; max-width:var(--gc-max-width); box-shadow:var(--gc-shadow-lg); border:1px solid rgba(255,255,255,0.08); border-top:3px solid var(--gc-orange); }
.gc-emergency-inner { max-width:680px; margin:0 auto; }
.gc-emergency h2 { font-size:clamp(1.8rem,4vw,2.5rem); font-weight:900; color:var(--gc-white); margin-bottom:1rem; letter-spacing:-0.03em; }
.gc-emergency p { font-size:1.05rem; color:var(--gc-gray-400); margin-bottom:2rem; line-height:1.8; }

/* WHATSAPP CTA */
.gc-wa-section { background:var(--gc-black-deep); padding:4.5rem 1.5rem; text-align:center; border-top:1px solid var(--gc-border); }
.gc-wa-section-inner { max-width:640px; margin:0 auto; }
.gc-wa-section h2 { font-size:clamp(1.7rem,3.5vw,2.4rem); font-weight:900; color:var(--gc-white); margin-bottom:1rem; letter-spacing:-0.03em; }
.gc-wa-section p { font-size:1.05rem; color:var(--gc-gray-400); margin-bottom:2.2rem; }
.gc-wa-section-btn { display:inline-flex; align-items:center; gap:0.6rem; background:linear-gradient(135deg, var(--gc-green-wa) 0%, var(--gc-green-wa-hover) 100%); color:#fff; font-weight:800; font-size:1.02rem; padding:1.1rem 2.6rem; border-radius:var(--gc-radius-pill); transition:all var(--gc-ease); border:1px solid rgba(255,255,255,0.2); cursor:pointer; text-transform:uppercase; letter-spacing:0.02em; box-shadow:0 8px 25px rgba(37,211,102,0.35); }
.gc-wa-section-btn:hover { transform:translateY(-2px); box-shadow:0 12px 35px rgba(37,211,102,0.45); }

/* FEATURES GRID */
.gc-features-grid { display:grid; grid-template-columns:1fr; gap:1.2rem; margin-bottom:2rem; }
.gc-feature { background:var(--gc-gray-900); border:1px solid var(--gc-border); border-radius:var(--gc-radius); padding:2rem; display:flex; gap:1.5rem; align-items:flex-start; transition:all var(--gc-ease); box-shadow:var(--gc-shadow-md), inset 0 1px 0 rgba(255,255,255,0.06); }
.gc-feature:hover { border-color:var(--gc-border-hover); transform:translateY(-3px); box-shadow:0 16px 40px -10px rgba(0,0,0,0.7), 0 0 25px rgba(255,85,0,0.15); }
.gc-feature-icon { width:52px; height:52px; min-width:52px; background:rgba(255,85,0,0.12); border:1px solid rgba(255,85,0,0.25); border-radius:var(--gc-radius-sm); display:flex; align-items:center; justify-content:center; }
.gc-feature:hover .gc-feature-icon { background:rgba(255,85,0,0.2); border-color:rgba(255,85,0,0.45); }
.gc-feature-icon svg { width:24px; height:24px; fill:var(--gc-orange); }
.gc-feature-body { flex:1; }
.gc-feature-body h3 { font-weight:800; color:var(--gc-white); font-size:1.15rem; margin-bottom:0.7rem; letter-spacing:-0.02em; }
.gc-feature-body p { color:var(--gc-gray-400); font-size:0.93rem; line-height:1.75; margin-bottom:0.8rem; }
.gc-feature-body p:last-child { margin-bottom:0; }

/* COVERAGE */
.gc-coverage { background:var(--gc-gray-900); border:1px solid var(--gc-border); border-radius:var(--gc-radius); padding:2.2rem; box-shadow:var(--gc-shadow-md); }
.gc-coverage:hover { border-color:var(--gc-border-hover); }
.gc-coverage-header { display:flex; gap:1.5rem; align-items:flex-start; margin-bottom:1.5rem; }
.gc-coverage-header h3 { font-weight:800; color:var(--gc-white); font-size:1.15rem; margin-bottom:0.3rem; }
.gc-coverage-header p { color:var(--gc-gray-400); font-size:0.9rem; }
.gc-zone-list { list-style:none; display:grid; grid-template-columns:1fr; gap:0.5rem; }
.gc-zone-list li { padding:0.8rem 1.1rem; color:var(--gc-gray-300); font-size:0.88rem; background:var(--gc-gray-800); border:1px solid var(--gc-border); border-radius:var(--gc-radius-sm); display:flex; justify-content:space-between; align-items:center; gap:1rem; transition:all var(--gc-ease); }
.gc-zone-list li:hover { border-color:var(--gc-border-hover); background:var(--gc-gray-700); }
.gc-zone-list li strong { color:var(--gc-white); font-size:0.9rem; }
.gc-zone-list li span { color:var(--gc-gray-400); font-size:0.82rem; text-align:right; }

/* CONTENT BLOCKS */
.gc-content { max-width:780px; margin:2.5rem 0; }
.gc-content p { color:var(--gc-gray-400); font-size:1rem; line-height:1.8; margin-bottom:1.2rem; }

/* GALLERY */
.gc-gallery-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:0.6rem; }
.gc-gallery-item { border-radius:var(--gc-radius-sm); overflow:hidden; aspect-ratio:4/3; cursor:pointer; }
.gc-gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform 0.6s ease,filter 0.6s ease; filter:saturate(0.7) brightness(0.85); border-radius:0; }
.gc-gallery-item:hover img { transform:scale(1.06); filter:saturate(1) brightness(1); }

/* TESTIMONIALS */
.gc-testimonial { background:var(--gc-gray-900); border-left:4px solid var(--gc-orange); padding:2rem; margin:0 0 1.5rem 0; max-width:780px; border-radius:0 var(--gc-radius) var(--gc-radius) 0; transition:transform var(--gc-ease); }
.gc-testimonial:hover { transform:translateX(4px); }
.gc-testimonial p { color:var(--gc-gray-300); font-size:1.02rem; line-height:1.8; font-style:italic; margin-bottom:1.2rem; }
.gc-testimonial-author { color:var(--gc-gray-500); font-weight:600; font-size:0.85rem; }

/* CALCULATOR */
.gc-calculator { background:var(--gc-gray-900); border:1px solid var(--gc-border); border-radius:var(--gc-radius); padding:2.5rem; max-width:540px; margin:3rem 0 0 0; }
.gc-calculator h3 { color:var(--gc-white); font-size:1.3rem; font-weight:800; margin-bottom:1.8rem; }
.gc-calc-group { margin-bottom:1.3rem; }
.gc-calc-group label { display:block; font-size:0.78rem; color:var(--gc-gray-500); margin-bottom:0.5rem; font-weight:600; text-transform:uppercase; letter-spacing:0.08em; }
.gc-calc-group select, .gc-calc-group input[type="number"] { width:100%; padding:0.9rem 1rem; background:var(--gc-gray-800); border:2px solid var(--gc-border); border-radius:var(--gc-radius-sm); color:var(--gc-white); font-size:0.95rem; font-family:var(--gc-font); transition:all var(--gc-ease); }
.gc-calc-group select:focus, .gc-calc-group input:focus { outline:none; border-color:var(--gc-orange); box-shadow:0 0 0 3px var(--gc-orange-glow); }
.gc-calc-btn { width:100%; padding:1rem; margin-top:0.8rem; background:var(--gc-orange); color:var(--gc-orange-text); font-weight:800; font-size:0.95rem; border:none; border-radius:var(--gc-radius-none); cursor:pointer; transition:all var(--gc-ease); text-transform:uppercase; box-shadow:var(--gc-shadow-brutal); }
.gc-calc-btn:hover { background:var(--gc-orange-hover); transform:translate(-2px,-2px); box-shadow:6px 6px 0px rgba(255,79,0,0.3); }
.gc-calc-result { text-align:center; padding:1.8rem; background:var(--gc-gray-800); border-radius:var(--gc-radius-sm); margin-top:1.5rem; display:none; border:2px solid var(--gc-border); }
.gc-calc-result.gc-active { display:block; animation:gc-fadeIn 0.4s ease; }
.gc-calc-result .gc-price { font-size:2.8rem; font-weight:900; color:var(--gc-orange); letter-spacing:-0.03em; line-height:1; margin-bottom:0.4rem; }
.gc-calc-result p { color:var(--gc-gray-500); font-size:0.82rem; }
@keyframes gc-fadeIn { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }

/* MAP */
.gc-map-wrap { border-radius:var(--gc-radius); overflow:hidden; border:2px solid var(--gc-border); }
.gc-map-wrap iframe { width:100%; height:350px; border:0; display:block; }

/* FAQ */
.gc-faq-list { max-width:740px; display:flex; flex-direction:column; gap:0.6rem; }
.gc-faq-item { background:var(--gc-gray-900); border:2px solid var(--gc-border); border-radius:var(--gc-radius-sm); overflow:hidden; transition:all var(--gc-ease); }
.gc-faq-item.gc-open { border-color:var(--gc-border-hover); }
.gc-faq-q { width:100%; background:none; border:none; color:var(--gc-gray-300); font-family:var(--gc-font); font-size:0.98rem; font-weight:700; padding:1.3rem 1.5rem; text-align:left; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:1rem; transition:color var(--gc-ease); }
.gc-faq-q:hover { color:var(--gc-orange); }
.gc-faq-q svg { width:18px; height:18px; fill:var(--gc-gray-500); flex-shrink:0; transition:transform var(--gc-ease),fill var(--gc-ease); }
.gc-faq-q:hover svg { fill:var(--gc-orange); }
.gc-faq-item.gc-open .gc-faq-q svg { transform:rotate(180deg); fill:var(--gc-orange); }
.gc-faq-a { max-height:0; overflow:hidden; transition:max-height 0.4s ease,padding 0.3s ease; }
.gc-faq-item.gc-open .gc-faq-a { max-height:500px; padding:0 1.5rem 1.5rem; }
.gc-faq-a p { color:var(--gc-gray-400); font-size:0.95rem; line-height:1.8; }

/* TRUST SIGNAL */
.gc-trust { background:var(--gc-gray-900); border-left:4px solid var(--gc-orange); border-radius:0 var(--gc-radius) var(--gc-radius) 0; padding:1.5rem 2rem; margin:2rem 0; max-width:780px; }
.gc-trust a { color:var(--gc-orange); font-weight:700; }
.gc-trust a:hover { color:var(--gc-orange-hover); }

/* FLOATING WA */
.gc-wa-float { position:fixed; bottom:24px; right:24px; z-index:9999; width:64px; height:64px; background:var(--gc-green-wa); border-radius:0; display:flex; align-items:center; justify-content:center; box-shadow:4px 4px 0px rgba(37,211,102,0.3); transition:all var(--gc-ease); }
.gc-wa-float:hover { transform:translate(-2px,-2px) scale(1.05); box-shadow:6px 6px 0px rgba(37,211,102,0.35); }
.gc-wa-float svg { width:34px; height:34px; fill:#fff; }

/* FOOTER */
.gc-footer { background:var(--gc-gray-900); border-top:2px solid var(--gc-orange); padding:2.5rem 1.5rem; text-align:center; }
.gc-footer p { color:var(--gc-gray-500); font-size:0.85rem; }
.gc-footer a { color:var(--gc-orange); font-weight:600; }
.gc-footer a:hover { color:var(--gc-orange-hover); }

/* SCROLL ANIMACIONES (Desactivadas por defecto para WordPress sin JS) */
.gc-animate { opacity:1; transform:translateY(0); transition:opacity 0.7s ease,transform 0.7s ease; }
.gc-animate.gc-visible { opacity:1; transform:translateY(0); }

/* RESPONSIVE TABLET 600px+ */
@media(min-width:600px){
  .gc-hero .gc-hero-actions{flex-direction:row;justify-content:center;gap:1rem}
  .gc-bento-grid{grid-template-columns:repeat(2,1fr)}
  .gc-features-grid{grid-template-columns:repeat(2,1fr)}
  .gc-services-grid{grid-template-columns:repeat(2,1fr)}
  .gc-gallery-grid{grid-template-columns:repeat(3,1fr)}
  .gc-zone-list{grid-template-columns:repeat(2,1fr)}
  .gc-loc-grid{grid-template-columns:repeat(2,1fr)}
  .gc-dept-grid{grid-template-columns:repeat(2,1fr)}
  .gc-footer-inner{grid-template-columns:repeat(2,1fr)}
}

/* RESPONSIVE DESKTOP 900px+ */
@media(min-width:900px){
  .gc-header{padding:0.85rem 2.5rem}
  .gc-bento-grid{grid-template-columns:repeat(4,1fr)}
  .gc-bento-grid>.gc-bento-card:first-child{grid-column:span 2}
  .gc-services-grid{grid-template-columns:repeat(4,1fr)}
  .gc-gallery-grid{grid-template-columns:repeat(4,1fr)}
  .gc-section{padding:6rem 2rem}
  .gc-card-img-wrap{height:240px}
  .gc-zone-list{grid-template-columns:repeat(3,1fr)}
  .gc-features-grid{grid-template-columns:repeat(2,1fr)}
  .gc-feature{padding:2.2rem}
  .gc-coverage{padding:2.5rem 3rem}
  .gc-loc-grid{grid-template-columns:repeat(3,1fr)}
  .gc-dept-grid{grid-template-columns:repeat(3,1fr)}
  .gc-footer-inner{grid-template-columns:1.4fr 1fr 1fr 1fr}
}

/* DESKTOP LARGE 1100px+ */
@media(min-width:1100px){
  .gc-loc-grid{grid-template-columns:repeat(4,1fr)}
  .gc-dept-grid{grid-template-columns:repeat(4,1fr)}
}

/* ========== LOCALIDADES DESTACADAS ========== */
.gc-loc-grid { display:grid; grid-template-columns:1fr; gap:0.7rem; }
.gc-loc-card { display:flex; flex-direction:column; gap:0.3rem; background:var(--gc-gray-900); border:1px solid var(--gc-border); border-radius:var(--gc-radius-sm); padding:1.3rem 1.5rem; transition:all var(--gc-ease); position:relative; overflow:hidden; text-decoration:none!important; }
.gc-loc-card::before { content:''; position:absolute; top:0; left:0; width:3px; height:100%; background:var(--gc-orange); opacity:0; transition:opacity var(--gc-ease); }
.gc-loc-card:hover { border-color:var(--gc-border-hover); transform:translateY(-3px); box-shadow:var(--gc-shadow-brutal); }
.gc-loc-card:hover::before { opacity:1; }
.gc-loc-card strong { color:var(--gc-white); font-size:1.05rem; font-weight:800; letter-spacing:-0.02em; }
.gc-loc-card:hover strong { color:var(--gc-orange); }
.gc-loc-dept { font-size:0.78rem; color:var(--gc-gray-500); font-weight:600; text-transform:uppercase; letter-spacing:0.06em; }
.gc-loc-badge { display:inline-flex; align-items:center; gap:0.3rem; background:rgba(255,79,0,0.12); color:var(--gc-orange); font-size:0.7rem; font-weight:700; padding:0.25rem 0.6rem; border-radius:4px; width:fit-content; text-transform:uppercase; letter-spacing:0.08em; margin-bottom:0.2rem; }
.gc-loc-featured { background:linear-gradient(135deg,var(--gc-gray-900) 0%,rgba(255,79,0,0.06) 100%); border-color:rgba(255,79,0,0.15); }
.gc-loc-featured::before { opacity:1; }

/* ========== DEPARTAMENTOS HUB GRID ========== */
.gc-provincia-section { border-top:1px solid var(--gc-border); }
.gc-dept-grid { display:grid; grid-template-columns:1fr; gap:0.7rem; }
.gc-dept-card { background:var(--gc-gray-900); border:1px solid var(--gc-border); border-radius:var(--gc-radius-sm); padding:1.4rem 1.5rem; transition:all var(--gc-ease); }
.gc-dept-card:hover { border-color:var(--gc-border-hover); transform:translateY(-2px); }
.gc-dept-card h3 { color:var(--gc-white); font-size:0.95rem; font-weight:800; margin-bottom:0.8rem; letter-spacing:-0.01em; }
.gc-dept-card ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:0.35rem; }
.gc-dept-card ul li { padding:0; }
.gc-dept-card ul li a { color:var(--gc-gray-400); font-size:0.88rem; font-weight:500; transition:all var(--gc-ease); display:inline-flex; align-items:center; gap:0.3rem; }
.gc-dept-card ul li a::before { content:'â†’'; color:var(--gc-gray-600); font-size:0.75rem; transition:color var(--gc-ease); }
.gc-dept-card ul li a:hover { color:var(--gc-orange); }
.gc-dept-card ul li a:hover::before { color:var(--gc-orange); }
.gc-dept-accent { background:linear-gradient(135deg,var(--gc-gray-900) 0%,rgba(255,79,0,0.08) 100%); border-color:rgba(255,79,0,0.2); }
.gc-dept-accent h3 { color:var(--gc-orange); }

/* ========== FOOTER EXPANDIDO ========== */
.gc-footer-expanded { padding:0; border-top:2px solid var(--gc-orange); }
.gc-footer-expanded .gc-footer-inner { max-width:var(--gc-max-width); margin:0 auto; padding:3.5rem 1.5rem 2rem; display:grid; grid-template-columns:1fr; gap:2.5rem; }
.gc-footer-brand { }
.gc-footer-logo { font-size:1.3rem; font-weight:900; color:var(--gc-white); display:block; margin-bottom:0.8rem; letter-spacing:-0.03em; }
.gc-footer-logo span { color:var(--gc-orange); }
.gc-footer-brand > p { color:var(--gc-gray-500); font-size:0.88rem; line-height:1.7; margin-bottom:1.2rem; }
.gc-footer-contact { display:flex; flex-direction:column; gap:0.5rem; }
.gc-footer-contact a { color:var(--gc-gray-400); font-size:0.88rem; font-weight:600; transition:color var(--gc-ease); }
.gc-footer-contact a:hover { color:var(--gc-orange); }
.gc-footer-col h4 { color:var(--gc-white); font-size:0.8rem; font-weight:800; text-transform:uppercase; letter-spacing:0.1em; margin-bottom:1rem; padding-bottom:0.6rem; border-bottom:1px solid var(--gc-border); }
.gc-footer-col ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:0.45rem; }
.gc-footer-col ul li a { color:var(--gc-gray-500); font-size:0.88rem; font-weight:500; transition:color var(--gc-ease); }
.gc-footer-col ul li a:hover { color:var(--gc-orange); }
.gc-footer-bottom { border-top:1px solid var(--gc-border); padding:1.5rem; text-align:center; }
.gc-footer-bottom p { color:var(--gc-gray-600); font-size:0.82rem; }
.gc-footer-bottom a { color:var(--gc-orange); font-weight:600; }

/* ============================================================
   GRÃšAS PRO 24HS â€” CSS v5.0 "INDUSTRIAL PRECISION"
   Minimalista Industrial Moderno
   Paleta: Negro Profundo / Gris Acero / Amarillo Vial
   Mobile-First | Grid/Flex | Scroll Animations
   Namespace: .gp-*
   ============================================================ */

/* â”€â”€â”€ 1. DESIGN TOKENS â”€â”€â”€ */
:root {
  /* Core Palette */
  --gp-black: #0D0D0D;
  --gp-black-soft: #141414;
  --gp-gray-900: #1A1A1A;
  --gp-gray-800: #232323;
  --gp-gray-700: #2E2E2E;
  --gp-gray-600: #3A3A3A;
  --gp-gray-500: #555555;
  --gp-gray-400: #888888;
  --gp-gray-300: #AAAAAA;
  --gp-gray-200: #CCCCCC;
  --gp-white: #F5F5F5;
  --gp-white-pure: #FFFFFF;

  /* Accent: Naranja Internacional (mismo que Homepage) */
  --gp-accent: #FF4F00;
  --gp-accent-hover: #FF6B2C;
  --gp-accent-dim: #E54500;
  --gp-accent-glow: rgba(255, 79, 0, 0.15);
  --gp-accent-text: #FFFFFF; /* Text on accent */

  /* WhatsApp */
  --gp-green-wa: #25D366;
  --gp-green-wa-hover: #20BD5A;

  /* Emergency */
  --gp-red: #E53935;

  /* Structure */
  --gp-radius: 8px;
  --gp-radius-md: 12px;
  --gp-radius-pill: 50px;

  /* Borders */
  --gp-border: rgba(255, 255, 255, 0.06);
  --gp-border-hover: rgba(255, 195, 0, 0.25);

  /* Shadows â€” Subtle, never exaggerated */
  --gp-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
  --gp-shadow-md: 0 4px 20px rgba(0, 0, 0, 0.4);
  --gp-shadow-lg: 0 8px 40px rgba(0, 0, 0, 0.5);
  --gp-shadow-accent: 0 4px 20px rgba(255, 195, 0, 0.12);

  /* Animation â€” Measured, not flashy */
  --gp-ease: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --gp-ease-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);

  /* Typography */
  --gp-font: 'Inter', -apple-system, 'Segoe UI', system-ui, sans-serif;
  --gp-max-width: 1140px;
  --gp-line-height: 1.7;
}

/* â”€â”€â”€ 2. RESET & BASE â”€â”€â”€ */
.gp-page *,
.gp-page *::before,
.gp-page *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.gp-page {
  font-family: var(--gp-font);
  background: var(--gp-black);
  color: var(--gp-gray-300);
  line-height: var(--gp-line-height);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
  scroll-behavior: smooth;
}

.gp-page img {
  max-width: 100%;
  height: auto;
  display: block;
  border-radius: var(--gp-radius);
}

.gp-page a {
  color: inherit;
  text-decoration: none;
  transition: color var(--gp-ease);
}

.gp-page strong {
  color: var(--gp-white);
  font-weight: 600;
}

/* Selection */
.gp-page ::selection {
  background: var(--gp-accent);
  color: var(--gp-black);
}

/* â”€â”€â”€ 3. STICKY HEADER â”€â”€â”€ */
.gp-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(13, 13, 13, 0.85);
  backdrop-filter: blur(16px) saturate(1.2);
  -webkit-backdrop-filter: blur(16px) saturate(1.2);
  border-bottom: 1px solid var(--gp-border);
  padding: 0.75rem 1.5rem;
}

.gp-header-inner {
  max-width: var(--gp-max-width);
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.gp-logo {
  font-size: 1.35rem;
  font-weight: 800;
  color: var(--gp-white);
  letter-spacing: -0.03em;
  display: flex;
  align-items: center;
  gap: 0.3rem;
  flex-shrink: 0;
}

.gp-logo span {
  color: var(--gp-accent);
  font-weight: 700;
}

/* Header CTA */
.gp-btn-call {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  background: var(--gp-accent);
  color: var(--gp-accent-text);
  font-weight: 700;
  font-size: 0.85rem;
  padding: 0.6rem 1.2rem;
  border-radius: var(--gp-radius-pill);
  border: none;
  cursor: pointer;
  white-space: nowrap;
  transition: all var(--gp-ease);
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

.gp-btn-call:hover {
  background: var(--gp-accent-hover);
  transform: translateY(-1px);
  box-shadow: var(--gp-shadow-accent);
}

.gp-btn-call svg {
  width: 15px;
  height: 15px;
  fill: var(--gp-accent-text);
  animation: gp-ring 6s ease-in-out infinite;
}

@keyframes gp-ring {
  0%, 90%, 100% { transform: rotate(0); }
  92% { transform: rotate(12deg); }
  94% { transform: rotate(-10deg); }
  96% { transform: rotate(6deg); }
  98% { transform: rotate(-3deg); }
}

/* â”€â”€â”€ 4. HERO â€” Full Height, Clean & Commanding â”€â”€â”€ */
.gp-hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 6rem 1.5rem 4rem;
  overflow: hidden;
}

.gp-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.gp-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
  filter: brightness(0.3) contrast(1.05) saturate(0.8);
}

/* Dark overlay gradient */
.gp-hero-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(13, 13, 13, 0.4) 0%,
    rgba(13, 13, 13, 0.55) 50%,
    var(--gp-black) 100%
  );
}

.gp-hero-overlay { display: none; }

.gp-hero-content {
  position: relative;
  z-index: 2;
  max-width: 780px;
}

.gp-hero h1 {
  font-size: clamp(2.6rem, 7vw, 5rem);
  font-weight: 900;
  color: var(--gp-white-pure);
  line-height: 1.0;
  margin-bottom: 1.5rem;
  letter-spacing: -0.04em;
}

.gp-hero h1 span {
  color: var(--gp-accent);
}

.gp-hero-sub {
  font-size: clamp(1rem, 2vw, 1.2rem);
  color: var(--gp-gray-400);
  margin-bottom: 2.5rem;
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.8;
  font-weight: 400;
}

.gp-hero-actions {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  align-items: center;
}

/* Primary CTA */
.gp-btn-hero-call {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--gp-accent);
  color: var(--gp-accent-text) !important;
  font-weight: 800;
  font-size: 1.05rem;
  padding: 1.1rem 2.6rem;
  border-radius: var(--gp-radius-pill);
  transition: all var(--gp-ease);
  border: none;
  cursor: pointer;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

.gp-btn-hero-call:hover {
  background: var(--gp-accent-hover);
  transform: translateY(-2px);
  box-shadow: var(--gp-shadow-accent);
}

/* Secondary CTA */
.gp-btn-hero-wa {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: transparent;
  color: var(--gp-white) !important;
  font-weight: 600;
  font-size: 0.95rem;
  padding: 1rem 2.4rem;
  border-radius: var(--gp-radius-pill);
  transition: all var(--gp-ease);
  border: 1px solid var(--gp-gray-600);
}

.gp-btn-hero-wa:hover {
  border-color: var(--gp-accent);
  color: var(--gp-accent) !important;
  background: rgba(255, 195, 0, 0.04);
}

/* â”€â”€â”€ 5. STATS BAR â”€â”€â”€ */
.gp-stats {
  background: var(--gp-gray-900);
  padding: 3.5rem 1.5rem;
  border-top: 1px solid var(--gp-border);
  border-bottom: 1px solid var(--gp-border);
}

.gp-stats-inner {
  max-width: var(--gp-max-width);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 3rem;
  text-align: center;
}

.gp-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 140px;
}

.gp-stat-num {
  font-size: clamp(2.4rem, 5vw, 3.2rem);
  font-weight: 900;
  color: var(--gp-accent);
  line-height: 1;
  letter-spacing: -0.03em;
  margin-bottom: 0.5rem;
}

.gp-stat-text {
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--gp-gray-500);
}

/* â”€â”€â”€ 6. SECTIONS â”€â”€â”€ */
.gp-section {
  padding: 5rem 1.5rem;
  max-width: var(--gp-max-width);
  margin: 0 auto;
}

.gp-section-title {
  font-size: clamp(1.9rem, 4vw, 2.8rem);
  font-weight: 800;
  text-align: left;
  margin-bottom: 0.8rem;
  color: var(--gp-white);
  letter-spacing: -0.03em;
  padding-top: 1rem;
  line-height: 1.15;
}

.gp-section-title span {
  color: var(--gp-accent);
}

.gp-section-subtitle {
  text-align: left;
  color: var(--gp-gray-400);
  font-size: 1.05rem;
  margin-bottom: 3.5rem;
  max-width: 680px;
  line-height: 1.8;
}

/* â”€â”€â”€ 7. SERVICES GRID â”€â”€â”€ */
.gp-services-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

.gp-card {
  background: var(--gp-gray-900);
  border-radius: var(--gp-radius-md);
  overflow: hidden;
  border: 1px solid var(--gp-border);
  transition: all var(--gp-ease);
  display: flex;
  flex-direction: column;
}

.gp-card:hover {
  transform: translateY(-4px);
  border-color: var(--gp-border-hover);
  box-shadow: var(--gp-shadow-md);
}

.gp-card-img-wrap {
  overflow: hidden;
  height: 220px;
}

.gp-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--gp-ease-slow);
  border-radius: 0;
  filter: saturate(0.85) brightness(0.9);
}

.gp-card:hover .gp-card-img {
  transform: scale(1.04);
  filter: saturate(1) brightness(1);
}

.gp-card-body {
  padding: 1.6rem;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.gp-card h3 {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--gp-white);
  margin-bottom: 0.6rem;
  letter-spacing: -0.01em;
}

.gp-card p {
  font-size: 0.9rem;
  color: var(--gp-gray-400);
  line-height: 1.7;
  flex: 1;
}

.gp-card-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: var(--gp-accent);
  font-weight: 600;
  font-size: 0.85rem;
  margin-top: 1.2rem;
  padding: 0;
  transition: all var(--gp-ease);
  letter-spacing: 0.01em;
}

.gp-card-cta:hover {
  gap: 0.6rem;
  color: var(--gp-accent-hover);
}

/* â”€â”€â”€ 8. EMERGENCIA â”€â”€â”€ */
.gp-emergency {
  background: var(--gp-gray-900);
  border-top: 3px solid var(--gp-accent);
  padding: 4.5rem 1.5rem;
  text-align: center;
}

.gp-emergency-inner {
  max-width: 640px;
  margin: 0 auto;
}

.gp-emergency h2 {
  font-size: clamp(1.7rem, 4vw, 2.4rem);
  font-weight: 800;
  color: var(--gp-white);
  margin-bottom: 1rem;
  letter-spacing: -0.02em;
}

.gp-emergency p {
  font-size: 1.05rem;
  color: var(--gp-gray-400);
  margin-bottom: 2rem;
  line-height: 1.8;
}

/* â”€â”€â”€ 9. WHATSAPP CTA SECTION â”€â”€â”€ */
.gp-wa-section {
  background: var(--gp-black-soft);
  padding: 4.5rem 1.5rem;
  text-align: center;
  border-top: 1px solid var(--gp-border);
}

.gp-wa-section-inner {
  max-width: 640px;
  margin: 0 auto;
}

.gp-wa-section h2 {
  font-size: clamp(1.7rem, 3.5vw, 2.4rem);
  font-weight: 800;
  color: var(--gp-white);
  margin-bottom: 1rem;
  letter-spacing: -0.02em;
}

.gp-wa-section p {
  font-size: 1.05rem;
  color: var(--gp-gray-400);
  margin-bottom: 2.2rem;
}

.gp-wa-section-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  background: var(--gp-green-wa);
  color: #fff;
  font-weight: 700;
  font-size: 1rem;
  padding: 1.1rem 2.8rem;
  border-radius: var(--gp-radius-pill);
  transition: all var(--gp-ease);
  border: none;
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.gp-wa-section-btn:hover {
  background: var(--gp-green-wa-hover);
  transform: translateY(-2px);
  box-shadow: 0 4px 20px rgba(37, 211, 102, 0.2);
}

/* â”€â”€â”€ 10. FEATURE CARDS GRID â”€â”€â”€ */
.gp-features-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-bottom: 2rem;
}

.gp-feature {
  background: var(--gp-gray-900);
  border: 1px solid var(--gp-border);
  border-radius: var(--gp-radius-md);
  padding: 2rem;
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  transition: all var(--gp-ease);
}

.gp-feature:hover {
  border-color: var(--gp-border-hover);
  transform: translateY(-3px);
  box-shadow: var(--gp-shadow-md);
}

.gp-feature-icon {
  width: 48px;
  height: 48px;
  min-width: 48px;
  background: rgba(255, 195, 0, 0.08);
  border: 1px solid rgba(255, 195, 0, 0.15);
  border-radius: var(--gp-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--gp-ease);
}

.gp-feature:hover .gp-feature-icon {
  background: rgba(255, 195, 0, 0.12);
  border-color: rgba(255, 195, 0, 0.3);
}

.gp-feature-icon svg {
  width: 22px;
  height: 22px;
  fill: var(--gp-accent);
}

.gp-feature-body {
  flex: 1;
  min-width: 0;
}

.gp-feature-body h3 {
  font-weight: 700;
  color: var(--gp-white);
  font-size: 1.15rem;
  margin-bottom: 0.7rem;
  letter-spacing: -0.01em;
}

.gp-feature-body p {
  color: var(--gp-gray-400);
  font-size: 0.93rem;
  line-height: 1.75;
  margin-bottom: 0.8rem;
}

.gp-feature-body p:last-child {
  margin-bottom: 0;
}

/* â”€â”€â”€ 10b. COVERAGE CARD â”€â”€â”€ */
.gp-coverage {
  background: var(--gp-gray-900);
  border: 1px solid var(--gp-border);
  border-radius: var(--gp-radius-md);
  padding: 2rem;
  transition: all var(--gp-ease);
}

.gp-coverage:hover {
  border-color: var(--gp-border-hover);
}

.gp-coverage-header {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  margin-bottom: 1.5rem;
}

.gp-coverage-header h3 {
  font-weight: 700;
  color: var(--gp-white);
  font-size: 1.15rem;
  margin-bottom: 0.3rem;
  letter-spacing: -0.01em;
}

.gp-coverage-header p {
  color: var(--gp-gray-500);
  font-size: 0.9rem;
  line-height: 1.6;
}

/* â”€â”€â”€ 10c. ZONE LIST (Inside Coverage) â”€â”€â”€ */
.gp-zone-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.4rem;
}

.gp-zone-list li {
  padding: 0.75rem 1rem;
  color: var(--gp-gray-400);
  font-size: 0.88rem;
  background: var(--gp-gray-800);
  border: 1px solid var(--gp-border);
  border-radius: var(--gp-radius);
  transition: all var(--gp-ease);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.gp-zone-list li:hover {
  border-color: var(--gp-border-hover);
  background: var(--gp-gray-700);
}

.gp-zone-list li strong {
  color: var(--gp-white);
  font-size: 0.9rem;
  white-space: nowrap;
}

.gp-zone-list li span {
  color: var(--gp-gray-500);
  font-size: 0.82rem;
  text-align: right;
}

/* â”€â”€â”€ 10d. LEGACY CONTENT BLOCKS (Fallback) â”€â”€â”€ */
.gp-content {
  background: transparent;
  padding: 0;
  margin: 2.5rem 0;
  max-width: 780px;
}

.gp-content h3 {
  font-weight: 700;
  color: var(--gp-white);
  font-size: 1.3rem;
  margin-bottom: 0.8rem;
  letter-spacing: -0.01em;
  padding-top: 1.5rem;
}

.gp-content p {
  color: var(--gp-gray-400);
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 1.2rem;
}

/* â”€â”€â”€ 11. GALERÃA â”€â”€â”€ */
.gp-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.6rem;
}

.gp-gallery-item {
  border-radius: var(--gp-radius);
  overflow: hidden;
  aspect-ratio: 4/3;
  cursor: pointer;
}

.gp-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease, filter 0.6s ease;
  filter: saturate(0.7) brightness(0.85);
  border-radius: 0;
}

.gp-gallery-item:hover img {
  transform: scale(1.06);
  filter: saturate(1) brightness(1);
}

/* â”€â”€â”€ 12. TESTIMONIOS â”€â”€â”€ */
.gp-testimonial {
  background: var(--gp-gray-900);
  border-left: 3px solid var(--gp-accent);
  padding: 2rem 2rem 2rem 2.2rem;
  margin: 0 0 1.5rem 0;
  max-width: 780px;
  border-radius: 0 var(--gp-radius-md) var(--gp-radius-md) 0;
  transition: transform var(--gp-ease);
}

.gp-testimonial:hover {
  transform: translateX(4px);
}

.gp-testimonial p {
  color: var(--gp-gray-300);
  font-size: 1.02rem;
  line-height: 1.8;
  font-style: italic;
  margin-bottom: 1.2rem;
}

.gp-testimonial-author {
  color: var(--gp-gray-500);
  font-weight: 600;
  font-size: 0.85rem;
  font-style: normal;
  letter-spacing: 0.02em;
}

/* â”€â”€â”€ 13. CALCULADORA â”€â”€â”€ */
.gp-calculator {
  background: var(--gp-gray-900);
  border: 1px solid var(--gp-border);
  border-radius: var(--gp-radius-md);
  padding: 2.5rem;
  max-width: 540px;
  margin: 3rem 0 0 0;
}

.gp-calculator h3 {
  color: var(--gp-white);
  font-size: 1.3rem;
  font-weight: 700;
  margin-bottom: 1.8rem;
  letter-spacing: -0.01em;
}

.gp-calc-group {
  margin-bottom: 1.3rem;
}

.gp-calc-group label {
  display: block;
  font-size: 0.78rem;
  color: var(--gp-gray-500);
  margin-bottom: 0.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.gp-calc-group select,
.gp-calc-group input[type="number"] {
  width: 100%;
  padding: 0.9rem 1rem;
  background: var(--gp-gray-800);
  border: 1px solid var(--gp-border);
  border-radius: var(--gp-radius);
  color: var(--gp-white);
  font-size: 0.95rem;
  font-family: var(--gp-font);
  transition: all var(--gp-ease);
  appearance: none;
  -webkit-appearance: none;
}

.gp-calc-group select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='%23888' d='M5 7L1 3h8z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  padding-right: 2.5rem;
}

.gp-calc-group select:focus,
.gp-calc-group input:focus {
  outline: none;
  border-color: var(--gp-accent);
  box-shadow: 0 0 0 3px var(--gp-accent-glow);
}

.gp-calc-btn {
  width: 100%;
  padding: 1rem;
  margin-top: 0.8rem;
  background: var(--gp-accent);
  color: var(--gp-accent-text);
  font-weight: 700;
  font-size: 0.95rem;
  border: none;
  border-radius: var(--gp-radius-pill);
  cursor: pointer;
  transition: all var(--gp-ease);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.gp-calc-btn:hover {
  background: var(--gp-accent-hover);
  transform: translateY(-1px);
  box-shadow: var(--gp-shadow-accent);
}

.gp-calc-result {
  text-align: center;
  padding: 1.8rem;
  background: var(--gp-gray-800);
  border-radius: var(--gp-radius);
  margin-top: 1.5rem;
  display: none;
  border: 1px solid var(--gp-border);
}

.gp-calc-result.gp-active {
  display: block;
  animation: gp-fadeIn 0.4s ease;
}

.gp-calc-result .gp-price {
  font-size: 2.8rem;
  font-weight: 900;
  color: var(--gp-accent);
  letter-spacing: -0.03em;
  line-height: 1;
  margin-bottom: 0.4rem;
}

.gp-calc-result p {
  color: var(--gp-gray-500);
  font-size: 0.82rem;
}

@keyframes gp-fadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* â”€â”€â”€ 14. FAQ ACCORDION â”€â”€â”€ */
.gp-faq-list {
  max-width: 740px;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.gp-faq-item {
  background: var(--gp-gray-900);
  border: 1px solid var(--gp-border);
  border-radius: var(--gp-radius);
  overflow: hidden;
  transition: all var(--gp-ease);
}

.gp-faq-item.gp-open {
  border-color: var(--gp-border-hover);
}

.gp-faq-q {
  width: 100%;
  background: none;
  border: none;
  color: var(--gp-gray-200);
  font-family: var(--gp-font);
  font-size: 0.98rem;
  font-weight: 600;
  padding: 1.3rem 1.5rem;
  text-align: left;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  transition: color var(--gp-ease);
}

.gp-faq-q:hover {
  color: var(--gp-accent);
}

.gp-faq-q svg {
  width: 18px;
  height: 18px;
  fill: var(--gp-gray-500);
  flex-shrink: 0;
  transition: transform var(--gp-ease), fill var(--gp-ease);
}

.gp-faq-q:hover svg {
  fill: var(--gp-accent);
}

.gp-faq-item.gp-open .gp-faq-q svg {
  transform: rotate(180deg);
  fill: var(--gp-accent);
}

.gp-faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, padding 0.3s ease;
}

.gp-faq-item.gp-open .gp-faq-a {
  max-height: 500px;
  padding: 0 1.5rem 1.5rem;
}

.gp-faq-a p {
  color: var(--gp-gray-400);
  font-size: 0.95rem;
  line-height: 1.8;
}

/* â”€â”€â”€ 15. FLOATING WHATSAPP â”€â”€â”€ */
.gp-wa-float {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 9999;
  width: 60px;
  height: 60px;
  background: var(--gp-green-wa);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(37, 211, 102, 0.25);
  transition: all var(--gp-ease);
}

.gp-wa-float:hover {
  transform: scale(1.08);
  background: var(--gp-green-wa-hover);
  box-shadow: 0 6px 24px rgba(37, 211, 102, 0.35);
}

.gp-wa-float svg {
  width: 32px;
  height: 32px;
  fill: #fff;
}

/* â”€â”€â”€ 15b. SILO NAVIGATION â”€â”€â”€ */
.gp-silo-nav {
  background: var(--gp-gray-900);
  border-top: 3px solid var(--gp-accent);
  padding: 3rem 1.5rem;
}

.gp-silo-inner {
  max-width: var(--gp-max-width);
  margin: 0 auto;
}

.gp-silo-nav h3 {
  color: var(--gp-white);
  font-size: 1.2rem;
  font-weight: 800;
  margin-bottom: 0.5rem;
}

.gp-silo-nav > div > p {
  color: var(--gp-gray-500);
  font-size: 0.9rem;
  margin-bottom: 1.5rem;
}

.gp-silo-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.gp-silo-links a {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  background: var(--gp-gray-800);
  border: 1px solid var(--gp-border);
  border-radius: var(--gp-radius);
  padding: 0.6rem 1rem;
  color: var(--gp-gray-400);
  font-size: 0.85rem;
  font-weight: 500;
  transition: all var(--gp-ease);
}

.gp-silo-links a:hover {
  border-color: var(--gp-border-hover);
  color: var(--gp-accent);
  background: rgba(255, 195, 0, 0.05);
}

.gp-silo-links a.gp-silo-home {
  background: rgba(255, 195, 0, 0.08);
  border-color: rgba(255, 195, 0, 0.15);
  color: var(--gp-accent);
  font-weight: 700;
}

.gp-silo-links a.gp-silo-home:hover {
  background: rgba(255, 195, 0, 0.15);
}

/* â”€â”€â”€ 16. FOOTER â”€â”€â”€ */
.gp-footer {
  background: var(--gp-gray-900);
  border-top: 1px solid var(--gp-border);
  padding: 2.5rem 1.5rem;
  text-align: center;
}

.gp-footer p {
  color: var(--gp-gray-500);
  font-size: 0.85rem;
}

.gp-footer a {
  color: var(--gp-accent);
  font-weight: 500;
}

.gp-footer a:hover {
  color: var(--gp-accent-hover);
}

/* â”€â”€â”€ 17. SCROLL ANIMATIONS (Fade-in on scroll) â”€â”€â”€ */
.gp-animate {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.gp-animate.gp-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ==========================================================
   18. RESPONSIVE â€” TABLET (600px+)
   ========================================================== */
@media (min-width: 600px) {
  .gp-hero-actions {
    flex-direction: row;
    justify-content: center;
    gap: 1rem;
  }

  .gp-features-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .gp-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .gp-gallery-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .gp-zone-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .gp-coverage {
    padding: 2.5rem;
  }

  .gp-stats-inner {
    gap: 4rem;
  }
}

/* ==========================================================
   19. RESPONSIVE â€” DESKTOP (900px+)
   ========================================================== */
@media (min-width: 900px) {
  .gp-header {
    padding: 0.85rem 2.5rem;
  }

  .gp-services-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .gp-gallery-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .gp-section {
    padding: 6rem 2rem;
  }

  .gp-card-img-wrap {
    height: 240px;
  }

  .gp-hero {
    min-height: 100vh;
  }

  .gp-zone-list {
    grid-template-columns: repeat(3, 1fr);
  }

  .gp-features-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .gp-feature {
    padding: 2.2rem;
  }

  .gp-coverage {
    padding: 2.5rem 3rem;
  }
}
/* ============================================================
   GRÃšAS CÃ“RDOBA 24HS â€” CSS ADICIONAL UNIFICADO v1.0
   Para WordPress â†’ Apariencia â†’ CSS Adicional
   Funciona para: Homepage (gc-*) + Page Generator Pro (gp-*)
   ============================================================ */

/* â”€â”€â”€ TOKENS COMPARTIDOS â”€â”€â”€ */
:root {
  --gc-black:#0a0a0a; --gc-black-soft:#111; --gc-gray-900:#161616;
  --gc-gray-800:#1e1e1e; --gc-gray-700:#282828; --gc-gray-600:#333;
  --gc-gray-500:#555; --gc-gray-400:#888; --gc-gray-300:#aaa;
  --gc-white:#f5f5f5; --gc-white-pure:#fff;
  --gc-orange:#FF4F00; --gc-orange-hover:#FF6B2B; --gc-orange-dim:#E04500;
  --gc-green-wa:#25D366; --gc-green-wa-hover:#20BD5A;
  --gc-border:rgba(255,255,255,0.06); --gc-border-hover:rgba(255,79,0,0.25);
  --gc-shadow-brutal:0 8px 32px rgba(255,79,0,0.1),0 2px 8px rgba(0,0,0,0.4);
  --gc-radius-sm:8px; --gc-radius-md:12px; --gc-radius-pill:50px;
  --gc-ease:0.3s cubic-bezier(0.4,0,0.2,1);
  --gc-max-width:1140px;
  --gp-black:#0D0D0D; --gp-black-soft:#141414; --gp-gray-900:#1A1A1A;
  --gp-gray-800:#232323; --gp-gray-700:#2E2E2E; --gp-gray-600:#3A3A3A;
  --gp-gray-500:#555; --gp-gray-400:#888; --gp-gray-300:#AAA;
  --gp-white:#F5F5F5; --gp-white-pure:#FFF;
  --gp-accent:#FF4F00; --gp-accent-hover:#FF6B2C; --gp-accent-dim:#E54500;
  --gp-accent-glow:rgba(255,79,0,0.15); --gp-accent-text:#FFFFFF;
  --gp-green-wa:#25D366; --gp-green-wa-hover:#20BD5A; --gp-red:#E53935;
  --gp-radius:8px; --gp-radius-md:12px; --gp-radius-pill:50px;
  --gp-border:rgba(255,255,255,0.06); --gp-border-hover:rgba(255,79,0,0.25);
  --gp-shadow-sm:0 2px 8px rgba(0,0,0,0.3); --gp-shadow-md:0 4px 20px rgba(0,0,0,0.4);
  --gp-shadow-lg:0 8px 40px rgba(0,0,0,0.5); --gp-shadow-accent:0 4px 20px rgba(255,195,0,0.12);
  --gp-ease:0.3s cubic-bezier(0.4,0,0.2,1); --gp-ease-slow:0.5s cubic-bezier(0.4,0,0.2,1);
  --gp-font:'Inter',-apple-system,'Segoe UI',system-ui,sans-serif;
  --gp-max-width:1140px; --gp-line-height:1.7;
}

/* â”€â”€â”€ SECTION SUBTITLE (SHARED) â”€â”€â”€ */
.gc-section-subtitle, .gp-section-subtitle {
  text-align:center; max-width:700px; margin-left:auto; margin-right:auto;
}

/* ============================================================
   A) HOMEPAGE: LOCALIDADES DESTACADAS (gc-loc-*)
   ============================================================ */
.gc-loc-grid {
  display:grid; grid-template-columns:1fr; gap:0.75rem;
  max-width:var(--gc-max-width); margin:0 auto;
}
.gc-loc-card {
  display:flex; flex-direction:column; gap:0.25rem;
  background:var(--gc-gray-900); border:1px solid var(--gc-border);
  border-radius:var(--gc-radius-sm); padding:1.2rem 1.4rem;
  transition:all var(--gc-ease); position:relative; overflow:hidden;
  text-decoration:none!important; cursor:pointer;
}
.gc-loc-card::before {
  content:''; position:absolute; top:0; left:0; width:3px; height:100%;
  background:var(--gc-orange); opacity:0; transition:opacity var(--gc-ease);
}
.gc-loc-card:hover {
  border-color:var(--gc-border-hover); transform:translateY(-3px);
  box-shadow:var(--gc-shadow-brutal);
}
.gc-loc-card:hover::before { opacity:1; }
.gc-loc-card strong {
  color:var(--gc-white); font-size:1.05rem; font-weight:800;
  letter-spacing:-0.02em; transition:color var(--gc-ease);
}
.gc-loc-card:hover strong { color:var(--gc-orange); }
.gc-loc-dept {
  font-size:0.75rem; color:var(--gc-gray-500); font-weight:600;
  text-transform:uppercase; letter-spacing:0.07em;
}
.gc-loc-badge {
  display:inline-flex; align-items:center; gap:0.3rem;
  background:rgba(255,79,0,0.12); color:var(--gc-orange);
  font-size:0.68rem; font-weight:700; padding:0.2rem 0.55rem;
  border-radius:4px; width:fit-content; text-transform:uppercase;
  letter-spacing:0.08em; margin-bottom:0.15rem;
}
.gc-loc-featured {
  background:linear-gradient(135deg,var(--gc-gray-900) 0%,rgba(255,79,0,0.06) 100%);
  border-color:rgba(255,79,0,0.15);
}
.gc-loc-featured::before { opacity:1; }

/* ============================================================
   B) HOMEPAGE: GALERÃA DE IMÃGENES HERO (gc-img-*)
   ============================================================ */
.gc-img-showcase {
  display:grid; grid-template-columns:1fr; gap:0.6rem;
  margin-bottom:2.5rem;
}
.gc-img-showcase img {
  width:100%; height:220px; object-fit:cover;
  border-radius:var(--gc-radius-sm); border:1px solid var(--gc-border);
  filter:brightness(0.85) saturate(0.9); transition:all 0.5s ease;
}
.gc-img-showcase img:hover {
  filter:brightness(1) saturate(1); transform:scale(1.02);
  box-shadow:var(--gc-shadow-brutal);
}

/* ============================================================
   C) HOMEPAGE: DEPARTAMENTOS HUB GRID (gc-dept-*)
   ============================================================ */
.gc-provincia-section { border-top:1px solid var(--gc-border); }
.gc-dept-grid {
  display:grid; grid-template-columns:1fr; gap:0.7rem;
  max-width:var(--gc-max-width); margin:0 auto;
}
.gc-dept-card {
  background:var(--gc-gray-900); border:1px solid var(--gc-border);
  border-radius:var(--gc-radius-sm); padding:1.3rem 1.4rem;
  transition:all var(--gc-ease);
}
.gc-dept-card:hover { border-color:var(--gc-border-hover); transform:translateY(-2px); }
.gc-dept-card h3 {
  color:var(--gc-white); font-size:0.92rem; font-weight:800;
  margin-bottom:0.7rem; letter-spacing:-0.01em;
}
.gc-dept-card ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:0.3rem; }
.gc-dept-card ul li { padding:0; }
.gc-dept-card ul li a {
  color:var(--gc-gray-400); font-size:0.86rem; font-weight:500;
  transition:all var(--gc-ease); display:inline-flex; align-items:center; gap:0.3rem;
  text-decoration:none;
}
.gc-dept-card ul li a::before { content:'â†’'; color:var(--gc-gray-600); font-size:0.72rem; transition:color var(--gc-ease); }
.gc-dept-card ul li a:hover { color:var(--gc-orange); }
.gc-dept-card ul li a:hover::before { color:var(--gc-orange); }
.gc-dept-accent {
  background:linear-gradient(135deg,var(--gc-gray-900) 0%,rgba(255,79,0,0.08) 100%);
  border-color:rgba(255,79,0,0.2);
}
.gc-dept-accent h3 { color:var(--gc-orange); }

/* ============================================================
   D) HOMEPAGE: FOOTER EXPANDIDO (gc-footer-*)
   ============================================================ */
.gc-footer-expanded { padding:0!important; border-top:2px solid var(--gc-orange); }
.gc-footer-expanded .gc-footer-inner {
  max-width:var(--gc-max-width); margin:0 auto;
  padding:3rem 1.5rem 2rem; display:grid; grid-template-columns:1fr; gap:2.5rem;
}
.gc-footer-logo {
  font-size:1.25rem; font-weight:900; color:var(--gc-white);
  display:block; margin-bottom:0.7rem; letter-spacing:-0.03em;
  text-decoration:none;
}
.gc-footer-logo span { color:var(--gc-orange); }
.gc-footer-brand > p { color:var(--gc-gray-500); font-size:0.85rem; line-height:1.7; margin-bottom:1rem; }
.gc-footer-contact { display:flex; flex-direction:column; gap:0.45rem; }
.gc-footer-contact a { color:var(--gc-gray-400); font-size:0.85rem; font-weight:600; transition:color var(--gc-ease); text-decoration:none; }
.gc-footer-contact a:hover { color:var(--gc-orange); }
.gc-footer-col h4 {
  color:var(--gc-white); font-size:0.78rem; font-weight:800;
  text-transform:uppercase; letter-spacing:0.1em;
  margin-bottom:0.9rem; padding-bottom:0.5rem; border-bottom:1px solid var(--gc-border);
}
.gc-footer-col ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:0.4rem; }
.gc-footer-col ul li a { color:var(--gc-gray-500); font-size:0.85rem; font-weight:500; transition:color var(--gc-ease); text-decoration:none; }
.gc-footer-col ul li a:hover { color:var(--gc-orange); }
.gc-footer-bottom { border-top:1px solid var(--gc-border); padding:1.5rem; text-align:center; }
.gc-footer-bottom p { color:var(--gc-gray-600); font-size:0.8rem; }
.gc-footer-bottom a { color:var(--gc-orange); font-weight:600; text-decoration:none; }

/* ============================================================
   E) PGP: SILO NAVIGATION (gp-silo-*)
   ============================================================ */
.gp-silo-nav {
  background:var(--gp-gray-900); border-top:3px solid var(--gp-accent); padding:3rem 1.5rem;
}
.gp-silo-inner { max-width:var(--gp-max-width); margin:0 auto; }
.gp-silo-nav h3 { color:var(--gp-white); font-size:1.15rem; font-weight:800; margin-bottom:0.5rem; }
.gp-silo-nav > div > p { color:var(--gp-gray-500); font-size:0.88rem; margin-bottom:1.3rem; }
.gp-silo-links { display:flex; flex-wrap:wrap; gap:0.5rem; }
.gp-silo-links a {
  display:inline-flex; align-items:center; gap:0.3rem;
  background:var(--gp-gray-800); border:1px solid var(--gp-border);
  border-radius:var(--gp-radius); padding:0.55rem 0.95rem;
  color:var(--gp-gray-400); font-size:0.83rem; font-weight:500;
  transition:all var(--gp-ease); text-decoration:none;
}
.gp-silo-links a:hover { border-color:var(--gp-border-hover); color:var(--gp-accent); background:rgba(255,195,0,0.05); }
.gp-silo-links a.gp-silo-home {
  background:rgba(255,195,0,0.08); border-color:rgba(255,195,0,0.15);
  color:var(--gp-accent); font-weight:700;
}
.gp-silo-links a.gp-silo-home:hover { background:rgba(255,195,0,0.15); }

/* ============================================================
   F) PGP: MAP WRAPPER (gp-map-wrap)
   ============================================================ */
.gp-map-wrap {
  border-radius:var(--gp-radius-md); overflow:hidden;
  border:1px solid var(--gp-border); aspect-ratio:16/9; max-height:400px;
}
.gp-map-wrap iframe { width:100%; height:100%; border:0; filter:invert(0.9) hue-rotate(180deg) brightness(0.95) contrast(1.1); }

/* ============================================================
   G) HOMEPAGE: MAP WRAPPER (gc-map-wrap)
   ============================================================ */
.gc-map-wrap {
  border-radius:var(--gc-radius-md); overflow:hidden;
  border:1px solid var(--gc-border); aspect-ratio:16/9; max-height:400px;
}
.gc-map-wrap iframe { width:100%; height:100%; border:0; filter:invert(0.9) hue-rotate(180deg) brightness(0.95) contrast(1.1); }

/* ============================================================
   H) RESPONSIVE BREAKPOINTS â€” COMBINADOS
   ============================================================ */
/* Tablet 600px+ */
@media(min-width:600px) {
  .gc-loc-grid { grid-template-columns:repeat(2,1fr); }
  .gc-dept-grid { grid-template-columns:repeat(2,1fr); }
  .gc-footer-inner { grid-template-columns:repeat(2,1fr); }
  .gc-img-showcase { grid-template-columns:repeat(2,1fr); }
  .gc-img-showcase img { height:240px; }
}

/* Desktop 900px+ */
@media(min-width:900px) {
  .gc-loc-grid { grid-template-columns:repeat(3,1fr); }
  .gc-dept-grid { grid-template-columns:repeat(3,1fr); }
  .gc-footer-expanded .gc-footer-inner { grid-template-columns:1.4fr 1fr 1fr 1fr; }
  .gc-img-showcase { grid-template-columns:repeat(3,1fr); }
  .gc-img-showcase img { height:260px; }
}

/* Large Desktop 1100px+ */
@media(min-width:1100px) {
  .gc-loc-grid { grid-template-columns:repeat(4,1fr); }
  .gc-dept-grid { grid-template-columns:repeat(4,1fr); }
}

/* ============================================================
   WORDPRESS THEME OVERRIDE — HIGH-END DESIGN SYSTEM REINFORCEMENT
   ============================================================ */

/* --- HOMEPAGE gc-* overrides --- */
.gc-page { background:#0A0C10 !important; color:#CBD5E1 !important; font-family:'Plus Jakarta Sans',-apple-system,'Segoe UI',system-ui,sans-serif !important; }
.gc-header { position:sticky !important; top:0 !important; z-index:1000 !important; display:block !important; background:rgba(10,12,16,0.85) !important; backdrop-filter:blur(20px) saturate(1.4) !important; border-bottom:1px solid rgba(255,255,255,0.08) !important; padding:0.75rem 1.5rem !important; }
.gc-header-inner { display:flex !important; align-items:center !important; justify-content:space-between !important; max-width:1160px !important; margin:0 auto !important; }
.gc-logo { font-size:1.4rem !important; font-weight:900 !important; color:#F8FAFC !important; display:inline-flex !important; }
.gc-logo span { color:#FF5500 !important; }
.gc-btn-call { display:inline-flex !important; align-items:center !important; gap:0.5rem !important; background:linear-gradient(135deg, #FF5500, #FF7026) !important; color:#FFF !important; font-weight:800 !important; font-size:0.85rem !important; padding:0.65rem 1.4rem !important; border-radius:50px !important; text-transform:uppercase !important; border:1px solid rgba(255,255,255,0.2) !important; box-shadow:0 4px 15px rgba(255,85,0,0.3) !important; }
.gc-btn-call svg { width:15px !important; height:15px !important; fill:#FFF !important; }
.gc-hero { position:relative !important; min-height:100vh !important; display:flex !important; align-items:center !important; justify-content:center !important; text-align:center !important; padding:6.5rem 1.5rem 4.5rem !important; overflow:hidden !important; background:#060709 !important; }
.gc-hero-bg { position:absolute !important; inset:0 !important; z-index:0 !important; }
.gc-hero-bg img { width:100% !important; height:100% !important; object-fit:cover !important; filter:brightness(0.35) contrast(1.1) saturate(0.8) !important; border-radius:0 !important; position:absolute !important; top:0 !important; left:0 !important; }
.gc-hero-bg::after { content:'' !important; position:absolute !important; inset:0 !important; background:radial-gradient(circle at 50% 35%, rgba(255,85,0,0.08) 0%, transparent 70%), linear-gradient(to bottom, rgba(6,7,9,0.55) 0%, rgba(10,12,16,0.85) 60%, #0A0C10 100%) !important; z-index:1 !important; }
.gc-hero-content { position:relative !important; z-index:2 !important; max-width:860px !important; }
.gc-hero h1 { font-size:clamp(2.7rem,7vw,5.5rem) !important; font-weight:900 !important; color:#FFFFFF !important; line-height:1.02 !important; margin-bottom:1.2rem !important; letter-spacing:-0.04em !important; display:block !important; visibility:visible !important; opacity:1 !important; }
.gc-hero h1 span { color:#FF5500 !important; display:block !important; }
.gc-hero-sub { font-size:clamp(1.02rem,2vw,1.22rem) !important; color:#CBD5E1 !important; margin-bottom:2.2rem !important; display:block !important; visibility:visible !important; font-weight:400 !important; line-height:1.75 !important; }
.gc-hero-actions { display:flex !important; gap:1rem !important; align-items:center !important; justify-content:center !important; }
.gc-btn-hero-call { display:inline-flex !important; align-items:center !important; justify-content:center !important; background:linear-gradient(135deg, #FF5500 0%, #FF7026 100%) !important; color:#FFF !important; font-weight:800 !important; font-size:1.05rem !important; padding:1.15rem 2.8rem !important; border-radius:50px !important; text-transform:uppercase !important; border:1px solid rgba(255,255,255,0.25) !important; box-shadow:0 10px 30px rgba(255,85,0,0.4), inset 0 1px 1px rgba(255,255,255,0.3) !important; }
.gc-btn-hero-wa { display:inline-flex !important; align-items:center !important; justify-content:center !important; background:rgba(37,211,102,0.08) !important; color:#FFFFFF !important; border:1.5px solid rgba(37,211,102,0.4) !important; padding:1.05rem 2.2rem !important; border-radius:50px !important; font-weight:700 !important; box-shadow:0 4px 20px rgba(0,0,0,0.3) !important; }
.gc-section { padding:5rem 1.5rem !important; max-width:1160px !important; margin:0 auto !important; }
.gc-section-title { font-size:clamp(2rem,4.5vw,3rem) !important; font-weight:900 !important; color:#F8FAFC !important; display:block !important; visibility:visible !important; letter-spacing:-0.035em !important; }
.gc-section-title span { color:#FF5500 !important; }
.gc-services-grid { display:grid !important; grid-template-columns:1fr !important; gap:1.2rem !important; }
.gc-card { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:18px !important; overflow:hidden !important; display:flex !important; flex-direction:column !important; box-shadow:0 10px 30px -5px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.06) !important; }
.gc-card-img-wrap { overflow:hidden !important; height:220px !important; }
.gc-card-img { width:100% !important; height:100% !important; object-fit:cover !important; border-radius:0 !important; }
.gc-card-body { padding:1.6rem !important; }
.gc-card h3 { font-size:1.15rem !important; font-weight:800 !important; color:#F8FAFC !important; letter-spacing:-0.02em !important; }
.gc-card-cta { color:#FF5500 !important; font-weight:700 !important; }
.gc-emergency { background:#11141D !important; border-top:3px solid #FF5500 !important; padding:4.5rem 1.5rem !important; text-align:center !important; border-radius:24px !important; }
.gc-emergency h2 { font-size:clamp(1.8rem,4vw,2.5rem) !important; color:#F8FAFC !important; }
.gc-features-grid { display:grid !important; grid-template-columns:1fr !important; gap:1.2rem !important; }
.gc-feature { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:18px !important; padding:2rem !important; display:flex !important; gap:1.5rem !important; box-shadow:0 10px 30px -5px rgba(0,0,0,0.5) !important; }
.gc-feature-body h3 { color:#F8FAFC !important; font-weight:800 !important; }
.gc-feature-body p { color:#94A3B8 !important; }
.gc-wa-float { position:fixed !important; bottom:24px !important; right:24px !important; z-index:9999 !important; width:60px !important; height:60px !important; background:linear-gradient(135deg, #25D366, #1EBE5B) !important; display:flex !important; align-items:center !important; justify-content:center !important; border-radius:50% !important; box-shadow:0 8px 25px rgba(37,211,102,0.45) !important; }
.gc-wa-float svg { width:32px !important; height:32px !important; fill:#fff !important; }
.gc-faq-item { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:12px !important; }
.gc-faq-q { background:none !important; border:none !important; color:#CBD5E1 !important; font-size:0.98rem !important; font-weight:700 !important; padding:1.3rem 1.5rem !important; text-align:left !important; cursor:pointer !important; display:flex !important; width:100% !important; }
.gc-loc-grid { display:grid !important; gap:0.8rem !important; }
.gc-loc-card { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:12px !important; padding:1.3rem 1.5rem !important; display:flex !important; flex-direction:column !important; text-decoration:none !important; }
.gc-loc-card strong { color:#F8FAFC !important; }
.gc-dept-grid { display:grid !important; gap:0.8rem !important; }
.gc-dept-card { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:12px !important; padding:1.4rem 1.5rem !important; }
.gc-dept-card h3 { color:#F8FAFC !important; }
.gc-dept-card ul { list-style:none !important; padding:0 !important; }
.gc-dept-card ul li a { color:#94A3B8 !important; text-decoration:none !important; }
.gc-footer { background:#0D0F16 !important; border-top:1px solid rgba(255,255,255,0.08) !important; }
.gc-footer p { color:#64748B !important; }
.gc-footer a { color:#FF5500 !important; text-decoration:none !important; }

/* --- PGP gp-* overrides --- */
.gp-page { background:#0A0C10 !important; color:#CBD5E1 !important; font-family:'Plus Jakarta Sans',-apple-system,'Segoe UI',system-ui,sans-serif !important; }
.gp-header { position:sticky !important; top:0 !important; z-index:1000 !important; display:block !important; background:rgba(10,12,16,0.85) !important; backdrop-filter:blur(20px) saturate(1.4) !important; border-bottom:1px solid rgba(255,255,255,0.08) !important; padding:0.75rem 1.5rem !important; }
.gp-header-inner { display:flex !important; align-items:center !important; justify-content:space-between !important; max-width:1160px !important; margin:0 auto !important; }
.gp-logo { font-size:1.35rem !important; font-weight:900 !important; color:#F8FAFC !important; display:inline-flex !important; }
.gp-logo span { color:#FF5500 !important; }
.gp-btn-call { display:inline-flex !important; align-items:center !important; background:linear-gradient(135deg, #FF5500, #FF7026) !important; color:#FFFFFF !important; font-weight:800 !important; font-size:0.85rem !important; padding:0.65rem 1.3rem !important; border-radius:50px !important; text-transform:uppercase !important; border:1px solid rgba(255,255,255,0.2) !important; box-shadow:0 4px 15px rgba(255,85,0,0.3) !important; }
.gp-btn-call svg { width:15px !important; height:15px !important; fill:#FFFFFF !important; }
.gp-hero { position:relative !important; min-height:100vh !important; display:flex !important; align-items:center !important; justify-content:center !important; text-align:center !important; padding:6.5rem 1.5rem 4.5rem !important; overflow:hidden !important; background:#060709 !important; }
.gp-hero-bg { position:absolute !important; inset:0 !important; z-index:0 !important; }
.gp-hero-bg img { width:100% !important; height:100% !important; object-fit:cover !important; filter:brightness(0.35) contrast(1.1) saturate(0.8) !important; border-radius:0 !important; position:absolute !important; top:0 !important; left:0 !important; }
.gp-hero-bg::after { content:'' !important; position:absolute !important; inset:0 !important; background:radial-gradient(circle at 50% 35%, rgba(255,85,0,0.08) 0%, transparent 70%), linear-gradient(to bottom, rgba(6,7,9,0.55) 0%, rgba(10,12,16,0.85) 60%, #0A0C10 100%) !important; z-index:1 !important; }
.gp-hero-overlay { display:none !important; }
.gp-hero-content { position:relative !important; z-index:2 !important; max-width:860px !important; }
.gp-hero h1 { font-size:clamp(2.5rem,6.5vw,4.8rem) !important; font-weight:900 !important; color:#FFFFFF !important; line-height:1.05 !important; margin-bottom:1.4rem !important; display:block !important; visibility:visible !important; opacity:1 !important; letter-spacing:-0.035em !important; }
.gp-hero h1 span { color:#FF5500 !important; }
.gp-hero-sub { font-size:clamp(1.02rem,2vw,1.2rem) !important; color:#CBD5E1 !important; margin-bottom:2.2rem !important; display:block !important; visibility:visible !important; line-height:1.75 !important; }
.gp-hero-actions { display:flex !important; gap:1rem !important; align-items:center !important; justify-content:center !important; }
.gp-btn-hero-call { display:inline-flex !important; align-items:center !important; justify-content:center !important; background:linear-gradient(135deg, #FF5500 0%, #FF7026 100%) !important; color:#FFFFFF !important; font-weight:800 !important; font-size:1.05rem !important; padding:1.15rem 2.6rem !important; border-radius:50px !important; text-transform:uppercase !important; border:1px solid rgba(255,255,255,0.25) !important; box-shadow:0 10px 30px rgba(255,85,0,0.4), inset 0 1px 1px rgba(255,255,255,0.3) !important; }
.gp-btn-hero-wa { display:inline-flex !important; align-items:center !important; justify-content:center !important; background:rgba(37,211,102,0.08) !important; color:#FFFFFF !important; border:1.5px solid rgba(37,211,102,0.4) !important; padding:1.05rem 2.2rem !important; border-radius:50px !important; font-weight:700 !important; box-shadow:0 4px 20px rgba(0,0,0,0.3) !important; }
.gp-stats { background:#11141D !important; padding:3.5rem 1.5rem !important; border-top:1px solid rgba(255,255,255,0.08) !important; }
.gp-stats-inner { display:flex !important; justify-content:center !important; flex-wrap:wrap !important; gap:3rem !important; max-width:1160px !important; margin:0 auto !important; }
.gp-stat-num { font-size:clamp(2.4rem,5vw,3.2rem) !important; font-weight:900 !important; color:#FF5500 !important; }
.gp-section { padding:5rem 1.5rem !important; max-width:1160px !important; margin:0 auto !important; }
.gp-section-title { font-size:clamp(1.9rem,4vw,2.8rem) !important; font-weight:900 !important; color:#F8FAFC !important; display:block !important; visibility:visible !important; letter-spacing:-0.03em !important; }
.gp-section-title span { color:#FF5500 !important; }
.gp-services-grid { display:flex !important; flex-wrap:wrap !important; gap:1.5rem !important; }
.gp-card { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:18px !important; overflow:hidden !important; display:flex !important; flex-direction:column !important; padding:0 !important; flex:1 1 calc(25% - 1.5rem) !important; min-width:250px !important; width:100% !important; box-shadow:0 10px 30px -5px rgba(0,0,0,0.5) !important; }
.gp-card-img-wrap { overflow:hidden !important; aspect-ratio:16/10 !important; width:100% !important; display:block !important; margin:0 !important; max-width:100% !important; }
.gp-card-img { width:100% !important; min-width:100% !important; height:100% !important; object-fit:cover !important; border-radius:0 !important; display:block !important; margin:0 !important; max-width:100% !important; }
.gp-card-body { padding:1.6rem !important; flex:1 !important; display:flex !important; flex-direction:column !important; }
.gp-card h3 { font-size:1.15rem !important; font-weight:800 !important; color:#F8FAFC !important; }
.gp-card-cta { color:#FF5500 !important; font-weight:700 !important; }
.gp-emergency { background:#11141D !important; border-top:3px solid #FF5500 !important; padding:4.5rem 1.5rem !important; text-align:center !important; border-radius:24px !important; }
.gp-emergency h2 { color:#F8FAFC !important; font-weight:900 !important; }
.gp-features-grid { display:flex !important; flex-wrap:wrap !important; gap:1.5rem !important; }
.gp-feature { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:18px !important; padding:2rem !important; display:flex !important; gap:1.5rem !important; flex:1 1 calc(50% - 1.5rem) !important; min-width:300px !important; width:100% !important; box-shadow:0 10px 30px -5px rgba(0,0,0,0.5) !important; }
.gp-feature-icon { background:rgba(255,85,0,0.12) !important; border:1px solid rgba(255,85,0,0.25) !important; border-radius:10px !important; }
.gp-feature-icon svg { fill:#FF5500 !important; }
.gp-feature-body h3 { color:#F8FAFC !important; font-weight:800 !important; }
.gp-feature-body p { color:#CBD5E1 !important; }
.gp-testimonial { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:18px !important; padding:2rem !important; }
.gp-testimonial-author { color:#FF5500 !important; }
.gp-wa-section-btn { background:linear-gradient(135deg, #25D366 0%, #1EBE5B 100%) !important; color:#fff !important; font-weight:800 !important; border-radius:50px !important; box-shadow:0 8px 25px rgba(37,211,102,0.35) !important; }
/* Silo Navigation (.gc-silo-* & .gp-silo-*) */
.gc-silo-nav, .gp-silo-nav {
  background: #0A0C10 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 3.5rem 1.5rem !important;
  position: relative !important;
}
.gc-silo-inner, .gp-silo-inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
}
.gc-silo-inner h2, .gc-silo-nav h2,
.gc-silo-inner h3, .gc-silo-nav h3,
.gp-silo-inner h2, .gp-silo-nav h2,
.gp-silo-inner h3, .gp-silo-nav h3 {
  color: #F8FAFC !important;
  font-size: 1.35rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 0.5rem 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}
.gc-silo-inner p, .gc-silo-nav p,
.gp-silo-inner p, .gp-silo-nav p {
  color: #94A3B8 !important;
  font-size: 0.92rem !important;
  line-height: 1.5 !important;
  margin: 0 0 1.5rem 0 !important;
}
.gc-silo-links, .gp-silo-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.6rem !important;
}
.gc-silo-links a, .gp-silo-links a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  background: #11141D !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 10px !important;
  padding: 0.65rem 1.15rem !important;
  color: #CBD5E1 !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2) !important;
}
.gc-silo-links a:hover, .gp-silo-links a:hover {
  background: rgba(255, 85, 0, 0.08) !important;
  border-color: rgba(255, 85, 0, 0.35) !important;
  color: #FF6A1A !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(255, 85, 0, 0.15) !important;
}
.gc-silo-links a.gc-silo-home, .gc-silo-links a.gp-silo-home,
.gp-silo-links a.gc-silo-home, .gp-silo-links a.gp-silo-home {
  background: rgba(255, 85, 0, 0.12) !important;
  border-color: rgba(255, 85, 0, 0.3) !important;
  color: #FF5500 !important;
  font-weight: 700 !important;
}
.gc-silo-links a.gc-silo-home:hover, .gc-silo-links a.gp-silo-home:hover,
.gp-silo-links a.gc-silo-home:hover, .gp-silo-links a.gp-silo-home:hover {
  background: #FF5500 !important;
  border-color: #FF5500 !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 20px rgba(255, 85, 0, 0.35) !important;
}

/* Accessibility & Screen Reader Only (Invisible on screen) */
.gc-visually-hidden,
.gp-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Hide breadcrumbs on landing pages (Schema JSON-LD preserves BreadcrumbList for Google SEO) */
.gc-breadcrumb,
.gp-breadcrumb {
  display: none !important;
}
.gp-wa-float { position:fixed !important; bottom:24px !important; right:24px !important; z-index:9999 !important; width:60px !important; height:60px !important; background:linear-gradient(135deg, #25D366, #1EBE5B) !important; display:flex !important; align-items:center !important; justify-content:center !important; border-radius:50% !important; box-shadow:0 8px 25px rgba(37,211,102,0.45) !important; }
.gp-wa-float svg { width:32px !important; height:32px !important; fill:#fff !important; }
.gp-faq-item { background:#11141D !important; border:1px solid rgba(255,255,255,0.08) !important; border-radius:12px !important; }
.gp-faq-q { background:none !important; border:none !important; color:#CBD5E1 !important; font-weight:700 !important; padding:1.3rem 1.5rem !important; text-align:left !important; cursor:pointer !important; display:flex !important; width:100% !important; }
.gp-footer { background:transparent !important; border-top:1px solid rgba(255,255,255,0.08) !important; margin-bottom:0 !important; }
body { background-color:#0A0C10 !important; font-family:'Plus Jakarta Sans',-apple-system,'Segoe UI',system-ui,sans-serif !important; }
html { background-color:#0A0C10 !important; }
.gp-footer p { color:#64748B !important; }
.gp-footer a { color:#FF5500 !important; text-decoration:none !important; }


/* --- RESPONSIVE OVERRIDES --- */
@media(min-width:600px) {
  .gc-hero-actions, .gp-hero-actions { flex-direction:row !important; }
  .gc-loc-grid { grid-template-columns:repeat(2,1fr) !important; }
  .gc-dept-grid, .gp-dept-grid { grid-template-columns:repeat(2,1fr) !important; }
}
@media(min-width:900px) {
  .gc-loc-grid { grid-template-columns:repeat(3,1fr) !important; }
  .gc-dept-grid, .gp-dept-grid { grid-template-columns:repeat(3,1fr) !important; }
}
@media(min-width:1100px) {
  .gc-loc-grid { grid-template-columns:repeat(4,1fr) !important; }
  .gc-dept-grid { grid-template-columns:repeat(4,1fr) !important; }
}

/* ============================================================
   NUCLEAR VISIBILITY FIX — WordPress Theme Override
   Forces ALL content visible regardless of theme interference
   ============================================================ */
.gc-animate, .gp-animate { opacity:1 !important; transform:none !important; }
.gc-page *, .gp-page * { visibility:visible !important; }
.gc-hero-content, .gp-hero-content { opacity:1 !important; visibility:visible !important; display:block !important; }
.gc-hero h1, .gp-hero h1 { opacity:1 !important; visibility:visible !important; display:block !important; }
.gc-hero-sub, .gp-hero-sub { opacity:1 !important; visibility:visible !important; display:block !important; }
.gc-hero-actions, .gp-hero-actions { opacity:1 !important; visibility:visible !important; display:flex !important; }
.gc-btn-hero-call, .gp-btn-hero-call { opacity:1 !important; visibility:visible !important; display:inline-flex !important; }
.gc-btn-hero-wa, .gp-btn-hero-wa { opacity:1 !important; visibility:visible !important; display:inline-flex !important; }
.gc-bento-grid, .gp-stats-inner { opacity:1 !important; visibility:visible !important; }
.gc-services-grid, .gp-services-grid { opacity:1 !important; visibility:visible !important; }
.gc-card, .gp-card { opacity:1 !important; visibility:visible !important; }
.gc-feature, .gp-feature { opacity:1 !important; visibility:visible !important; }
.gc-coverage, .gp-coverage { opacity:1 !important; visibility:visible !important; }
.gc-testimonial, .gp-testimonial { opacity:1 !important; visibility:visible !important; }
.gc-content, .gp-content { opacity:1 !important; visibility:visible !important; }
.gc-img-showcase, .gp-gallery-grid { opacity:1 !important; visibility:visible !important; }
.gc-loc-grid, .gc-dept-grid { opacity:1 !important; visibility:visible !important; }
.gc-faq-list, .gp-faq-list { opacity:1 !important; visibility:visible !important; }
.gc-calculator, .gp-calculator { opacity:1 !important; visibility:visible !important; }

/* ============================================================
   RESPUESTA RAPIDA — bloque citable por motores de IA
   Reemplaza el antiguo span oculto (display:none = riesgo de spam)
   ============================================================ */
.gp-answer { padding:3rem 1.5rem 0 !important; max-width:1140px !important; margin:0 auto !important; }
.gp-answer-box {
  background:#1A1A1A !important;
  border:1px solid rgba(255,255,255,0.06) !important;
  border-left:4px solid #FF4F00 !important;
  border-radius:12px !important;
  padding:1.75rem 1.75rem 1.5rem !important;
  opacity:1 !important; visibility:visible !important;
}
.gp-answer-label {
  font-size:0.72rem !important; font-weight:800 !important; letter-spacing:0.14em !important;
  text-transform:uppercase !important; color:#FF4F00 !important; margin:0 0 0.75rem !important;
}
.gp-answer-text {
  font-size:1.02rem !important; line-height:1.75 !important; color:#F5F5F5 !important; margin:0 !important;
}
.gp-answer-text a { color:#FF4F00 !important; font-weight:700 !important; text-decoration:none !important; }
.gp-answer-text a:hover { text-decoration:underline !important; }
.gp-answer-facts {
  list-style:none !important; margin:1.5rem 0 0 !important; padding:1.25rem 0 0 !important;
  border-top:1px solid rgba(255,255,255,0.08) !important;
  display:grid !important; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;
  gap:1rem 1.5rem !important;
}
.gp-answer-facts li { display:flex !important; flex-direction:column !important; gap:0.2rem !important; margin:0 !important; }
.gp-answer-facts span { font-size:0.7rem !important; text-transform:uppercase !important; letter-spacing:0.08em !important; color:#888 !important; }
.gp-answer-facts strong { font-size:0.95rem !important; font-weight:700 !important; color:#F5F5F5 !important; }
@media (max-width:600px) {
  .gp-answer { padding:2rem 1rem 0 !important; }
  .gp-answer-box { padding:1.25rem !important; }
  .gp-answer-text { font-size:0.95rem !important; }
}

/* ============================================================
   CRO & CONVERSION ENHANCEMENTS — Grúas Córdoba 24hs
   1. TrustIndex / Google Reviews Hero Badge
   2. Sticky Mobile Action Bar (Llamar / WhatsApp)
   ============================================================ */

/* 1. BADGE TRUST HERO */
.gc-hero-trust {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 30px !important;
  padding: 6px 14px !important;
  margin-top: 14px !important;
  color: #E2E8F0 !important;
  font-size: 0.84rem !important;
  text-decoration: none !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  width: fit-content !important;
  cursor: pointer !important;
}
.gc-hero-trust:hover {
  background: rgba(255, 79, 0, 0.12) !important;
  border-color: rgba(255, 79, 0, 0.4) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35) !important;
}
.gc-trust-stars {
  color: #FBBF24 !important;
  letter-spacing: 1px !important;
  font-size: 0.88rem !important;
  line-height: 1 !important;
}
.gc-trust-score {
  font-weight: 800 !important;
  color: #FFFFFF !important;
}
.gc-trust-sep {
  color: rgba(255, 255, 255, 0.25) !important;
  font-size: 0.8rem !important;
}
.gc-trust-count {
  color: #CBD5E1 !important;
  font-weight: 500 !important;
}
.gc-trust-arrow {
  color: #FF4F00 !important;
  transition: transform 0.2s ease !important;
}
.gc-hero-trust:hover .gc-trust-arrow {
  transform: translateX(3px) !important;
}

/* 2. STICKY MOBILE ACTION BAR */
.gc-mobile-sticky-bar {
  display: none !important; /* Oculto en escritorio */
}

@media (max-width: 768px) {
  .gc-mobile-sticky-bar {
    display: flex !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 56px !important;
    background: rgba(13, 15, 20, 0.96) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-top: 2px solid #FF4F00 !important;
    z-index: 999990 !important;
    box-shadow: 0 -8px 25px rgba(0, 0, 0, 0.6) !important;
    padding: 6px 10px !important;
    gap: 8px !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
  .gc-sticky-btn {
    flex: 1 !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    border-radius: 10px !important;
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.02em !important;
    text-decoration: none !important;
    transition: transform 0.15s ease, filter 0.15s ease !important;
  }
  .gc-sticky-btn:active {
    transform: scale(0.97) !important;
  }
  .gc-sticky-btn--call {
    background: linear-gradient(135deg, #FF4F00, #E04600) !important;
    color: #FFFFFF !important;
    box-shadow: 0 3px 12px rgba(255, 79, 0, 0.4) !important;
  }
  .gc-sticky-btn--wa {
    background: linear-gradient(135deg, #25D366, #1EBE5B) !important;
    color: #FFFFFF !important;
    box-shadow: 0 3px 12px rgba(37, 211, 102, 0.35) !important;
  }
  /* Ajuste de margen inferior en móviles para no solapar el pie de página */
  .gc-page, body {
    padding-bottom: 64px !important;
  }
  /* Elevar el botón flotante WA sobre la barra para evitar solapamiento */
  .gc-wa-float {
    bottom: 70px !important;
  }
}


/* ============================================================
   AGENCIA JYC SEO — FOOTER & BLOG BRANDING CREDIT
   ============================================================ */
.gc-agency-credit {
  margin-top: 1.5rem !important;
  padding-top: 1.2rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  font-size: 0.82rem !important;
  color: #94A3B8 !important;
}
.gc-agency-credit a {
  color: #FF5500 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
.gc-agency-credit a:hover {
  color: #FF7830 !important;
  text-decoration: underline !important;
}
.gc-credit-sep {
  color: rgba(255, 255, 255, 0.2) !important;
}
.gc-credit-ig-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  padding: 4px 12px !important;
  border-radius: 50px !important;
  color: #F1F5F9 !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.32, 0.72, 0, 1) !important;
}
.gc-credit-ig-pill:hover {
  background: linear-gradient(135deg, rgba(225, 48, 108, 0.25), rgba(253, 29, 29, 0.25)) !important;
  border-color: rgba(225, 48, 108, 0.5) !important;
  color: #FFFFFF !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 15px rgba(225, 48, 108, 0.3) !important;
}
.gc-credit-ig-pill svg {
  width: 14px !important;
  height: 14px !important;
  fill: currentColor !important;
}

/* ============================================================
   HERO GUARANTEES (Instant Reassurance Bar)
   ============================================================ */
.gc-hero-guarantees {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px 18px !important;
  margin-top: 1.5rem !important;
  font-size: 0.82rem !important;
  color: #94A3B8 !important;
}
.gc-guarantee-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  color: #CBD5E1 !important;
  font-weight: 500 !important;
}
.gc-guarantee-item strong {
  color: #25D366 !important;
}


/* ============================================================
   SAFETY & LAYOUT SHIELD — SVG CONSTRAINTS & BACKWARD COMPATIBILITY
   ============================================================ */

/* 1. Universal SVG Constraint (Prevents SVGs from expanding to 100% viewport) */
.gc-page svg, .gp-page svg, svg {
  max-width: 100%;
}
.gc-page ul li svg, .gp-page ul li svg,
.gc-location-info svg, .gp-location-info svg,
.gc-location-card svg, .gp-location-card svg,
.gc-footer svg, .gp-footer svg,
.gc-header svg, .gp-header svg,
.gc-faq-q svg, .gp-faq-q svg {
  width: 18px !important;
  height: 18px !important;
  max-width: 22px !important;
  max-height: 22px !important;
  display: inline-block !important;
  vertical-align: middle !important;
  flex-shrink: 0 !important;
}
.gc-feature-icon svg, .gp-feature-icon svg {
  width: 24px !important;
  height: 24px !important;
}
.gc-btn-call svg, .gp-btn-call svg {
  width: 15px !important;
  height: 15px !important;
}
.gc-wa-float svg, .gp-wa-float svg {
  width: 32px !important;
  height: 32px !important;
}
.gc-sticky-btn svg, .gp-sticky-btn svg {
  width: 18px !important;
  height: 18px !important;
}
.gc-credit-ig-pill svg {
  width: 14px !important;
  height: 14px !important;
}

/* 2. Backward Compatibility for Button Classes (gc-btn-primary, gc-btn-wa) */
.gc-btn-hero-call, .gp-btn-hero-call, .gc-btn-primary, .gp-btn-primary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #FF5500 0%, #FF7026 100%) !important;
  color: #FFFFFF !important;
  font-weight: 800 !important;
  font-size: 1.05rem !important;
  padding: 1.15rem 2.6rem !important;
  border-radius: 50px !important;
  text-transform: uppercase !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  box-shadow: 0 10px 30px rgba(255, 85, 0, 0.4), inset 0 1px 1px rgba(255, 255, 255, 0.3) !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.32, 0.72, 0, 1) !important;
  min-width: 280px !important;
}
.gc-btn-hero-call:hover, .gp-btn-hero-call:hover, .gc-btn-primary:hover, .gp-btn-primary:hover {
  transform: translateY(-2px) scale(1.01) !important;
  box-shadow: 0 14px 40px rgba(255, 85, 0, 0.55) !important;
}

.gc-btn-hero-wa, .gp-btn-hero-wa, .gc-btn-wa, .gp-btn-wa {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(37, 211, 102, 0.08) !important;
  color: #FFFFFF !important;
  border: 1.5px solid rgba(37, 211, 102, 0.4) !important;
  padding: 1.05rem 2.2rem !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3) !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.32, 0.72, 0, 1) !important;
}
.gc-btn-hero-wa:hover, .gp-btn-hero-wa:hover, .gc-btn-wa:hover, .gp-btn-wa:hover {
  border-color: #25D366 !important;
  background: rgba(37, 211, 102, 0.18) !important;
  box-shadow: 0 8px 25px rgba(37, 211, 102, 0.35) !important;
  transform: translateY(-2px) !important;
}

/* 3. Location Card & Info List Layout */
.gc-location-card, .gp-location-card {
  background: #11141D !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 18px !important;
  padding: 2rem !important;
  box-shadow: 0 10px 30px -5px rgba(0,0,0,0.5) !important;
}
.gc-location-info, .gp-location-info {
  list-style: none !important;
  padding: 0 !important;
  margin: 1.5rem 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.8rem !important;
}
.gc-location-info li, .gp-location-info li {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  color: #CBD5E1 !important;
  font-size: 0.95rem !important;
}
.gc-location-info li svg, .gp-location-info li svg {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  fill: #FF5500 !important;
}

/* 4. Desktop Grid for Expanded Footer */
@media (min-width: 900px) {
  .gc-footer-inner, .gc-footer-expanded .gc-footer-inner {
    display: grid !important;
    grid-template-columns: 1.4fr 1fr 1fr 1fr !important;
    gap: 2.5rem !important;
    text-align: left !important;
  }
}

/* ============================================================
   v7 CLASS ALIASES & MISSING STYLES
   Maps v7 template classes to v8 design tokens
   ============================================================ */

/* --- STATS GRID (v7 alias for gc-bento) --- */
.gc-stats { padding:0 1.5rem 4rem; max-width:var(--gc-max-width); margin:0 auto; }
.gc-stats-grid { display:grid; grid-template-columns:1fr; gap:1.2rem; }
.gc-stat { background:var(--gc-gray-900); border:1px solid var(--gc-border); border-radius:var(--gc-radius); padding:2rem; transition:all var(--gc-ease); position:relative; overflow:hidden; box-shadow:var(--gc-shadow-md), inset 0 1px 0 rgba(255,255,255,0.06); }
.gc-stat:hover { border-color:var(--gc-border-hover); transform:translateY(-4px); box-shadow:0 16px 40px -10px rgba(0,0,0,0.7), 0 0 25px rgba(255,85,0,0.15); }
.gc-stat.gc-stat--flare { background:linear-gradient(135deg, #FF5500 0%, #D84200 100%); color:var(--gc-white-pure); border:1px solid rgba(255,255,255,0.25); box-shadow:0 14px 35px rgba(255,85,0,0.35), inset 0 1px 1px rgba(255,255,255,0.3); }
.gc-stat.gc-stat--flare:hover { background:linear-gradient(135deg, #FF661A 0%, #E04800 100%); transform:translateY(-4px); box-shadow:0 18px 45px rgba(255,85,0,0.45); }
.gc-stat.gc-stat--flare strong { color:var(--gc-white-pure); }
.gc-stat-num { font-size:clamp(2.5rem,6vw,3.5rem); font-weight:900; line-height:1; letter-spacing:-0.04em; color:var(--gc-orange); margin-bottom:0.5rem; }
.gc-stat--flare .gc-stat-num { color:var(--gc-white-pure); }
.gc-stat-label { font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:0.12em; color:var(--gc-gray-400); margin-bottom:0.3rem; }
.gc-stat--flare .gc-stat-label { color:rgba(255,255,255,0.85); }
.gc-stat-text { font-size:0.92rem; color:var(--gc-gray-400); line-height:1.7; }
.gc-stat--flare .gc-stat-text { color:rgba(255,255,255,0.9); }

/* --- EYEBROW TAG --- */
.gc-eyebrow { display:inline-block; font-size:0.72rem; font-weight:800; text-transform:uppercase; letter-spacing:0.18em; color:var(--gc-orange); margin-bottom:0.8rem; padding:0.35rem 0.9rem; background:rgba(255,85,0,0.1); border:1px solid rgba(255,85,0,0.25); border-radius:var(--gc-radius-pill); }

/* --- GC-MAX (wide container wrapper) --- */
.gc-max { max-width:var(--gc-max-width); margin-left:auto; margin-right:auto; padding-left:1.5rem; padding-right:1.5rem; }

/* --- HAZARD STRIP (brand divider) --- */
.gc-hazard-strip { height:4px; background:repeating-linear-gradient(90deg, var(--gc-orange) 0, var(--gc-orange) 28px, transparent 28px, transparent 40px); margin:0 auto; max-width:var(--gc-max-width); opacity:0.5; }

/* --- COORDS SR (screen-reader only) --- */
.gc-coords-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* --- BTN-PRIMARY (v7 alias for hero-call in non-hero contexts) --- */
.gc-section .gc-btn-primary,
.gc-emergency .gc-btn-primary { display:inline-flex; align-items:center; justify-content:center; gap:0.6rem; background:linear-gradient(135deg, #FF5500 0%, #FF7026 100%); color:#fff!important; font-weight:800; font-size:1.05rem; padding:1.1rem 2.6rem; border-radius:var(--gc-radius-pill); transition:all var(--gc-ease); border:1px solid rgba(255,255,255,0.25); cursor:pointer; text-transform:uppercase; letter-spacing:0.02em; box-shadow:0 10px 30px rgba(255,85,0,0.4), inset 0 1px 1px rgba(255,255,255,0.3); min-width:280px; text-decoration:none; }
.gc-section .gc-btn-primary:hover,
.gc-emergency .gc-btn-primary:hover { transform:translateY(-2px) scale(1.01); box-shadow:0 14px 40px rgba(255,85,0,0.55); }

/* --- BTN-SECONDARY --- */
.gc-btn-secondary { display:inline-flex; align-items:center; justify-content:center; gap:0.5rem; background:rgba(255,255,255,0.06); color:var(--gc-white)!important; font-weight:700; font-size:0.95rem; padding:0.9rem 2rem; border-radius:var(--gc-radius-pill); transition:all var(--gc-ease); border:1px solid var(--gc-border); cursor:pointer; text-decoration:none; }
.gc-btn-secondary:hover { border-color:var(--gc-border-hover); background:rgba(255,85,0,0.1); transform:translateY(-2px); }

/* --- DEPT-CARD ACCENT VARIANT --- */
.gc-dept-card--accent { border-color:rgba(255,85,0,0.4)!important; background:linear-gradient(135deg, rgba(255,85,0,0.08) 0%, var(--gc-gray-900) 100%)!important; }

/* --- LOCATION GRID & COMPONENTS (Map Section) --- */
.gc-location-grid { display:grid; grid-template-columns:1fr; gap:2rem; }
.gc-location-badge { display:flex; align-items:center; gap:0.6rem; margin-bottom:1rem; flex-wrap:wrap; }
.gc-location-stars { color:#FACC15; font-size:1.1rem; letter-spacing:2px; }
.gc-location-rating { font-weight:900; color:var(--gc-white); font-size:1.1rem; }
.gc-location-reviews { font-size:0.85rem; color:var(--gc-gray-400); }
.gc-location-name { font-size:1.3rem; font-weight:900; color:var(--gc-white); margin-bottom:0.3rem; }
.gc-location-aka { font-size:0.9rem; color:var(--gc-gray-400); margin-bottom:1.2rem; }
.gc-location-details { list-style:none; padding:0; margin:0 0 1.5rem; display:flex; flex-direction:column; gap:0.8rem; }
.gc-location-details li { display:flex; align-items:center; gap:0.8rem; font-size:0.95rem; color:var(--gc-gray-300); }
.gc-location-details li svg { width:20px; height:20px; min-width:20px; fill:var(--gc-orange); }
.gc-location-details li a { color:var(--gc-orange); font-weight:600; }
.gc-location-details li a:hover { text-decoration:underline; }
.gc-location-actions { display:flex; gap:1rem; flex-wrap:wrap; }

/* --- HERO h1 em (v7 uses <em> instead of <span>) --- */
.gc-hero h1 em { color:var(--gc-orange); display:block; font-style:normal; font-size:clamp(1.1rem,2.5vw,1.6rem); font-weight:500; letter-spacing:0; margin-top:0.5rem; }

/* --- RESPONSIVE: Stats Grid --- */
@media (min-width:640px) {
  .gc-stats-grid { grid-template-columns:repeat(2,1fr); }
}
@media (min-width:900px) {
  .gc-stats-grid { grid-template-columns:repeat(4,1fr); }
  .gc-location-grid { grid-template-columns:1.2fr 1fr; }
}

/* supplemental rules previously inlined per page (EXTRA_CSS) */
.gc-prose{max-width:700px;color:var(--gc-gray-400);font-size:1.02rem;line-height:1.8}
.gc-prose p{margin:0 0 1.2rem}
.gc-prose strong{color:var(--gc-gray-200)}
.gc-faq-list{display:grid;gap:.7rem;max-width:760px}
.gc-faq-item summary{list-style:none;cursor:pointer;color:var(--gc-gray-300);font-weight:700;font-size:.98rem;padding:1.3rem 1.5rem;display:flex;align-items:center;gap:.8rem;font-family:var(--gc-font)}
.gc-faq-item summary::-webkit-details-marker{display:none}
.gc-faq-item summary::before{content:'+';color:var(--gc-orange);font-weight:900;font-size:1.3rem;flex-shrink:0;line-height:1}
.gc-faq-item[open] summary::before{content:'2'}
.gc-faq-item[open]{border-color:var(--gc-border-hover)}
.gc-faq-body{padding:0 1.5rem 1.4rem;color:var(--gc-gray-400);font-size:.95rem;line-height:1.7}
.gc-card-ico{font-size:1.7rem;display:block;margin-bottom:.8rem}
.gc-dept-count{color:var(--gc-gray-500);font-size:.78rem;font-weight:600}
.gc-agency-credit{margin-top:.8rem;font-size:.8rem;color:var(--gc-gray-500)}
.gc-agency-credit a{color:var(--gc-gray-300)}
.gc-sticky-btn--call{background:var(--gc-orange);color:#fff}
.gc-sticky-btn--wa{background:var(--gc-green-wa,#25d366);color:#fff}
@media(max-width:768px){.gc-footer{padding-bottom:72px}.gc-wa-float{bottom:88px}}
/* breadcrumb (theme-owned) */
.gc-crumbs{padding:14px 5%;font-size:.85rem;color:var(--gc-gray-500)}
.gc-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.45em;margin:0;padding:0}
.gc-crumbs a{color:var(--gc-gray-400)}
.gc-crumbs li+li::before{content:'/ ';color:var(--gc-gray-600);margin-right:.45em}


/* ---------- ficha de localidad ---------- */
.gc-ficha-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.8rem;margin:1.2rem 0}
.gc-ficha-item{background:var(--gc-gray-900,#11141D);border:1px solid var(--gc-border);border-radius:var(--gc-radius-sm,10px);padding:.95rem 1.1rem;transition:border-color .25s}
.gc-ficha-item:hover{border-color:var(--gc-border-hover)}
.gc-ficha-item dt{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gc-gray-500);margin-bottom:.3rem}
.gc-ficha-item dd{margin:0;font-size:.95rem;font-weight:600;color:var(--gc-gray-200)}
.gc-ficha-item dd a{color:var(--gc-orange)}
.gc-ficha-vec{font-size:.88rem;color:var(--gc-gray-400)}
.gc-ficha-vec a{color:var(--gc-gray-300);text-decoration:underline}
