/*
Theme Name: Romanian Gate Agency
Theme URI: https://example.com/
Author: Romanian Gate Agency
Description: Temă WordPress modernă cu glob 3D interactiv, creată pentru agenții de recrutare de forță de muncă din Asia. Include secțiuni editabile din Customizer, formular de solicitare cu trimitere pe email si suport pentru meniuri.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rga
Tags: business, one-column, custom-menu, custom-logo, translation-ready, full-width-template
*/

/* =========================================================
   1. VARIABILE & STILURI DE BAZĂ  (extrase din designul original)
   ========================================================= */
:root{
    --bg:#080d1f;
    --bg-2:#0c1430;
    --panel:#111a3a;
    --panel-2:#0f1733;
    --line:rgba(255,255,255,.08);
    --gold:#f5b944;
    --gold-soft:#ffcf6b;
    --cyan:#4dd0e1;
    --cyan-glow:#5eead4;
    --text:#eaeefb;
    --muted:#8c96ba;
    --muted-2:#5f6a90;
    --display:"Space Grotesk",system-ui,sans-serif;
    --body:"Manrope",system-ui,sans-serif;
    --maxw:1200px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:var(--body);
    background:var(--bg);
    color:var(--text);
    line-height:1.6;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  a{color:inherit;text-decoration:none}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  .eyebrow{
    font-family:var(--display);
    font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;
    color:var(--gold);font-weight:600;display:inline-flex;align-items:center;gap:10px;
  }
  .eyebrow::before{content:"";width:26px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
  h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.08;letter-spacing:-.02em}

  /* ---------- HEADER ---------- */
  header{
    position:fixed;top:0;left:0;right:0;z-index:60;
    transition:transform .45s cubic-bezier(.2,.7,.2,1), background .4s ease, border-color .4s ease;
    border-bottom:1px solid transparent;
  }
  header.scrolled{
    background:rgba(8,13,31,.82);
    -webkit-backdrop-filter:blur(18px) saturate(140%);
    backdrop-filter:blur(18px) saturate(140%);
    border-bottom:1px solid var(--line);
    box-shadow:0 10px 40px -18px rgba(0,0,0,.9);
  }
  /* bară subțire de progres la scroll */
  header::after{
    content:"";position:absolute;left:0;bottom:-1px;height:2px;width:var(--progress,0%);
    background:linear-gradient(90deg,var(--gold),var(--cyan-glow));
    opacity:0;transition:opacity .4s;box-shadow:0 0 12px rgba(245,185,68,.6);
  }
  header.scrolled::after{opacity:1}
  /* voal discret sub antet, ca meniul să rămână lizibil peste glob */
  header::before{
    content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
    background:linear-gradient(180deg,rgba(8,13,31,.92),rgba(8,13,31,.55) 60%,transparent);
    transition:opacity .4s;
  }
  header.scrolled::before{opacity:0}

  /* --- bara de sus: contact rapid --- */
  .topbar{
    border-bottom:1px solid var(--line);
    background:linear-gradient(90deg,rgba(245,185,68,.07),rgba(77,208,225,.05));
    font-size:.8rem;overflow:hidden;
    max-height:44px;transition:max-height .45s cubic-bezier(.2,.7,.2,1), opacity .35s;
  }
  header.scrolled .topbar{max-height:0;opacity:0;border-color:transparent}
  .topbar-in{display:flex;align-items:center;justify-content:space-between;gap:20px;height:44px}
  .topbar-contact{display:flex;align-items:center;gap:26px;min-width:0}
  .topbar a,.topbar span.tb{display:inline-flex;align-items:center;gap:8px;color:var(--muted);white-space:nowrap;transition:color .2s}
  .topbar a:hover{color:var(--gold)}
  .topbar .tb-ico{color:var(--gold);flex-shrink:0;display:inline-flex}
  .topbar-note{display:inline-flex;align-items:center;gap:9px;color:var(--muted-2);white-space:nowrap}
  .pulse{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 0 rgba(77,208,225,.7);animation:pulse 2.4s infinite}
  @keyframes pulse{0%{box-shadow:0 0 0 0 rgba(77,208,225,.6)}70%{box-shadow:0 0 0 8px rgba(77,208,225,0)}100%{box-shadow:0 0 0 0 rgba(77,208,225,0)}}

  /* --- rândul principal --- */
  .nav{display:flex;align-items:center;justify-content:space-between;gap:20px;height:74px;transition:height .4s}
  header.scrolled .nav{height:68px}

  .brand{display:flex;align-items:center;gap:12px;font-family:var(--display);font-weight:700;font-size:1.16rem;letter-spacing:.01em;flex-shrink:0}
  .brand .mark{
    width:38px;height:38px;border-radius:11px;position:relative;flex-shrink:0;
    background:linear-gradient(145deg,#1c2a58,#0b1229);
    border:1px solid rgba(245,185,68,.4);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 6px 18px -8px rgba(245,185,68,.5);
    transition:transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s;
    overflow:hidden;
  }
  .brand:hover .mark{transform:translateY(-2px) rotate(-4deg);box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 10px 24px -8px rgba(245,185,68,.75)}
  /* poarta: doi stâlpi + arcadă */
  .brand .mark::before{
    content:"";position:absolute;left:11px;top:12px;width:2px;height:15px;
    background:var(--gold);box-shadow:12px 0 0 var(--gold);border-radius:1px;
  }
  .brand .mark::after{
    content:"";position:absolute;left:10px;top:8px;width:18px;height:9px;
    border:2px solid var(--gold);border-bottom:none;border-radius:10px 10px 0 0;
  }
  .brand-text{display:flex;flex-direction:column;line-height:1.1;min-width:0}
  .brand-text span b{color:var(--gold);font-weight:700}
  .brand-tag{
    font-family:var(--body);font-size:.6rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
    color:var(--muted-2);margin-top:4px;line-height:1.2;
    display:block;max-width:22ch;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .brand-text > span:first-child{white-space:nowrap;line-height:1.15}

  .nav-links{display:flex;gap:6px;align-items:center;margin-left:auto}
  .nav-links a{
    font-size:.92rem;color:var(--muted);font-weight:500;position:relative;
    padding:9px 15px;border-radius:9px;transition:color .25s, background .25s;
  }
  .nav-links a::after{
    content:"";position:absolute;left:15px;right:15px;bottom:4px;height:1.5px;border-radius:2px;
    background:linear-gradient(90deg,var(--gold),var(--cyan-glow));
    transform:scaleX(0);transform-origin:left;transition:transform .32s cubic-bezier(.2,.7,.2,1);
  }
  .nav-links a:hover{color:var(--text);background:rgba(255,255,255,.04)}
  .nav-links a:hover::after{transform:scaleX(1)}
  .nav-links .current-menu-item > a,.nav-links a[aria-current="page"]{color:var(--text)}
  .nav-links .current-menu-item > a::after{transform:scaleX(1)}

  .nav-cta{display:flex;align-items:center;gap:10px;flex-shrink:0}

  .btn{
    font-family:var(--display);font-weight:600;font-size:.9rem;
    padding:12px 22px;border-radius:100px;cursor:pointer;border:none;text-align:center;
    transition:transform .2s, box-shadow .2s, background .2s;
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
  }
  .btn-primary{background:linear-gradient(135deg,var(--gold),#e5991f);color:#1a1200;box-shadow:0 8px 26px rgba(245,185,68,.28)}
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(245,185,68,.42)}
  .btn-ghost{background:rgba(255,255,255,.05);color:var(--text);border:1px solid var(--line)}
  .btn-ghost:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
  .btn-sm{padding:10px 18px;font-size:.85rem}

  /* --- buton hamburger animat --- */
  .nav-toggle{
    display:none;position:relative;width:44px;height:44px;flex-shrink:0;
    background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:12px;
    cursor:pointer;color:var(--text);transition:background .25s, border-color .25s;
  }
  .nav-toggle:hover{background:rgba(255,255,255,.1);border-color:rgba(245,185,68,.4)}
  .nav-toggle i{
    position:absolute;left:12px;width:20px;height:2px;border-radius:2px;background:var(--text);
    transition:transform .38s cubic-bezier(.2,.7,.2,1), opacity .22s;
  }
  .nav-toggle i:nth-child(1){top:15px}
  .nav-toggle i:nth-child(2){top:21px}
  .nav-toggle i:nth-child(3){top:27px}
  .nav-toggle[aria-expanded="true"] i:nth-child(1){transform:translateY(6px) rotate(45deg);background:var(--gold)}
  .nav-toggle[aria-expanded="true"] i:nth-child(2){opacity:0;transform:scaleX(.3)}
  .nav-toggle[aria-expanded="true"] i:nth-child(3){transform:translateY(-6px) rotate(-45deg);background:var(--gold)}

  /* --- meniu mobil pe tot ecranul --- */
  .mobile-menu{
    position:fixed;inset:0;z-index:55;display:flex;flex-direction:column;
    background:linear-gradient(170deg,#0b1229,#080d1f 60%);
    padding:calc(74px + 28px) 28px 34px;
    opacity:0;visibility:hidden;transform:translateY(-12px);
    transition:opacity .38s ease, transform .38s cubic-bezier(.2,.7,.2,1), visibility .38s;
    overflow-y:auto;overscroll-behavior:contain;
  }
  .mobile-menu.is-open{opacity:1;visibility:visible;transform:translateY(0)}
  .mobile-menu a.m-link{
    display:flex;align-items:center;justify-content:space-between;
    font-family:var(--display);font-size:1.5rem;font-weight:600;color:var(--text);
    padding:19px 0;border-bottom:1px solid var(--line);
    opacity:0;transform:translateY(14px);
  }
  .mobile-menu.is-open a.m-link{animation:mIn .5s cubic-bezier(.2,.7,.2,1) forwards}
  .mobile-menu.is-open a.m-link:nth-child(1){animation-delay:.06s}
  .mobile-menu.is-open a.m-link:nth-child(2){animation-delay:.12s}
  .mobile-menu.is-open a.m-link:nth-child(3){animation-delay:.18s}
  .mobile-menu.is-open a.m-link:nth-child(4){animation-delay:.24s}
  .mobile-menu.is-open a.m-link:nth-child(5){animation-delay:.30s}
  .mobile-menu.is-open a.m-link:nth-child(6){animation-delay:.36s}
  @keyframes mIn{to{opacity:1;transform:translateY(0)}}
  .mobile-menu a.m-link span.arrow{color:var(--gold);font-size:1.1rem;opacity:.55}
  .mobile-menu a.m-link:active{color:var(--gold)}
  .m-foot{margin-top:auto;padding-top:34px}
  .m-foot .btn{width:100%;padding:16px}
  .m-contact{display:flex;flex-direction:column;gap:12px;margin-top:24px}
  .m-contact a{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.95rem}
  .m-contact a b{color:var(--text);font-family:var(--display);font-weight:600}
  .m-contact .ci{
    width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;
    background:rgba(245,185,68,.1);border:1px solid rgba(245,185,68,.25);
  }
  body.menu-open{overflow:hidden}

  /* ---------- HERO ---------- */
  .hero{position:relative;min-height:100vh;display:flex;align-items:center;padding-top:76px;overflow:hidden}
  #globe-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;transition:opacity .5s ease}
  .hero::after{ /* vignette + left fade so text is readable */
    content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
    background:
      linear-gradient(180deg, rgba(8,13,31,.75) 0, rgba(8,13,31,.28) 130px, transparent 240px),
      radial-gradient(120% 90% at 78% 45%, transparent 26%, rgba(8,13,31,.6) 76%, var(--bg) 100%),
      linear-gradient(90deg, var(--bg) 8%, rgba(8,13,31,.6) 42%, transparent 70%);
  }
  .hero-inner{position:relative;z-index:3;width:100%}
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
  .hero-copy{max-width:600px}
  .hero h1{font-size:clamp(2.5rem,5.6vw,4.35rem);margin:22px 0 20px}
  .hero h1 .grad{
    background:linear-gradient(120deg,var(--gold-soft),var(--gold) 40%,var(--cyan-glow));
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .hero p.lead{font-size:1.14rem;color:var(--muted);max-width:520px;margin-bottom:34px}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
  .trust{display:flex;gap:26px;margin-top:38px;flex-wrap:wrap}
  .trust .t{display:flex;flex-direction:column}
  .trust .t b{font-family:var(--display);font-size:1.5rem;color:var(--text);line-height:1}
  .trust .t span{font-size:.78rem;color:var(--muted-2);margin-top:4px;letter-spacing:.02em}
  .hero-spacer{min-height:420px} /* keeps globe area airy on the right */
  .scroll-hint{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:3;color:var(--muted-2);font-size:.72rem;letter-spacing:.25em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:8px}
  .scroll-hint .line{width:1px;height:34px;background:linear-gradient(var(--gold),transparent);animation:drop 2s ease-in-out infinite}
  @keyframes drop{0%,100%{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}

  /* route legend chip over globe */
  .routes{display:flex;flex-direction:column;gap:12px}
  .route-chip{
    display:flex;align-items:center;gap:12px;font-size:.85rem;color:var(--muted);
    background:rgba(17,26,58,.5);border:1px solid var(--line);backdrop-filter:blur(8px);
    padding:10px 16px;border-radius:12px;justify-self:end;
  }
  .route-chip .dot{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan)}
  .route-chip b{color:var(--text);font-family:var(--display);font-weight:600}

  section{position:relative;z-index:4}
  .section-pad{padding:110px 0}
  .section-head{max-width:660px;margin-bottom:56px}
  .section-head h2{font-size:clamp(2rem,3.8vw,2.9rem);margin:16px 0 14px}
  .section-head p{color:var(--muted);font-size:1.06rem}

  /* ---------- STATS STRIP ---------- */
  .stats-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--bg-2),var(--bg))}
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
  .stat{padding:40px 30px;border-right:1px solid var(--line)}
  .stat:last-child{border-right:none}
  .stat b{font-family:var(--display);font-size:2.5rem;font-weight:600;display:block;background:linear-gradient(120deg,#fff,var(--gold-soft));-webkit-background-clip:text;background-clip:text;color:transparent}
  .stat span{color:var(--muted);font-size:.92rem}

  /* ---------- SERVICES ---------- */
  .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .card{
    position:relative;background:linear-gradient(165deg,var(--panel),var(--panel-2));
    border:1px solid var(--line);border-radius:20px;padding:32px 28px;overflow:hidden;
    transition:transform .35s cubic-bezier(.2,.7,.2,1), border-color .35s, box-shadow .35s;
    transform-style:preserve-3d;
  }
  .card::before{content:"";position:absolute;inset:0;background:radial-gradient(400px circle at var(--mx,50%) var(--my,0%),rgba(245,185,68,.10),transparent 40%);opacity:0;transition:opacity .35s}
  .card:hover{transform:translateY(-6px);border-color:rgba(245,185,68,.35);box-shadow:0 24px 50px -20px rgba(0,0,0,.6)}
  .card:hover::before{opacity:1}
  .card .ico{
    width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin-bottom:22px;
    background:linear-gradient(140deg,rgba(245,185,68,.16),rgba(77,208,225,.10));border:1px solid rgba(245,185,68,.22);
    font-size:1.4rem;
  }
  .card h3{font-size:1.22rem;margin-bottom:10px}
  .card p{color:var(--muted);font-size:.95rem}
  .card .num{position:absolute;top:24px;right:26px;font-family:var(--display);font-size:.8rem;color:var(--muted-2);letter-spacing:.1em}

  /* ---------- COUNTRIES ---------- */
  .countries{background:linear-gradient(180deg,var(--bg),var(--bg-2))}
  .country-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
  .country{
    text-align:center;padding:26px 14px;border:1px solid var(--line);border-radius:16px;
    background:rgba(17,26,58,.4);transition:transform .3s, border-color .3s, background .3s;
  }
  .country:hover{transform:translateY(-5px);border-color:rgba(77,208,225,.4);background:rgba(17,26,58,.7)}
  .country .flag{
    width:46px;height:31px;margin:0 auto 14px;line-height:0;
    border-radius:5px;overflow:hidden;
    box-shadow:0 3px 10px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.14);
    transition:transform .3s cubic-bezier(.2,.7,.2,1);
  }
  .country:hover .flag{transform:translateY(-2px) scale(1.05)}
  .country .flag svg{display:block;width:100%;height:100%}
  .country b{font-family:var(--display);font-weight:600;font-size:1rem;display:block}
  .country span{font-size:.78rem;color:var(--muted-2)}

  /* ---------- PROCESS ---------- */
  .process-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
  .steps{display:flex;flex-direction:column}
  .step{display:flex;gap:22px;padding:24px 0;border-bottom:1px solid var(--line);position:relative}
  .step:last-child{border-bottom:none}
  .step .n{
    font-family:var(--display);font-weight:600;font-size:1rem;flex-shrink:0;
    width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
    background:rgba(245,185,68,.08);border:1px solid rgba(245,185,68,.28);color:var(--gold);
  }
  .step h3{font-size:1.12rem;margin-bottom:5px}
  .step p{color:var(--muted);font-size:.93rem}
  .process-aside{position:sticky;top:110px;background:linear-gradient(165deg,var(--panel),var(--panel-2));border:1px solid var(--line);border-radius:22px;padding:36px}
  .process-aside h3{font-size:1.4rem;margin-bottom:14px}
  .process-aside p{color:var(--muted);margin-bottom:26px}
  .check{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px;font-size:.95rem}
  .check .c{color:var(--cyan-glow);flex-shrink:0;margin-top:2px}

  /* ---------- CONTACT ---------- */
  .contact{background:linear-gradient(180deg,var(--bg-2),var(--bg))}
  .contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
  .contact-info h2{font-size:clamp(2rem,3.6vw,2.7rem);margin:16px 0 18px}
  .contact-info p{color:var(--muted);margin-bottom:30px;max-width:400px}
  .contact-line{display:flex;gap:14px;align-items:center;margin-bottom:18px}
  .contact-line .ci{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:rgba(245,185,68,.1);border:1px solid rgba(245,185,68,.25);flex-shrink:0}
  .contact-line b{display:block;font-family:var(--display);font-size:.95rem}
  .contact-line span{color:var(--muted);font-size:.88rem}
  form{background:linear-gradient(165deg,var(--panel),var(--panel-2));border:1px solid var(--line);border-radius:22px;padding:34px}
  .field{margin-bottom:18px}
  .field.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  label{display:block;font-size:.82rem;color:var(--muted);margin-bottom:7px;font-weight:600}
  input,select,textarea{
    width:100%;background:rgba(8,13,31,.6);border:1px solid var(--line);border-radius:11px;
    padding:13px 15px;color:var(--text);font-family:var(--body);font-size:.94rem;transition:border-color .2s, box-shadow .2s;
  }
  input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,185,68,.14)}
  textarea{resize:vertical;min-height:96px}
  select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238c96ba' stroke-width='1.6' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center}
  form .btn-primary{width:100%;justify-content:center;margin-top:6px;padding:15px}
  .form-note{font-size:.78rem;color:var(--muted-2);margin-top:14px;text-align:center}
  .form-ok{display:none;text-align:center;padding:14px;border-radius:11px;background:rgba(77,208,225,.1);border:1px solid rgba(77,208,225,.3);color:var(--cyan-glow);font-size:.9rem;margin-top:16px}

  /* ---------- FOOTER ---------- */
  /* ---------- FOOTER ---------- */
  /* banda de call-to-action de deasupra footer-ului */
  .foot-cta{
    position:relative;margin:0 auto;max-width:var(--maxw);
    padding:0 28px;transform:translateY(50%);z-index:5;
  }
  .foot-cta-in{
    position:relative;overflow:hidden;border-radius:26px;padding:44px 48px;
    display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;
    background:linear-gradient(135deg,#16224a,#0d1531 55%,#11203f);
    border:1px solid rgba(245,185,68,.25);
    box-shadow:0 34px 70px -30px rgba(0,0,0,.95);
  }
  .foot-cta-in::before{
    content:"";position:absolute;top:-60%;right:-8%;width:420px;height:420px;border-radius:50%;
    background:radial-gradient(circle,rgba(245,185,68,.18),transparent 65%);pointer-events:none;
  }
  .foot-cta-in::after{
    content:"";position:absolute;bottom:-70%;left:-6%;width:360px;height:360px;border-radius:50%;
    background:radial-gradient(circle,rgba(77,208,225,.14),transparent 65%);pointer-events:none;
  }
  .foot-cta-txt{position:relative;z-index:2;min-width:0}
  .foot-cta-txt h3{font-size:clamp(1.45rem,2.6vw,1.95rem);margin-bottom:9px}
  .foot-cta-txt p{color:var(--muted);font-size:.98rem;max-width:440px}
  .foot-cta-btns{position:relative;z-index:2;display:flex;gap:12px;flex-wrap:wrap}

  footer{
    position:relative;margin-top:0;padding:150px 0 34px;
    background:linear-gradient(180deg,#0a1027,var(--bg));
    border-top:1px solid var(--line);
  }
  /* linie luminoasă pe muchia de sus */
  footer::before{
    content:"";position:absolute;top:-1px;left:12%;right:12%;height:1px;
    background:linear-gradient(90deg,transparent,rgba(245,185,68,.55),rgba(77,208,225,.4),transparent);
  }

  .foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:44px;margin-bottom:44px}
  .foot-brand p{color:var(--muted);font-size:.93rem;margin-top:18px;max-width:300px}
  .foot-contact{display:flex;flex-direction:column;gap:11px;margin-top:22px}
  .foot-contact a,.foot-contact span{
    display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:.9rem;transition:color .2s;
  }
  .foot-contact a:hover{color:var(--gold)}
  .foot-contact .fi{color:var(--gold);flex-shrink:0;display:inline-flex}
  .foot-social{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}
  .foot-social a{
    width:40px;height:40px;border-radius:12px;display:grid;place-items:center;
    background:rgba(255,255,255,.04);border:1px solid var(--line);color:var(--muted);
    transition:transform .28s cubic-bezier(.2,.7,.2,1), color .28s, border-color .28s, background .28s;
  }
  .foot-social a:hover{transform:translateY(-3px);color:var(--gold);border-color:rgba(245,185,68,.45);background:rgba(245,185,68,.09)}

  .foot-col h4{
    font-family:var(--display);font-size:.76rem;text-transform:uppercase;letter-spacing:.18em;
    color:var(--muted-2);margin-bottom:18px;position:relative;padding-bottom:12px;
  }
  .foot-col h4::after{content:"";position:absolute;left:0;bottom:0;width:22px;height:2px;border-radius:2px;background:var(--gold);opacity:.65}
  .foot-col a{
    display:block;color:var(--muted);font-size:.91rem;margin-bottom:12px;
    transition:color .22s, transform .22s;
  }
  .foot-col a:hover{color:var(--gold);transform:translateX(4px)}

  /* banda cu țările din care recrutăm */
  .foot-countries{
    display:flex;align-items:center;gap:12px;flex-wrap:wrap;
    padding:24px 0;border-top:1px solid var(--line);margin-bottom:6px;
  }
  .foot-countries .fc-label{
    font-family:var(--display);font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:var(--muted-2);
  }
  .foot-countries .fc-tag{
    font-size:.84rem;color:var(--muted);padding:7px 14px;border-radius:100px;
    background:rgba(255,255,255,.04);border:1px solid var(--line);transition:all .25s;
  }
  .foot-countries .fc-tag:hover{color:var(--text);border-color:rgba(77,208,225,.4);background:rgba(77,208,225,.07)}

  .foot-bottom{
    border-top:1px solid var(--line);padding-top:26px;
    display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;
    color:var(--muted-2);font-size:.82rem;
  }
  .foot-bottom-links{display:flex;gap:20px;flex-wrap:wrap}
  .foot-bottom-links a{transition:color .2s}
  .foot-bottom-links a:hover{color:var(--gold)}

  /* buton „înapoi sus" */
  .to-top{
    position:fixed;right:24px;bottom:24px;z-index:45;width:48px;height:48px;border-radius:14px;
    display:grid;place-items:center;cursor:pointer;
    background:rgba(17,26,58,.9);border:1px solid var(--line);color:var(--gold);
    -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
    opacity:0;visibility:hidden;transform:translateY(14px);
    transition:opacity .35s, transform .35s cubic-bezier(.2,.7,.2,1), visibility .35s, border-color .3s;
  }
  .to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
  .to-top:hover{border-color:rgba(245,185,68,.5);transform:translateY(-3px)}

  /* ---------- protecție împotriva depășirii pe orizontală ---------- */
  html,body{max-width:100%;overflow-x:hidden}
  img,svg,video,canvas{max-width:100%;height:auto}
  /* elementele de grid/flex trebuie să poată micșora sub conținutul lor */
  .hero-grid,.hero-copy,.contact-grid,.contact-info,.foot-grid,.foot-brand,
  .foot-cta-in,.foot-cta-txt,.process-grid,.cards,.card,.step,.step > div,
  .topbar-in,.nav,.stats-grid,.stat,.country{min-width:0}
  /* adresele lungi de email / linkuri se rup în loc să lățească pagina */
  .contact-line b,.contact-line b a,.contact-line span,
  .foot-contact a,.foot-contact span,.m-contact a b,.topbar a{
    overflow-wrap:anywhere;word-break:break-word;
  }
  .entry-content a,.entry-content p{overflow-wrap:break-word}

  /* =========================================================
     RESPONSIVE — de la 320px la ecrane late
     Puncte: 1280 / 1100 / 940 / 760 / 560 / 400
     ========================================================= */

  /* fluid: padding și spațiere între secțiuni pe orice ecran */
  .wrap{padding:0 clamp(18px,4vw,28px)}
  .section-pad{padding:clamp(64px,9vw,110px) 0}
  .section-head{margin-bottom:clamp(34px,5vw,56px)}

  /* --- desktop mare --- */
  @media(min-width:1500px){
    :root{--maxw:1320px}
  }

  /* --- laptop mic --- */
  @media(max-width:1280px){
    .nav-links{gap:2px}
    .nav-links a{padding:9px 12px;font-size:.88rem}
  }

  /* --- tabletă landscape --- */
  @media(max-width:1100px){
    .cards{grid-template-columns:repeat(2,1fr)}
    .foot-grid{grid-template-columns:1.5fr 1fr 1fr;gap:36px}
    .foot-grid .foot-col:last-child{grid-column:2 / -1}
    .foot-cta-in{padding:38px}
    .topbar-contact{gap:18px}
  }

  /* --- tabletă / mobil: comutăm pe meniul mobil --- */
  @media(max-width:940px){
    .nav-links{display:none}
    .nav-toggle{display:block}
    .nav-cta .btn-header{display:none}          /* CTA-ul trece în meniul mobil */
    .brand-tag{display:none}

    /* globul rămâne vizibil, dar ca fundal în spatele textului */
    .hero{
      min-height:640px;min-height:86svh;
      padding-top:calc(74px + 120px);
      padding-bottom:64px;
      align-items:flex-start;
    }
    .hero-grid{grid-template-columns:1fr}
    .hero-spacer,.routes{display:none}
    /* mască: globul se stinge treptat înainte să ajungă peste titlu */
    .hero::after{
      background:
        radial-gradient(85% 38% at 50% 22%,transparent 22%,rgba(8,13,31,.5) 72%,rgba(8,13,31,.85) 100%),
        linear-gradient(180deg,rgba(8,13,31,.6) 0%,rgba(8,13,31,.25) 14%,rgba(8,13,31,.88) 40%,var(--bg) 60%);
    }
    .scroll-hint{display:none}

    .stats-grid{grid-template-columns:1fr 1fr}
    .stat{border-bottom:1px solid var(--line);padding:30px 22px}
    .stat:nth-child(2n){border-right:none}
    .stat:nth-last-child(-n+2){border-bottom:none}

    .process-grid{grid-template-columns:1fr;gap:34px}
    .process-aside{position:static}
    .contact-grid{grid-template-columns:1fr;gap:34px}
    .post-grid{grid-template-columns:repeat(2,1fr)}
  }

  /* --- mobil mare --- */
  @media(max-width:760px){
    .cards{grid-template-columns:1fr}
    .country-grid{grid-template-columns:repeat(3,1fr)}
    .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
    .foot-grid .foot-brand{grid-column:1 / -1}
    .foot-grid .foot-col:last-child{grid-column:auto}
    .foot-cta{transform:translateY(40%)}
    .foot-cta-in{padding:32px 26px;flex-direction:column;align-items:flex-start;gap:22px}
    .foot-cta-btns{width:100%}
    .foot-cta-btns .btn{flex:1 1 auto}
    footer{padding-top:130px}
    .post-grid{grid-template-columns:1fr}
    .entry-content{padding:48px 0}
    form{padding:26px 22px}
  }

  /* --- mobil standard --- */
  @media(max-width:560px){
    .topbar{display:none}                        /* contactul e în meniul mobil */
    .hero{min-height:600px;min-height:84svh;padding-top:calc(74px + 96px)}
    .hero p.lead{font-size:1.04rem}
    .hero-cta{gap:10px}
    .hero-cta .btn{flex:1 1 100%}
    .trust{gap:0;display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px}
    .trust .t b{font-size:1.28rem}
    .trust .t span{font-size:.72rem}

    .stats-grid{grid-template-columns:1fr}
    .stat{border-right:none;border-bottom:1px solid var(--line);padding:24px 0;text-align:left}
    .stat:last-child{border-bottom:none}
    .stat b{font-size:2rem}

    .country-grid{grid-template-columns:repeat(2,1fr);gap:12px}
    .card{padding:26px 22px}
    .process-aside{padding:28px 24px}
    .step{gap:16px;padding:20px 0}
    .step .n{width:38px;height:38px;font-size:.88rem}

    .foot-grid{grid-template-columns:1fr;gap:30px}
    .foot-bottom{flex-direction:column;align-items:flex-start;gap:12px}
    .to-top{right:16px;bottom:16px;width:44px;height:44px}
    .mobile-menu a.m-link{font-size:1.3rem;padding:16px 0}
  }

  /* --- telefoane mici (320–400px) --- */
  @media(max-width:400px){
    .brand{font-size:1.02rem;gap:9px}
    .brand .mark{width:34px;height:34px;border-radius:10px}
    .brand .mark::before{left:9px;top:11px;height:13px;box-shadow:11px 0 0 var(--gold)}
    .brand .mark::after{left:8px;top:8px;width:16px;height:8px}
    .foot-cta-in{padding:26px 20px;border-radius:20px}
    .mobile-menu{padding-left:20px;padding-right:20px}
    .card .num{display:none}
  }

  /* --- telefoane foarte înguste: țările pe un rând orizontal --- */
  @media(max-width:360px){
    .country-grid{grid-template-columns:1fr}
    .country{display:flex;align-items:center;gap:14px;text-align:left;padding:16px 18px}
    .country .flag{margin:0;flex-shrink:0}
  }

  /* --- ecrane joase în landscape (telefon întors) --- */
  @media(max-height:520px) and (orientation:landscape){
    .hero{min-height:auto;padding-top:104px;padding-bottom:56px;align-items:center}
    #globe-canvas{opacity:.4!important}
    .mobile-menu{padding-top:90px}
    .mobile-menu a.m-link{font-size:1.1rem;padding:12px 0}
  }

  /* --- input-uri: fără zoom automat pe iOS (necesită ≥16px) --- */
  @media(max-width:940px){
    input,select,textarea{font-size:16px}
    .btn,.nav-toggle,.to-top,.foot-social a{min-height:44px}  /* zone de atingere */
  }

  /* --- ecrane cu densitate mare: texturi mai fine --- */
  @media(min-resolution:2dppx){
    header.scrolled{background:rgba(8,13,31,.86)}
  }

  /* --- respectă preferința pentru mai puțină mișcare --- */
  @media(prefers-reduced-motion:reduce){
    *,*::before,*::after{
      animation-duration:.01ms!important;animation-iteration-count:1!important;
      transition-duration:.01ms!important;scroll-behavior:auto!important;
    }
    .mobile-menu a.m-link{opacity:1;transform:none}
  }

  /* --- print --- */
  @media print{
    header,.mobile-menu,.to-top,#globe-canvas,.foot-cta,.scroll-hint{display:none!important}
    body{background:#fff;color:#000}
  }

/* =========================================================
   2. STILURI SPECIFICE WORDPRESS
   ========================================================= */
.screen-reader-text{
  position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);
  clip-path:inset(50%);white-space:nowrap;border:0;padding:0;margin:-1px;
}
.screen-reader-text:focus{
  position:fixed!important;top:12px;left:12px;width:auto;height:auto;clip:auto;clip-path:none;
  background:var(--gold);color:#1a1200;padding:12px 20px;border-radius:8px;z-index:9999;
  font-family:var(--display);font-weight:600;
}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--gold);outline-offset:3px;border-radius:4px;
}
.custom-logo{max-height:38px;width:auto;display:block}

/* liste de meniu WordPress fără marcatori */
.nav-links li,.mobile-menu li{list-style:none}
.nav-links ul,.mobile-menu ul{display:contents;margin:0;padding:0}

/* mesaje formular */
.form-ok.is-error{background:rgba(255,90,90,.1);border-color:rgba(255,90,90,.35);color:#ff9a9a}
.rga-honeypot{position:absolute!important;left:-9999px;opacity:0;height:0;overflow:hidden}

/* pagini interioare (blog, pagini, 404) */
.page-hero{padding:150px 0 60px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--bg-2),var(--bg))}
.page-hero h1{font-size:clamp(2rem,4.4vw,3.2rem);margin-top:16px}
.page-hero p{color:var(--muted);margin-top:12px;max-width:620px}
.entry-content{max-width:760px;margin:0 auto;padding:70px 0}
.entry-content > *{margin-bottom:1.15em}
.entry-content h2{font-size:1.9rem;margin:1.8em 0 .6em}
.entry-content h3{font-size:1.4rem;margin:1.5em 0 .5em}
.entry-content a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.entry-content ul,.entry-content ol{padding-left:1.4em}
.entry-content li{margin-bottom:.5em;color:var(--muted)}
.entry-content p{color:var(--muted)}
.entry-content blockquote{
  border-left:3px solid var(--gold);padding:6px 0 6px 22px;color:var(--text);font-size:1.1rem;font-style:italic;
}
.entry-content img,.entry-content figure img{max-width:100%;height:auto;border-radius:14px}
.entry-content code{background:rgba(255,255,255,.06);padding:2px 7px;border-radius:5px;font-size:.9em}
.entry-content pre{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:20px;overflow-x:auto}
.entry-content table{width:100%;border-collapse:collapse}
.entry-content th,.entry-content td{border:1px solid var(--line);padding:10px 14px;text-align:left}

