/* =========================================================
   Paletă, tipografie & setup
   ========================================================= */
:root{
  --paper:#ffffff;
  --ink:#0f1820;
  --muted:#5f7483;
  --line:#e7edf2;
  --accent:#ff7a1a;
  --accent-2:#2db6c7;
  --shadow: 0 14px 50px rgba(10,20,30,.15);
  --radius: 18px;
  --container: min(1180px, 92vw);

  --h1: clamp(2.1rem, 2.5vw + 1.4rem, 3.4rem);
  --h2: clamp(1.6rem, 1.5vw + 1rem, 2.2rem);
  --h3: clamp(1.15rem, .8vw + .9rem, 1.35rem);
  --p: clamp(1rem, .35vw + .9rem, 1.12rem);

  --header-h: 70px;
  --logo-base-h: 60px;
  --logo-scale: 3.2;

  --cert-bg:#f6f7f9;
  --cert-ink:#0f172a;
  --cert-ring:rgba(0,0,0,.08);
  --cert-shadow:0 10px 30px rgba(0,0,0,.12);

  --footer-logo: 64px;
}

*{ box-sizing:border-box; margin:0; padding:0 }
html,body{ height:100% }
html{
  overflow-x: clip;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-h) + 18px);
}
body{
  overflow-x: hidden;
  font-family: Poppins, Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--ink);
  background:
    radial-gradient(800px 500px at 110% 10%, rgba(45,182,199,.08) 0%, transparent 60%),
    radial-gradient(700px 500px at -10% 0%, rgba(255,122,26,.08) 0%, transparent 60%),
    #f7fafc;
  line-height:1.7;
  padding-top: var(--header-h);
}

img{ display:block; max-width:100%; height:auto }
a{ color:inherit; text-decoration:none }

.container{
  width: var(--container);
  margin: 0 auto;
  max-width: 100%;
}

/* =========================================================
   Butoane
   ========================================================= */
.btn{
  display:inline-block; font-weight:700; letter-spacing:.2px;
  padding:.9rem 1.2rem; border-radius:999px;
  background: linear-gradient(135deg, var(--accent), #ff9d55);
  color:#111; box-shadow: var(--shadow);
  transition: transform .15s ease, filter .2s ease;
}
.btn:hover{ transform: translateY(-2px); filter: brightness(1.03) }
.btn.small{ padding:.6rem .9rem; font-size:.95rem }

/* =========================================================
   Secțiuni
   ========================================================= */
.section{ padding: clamp(48px, 6vw, 90px) 0 }
.section-title{
  font-size: var(--h2); text-align:center;
  margin-bottom: clamp(22px, 2.6vw, 38px);
  position:relative; display:inline-block;
  left:50%; transform:translateX(-50%);
}
.section-title.pop-in{ animation: pop .6s ease both }
@keyframes pop{
  from{opacity:0; transform:translateX(-50%) scale(.96)}
  to{opacity:1; transform:translateX(-50%) scale(1)}
}

/* =========================================================
   HEADER
   ========================================================= */
.site-header{
  position: fixed; top:0; left:0; right:0;
  height: var(--header-h);
  z-index: 9999;
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--line);
}
.hdr{ height:100%; display:flex; align-items:center; gap: 16px; }
.logo{ display:flex; align-items:center; gap:.6rem; font-weight:700 }
.logo img{ width:40px; height:40px }
.logo span{ font-size:1.1rem }

