/* ==========================================================================
   TECNA picoane.ro - CSS global
   Full-width, mobile-optimized, zero margini laterale
   ========================================================================== */

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth; overflow-x:hidden}
body{margin:0; padding:0; overflow-x:hidden; font-family:'Inter','Segoe UI',system-ui,-apple-system,Arial,sans-serif; font-size:16px; line-height:1.6; color:#222; background:#fff; -webkit-font-smoothing:antialiased}
img{max-width:100%; height:auto; display:block}

:root{
  --tecna-green:#4a7c3a;
  --tecna-green-dark:#355826;
  --tecna-accent:#d13f2a;
  --tecna-dark:#1d2820;
  --tecna-text:#222;
  --tecna-muted:#6b7b6e;
  --tecna-bg:#f6f8f4;
  --tecna-border:#dde4d5;
  --radius:10px;
  --radius-lg:16px;
  --shadow-sm:0 2px 6px rgba(29,40,32,.08);
  --shadow-md:0 6px 20px rgba(29,40,32,.12);
  --wrap:1400px;         /* maximum latime continut centrat */
  --pad-x:clamp(16px, 4vw, 40px);
}

/* Typography */
h1,h2,h3,h4{font-family:'Barlow Condensed','Inter',sans-serif; color:var(--tecna-dark); line-height:1.15; margin:0 0 .5em; font-weight:700; letter-spacing:-.01em}
h1{font-size:clamp(1.9rem,5vw,3.4rem); text-transform:uppercase}
h2{font-size:clamp(1.5rem,3.5vw,2.3rem); text-transform:uppercase}
h3{font-size:clamp(1.1rem,2.2vw,1.35rem)}
p{margin:0 0 1em}
a{color:var(--tecna-green-dark); text-decoration:none}
a:hover{color:var(--tecna-accent)}

.eyebrow{display:inline-block; text-transform:uppercase; letter-spacing:.15em; color:var(--tecna-green); font-weight:700; font-size:.8rem; margin-bottom:.6rem}
.text-center{text-align:center}

/* === FULL WIDTH SECTIONS === */
/* Sectiunile au background la margine, continut centrat cu padding */
.section, .section--alt, .hero, .callout, .breadcrumb, .pdp, main {
  width:100%;
  margin:0;
  padding-left:0;
  padding-right:0;
}
.section{padding:clamp(40px, 6vw, 72px) var(--pad-x)}
.section--alt{padding:clamp(40px, 6vw, 72px) var(--pad-x); background:var(--tecna-bg)}

/* Continutul intern e centrat cu max-width generos */
.container, .hero__inner, .grid-2, .apps-grid, .series-grid, .products-grid, .pdp__grid,
.tf-grid, .breadcrumb ol, .specs-table, .filters {
  max-width:var(--wrap);
  margin-left:auto;
  margin-right:auto;
  padding-left:var(--pad-x);
  padding-right:var(--pad-x);
  width:100%;
  box-sizing:border-box;
}

/* Buttons */
.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 26px; border-radius:40px; font-weight:700; text-transform:uppercase; letter-spacing:.03em; font-size:.95rem; border:2px solid transparent; cursor:pointer; transition:all .2s; text-decoration:none; min-height:48px}
/* Call / Primary action = TECNA green (brand) */
.btn--primary{background:var(--tecna-green); color:#fff}
.btn--primary:hover{background:var(--tecna-green-dark); color:#fff; transform:translateY(-2px); box-shadow:0 6px 16px rgba(74,124,58,.25)}
/* Alternative accent (form submit secondary, optional) */
.btn--accent{background:var(--tecna-accent); color:#fff}
.btn--accent:hover{background:#b6331f; color:#fff; transform:translateY(-2px)}
.btn--dark{background:var(--tecna-dark); color:#fff}
.btn--dark:hover{background:#000; color:#fff}
.btn--wa{background:#25d366; color:#fff}
.btn--wa:hover{background:#1fb655; color:#fff; transform:translateY(-2px); box-shadow:0 6px 16px rgba(37,211,102,.25)}
.btn--lg{padding:16px 32px; font-size:1rem; min-height:54px}
@media(max-width:520px){ .btn{width:100%; min-width:0} .btn--lg{padding:16px 22px} }

/* Callout section (CTA band): override buttons cu alb pe fundal verde */
.callout .btn--primary{background:#fff; color:var(--tecna-dark)}
.callout .btn--primary:hover{background:var(--tecna-dark); color:#fff}

/* === HERO === */
.hero{position:relative; background:linear-gradient(135deg,#1d2820 0%,#355826 60%,#4a7c3a 100%); color:#fff; padding:clamp(60px, 8vw, 110px) 0; overflow:hidden}
.hero__inner{position:relative; z-index:2; display:grid; grid-template-columns:1.2fr 1fr; gap:clamp(20px, 4vw, 50px); align-items:center}
.hero__title{color:#fff; font-size:clamp(2rem,5.5vw,4rem); margin-bottom:16px; line-height:1.05; text-shadow:0 2px 10px rgba(0,0,0,.4)}
.hero__lead{font-size:clamp(1rem, 2vw, 1.2rem); opacity:.95; margin-bottom:24px; max-width:580px; text-shadow:0 1px 6px rgba(0,0,0,.4)}
.hero__badges{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:24px}
.hero__badge{background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.25); border-radius:30px; padding:6px 14px; font-size:.85rem; font-weight:600; white-space:nowrap; backdrop-filter:blur(4px)}
.hero__cta{display:flex; gap:12px; flex-wrap:wrap}
.hero__visual img{border-radius:var(--radius-lg); box-shadow:0 20px 50px rgba(0,0,0,.3); width:100%; height:auto}
@media(max-width:860px){
  .hero__inner{grid-template-columns:1fr; text-align:left}
  .hero__visual{order:-1; max-width:320px; margin:0 auto 10px}
  .hero__title{font-size:clamp(1.8rem, 7vw, 2.6rem)}
}

/* Hero cu poza real-world (excavator in actiune) */
.hero--photo{padding:clamp(80px, 10vw, 140px) 0; min-height:480px}
.hero--photo .hero__bg{position:absolute; inset:0; z-index:0; overflow:hidden}
.hero--photo .hero__bg img{width:100%; height:100%; object-fit:cover; object-position:center}
.hero--photo .hero__bg::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(29,40,32,.82) 0%, rgba(29,40,32,.65) 45%, rgba(29,40,32,.15) 100%)}
.hero--photo .hero__inner{grid-template-columns:1fr; max-width:var(--wrap); margin:0 auto; padding:0 var(--pad-x)}
.hero--photo .hero__title{max-width:700px}
.hero--photo .hero__lead{max-width:620px}
@media(max-width:860px){
  .hero--photo{min-height:520px}
  .hero--photo .hero__bg::after{background:linear-gradient(180deg, rgba(29,40,32,.55) 0%, rgba(29,40,32,.85) 100%)}
}

/* === SERIES CARDS === */
.series-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px}
.series-card{background:#fff; border:1px solid var(--tecna-border); border-radius:var(--radius-lg); padding:24px; transition:all .2s}
.series-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:var(--tecna-green)}
.series-card__badge{display:inline-block; background:var(--tecna-green); color:#fff; padding:4px 12px; border-radius:20px; font-size:.75rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:14px}
.series-card h3{margin-bottom:8px}
.series-card p{color:var(--tecna-muted); margin-bottom:18px; font-size:.95rem}
.series-card__img{height:140px; width:auto; margin:0 auto 14px; object-fit:contain}
.series-card__link{color:var(--tecna-green-dark); font-weight:700; text-transform:uppercase; font-size:.85rem; letter-spacing:.04em}
.series-card__link:after{content:" →"}
@media(max-width:1100px){.series-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.series-grid{grid-template-columns:1fr}}

/* === PRODUCT GRID === */
.products-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.product-card{background:#fff; border:1px solid var(--tecna-border); border-radius:var(--radius-lg); overflow:hidden; transition:all .2s; display:flex; flex-direction:column}
.product-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:var(--tecna-green)}
.product-card__img{background:var(--tecna-bg); padding:20px; height:220px; display:flex; align-items:center; justify-content:center}
.product-card__img img{max-height:100%; max-width:100%; object-fit:contain}
.product-card__body{padding:18px; display:flex; flex-direction:column; flex:1}
.product-card h3{font-size:1.25rem; margin-bottom:6px}
.product-card__category{font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; color:var(--tecna-green); font-weight:700; margin-bottom:10px}
.product-card__specs{display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:10px 0 16px; font-size:.85rem}
.product-card__specs div{background:var(--tecna-bg); padding:7px 9px; border-radius:6px}
.product-card__specs strong{display:block; color:var(--tecna-dark); font-size:.92rem}
.product-card__specs span{color:var(--tecna-muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.04em}
.product-card__actions{margin-top:auto; display:flex; gap:8px}
.product-card__actions .btn{flex:1; padding:10px 14px; font-size:.78rem; min-height:42px}
@media(max-width:960px){.products-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.products-grid{grid-template-columns:1fr}}

/* === BREADCRUMB === */
.breadcrumb{padding:14px var(--pad-x); background:var(--tecna-bg); font-size:.85rem; color:var(--tecna-muted)}
.breadcrumb ol{list-style:none; margin:0 auto; padding:0; display:flex; flex-wrap:wrap; gap:6px; max-width:var(--wrap)}
.breadcrumb a{color:var(--tecna-green-dark)}
.breadcrumb li+li::before{content:"›"; margin-right:6px; color:var(--tecna-muted)}

/* === PDP (pagina produs) === */
.pdp{padding:clamp(30px, 5vw, 50px) 0}
.pdp__grid{display:grid; grid-template-columns:1.1fr 1fr; gap:clamp(24px, 4vw, 50px); align-items:start}
.pdp__gallery{background:var(--tecna-bg); border-radius:var(--radius-lg); padding:clamp(20px, 4vw, 40px); position:sticky; top:140px}
.pdp__gallery img{max-height:480px; margin:0 auto; width:auto}
.pdp__cat{color:var(--tecna-green); text-transform:uppercase; letter-spacing:.1em; font-weight:700; font-size:.85rem; margin-bottom:8px}
.pdp h1{font-size:clamp(1.8rem,4vw,2.8rem); margin-bottom:14px}
.pdp__lead{font-size:1.05rem; color:var(--tecna-muted); margin-bottom:22px}
.pdp__highlights{display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:24px}
.pdp__highlights div{background:var(--tecna-bg); padding:12px; border-radius:var(--radius); text-align:center}
.pdp__highlights strong{display:block; color:var(--tecna-green-dark); font-size:1.3rem; font-family:'Barlow Condensed',sans-serif}
.pdp__highlights span{display:block; font-size:.72rem; text-transform:uppercase; color:var(--tecna-muted); margin-top:4px}
.pdp__cta{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:24px}
.pdp__downloads{display:flex; gap:12px; flex-wrap:wrap; padding-top:20px; border-top:1px solid var(--tecna-border)}
.pdp__downloads a{color:var(--tecna-green-dark); font-weight:600; font-size:.95rem}
.pdp__downloads a:before{content:"⬇ "}
.specs-table{width:100%; border-collapse:collapse; margin:20px auto; max-width:var(--wrap)}
.specs-table th, .specs-table td{padding:11px 14px; text-align:left; border-bottom:1px solid var(--tecna-border); font-size:.93rem}
.specs-table th{background:var(--tecna-bg); width:45%; font-weight:700}
@media(max-width:860px){
  .pdp__grid{grid-template-columns:1fr}
  .pdp__gallery{position:static; max-width:420px; margin:0 auto}
  .pdp__highlights{grid-template-columns:1fr 1fr}
  .specs-table th, .specs-table td{padding:8px 10px; font-size:.88rem}
}

/* === FILTERS === */
.filters{background:#fff; border:1px solid var(--tecna-border); border-radius:var(--radius-lg); padding:16px 20px; margin:0 auto 28px; display:flex; gap:18px; flex-wrap:wrap; align-items:center}
.filters label{display:flex; flex-direction:column; gap:4px; font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; color:var(--tecna-muted); font-weight:600; flex:1; min-width:150px}
.filters select, .filters input{background:var(--tecna-bg); border:1px solid var(--tecna-border); border-radius:6px; padding:10px 12px; font-size:.95rem; min-height:44px; width:100%}
.filters__count{margin-left:auto; color:var(--tecna-green); font-weight:700; font-size:.95rem}
@media(max-width:680px){
  .filters{padding:14px}
  .filters label{min-width:calc(50% - 9px)}
  .filters__count{width:100%; text-align:center; padding-top:8px}
}

/* === APPLICATIONS === */
.apps-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px}
.app-card{background:#fff; border:1px solid var(--tecna-border); border-radius:var(--radius-lg); padding:28px 20px; text-align:center; transition:all .2s}
.app-card:hover{border-color:var(--tecna-green); transform:translateY(-3px); box-shadow:var(--shadow-md)}
.app-card__icon{display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; margin-bottom:14px; color:var(--tecna-green); background:linear-gradient(135deg, #eef5e8, #f6f8f4); border-radius:14px; transition:all .2s}
.app-card:hover .app-card__icon{background:var(--tecna-green); color:#fff; transform:scale(1.05)}
.app-card__icon svg{width:28px; height:28px}
.app-card h3{font-size:1.05rem; margin-bottom:6px}
.app-card p{font-size:.88rem; color:var(--tecna-muted); margin:0; line-height:1.5}

/* TECNA inline SVG icons */
.tec-ic{display:inline-block; vertical-align:middle; width:1.2em; height:1.2em; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round}
.series-card h3 .tec-ic{width:22px; height:22px; margin-right:6px}
@media(max-width:960px){.apps-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:420px){.apps-grid{grid-template-columns:1fr}}

/* === CTA BAND === */
.callout{background:linear-gradient(135deg,#355826,#4a7c3a); color:#fff; padding:clamp(36px, 5vw, 56px) var(--pad-x); text-align:center}
.callout h2{color:#fff; margin-bottom:10px}
.callout p{font-size:clamp(1rem, 2vw, 1.15rem); opacity:.92; margin-bottom:22px}

/* === FORM === */
.tecna-form{background:#fff; border:1px solid var(--tecna-border); border-radius:var(--radius-lg); padding:clamp(20px, 3vw, 32px); max-width:680px}
.tecna-form label{display:block; margin-bottom:14px; font-weight:600; font-size:.92rem}
.tecna-form input, .tecna-form textarea, .tecna-form select{width:100%; border:1px solid var(--tecna-border); border-radius:8px; padding:12px 14px; font-size:16px; margin-top:4px; font-family:inherit; min-height:48px}
.tecna-form input:focus, .tecna-form textarea:focus{outline:none; border-color:var(--tecna-green); box-shadow:0 0 0 3px rgba(74,124,58,.15)}
.tecna-form textarea{min-height:130px; resize:vertical}
.tecna-form__row{display:grid; grid-template-columns:1fr 1fr; gap:14px}
@media(max-width:560px){.tecna-form__row{grid-template-columns:1fr}}

/* === UTILITIES === */
.grid-2{display:grid; grid-template-columns:1fr 1fr; gap:clamp(20px, 3vw, 36px); align-items:center}
@media(max-width:820px){.grid-2{grid-template-columns:1fr; gap:24px}}
.mt-0{margin-top:0} .mb-0{margin-bottom:0}

/* === Ascunde titluri auto-generate ale temei (daca apare vreodata) === */
.entry-title, .page-title, .page-header, .entry-header,
h1.wp-block-post-title, .wp-block-post-title{display:none !important}

/* === Fix spatii albe stanga/dreapta === */
main{width:100%; max-width:100%; margin:0; padding:0}

/* === Tap targets pe mobil === */
@media(max-width:720px){
  a, button, input[type="submit"]{min-height:44px}
  .tecna-nav a{min-height:44px}
}

/* === Anti-shift pe sticky header === */
@media(prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *, *::before, *::after{animation-duration:0.01ms !important; transition-duration:0.01ms !important}
}
