/*
Theme Name: MercoCargas
Theme URI: https://mercocargas.com/
Author: MercoCargas Transportes
Author URI: https://mercocargas.com/
Description: Tema WordPress a medida para MercoCargas, landing B2B de carga consolidada entre Argentina y Brasil. Convertido desde el sitio estatico original.
Version: 1.0.0
Requires at least: 5.9
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mercocargas
*/

    :root {
      --blue:   #1B4FBE;
      --blue-d: #1340A0;
      --navy:   #080C1A;
      --navy-2: #0F1528;
      --navy-3: #161E32;
      --green:  #3DB84B;
      --white:  #FFFFFF;
      --gray-l: #D8DCE8;
      --gray:   #7A849A;
      --gray-d: #3A4258;
      --ease:   cubic-bezier(.4,0,.2,1);
    }
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior:auto; scroll-padding-top: 92px; }
    body {
      font-family: 'DM Sans', sans-serif; background: var(--navy); color: var(--white);
      overflow-x: hidden; -webkit-font-smoothing: antialiased;

    }
    body.page-leaving { opacity: 0; transform: translateY(8px); filter: blur(2px); }
    img  { max-width: 100%; height: auto; display: block; }
    a    { text-decoration: none; color: inherit; }
    button { cursor: pointer; border: none; font-family: inherit; }
    .container { max-width: 1100px; margin: 0 auto; padding: 0 24px; }
            .anchor-focus { animation: anchorFocus .7s var(--ease) both; }

    /* ===== NAV ===== */
    .nav {
      position: fixed; top: 0; left: 0; right: 0; z-index: 200;
      padding: 14px 24px;
      background: #ffffff;
      border-bottom: 1px solid rgba(27,79,190,.1);
      display: flex; align-items: center; justify-content: space-between;
      box-shadow: 0 2px 16px rgba(13,27,64,.08);

    }
    .nav.scrolled { padding: 10px 24px; box-shadow: 0 2px 20px rgba(13,27,64,.14); }
    .nav-logo img { height: 62px; width: auto; transition: height .3s var(--ease); }
    .nav.scrolled .nav-logo img { height: 62px; }
    .nav-right { display: flex; align-items: center; gap: 10px; }
    .nav-actions { display: flex; align-items: center; gap: 10px; }
    .btn-cta, .btn-cta-outline {
      display: inline-flex; align-items: center; justify-content: center;
      min-height: 40px; white-space: nowrap;
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 800; font-size: 14px; letter-spacing: .08em; text-transform: uppercase;
      padding: 10px 22px; border-radius: 50px;

    }
    .btn-cta { background: var(--blue); color: #fff; border: 1.5px solid var(--blue); }
    .btn-cta:hover { background: var(--blue-d); border-color: var(--blue-d); transform: translateY(-2px); box-shadow: 0 8px 20px rgba(27,79,190,.45); }
    .btn-cta-outline { background: rgba(61,184,75,.08); color: var(--navy); border: 1.5px solid rgba(61,184,75,.42); }
    .btn-cta-outline:hover { background: rgba(61,184,75,.16); color: var(--green); border-color: var(--green); transform: translateY(-2px); box-shadow: 0 8px 20px rgba(61,184,75,.22); }

    /* ===== HERO ===== */
    .hero { position: relative; min-height: 100svh; display: flex; align-items: center; overflow: hidden; }
    .hero-bg {
      position: absolute; inset: 0;
      background: url('https://static.wixstatic.com/media/11062b_7c38a2397bde43c4a8358896270dab88~mv2.jpg') center/cover no-repeat;
      filter: brightness(.38) saturate(.85);
      transform: scale(1.05);

    }
        .hero-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(150deg, rgba(8,12,26,.82) 0%, rgba(8,12,26,.2) 55%, rgba(8,12,26,.72) 100%);
    }
    .hero-content { position: relative; z-index: 2; padding: 130px 24px 90px; max-width: 840px; width: 100%; margin: 0 auto; }
    .hero-badge {
      display: inline-flex; align-items: center; gap: 8px;
      background: var(--green); color: #fff;
      font-size: 14px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
      padding: 8px 18px; border-radius: 100px; margin-bottom: 26px;

    }
    .hero-title {
      font-family: 'Barlow Condensed', sans-serif;
      font-size: clamp(48px, 9.5vw, 96px); font-weight: 900; line-height: .92;
      text-transform: uppercase; color: #fff; margin-bottom: 20px;

    }
    .hero-title .hl { color: #6AABFF; display: block; }
    .hero-title .route-flags { display:inline-flex; align-items:center; justify-content:center; gap:.18em; color:#6AABFF; white-space:nowrap; }
    .route-flag { font-family:'DM Sans',sans-serif; line-height:1; filter:drop-shadow(0 8px 22px rgba(106,171,255,.2)); }
    .route-arrow { color:#ffffff; font-size:.72em; transform:translateY(-.03em); opacity:.88; }
    .hero-divider { width: 56px; height: 4px; background: var(--green); border-radius: 2px; margin: 0 0 24px; animation: fadeUp .65s .2s ease both; }
    .hero-sub {
      font-size: clamp(17px, 2.4vw, 21px); color: rgba(255,255,255,.82);
      max-width: 520px; line-height: 1.7; margin-bottom: 40px; font-weight: 400;

    }
    .hero-cta { animation: fadeUp .65s .35s ease both; display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 14px; }
    .btn-primary {
      display: inline-flex; align-items: center; gap: 8px;
      background: var(--blue); color: #fff;
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 800; font-size: 17px; letter-spacing: .07em;
      padding: 16px 40px; border-radius: 50px;

    }
    .btn-primary:hover { background: var(--blue-d); transform: translateY(-3px); box-shadow: 0 12px 30px rgba(27,79,190,.5); }
    .hero-scroll {
      position: absolute; bottom: 26px; left: 50%; transform: translateX(-50%);
      display: flex; flex-direction: column; align-items: center; gap: 6px;
      color: rgba(255,255,255,.28); font-size: 10px; letter-spacing: .18em; text-transform: uppercase;

    }
    .scroll-bar { width: 1px; height: 32px; background: linear-gradient(to bottom, rgba(255,255,255,.3), transparent); animation: sp 2.2s ease-in-out infinite; }
        /* ===== TICKER ===== */
    .ticker { background: var(--blue); border-top: none; overflow: hidden; }
    .ticker-wrap { display: flex; white-space: nowrap; animation: tickRoll 28s linear infinite; }
    .ticker-wrap:hover { animation-play-state: paused; }
        .t-item { display: inline-flex; align-items: center; gap: 10px; padding: 13px 26px; font-family: 'Barlow Condensed', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,.9); }
    .t-sep { color: rgba(255,255,255,.4); font-size: 18px; padding: 13px 2px; }

    /* ===== ABOUT ===== */
    .about { background: #F4F6FC; padding: 60px 0; position: relative; }
    .about::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--blue),var(--green)); }
    .about-inner { max-width: 800px; margin: 0 auto; text-align: center; }
    .about-tag { font-size:11px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--blue); margin-bottom:12px; display:block; }
    .about-text { font-size: clamp(18px,2.4vw,22px); color: var(--navy); line-height: 1.7; }
    .about-text strong { color: var(--blue); font-weight: 600; }

    /* ===== STATS ===== */
    .stats { background: var(--navy); padding: 68px 0; }
    .stats-grid { display: grid; grid-template-columns: repeat(2,1fr); }
    @media(min-width:768px){ .stats-grid { grid-template-columns: repeat(4,1fr); } }
    .stat { text-align: center; padding: 20px; position: relative; }
    .stat + .stat::before { content:''; position:absolute; left:0; top:18%; bottom:18%; width:1px; background:rgba(255,255,255,.07); }
    @media(max-width:767px){ .stat:nth-child(2n+1)::before{display:none} }
    .stat-num { font-family:'Barlow Condensed',sans-serif; font-size:clamp(50px,7vw,72px); font-weight:900; color:#fff; line-height:1; letter-spacing:-.02em; }
    .suf { font-size:.55em; vertical-align:super; color:var(--green); }
    .stat-lbl { font-size:11px; color:var(--gray); text-transform:uppercase; letter-spacing:.12em; margin-top:5px; }

    /* ===== PAIN ===== */
    .pain { padding: 92px 0; background: #F4F6FC; }
    .pain-inner { display: grid; grid-template-columns: 1fr; gap: 52px; align-items: center; }
    @media(min-width:900px){ .pain-inner { grid-template-columns: 1fr 1fr; } }
    .sec-tag { font-size:11px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--blue); margin-bottom:10px; display:block; }
    .sec-title { font-family:'Barlow Condensed',sans-serif; font-size:clamp(32px,5vw,52px); font-weight:900; text-transform:uppercase; line-height:1.05; color:var(--navy); }
    .sec-title span { color:#6AABFF; }
    .pain-copy { max-width: 500px; }
    .pain-title { max-width: 560px; margin-bottom:0; }
    .pain-title span { color:#6AABFF; }
    .pain-list { display:grid; grid-template-columns:1fr; gap:12px; margin: 28px 0 30px; }
    .pain-item {
      display:grid; grid-template-columns:38px 1fr; gap:13px; align-items:flex-start;
      padding:15px 16px; border-radius:14px; background:rgba(255,255,255,.62);
      border:1px solid rgba(27,79,190,.08);
      box-shadow:0 12px 28px rgba(13,27,64,.045);

    }
    .pain-item:hover { transform:translateY(-2px); border-color:rgba(27,79,190,.22); background:#fff; box-shadow:0 16px 36px rgba(13,27,64,.08); }
    .pain-icon {
      width:38px; height:38px; border-radius:12px; flex-shrink:0;
      display:grid; place-items:center;
      background:linear-gradient(135deg,rgba(27,79,190,.12),rgba(61,184,75,.09));
      border:1px solid rgba(27,79,190,.14);
      color:var(--blue); font-size:18px; margin-top:0;
    }
    .pain-icon svg { width:18px; height:18px; stroke:currentColor; stroke-width:2.2; fill:none; stroke-linecap:round; stroke-linejoin:round; }
    .pain-item strong { display:block; font-size:16px; font-weight:800; color:var(--navy); margin-bottom:5px; }
    .pain-item p { font-size:14px; color:var(--gray); line-height:1.55; }
    .pain-cta { min-width:220px; }
    .pain-img-wrap { position:relative; border-radius:14px; overflow:hidden; box-shadow:0 20px 56px rgba(0,0,0,.45); }
    .pain-img-wrap img { width:100%; height:390px; object-fit:cover; display:block; }
    @media(min-width:900px){ .pain-img-wrap img { height:440px; } }
    .pain-badge { position:absolute; bottom:18px; left:18px; right:18px; background:rgba(8,12,26,.92); backdrop-filter:blur(8px); border-radius:10px; padding:13px 16px; border-left:3px solid var(--green); }
    .pain-badge strong { display:block; color:#fff; font-size:14px; font-weight:700; margin-bottom:2px; }
    .pain-badge span { font-size:12px; color:var(--gray); }
    @media(max-width:640px){
      .pain { padding: 72px 0; }
      .pain-inner { gap: 36px; }
      .pain-copy { max-width: none; }
      .pain-title { font-size: clamp(31px,10vw,42px); line-height:1.02; }
      .pain-list { margin: 24px 0 26px; gap:10px; }
      .pain-item { grid-template-columns:34px 1fr; padding:13px 14px; border-radius:13px; }
      .pain-icon { width:34px; height:34px; border-radius:11px; }
      .pain-icon svg { width:16px; height:16px; }
      .pain-item strong { font-size:15px; }
      .pain-item p { font-size:13.5px; line-height:1.5; }
      .pain-cta { width:100%; min-width:0; justify-content:center; }
    }

    /* ===== SERVICES ===== */
    .services { padding: 92px 0; background: #ffffff; }
    .sec-hd { text-align:center; margin-bottom:52px; }
    .services .sec-title, .services .sec-tag { color:var(--navy); }
    .services .sec-title span { color:var(--blue); }
    .sec-desc { font-size:15px; color:var(--gray-d); max-width:480px; margin:12px auto 0; line-height:1.7; }
    .svc-grid { display:grid; grid-template-columns:1fr; gap:20px; }
    @media(min-width:580px){ .svc-grid { grid-template-columns:repeat(2,1fr); } }
    @media(min-width:960px){ .svc-grid { grid-template-columns:repeat(3,1fr); } }
    .svc-card {
      background:#F4F6FC; border:1px solid rgba(27,79,190,.08);
      border-radius:14px; padding:32px 26px; position:relative; overflow:hidden;

    }
    .svc-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--blue),var(--green)); transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); }
    .svc-card::after { content:''; position:absolute; top:0; left:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--blue),var(--green)); border-radius:14px 0 0 14px; opacity:0; transition:opacity .3s var(--ease); }
    .svc-card:hover::after { opacity:1; }
    .svc-card:hover { border-color:rgba(27,79,190,.3); transform:translateY(-5px); box-shadow:0 14px 36px rgba(0,0,0,.35); }
    .svc-card:hover::before { transform:scaleX(1); }
    .svc-icon { width:50px; height:50px; background:rgba(27,79,190,.14); border-radius:12px; display:grid; place-items:center; font-size:22px; margin-bottom:18px; }
    .svc-title { font-family:'Barlow Condensed',sans-serif; font-size:20px; font-weight:800; text-transform:uppercase; color:var(--navy); margin-bottom:9px; }
    .svc-desc { font-size:15px; color:var(--gray); line-height:1.75; }

    /* ===== HOW ===== */
    .how { padding: 92px 0; background: var(--navy); position: relative; overflow: hidden; }
    .how-wm { position:absolute; bottom:-20px; right:-10px; font-family:'Barlow Condensed',sans-serif; font-size:clamp(80px,14vw,180px); font-weight:900; color:rgba(255,255,255,.018); white-space:nowrap; pointer-events:none; user-select:none; }
    .how-steps { display:grid; grid-template-columns:1fr; gap:36px; }
    @media(min-width:768px){ .how-steps { grid-template-columns:repeat(4,1fr); gap:0; } }
    .how-step { position:relative; padding-right:20px; }
    @media(min-width:768px){
      .how-step:not(:last-child)::after { content:''; position:absolute; top:28px; right:-8%; width:50%; height:1px; background:linear-gradient(90deg,rgba(27,79,190,.4),transparent); }
    }
    .step-n { font-family:'Barlow Condensed',sans-serif; font-size:64px; font-weight:900; color:rgba(27,79,190,.2); line-height:1; margin-bottom:6px; }
    .step-t { font-family:'Barlow Condensed',sans-serif; font-size:19px; font-weight:800; text-transform:uppercase; color:#fff; margin-bottom:8px; }
    .step-d { font-size:15px; color:var(--gray); line-height:1.7; }

    /* ===== TRUST ===== */
    .trust { background:var(--navy-2); padding:44px 0; border-top:1px solid rgba(255,255,255,.05); }
    .trust-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px 0; }
    @media(min-width:768px){ .trust-grid { grid-template-columns:repeat(4,1fr); } }
    .trust-item { display:flex; align-items:center; gap:14px; padding:0 20px; }
    @media(min-width:768px){ .trust-item+.trust-item { border-left:1px solid rgba(255,255,255,.07); } }
    .trust-icon { font-size:28px; flex-shrink:0; }
    .trust-item strong { display:block; color:#fff; font-size:15px; font-weight:700; }
    .trust-item span { font-size:12px; color:var(--gray); }

    /* ===== FORM ===== */
    .form-sec { padding:92px 0; background:#ffffff; }
    .form-wrap { max-width:860px; margin:0 auto; background:#ffffff; border:1px solid rgba(27,79,190,.1); border-radius:16px; padding:clamp(22px,4vw,46px); box-shadow:0 4px 32px rgba(27,79,190,.08); overflow:hidden; }
    .quote-progress { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-bottom:28px; }
    .quote-progress span { height:4px; border-radius:999px; background:#DDE4F2; transition:background .25s, transform .25s; }
    .quote-progress span.active { background:linear-gradient(90deg,var(--blue),#6AABFF); transform:scaleY(1.45); }
    .quote-step { display:none; animation:formFade .28s ease both; }
    .quote-step.active { display:block; }
        .quote-step-head { margin-bottom:20px; }
    .quote-kicker { display:inline-flex; color:var(--blue); font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; margin-bottom:8px; }
    .quote-step-title { font-family:'DM Sans',sans-serif; color:var(--navy); font-size:clamp(25px,3.4vw,38px); font-weight:800; letter-spacing:-.01em; line-height:1.08; margin:0 0 8px; }
    .quote-step-desc { color:#6F7890; font-size:15px; line-height:1.65; max-width:620px; }
    .qualify-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:18px; }
    .qualify-card { display:flex; flex-direction:column; gap:8px; align-items:flex-start; min-height:132px; border:1.5px solid rgba(27,79,190,.13); border-radius:14px; background:#F8FAFE; padding:20px; color:var(--navy); text-align:left; transition:border-color .2s, background .2s, transform .2s, box-shadow .2s; }
    .qualify-card:hover { transform:translateY(-2px); border-color:rgba(27,79,190,.35); box-shadow:0 18px 34px rgba(27,79,190,.09); }
    .qualify-card.selected { border-color:var(--blue); background:#EEF4FF; box-shadow:0 14px 30px rgba(27,79,190,.13); }
    .qualify-card strong { font-size:17px; font-weight:800; letter-spacing:-.01em; }
    .qualify-card small { color:#6F7890; line-height:1.55; }
    .qualify-message { display:none; margin-top:14px; border:1px solid rgba(252,129,129,.35); background:#FFF4F4; color:#A53A3A; border-radius:12px; padding:14px 16px; font-size:13px; line-height:1.55; }
    .qualify-message.show { display:block; }
    .f-grid { display:grid; grid-template-columns:1fr; gap:16px; }
    @media(min-width:640px){ .f-grid { grid-template-columns:repeat(2,1fr); } }
    .f-group { display:flex; flex-direction:column; gap:6px; }
    .f-group.full { grid-column:1/-1; }
    .f-label { font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--navy); }
    .f-input,.f-select,.f-textarea { background:#EEF1FA; border:1.5px solid rgba(27,79,190,.12); border-radius:9px; padding:13px 14px; font-family:'DM Sans',sans-serif; font-size:14px; color:var(--navy); outline:none; width:100%; transition:border-color .2s,background .2s; -webkit-appearance:none; }
    .f-input::placeholder,.f-textarea::placeholder { color:#9AA3BC; }
    .f-input:focus,.f-select:focus,.f-textarea:focus { border-color:var(--blue); background:#E8EDFA; }
    .f-select option { background:#ffffff; color:var(--navy); }
    .f-textarea { resize:vertical; min-height:110px; }
    .field-hint { color:#8B95AA; font-size:11px; line-height:1.45; }
    .quote-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; }
    .quote-back { padding:14px 18px; border-radius:999px; border:1px solid rgba(27,79,190,.16); background:#fff; color:var(--navy); font-family:'DM Sans',sans-serif; font-weight:800; letter-spacing:0; }
    .quote-actions .btn-primary { min-width:180px; justify-content:center; font-size:15px; padding:15px 22px; }
    .quote-summary { display:grid; gap:10px; margin:10px 0 18px; }
    .quote-summary-row { display:flex; justify-content:space-between; gap:18px; border-bottom:1px solid rgba(27,79,190,.09); padding:10px 0; color:#5F6A80; font-size:14px; }
    .quote-summary-row strong { color:var(--navy); }
    .quote-consent { display:flex; align-items:flex-start; gap:10px; color:#5F6A80; font-size:13px; line-height:1.55; margin-top:8px; }
    .quote-consent input { margin-top:3px; width:18px; height:18px; accent-color:var(--blue); flex-shrink:0; }
    @media(max-width:640px){
      .form-sec { padding:64px 0; }
      .form-wrap { border-radius:14px; padding:22px 16px; }
      .quote-progress { margin-bottom:22px; }
      .qualify-grid { grid-template-columns:1fr; }
      .qualify-card { min-height:112px; padding:18px; }
      .quote-actions { flex-direction:column-reverse; align-items:stretch; }
      .quote-actions .btn-primary,.quote-back { width:100%; justify-content:center; text-align:center; }
      .quote-summary-row { flex-direction:column; gap:3px; }
    }

    /* ===== CONTACT ===== */
    .contact { padding:80px 0; background:var(--navy-2); }
    .contact .sec-title { color:#ffffff; }
    .contact .sec-tag { color:#6AABFF; }
    /* How section - fundo dark, textos precisam ser claros */
    .how .sec-title { color:#ffffff; }
    .how .sec-tag { color:#6AABFF; }
    .how .step-n { color:rgba(106,171,255,.18); }
    .how .step-t { color:#ffffff; }
    .how .step-d { color:var(--gray); }
    .c-grid { display:grid; grid-template-columns:1fr; gap:20px; max-width:780px; margin:0 auto; }
    @media(min-width:600px){ .c-grid { grid-template-columns:repeat(2,1fr); } }
    .c-card { background:var(--navy-3); border:1px solid rgba(255,255,255,.06); border-radius:14px; padding:30px; transition:border-color .3s,transform .3s; }
    .c-card:hover { border-color:rgba(27,79,190,.35); transform:translateY(-3px); }
    .c-city { display:flex; align-items:center; gap:11px; font-family:'DM Sans',sans-serif; font-size:18px; font-weight:800; letter-spacing:0; text-transform:none; color:#fff; margin-bottom:18px; }
    .country-flag {
      width:34px; height:34px; border-radius:50%;
      display:inline-grid; place-items:center; flex-shrink:0;
      background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.04));
      border:1px solid rgba(255,255,255,.18);
      box-shadow:0 10px 24px rgba(0,0,0,.18);
      font-family:'DM Sans',sans-serif; font-size:18px; line-height:1;
    }
    .c-dot { display:none; }
    .c-row { display:flex; align-items:center; gap:10px; font-size:14px; color:var(--gray-l); margin-bottom:8px; }
    .c-row a:hover { color:#6AABFF; }
    .contact-email { text-align:center; margin-top:32px; }
    .contact-email a { font-size:clamp(15px,2.2vw,19px); color:#6AABFF; border-bottom:1px solid rgba(106,171,255,.3); padding-bottom:2px; transition:border-color .2s; }
    .contact-email a:hover { border-color:#6AABFF; }

    /* ===== FOOTER ===== */
    .footer { background:var(--navy); border-top:1px solid rgba(255,255,255,.05); padding:36px 24px; text-align:center; }
    .footer-logo { height:47px; width:auto; margin:0 auto 16px; filter:brightness(0) invert(1); opacity:.75; }
    .f-copy { font-size:12px; color:rgba(255,255,255,.3); line-height:1.9; }
    .f-copy a { color:rgba(255,255,255,.3); transition:color .2s; }
    .f-copy a:hover { color:#6AABFF; }
    .site-credit { display:block; margin-top:6px; color:rgba(255,255,255,.24); }
    .site-credit a { color:rgba(255,255,255,.38); font-weight:600; }
    .site-credit a:hover { color:#6AABFF; }

    /* ===== MODAL ===== */
    .modal { display:none; position:fixed; inset:0; z-index:999; background:rgba(8,12,26,.88); backdrop-filter:blur(6px); overflow-y:auto; padding:24px 16px; }
    .modal-box { max-width:660px; margin:40px auto; background:var(--navy-2); border:1px solid rgba(255,255,255,.08); border-radius:14px; overflow:hidden; }
    .modal-head { background:var(--navy); padding:20px 26px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.06); }
    .modal-head h2 { font-family:'Barlow Condensed',sans-serif; font-size:22px; font-weight:800; text-transform:uppercase; color:#fff; }
    .modal-close { background:rgba(255,255,255,.08); color:#fff; width:32px; height:32px; border-radius:50%; font-size:14px; display:grid; place-items:center; cursor:pointer; border:none; }
    .modal-body { padding:28px; font-size:14px; line-height:1.75; color:var(--gray-l); }
    .modal-body h3 { font-size:13px; font-weight:700; color:#6AABFF; margin:16px 0 5px; }
    .modal-body h3:first-child { margin-top:0; }
    .modal-body a { color:#6AABFF; }


    /* ===== WHATSAPP ===== */
    .wa-float {
      position: fixed; bottom: 24px; right: 24px; z-index: 150;
      width: 58px; height: 58px; border-radius: 50%;
      background: #25D366;
      display: grid; place-items: center;
      font-size: 28px;
      box-shadow: 0 4px 18px rgba(37,211,102,.4);
      text-decoration: none;

    }
    .wa-float:hover { transform: scale(1.1); box-shadow: 0 8px 28px rgba(37,211,102,.6); animation: none; }
        /* ===== REVEAL ===== */
    .reveal { opacity:0; transform:translateY(26px); transition:opacity .65s var(--ease),transform .65s var(--ease); }
    .reveal.in { opacity:1; transform:translateY(0); }
    .d1{transition-delay:.1s} .d2{transition-delay:.2s} .d3{transition-delay:.3s} .d4{transition-delay:.4s} .d5{transition-delay:.5s}

            /* ── WHATSAPP PREMIUM ── */
    .wa-btn {
      display: inline-flex; align-items: center; gap: 10px;
      background: #25D366; color: #fff;
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 800; font-size: 16px; letter-spacing: .05em;
      padding: 14px 28px; border-radius: 50px;

    }
    .wa-btn:hover { background: #1da851; transform: translateY(-2px); box-shadow: 0 8px 22px rgba(37,211,102,.4); }
    .wa-btn svg { width: 20px; height: 20px; fill: #fff; flex-shrink: 0; }
    .wa-divider {
      display: flex; align-items: center; justify-content: center;
      gap: 16px; flex-wrap: wrap;
      margin-top: 22px; padding-top: 22px;
      border-top: 1px solid rgba(27,79,190,.12);
    }
    .wa-divider span { font-size: 14px; color: var(--gray); }
    .wa-contact {
      display: inline-flex; align-items: center; gap: 9px;
      background: rgba(37,211,102,.08); color: #fff;
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 800; font-size: 15px; letter-spacing: .05em;
      padding: 12px 22px; border-radius: 50px;
      border: 1.5px solid rgba(37,211,102,.35);

    }
    .wa-contact:hover { background: rgba(37,211,102,.18); border-color: #25D366; transform: translateY(-2px); }
    .wa-contact svg { width: 18px; height: 18px; fill: #25D366; flex-shrink: 0; }



    .btn-ghost-hero {
      display: inline-flex; align-items: center; gap: 8px;
      background: transparent; color: rgba(255,255,255,.85);
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 700; font-size: 17px; letter-spacing: .06em;
      padding: 15px 32px; border-radius: 50px;
      border: 1.5px solid rgba(255,255,255,.35);

    }
    .btn-ghost-hero:hover {
      border-color: rgba(255,255,255,.75);
      color: #fff;
      background: rgba(255,255,255,.07);
    }

  

    /* ═══════════════════════════════
       MOBILE REFINADO — meio termo entre v2 e v3
       Mantém o desktop da v2 e corrige hero/buttons no mobile
    ═══════════════════════════════ */
    @media(max-width:640px){
      .nav { padding: 10px 14px; gap: 8px; }
      .nav-logo img { height: 62px; }
      .nav-actions { gap: 7px; }
      .btn-cta, .btn-cta-outline {
        min-height: 36px;
        font-size: 11.5px;
        padding: 8px 12px;
        letter-spacing: .045em;
        white-space: nowrap;
      }

      .hero { min-height: 100svh; align-items: center; }
      .hero-content {
        padding: 104px 20px 78px;
        text-align: center;
        max-width: 520px;
      }
      .hero-badge { font-size: 11px; padding: 6px 13px; margin-bottom: 20px; }
      .hero-title {
        font-size: clamp(34px, 10.5vw, 42px);
        line-height: .96;
        letter-spacing: -.02em;
      }
      .hero-sub {
        font-size: 16px;
        line-height: 1.55;
        max-width: 340px;
        margin-left: auto;
        margin-right: auto;
      }
      .hero-divider { margin: 18px auto 18px; }

      .hero-cta {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
      }
      .hero-cta .btn-primary,
      .hero-cta .btn-ghost-hero {
        width: min(100%, 320px) !important;
        min-height: 50px;
        justify-content: center;
        text-align: center;
        box-sizing: border-box;
        font-size: 15.5px;
        line-height: 1.1;
        padding: 14px 20px;
        letter-spacing: .06em;
        white-space: normal;
      }
      .hero-scroll { display: none; }
    }

    @media(max-width:360px){
      .hero-content { padding: 96px 16px 68px; }
      .hero-title { font-size: 33px; }
      .hero-sub { font-size: 15px; }
      .nav { padding-left: 10px; padding-right: 10px; }
      .nav-logo img { height: 62px; }
      .nav-actions { gap: 6px; }
      .btn-cta, .btn-cta-outline { font-size: 10.5px; padding: 7px 9px; min-height: 34px; letter-spacing: .035em; }
      .hero-cta .btn-primary,
      .hero-cta .btn-ghost-hero { width: min(100%, 300px) !important; font-size: 14.5px; padding: 13px 16px; }
    }

  
    /* ── COOKIE BANNER ── */
    #cookieBanner {
      position: fixed; right: 24px; bottom: 24px; left: auto; z-index: 9999;
      width: min(560px, calc(100vw - 48px));
      background: var(--navy-2);
      border: 1px solid rgba(255,255,255,.1);
      border-radius: 16px;
      padding: 18px 20px;
      display: flex; align-items: center; justify-content: space-between;
      gap: 16px; flex-wrap: wrap;
      box-shadow: 0 20px 48px rgba(0,0,0,.38);
      opacity: 0;
      pointer-events: none;
      transform: translateY(22px);

    }
    #cookieBanner.visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
    #cookieBanner.is-hidden { display: none; }
    #cookieBanner p {
      font-size: 13px; color: var(--gray-l); line-height: 1.6;
      margin: 0; flex: 1; min-width: 220px;
    }
    #cookieBanner p a { color: #6AABFF; text-decoration: underline; }
    .cookie-actions { display: flex; gap: 10px; flex-shrink: 0; }
    .cookie-btn-accept {
      background: var(--blue); color: #fff;
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 700; font-size: 13px; letter-spacing: .07em;
      padding: 9px 22px; border-radius: 50px; border: none; cursor: pointer;

    }
    .cookie-btn-accept:hover { background: var(--blue-d); }
    .cookie-btn-reject {
      background: transparent; color: var(--gray-l);
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 700; font-size: 13px; letter-spacing: .07em;
      padding: 9px 18px; border-radius: 50px;
      border: 1px solid rgba(255,255,255,.18); cursor: pointer;

    }
    .cookie-btn-reject:hover { border-color: rgba(255,255,255,.45); color: #fff; }
    @media(max-width:480px){
      #cookieBanner { left: 14px; right: 14px; bottom: 14px; width: auto; padding: 14px 16px; border-radius: 14px; }
      #cookieBanner p { font-size: 12px; }
      .cookie-actions { width: 100%; justify-content: flex-end; }
    }



/* Reduced motion / no-flash override (preserved from original site) */
html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation:none!important}.reveal,.reveal.in,.is-visible,[class*="reveal"]{opacity:1!important;transform:none!important;visibility:visible!important}
