/*
 * Acoperișuri Vest — pagina legală (page.php → template-parts/legal/pagina.php).
 * Se încarcă pe cheia `legal` (inc/setup-pages.php), după components.css.
 * Sursa: docs/redesign/design-reference/canvas/Legal.dc.html (capturile Legal-1440 / Legal-390).
 * Conținutul vine din editor (inclusiv HTML rămas de la Elementor): titlurile h2–h6 au aceeași
 * tipografie, iar imaginile / tabelele / blocurile late nu ies din coloana documentului.
 */

/* ---------- Cadru: meniu lateral + document ---------- */
.av-legal{padding:56px 0 96px}
.av-legal__in{display:flex;flex-wrap:wrap;gap:64px;align-items:flex-start}
.av-legal__aside{flex:1 1 240px;max-width:280px;display:flex;flex-direction:column;gap:10px;min-width:0}
.av-legal__doc{flex:999 1 640px;min-width:0;max-width:760px}

/* ---------- Pesmet ---------- */
.av-legal__crumbs{font-size:11px;color:var(--av-text-3)}
.av-legal__crumbs a{color:var(--av-text-3);text-decoration:none}
.av-legal__crumbs a:hover{color:var(--av-red)}
.av-legal__crumb-current{color:var(--av-text)}

/* ---------- Meniul paginilor legale ---------- */
.av-legal__nav{margin-top:20px;border-bottom:1px solid var(--av-line-2)}
.av-legal__nav a{display:block;padding:12px 0;border-top:1px solid var(--av-line-2);color:var(--av-text);text-decoration:none;font-size:15px}
.av-legal__nav a:hover{color:var(--av-red)}
.av-legal__nav a[aria-current="page"]{color:var(--av-red);font-weight:600}

/* ---------- Caseta „Întrebări despre date” ---------- */
.av-legal__box{margin-top:20px;background:var(--av-white);border:1px solid var(--av-line-3);padding:20px;display:flex;flex-direction:column;gap:8px}
.av-legal__box-title{font-size:10px;color:var(--av-text-3)}
.av-legal__box-text{margin:0;font-size:15px;line-height:1.6;color:var(--av-text-2)}
.av-legal__box-mail{font-weight:600;overflow-wrap:anywhere}
/* Ținta de ≥ 44 px pe touch / sub 1100 px (SPEC §7, V4-44a). Nu `.av-tinta`: marginea ei simetrică (−12 px)
   ar intra peste textul de deasupra (gap 8 px). Aici crește în sus doar cât gap-ul și restul în padding-ul
   casetei (20 px), deci caseta și textul nu se mișcă. */
@media (max-width:1099.98px),(pointer:coarse){
  .av-legal__box-mail{display:flex;align-items:center;min-height:44px;margin-top:-8px;margin-bottom:calc(1lh - 36px)}
}

/* ---------- Documentul ---------- */
.av-legal__updated{margin:0;color:var(--av-red)}
.av-legal__title{font-size:48px;line-height:1.05;margin-top:14px;overflow-wrap:break-word}
.av-legal__content{margin-top:20px;overflow-wrap:break-word}
.av-legal__content>:first-child{margin-top:0}

/* Paginile existente își numerotează secțiunile cu h3 / h5 (Elementor): toate arată ca h2 din design. */
.av-legal__content h2,.av-legal__content h3,.av-legal__content h4,.av-legal__content h5,.av-legal__content h6{font-family:var(--av-font-display);font-weight:700;font-size:24px;line-height:1.2;letter-spacing:-.01em;color:var(--av-text);margin:44px 0 12px}
.av-legal__content hr+h2,.av-legal__content hr+h3,.av-legal__content hr+h4,.av-legal__content hr+h5,.av-legal__content hr+h6{margin-top:0}
.av-legal__content p,.av-legal__content li,.av-legal__content td,.av-legal__content th{font-size:17px;line-height:1.75;color:#2F3439}
.av-legal__content p{margin:0 0 14px}
.av-legal__content ul,.av-legal__content ol{margin:0 0 14px;padding-left:24px}
.av-legal__content li{margin:0}
.av-legal__content li>ul,.av-legal__content li>ol{margin:0}
.av-legal__content strong,.av-legal__content b{font-weight:600;color:var(--av-text)}
.av-legal__content a{color:var(--av-red);overflow-wrap:anywhere}
.av-legal__content a:hover{color:var(--av-red-link-hover)}
.av-legal__content hr{border:0;border-top:1px solid var(--av-line-2);margin:16px 0 28px}
.av-legal__content blockquote{margin:0 0 14px;padding-left:16px;border-left:3px solid var(--av-red)}

/* Tabele: derulare în cutia lor (display:block), nu a paginii. */
.av-legal__content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:0 0 20px}
.av-legal__content th,.av-legal__content td{border:1px solid var(--av-line-3);padding:8px 12px;text-align:left;vertical-align:top;font-size:15px;line-height:1.6}
.av-legal__content th{background:var(--av-white);font-weight:600;color:var(--av-text)}