.primary-nav{ margin-left:auto; position:relative; display:flex; align-items:center }
.primary-nav ul{ list-style:none; display:flex; align-items:center; gap:1rem; }
.primary-nav li a{
  padding:.45rem .65rem; border-radius:10px; color:#0d1a22; white-space:nowrap;
}
.primary-nav li a:hover,
.primary-nav li a.active{ background:#f1f6fa }

/* Hamburger */
#nav-toggle{ display:none }
.hamburger{ display:none; cursor:pointer; padding:.3rem .2rem; border-radius:8px; margin-left:.4rem }
.hamburger span{
  display:block; width:26px; height:2px; background:#0d1a22; margin:6px 0;
  transition: transform .3s ease, opacity .3s ease;
}

/* =========================================================
   HERO / SLIDER (cu <picture>) — FIX critic
   ========================================================= */
.hero{ position:relative; }
.slider{
  position:relative;
  width:100%;
  height: min(calc(100vh - var(--header-h)), 720px);
  overflow:hidden;
  background:#0e1419;
  border-bottom:1px solid var(--line);
}
@supports (height: 100svh){
  .slider{ height: min(calc(100svh - var(--header-h)), 720px); }
}
@supports (height: 100dvh){
  .slider{ height: min(calc(100dvh - var(--header-h)), 720px); }
}
.slide{
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity .7s ease;
}
.slide.active{ opacity:1; z-index:1; }
/* Imaginea din <picture> acoperă 100% */
.slide picture,
.slide img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
/* overlay + caption */
.overlay{ position:absolute; inset:0; background:rgba(0,0,0,.45); z-index:1; }
.caption{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  z-index:2; color:#fff; text-align:center; max-width:880px; padding:1rem;
}
.caption h1{ font-size: var(--h1); margin-bottom:1rem; text-shadow:0 4px 18px rgba(0,0,0,.6) }
.caption .btn{ font-size:1rem }
/* săgeți */
.slider-btn{
  position:absolute; top:50%; transform:translateY(-50%);
  width:48px; height:48px; border-radius:50%; border:none;
  background: rgba(0,0,0,0.4); color:#fff; font-size:1.8rem; cursor:pointer;
  z-index:3; transition:background .2s ease;
}
.slider-btn:hover{ background: rgba(0,0,0,0.65) }
.slider-btn.prev{ left:15px } .slider-btn.next{ right:15px }

/* Bandă info sub hero */
.hero-belt{
  display:grid; grid-template-columns:repeat(3,1fr); gap:10px;
  margin:14px auto 0 auto;
}
.belt-item{
  background:#fff; border:1px solid var(--line); border-radius:14px;
  padding:.7rem .9rem; box-shadow:var(--shadow);
  display:flex; align-items:center; gap:.5rem; font-weight:600;
}
.belt-item .dot{ width:8px; height:8px; border-radius:50%; background:var(--accent) }

/* =========================================================
   Servicii
   ========================================================= */
.service-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; isolation:isolate; }
.service-card{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius);
  overflow:hidden; box-shadow:var(--shadow); position:relative;
  transition: transform .25s ease, box-shadow .25s ease;
  -webkit-tap-highlight-color:transparent; user-select:none; cursor:pointer;
}
.service-card:hover{ transform: translateY(-6px) scale(1.02); box-shadow: 0 14px 30px rgba(0,0,0,.25); }
.service-card:focus-within{ outline:2px solid #ff9d55; outline-offset:2px; }
.service-card .thumb img{ width:100%; height:220px; object-fit:cover }
.service-card .body{ padding:18px }
.service-card h3{ font-size:var(--h3); margin-bottom:.35rem }
.service-card p{ color:var(--muted); font-size:var(--p) }
.service-card .hint-more{ display:block; margin-top:.4rem; font-size:.85rem; color: var(--accent); font-weight:600; }
.service-card:hover .hint-more{ text-decoration: underline; }
/* prevenim „click pierdut” pe mobil */
.service-card .thumb, .service-card .thumb img{ pointer-events:none; }

/* =========================================================
   Încredere / Recomandări
   ========================================================= */
.trust{
  background: linear-gradient(-5deg, transparent 0%, transparent 45%, rgba(255,122,26,.08) 45.1%, transparent 100%);
}
.trust-wrap{ display:grid; grid-template-columns:1.05fr .95fr; gap:28px; align-items:center }
.trust-copy p{ color:var(--muted); margin:.5rem 0 }
.trust-stats{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px }
.stat{ background:#fff; border:1px solid var(--line); border-radius:16px; text-align:center; padding:22px; box-shadow:var(--shadow); }
.stat strong{ display:block; font-size: clamp(1.7rem, 2.6vw + .6rem, 2.8rem) }
.stat span{ color:var(--muted) }
.reco-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px }
.reco{ background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px; box-shadow:var(--shadow) }
.reco h3{ font-size:1.06rem; margin-bottom:.35rem }
.reco p{ color:var(--muted) }

/* =========================================================
   Footer
   ========================================================= */
.site-footer{ margin-top:28px; background:#fff; border-top:1px solid var(--line); color:var(--ink) }
.footer-grid{ display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:22px; padding:26px 0 }
.foot-brand img{ width:var(--footer-logo); height:var(--footer-logo); margin-bottom:.55rem }
.foot-brand small{ display:block; color:var(--muted) }
.foot-dept h4, .foot-contact h4{ margin-bottom:.4rem }
.foot-dept ul{ list-style:none; display:grid; gap:.25rem }
.foot-dept a{ color:#0f1820; text-decoration:underline dotted transparent }
.foot-dept a:hover{ text-decoration-color:#0f1820 }
.foot-contact p{ color:var(--muted); margin:.2rem 0 }
.foot-contact .btn.small{ margin-top:.3rem }
.legal{ border-top:1px solid var(--line); text-align:center; padding:12px 0; color:var(--muted) }
.social{ list-style:none; display:flex; gap:10px; margin:10px 0 0; padding:0; }
.icon-btn{ display:inline-grid; place-items:center; width:36px; height:36px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.icon{ width:18px; height:18px; fill:#0f1820; opacity:.85 }
.icon-btn:hover .icon{ opacity:1 }
.dept-list{ list-style:none; padding:0; margin:0; display:grid; gap:.35rem; }
.dept-list .wa{ display:inline-grid; place-items:center; margin-left:.4rem; width:26px; height:26px; border-radius:6px; background:#25D3661a; border:1px solid #25D36655; }
.wa-icon{ width:15px; height:15px; fill:#25D366; }

/* =========================================================
   CERTIFICATE (grid + viewer PDF)
   ========================================================= */
.certificates-section{ padding: clamp(28px, 5vw, 56px) 0; }
.certificates-section .section-title{ margin-bottom:14px; }
.cert-list{ list-style:none; margin:0; padding:6px; display:flex; flex-wrap:wrap; gap:18px; justify-content:center; }
.cert-item{ flex:0 1 280px; max-width:320px; }
.cert-card{
  width:100%; aspect-ratio:210/297; background:#fff;
  border:1px solid var(--cert-ring); border-radius:16px;
  box-shadow:var(--cert-shadow); overflow:hidden; position:relative;
  display:flex; align-items:center; justify-content:center; cursor:pointer;
  transition: transform .2s ease, box-shadow .2s ease;
}
.cert-card:hover{ transform:translateY(-2px); box-shadow:0 16px 40px rgba(0,0,0,.16) }
.cert-thumb{ width:100%; height:100%; display:block; object-fit:contain; background:var(--cert-bg); }
.cert-label{
  position:absolute; left:10px; right:10px; bottom:10px;
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.9));
  border-radius:10px; padding:8px 10px; font-weight:600; text-align:center; color:#0b1220; font-size:13px;
}

/* =========================================================
   Header: logo mărit fără să crească headerul
   ========================================================= */
.site-header{ height: var(--header-h) !important; overflow: visible; }
.container.hdr{ gap: clamp(28px, 8vw, 220px) !important; }
.site-header .logo img{
  height: var(--logo-base-h) !important;
  width:auto !important;
  transform: scale(var(--logo-scale));
  transform-origin: left center;
  will-change: transform;
  display:block;
}

/* =========================================================
   POP-OUT Servicii (stiluri complete)
   ========================================================= */
#service-popout{
  position: relative;
  margin-top: 16px;
  border-radius: 20px;
  overflow: hidden;
  scroll-margin-top: calc(var(--header-h) + 18px);
}
#service-popout .backdrop{
  position: relative;
  min-height: 340px;
  background-size: cover;
  background-position: center;
  border-radius: inherit;
  overflow: hidden;
}
#service-popout .backdrop::after{
  content: "";
  position: absolute; inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 1; pointer-events: none;
}
#service-popout .inner{
  position: absolute; inset: 0; z-index: 2;
  display: grid; place-items: center;
  text-align: center; color: #fff;
  padding: 24px 20px 32px;
}
#service-popout h3{
  margin: 0 0 8px 0;
  font-weight: 700;
  font-size: clamp(1.2rem,1.2vw+1rem,1.6rem);
  text-shadow: 0 3px 10px rgba(0,0,0,.6);
}
#service-popout p{
  margin: 0; max-width: 900px; color: #f8fafc;
  text-shadow: 0 2px 8px rgba(0,0,0,.55);
}
#service-popout .actions{ margin-top:12px; display:flex; justify-content:center; gap:10px; flex-wrap:wrap; }
#service-popout .close{
  position: absolute; top: 12px; right: 12px; z-index: 3;
  width: 38px; height: 38px; border-radius: 10px;
  border: 1px solid rgba(255,255,255,.4);
  background: rgba(0,0,0,.35); color: #fff; cursor:pointer;
}
#service-popout .close:hover{ background: rgba(0,0,0,.55); }

