/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com/
Author: Prana.md
Template: generatepress
Description: Child theme for GeneratePress with performance optimizations.
Version: 1.0.0
Text Domain: generatepress-child
*/

:root {
  --gp-brand: #019ee2;
  --gp-brand-dark: #007fbe;
  --gp-brand-rgb: 1, 158, 226;
}

/* ===== Buline decorative (folosire în Elementor: adaugă clasa la Secțiune/Container) ===== */
.gp-bulina-stanga,
.gp-bulina-dreapta {
  position: relative;
  overflow: visible;
}
.gp-bulina-stanga::before,
.gp-bulina-dreapta::before {
  content: '';
  position: absolute;
  pointer-events: none;
  z-index: 0;
  width: 420px;
  height: 420px;
  background: radial-gradient(closest-side, rgba(135,206,235,0.12), transparent 70%);
  filter: blur(6px);
  border-radius: 50%;
}
.gp-bulina-stanga::before {
  left: -160px;
  bottom: -140px;
}
.gp-bulina-dreapta::before {
  right: -120px;
  top: -80px;
  width: 520px;
  height: 520px;
  background: radial-gradient(closest-side, rgba(0,176,240,0.10), transparent 70%);
  filter: blur(4px);
}

h3.footer-title{color:var(--gp-brand);font-size:28px;font-weight:600;}

/* Banner shortcode - FORȚARE MAXIMĂ */
.gp-banner{width:1199px !important;max-width:1199px !important;margin:0 auto !important;display:block !important;border-radius:10px;overflow:hidden}
.gp-banner picture{display:block !important;width:100% !important;max-width:100% !important;border-radius:10px}
.gp-banner img{display:block !important;width:1199px !important;max-width:1199px !important;height:auto !important;object-fit:cover !important;border-radius:10px}
.gp-banner-link{display:block !important;width:1199px !important;max-width:1199px !important;margin:0 auto !important;border-radius:10px}

/* Desktop — force 1199px banner width */
@media (min-width: 1200px) {
  .elementor .elementor-widget-shortcode .gp-banner,
  .gp-banner {
    width: 1199px !important;
    min-width: 1199px !important;
    max-width: 1199px !important;
  }
  
  .elementor .elementor-widget-shortcode .gp-banner img,
  .gp-banner img {
    width: 1199px !important;
    min-width: 1199px !important;
    max-width: none !important;
    object-fit: cover !important;
  }
}

/* Defensive overrides inside Elementor Shortcode widget */
.elementor .elementor-widget-shortcode .gp-banner,
.elementor .elementor-widget-shortcode .gp-banner picture,
.elementor .elementor-widget-shortcode .gp-banner img{
  display:block !important;
  width:100% !important;
}
.elementor .elementor-widget-shortcode .gp-banner-link{display:block !important;width:100% !important}

