/* =========================================================
   Cabinet de Avocat Boghez Andreea — accidente rutiere
   Shared stylesheet
   Palette: deep navy + antique gold + warm cream
   Type: Playfair Display (display) / Lora (body) / Barlow (ui)
   ========================================================= */

:root {
  --navy:        #0B1B30;
  --navy-2:      #0F2540;
  --navy-3:      #16304f;
  --navy-line:   rgba(196,160,82,.22);
  --gold:        #C4A052;
  --gold-2:      #B08D42;
  --gold-light:  #DCC088;
  --cream:       #F5EFE3;
  --cream-2:     #FBF7EF;
  --paper:       #FFFFFF;
  --ink:         #1C2430;
  --ink-soft:    #414a56;
  --muted:       #6a7280;
  --muted-on-navy: #b9c2cf;
  --line:        #e4ddce;
  --line-soft:   #eee8db;
  --shadow-sm:   0 2px 10px rgba(11,27,48,.06);
  --shadow-md:   0 14px 40px rgba(11,27,48,.10);
  --shadow-lg:   0 30px 70px rgba(11,27,48,.16);
  --maxw:        1200px;
  --r:           14px;
  --r-sm:        10px;
  --ease:        cubic-bezier(.2,.7,.2,1);
}

/* ---------- reset ---------- */
*,*::before,*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
html,body { overflow-x: hidden; max-width: 100%; }
body {
  margin: 0;
  font-family: "Lora", Georgia, serif;
  color: var(--ink);
  background: var(--paper);
  line-height: 1.7;
  font-size: 17px;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
h1,h2,h3,h4 { font-family: "Playfair Display", Georgia, serif; font-weight: 600; line-height: 1.12; margin: 0; color: var(--ink); letter-spacing: -.01em; }
p { margin: 0 0 1em; }
ul { margin: 0; padding: 0; }

/* ---------- utilities ---------- */
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 26px; }
.wrap-narrow { max-width: 900px; margin: 0 auto; padding: 0 26px; }
.eyebrow {
  font-family: "Barlow", sans-serif;
  text-transform: uppercase;
  letter-spacing: .28em;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--gold-2);
  margin: 0 0 18px;
}
.eyebrow.on-navy { color: var(--gold-light); }
.gold { color: var(--gold-2); }
.center { text-align: center; }
.section { padding: 92px 0; }
.section.tight { padding: 68px 0; }
.section-head { max-width: 720px; }
.section-head.center { margin: 0 auto; }
.section-title { font-size: clamp(28px, 4vw, 42px); }
.lead { font-size: 19px; color: var(--ink-soft); }
.divider-mark { display:inline-flex; align-items:center; gap:14px; color: var(--gold); margin: 16px 0 4px; }
.divider-mark::before,.divider-mark::after{ content:""; height:1px; width:46px; background: var(--gold); opacity:.5; }