/* Mobil: scroll plăcut dacă textul e lung */
@media (max-width:1024px){
  #service-popout{ max-height: 80vh; overflow-y:auto; -webkit-overflow-scrolling:touch; }
}

/* =========================================================
   MEDIA QUERIES
   ========================================================= */
@media (max-width:480px){
  .slider{ height: min(calc(100svh - var(--header-h)), 560px); }
  .caption{
    top:48%; transform:translate(-50%,-48%);
    width:92vw; padding:.6rem .8rem;
  }
  .caption h1{ font-size: clamp(1.2rem, 5.4vw + .55rem, 1.9rem); line-height: 1.15; text-wrap: balance; }
  .slider-btn{ width:40px; height:40px; font-size:1.35rem; }

  .hero-belt{ grid-template-columns:1fr }
  .service-grid{ grid-template-columns:1fr }
  .trust-wrap{ grid-template-columns:1fr }
  .trust-stats{ grid-template-columns:1fr 1fr }
  .reco-grid{ grid-template-columns:1fr }
  .footer-grid{ grid-template-columns:1fr }
  :root{ --logo-scale: 3; --logo-base-h: 44px; --footer-logo: 90px; }
  #service-popout .backdrop{ min-height:260px; }
}
@media (max-height:500px) and (max-width:900px){
  .slider{ height: min(calc(100svh - var(--header-h)), 640px); }
  .caption h1{ font-size: clamp(1.4rem, 3vw + 1rem, 2rem) }
  .service-grid{ grid-template-columns:repeat(2,1fr) }
}
@media (min-width:481px) and (max-width:768px){
  .service-grid{ grid-template-columns:repeat(2,1fr) }
  .trust-wrap{ grid-template-columns:1fr }
  .trust-stats{ grid-template-columns:repeat(3,1fr) }
  .reco-grid{ grid-template-columns:repeat(2,1fr) }
  .footer-grid{ grid-template-columns:1fr 1fr }
}
@media (min-width:769px) and (max-width:1024px){
  .service-grid{ grid-template-columns:repeat(3,1fr) }
  .trust-wrap{ grid-template-columns:1fr 1fr }
  .trust-stats{ grid-template-columns:repeat(3,1fr) }
  .reco-grid{ grid-template-columns:repeat(4,1fr) }
}
@media (max-width: 768px){
  .footer-grid{
    grid-template-columns: 1fr;
    grid-template-areas:"brand" "dept" "contact";
    gap: 16px; text-align: center; padding: 26px 0;
  }
  .foot-brand   { grid-area: brand; }
  .foot-dept    { grid-area: dept; }
  .foot-contact { grid-area: contact; }
  .foot-brand img{ margin: 0 auto .5rem; }
  .foot-dept ul{ list-style:none; margin:0 auto; padding:0; width:max-content; text-align:left; }
  .social{ justify-content:center; margin-top:8px; }

  .hero-belt{ grid-template-columns: 1fr; }
  .hero-belt .belt-item.long{
    min-width: 0 !important; width: 100%;
    white-space: normal; overflow-wrap: anywhere;
    padding-left: .9rem; padding-right: .9rem;
  }

  .hamburger{ display:block }
  .primary-nav ul{
    position:absolute; right:0; top: calc(var(--header-h));
    background:#fff; border:1px solid var(--line); border-radius:12px;
    padding:10px; box-shadow: var(--shadow);
    flex-direction:column; gap:.25rem; display:none; min-width: 220px;
  }
  #nav-toggle:checked ~ ul{ display:flex }
  #nav-toggle:checked + .hamburger span:nth-child(1){ transform: translateY(8px) rotate(45deg) }
  #nav-toggle:checked + .hamburger span:nth-child(2){ opacity:0 }
  #nav-toggle:checked + .hamburger span:nth-child(3){ transform: translateY(-8px) rotate(-45deg) }

  #service-popout .inner{ max-height:70vh; overflow-y:auto; }
}
@media (min-width:1025px){
  #service-popout .inner{
    position:relative; inset:auto; display:grid; place-items:center;
    max-height:none !important; overflow:visible !important; padding:24px 24px 28px;
  }
}
/* =========================================================
   SEO Text
   ========================================================= */
