/* public/css/app_desktop.css — fix CLS 0.82 pe desktop, elimină dubluri, rezervă spații, păstrează accesibilitate/SEO 100 */

/* ==== RESET & BAZĂ ==== */
*{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:'Segoe UI',system-ui,-apple-system,Roboto,Arial,'Noto Sans',sans-serif;line-height:1.6;background:#f9f9f9;color:#222;overflow-anchor:auto}

/* ==== TYPO ==== */
h1,h2,h3{color:#0e2e50}
ul{padding-left:1.5rem;list-style:disc}
section h1,article h1,nav h1,aside h1{font-size:2.2rem;line-height:1.2;font-weight:700}
.hero-section h1{font-size:2rem;line-height:1.18;font-weight:800;color:#fff}

/* ==== WRAPPERS ==== */
main{max-width:1200px;margin:0 auto;padding:0}
.container{max-width:1200px;margin:0 auto;width:100%;padding:0 1rem}

/* ==== HEADER DESKTOP ==== */
:root{--header-h:72px}
.site-header{position:sticky;top:0;z-index:1000;background:#0e2e50;color:#fff;min-height:var(--header-h);box-shadow:0 1px 6px rgba(0,0,0,.12)}
.header-content{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;min-height:var(--header-h)}
.logo-img{height:48px;width:auto;display:block}
.menu-toggle{display:none}
.main-nav{position:static;display:flex;justify-content:center}
.nav-list{display:flex;gap:12px;list-style:none;margin:0;padding:0;align-items:center}
.nav-item{position:relative}
.nav-link,.nav-link-btn{color:#fff;text-decoration:none;padding:8px 12px;border-radius:6px;line-height:1;font-size:14px;transition:transform .2s,opacity .2s}
.nav-link:hover,.nav-link:focus,.nav-link-btn:hover,.nav-link-btn:focus{background:rgba(255,255,255,.12);transform:translateZ(0) scale(1.02);opacity:.96}
.nav-cta .btn{padding:8px 12px;font-size:14px}

/* ==== DROPDOWN ==== */
.nav-dropdown{position:relative}
.dropdown-menu{position:absolute;left:0;top:100%;min-width:220px;background:#0b1b2b;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px;display:none;box-shadow:0 8px 24px rgba(0,0,0,.18);z-index:1000}
.nav-item.nav-dropdown:hover>.dropdown-menu,.nav-item.nav-dropdown:focus-within>.dropdown-menu{display:block}
.dropdown-menu a{display:block;color:#fff;text-decoration:none;padding:8px 10px;border-radius:6px;font-size:14px}
.dropdown-menu a:hover,.dropdown-menu a:focus{background:rgba(255,255,255,.12)}
.nav-item.nav-dropdown.open>.dropdown-menu{display:block}

/* ==== HERO STABIL ==== */
.hero-section{position:relative;margin-top:0;isolation:isolate}
.hero-wrapper{position:relative;margin:0 auto;max-width:1280px}
.hero-media{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#0b1b2b;border-radius:12px;z-index:0}
.hero-img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.5) 60%, rgba(0,0,0,.78) 100%);pointer-events:none}
.hero-content{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:28px;color:#fff;pointer-events:none}
.hero-content>.container{position:relative;z-index:1}
.hero-content h1{margin:0 0 12px;font-size:34px;line-height:1.25}
.hero-content p{margin:0 0 18px;font-size:16px;line-height:1.6;color:#e6eef9}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;pointer-events:auto}

/* ==== BUTOANE ==== */
.btn,.nav-link,.footer-social-link{min-height:44px;min-width:44px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:8px;line-height:1;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .2s,color .2s,opacity .2s}
.btn-primary{background:#0a56cc;color:#fff;border-color:#0a56cc}
.btn-primary:hover,.btn-primary:focus{transform:translateZ(0) scale(1.02);opacity:.96}
.btn-secondary{background:transparent;color:#fff;border:2px solid #fff}
.btn-secondary:hover,.btn-secondary:focus{background:rgba(255,255,255,.12)}

/* ==== SECȚIUNI & GRID ==== */
h2{color:#0e2e50;font-size:28px;line-height:1.25;margin:0 0 16px}
p{margin:0 0 16px}
.services-section{background:#f9fafb}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none}
.service-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;min-height:228px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.service-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.service-card h3{margin:0 0 6px;color:#0e2e50;font-size:18px}
.service-card p{margin:0 0 12px;color:#111827;font-size:14px;flex:1}
.service-card .btn{align-self:flex-start}

/* ==== FOOTER ==== */
.site-footer{border-top:1px solid #e5e7eb;background:#fff;color:#111827;padding:32px 0}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:24px;align-items:start}
.footer-link{color:#111827;text-decoration:none;font-size:14px}
.footer-link:hover,.footer-link:focus{color:#0a56cc;text-decoration:underline}
.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.footer-brand p{margin:0 0 8px;font-size:14px}
.footer-brand address{font-style:normal;font-size:14px;line-height:1.5}
.footer-social{text-align:center}
.footer-social-title{margin-bottom:8px;font-weight:600}
.social-list{display:flex;gap:16px;justify-content:center;padding:0;margin:0;list-style:none}
.footer-social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#f3f4f6;color:#111827;transition:background .2s,color .2s}
.footer-social-link:hover{background:#0a56cc;color:#fff}
.icon{width:20px;height:20px}

/* ==== ANTI-CLS BANNERE ==== */
#cookie-bar,#cookie-banner,.promo-bar{position:fixed;left:0;right:0;bottom:0;z-index:2147483646}

/* A11y FIX — contrast + ținte de atins suficient de mari (desktop + mobil) */

/* 1) Butoane secundare – contrast AA pe fundal deschis (secțiuni albe/gray) */
.btn-secondary{
  --btn-sec-bg:#0e2e50;          /* fundal închis */
  --btn-sec-fg:#ffffff;          /* text alb */
  background:var(--btn-sec-bg);
  color:var(--btn-sec-fg);
  border:2px solid var(--btn-sec-bg);
}
.btn-secondary:hover,.btn-secondary:focus{
  filter:brightness(1.05);
}

/* 2) În hero (peste overlay întunecat) – menținem alb cu contur pentru lizibilitate */
.hero-content .btn-secondary{
  background:transparent;
  color:#ffffff;
  border:2px solid #ffffff;
}

/* 3) Linkuri din nav pe fundal închis – rămân albe; creștem hit-area */
.nav-link,.nav-link-btn{
  color:#ffffff;
  padding:12px 14px;             /* mărim targetul */
  line-height:1;
}

/* 4) Butoane/controllere – ținte minime recomandate */
.btn,.nav-link,.footer-social-link,.nav-caret-btn{
  min-height:44px;
  min-width:44px;
}

/* 5) Butoanele caret (▾) – contrast și target mărit */
.nav-caret-btn{
  background:#0a56cc;            /* contrast mare pe #0e2e50 */
  color:#ffffff;
  border:0;
  padding:10px 12px;
  border-radius:6px;
  line-height:1;
  cursor:pointer;
}

/* 6) Linkul “Vezi toate serviciile HVAC-R” din zona gri/albă — forțăm variantă contrastantă */
.services-section .btn.btn-secondary{
  --btn-sec-bg:#0a56cc;          /* albastru cu contrast pe #f9fafb */
  --btn-sec-fg:#ffffff;
}

/* 7) Texte pe suprafețe gri deschis */
.services-section p,
.industries-section p,
.benefits-section p,
.why-good-equipment-section p{
  color:#111827;                  /* contrast 7+:1 pe #f9fafb/#fff */
}

/* 8) Focal vizibil pentru tastatură (AA) */
:focus-visible{
  outline:3px solid #0a56cc;
  outline-offset:2px;
}

/* 9) Evităm scăderea contrastului la hover (nu schimbăm culoarea textului) */
a:hover,.btn:hover,.nav-link:hover{
  text-decoration:none;
  opacity:.96;
}