.bg-cream { background: var(--cream); }
.bg-cream-2 { background: var(--cream-2); }
.bg-navy { background: var(--navy); color: #fff; }
.bg-navy h1,.bg-navy h2,.bg-navy h3,.bg-navy h4 { color:#fff; }

/* ---------- buttons ---------- */
.btn {
  font-family:"Barlow", sans-serif;
  display:inline-flex; align-items:center; gap:10px;
  padding: 15px 26px;
  border-radius: 8px;
  font-weight: 600; font-size: 14.5px;
  letter-spacing: .06em; text-transform: uppercase;
  cursor:pointer; border: 1px solid transparent;
  transition: all .25s var(--ease);
  white-space: nowrap;
}
.btn svg { width:17px; height:17px; }
.btn-gold { background: var(--gold); color: var(--navy); box-shadow: 0 8px 22px rgba(196,160,82,.28); }
.btn-gold:hover { background: var(--gold-light); transform: translateY(-2px); }
.btn-outline { border-color: rgba(255,255,255,.32); color:#fff; }
.btn-outline:hover { border-color: var(--gold); color: var(--gold-light); }
.btn-ghost-dark { border-color: var(--navy); color: var(--navy); }
.btn-ghost-dark:hover { background: var(--navy); color:#fff; }
.btn-navy { background: var(--navy); color:#fff; }
.btn-navy:hover { background: var(--navy-2); transform: translateY(-2px); }

/* =========================================================
   HEADER
   ========================================================= */
.site-header {
  position: sticky; top:0; z-index: 60;
  background: rgba(11,27,48,.96);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(196,160,82,.18);
}
.nav {
  display:flex; align-items:center; justify-content:space-between;
  height: 78px; gap: 24px;
}
.brand { display:flex; align-items:center; gap:12px; color:#fff; }
.brand .mark { width:34px; height:40px; color: var(--gold); flex:none; }
.brand .btxt strong {
  font-family:"Playfair Display", serif; font-weight:600;
  font-size: 18px; letter-spacing:.06em; color:#fff; display:block; line-height:1.05;
}
.brand .btxt span {
  font-family:"Barlow", sans-serif; font-size:10.5px; letter-spacing:.24em;
  text-transform:uppercase; color: var(--gold-light); font-weight:500;
}
.nav-links { display:flex; align-items:center; gap: 22px; list-style:none; }
.nav-links a {
  font-family:"Barlow", sans-serif; font-size: 13px; letter-spacing:.09em;
  text-transform:uppercase; color:#dfe4ec; font-weight:500;
  padding: 6px 0; position:relative; transition: color .2s;
}
.nav-links a::after {
  content:""; position:absolute; left:0; bottom:-2px; height:2px; width:0;
  background: var(--gold); transition: width .25s var(--ease);
}
.nav-links a:hover,.nav-links a.active { color:#fff; }
.nav-links a:hover::after,.nav-links a.active::after { width:100%; }
.nav-cta { display:flex; align-items:center; gap:14px; }
.nav-phone {
  display:inline-flex; align-items:center; gap:9px;
  font-family:"Barlow", sans-serif; font-weight:600; font-size:15px; color:#fff;
  border:1px solid rgba(196,160,82,.5); border-radius:8px; padding:10px 16px;
  transition: all .2s;
}
.nav-phone svg{ width:16px;height:16px;color:var(--gold);}
.nav-phone:hover{ background: var(--gold); color: var(--navy); }
.nav-phone:hover svg{ color: var(--navy); }
.burger { display:none; background:none; border:0; cursor:pointer; padding:8px; }
.burger span { display:block; width:24px; height:2px; background:#fff; margin:5px 0; transition:.3s; }
.burger.is-open span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
.burger.is-open span:nth-child(2){ opacity:0; }
.burger.is-open span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }
.mobile-nav {
  display:none; flex-direction:column;
  background: var(--navy-2); border-top:1px solid rgba(196,160,82,.18);
}
.mobile-nav.open { display:flex; }
.mobile-nav a {
  font-family:"Barlow",sans-serif; text-transform:uppercase; letter-spacing:.08em;
  font-size:14px; color:#e2e7ee; padding:16px 26px; border-bottom:1px solid rgba(255,255,255,.06);
}
.mobile-nav a:hover { background: rgba(196,160,82,.10); color: var(--gold-light); }

/* =========================================================
   HERO
   ========================================================= */
.hero { background: var(--navy); color:#fff; position:relative; overflow:hidden; }
.hero::before {
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(900px 500px at 78% 30%, rgba(196,160,82,.10), transparent 60%),
    linear-gradient(180deg, #0B1B30 0%, #0d2138 100%);
}
.hero-grid {
  position:relative; display:grid; grid-template-columns: 1.05fr .95fr;
  gap: 50px; align-items:center; min-height: 560px; padding: 70px 0;
}
.hero-eyebrow {
  font-family:"Barlow", sans-serif; text-transform:uppercase; letter-spacing:.24em;
  font-size:12.5px; color: var(--gold-light); font-weight:600; margin-bottom:22px;
  display:flex; align-items:center; gap:14px;
}
.hero-eyebrow::before { content:""; width:40px; height:1px; background: var(--gold); }
.hero h1 {
  color:#fff; font-size: clamp(38px, 5.4vw, 62px); line-height:1.06; margin-bottom:26px;
}
.hero h1 em { font-style: normal; color: var(--gold); }
.hero p { color: var(--muted-on-navy); font-size: 19px; max-width: 480px; margin-bottom:34px; }
.hero-actions { display:flex; gap:16px; flex-wrap:wrap; }
.hero-portrait {
  position:relative; border-radius: 18px; overflow:hidden;
  aspect-ratio: 4/4.6; box-shadow: var(--shadow-lg);
  border: 1px solid rgba(196,160,82,.25);
}

/* photo placeholder styling (client swaps real photos here) */
.photo-ph {
  position:relative; width:100%; height:100%;
  background:
    radial-gradient(120% 90% at 70% 20%, #1a3252 0%, #0c1c31 60%),
    var(--navy-2);
  display:flex; align-items:center; justify-content:center; overflow:hidden;
}
.photo-ph .scales { width: 120px; height:120px; color: rgba(196,160,82,.34); }
.photo-ph .ph-note {
  position:absolute; bottom:14px; left:0; right:0; text-align:center;
  font-family:"Barlow",sans-serif; font-size:11px; letter-spacing:.18em; text-transform:uppercase;
  color: rgba(220,192,136,.55);
}
.photo-ph.warm { background: radial-gradient(120% 90% at 60% 25%, #24405f 0%, #10233a 65%); }

/* value strip under hero */
.value-strip {
  position:relative; border-top:1px solid rgba(196,160,82,.18);
  display:grid; grid-template-columns: repeat(3,1fr);
}
.value-strip .v {
  display:flex; align-items:center; gap:16px; padding: 26px 30px;
  border-right:1px solid rgba(196,160,82,.14);
}
.value-strip .v:last-child { border-right:0; }
.value-strip .v svg { width:34px;height:34px;color:var(--gold);flex:none; }
.value-strip .v p { margin:0; color:#e7ebf1; font-size:15.5px; line-height:1.45; }

/* =========================================================
   PROCESS / ICON CARDS
   ========================================================= */
.grid-3 { display:grid; grid-template-columns: repeat(3,1fr); gap: 34px 40px; }
.grid-4 { display:grid; grid-template-columns: repeat(4,1fr); gap: 30px; }
.grid-2 { display:grid; grid-template-columns: repeat(2,1fr); gap: 40px; }

.step {
  position:relative;
}
.step .num {
  font-family:"Playfair Display", serif; font-size: 34px; color: var(--gold);
  font-weight:600; line-height:1; display:block; margin-bottom:6px;
}
.step h3 { font-size: 20px; margin-bottom: 12px; }
.step p { color: var(--ink-soft); font-size:15.5px; margin:0; }
.step .ic {
  width:52px;height:52px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--gold); color:var(--gold); margin-bottom:16px;
  background: rgba(196,160,82,.06);
}
.step .ic svg{ width:24px;height:24px; }

/* feature card (icon circle + heading + text) */
.fcard { text-align:center; padding: 8px; }
.fcard .ic-round {
  width:74px;height:74px;border-radius:50%;margin:0 auto 20px;
  background: var(--cream); display:flex;align-items:center;justify-content:center;
  color: var(--gold-2);
}
.bg-navy .fcard .ic-round { background: rgba(196,160,82,.10); color: var(--gold); }
.fcard .ic-round svg{ width:32px;height:32px; }
.fcard h3{ font-size:20px; margin-bottom:12px; }
.fcard p{ color: var(--ink-soft); font-size:15px; margin:0; }
.bg-navy .fcard p{ color: var(--muted-on-navy); }

/* =========================================================
   "why choose" split with form
   ========================================================= */
.split-card {
  display:grid; grid-template-columns: 1.05fr 1fr;
  background: var(--paper); border-radius: 18px; overflow:hidden;
  box-shadow: var(--shadow-md); border:1px solid var(--line-soft);
}
.split-dark { background: var(--navy); color:#fff; padding: 52px 46px; }
.split-dark h2 { color:#fff; font-size: 30px; margin-bottom: 26px; }
.split-dark .checks { list-style:none; display:flex; flex-direction:column; gap:16px; margin:0 0 32px; }
.split-dark .checks li { display:flex; gap:14px; align-items:flex-start; color:#e7ebf1; font-size:16px; }
.split-dark .checks svg { width:20px;height:20px;color:var(--gold);flex:none;margin-top:3px; }
.split-form { padding: 48px 44px; }
.split-form h2 { font-size: 27px; margin-bottom: 8px; }
.split-form > p { color: var(--muted); font-size:15px; margin-bottom: 24px; }

/* forms */
.field { margin-bottom: 18px; }
.field label {
  display:block; font-family:"Barlow",sans-serif; font-size:12.5px; font-weight:600;
  letter-spacing:.05em; text-transform:uppercase; color: var(--ink-soft); margin-bottom:7px;
}
.field input,.field select,.field textarea {
  width:100%; padding: 13px 15px; border:1px solid var(--line);
  border-radius: 8px; font-family:"Lora",serif; font-size:15.5px; color:var(--ink);
  background: var(--cream-2); transition: border-color .2s, box-shadow .2s;
}
.field textarea{ resize:vertical; min-height: 110px; }
.field input:focus,.field select:focus,.field textarea:focus {
  outline:none; border-color: var(--gold); box-shadow: 0 0 0 3px rgba(196,160,82,.15);
  background:#fff;
}
.form-note { display:flex; align-items:center; gap:9px; color: var(--muted); font-size:13px; margin-top:14px; }
.form-note svg{ width:15px;height:15px;color:var(--gold-2);flex:none; }
.btn.full { width:100%; justify-content:center; }

/* =========================================================
   trust logos
   ========================================================= */
.trust { padding: 40px 0; border-top:1px solid var(--line-soft); }
.trust p.t-label {
  text-align:center; font-family:"Playfair Display",serif; font-style:italic;
  color: var(--muted); font-size:18px; margin-bottom:22px;
}
.trust-row { display:flex; align-items:center; justify-content:center; gap:52px; flex-wrap:wrap; opacity:.62; }
.trust-row span {
  font-family:"Playfair Display",serif; font-weight:600; font-size:19px; letter-spacing:.04em;
  color: var(--ink);
}

/* =========================================================
   page header (interior pages)
   ========================================================= */
.pagehead { background: var(--navy); color:#fff; position:relative; overflow:hidden; }
.pagehead::before {
  content:""; position:absolute; inset:0;
  background: radial-gradient(800px 400px at 85% 10%, rgba(196,160,82,.10), transparent 60%);
}
.pagehead .wrap { position:relative; }
.pagehead-grid { display:grid; grid-template-columns: 1.15fr .85fr; gap:44px; align-items:center; padding: 74px 0; }
.pagehead h1 { color:#fff; font-size: clamp(34px, 4.6vw, 52px); margin-bottom: 22px; }
.pagehead h1 em { font-style:normal; color: var(--gold); }
.pagehead p { color: var(--muted-on-navy); font-size:18px; max-width: 560px; }
.pagehead .pagehead-portrait { aspect-ratio: 4/3.4; border-radius:16px; overflow:hidden; box-shadow: var(--shadow-lg); border:1px solid rgba(196,160,82,.25); }
.pagehead.simple .pagehead-grid { grid-template-columns: 1fr; text-align:center; max-width:820px; margin:0 auto; }
.pagehead.simple p { margin:0 auto; }

/* about page: definition list + edu cards */
.def-list { margin-top: 20px; }
.def { padding: 16px 0; border-bottom: 1px solid rgba(196,160,82,.16); }
.def h4 { font-family:"Playfair Display",serif; font-size:18px; color:#fff; margin-bottom:6px; }
.def p { color: var(--muted-on-navy); font-size:14.5px; margin:0; }
.edu-card { background: var(--paper); border:1px solid var(--line-soft); border-radius:12px; padding: 28px 26px; box-shadow: var(--shadow-sm); transition: transform .3s var(--ease), box-shadow .3s; }
.edu-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.edu-card svg { width:38px;height:38px;color:var(--gold-2); margin-bottom:16px; }
.edu-card h4 { font-size:19px; margin-bottom:8px; }
.edu-card p { color: var(--ink-soft); font-size:14.5px; margin:0; }

/* =========================================================
   accident category cards (image cards)
   ========================================================= */
.cat-grid { display:grid; grid-template-columns: repeat(3,1fr); gap: 26px; }
.cat {
  background: var(--paper); border-radius: 14px; overflow:hidden;
  box-shadow: var(--shadow-sm); border:1px solid var(--line-soft);
  transition: transform .3s var(--ease), box-shadow .3s;
}
.cat:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
.cat .cat-img {
  height: 168px; position:relative;
  background: var(--navy-2); display:flex; align-items:center; justify-content:center;
}
.cat .cat-img .scene { width:100%; height:100%; }
.cat .cat-badge {
  position:absolute; right:16px; bottom:-24px; width:52px;height:52px;border-radius:50%;
  background: var(--navy); border:1.5px solid var(--gold); color: var(--gold);
  display:flex;align-items:center;justify-content:center; box-shadow: var(--shadow-sm);
}
.cat .cat-badge svg{ width:24px;height:24px; }
.cat .cat-body { padding: 30px 24px 26px; }
.cat .cat-body h3 { font-size: 20px; margin-bottom: 12px; }
.cat .cat-body p { color: var(--ink-soft); font-size:14.5px; margin:0; }

/* =========================================================
   compensation cards (icon + image + text)
   ========================================================= */
.comp-grid { display:grid; grid-template-columns: repeat(3,1fr); gap: 26px; }
.comp {
  background: var(--paper); border-radius:14px; overflow:hidden;
  border:1px solid var(--line-soft); box-shadow: var(--shadow-sm);
  display:flex; flex-direction:column;
}
.comp .comp-top { padding: 26px 24px 8px; }
.comp .comp-ic { width:44px;height:44px;color:var(--gold-2); margin-bottom:14px; }
.comp .comp-ic svg{ width:40px;height:40px; }
.comp h3 { font-size: 19px; margin-bottom: 12px; }
.comp p { color: var(--ink-soft); font-size:14.5px; margin:0 0 20px; }
.comp .comp-img { height: 150px; margin-top:auto; background: var(--navy-2); }
.comp .comp-img .scene{ width:100%;height:100%; }

/* =========================================================
   dark approach strip (numbered mini steps)
   ========================================================= */
.approach { background: var(--navy); color:#fff; border-radius:16px; padding: 52px 44px; overflow:hidden; position:relative; }
.approach h2 { color:#fff; font-size:28px; margin-bottom:36px; max-width:640px; }
.approach h2 em{ color: var(--gold); font-style:normal; }
.mini-steps { display:flex; align-items:flex-start; gap: 8px; flex-wrap:wrap; }
.mini-step { flex:1; min-width:150px; text-align:center; }
.mini-step .mic { width:56px;height:56px;border-radius:50%; margin:0 auto 16px;
  border:1px solid rgba(196,160,82,.4); display:flex;align-items:center;justify-content:center; color:var(--gold); }
.mini-step .mic svg{ width:26px;height:26px; }
.mini-step p{ color: var(--muted-on-navy); font-size:14px; margin:0; line-height:1.5; }
.mini-step p b{ color:#fff; font-weight:600; }
.mini-arrow { color: var(--gold); align-self:center; padding-top:16px; flex:none; }
.mini-arrow svg{ width:18px;height:18px; }

/* =========================================================
   testimonials
   ========================================================= */
.tgrid { display:grid; grid-template-columns: repeat(3,1fr); gap: 26px; }
.tcard {
  background: var(--paper); border-radius:14px; padding: 32px 28px;
  box-shadow: var(--shadow-sm); border:1px solid var(--line-soft);
  display:flex; flex-direction:column;
}
.tcard .qm { font-family:"Playfair Display",serif; font-size:52px; color: var(--gold); line-height:.6; margin-bottom:10px; }
.tcard .stars { color: var(--gold); letter-spacing:2px; margin-bottom:16px; font-size:15px; }
.tcard .stars .off { color: #d9d2c2; }
.tcard blockquote { margin:0 0 22px; font-style:italic; color: var(--ink-soft); font-size:15.5px; }
.tcard .who { border-top:1px solid var(--line-soft); padding-top:16px; }
.tcard .who strong { font-family:"Playfair Display",serif; font-size:16px; display:block; }
.tcard .who span { font-family:"Barlow",sans-serif; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color: var(--muted); }

/* =========================================================
   horizontal process line
   ========================================================= */
.hprocess { display:flex; align-items:flex-start; gap:6px; flex-wrap:wrap; justify-content:center; }
.hstep { flex:1; min-width:140px; text-align:center; }
.hstep .hnum { font-family:"Playfair Display",serif; color: var(--gold); font-size:22px; margin-bottom:12px; }
.hstep .hic { width:64px;height:64px;border-radius:50%; margin:0 auto 14px; background: var(--navy);
  display:flex;align-items:center;justify-content:center; color: var(--gold); }
.hstep .hic svg{ width:28px;height:28px; }
.hstep h4 { font-family:"Playfair Display",serif; font-size:16px; margin-bottom:8px; }
.hstep p { color: var(--ink-soft); font-size:13.5px; margin:0; }
.harrow{ align-self:flex-start; padding-top:38px; color:#c9bfa6; flex:none; }

/* =========================================================
   stats
   ========================================================= */
.stats-row { display:flex; gap: 12px; flex-wrap:wrap; }
.stat { flex:1; min-width:150px; }
.stat .num { font-family:"Playfair Display",serif; font-size: 40px; color: var(--gold); line-height:1; }
.stat .lab { font-family:"Barlow",sans-serif; font-size:12.5px; letter-spacing:.08em; text-transform:uppercase; color: var(--muted-on-navy); margin-top:8px; }

/* =========================================================
   case studies
   ========================================================= */
.case-grid { display:grid; grid-template-columns: repeat(3,1fr); gap:26px; }
.case {
  background: var(--paper); border:1px solid var(--line-soft); border-radius:14px;
  padding: 30px 28px; box-shadow: var(--shadow-sm); display:flex; flex-direction:column;
  transition: box-shadow .3s, transform .3s;
}
.case:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); }
.case .case-num {
  width:34px;height:34px;border-radius:50%; background: var(--navy); color:#fff;
  font-family:"Playfair Display",serif; font-size:16px;
  display:flex;align-items:center;justify-content:center; margin-bottom:18px;
}
.case-tag {
  display:inline-block; font-family:"Barlow",sans-serif; font-size:10.5px; letter-spacing:.12em;
  text-transform:uppercase; color: var(--gold-2); background: rgba(196,160,82,.10);
  border:1px solid rgba(196,160,82,.3); padding:5px 10px; border-radius:20px; margin-bottom:14px; font-weight:600;
}
.case h3 { font-size: 21px; margin-bottom: 20px; }
.case .block { margin-bottom: 16px; }
.case .block .btitle { display:flex; align-items:center; gap:9px; margin-bottom:5px; }
.case .block .btitle svg{ width:17px;height:17px;color:var(--gold-2);flex:none; }
.case .block .btitle span { font-family:"Barlow",sans-serif; font-weight:600; font-size:13px; letter-spacing:.05em; text-transform:uppercase; color: var(--ink); }
.case .block p { color: var(--ink-soft); font-size:14px; margin:0; }
.case .result {
  margin-top:auto; background: var(--cream); border:1px solid rgba(196,160,82,.3);
  border-radius:10px; padding: 16px 18px; display:flex; align-items:center; gap:14px;
}
.case .result svg { width:26px;height:26px;color:var(--gold-2);flex:none; }
.case .result .r-label { font-family:"Barlow",sans-serif; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color: var(--gold-2); font-weight:600; }
.case .result .r-value { font-family:"Playfair Display",serif; font-size:19px; color: var(--ink); font-weight:600; line-height:1.15; overflow-wrap:anywhere; }
.case .result.navy { background: var(--navy); border-color: rgba(196,160,82,.3); }
.case .result.navy .r-label{ color: var(--gold-light);} .case .result.navy .r-value{ color:#fff;} .case .result.navy svg{ color: var(--gold);}
.extra-note {
  margin-top:12px; background: var(--navy); color:#fff; border-radius:10px; padding:12px 16px;
  font-family:"Barlow",sans-serif; font-size:12.5px; letter-spacing:.04em; display:flex; align-items:center; gap:10px;
}
.extra-note svg{ width:20px;height:20px;color:var(--gold);flex:none;}

.case-stats { display:grid; grid-template-columns: repeat(4,1fr); gap:22px; }
.case-stat { text-align:center; padding: 26px 16px; border:1px solid var(--line-soft); border-radius:12px; background:var(--paper); }
.case-stat .num { font-family:"Playfair Display",serif; font-size: 30px; color: var(--gold-2); line-height:1.05; }
.case-stat .lab { color: var(--ink-soft); font-size:13px; margin-top:10px; }

/* featured case */
.featured-case { display:grid; grid-template-columns: 1.35fr 1fr; gap: 40px; align-items:stretch;
  background: var(--paper); border:1px solid var(--line-soft); border-radius:18px; overflow:hidden;
  box-shadow: var(--shadow-md); }
.featured-case .fc-body { padding: 46px 42px; }
.featured-case .fc-body h2 { font-size: 28px; margin: 12px 0 26px; }
.featured-case .fc-blocks > div { margin-bottom: 20px; }
.featured-case .fc-blocks h4 { font-family:"Barlow",sans-serif; font-size:12.5px; letter-spacing:.09em; text-transform:uppercase; color: var(--gold-2); margin-bottom:6px; font-weight:600; }
.featured-case .fc-blocks p { color: var(--ink-soft); font-size:15px; margin:0; }
.featured-case .fc-stats { background: var(--navy); padding: 42px 34px; display:grid; grid-template-columns:1fr 1fr; gap:16px; align-content:center; }
.featured-case .fc-stats .case-stat { background: rgba(255,255,255,.03); border-color: rgba(196,160,82,.25); }
.featured-case .fc-stats .case-stat .num { color: var(--gold); }
.featured-case .fc-stats .case-stat .lab { color: var(--muted-on-navy); }
@media (max-width: 980px){ .featured-case { grid-template-columns:1fr; } }
@media (max-width: 620px){
  .featured-case .fc-body { padding: 30px 22px; }
  .featured-case .fc-body h2 { font-size: 23px; }
  .featured-case .fc-stats { padding: 26px 20px; gap: 12px; }
  .featured-case .fc-stats .case-stat { padding: 20px 12px; }
  .featured-case .fc-stats .case-stat .num { font-size: 23px; word-break: break-word; }
  .case-stat .num { font-size: 26px; }
}

/* =========================================================
   FAQ accordion
   ========================================================= */
.faq-list { max-width: 900px; margin:0 auto; display:flex; flex-direction:column; gap:14px; }
.faq-item {
  background: var(--paper); border:1px solid var(--line-soft); border-radius:12px;
  overflow:hidden; box-shadow: var(--shadow-sm); transition: box-shadow .2s;
}
.faq-item[open] { box-shadow: var(--shadow-md); }
.faq-item summary {
  list-style:none; cursor:pointer; padding: 22px 26px; display:flex; align-items:center; gap:18px;
  font-family:"Playfair Display",serif; font-size: 19px; color: var(--ink); font-weight:600;
}
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary .qn {
  width:30px;height:30px;border-radius:50%;flex:none; background: rgba(196,160,82,.12);
  color: var(--gold-2); font-family:"Barlow",sans-serif; font-weight:700; font-size:13px;
  display:flex;align-items:center;justify-content:center;
}
.faq-item summary .qtxt { flex:1; }
.faq-item summary .pm { flex:none; color: var(--gold-2); font-size:26px; line-height:1; transition: transform .3s; font-family:"Barlow",sans-serif; }
.faq-item[open] summary .pm { transform: rotate(45deg); }
.faq-item .faq-body { padding: 0 26px 24px 74px; }
.faq-item .faq-body p { color: var(--ink-soft); font-size:15.5px; margin:0 0 .8em; }
.faq-item .faq-body ul { list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:6px 24px; margin:.4em 0; }
.faq-item .faq-body ul li { position:relative; padding-left:18px; color: var(--ink-soft); font-size:14.5px; }
.faq-item .faq-body ul li::before { content:""; position:absolute; left:0; top:11px; width:6px;height:6px;border-radius:50%; background: var(--gold); }

/* FAQ ask box */
.ask-box { background: var(--paper); border:1px solid var(--line-soft); border-radius:16px;
  box-shadow: var(--shadow-md); padding: 40px 42px; display:grid; grid-template-columns: auto 1fr auto;
  gap: 30px; align-items:center; }
.ask-box .ask-ic { width:64px;height:64px;border-radius:50%; background: var(--cream); color: var(--gold-2);
  display:flex;align-items:center;justify-content:center; flex:none; }
.ask-box .ask-ic svg{ width:32px;height:32px; }
.ask-box h2 { font-size: 24px; margin-bottom:8px; }
.ask-box p { color: var(--ink-soft); font-size:15px; margin:0; }
.ask-box .ask-actions { display:flex; flex-direction:column; gap:12px; }
@media (max-width: 860px){ .ask-box { grid-template-columns:1fr; text-align:center; } .ask-box .ask-ic{ margin:0 auto; } .ask-box .ask-actions{ align-items:stretch; } }

/* =========================================================
   steps / list page (primii pasi)
   ========================================================= */
.numbered { max-width: 860px; margin:0 auto; display:flex; flex-direction:column; gap: 26px; counter-reset: n; }
.numbered .nstep { display:grid; grid-template-columns: 62px 1fr; gap: 24px; align-items:start; }
.numbered .nstep .nb {
  width:56px;height:56px;border-radius:50%; background: var(--navy); color: var(--gold);
  font-family:"Playfair Display",serif; font-size:22px; font-weight:600;
  display:flex;align-items:center;justify-content:center; flex:none;
}
.numbered .nstep h3 { font-size: 21px; margin-bottom:8px; }
.numbered .nstep p { color: var(--ink-soft); font-size:15.5px; margin:0 0 .6em; }
.numbered .nstep ul { list-style:none; display:flex; flex-wrap:wrap; gap:8px 22px; margin:.4em 0 0; }
.numbered .nstep ul li{ position:relative; padding-left:18px; color: var(--ink-soft); font-size:14.5px; }
.numbered .nstep ul li::before{ content:""; position:absolute; left:0; top:10px; width:6px;height:6px;border-radius:50%; background:var(--gold);}

.avoid-grid { display:grid; grid-template-columns: repeat(3,1fr); gap:24px; }
.avoid { background: var(--paper); border:1px solid var(--line-soft); border-left:3px solid var(--gold); border-radius: 10px; padding: 22px 24px; box-shadow:var(--shadow-sm); }
.avoid h4 { font-size:17px; margin-bottom:8px; }
.avoid p { color: var(--ink-soft); font-size:14px; margin:0; }

/* =========================================================
   pull quote band
   ========================================================= */
.quoteband { background: var(--navy); color:#fff; padding: 74px 0; position:relative; overflow:hidden; }
.quoteband::before{ content:""; position:absolute; inset:0; background: radial-gradient(700px 400px at 20% 30%, rgba(196,160,82,.10), transparent 60%); }
.quoteband .wrap { position:relative; display:grid; grid-template-columns: auto 1fr; gap:34px; align-items:center; }
.quoteband .big-qm { font-family:"Playfair Display",serif; font-size: 120px; color: var(--gold); line-height:.7; }
.quoteband blockquote { margin:0; font-family:"Playfair Display",serif; font-style:italic; font-size: clamp(22px,3vw,30px); color:#fff; line-height:1.4; }
.quoteband blockquote em { color: var(--gold-light); font-style:italic; }

/* =========================================================
   CONTACT
   ========================================================= */
.contact-grid { display:grid; grid-template-columns: 1fr 1fr; gap: 50px; }
.contact-info .ci { display:flex; gap:18px; align-items:flex-start; padding: 20px 0; border-bottom:1px solid var(--line-soft); }
.contact-info .ci:last-child{ border-bottom:0; }
.contact-info .ci .cic { width:48px;height:48px;border-radius:50%; background: var(--cream); color: var(--gold-2);
  display:flex;align-items:center;justify-content:center; flex:none; }
.contact-info .ci .cic svg{ width:22px;height:22px; }
.contact-info .ci h4 { font-family:"Barlow",sans-serif; font-size:12px; letter-spacing:.1em; text-transform:uppercase; color: var(--muted); margin-bottom:4px; font-weight:600; }
.contact-info .ci p { margin:0; font-size:16.5px; color: var(--ink); }
.contact-info .ci p a:hover{ color: var(--gold-2); }

/* =========================================================
   CTA band
   ========================================================= */
.cta-band { background: var(--navy); color:#fff; position:relative; overflow:hidden; }
.cta-band::before{ content:""; position:absolute; inset:0; background: radial-gradient(700px 400px at 85% 50%, rgba(196,160,82,.12), transparent 60%); }
.cta-band .wrap{ position:relative; display:flex; align-items:center; justify-content:space-between; gap:34px; padding: 54px 26px; flex-wrap:wrap; }
.cta-band .ct-left { display:flex; align-items:center; gap:24px; }
.cta-band .ct-left .cshield { width:58px;height:66px;color:var(--gold);flex:none; }
.cta-band h2 { color:#fff; font-size: 28px; margin-bottom:6px; }
.cta-band h2 em{ color: var(--gold-light); font-style:normal; }
.cta-band p { color: var(--muted-on-navy); margin:0; font-size:16px; }

/* =========================================================
   FOOTER
   ========================================================= */
.site-footer { background: #08131f; color:#c6cedb; padding: 64px 0 30px; border-top:1px solid rgba(196,160,82,.18); }
.footer-grid { display:grid; grid-template-columns: 1.4fr 1fr 1fr 1.1fr; gap: 40px; }
.footer-brand .fmark { display:flex; align-items:center; gap:12px; margin-bottom:18px; }
.footer-brand .fmark svg{ width:36px;height:42px;color:var(--gold); }
.footer-brand .fmark strong{ font-family:"Playfair Display",serif; font-size:19px; color:#fff; letter-spacing:.05em; line-height:1.1; display:block; }
.footer-brand .fmark span{ font-family:"Barlow",sans-serif; font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold-light); }
.footer-brand p { font-size:14px; color:#9aa6b6; line-height:1.6; }
.footer-col h4 { font-family:"Barlow",sans-serif; font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:#fff; margin-bottom:18px; font-weight:600; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:11px; }
.footer-col ul a { font-size:14.5px; color:#a9b4c2; transition: color .2s; }
.footer-col ul a:hover { color: var(--gold-light); }
.footer-col .fc { display:flex; gap:11px; align-items:flex-start; font-size:14px; color:#a9b4c2; margin-bottom:12px; }
.footer-col .fc svg{ width:17px;height:17px;color:var(--gold);flex:none;margin-top:3px; }
.footer-bottom { margin-top: 46px; padding-top: 22px; border-top:1px solid rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
  font-size:13px; color:#7f8a99; }
.footer-bottom a:hover{ color: var(--gold-light); }
.disclaimer { background:#08131f; color:#6d7784; font-size:12.5px; text-align:center; padding: 0 26px 26px; }
.disclaimer .wrap { border-top:1px solid rgba(255,255,255,.06); padding-top:20px; }

/* =========================================================
   sticky mobile call bar
   ========================================================= */
.mobile-call { display:none; }

/* =========================================================
   reveal animation
   ========================================================= */
.reveal { opacity:0; transform: translateY(22px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
.reveal.in { opacity:1; transform:none; }

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 1080px){
  .nav-links { display:none; }
  .burger { display:block; }
  .nav-phone span { display:none; }
  .hero-grid { grid-template-columns: 1fr; gap:36px; padding: 54px 0; }
  .hero-portrait { max-width: 420px; }
  .pagehead-grid { grid-template-columns: 1fr; }
  .pagehead .pagehead-portrait { max-width: 480px; }
  .split-card { grid-template-columns: 1fr; }
  .grid-4 { grid-template-columns: repeat(2,1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 860px){
  body{ font-size:16px; }
  .section { padding: 64px 0; }
  .grid-3,.grid-2,.cat-grid,.comp-grid,.tgrid,.case-grid { grid-template-columns: 1fr; }
  .case-stats { grid-template-columns: repeat(2,1fr); }
  .value-strip { grid-template-columns: 1fr; }
  .value-strip .v { border-right:0; border-bottom:1px solid rgba(196,160,82,.14); }
  .hprocess { flex-direction:column; }
  .harrow,.mini-arrow { display:none; }
  .mini-steps { flex-direction:column; }
  .contact-grid { grid-template-columns: 1fr; }
  .approach,.split-dark,.split-form { padding: 34px 26px; }
  .quoteband .wrap { grid-template-columns: 1fr; gap:10px; }
  .quoteband .big-qm { font-size:70px; }
  .cta-band .wrap { flex-direction:column; align-items:flex-start; }
  .faq-item .faq-body ul { grid-template-columns:1fr; }
  .faq-item .faq-body { padding-left:26px; }
  .mobile-call {
    display:flex; position:fixed; bottom:0; left:0; right:0; z-index:70;
    background: var(--navy); border-top:1px solid var(--gold);
  }
  .mobile-call a { flex:1; text-align:center; padding: 15px; font-family:"Barlow",sans-serif;
    font-weight:600; letter-spacing:.05em; text-transform:uppercase; font-size:14px; color:#fff; display:flex; align-items:center; justify-content:center; gap:9px; }
  .mobile-call a.mc-gold { background: var(--gold); color: var(--navy); }
  .mobile-call svg{ width:17px;height:17px; }
  body { padding-bottom: 54px; }
}
@media (max-width: 560px){
  .grid-4 { grid-template-columns: 1fr; }
  .case-stats { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .nav { height: 66px; }
}
@media (prefers-reduced-motion: reduce){
  *{ scroll-behavior:auto; }
  .reveal{ opacity:1; transform:none; transition:none; }
}

/* =========================================================
   ============  V2 — MODIFICĂRI CLIENT  ==================
   ========================================================= */

/* 7. eyebrow mai mare: 12.5px -> .9rem (~15px) */
.eyebrow { font-size: .9rem; letter-spacing: .22em; }

/* alternare fundal alb / navy (fără crem) */
.bg-cream, .bg-cream-2 { background: #fff; }
.sec-light { background: #fff; }
.sec-dark  { background: var(--navy); color:#fff; }

/* context text pe secțiuni navy */
.sec-dark .section-title,
.sec-dark .section-head h2,
.sec-dark h2, .sec-dark h3, .sec-dark h4 { color:#fff; }
.sec-dark .section-head p,
.sec-dark .lead,
.sec-dark > .wrap > p,
.sec-dark .wrap-narrow p { color: var(--muted-on-navy); }
.sec-dark .eyebrow { color: var(--gold-light); }
.sec-dark .step h3 { color:#fff; }
.sec-dark .step p  { color: var(--muted-on-navy); }
.sec-dark .step .ic { border-color: var(--gold); color: var(--gold); background: rgba(196,160,82,.08); }
.sec-dark .fcard h3 { color:#fff; }
.sec-dark .fcard p  { color: var(--muted-on-navy); }
.sec-dark .fcard .ic-round { background: rgba(196,160,82,.10); color: var(--gold); }
.sec-dark .hstep h4 { color:#fff; }
.sec-dark .hstep p  { color: var(--muted-on-navy); }
.sec-dark .edu-card { background: var(--navy-2); border-color: rgba(196,160,82,.20); }
.sec-dark .edu-card h4 { color:#fff; }
.sec-dark .edu-card p  { color: var(--muted-on-navy); }
.sec-dark .edu-card svg { color: var(--gold); }
.sec-dark .avoid { background: var(--navy-2); border-color: rgba(196,160,82,.2); border-left-color: var(--gold); }
.sec-dark .avoid h4 { color:#fff; }
.sec-dark .avoid p  { color: var(--muted-on-navy); }
.sec-dark .numbered .nstep h3 { color:#fff; }
.sec-dark .numbered .nstep p  { color: var(--muted-on-navy); }
.sec-dark .numbered .nstep .nb { background: var(--navy-2); border:1px solid rgba(196,160,82,.35); }
.sec-dark .faq-item { background: var(--navy-2); border-color: rgba(196,160,82,.18); }
.sec-dark .faq-item summary { color:#fff; }
.sec-dark .faq-item .faq-body p { color: var(--muted-on-navy); }
.sec-dark .faq-item .faq-body ul li { color: var(--muted-on-navy); }
.sec-dark .contact-info .ci { border-color: rgba(255,255,255,.10); }
.sec-dark .contact-info .ci h4 { color: var(--gold-light); }
.sec-dark .contact-info .ci p { color:#e7ebf1; }
.sec-dark .contact-info .ci .cic { background: rgba(196,160,82,.12); color: var(--gold); }
.sec-dark .split-form { background: var(--navy-2) !important; border-color: rgba(196,160,82,.2) !important; }
.sec-dark .split-form h2 { color:#fff; }
.sec-dark .split-form > p { color: var(--muted-on-navy); }
.sec-dark .field label { color:#cfd6e0; }
.sec-dark .field input,.sec-dark .field select,.sec-dark .field textarea { background: rgba(255,255,255,.04); border-color: rgba(196,160,82,.25); color:#fff; }
.sec-dark .field input::placeholder,.sec-dark .field textarea::placeholder { color:#8794a4; }

/* 5. scoate linia ::before din hero eyebrow, punem iconiță în markup */
.hero-eyebrow::before { display:none; }
.hero-eyebrow .eb-ic { width:26px;height:26px;color:var(--gold);flex:none; }

/* 2 + 12. logo lockup svg (shield+text) */
.brand .logo-lockup { height: 44px; width:auto; display:block; }
.footer-brand .logo-lockup { height: 48px; width:auto; }
@media (max-width:560px){ .brand .logo-lockup { height: 38px; } }

/* 3. navbar dropdown "Mai multe" + single row */
.nav-links { flex-wrap: nowrap; }
.has-dd { position: relative; }
.dd-toggle { display:inline-flex; align-items:center; gap:6px; background:none; border:0; cursor:pointer;
  font-family:"Barlow",sans-serif; font-size:13px; letter-spacing:.09em; text-transform:uppercase; color:#dfe4ec; font-weight:500; padding:6px 0; }
.dd-toggle svg{ width:13px;height:13px;transition:transform .25s; }
.has-dd:hover .dd-toggle svg,.has-dd:focus-within .dd-toggle svg{ transform:rotate(180deg); }
.dd-toggle:hover{ color:#fff; }
.dd-menu { position:absolute; top:calc(100% + 14px); right:0; min-width:230px;
  background: var(--navy-2); border:1px solid rgba(196,160,82,.22); border-radius:12px;
  box-shadow: var(--shadow-lg); padding:8px; opacity:0; visibility:hidden; transform: translateY(8px);
  transition: opacity .2s, transform .2s, visibility .2s; z-index:80; }
.has-dd:hover .dd-menu,.has-dd:focus-within .dd-menu{ opacity:1; visibility:visible; transform:none; }
.dd-menu a { display:block; padding:11px 14px; border-radius:8px; font-family:"Barlow",sans-serif;
  font-size:13px; letter-spacing:.06em; text-transform:uppercase; color:#dfe4ec; }
.dd-menu a::after{ display:none; }
.dd-menu a:hover{ background: rgba(196,160,82,.12); color: var(--gold-light); }
.dd-menu a.active{ color: var(--gold-light); }

/* 4. pagehead înălțime uniformă pe paginile interioare */
.pagehead .pagehead-grid { min-height: 340px; }
.pagehead.simple .pagehead-grid { min-height: 340px; }

/* 11. sticky deja activ; asigurăm și pe mobil */
.site-header { position: sticky; top:0; }

/* 13/14. pictograme despăgubiri mai mici */
.comp .comp-ic { width:40px;height:40px; }
.comp .comp-ic svg { width:28px;height:28px; }

/* file upload + tooltip info */
.field.file-field .file-row { display:flex; align-items:center; gap:10px; }
.file-drop { flex:1; display:flex; align-items:center; gap:10px; padding:12px 15px; border:1px dashed var(--line);
  border-radius:8px; background: var(--cream-2); cursor:pointer; font-size:14px; color: var(--muted); transition: border-color .2s; }
.file-drop:hover { border-color: var(--gold); }
.file-drop svg{ width:18px;height:18px;color:var(--gold-2);flex:none; }
.sec-dark .file-drop{ background: rgba(255,255,255,.04); border-color: rgba(196,160,82,.3); color:#9fb0c2; }
.info-btn { position:relative; width:30px;height:30px;border-radius:50%; border:1px solid var(--line);
  background:#fff; color:var(--gold-2); cursor:help; flex:none; display:inline-flex; align-items:center; justify-content:center; font-family:"Barlow",sans-serif; font-weight:700; }
.info-btn svg{ width:16px;height:16px; }
.info-btn .tip { position:absolute; bottom:calc(100% + 10px); right:-6px; width:230px;
  background: var(--navy); color:#fff; font-family:"Lora",serif; font-size:13px; line-height:1.5; padding:12px 14px;
  border-radius:10px; box-shadow: var(--shadow-md); opacity:0; visibility:hidden; transform: translateY(6px);
  transition:.2s; z-index:5; text-align:left; letter-spacing:0; text-transform:none; font-weight:400; }
.info-btn .tip::after{ content:""; position:absolute; top:100%; right:12px; border:7px solid transparent; border-top-color: var(--navy); }
.info-btn:hover .tip,.info-btn:focus .tip{ opacity:1; visibility:visible; transform:none; }
.file-hint { font-size:12.5px; color: var(--muted); margin-top:7px; }
.sec-dark .file-hint{ color:#8794a4; }

/* validare erori */
.field-error { display:none; color:#c0392b; font-size:13px; margin-top:6px; }
.field.invalid .field-error { display:block; }
.field.invalid input,.field.invalid select,.field.invalid textarea { border-color:#c0392b; box-shadow:0 0 0 3px rgba(192,57,43,.12); }
.sec-dark .field-error{ color:#ff9e94; }
.form-ok { display:none; margin-top:16px; padding:14px 16px; border-radius:10px; background:#eaf4ec; color:#2e6b3a; font-size:14.5px; border:1px solid #bfe0c6; }
.form-ok.show{ display:block; }
.sec-dark .form-ok{ background: rgba(46,107,58,.18); color:#bfe6c7; border-color: rgba(46,107,58,.4); }
.hp-field { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

/* MOBIL 1: hero centrat + margini pe toate paginile */
@media (max-width: 1080px){
  .hero-copy { text-align:center; padding: 0 6px; }
  .hero-eyebrow { justify-content:center; }
  .hero-actions { justify-content:center; }
  .hero p { margin-left:auto; margin-right:auto; }
  .pagehead .pagehead-grid > div:first-child { text-align:center; }
  .pagehead .hero-actions,.pagehead .hero-eyebrow{ justify-content:center; }
  .pagehead p { margin-left:auto; margin-right:auto; }
  .pagehead .divider-mark { justify-content:center; }
}
@media (max-width: 560px){
  .hero-copy { padding: 0 4px; }
  .hero-actions .btn { width:100%; justify-content:center; }
}

/* OP page dual-hero cards */
.op-angles { display:grid; grid-template-columns:1fr 1fr; gap:26px; margin-top:52px; }
.op-angle { background: var(--paper); border:1px solid var(--line-soft); border-radius:16px; padding:34px 32px; box-shadow: var(--shadow-sm); }
.sec-dark .op-angle { background: var(--navy-2); border-color: rgba(196,160,82,.2); }
.op-angle .oa-ic { width:58px;height:58px;border-radius:50%; background: var(--cream); color: var(--gold-2); display:flex;align-items:center;justify-content:center; margin-bottom:18px; }
.sec-dark .op-angle .oa-ic { background: rgba(196,160,82,.12); color: var(--gold); }
.op-angle .oa-ic svg{ width:28px;height:28px; }
.op-angle h3 { font-size:23px; margin-bottom:12px; }
.sec-dark .op-angle h3{ color:#fff; }
.op-angle p { color: var(--ink-soft); font-size:15px; margin:0 0 18px; }
.sec-dark .op-angle p{ color: var(--muted-on-navy); }
.op-note { display:grid; grid-template-columns: repeat(3,1fr); gap:20px; margin-top:44px; }
.op-note .onote { background: var(--navy-2); border:1px solid rgba(196,160,82,.2); border-radius:12px; padding:22px 22px; }
.op-note .onote svg{ width:26px;height:26px;color:var(--gold);margin-bottom:12px; }
.op-note .onote h4{ color:#fff; font-size:16px; margin-bottom:8px; }
.op-note .onote p{ color: var(--muted-on-navy); font-size:14px; margin:0; }
.measures { display:grid; grid-template-columns: repeat(4,1fr); gap:16px; margin-top:44px; }
.measure { text-align:center; padding:22px 14px; border:1px solid var(--line-soft); border-radius:12px; background:var(--paper); }
.sec-dark .measure { background: var(--navy-2); border-color: rgba(196,160,82,.2); }
.measure svg{ width:30px;height:30px;color:var(--gold-2);margin-bottom:12px; }
.sec-dark .measure svg{ color: var(--gold); }
.measure p{ margin:0; font-size:13.5px; color: var(--ink-soft); }
.sec-dark .measure p{ color: var(--muted-on-navy); }
@media (max-width: 860px){
  .op-angles { grid-template-columns:1fr; }
  .op-note { grid-template-columns:1fr; }
  .measures { grid-template-columns:1fr 1fr; }
}

/* --- navbar: forțează un singur rând, fără wrap intern --- */
.nav { gap: 20px; }
.nav-links { gap: 18px; }
.nav-links a, .dd-toggle { white-space: nowrap; font-size: 12.5px; letter-spacing: .05em; }
.nav-phone { white-space: nowrap; }
.nav-phone span { white-space: nowrap; }
.brand .logo-lockup { height: 40px; }
@media (max-width: 1200px){
  .nav-links { display: none; }
  .burger { display: block; }
  .nav-phone span { display: none; }
  .hero-copy { text-align:center; }
  .hero-eyebrow,.hero-actions { justify-content:center; }
}

/* --- portret real avocat --- */
.portrait-img { width:100%; height:100%; object-fit:cover; display:block; }
.hero-portrait .portrait-img { object-position: 50% 16%; }
.pagehead-portrait .portrait-img { object-position: 50% 20%; }

/* --- pictograme curate în locul „scenelor" desenate --- */
.cat-img { background: linear-gradient(160deg, #16304f 0%, #0f2540 70%); }
.cat-img .cat-ic { width: 66px; height: 66px; color: var(--gold); opacity: .95; }
.cat .cat-badge { display: none; }              /* badge redundant scos */
.cat .cat-body { padding-top: 26px; }

/* despăgubiri: carduri curate (fără panou desenat), cu accent auriu sus */
.comp { border-top: 3px solid var(--gold); }
.comp .comp-top { padding: 28px 26px 30px; }
.comp .comp-img { display: none; }

/* --- siguranță: orice icon pus în tile-ul de categorii rămâne mic și centrat --- */
.cat-img svg, .cat-img img { width: 64px; height: 64px; max-width: 64px; max-height: 64px; object-fit: contain; }

/* =========================================================
   ============  V3 — fixuri client (rundă nouă)  =========
   ========================================================= */

/* 3+4. hero: o singură coloană & centrat sub 1200px, imagine centrată */
@media (max-width: 1200px){
  .hero-grid, .pagehead-grid, .pagehead.simple .pagehead-grid { grid-template-columns: 1fr; }
  .hero-portrait, .pagehead-portrait { max-width: 440px; margin-left:auto; margin-right:auto; }
  .hero-copy { text-align: center; }
  .hero-eyebrow, .hero-actions { justify-content: center; }
  .hero p { margin-left: auto; margin-right: auto; }
}
/* 3. margini laterale mai generoase pe hero/pagehead peste 1080px */
@media (min-width: 1081px){
  .hero .wrap, .pagehead .wrap { padding-left: 40px; padding-right: 40px; }
}

/* 5. logo footer nedeformat (scoatem width/height fix impuse de regula veche) */
.footer-brand .fmark svg { width: auto; height: 46px; }
.footer-brand .logo-lockup { width: auto; height: 46px; }

/* 2. info icon mai mic (15px în loc de 30px) */
.info-btn { width: 15px; height: 15px; font-size: 10px; border-width:1px; vertical-align: text-bottom; }
.info-btn svg { width: 11px; height: 11px; }
.info-btn .tip { width: 220px; font-size: 12.5px; }

/* 2. file upload — icon repoziționat + drop zone + listă fișiere sub buton */
.file-drop { display:flex; align-items:center; justify-content:flex-start; gap:0; cursor:pointer; }
.file-drop .fd-ic { position: relative; margin-right: 5px; width:18px; height:18px; color: var(--gold-2); flex:none; }
.file-drop .fd-text { font-size:14px; color: var(--muted); }
.file-drop .fd-link { color: var(--gold-2); text-decoration: underline; }
.file-drop.drag { border-color: var(--gold); background: rgba(196,160,82,.08); }
.sec-dark .file-drop .fd-text { color:#9fb0c2; }
.file-list { list-style:none; margin:10px 0 0; padding:0; display:flex; flex-direction:column; gap:8px; }
.file-list li { display:flex; align-items:center; gap:12px; background: var(--cream-2); border:1px solid var(--line); border-radius:8px; padding:9px 12px; font-size:13.5px; }
.file-list li .fl-name { flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color: var(--ink); }
.file-list li .fl-size { color: var(--muted); font-size:12px; flex:none; }
.file-list li .fl-rm { background:none; border:0; cursor:pointer; color:#c0392b; font-size:20px; line-height:.6; flex:none; padding:0 2px; }
.sec-dark .file-list li { background: rgba(255,255,255,.04); border-color: rgba(196,160,82,.25); }
.sec-dark .file-list li .fl-name { color:#e7ebf1; }
.form-ok.is-error { background:#f7e7e5; color:#a23b2e; border-color:#e6c3bd; }
.sec-dark .form-ok.is-error { background: rgba(162,59,46,.18); color:#f2b8ae; border-color: rgba(162,59,46,.4); }

/* pagina legală (politica de confidențialitate) */
.legal { max-width: 860px; margin: 0 auto; }
.legal .legal-updated { font-family:"Barlow",sans-serif; font-size:13px; letter-spacing:.05em; text-transform:uppercase; color: var(--muted); margin-bottom: 30px; }
.legal h2 { font-size: 23px; margin: 34px 0 12px; }
.legal p { color: var(--ink-soft); margin: 0 0 14px; }
.legal ul { margin: 0 0 16px; padding-left: 4px; list-style: none; }
.legal ul li { position: relative; padding-left: 20px; color: var(--ink-soft); margin-bottom: 8px; }
.legal ul li::before { content:""; position:absolute; left:0; top:11px; width:6px; height:6px; border-radius:50%; background: var(--gold); }
.legal a { color: var(--gold-2); text-decoration: underline; }
.legal .legal-cta { margin-top: 40px; padding-top: 28px; border-top:1px solid var(--line-soft); text-align:center; }
.legal .legal-cta p { font-family:"Playfair Display",serif; font-size: 20px; color: var(--ink); margin-bottom: 16px; }

/* fix: opțiunile din <select> erau albe pe alb pe secțiunile navy */
.field select option,
.field select optgroup {
  color: #1C2430;
  background: #ffffff;
}

/* inline form-note pentru ancoră + underline pentru evidențiere + ajustare svg */
.form-note a {text-decoration: underline;}
p.form-note {display:inline-block;}
p.form-note svg {position:relative; top: 3px; left: -2px;}