.seo-text {
  padding: 60px 20px;
  background: linear-gradient(135deg, #16323c, #1d3f4b);
  color: #f3f8fa;
  text-align: center;
}
.seo-text h2 {
  font-size: clamp(1.6rem, 2.5vw, 2rem);
  margin-bottom: 20px;
  color: #e2c483;   /* auriu brand */
  font-weight: 700;
}
.seo-text p {
  max-width: 900px;
  margin: 0 auto 15px auto;
  font-size: 1.05rem;
  line-height: 1.8;
}
.seo-text strong {
  color: #e2c483;
  font-weight: 600;
}
/* ===== CERTIFICATE (grid + viewer PDF) ===== */
:root{
  --cert-bg:#f6f7f9;
  --cert-ink:#0f172a;
  --cert-ring:rgba(0,0,0,.08);
  --cert-shadow:0 10px 30px rgba(0,0,0,.12);
}

.certificates-section{ padding: clamp(28px, 5vw, 56px) 0; }
.certificates-section .section-title{ margin-bottom:14px; }

.cert-list{
  list-style:none; margin:0; padding:6px;
  display:flex; flex-wrap:wrap; gap:18px; justify-content:center;
}
.cert-item{ flex:0 1 280px; max-width:320px; }

.cert-card{
  width:100%; aspect-ratio:210/297; background:#fff;
  border:1px solid var(--cert-ring); border-radius:16px;
  box-shadow:var(--cert-shadow); overflow:hidden; position:relative;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; transition: transform .2s ease, box-shadow .2s ease;
}
.cert-card:hover{ transform:translateY(-2px); box-shadow:0 16px 40px rgba(0,0,0,.16) }
.cert-thumb{ width:100%; height:100%; display:block; object-fit:contain; background:var(--cert-bg); }
.cert-label{
  position:absolute; left:10px; right:10px; bottom:10px;
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.9));
  border-radius:10px; padding:8px 10px; font-weight:600; text-align:center; color:#0b1220; font-size:13px;
}