/* Conținut rezidual (Elementor, embed-uri): nimic mai lat decât coloana. */
.av-legal__content img,.av-legal__content video,.av-legal__content iframe,.av-legal__content svg{max-width:100%;height:auto}
.av-legal__content figure{max-width:100%;margin:0 0 20px}
.av-legal__content pre{max-width:100%;overflow-x:auto;white-space:pre-wrap}
.av-legal__content [style*="width"]{max-width:100%}
.av-legal__content div,.av-legal__content section{max-width:100%;min-width:0;box-sizing:border-box}

/* ---------- Tabletă și telefon: layout-ul trece pe o coloană sub 944 px de conținut (240+64+640),
   adică sub 1008 px de secțiune (+ 2 × gutter 32) ---------- */
/* O singură coloană: meniul lateral pe toată lățimea, aliniat cu documentul (Legal-390), nu 280 px singur.
   @container măsoară secțiunea fără bara de derulare (la 1008–1024 px cu bară clasică tot se rupe);
   @media rămâne pentru browserele fără container queries. */
.av-legal{container:av-legal / inline-size}
@media (max-width:1007.98px){
  .av-legal__aside{flex-basis:100%;max-width:none}
}
@container av-legal (max-width:1007.98px){
  .av-legal__aside{flex-basis:100%;max-width:none}
}

/* ---------- Telefon ---------- */
@media (max-width:640px){
  /* Titlurile reale sunt cu majuscule („CONFIDENȚIALITATE”): la 48 px nu încap pe 390. */
  .av-legal__title{font-size:clamp(28px,7.6vw,48px)}
}

/* ---------- Pagina 404 (404.php): aceeași coloană și tipografie ca documentul legal ---------- */
.av-404{padding:96px 0 120px}
.av-404__in{max-width:760px}
.av-404__label{margin:0;color:var(--av-red)}
.av-404__title{font-size:48px;line-height:1.05;margin-top:14px;overflow-wrap:break-word}
.av-404__text{margin:20px 0 0;font-size:19px;line-height:1.7;color:var(--av-text-2)}
.av-404__links{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.av-404__tel{margin:28px 0 0;font-size:17px;color:var(--av-text-2)}
.av-404__tel a{display:inline-block;color:var(--av-red);font-weight:600;text-decoration:none;white-space:nowrap}
.av-404__tel a:hover{color:var(--av-red-link-hover)}

/* numărul de telefon ca țintă de ≥ 44 px pe tabletă / telefon și pe tactil (aceeași condiție ca .av-tinta) */
@media (max-width:1099.98px),(pointer:coarse){
  .av-404__tel a{display:inline-flex;align-items:center;min-height:44px}
}

@media (max-width:640px){
  .av-404{padding:48px 0 72px}
  .av-404__title{font-size:clamp(32px,9vw,48px)}
  .av-404__text{font-size:17px}
  /* Butoanele pe toată lățimea, una sub alta. */
  .av-404__links{flex-direction:column;gap:10px;margin-top:28px}
  .av-404__links .btn{width:100%}
}

/* ---------- Pagina de căutare (search.php): layout-ul Legal; formularul refolosește .av-form / .field
   (components.css), mesajul fără rezultate refolosește .av-404__links ---------- */
.av-search__form .btn{justify-content:center}
.av-search__list{list-style:none;margin:28px 0 0;padding:0;border-bottom:1px solid var(--av-line-2)}
.av-search__item{padding:22px 0;border-top:1px solid var(--av-line-2);min-width:0}
.av-search__type{margin:0;font-size:11px;color:var(--av-text-3)}
.av-search__title{margin:8px 0 0;font-family:var(--av-font-display);font-weight:700;font-size:22px;line-height:1.25;letter-spacing:-.01em;overflow-wrap:break-word}
.av-search__title a{color:var(--av-text);text-decoration:none}
.av-search__title a:hover{color:var(--av-red)}
.av-search__excerpt{margin:8px 0 0;font-size:16px;line-height:1.65;color:var(--av-text-2);overflow-wrap:break-word}
.av-search__empty{margin:28px 0 0;font-size:17px;line-height:1.7;color:var(--av-text-2)}

/* paginarea (the_posts_pagination): ținte de ≥ 44 px */
.av-search .pagination{margin-top:36px}
.av-search .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.av-search .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border:1px solid var(--av-line-3);background:var(--av-white);color:var(--av-text);font-weight:600;font-size:15px;text-decoration:none;box-sizing:border-box}
.av-search a.page-numbers:hover{border-color:var(--av-graphite);color:var(--av-red)}
.av-search .page-numbers.current{background:var(--av-graphite);border-color:var(--av-graphite);color:var(--av-white)}
.av-search .page-numbers.dots{min-width:0;padding:0 4px;border-color:transparent;background:transparent}

@media (max-width:640px){
  .av-search__title{font-size:19px}
}
