/*
Theme Name: Palagan Agency
Theme URI: https://palaganagency.com
Author: Palagan Agency
Author URI: https://palaganagency.com
Description: Tema personalizado para Palagan Agency - GEO Marketing
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: palagan
*/


    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
    :root{
      --g:#c29b61; --gl:#d4b07a; --gd:#9a7a47;
      --n:#0e1b2a; --n2:#0a1520; --n3:#16283a;
      --w:#fff; --c:#f5f0e8; --m:#7a8c9e;
      --lh:1.75;
    }
    html{scroll-behavior:smooth}
    body{
      font-family:'DM Sans',sans-serif;
      background:var(--c);color:var(--n);
      overflow-x:hidden;font-size:17px;line-height:var(--lh);
    }

    /* ── CURSOR ── */
    
    
    
    a:hover~.cur,.btn:hover~.cur{width:20px;height:20px}

    /* ── SCROLLBAR ── */
    ::-webkit-scrollbar{width:4px}
    ::-webkit-scrollbar-track{background:var(--c)}
    ::-webkit-scrollbar-thumb{background:var(--g);border-radius:2px}

    /* ════════════════════════════════
       HEADER
    ════════════════════════════════ */
    header{
      position:fixed;top:0;left:0;right:0;z-index:100;
      display:flex;align-items:center;justify-content:space-between;
      padding:0 56px;height:200px;
      background:rgba(245,240,232,.92);
      backdrop-filter:blur(20px);
      border-bottom:1px solid rgba(14,27,42,.1);
    }
    .logo img{height:175px;width:280px;object-fit:contain}

    nav{display:flex;align-items:center;gap:4px}
    nav a{
      text-decoration:none;color:rgba(14,27,42,.6);
      font-size:14px;font-weight:500;
      padding:7px 16px;border-radius:4px;
      letter-spacing:.2px;transition:color .2s,background .2s;
    }
    nav a:hover{color:var(--n);background:rgba(14,27,42,.06)}
    .nav-cta{
      margin-left:8px !important;
      background:var(--n) !important;color:var(--w) !important;
      font-weight:600 !important;padding:10px 26px !important;
      border-radius:4px !important;
      transition:background .2s,transform .2s,box-shadow .2s !important;
    }
    .nav-cta:hover{
      background:var(--n2) !important;color:var(--w) !important;
      transform:translateY(-2px) !important;
      box-shadow:0 8px 24px rgba(14,27,42,.25) !important;
    }
    .hamburger{display:none;flex-direction:column;gap:5px;padding:4px;border:none;background:none}
    .hamburger span{display:block;width:24px;height:2px;background:var(--n);border-radius:2px;transition:.3s}

    /* ════════════════════════════════
       HERO — full bleed dark with large type
    ════════════════════════════════ */
    #inicio{
      background:var(--n2);
      min-height:100vh;
      display:flex;flex-direction:column;justify-content:flex-end;
      padding:240px 56px 72px;
      position:relative;overflow:hidden;
    }

    /* Topographic grid lines */
    #inicio::before{
      content:'';position:absolute;inset:0;pointer-events:none;
      background-image:
        linear-gradient(rgba(194,155,97,.06) 1px,transparent 1px),
        linear-gradient(90deg,rgba(194,155,97,.06) 1px,transparent 1px);
      background-size:80px 80px;
    }
    /* Radial gold glow bottom left */
    #inicio::after{
      content:'';position:absolute;
      bottom:-200px;left:-200px;
      width:700px;height:700px;border-radius:50%;
      background:radial-gradient(circle,rgba(194,155,97,.15) 0%,transparent 65%);
      pointer-events:none;
    }

    .hero-tag{
      display:inline-flex;align-items:center;gap:10px;
      background:rgba(194,155,97,.12);border:1px solid rgba(194,155,97,.3);
      border-radius:2px;padding:7px 18px;
      font-size:11px;color:var(--g);font-weight:600;letter-spacing:2.5px;text-transform:uppercase;
      margin-bottom:28px;width:fit-content;
      animation:riseUp .5s ease both;
    }
    .blink-dot{width:6px;height:6px;border-radius:50%;background:var(--g);animation:blink 2s ease infinite}
    @keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}

    .hero-headline{
      font-family:'Cormorant',serif;
      font-size:clamp(72px,9.5vw,140px);
      font-weight:600;
      line-height:.96;letter-spacing:-2px;
      color:var(--w);
      position:relative;z-index:1;
      animation:riseUp .6s .06s ease both;
    }
    .hero-headline .gold{color:var(--g);font-style:italic;font-weight:300}
    .hero-headline .stroke{color:var(--w);font-weight:300;font-style:italic}

    .hero-bottom{
      display:grid;grid-template-columns:1fr 1fr 1fr;
      gap:32px;align-items:end;
      margin-top:52px;padding-top:36px;
      border-top:1px solid rgba(255,255,255,.1);
      position:relative;z-index:1;
      animation:riseUp .6s .12s ease both;
    }
    .hero-sub{
      font-size:17px;color:rgba(255,255,255,.55);
      line-height:1.75;font-weight:300;
    }
    .hero-actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
    .btn-light{
      display:inline-block;text-decoration:none;
      background:var(--g);color:var(--n);
      font-weight:700;font-size:15px;letter-spacing:.5px;
      padding:15px 36px;border-radius:3px;
      transition:background .2s,transform .2s,box-shadow .2s;
    }
    .btn-light:hover{background:var(--gl);transform:translateY(-3px);box-shadow:0 12px 32px rgba(194,155,97,.4)}
    .btn-ghost-w{
      color:rgba(255,255,255,.5);font-size:14px;font-weight:500;
      text-decoration:none;display:flex;align-items:center;gap:8px;
      transition:color .2s;
    }
    .btn-ghost-w:hover{color:var(--g)}
    .hero-stats-col{display:flex;flex-direction:column;gap:22px}
    .hstat{
      display:flex;align-items:center;gap:16px;
      padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.08);
    }
    .hstat:last-child{border-bottom:none;padding-bottom:0}
    .hstat-n{
      font-family:'Bebas Neue',sans-serif;
      font-size:44px;color:var(--g);line-height:1;width:110px;flex-shrink:0;
    }
    .hstat-l{font-size:13px;color:rgba(255,255,255,.45);line-height:1.5;font-weight:300}

    @keyframes riseUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

    /* ════════════════════════════════
       MARQUEE STRIP
    ════════════════════════════════ */
    .marquee-strip{
      background:var(--g);overflow:hidden;
      padding:14px 0;white-space:nowrap;
    }
    .marquee-track{
      display:inline-block;
      animation:marquee 20s linear infinite;
    }
    .marquee-item{
      display:inline-block;
      font-family:'Bebas Neue',sans-serif;
      font-size:22px;color:var(--n);letter-spacing:2px;
      padding:0 32px;
    }
    .marquee-sep{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--n);opacity:.4;vertical-align:middle;margin:0 8px}
    @keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

    /* ════════════════════════════════
       SHARED
    ════════════════════════════════ */
    section{position:relative}
    .eyebrow{
      display:inline-flex;align-items:center;gap:10px;
      font-size:11px;font-weight:700;letter-spacing:3px;
      text-transform:uppercase;color:var(--gd);margin-bottom:16px;
    }
    .eyebrow::before{content:'';width:28px;height:1px;background:var(--gd)}
    h2{
      font-family:'DM Serif Display',serif;
      letter-spacing:-.3px;line-height:1.08;
    }
    h3{font-family:'DM Serif Display',serif}

    /* ════════════════════════════════
       GEO — cream bg, editorial
    ════════════════════════════════ */
    #que-es-geo{padding:120px 56px;background:var(--c)}

    .geo-wrap{max-width:1200px;margin:0 auto}
    .geo-title-row{
      display:grid;grid-template-columns:1fr 1fr;
      gap:60px;margin-bottom:72px;align-items:end;
    }
    .geo-title-row h2{font-size:clamp(44px,5vw,72px);font-weight:400}
    .geo-title-row h2 em{font-style:italic;color:var(--gd)}
    .geo-intro{font-size:19px;color:rgba(14,27,42,.6);line-height:1.8;font-weight:300}
    .geo-intro strong{color:var(--n);font-weight:600}

    .geo-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
    .geo-card{
      background:var(--n);padding:48px 36px;
      position:relative;overflow:hidden;
      transition:background .3s;
    }
    .geo-card:hover{background:var(--n3)}
    .geo-card::before{
      content:'';position:absolute;bottom:0;left:0;right:0;height:3px;
      background:var(--g);transform:scaleX(0);transform-origin:left;
      transition:transform .4s ease;
    }
    .geo-card:hover::before{transform:scaleX(1)}
    .gc-num{
      font-family:'Bebas Neue',sans-serif;
      font-size:72px;color:rgba(194,155,97,.15);
      line-height:1;margin-bottom:16px;
    }
    .gc-title{font-family:'DM Serif Display',serif;font-size:22px;color:var(--w);margin-bottom:12px}
    .gc-desc{font-size:15px;color:rgba(255,255,255,.5);line-height:1.7;font-weight:300}

    /* Compare row */
    .geo-compare{
      display:grid;grid-template-columns:1fr auto 1fr;
      gap:0;margin-top:2px;
    }
    .gc-col{background:var(--n);padding:40px 36px}
    .gc-col.light{background:#e8e2d8}
    .gc-col-title{
      font-family:'Bebas Neue',sans-serif;font-size:28px;letter-spacing:1px;
      margin-bottom:24px;
    }
    .gc-col .gold{color:var(--g)}
    .gc-col.light .gc-col-title{color:var(--n)}
    .gc-col:not(.light) .gc-col-title{color:var(--w)}
    .gc-list{list-style:none;display:flex;flex-direction:column;gap:10px}
    .gc-list li{
      font-size:15px;line-height:1.55;padding-left:20px;position:relative;font-weight:300;
    }
    .gc-col.light .gc-list li{color:rgba(14,27,42,.65)}
    .gc-col:not(.light) .gc-list li{color:rgba(255,255,255,.55)}
    .gc-list li::before{content:'→';position:absolute;left:0;color:var(--g);font-size:12px;top:2px}
    .gc-vs{
      background:var(--g);display:flex;align-items:center;justify-content:center;
      writing-mode:vertical-rl;font-family:'Bebas Neue',sans-serif;
      font-size:18px;letter-spacing:4px;color:var(--n);
      padding:0 16px;
    }

    /* ════════════════════════════════
       PLANES — white bg, luxury cards
    ════════════════════════════════ */
    #planes{padding:120px 56px;background:var(--w)}

    .plans-header{
      display:grid;grid-template-columns:1fr 1fr;
      gap:60px;margin-bottom:72px;align-items:end;
      max-width:1200px;margin-left:auto;margin-right:auto;
    }
    .plans-header h2{font-size:clamp(44px,5vw,68px);font-weight:400}
    .plans-header p{font-size:18px;color:rgba(14,27,42,.55);line-height:1.8;font-weight:300}

    .plans-grid{
      display:grid;grid-template-columns:repeat(3,1fr);
      gap:2px;max-width:1200px;margin:0 auto;
    }
    .pc{
      background:var(--c);padding:48px 38px;
      position:relative;overflow:hidden;
      transition:background .3s,transform .3s;
    }
    .pc:hover{background:#ede7db;transform:translateY(-4px)}
    .pc.dark{background:var(--n);color:var(--w)}
    .pc.dark:hover{background:var(--n3)}

    .pc-num{
      font-family:'Bebas Neue',sans-serif;font-size:80px;
      color:rgba(14,27,42,.08);line-height:1;margin-bottom:24px;
    }
    .pc.dark .pc-num{color:rgba(194,155,97,.15)}

    .pc-name{font-family:'DM Serif Display',serif;font-size:28px;margin-bottom:12px}
    .pc.dark .pc-name{color:var(--w)}
    .pc-desc{font-size:15px;line-height:1.7;font-weight:300;margin-bottom:32px}
    .pc.dark .pc-desc{color:rgba(255,255,255,.55)}
    .pc:not(.dark) .pc-desc{color:rgba(14,27,42,.6)}

    .pc-div{height:1px;margin-bottom:28px}
    .pc:not(.dark) .pc-div{background:rgba(14,27,42,.1)}
    .pc.dark .pc-div{background:rgba(255,255,255,.1)}

    .pc-feat{
      display:flex;gap:12px;font-size:15px;
      margin-bottom:12px;line-height:1.5;font-weight:400;
    }
    .pc:not(.dark) .pc-feat{color:rgba(14,27,42,.75)}
    .pc.dark .pc-feat{color:rgba(255,255,255,.75)}
    .pc-feat::before{content:'✦';color:var(--g);font-size:10px;flex-shrink:0;margin-top:4px}

    .pc-badge{
      position:absolute;top:0;right:0;
      background:var(--g);color:var(--n);
      font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;
      padding:6px 14px;
    }

    .pc-cta{
      display:block;text-align:center;text-decoration:none;
      margin-top:36px;padding:15px;
      font-weight:700;font-size:14px;letter-spacing:.5px;
      border-radius:3px;transition:all .2s;
    }
    .pc:not(.dark) .pc-cta{background:var(--n);color:var(--w)}
    .pc:not(.dark) .pc-cta:hover{background:var(--n2);transform:translateY(-2px);box-shadow:0 8px 24px rgba(14,27,42,.2)}
    .pc.dark .pc-cta{background:var(--g);color:var(--n)}
    .pc.dark .pc-cta:hover{background:var(--gl);transform:translateY(-2px);box-shadow:0 8px 24px rgba(194,155,97,.35)}

    /* ════════════════════════════════
       FAQ — dark, typographic
    ════════════════════════════════ */
    #faq{padding:120px 56px;background:var(--n2)}

    .faq-layout{
      display:grid;grid-template-columns:380px 1fr;
      gap:80px;max-width:1200px;margin:0 auto;align-items:start;
    }
    .faq-left{position:sticky;top:120px}
    .faq-left h2{font-size:clamp(42px,4vw,60px);font-weight:400;color:var(--w);margin-bottom:20px}
    .faq-left p{font-size:17px;color:rgba(255,255,255,.45);line-height:1.8;font-weight:300;margin-bottom:32px}
    .faq-left a{
      display:inline-flex;align-items:center;gap:9px;
      color:var(--g);font-size:15px;font-weight:600;
      text-decoration:none;border-bottom:1px solid rgba(194,155,97,.3);
      padding-bottom:2px;transition:gap .2s,border-color .2s;
    }
    .faq-left a:hover{gap:13px;border-color:var(--g)}

    .faq-list{display:flex;flex-direction:column;gap:0}
    .fi{border-bottom:1px solid rgba(255,255,255,.08)}
    .fi:first-child{border-top:1px solid rgba(255,255,255,.08)}
    .fq{
      width:100%;background:none;border:none;
      display:flex;justify-content:space-between;align-items:center;
      padding:28px 0;gap:20px;
      font-family:'DM Serif Display',serif;font-size:20px;
      color:var(--w);text-align:left;transition:color .2s;
    }
    .fq:hover{color:var(--g)}
    .fq-icon{
      width:30px;height:30px;border-radius:50%;flex-shrink:0;
      border:1px solid rgba(255,255,255,.2);
      display:grid;place-items:center;
      color:var(--g);font-size:18px;transition:transform .3s,border-color .3s;
    }
    .fi.open .fq-icon{transform:rotate(45deg);border-color:var(--g)}
    .fa-wrap{max-height:0;overflow:hidden;transition:max-height .4s ease}
    .fi.open .fa-wrap{max-height:280px}
    .fa-wrap p{padding-bottom:24px;font-size:16px;color:rgba(255,255,255,.45);line-height:1.85;font-weight:300}

    /* ════════════════════════════════
       NOSOTROS — cream split layout
    ════════════════════════════════ */
    #nosotros{padding:0;background:var(--c);display:grid;grid-template-columns:1fr 1fr;min-height:80vh}

    .nos-left{
      background:var(--n);padding:100px 64px;
      display:flex;flex-direction:column;justify-content:center;
    }
    .nos-left h2{font-size:clamp(40px,4vw,62px);font-weight:400;color:var(--w);margin-bottom:24px}
    .nos-left p{font-size:17px;color:rgba(255,255,255,.55);line-height:1.85;font-weight:300;margin-bottom:16px}

    .vals{margin-top:36px;display:flex;flex-direction:column;gap:20px}
    .val{
      display:flex;gap:16px;padding:20px 0;
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .val:last-child{border-bottom:none}
    .val-n{
      font-family:'Bebas Neue',sans-serif;font-size:48px;color:rgba(194,155,97,.2);
      line-height:1;width:52px;flex-shrink:0;padding-top:4px;
    }
    .val-body
    .val-t{font-family:'DM Serif Display',serif;font-size:19px;color:var(--w);margin-bottom:6px}
    .val-d{font-size:14px;color:rgba(255,255,255,.45);line-height:1.65;font-weight:300}

    .nos-right{
      padding:100px 64px;
      display:flex;flex-direction:column;justify-content:space-between;
      gap:40px;
    }
    .logo-block{
      display:flex;flex-direction:column;gap:24px;
      padding:36px;background:var(--n);border-radius:4px;
    }
    .logo-block-row{display:flex;align-items:center;gap:24px}
    .logo-block img{height:50px;width:auto;object-fit:contain}
    .logo-sep{width:1px;height:44px;background:rgba(194,155,97,.25)}

    .stats-block{display:grid;grid-template-columns:1fr 1fr;gap:2px}
    .sb{background:var(--w);padding:30px 26px;transition:background .25s}
    .sb:hover{background:#ede7db}
    .sb-n{font-family:'Bebas Neue',sans-serif;font-size:50px;color:var(--g);line-height:1;margin-bottom:8px}
    .sb-l{font-size:14px;color:rgba(14,27,42,.55);line-height:1.5;font-weight:300}
    .sb.wide{grid-column:1/-1}
    .sb.wide .sb-n{font-size:24px}

    /* ════════════════════════════════
       CONTACTO — full dark, large
    ════════════════════════════════ */
    #contacto{padding:120px 56px;background:var(--n)}

    .contact-wrap{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}

    .ci h2{font-size:clamp(44px,5vw,72px);font-weight:400;color:var(--w);margin-bottom:20px}
    .ci .eyebrow-w{
      display:inline-flex;align-items:center;gap:10px;
      font-size:11px;font-weight:700;letter-spacing:3px;
      text-transform:uppercase;color:var(--g);margin-bottom:16px;
    }
    .ci .eyebrow-w::before{content:'';width:28px;height:1px;background:var(--g)}
    .ci p{font-size:18px;color:rgba(255,255,255,.5);line-height:1.85;font-weight:300;margin-bottom:48px}

    .cdet{display:flex;gap:16px;align-items:center;margin-bottom:16px;font-size:16px;color:rgba(255,255,255,.7)}
    .cdet-ico{
      width:40px;height:40px;border-radius:3px;flex-shrink:0;
      background:rgba(194,155,97,.1);border:1px solid rgba(194,155,97,.2);
      display:grid;place-items:center;font-size:17px;
    }

    .cform{display:grid;gap:20px}
    .frow{display:grid;grid-template-columns:1fr 1fr;gap:20px}
    label{display:block;font-size:11px;font-weight:700;color:rgba(255,255,255,.3);margin-bottom:8px;letter-spacing:1.2px;text-transform:uppercase}
    input,textarea,select{
      width:100%;background:rgba(255,255,255,.05);
      border:1px solid rgba(255,255,255,.1);
      border-bottom:1px solid rgba(255,255,255,.2);
      border-radius:0;padding:16px 0 14px;
      color:var(--w);font-family:'DM Sans',sans-serif;font-size:16px;
      outline:none;transition:border-color .2s;
      background:transparent;
    }
    input:focus,textarea:focus,select:focus{border-bottom-color:var(--g)}
    input::placeholder,textarea::placeholder{color:rgba(255,255,255,.2)}
    textarea{resize:vertical;min-height:120px}
    select option{background:var(--n)}
    .fsub{
      background:var(--g);color:var(--n);
      font-family:'DM Sans',sans-serif;font-weight:700;font-size:16px;letter-spacing:.5px;
      padding:18px;border-radius:3px;border:none;width:100%;
      transition:background .2s,transform .2s,box-shadow .2s;
    }
    .fsub:hover{background:var(--gl);transform:translateY(-3px);box-shadow:0 14px 36px rgba(194,155,97,.35)}

    /* ════════════════════════════════
       FOOTER
    ════════════════════════════════ */
    footer{
      background:var(--n2);padding:40px 56px;
      display:flex;align-items:center;justify-content:space-between;
      border-top:1px solid rgba(194,155,97,.15);flex-wrap:wrap;gap:16px;
    }
    .flogo img{height:34px;width:auto}
    .fcopy{font-size:13px;color:rgba(255,255,255,.3)}
    .flinks{display:flex;gap:24px}
    .flinks a{font-size:13px;color:rgba(255,255,255,.35);text-decoration:none;transition:color .2s}
    .flinks a:hover{color:var(--g)}

    /* ════════════════════════════════
       RESPONSIVE
    ════════════════════════════════ */
    @media(max-width:1050px){
      .hero-bottom{grid-template-columns:1fr 1fr;gap:24px}
      .hero-stats-col{display:none}
      .geo-title-row,.plans-header{grid-template-columns:1fr;gap:28px}
      .geo-cards,.plans-grid{grid-template-columns:1fr;gap:2px}
      .geo-compare{grid-template-columns:1fr;gap:2px}
      .gc-vs{writing-mode:horizontal-tb;padding:14px;text-align:center}
      .faq-layout{grid-template-columns:1fr}
      .faq-left{position:static}
      #nosotros{grid-template-columns:1fr}
      .contact-wrap{grid-template-columns:1fr;gap:52px}
    }
    @media(max-width:720px){
      header{padding:0 24px}
      nav{display:none;flex-direction:column;position:fixed;top:78px;left:0;right:0;
          background:rgba(245,240,232,.98);padding:20px 24px;gap:4px;backdrop-filter:blur(20px)}
      nav.open{display:flex}
      nav a{color:var(--n)}
      .hamburger{display:flex}
      #inicio{padding:130px 24px 64px}
      .hero-headline{font-size:clamp(64px,18vw,120px)}
      .hero-bottom{grid-template-columns:1fr;gap:28px}
      section:not(#inicio):not(#nosotros){padding-left:24px !important;padding-right:24px !important}
      .nos-left,.nos-right{padding:64px 24px}
      footer{flex-direction:column;text-align:center;padding:32px 24px}
      .frow{grid-template-columns:1fr}
      .cur,
      *{cursor:auto}
    }

    /* ════════════════════════════════
       REVEAL
    ════════════════════════════════ */
    .r{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
    .r.in{opacity:1;transform:translateY(0)}
    .r.from-left{transform:translateX(-28px)}
    .r.from-left.in{transform:translateX(0)}
  