/* ===== Modal + Viewer ===== */
.cert-modal{ position:fixed; inset:0; z-index:9999; display:none; }
.cert-modal[aria-hidden="false"]{ display:block }
.cert-backdrop{ position:absolute; inset:0; background:rgba(12,18,32,.6); backdrop-filter: blur(4px); }

.cert-dialog{
  position:relative; width:min(96vw, 1020px);
  margin:clamp(24px, 4vh, 56px) auto;
  background:#fff; border-radius:18px; box-shadow:0 20px 60px rgba(0,0,0,.35);
  display:flex; flex-direction:column; max-height:96vh; overflow:hidden;
}
.cert-close{
  position:absolute; top:10px; right:10px; width:36px; height:36px;
  border-radius:10px; border:1px solid var(--cert-ring); background:#fff; cursor:pointer;
  font-size:22px; line-height:1; color:#111; z-index:3;
}

.viewer-toolbar{
  position:relative; display:flex; align-items:center; justify-content:space-between;
  padding:10px 14px; border-bottom:1px solid var(--cert-ring); background:#f9fafb;
  padding-right:64px; /* loc pentru X */
}
.viewer-left{ display:flex; align-items:center; gap:10px }
.page-indicator{ font-weight:600; font-size:13px; color:#111 }
.nav-btn{ min-width:40px; height:36px; border-radius:10px; border:1px solid var(--cert-ring); background:#fff; cursor:pointer; font-size:20px; }
.nav-btn:disabled{ opacity:.4; cursor:not-allowed }
.download-btn{ display:inline-block; padding:8px 12px; border-radius:10px; border:1px solid var(--cert-ring); background:#fff; text-decoration:none; color:#111; font-weight:600; }

/* Scena + pagini */
.page-stage{ flex:1 1 auto; background:#f3f4f6; padding: clamp(12px, 2vw, 22px); overflow-y:auto; -webkit-overflow-scrolling:touch; }
.page-wrap{ position:relative; width:min(92vw, 900px); margin:0 auto; }
.page-canvas{
  position:absolute; left:0; top:0; width:100% !important; height:auto !important;
  background:#fff; border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.12); backface-visibility:hidden;
}

/* Flip animat */
.flip-forward .page-canvas#pageCurrent{ animation:flipForward 420ms ease forwards; transform-origin:left center; }
.flip-back    .page-canvas#pageCurrent{ animation:flipBack    420ms ease forwards; transform-origin:right center; }
@keyframes flipForward{ 0%{transform:rotateY(0)} 55%{transform:rotateY(-95deg)} 100%{transform:rotateY(-180deg)} }
@keyframes flipBack   { 0%{transform:rotateY(0)} 55%{transform:rotateY(95deg)}  100%{transform:rotateY(180deg)} }

/* Ascundem canvasul „următor” când nu animăm (fără colț alb) */
.page-canvas#pageNext{ opacity:0; pointer-events:none; }
.flip-forward #pageNext, .flip-back #pageNext{ opacity:1; }

/* Responsive thumbs */
@media (max-width: 980px){ .cert-item{ flex:0 1 31% } }
@media (max-width: 760px){ .cert-item{ flex:0 1 46% } }
@media (max-width: 520px){
  .cert-item{ flex:0 1 92% }
  .cert-dialog{ width:96vw }
}
/* Card „500 MII+” mai lat */
.trust-stats{
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* default: 2 coloane */
  gap: 16px;
}

.trust-stats .stat-wide{
  grid-column: span 2;   /* cardul ocupă două coloane */
}

/* pe mobil rămâne normal */
@media (max-width: 480px){
  .trust-stats{ grid-template-columns: 1fr; }
  .trust-stats .stat-wide{ grid-column: span 1; }
}
/* ===== Conform EUDR — versiune mai vizibilă, lată, în ton cu site-ul ===== */
:root{
  /* nuanțe teal subtile (se potrivesc cu paleta existentă) */
  --brand-teal: #2db6c7;      /* aprox. var(--accent-2) */
  --brand-teal-soft: #7ec69a; /* verde-teal mai cald */
}

.eudr-under-hero{              /* lasă-l centrat ca înainte */
  display:flex; justify-content:center; align-items:center;
  padding: 40px 0;
  text-align:center;
}

.eudr-btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-width: 380px;                 /* puțin mai lat pe desktop */
  padding: 1.1rem 2.8rem;           /* padding generos */
  font-size: 1.17rem; font-weight: 700; letter-spacing:.2px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--accent), #ff9d55);

  color: #fff !important;
  border: 0;
  box-shadow: 0 10px 30px rgba(0,0,0,.12), 0 0 0 1px rgba(0,0,0,.03) inset;
  transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}

.eudr-btn:hover{
  filter: brightness(1.06);
  transform: translateY(-2px);
}

.eudr-btn:active{ transform: translateY(-1px); }

.eudr-btn:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(45,182,199,.25),  /* inel accesibilitate în ton */
    0 10px 30px rgba(0,0,0,.12);
}

/* Mobil: ocupă aproape toată lățimea containerului, dar rămâne centrat */
@media (max-width: 768px){
  .eudr-btn{
    width: min(94vw, 600px);
    min-width: 0;
    padding: 1rem 1.8rem;
  }
}
/* Cardul din mijloc mai lat, fără să stricăm layout-ul */
@media (min-width: 769px){
  /* în loc de repeat(3,1fr) facem coloana din mijloc puțin mai mare */
  .hero-belt{
    grid-template-columns: 1fr 1.5fr 1fr; /* ajustează 1.30–1.45 după gust */
  }
  /* asigurăm că item-urile nu forțează lățimea */
  .hero-belt .belt-item{ min-width: 0; }
}

/* Siguranță pe mobil: rămâne 1 coloană (dacă nu ai deja regula asta) */
@media (max-width: 768px){
  .hero-belt{ grid-template-columns: 1fr !important; }
}
/* HERO: fă h2 la fel ca h1-ul vechi */
.hero .caption h2{
  font-size: var(--h1);
  line-height: 1.12;
  font-weight: 700;
  margin-bottom: 1rem;
  text-shadow: 0 4px 18px rgba(0,0,0,.6);
}

/* Mobil — aceeași scalare ca la h1 */
@media (max-width: 480px){
  .hero .caption h2{
    font-size: clamp(1.2rem, 5.4vw + .55rem, 1.9rem);
    line-height: 1.15;
    text-wrap: balance;
  }
}
/* Servicii: spațiu pentru butonul "Află mai multe" din card */
.page-home .service-card .body .btn {
  margin-top: 8px;
}