/* listă articole */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.post-card{
  background:linear-gradient(165deg,var(--panel),var(--panel-2));border:1px solid var(--line);
  border-radius:20px;overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s;
}
.post-card:hover{transform:translateY(-6px);border-color:rgba(245,185,68,.35)}
.post-card .thumb{aspect-ratio:16/9;overflow:hidden;background:var(--panel-2)}
.post-card .thumb img{width:100%;height:100%;object-fit:cover}
.post-card .body{padding:26px}
.post-card h2{font-size:1.2rem;margin-bottom:10px;line-height:1.3}
.post-card h2 a:hover{color:var(--gold)}
.post-card .meta{font-size:.78rem;color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
.post-card p{color:var(--muted);font-size:.93rem}
.pagination{display:flex;gap:10px;justify-content:center;margin-top:50px;flex-wrap:wrap}
.pagination .page-numbers{
  padding:10px 16px;border:1px solid var(--line);border-radius:10px;color:var(--muted);
  font-family:var(--display);font-size:.9rem;transition:all .25s;
}
.pagination .page-numbers:hover,.pagination .page-numbers.current{
  border-color:var(--gold);color:var(--gold);background:rgba(245,185,68,.08);
}
.no-results{text-align:center;padding:80px 0}
.no-results h2{font-size:1.6rem;margin-bottom:12px}
.no-results p{color:var(--muted);margin-bottom:26px}

/* comentarii */
.comments-area{max-width:760px;margin:0 auto;padding:0 0 70px}
.comments-area h3{font-size:1.4rem;margin-bottom:24px}
.comment-list{list-style:none;padding:0}
.comment-list li{
  background:var(--panel-2);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:16px;
}
.comment-list .children{list-style:none;padding-left:26px;margin-top:16px}
.comment-form input,.comment-form textarea{margin-bottom:14px}
.comment-form .submit{
  font-family:var(--display);font-weight:600;font-size:.9rem;padding:13px 26px;border-radius:100px;
  cursor:pointer;border:none;background:linear-gradient(135deg,var(--gold),#e5991f);color:#1a1200;
}

@media(max-width:940px){
  .comments-area{padding-bottom:48px}
}