/* Lead form — lățime coloană (Elementor / hero), nu box îngust 520px */
.gp-lead{width:100%;max-width:100%;margin:0;box-sizing:border-box}
.gp-lead-form{width:100%;box-sizing:border-box}
.gp-lead-inline{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.gp-lead-input{flex:1 1 260px;min-width:260px}
.gp-lead input[type="text"],
.gp-lead input[type="tel"]{
  width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:10px;background:#fff;color:#111827
}
.gp-lead input[type="text"]:focus,
.gp-lead input[type="tel"]:focus{outline:2px solid var(--gp-brand);outline-offset:2px}
.gp-lead-hp{position:absolute !important;left:-10000px !important;top:auto !important;width:1px !important;height:1px !important;overflow:hidden !important}
.gp-lead-btn{display:inline-flex;align-items:center;gap:12px;padding:12px 18px;background:#E21A13;color:#fff;border:0;border-radius:10px;cursor:pointer;white-space:nowrap;font-size:18px;font-weight:600}
.gp-lead-btn .gp-lead-btn-icon{display:inline-flex;align-items:center}
.gp-lead-btn .e-font-icon-svg{width:18px;height:18px;fill:currentColor}
.gp-lead-btn:hover{background:#C01711}
.gp-lead-btn{position:relative;transition:background .2s ease,opacity .2s ease,transform .15s ease}
.gp-lead-btn:disabled{cursor:not-allowed;opacity:.92}
.gp-lead-btn--loading{pointer-events:none}
.gp-lead-btn--loading .gp-lead-btn-text,
.gp-lead-btn--loading .gp-lead-btn-icon{opacity:.25}
.gp-lead-btn--loading::after{
  content:"";
  position:absolute;left:50%;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid rgba(255,255,255,.25);
  border-top-color:#fff;border-radius:50%;animation:gpLeadSpin .55s linear infinite;
}
@keyframes gpLeadSpin{to{transform:rotate(360deg)}}
.gp-lead-msg{margin-top:8px;min-height:1.25em;color:#b91c1c;font-size:.9375rem}
.gp-lead-thanks{
  display:flex;align-items:center;gap:16px;width:100%;max-width:100%;box-sizing:border-box;
  padding:clamp(16px,3vw,22px) clamp(18px,4vw,28px);background:linear-gradient(145deg,#ecfdf5 0%,#d1fae5 100%);
  border:1px solid #6ee7b7;border-radius:12px;color:#064e3b;text-align:left;
  box-shadow:0 4px 14px rgba(16,185,129,.12);
  animation:gpThanksIn .4s ease-out both;
}
.gp-lead-thanks-icon{
  flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;
  background:#10b981;color:#fff;box-shadow:0 2px 8px rgba(16,185,129,.35);
}
.gp-lead-thanks-icon svg{display:block}
.gp-lead-thanks-text{
  flex:1 1 auto;min-width:0;font-size:clamp(1rem,2.4vw,1.125rem);font-weight:600;line-height:1.35;letter-spacing:.01em;
}
@keyframes gpThanksIn{
  from{opacity:0;transform:translateY(6px)}
  to{opacity:1;transform:translateY(0)}
}
/* reCAPTCHA v3: badge fix stânga-jos, discret */
.grecaptcha-badge{
  left:6px!important;
  right:auto!important;
  bottom:6px!important;
  opacity:.2!important;
  transform:scale(.52)!important;
  transform-origin:left bottom!important;
  box-shadow:none!important;
  transition:opacity .2s ease,transform .2s ease;
}
.grecaptcha-badge:hover{
  opacity:.55!important;
  transform:scale(.72)!important;
}
/* Ensure the shortcode wrapper expands */
.elementor .elementor-widget-shortcode .elementor-widget-container,
.elementor .elementor-widget-shortcode .elementor-shortcode{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
}
.elementor .elementor-widget-shortcode .gp-lead,
.elementor .elementor-shortcode .gp-lead{
  width:100% !important;
  max-width:100% !important;
}
/* Desktop: single row, equal widths for inputs and button */
@media (min-width:769px){
  .gp-lead{max-width:100%}
  .gp-lead-inline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}
  .gp-lead-input{width:100%;min-width:0}
  .gp-lead-btn{width:100%;justify-content:center}
  .gp-lead-msg{grid-column:1 / -1}
  /* Mulțumirea nu rămâne înghesuită în col. 1 (~33%); acoperă tot rândul ca mesajul de eroare */
  .gp-lead-inline .gp-lead-thanks{grid-column:1 / -1}
}
/* Placeholder — keep styles minimal; add the rest in the Customizer or dedicated files */

/* Layout container */
.container{max-width:1200px;margin-left:auto;margin-right:auto;padding:0 16px}

/* Header */
.top-bar{background:#ffffff;color:#0f172a;font-size:16px;font-weight:600;border-bottom:1px solid #7A7A7A;position:sticky;top:0;z-index:60}
.top-bar .container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 0}
.topbar-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px}
.topbar-left{display:flex;align-items:center;gap:12px}
.top-social{display:inline-flex;align-items:center;justify-content:center}
.top-social svg{display:block}
.top-bar a{color:#fff;text-decoration:none;opacity:.9}
.top-bar a:hover{opacity:1!important}
/* Phone color overrides */
.top-bar .top-phone{color:#E21A13!important}
.top-bar .top-phone:hover{color:#C01711!important;opacity:1!important}
.top-bar .top-messenger{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.top-bar .icon-messenger{display:inline-block;width:20px;height:20px}

.site-header{background:var(--base-3);border-bottom:1px solid #eee}
.header-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:16px 0}
.site-header .branding{display:flex;align-items:center;gap:12px}
.branding .logo{display:inline-flex;align-items:center}
.branding .logo img{display:block;height:78px;width:auto;aspect-ratio:770/400}
.site-title{margin:0;font-size:20px}
.site-description{margin:0;color:var(--contrast-2);font-size:12px}

/* Nav */
.main-navigation{display:flex;align-items:center;justify-content:center;grid-column:2;justify-self:center}
.main-navigation ul{list-style:none;margin:0;padding:0;display:flex;gap:24px}
.main-navigation a{text-decoration:none;color:var(--contrast);font-size:17px;font-weight:500;cursor:pointer}
/* Custom link fără URL → href="" / "#": altfel browserul arată cursor text (I-beam) */
.main-navigation .menu-item-has-children > a{user-select:none;-webkit-user-select:none}
.main-navigation a:hover{color:var(--accent)}
.nav-toggle{display:none;background:transparent;border:1px solid #e5e7eb;border-radius:6px;font-size:22px;line-height:1;padding:6px 10px;color:var(--contrast);z-index:10}
.nav-toggle:focus{outline:2px solid var(--accent);outline-offset:2px}

/* Header actions */
.header-actions{display:flex;justify-content:flex-end}
.lang-link{color:var(--contrast);text-decoration:none;font-weight:600}
.lang-link:hover{color:var(--accent)}
/* Language dropdown */
.lang-switcher{position:relative}
.lang-current{display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;border-radius:0;padding:0;cursor:pointer;color:var(--contrast);font-weight:600}
.lang-current:hover{color:var(--accent);background:transparent}
.lang-current:focus{outline:2px solid var(--accent);outline-offset:2px}
.lang-code{min-width:22px;text-align:center}
.lang-caret{display:none}
.lang-current::after{content:"";display:inline-block;margin-left:6px;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.lang-dropdown{position:absolute;right:0;top:100%;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.06);padding:6px 6px;list-style:none;margin:0;min-width:90px;z-index:60;display:none}
.lang-switcher:hover .lang-dropdown{display:block}
.lang-switcher:hover .lang-current::after{transform:rotate(225deg)}
.lang-dropdown .lang-option{display:block;padding:8px 10px;color:var(--contrast);text-decoration:none;border-radius:6px;background:transparent;font-weight:600}
.lang-dropdown .lang-option:hover{background:transparent;color:var(--accent)}

.main-navigation .menu-item-has-children > a::after{content:"";display:inline-block;margin-left:6px;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.main-navigation li.menu-item-has-children:hover > a::after,
.main-navigation li.menu-item-has-children.hovering > a::after{transform:rotate(225deg)}

/* Mobile */
@media (max-width:768px){
  .gp-lead{max-width:100%}
  .gp-lead-inline{flex-direction:column;gap:10px}
  .gp-lead-input{width:100%;min-width:0;flex-basis:100%}
  .gp-lead-btn{width:100%;justify-content:center}
  html.nav-open, body.nav-open{overflow:hidden}
  .site-header{position:relative;z-index:50}
  .top-bar .container{padding-left:15px;padding-right:15px}
  /* Keep top-bar font-size on mobile same as desktop */
  .top-bar{font-size:16px}
  .header-grid{grid-template-columns:auto 1fr auto;position:relative;padding:12px 16px}
  .branding{grid-column:1}
  .nav-toggle{display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);grid-column:1/-1;margin:0}
  .header-actions{grid-column:3;justify-self:end;padding-right:12px}
  .main-navigation{display:none;position:fixed;left:0;right:0;top:auto;background:#f5f5f5;border-top:1px solid #eee;box-shadow:0 10px 30px rgba(0,0,0,.06);padding:12px 0;width:100vw;z-index:40}
  .main-navigation.open{display:block;animation:navSlide .2s ease-out}
  .main-navigation ul{flex-direction:column;gap:4px;max-width:640px;margin:8px auto;padding:0 16px}
  .main-navigation li.menu-item-has-children > ul{display:none}
  .main-navigation li.submenu-open > ul{display:block}
  .branding .logo img{height: 70px}
  .main-navigation a{padding:10px 0;display:block}
}

/* Footer */
.site-footer{background:var(--base-3);border-top:1px solid #eee}
.footer-navigation ul{list-style:none;margin:0;padding:0;display:flex;gap:12px;flex-wrap:wrap}
.copyright-bar{margin-top:12px;color:var(--contrast-2);font-size:12px}

/* Footer (dark modern variant) */
.site-footer{background:#0f172a;color:#7A7A7A}
.site-footer a{color:#7A7A7A;text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;padding:40px 0;align-items:start;text-align:left}
.footer-brand .logo{display:block;line-height:0}
.footer-brand .logo img{display:block;height:90px;width:auto;margin:0}
.footer-contact-list{list-style:none;margin:6px 0 0 0;padding:0;display:grid;gap:10px}
.footer-contact-list .item{position:relative;padding-left:28px}
.footer-contact-list .item::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;background:#7A7A7A;mask-size:cover;mask-repeat:no-repeat}
.footer-contact-list .address::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M12 2C8.14 2 5 5.14 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.86-3.14-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5S10.62 6.5 12 6.5s2.5 1.12 2.5 2.5S13.38 11.5 12 11.5z"/></svg>')}
.footer-contact-list .hours::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M12 1a11 11 0 1 0 11 11A11.012 11.012 0 0 0 12 1Zm1 11h5v2h-7V6h2Z"/></svg>')}
.footer-contact-list .phone::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M6.62 10.79a15.053 15.053 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.01-.24c1.12.37 2.33.57 3.58.57a1 1 0 0 1 1 1V21a1 1 0 0 1-1 1C10.07 22 2 13.93 2 3a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.25.2 2.46.57 3.59a1 1 0 0 1-.25 1.01Z"/></svg>')}
.footer-contact-list .email::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2Zm0 4-8 5L4 8V6l8 5 8-5Z"/></svg>')}
.footer-contact-list a{color:#7A7A7A}
.footer-social{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:4px}
.footer-social .social{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:#1f2937;color:#e2e8f0;font-size:18px;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}
.footer-social .social:hover{transform:translateY(-2px);filter:brightness(1.08)}
.footer-social .social:focus-visible{outline:2px solid var(--gp-brand,#38bdf8);outline-offset:2px}
.footer-social .facebook{background:#1877F2}
.footer-social .instagram{background:linear-gradient(45deg,#f58529,#dd2a7b,#8134af)}
.footer-social .youtube{background:#FF0000}
.footer-social .tiktok{background:#000000}
.footer-social .x-social{background:#000000}
.footer-social .facebook::before,.footer-social .instagram::before,.footer-social .youtube::before,.footer-social .tiktok::before,.footer-social .x-social::before{content:"";width:22px;height:22px;background:#fff;mask-size:contain;mask-repeat:no-repeat;mask-position:center}
.footer-social .facebook::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M15 3h-3a5 5 0 0 0-5 5v3H5v4h2v6h4v-6h3l1-4h-4V8a1 1 0 0 1 1-1h3z"/></svg>')}
.footer-social .instagram::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838c-3.403 0-6.162 2.759-6.162 6.162s2.759 6.163 6.162 6.163 6.162-2.759 6.162-6.163c0-3.403-2.759-6.162-6.162-6.162zm0 10.162c-2.209 0-4-1.79-4-4 0-2.209 1.791-4 4-4s4 1.791 4 4c0 2.21-1.791 4-4 4zm6.406-11.845c-.796 0-1.441.645-1.441 1.44s.645 1.44 1.441 1.44c.795 0 1.439-.645 1.439-1.44s-.644-1.44-1.439-1.44z"/></svg>')}
.footer-social .youtube::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M9 17l8-5-8-5v10z"/></svg>')}
.footer-social .tiktok::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M14.5 3h2.2c.3 2.2 1.5 3.6 3.3 3.9v2.3c-1.2.1-2.3-.3-3.5-1.1v4.9c0 3.5-2.6 6-6.1 6-2.9 0-5.3-2-5.8-4.7l2.4-.5c.2 1.4 1.5 2.5 3.1 2.5 1.9 0 3.3-1.4 3.3-3.3V3z"/></svg>')}
.footer-social .x-social::before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/></svg>')}
.footer-tagline{margin:-10px 0 14px 0;font-size:18px;color:#7A7A7A;line-height:1.4}
.footer-brand .footer-title,.footer-office .footer-title{color:var(--gp-brand);font-size:1.125rem;margin:0 0 12px}
.footer-chisinau{width:fit-content;margin-left:auto;margin-right:auto}
.footer-balti{width:fit-content;margin-left:auto}
.recent-posts{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.recent-posts a{opacity:.95}
.copyright-bar{border-top:1px solid #7A7A7A;margin-top:0;padding:12px 0;color:#7A7A7A}
/* footer title (keep only one definition) */

@media (max-width:1024px){
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px 48px}
}
@media (max-width:768px){
  .footer-grid{grid-template-columns:1fr;gap:40px}
  .site-footer .container{padding-left:20px;padding-right:20px}
  .footer-grid{padding:28px 0}
  .footer-chisinau,.footer-balti{width:auto;margin-left:0;margin-right:0}
  .footer-brand{padding-bottom:0}
  .footer-chisinau{padding-top:4px}
  .footer-balti{padding-top:4px}
  .footer-contact-list,
  .footer-contact-list a,
  .recent-posts,
  .recent-posts a{font-size:18px}
}

/* FORȚARE ULTIMĂ - BANNER 1199px */
body .elementor .elementor-widget-shortcode .gp-banner,
body .elementor .elementor-widget-shortcode .gp-banner picture,
body .elementor .elementor-widget-shortcode .gp-banner img,
body .elementor .elementor-widget-shortcode .gp-banner-link,
body .gp-banner,
body .gp-banner picture,
body .gp-banner img,
body .gp-banner-link {
  width: 1199px !important;
  max-width: 1199px !important;
  min-width: 1199px !important;
  margin: 0 auto !important;
  display: block !important;
  object-fit: cover !important;
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  box-sizing: border-box !important;
}

/* FORȚARE EXTREMĂ - pentru orice situație */
html body .elementor .elementor-widget-shortcode .gp-banner,
html body .elementor .elementor-widget-shortcode .gp-banner picture,
html body .elementor .elementor-widget-shortcode .gp-banner img,
html body .elementor .elementor-widget-shortcode .gp-banner-link,
html body .gp-banner,
html body .gp-banner picture,
html body .gp-banner img,
html body .gp-banner-link {
  width: 1199px !important;
  max-width: 1199px !important;
  min-width: 1199px !important;
  margin: 0 auto !important;
  display: block !important;
  object-fit: cover !important;
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  box-sizing: border-box !important;
}

/* Banner responsive — sub 1200px fluid, 100% lățime */
@media (max-width: 1199px) {
  body .elementor .elementor-widget-shortcode .gp-banner,
  body .elementor .elementor-widget-shortcode .gp-banner picture,
  body .elementor .elementor-widget-shortcode .gp-banner img,
  body .elementor .elementor-widget-shortcode .gp-banner-link,
  body .gp-banner,
  body .gp-banner picture,
  body .gp-banner img,
  body .gp-banner-link,
  html body .elementor .elementor-widget-shortcode .gp-banner,
  html body .elementor .elementor-widget-shortcode .gp-banner picture,
  html body .elementor .elementor-widget-shortcode .gp-banner img,
  html body .elementor .elementor-widget-shortcode .gp-banner-link,
  html body .gp-banner,
  html body .gp-banner picture,
  html body .gp-banner img,
  html body .gp-banner-link {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    left: auto !important;
    transform: none !important;
  }
  .gp-banner img {
    height: auto !important;
    object-fit: cover !important;
  }
}

/* Submeniu desktop */
@media (min-width:769px){
  .main-navigation li{position:relative}
  .main-navigation > ul > li > ul{position:absolute;left:50%;transform:translateX(-50%);top:100%;background:var(--base-3);border:1px solid #eee;border-radius:10px;min-width:220px;box-shadow:0 12px 32px rgba(0,0,0,.08);padding:6px 0;display:none;z-index:50}
  .main-navigation > ul > li:hover > ul,
  .main-navigation > ul > li:focus-within > ul{display:block}
  .main-navigation ul ul li{white-space:nowrap}
  .main-navigation ul ul a{display:block;padding:10px 14px}
}

@keyframes navSlide{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}

/* ===== BLOG ARCHIVE ===== */
.site-content:has(.gp-blog-archive),.site-content:has(.gp-single-post-wrap),.site-content:has(.gp-products-archive){max-width:100%!important;width:100%!important;box-sizing:border-box;padding-left:0!important;padding-right:0!important}
.gp-products-archive{width:100%;max-width:100%;box-sizing:border-box}
.gp-blog-archive,.gp-single-post-wrap{width:100%;max-width:100%;box-sizing:border-box}
.gp-blog-archive .gp-container{max-width:1200px;width:100%;margin:0 auto;padding:0 24px;box-sizing:border-box}
.gp-blog-archive{background:linear-gradient(180deg,#e8f4fc 0%,#f0f8ff 18%,#f8fafc 45%);min-height:100vh;padding:56px 0 64px}
.gp-blog-archive .gp-archive-header{text-align:center;margin-bottom:52px;padding-bottom:36px;border-bottom:2px solid rgba(1,158,226,.15)}
.gp-blog-archive .gp-archive-title{font-family:Roboto,sans-serif;font-weight:700;font-size:48px;letter-spacing:-.02em;line-height:1.1;color:var(--gp-brand);margin:0 0 12px;text-shadow:0 1px 2px rgba(0,0,0,.04)}
.gp-blog-archive .gp-archive-description{font-family:Roboto,sans-serif;font-size:18px;line-height:1.5;color:#64748b;max-width:520px;margin:0 auto}
.gp-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;width:100%}
.gp-post-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.06),0 0 0 1px rgba(0,0,0,.04);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.gp-post-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(1,158,226,.14),0 0 0 1px rgba(1,158,226,.08)}
.gp-post-card-link{text-decoration:none;color:inherit;display:block}
.gp-post-card-image{aspect-ratio:16/10;width:100%;overflow:hidden;background:linear-gradient(145deg,#bae6fd 0%,#e0f2fe 50%,#f1f5f9 100%)}
.gp-post-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.gp-post-card:hover .gp-post-card-img{transform:scale(1.06)}
.gp-post-card-no-image{display:flex;align-items:center;justify-content:center;color:#64748b;font-size:.875rem}
.gp-post-card-body{padding:28px 26px}
.gp-post-card-title{font-family:Roboto,sans-serif;font-weight:600;font-size:1.25rem;line-height:1.35;color:#0f172a;margin:0 0 12px;transition:color .2s}
.gp-post-card-link:hover .gp-post-card-title{color:var(--gp-brand)}
.gp-post-card-excerpt{font-size:15px;line-height:1.6;color:#64748b;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.gp-post-card-more{font-size:.9375rem;font-weight:600;color:var(--gp-brand);display:inline-flex;align-items:center;gap:8px}
.gp-post-card-more::after{content:"";width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .2s}
.gp-post-card-link:hover .gp-post-card-more::after{transform:rotate(-45deg) translate(2px,-2px)}
/* Paginare: în afara gridului în home.php — bloc centrat, spațiu clar față de carduri */
.gp-blog-archive .gp-posts-grid{margin-bottom:0}
.gp-blog-archive .gp-blog-pagination-wrap{
  width:100%;
  max-width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  margin-top:clamp(2.75rem,6vw,4.25rem);
  padding-top:clamp(1.25rem,3vw,2rem);
  clear:both;
  box-sizing:border-box;
}
.gp-blog-archive .navigation.pagination,
.gp-blog-archive nav.navigation.pagination,
.gp-blog-archive nav.paging-navigation{
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  max-width:100%;
  margin:0 auto;
  padding:0;
  clear:both;
  box-sizing:border-box;
}
.gp-blog-archive .navigation.pagination .nav-links,
.gp-blog-archive nav.paging-navigation .nav-links{
  display:flex!important;
  flex-wrap:wrap;
  justify-content:center;
  align-items:stretch;
  gap:10px;
  width:100%;
  max-width:100%;
  margin:0 auto;
  padding:0;
  list-style:none;
}
.gp-blog-archive .nav-links a,.gp-blog-archive .nav-links span.page-numbers:not(.dots){padding:12px 20px;border-radius:10px;text-decoration:none;color:#475569;border:1px solid #e2e8f0;transition:all .2s;font-weight:500;display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:3rem;box-sizing:border-box}
.gp-blog-archive .nav-links a.prev,.gp-blog-archive .nav-links a.next{padding:12px 14px;min-width:2.75rem}
.gp-blog-archive .gp-pagination-arrow{font-size:1.125rem;line-height:1.35;font-weight:600;display:inline-flex;align-items:center;justify-content:center}
.gp-blog-archive .nav-links span.page-numbers.dots{padding:12px 8px;border:none;min-width:auto;color:#94a3b8;align-self:center}
.gp-blog-archive .nav-links a:hover,.gp-blog-archive .nav-links span.page-numbers.current{background:var(--gp-brand);color:#fff;border-color:var(--gp-brand)}
@media (max-width:1024px){
  .gp-posts-grid{grid-template-columns:repeat(2,1fr);gap:28px}
}
@media (max-width:768px){
  .gp-blog-archive .gp-archive-title{font-size:34px}
  .gp-blog-archive .gp-archive-header{margin-bottom:36px;padding-bottom:28px}
  .gp-posts-grid{grid-template-columns:1fr;gap:24px}
  .gp-blog-archive .gp-container{padding:0 20px}
  .gp-blog-archive .navigation.pagination .nav-links,.gp-blog-archive nav.paging-navigation .nav-links{gap:8px;row-gap:10px}
  .gp-blog-archive .nav-links a,.gp-blog-archive .nav-links span.page-numbers:not(.dots){padding:10px 16px;font-size:15px;min-width:2.5rem;min-height:2.75rem}
  .gp-blog-archive .nav-links a.prev,.gp-blog-archive .nav-links a.next{padding:10px 12px;min-width:2.5rem;min-height:2.75rem}
  .gp-blog-archive .gp-pagination-arrow{font-size:1.0625rem}
  .gp-blog-archive .gp-blog-pagination-wrap{margin-top:clamp(2.25rem,5vw,3.5rem);padding-top:clamp(1rem,2.5vw,1.5rem)}
}
@media (max-width:480px){
  .gp-blog-archive .navigation.pagination .nav-links,.gp-blog-archive nav.paging-navigation .nav-links{gap:6px;justify-content:center}
  .gp-blog-archive .nav-links a,.gp-blog-archive .nav-links span.page-numbers:not(.dots){padding:8px 12px;font-size:14px;min-width:2.25rem;min-height:2.5rem;border-radius:8px}
  .gp-blog-archive .nav-links a.prev,.gp-blog-archive .nav-links a.next{padding:8px 10px;min-width:2.5rem;min-height:2.5rem;touch-action:manipulation}
  .gp-blog-archive .nav-links span.page-numbers.dots{padding:8px 4px}
}

/* ===== SINGLE POST ===== */
.gp-single-post-wrap .gp-container{max-width:1200px;width:100%;margin:0 auto;padding:0 16px;box-sizing:border-box}
.gp-single-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:clamp(24px,4vw,40px);align-items:start;width:100%}
.gp-single-main{min-width:0}
/* Sub top-bar sticky: offset ca sidebar-ul să nu se lipească de bară la scroll */
.gp-single-sidebar{
  display:flex;
  flex-direction:column;
  gap:20px;
  position:sticky;
  --gp-topbar-sticky-h:52px;
  top:calc(var(--gp-topbar-sticky-h) + 16px);
  z-index:10;
}
body.admin-bar .gp-single-sidebar{top:calc(32px + var(--gp-topbar-sticky-h) + 16px)}
@media screen and (max-width:782px){
  body.admin-bar .gp-single-sidebar{top:calc(46px + var(--gp-topbar-sticky-h) + 16px)}
}
.gp-single-widget{background:#fff;border-radius:14px;box-shadow:0 4px 20px rgba(0,0,0,.06),0 0 0 1px rgba(0,0,0,.04);padding:20px 18px}
.gp-single-widget-title{font-family:Roboto,sans-serif;font-size:1rem;font-weight:700;color:#0f172a;margin:0 0 14px;padding:0 0 10px;border-bottom:1px solid #f1f5f9}
/* Sidebar spotlight — același limbaj vizual ca .gp-product-card (catalog): umbră, 5/4, badge pe imagine */
.gp-sidebar-spotlight{
  background:#fff;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 4px 6px -1px rgba(0,0,0,.1);
  box-sizing:border-box;
  transition:box-shadow .2s ease;
}
.gp-sidebar-spotlight:hover{box-shadow:0 6px 12px -2px rgba(0,0,0,.1)}
.gp-spotlight-card{
  display:block;
  text-decoration:none;
  color:inherit;
  outline:none;
}
.gp-spotlight-card:focus-visible{outline:2px solid var(--gp-brand);outline-offset:2px}
.gp-spotlight-product-image{
  position:relative;
  aspect-ratio:5/4;
  width:100%;
  overflow:hidden;
  background:#f1f5f9;
}
.gp-spotlight-img{width:100%;height:100%;object-fit:cover;display:block}
.gp-spotlight-no-image{
  height:100%;
  min-height:140px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#64748b;
  font-size:.875rem;
}
.gp-spotlight-product-category{
  position:absolute;
  right:12px;
  bottom:12px;
  left:auto;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin:0;
  justify-content:flex-end;
}
.gp-sidebar-spotlight .gp-category-label{
  display:inline-flex;
  align-items:center;
  background:rgba(var(--gp-brand-rgb),.1);
  border:1px solid rgba(var(--gp-brand-rgb),.25);
  color:var(--gp-brand);
  border-radius:999px;
  font-size:.8125rem;
  font-weight:600;
  padding:.45rem 1rem;
  letter-spacing:.02em;
  text-decoration:none;
}
.gp-spotlight-product-info{padding:20px 24px 16px}
.gp-spotlight-title{
  font-family:Roboto,sans-serif;
  font-size:clamp(1.125rem,2vw,1.35rem);
  font-weight:600;
  line-height:1.25;
  color:var(--gp-brand);
  margin:0 0 12px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.gp-spotlight-eyebrow{display:block;margin:0 0 8px;font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gp-brand)}
.gp-spotlight-hook{
  margin:0;
  font-size:.8125rem;
  font-weight:500;
  line-height:1.45;
  color:#64748b;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.gp-spotlight-catalog-btn{
  display:block;
  margin:0;
  padding:12px 16px 14px;
  font-size:.8125rem;
  font-weight:600;
  color:#fff;
  text-decoration:none;
  text-align:center;
  background:var(--gp-brand);
  border-top:1px solid rgba(255,255,255,.2);
  box-sizing:border-box;
  transition:background .15s ease,color .15s ease;
}
.gp-spotlight-catalog-btn:hover{background:var(--gp-brand-dark);color:#fff}
.gp-spotlight-catalog-btn:focus-visible{outline:2px solid #fff;outline-offset:-2px}
/* CTA sidebar — fundal uniform, fără gradient */
.gp-contact-block--sidebar{background:var(--gp-brand);border-radius:16px;padding:22px 24px 24px;box-shadow:0 8px 24px rgba(var(--gp-brand-rgb),.22);overflow:hidden;position:relative;border:1px solid rgba(0,0,0,.06)}
.gp-contact-block--sidebar .gp-contact-inner.gp-contact-inner--sidebar{
  max-width:none;
  margin:0;
  width:100%;
  padding:0;
  box-sizing:border-box;
  position:relative;
  z-index:1;
}
/* Titlu aliniat la .gp-spotlight-title (card produs de deasupra) */
.gp-contact-block--sidebar .gp-contact-headline{font-family:Roboto,sans-serif;font-weight:600;font-size:clamp(1.125rem,2vw,1.35rem);line-height:1.25;color:#fff;margin:0 0 12px;letter-spacing:-.02em}
.gp-contact-block--sidebar .gp-contact-subtext{font-size:.875rem;line-height:1.5;color:rgba(255,255,255,.95);margin:0 0 16px;opacity:.98}
.gp-contact-block--sidebar .gp-contact-form-wrap{margin-top:0}
.gp-contact-block--sidebar .gp-contact-fallback{font-size:.9375rem;color:#fff;margin:0;line-height:1.5}
.gp-contact-block--sidebar .gp-contact-phone{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.gp-contact-block--sidebar .gp-contact-phone:hover{color:#e0f2fe}
.gp-contact-block--sidebar .gp-lead{max-width:100%;position:relative}
/* Evită grid-ul global 3 col + stretch care întinde câmpurile pe toată înălțimea */
.gp-contact-block--sidebar .gp-lead-inline{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;gap:10px!important;align-items:stretch!important;grid-template-columns:none!important;min-height:0!important}
.gp-contact-block--sidebar .gp-lead-inline > .gp-lead-input,
.gp-contact-block--sidebar .gp-lead input[type="text"],
.gp-contact-block--sidebar .gp-lead input[type="tel"]{width:100%!important;min-width:0!important;flex:0 0 auto!important;height:48px!important;min-height:48px!important;max-height:48px!important;padding:10px 14px!important;line-height:1.25!important;resize:none!important;-webkit-appearance:none;appearance:none;border:0;border-radius:10px;background:#fff;color:#1e293b;font-size:.9375rem;box-sizing:border-box;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.gp-contact-block--sidebar .gp-lead-input::placeholder{color:#64748b}
.gp-contact-block--sidebar .gp-lead-input:focus,
.gp-contact-block--sidebar .gp-lead input[type="text"]:focus,
.gp-contact-block--sidebar .gp-lead input[type="tel"]:focus{outline:2px solid rgba(255,255,255,.85);outline-offset:2px}
.gp-contact-block--sidebar .gp-lead-btn{width:100%!important;flex:0 0 auto!important;min-height:48px!important;height:auto!important;max-height:none!important;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:0;border-radius:10px;background:#e4002b;color:#fff;font-size:.9375rem;font-weight:700;cursor:pointer;transition:background .2s;box-shadow:0 4px 14px rgba(228,0,43,.35)}
@media (min-width:769px){
  .gp-contact-block--sidebar .gp-lead-inline{display:flex!important;flex-direction:column!important;grid-template-columns:unset!important}
}
.gp-contact-block--sidebar .gp-lead-btn:hover{background:#c20024;color:#fff}
.gp-contact-block--sidebar .gp-lead-msg{color:rgba(255,255,255,.95);font-size:.8125rem;margin-top:8px;min-height:1.2em}
.gp-contact-block--sidebar .gp-lead-thanks{
  width:100%;max-width:100%;box-sizing:border-box;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);border-radius:12px;padding:16px 18px;color:#fff;
  box-shadow:0 4px 20px rgba(0,0,0,.12);text-align:left;align-items:center;
}
.gp-contact-block--sidebar .gp-lead-thanks-text{flex:1;min-width:0}
.gp-contact-block--sidebar .gp-lead-thanks-icon{background:#fff;color:#059669;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.gp-contact-block--sidebar .gp-lead-thanks-text{font-size:.9375rem;font-weight:600;line-height:1.4;color:#fff}
.gp-contact-block--sidebar .gp-lead-btn--loading::after{border-color:rgba(255,255,255,.35);border-top-color:#fff}
.gp-contact-block--sidebar .gp-lead-btn .gp-lead-btn-icon{display:inline-flex;align-items:center}
.gp-contact-block--sidebar .gp-lead-btn svg{width:14px;height:14px;fill:currentColor}
.gp-single-more-posts{list-style:none;margin:0;padding:0}
.gp-single-more-posts li{margin:0;padding:0;border-bottom:1px solid #f1f5f9}
.gp-single-more-posts li:last-child{border-bottom:0}
.gp-single-more-link{display:block;padding:10px 0;font-size:.9375rem;font-weight:500;color:#334155;text-decoration:none;line-height:1.4;transition:color .2s}
.gp-single-more-link:hover{color:var(--gp-brand)}
.gp-single-post-wrap{background:#f0f7fc;min-height:100vh;padding:56px 0 72px}
.gp-single-post{background:#fff;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.08),0 0 0 1px rgba(0,0,0,.04);overflow:hidden;max-width:100%;margin:0 auto}
.gp-single-post-inner{padding:0 0 0}
.gp-single-post-header{padding:0 0 0}
/* Featured image: raport natural al fișierului, fără crop (fără max-height / cover) */
.gp-single-post-thumb{width:100%;margin-bottom:0;background:#e8f0f8;line-height:0}
.gp-single-post-img{width:100%;max-width:100%;height:auto;display:block;vertical-align:top}
.gp-single-post-title{font-family:Roboto,sans-serif;font-weight:700;font-size:clamp(1.75rem,4vw,2.5rem);letter-spacing:-.02em;line-height:1.25;color:#0f172a;margin:0 0 12px;padding:36px 28px 0}
.gp-single-post-title+.gp-single-post-meta{padding-top:0}
.gp-single-post-meta{font-size:.9375rem;color:#64748b;padding:0 28px 16px;border-bottom:1px solid #f1f5f9}
.gp-single-post-meta time{margin-right:16px}
.gp-single-post-content{padding:18px 28px 0;font-family:Roboto,sans-serif;font-size:18px;line-height:1.75;color:#334155}
.gp-single-post-content > *:first-child{margin-top:0!important}
.gp-single-post-content p:first-child{margin-top:0}
.gp-single-post-content p:last-child{margin-bottom:0}
.gp-single-post-content a{color:var(--gp-brand);text-decoration:underline;text-underline-offset:3px}
.gp-single-post-content a:hover{color:var(--gp-brand-dark)}
.gp-single-post-content h2,.gp-single-post-content h3{margin:1.85em 0 .55em;color:#0f172a;font-weight:600;font-size:1.4rem}
.gp-single-post-content h2{padding-top:.35em;border-top:2px solid #f1f5f9;}
.gp-single-post-nav{padding:0 28px 40px;border-top:1px solid #f1f5f9;margin-top:36px}
.gp-single-post-nav .post-navigation{margin:0;padding:28px 0 0;width:100%}
.gp-single-post-nav .nav-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;align-items:stretch;margin:0;padding:0}
.gp-single-post-nav .nav-links > .nav-previous:only-child,.gp-single-post-nav .nav-links > .nav-next:only-child{grid-column:1/-1}
.gp-single-post-nav .nav-previous,.gp-single-post-nav .nav-next{margin:0!important;min-width:0;width:100%}
.gp-single-post-nav .nav-links a{display:flex!important;align-items:center;width:100%;min-height:3.25rem;padding:12px 16px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;text-decoration:none;color:#0f172a;font-size:.9375rem;font-weight:600;line-height:1.35;transition:background .2s,border-color .2s,color .2s,box-shadow .2s;box-sizing:border-box;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.gp-single-post-nav .nav-links .nav-previous a{justify-content:flex-start;text-align:left}
.gp-single-post-nav .nav-links .nav-next a{justify-content:flex-end;text-align:right}
.gp-single-post-nav .nav-links a:hover{background:#f8fafc;border-color:var(--gp-brand);color:var(--gp-brand);box-shadow:0 4px 16px rgba(var(--gp-brand-rgb),.12)}
.gp-single-post-nav .gp-single-nav-inner{display:inline-flex;align-items:center;gap:10px;max-width:100%;min-width:0}
.gp-single-post-nav .gp-single-nav-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;min-width:0}
.gp-single-post-nav .gp-single-nav-arrow{flex-shrink:0;font-size:1.125rem;font-weight:700;line-height:1;color:var(--gp-brand)}
@media (max-width:1024px){
  .gp-single-layout{grid-template-columns:1fr}
  .gp-single-sidebar{position:static;top:auto;z-index:auto}
  body.admin-bar .gp-single-sidebar{top:auto}
}
@media (max-width:768px){
  .gp-single-post-wrap .gp-container{padding:0 16px}
  .gp-single-post-title,.gp-single-post-meta,.gp-single-post-content,.gp-single-post-nav{padding-left:20px;padding-right:20px}
  .gp-single-post-title{padding-top:28px;font-size:1.6rem}
  .gp-single-post-content{padding-top:16px}
  .gp-single-post-meta{padding-bottom:22px}
  .gp-single-post-nav{margin-top:28px;padding-bottom:32px;padding-top:0}
  .gp-single-post-nav .nav-links{grid-template-columns:1fr}
  .gp-single-post-nav .nav-links .nav-previous a,.gp-single-post-nav .nav-links .nav-next a{justify-content:flex-start;text-align:left}
}

.entry-content {
  margin-top: 0px !important;
}