/* ===== Homepage category section (rail UNDER slider, sticky + scroll-spy) ===== */
.cte-catsection{display:flex;align-items:stretch}
.cte-catrail{position:relative;z-index:20;flex:0 0 90px;width:90px;background:#0e1d38}
.catrail-inner{position:sticky;top:0;display:flex;flex-direction:column}
.cte-catcontent{flex:1;min-width:0;padding:8px 30px 40px}

/* ===== catrail GLOBAL pe paginile standard (Contact/Jobs/Newsletter/blog/legal/single-proiect) =====
   bara pornește sub header; conținutul rămâne în .container-ul lui (centrat în zona din dreapta barei) */
.cte-rail .site-main{padding:0;min-height:60vh}
.cte-rail .site-main>.cte-railwrap>.cte-catcontent{padding:44px 0 60px}
.cte-rail .site-main>.cte-railwrap>.cte-catcontent>.container{margin-left:auto;margin-right:auto}
@media(max-width:900px){
  .cte-rail .site-main>.cte-railwrap>.cte-catcontent{padding:0 0 40px}
}
/* pagini cu elemente full-bleed (harta Contact) — nu mai sparg 100vw peste bară */
.cte-rail .contact-map{width:100%;margin-left:0;margin-right:0}
.cte-rail.cte-contact .site-main>.cte-railwrap>.cte-catcontent{padding-bottom:0}
/* category sections */
.cte-catsec{padding:30px 0 16px;scroll-margin-top:8px}
.catsec-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 22px}
.catsec-title{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-size:24px;color:var(--navy);font-weight:800;text-transform:uppercase;letter-spacing:-.01em;margin:0}
.catsec-title::before{content:"";width:4px;height:22px;background:var(--brand-2);border-radius:2px;flex:0 0 auto}
.catsec-more{flex:none;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--brand);color:var(--brand);font-family:var(--font-display);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:10px 22px;border-radius:3px;transition:background .15s,color .15s}
.catsec-more:hover{background:var(--brand);color:#fff}
.catsec-more .cte-mark{width:14px;height:14px;flex:0 0 auto;fill:currentColor}
.catsec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.catsec-tile{display:block;border:1px solid #ececec;border-radius:3px;overflow:hidden;background:#fff;transition:box-shadow .15s,transform .15s}
.catsec-tile:hover{box-shadow:0 10px 24px rgba(0,0,0,.13);transform:translateY(-3px)}
.catsec-tile .tile-img{display:flex;align-items:center;justify-content:center;height:150px;background:#f7f8fa}
.catsec-tile .tile-img img{max-height:140px;max-width:90%;object-fit:contain}
.catsec-tile .tile-name{display:block;padding:12px 14px;font-size:13px;font-weight:600;color:var(--navy);text-transform:uppercase;letter-spacing:.2px;line-height:1.35}
.catsec-tile:hover .tile-name{color:var(--brand)}
@media(max-width:1200px){.catsec-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.catsec-grid{grid-template-columns:repeat(2,1fr)}}
.catrail-item{position:relative;display:flex;align-items:center;justify-content:center;height:90px;width:90px;color:#fff;border-bottom:1px solid rgba(255,255,255,.06);transition:background .15s}
.catrail-item .ic{display:flex;align-items:center;justify-content:center}
.catrail-item .ic img{height:42px;width:auto;filter:brightness(0) invert(1);opacity:.92}
.catrail-item .lbl{position:absolute;left:90px;top:0;height:90px;z-index:6;display:flex;align-items:center;padding:0 26px;white-space:nowrap;font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.02em;color:#fff;background:var(--brand-2);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}
.catrail-item.is-active{background:var(--brand)}
.catrail-item:hover{background:var(--brand-2)}
.catrail-item:hover .lbl{opacity:1;visibility:visible}
/* bara navy merge până la footer: elimină spațiul gol al main-ului gol pe homepage */
.home .site-main{min-height:0;padding:0}
.home .site-footer{margin-top:0}
@media(max-width:900px){.cte-catsection{flex-direction:column}.cte-catrail{flex:none;width:100%}
  /* mobil: bara verticală devine UN SINGUR rând orizontal, derulabil stânga-dreapta */
  .catrail-inner{position:static;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .catrail-inner::-webkit-scrollbar{height:4px}
  .catrail-inner::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:2px}
  .catrail-item{flex:0 0 auto}.catrail-item .lbl{display:none}}

.cte-slider{position:relative;width:100%;overflow:hidden;background:#0d1b34;margin-bottom:0}
.cte-slides{position:relative;width:100%;aspect-ratio:1920/632}
.cte-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;z-index:1}
.cte-slide.is-active{opacity:1;z-index:2}
.cte-slide a,.cte-slide img{display:block;width:100%;height:100%;object-fit:cover}
.cte-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.82);color:var(--navy);border:0;width:48px;height:48px;cursor:pointer;font-size:20px;border-radius:2px;transition:background .15s,color .15s}
.cte-arrow:hover{background:#fff;color:var(--brand)}
.cte-arrow.prev{left:18px}.cte-arrow.next{right:18px}
.cte-dots{position:absolute;left:0;right:0;bottom:16px;display:flex;justify-content:center;gap:9px;z-index:5}
.cte-dot{width:11px;height:11px;border-radius:50%;border:2px solid #fff;background:transparent;cursor:pointer;padding:0;transition:background .15s}
.cte-dot.is-active{background:#fff}
@media(max-width:768px){.cte-arrow{width:38px;height:38px;font-size:16px}.cte-arrow.prev{left:8px}.cte-arrow.next{right:8px}}

/* ===== Descarcă cataloage ===== */
.cte-catalogs{padding:46px 0 34px}
.cte-catalogs .cte-eyebrow{justify-content:center;display:flex;margin-bottom:8px}
.cte-catalogs h2{font-family:var(--font-display);text-align:center;font-size:28px;color:var(--navy);font-weight:800;text-transform:uppercase;letter-spacing:-.01em;margin:0 auto 30px;padding-bottom:18px;border-bottom:3px solid var(--brand-2);width:max-content;max-width:100%}
.cte-catalogs .cat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;align-items:start}
.cte-catalog-card{display:block}
.cte-catalog-card img{width:100%;height:auto;border:1px solid #ececec;box-shadow:0 4px 14px rgba(0,0,0,.08);transition:transform .15s ease,box-shadow .15s ease}
.cte-catalog-card:hover img{transform:translateY(-5px);box-shadow:0 12px 28px rgba(0,0,0,.18)}
@media(max-width:992px){.cte-catalogs .cat-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.cte-catalogs .cat-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== Bloc CMS full-width (soluții Reciclare etc.) — aliniat cu paginile de categorie ===== */
.cte-cmsblock-page .site-main{padding:0}
.cte-cmsblock-page .site-main .container{max-width:none}
.cte-cmsblock-page .cte-catcontent{padding:28px 44px 48px;min-width:0}
.cte-cmsblock{min-width:0}
@media(max-width:900px){.cte-cmsblock-page .cte-catcontent{padding:16px 18px 40px}}
/* shim Bootstrap 4 pt blocurile CMS care folosesc row/col (ex. statii-deee) */
.cte-cmsblock .row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}
.cte-cmsblock [class^="col-"],.cte-cmsblock [class*=" col-"]{position:relative;width:100%;min-height:1px;padding:0 15px}
.cte-cmsblock .col-sm-12{flex:0 0 100%;max-width:100%}
@media(min-width:768px){.cte-cmsblock .col-md-6{flex:0 0 50%;max-width:50%}.cte-cmsblock .col-md-12{flex:0 0 100%;max-width:100%}}
@media(min-width:992px){.cte-cmsblock .col-lg-6{flex:0 0 50%;max-width:50%}}
.cte-cmsblock img{max-width:100%}
/* butonul „Cere oferta" din bloc = CTA-ul noului site (teal + spark), poziția rămâne din bloc */
.cte-cmsblock a.oferta{text-decoration:none;display:inline-block}
.cte-cmsblock .custom-button{display:inline-flex;align-items:center;gap:11px;background:var(--brand);color:#fff;
  font-family:var(--font-display);font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:.02em;
  padding:14px 30px;border-radius:3px;border:0;cursor:pointer;transition:background .16s ease,transform .16s ease,box-shadow .16s ease}
.cte-cmsblock .custom-button:hover{background:#0b6e75;transform:translateY(-2px);box-shadow:0 12px 26px rgba(10,125,132,.3)}
.cte-cmsblock .custom-button::after{content:"";width:18px;height:18px;flex:0 0 auto;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 2c.6 6.6 3.4 9.4 10 10-6.6.6-9.4 3.4-10 10-.6-6.6-3.4-9.4-10-10 6.6-.6 9.4-3.4 10-10z'/%3E%3C/svg%3E") center/contain no-repeat}
@media(prefers-reduced-motion:reduce){.cte-cmsblock .custom-button{transition:none}.cte-cmsblock .custom-button:hover{transform:none}}
/* pagini-text simple Reciclare (digestie/biomasă) — au doar h2+p, fără blocul rich */
.cte-cmsblock h2{font-family:var(--font-display);color:var(--navy);text-transform:uppercase;font-weight:700;font-size:20px;letter-spacing:.5px;margin:24px 0 10px}
.cte-cmsblock h2:first-of-type{color:var(--brand-2);font-size:30px;margin:0 0 6px}
.cte-cmsblock p:not([class]){font-size:15px;line-height:1.75;color:#333;margin:0 0 16px;max-width:1050px}

/* FONT = cel al temei (consistent cu restul site-ului): titluri Archivo, body Open Sans.
   Suprascrie fonturile blocului CMS (Poppins/Oswald/Arial din <style>-ul lui). */
.cte-cmsblock,
.cte-cmsblock .pg-p,.cte-cmsblock .text-p,.cte-cmsblock p,.cte-cmsblock li,.cte-cmsblock span{
  font-family:'Open Sans',Arial,Helvetica,sans-serif}
.cte-cmsblock .titlu-pag,.cte-cmsblock .title-grid-2,.cte-cmsblock .galerie-proiecte,
.cte-cmsblock h1,.cte-cmsblock h2,.cte-cmsblock h3,.cte-cmsblock h4,.cte-cmsblock .custom-button{
  font-family:var(--font-display)}
