:root{--bg: #ffffff;--paper: #f5f7fa;--ink: #1a2433;--muted: rgba(26, 36, 51, .62);--soft: rgba(26, 36, 51, .42);--rule: rgba(26, 36, 51, .1);--rule-strong: rgba(26, 36, 51, .2);--primary: #1f4d8c;--primary-hover: #173a6a;--primary-ink: #ffffff;--primary-tint: #e8eef6;--primary-deep: #0e3160;--accent: #1f4d8c;--gold: #c69531;--signal: #9c2a35;--flag-blue: #0050a8;--flag-yellow: #ffd400;--flag-red: #cc092f;--ff-display: "Source Serif 4", "Source Serif Pro", "Times New Roman", serif;--ff-body: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--ff-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--sp-9: 96px;--sp-10: 128px;--container: 1320px;--gutter: 32px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--ff-body);font-size:16px;line-height:1.55;font-feature-settings:"ss01","ss02","kern";text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}img,svg{display:block;max-width:100%}.display{font-family:var(--ff-display);font-weight:380;font-size:clamp(56px,7.6vw,116px);line-height:.95;letter-spacing:-.022em;margin:0;text-wrap:balance}.headline{font-family:var(--ff-display);font-weight:400;font-size:clamp(36px,4.2vw,60px);line-height:1.02;letter-spacing:-.018em;margin:0;text-wrap:balance}.title{font-family:var(--ff-display);font-weight:420;font-size:clamp(24px,2.4vw,32px);line-height:1.1;letter-spacing:-.012em;margin:0;text-wrap:balance}.subhead{font-family:var(--ff-body);font-weight:500;font-size:18px;line-height:1.4;letter-spacing:-.003em;margin:0}.body-lg{font-size:19px;line-height:1.55;letter-spacing:-.002em;max-width:60ch;text-wrap:pretty}.body{font-size:16px;line-height:1.6;max-width:64ch;text-wrap:pretty}.body-sm{font-size:14px;line-height:1.55}.meta{font-family:var(--ff-mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.meta-strong{font-family:var(--ff-mono);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}.kicker{font-family:var(--ff-mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.tabular{font-variant-numeric:tabular-nums}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.rule{height:1px;background:var(--rule);border:0;margin:0}.rule-strong{height:1px;background:var(--rule-strong);border:0;margin:0}.grid-12{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gutter)}.section{padding:var(--sp-9) 0}.section-tight{padding:var(--sp-7) 0}.section-header{display:grid;grid-template-columns:1fr 2fr;gap:var(--gutter);padding-bottom:var(--sp-7);align-items:end}@media(max-width:880px){.section-header{grid-template-columns:1fr;gap:var(--sp-4)}.section{padding:var(--sp-7) 0}}.btn{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border:0;font-family:var(--ff-body);font-size:14px;font-weight:500;letter-spacing:.01em;background:var(--primary);color:var(--primary-ink);border-radius:0;transition:background .15s,transform .15s;white-space:nowrap}.btn:hover{background:var(--primary-hover)}.btn:active{transform:translateY(1px)}.btn-ghost{background:transparent;color:var(--ink);padding:14px 0;border-bottom:1px solid var(--ink)}.btn-ghost:hover{border-bottom-color:var(--accent);color:var(--accent)}.btn-link{background:transparent;color:var(--ink);padding:0 0 4px;border:0;display:inline-flex;align-items:baseline;gap:8px;font-size:14px;font-weight:500;letter-spacing:.01em;border-bottom:1px solid var(--rule-strong);cursor:pointer;transition:border-color .15s,color .15s}.btn-link:hover{border-bottom-color:var(--ink)}.btn-arrow:after{content:"\2192";font-family:var(--ff-body);font-size:1em}.arrow{display:inline-block;width:1em;font-family:var(--ff-body);transition:transform .2s}a:hover .arrow,button:hover .arrow{transform:translate(3px)}.field{display:flex;flex-direction:column;gap:8px}.field-label{font-family:var(--ff-mono);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.input,.textarea,.select{font-family:var(--ff-body);font-size:16px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--rule-strong);padding:12px 0;outline:none;transition:border-color .15s;appearance:none;width:100%}.input:focus,.textarea:focus,.select:focus{border-bottom-color:var(--primary)}.textarea{resize:vertical;min-height:96px;line-height:1.5}.gov-strip{background:#fff;color:var(--ink);font-family:var(--ff-body);border-bottom:1px solid var(--rule)}.gov-inner{max-width:var(--container);margin:0 auto;padding:10px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12px;color:var(--muted)}.gov-social{display:flex;gap:14px;align-items:center}.gov-social a{width:22px;height:22px;display:grid;place-items:center;color:var(--muted);transition:color .15s}.gov-social a:hover{color:var(--primary)}.gov-tagline{font-family:var(--ff-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.nav-util{display:inline-flex;align-items:center;gap:14px;padding:0 18px;font-family:var(--ff-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-left:1px solid var(--rule);white-space:nowrap;flex-shrink:0}.nav-util-hours{font-weight:500;color:var(--ink)}.nav-util-phone{color:var(--ink);font-weight:600;letter-spacing:.04em;transition:color .15s}.nav-util-phone:hover{color:var(--primary)}.nav-util-sep{color:var(--rule-strong)}.nav-util-lang{display:inline-flex;gap:0;align-items:center}.nav-util-lang button{background:transparent;border:0;padding:0 4px;font-family:inherit;font-size:11.5px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);cursor:pointer}.nav-util-lang button.on{color:var(--primary);font-weight:700}.nav-util-lang .sep{color:var(--rule-strong);padding:0 2px;font-size:10px}@media(max-width:1100px){.nav-util-hours,.nav-util-sep:first-of-type{display:none}}@media(max-width:900px){.nav-util{display:none}}.gov-lang{display:inline-flex;gap:0;align-items:center}.gov-lang button{background:transparent;border:0;padding:4px 8px;font-size:12px;font-weight:500;color:var(--muted);letter-spacing:.04em;cursor:pointer;text-transform:uppercase}.gov-lang button.on{color:var(--primary);font-weight:600}.gov-lang .sep{color:var(--rule-strong);padding:0 2px;font-size:10px}.masthead{background:#fff;padding:32px var(--gutter) 32px;border-bottom:1px solid var(--rule)}.masthead-inner{max-width:1600px;margin:0 auto;padding:0 48px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}.masthead-seal{width:68px;height:68px;flex-shrink:0}.masthead-seal img{width:100%;height:100%;object-fit:contain;display:block}.masthead-text{line-height:1.05}.masthead-title{font-family:var(--ff-display);font-size:26px;font-weight:500;color:var(--ink);letter-spacing:-.01em;margin:0;line-height:1.12}.masthead-sub{font-family:var(--ff-mono);font-size:11px;font-weight:500;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:8px}.masthead-meta{text-align:right;font-family:var(--ff-body);font-size:13px;letter-spacing:0;text-transform:none;color:rgba(26,36,51,.78);line-height:1.7;font-variant-numeric:tabular-nums}.masthead-meta .mm-label{display:inline-block;font-family:var(--ff-mono);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-right:10px;vertical-align:.08em}.masthead-meta .mm-num{font-family:var(--ff-mono);font-size:12px;font-weight:400;letter-spacing:.02em;color:rgba(26,36,51,.7)}.masthead-meta .mm-addr{color:rgba(26,36,51,.74)}.nav{background:#fff;color:var(--ink);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--rule)}.nav-inner{display:flex;align-items:stretch;justify-content:space-between;padding:0 48px;max-width:1600px;margin:0 auto;gap:0;min-height:56px}.nav-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;height:56px;padding-right:22px;border-right:1px solid var(--rule);margin-right:8px}.nav-brand img{height:42px;width:42px;object-fit:contain;display:block;filter:drop-shadow(0 2px 3px rgba(26,36,51,.18)) drop-shadow(0 1px 1px rgba(26,36,51,.12));}.nav-brand-text{display:flex;flex-direction:column;line-height:1.05;text-align:left}.nav-brand-text strong{font-family:var(--ff-display);font-size:16px;font-weight:500;color:var(--primary);letter-spacing:-.01em}.nav-brand-text span{font-family:var(--ff-mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:2px}.nav-links{display:flex;gap:0;align-items:stretch}.nav-link{position:relative;padding:0 18px;font-size:12.5px;font-weight:500;color:var(--ink);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:transparent;border:0;display:inline-flex;align-items:center;white-space:nowrap;transition:color .15s}.nav-link:after{content:"";position:absolute;left:22px;right:22px;bottom:0;height:2px;background:var(--primary);transform:scaleX(0);transform-origin:left;transition:transform .25s cubic-bezier(.2,.7,.2,1)}.nav-link:hover{color:var(--primary)}.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}.nav-link.active{color:var(--primary)}.nav-right{display:flex;align-items:stretch;gap:0}.nav-cta{display:inline-flex;align-items:center;gap:10px;padding:0 22px;background:var(--primary);color:#fff;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border:0;transition:background .15s}.nav-cta:hover{background:var(--primary-hover)}.nav-search{display:inline-flex;align-items:center;padding:0 16px;color:var(--ink);background:transparent;border:0;cursor:pointer;font-size:16px}.nav-search:hover{color:var(--primary)}.nav-search-wrap{display:inline-flex;align-items:center;gap:8px;margin-left:14px;padding:0 12px;border-left:1px solid var(--rule);position:relative}.nav-search-icon{color:var(--muted);flex-shrink:0}.nav-search-input{background:transparent;border:0;padding:0;font-family:var(--ff-body);font-size:13px;color:var(--ink);width:160px;outline:none;letter-spacing:.01em}.nav-search-input::placeholder{color:var(--muted);font-family:var(--ff-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase}.nav-search-input:focus{width:220px}.nav-search-input{transition:width .25s cubic-bezier(.2,.7,.2,1)}.nav-search-wrap:focus-within .nav-search-icon{color:var(--primary)}@media(max-width:900px){.nav-search-wrap{display:none}}@media(max-width:880px){.masthead-meta{display:none}.masthead-inner{grid-template-columns:auto 1fr}}@media(max-width:700px){.masthead{display:none}.nav-inner{padding:0 14px;min-height:56px}.nav-brand{height:56px;padding-right:0;margin-right:0;border-right:0;gap:10px;min-width:0;flex:1 1 auto}.nav-brand img{width:34px;height:34px}.nav-brand-text{min-width:0}.nav-brand-text strong{font-size:15px;white-space:nowrap}.nav-brand-text span{display:none}.nav-toggle{width:40px;height:40px;margin-left:4px}.nav-toggle span:nth-child(1){top:12px}.nav-toggle span:nth-child(2){top:19px}.nav-toggle span:nth-child(3){top:26px}.nav-toggle.is-open span:nth-child(1){top:19px}.nav-toggle.is-open span:nth-child(3){top:19px}}@media(max-width:380px){.nav-inner{padding:0 12px}.nav-brand img{width:30px;height:30px}.nav-brand-text strong{font-size:14px}.nav-brand{gap:8px}}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--rule-strong);font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:transparent}.tag-solid{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filter-chip{display:inline-flex;align-items:baseline;gap:8px;padding:8px 16px;border:1px solid var(--rule-strong);background:transparent;font-family:var(--ff-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);transition:background .15s,color .15s,border-color .15s}.filter-chip:hover{background:var(--paper)}.filter-chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filter-count{opacity:.55}.depth-scale{position:absolute;left:24px;top:0;bottom:0;width:1px;background:#ffffff2e;z-index:2;pointer-events:none}.depth-tick{position:absolute;left:-8px;display:flex;align-items:center;gap:10px;color:#ffffffd9;font-family:var(--ff-mono);font-size:10px;letter-spacing:.08em}.depth-tick:before{content:"";width:16px;height:1px;background:#ffffff80}.depth-tick-major:before{width:22px;height:1.5px;background:var(--gold, #c69531)}.depth-tick-major{color:var(--gold, #c69531);font-weight:600}.hero-split{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);min-height:680px;background:var(--primary-deep);color:#fff;overflow:hidden}.hero-spine{position:absolute;left:18px;top:50%;transform:translateY(-50%) rotate(-90deg);transform-origin:left center;font-family:var(--ff-mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:#ffffff73;white-space:nowrap;z-index:3;display:flex;align-items:center;gap:14px}.hero-spine:before{content:"";width:28px;height:1px;background:var(--gold, #c69531)}.hero-split-left{position:relative;padding:96px 72px 96px 112px;display:flex;flex-direction:column;justify-content:center;background:var(--primary-deep);z-index:1}.hero-split-left:before,.hero-split-left:after{content:"";position:absolute;width:18px;height:18px;border:1px solid rgba(255,255,255,.22)}.hero-split-left:before{top:32px;left:64px;border-right:0;border-bottom:0}.hero-split-left:after{bottom:32px;right:32px;border-left:0;border-top:0}.hero-split-kicker{display:flex;align-items:center;gap:14px;margin-bottom:36px}.hero-split-kicker-num{font-family:var(--ff-mono);font-size:11px;font-weight:600;letter-spacing:.18em;color:var(--gold, #c69531);text-transform:uppercase}.hero-split-kicker-line{flex:1;height:1px;background:#ffffff2e;max-width:80px}.hero-split-kicker-label{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.18em;color:#fff9;text-transform:uppercase}.hero-split-title{font-family:var(--ff-display);font-size:clamp(40px,4.8vw,68px);font-weight:320;line-height:1;letter-spacing:-.022em;color:#fff;margin:0 0 28px;text-wrap:balance}.hero-split-title em{font-style:italic;font-weight:360;color:#ffffff8c}.hero-split-sub{font-size:17px;line-height:1.6;color:#ffffffbd;max-width:46ch;margin:0 0 44px;font-weight:300}.hero-split-actions{display:flex;gap:22px;flex-wrap:wrap;align-items:center}.btn-gold{display:inline-flex;align-items:center;gap:14px;background:#fff;color:var(--primary-deep);padding:16px 28px;border:0;font-family:var(--ff-body);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s}.btn-gold:hover{background:#ffffffe6}.btn-gold .arrow{font-size:14px}.btn-line-light{background:transparent;color:#ffffffe0;border:0;padding:12px 0 8px;font-family:var(--ff-body);font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;position:relative;transition:color .15s}.btn-line-light:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#fff6;transition:background .15s,transform .25s;transform-origin:right}.btn-line-light:hover{color:#fff}.btn-line-light:hover:after{background:var(--gold, #c69531)}.hero-split-right{position:relative;overflow:hidden}.hero-split-right img{width:100%;height:100%;object-fit:cover;display:block}.hero-split-right:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0e316066,#0e316000 30%),linear-gradient(180deg,#0e316000 50%,#0e316080)}.hero-data-card{position:absolute;right:32px;bottom:32px;z-index:2;background:#0a1420c7;backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%);color:#fff;padding:26px 30px;border-left:2px solid var(--gold, #c69531);max-width:340px;box-shadow:0 24px 48px -16px #00000080}.hero-data-card:before{content:"";position:absolute;top:8px;right:8px;width:14px;height:14px;border-top:1px solid rgba(198,149,49,.6);border-right:1px solid rgba(198,149,49,.6)}.hero-data-card-label{font-family:var(--ff-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold, #c69531);margin-bottom:12px;display:inline-block;border-bottom:1px solid rgba(198,149,49,.35);padding-bottom:6px}.hero-data-card-title{font-family:var(--ff-display);font-size:22px;font-weight:420;margin:0 0 8px;line-height:1.15;letter-spacing:-.005em}.hero-data-card-body{font-size:13px;color:#ffffffb8;line-height:1.5;margin:0;font-weight:300}.hero-stats-row{background:#0a1a2e;color:#fff;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.08);position:relative}.hero-stats-row>div{padding:36px;border-right:1px solid rgba(255,255,255,.06);position:relative;transition:background .3s}.hero-stats-row>div:last-child{border-right:0}.hero-stats-row>div:hover{background:#ffffff06}.hero-stats-row>div:before{content:"";position:absolute;top:0;left:36px;width:28px;height:2px;background:var(--gold, #c69531);opacity:0;transform:scaleX(0);transform-origin:left;transition:opacity .25s,transform .35s cubic-bezier(.2,.7,.2,1)}.hero-stats-row>div:hover:before{opacity:1;transform:scaleX(1)}.hero-stats-row .hsv{font-family:var(--ff-display);font-size:clamp(32px,3.6vw,48px);font-weight:380;line-height:1;letter-spacing:-.018em;display:flex;align-items:baseline;gap:10px;white-space:nowrap}.hero-stats-row .hsv .suf{font-family:var(--ff-display);font-style:italic;font-size:14px;font-weight:400;color:#ffffff80;letter-spacing:.005em}.hero-stats-row .hsl{margin-top:14px;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#fff9}@media(max-width:980px){.hero-split{grid-template-columns:1fr;min-height:auto}.hero-split-left{padding:56px 24px}.hero-split-right{min-height:360px}.hero-stats-row{grid-template-columns:repeat(2,1fr)}.depth-scale{display:none}}.photo{position:relative;overflow:hidden;background:var(--rule)}.photo img{width:100%;height:100%;object-fit:cover;display:block}.photo-caption{position:absolute;left:16px;bottom:16px;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:#0d1f2ca6;padding:6px 10px;backdrop-filter:blur(4px)}.photo-overlay:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0d1f2c00 30%,#0d1f2cb3);pointer-events:none}.hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden}.hero-bg img{width:100%;height:100%;object-fit:cover;display:block;opacity:.42;filter:saturate(.85)}.hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--bg) 0%,rgba(242,244,246,.55) 40%,var(--bg) 100%)}.footer{background:var(--ink);color:var(--bg);padding:var(--sp-9) 0 var(--sp-5);margin-top:var(--sp-9)}.footer .footer-rule{height:1px;background:#ffffff29;border:0;margin:var(--sp-7) 0 var(--sp-5)}.footer .container{max-width:1600px;padding:0 48px}.footer .meta{color:#ffffff8c}.footer-grid{display:grid;grid-template-columns:1.4fr 1.4fr 1fr 1fr;gap:56px;align-items:start}.footer-col{min-width:0}.footer-h{font-family:var(--ff-display);font-size:22px;font-weight:500;color:#fff;margin:0 0 20px;letter-spacing:-.008em;position:relative;padding-bottom:12px}.footer-h:after{content:"";position:absolute;left:0;bottom:0;width:72px;height:1px;background:linear-gradient(to right,#d9a847 0%,rgba(217,168,71,.55) 55%,transparent 100%)}.footer-body{font-size:13.5px;line-height:1.65;color:#ffffffc7;margin:0;font-weight:300;max-width:50ch}.footer-social{display:flex;gap:12px;margin-top:20px}.footer-social a{width:32px;height:32px;display:grid;place-items:center;background:#ffffff14;color:#ffffffb3;border:1px solid rgba(255,255,255,.15);transition:background .15s,color .15s,border-color .15s,transform .15s}.footer-social a:hover{background:var(--gold, #c69531);color:var(--ink);border-color:var(--gold, #c69531);transform:translateY(-2px)}.partners{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.partner-row{display:flex;align-items:center;gap:14px}.partner-seal{width:42px;height:42px;flex-shrink:0;display:grid;place-items:center;background:transparent;border:0}.partner-seal img{width:100%;height:100%;object-fit:contain;filter:brightness(1.05)}.partner-link{font-size:13.5px;color:#ffffffd9;font-weight:500;transition:color .15s;text-decoration:none}.partner-link:hover{color:var(--gold, #c69531)}.footer-meta-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.footer-meta-link{font-size:13.5px;color:#ffffffd9;transition:color .15s}.footer-meta-link:hover{color:var(--gold, #c69531)}.footer-bottom{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:16px}@media(max-width:980px){.footer-grid{grid-template-columns:1fr 1fr;gap:40px}}@media(max-width:640px){.footer-grid{grid-template-columns:1fr}}.placeholder{position:relative;background:repeating-linear-gradient(135deg,transparent 0 12px,rgba(13,31,44,.05) 12px 13px);border:1px solid var(--rule);display:grid;place-items:center;color:var(--soft);font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slowZoom{0%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes drawLine{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes countUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeUp .55s cubic-bezier(.2,.7,.2,1) both}[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay, 0ms)}[data-reveal].in{opacity:1;transform:translateY(0)}[data-reveal=left]{transform:translate(-24px)}[data-reveal=left].in{transform:translate(0)}[data-reveal=right]{transform:translate(24px)}[data-reveal=right].in{transform:translate(0)}[data-reveal=zoom]{transform:scale(.96)}[data-reveal=zoom].in{transform:scale(1)}html{scroll-behavior:smooth}.btn,.nav-cta,.btn-gold,.btn-light,.btn-ghost-light,.btn-line-light{transition:background .2s cubic-bezier(.2,.7,.2,1),transform .15s cubic-bezier(.2,.7,.2,1),box-shadow .2s cubic-bezier(.2,.7,.2,1),color .15s}.btn:hover,.nav-cta:hover,.btn-gold:hover{transform:translateY(-1px);box-shadow:0 8px 18px -10px #0e316066}.btn:active,.nav-cta:active,.btn-gold:active{transform:translateY(0)}.hero-split-right img{animation:slowZoom 4s cubic-bezier(.2,.7,.2,1) both}.hero-photo-cycle{position:absolute;inset:0}.hero-photo-cycle img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s cubic-bezier(.2,.7,.2,1)}.hero-photo-cycle img.on{opacity:1}.hero-photo-cycle img.on~img{opacity:0}.cycle-dots{position:absolute;left:96px;bottom:36px;display:flex;gap:8px;z-index:3}.cycle-dots button{width:28px;height:2px;background:#ffffff4d;border:0;padding:0;cursor:pointer;transition:background .25s}.cycle-dots button.on{background:var(--gold, #c69531)}.number-ticker{display:inline-block}.number-ticker.tick-in{animation:countUp .8s cubic-bezier(.2,.7,.2,1) both}.service-card{transition:background .25s cubic-bezier(.2,.7,.2,1)}.service-card-photo img{transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .3s!important}.service-card:hover .service-card-photo img{transform:scale(1.07);filter:saturate(1) brightness(1.05)}.announce-row{transition:background .25s,padding .25s cubic-bezier(.2,.7,.2,1)}.announce-row:hover{padding-left:16px}@keyframes drift{0%{background-position:0% 50%}to{background-position:100% 50%}}@media(max-width:880px){:root{--gutter: 20px}.nav-links{display:none}.grid-12{grid-template-columns:repeat(6,1fr)}}.service-card{position:relative}.service-card:before{content:"";position:absolute;top:0;left:0;width:0;height:2px;background:var(--gold, #c69531);transition:width .4s cubic-bezier(.2,.7,.2,1);z-index:2}.service-card:hover:before{width:60%}.service-card-photo{position:relative}.service-card-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0a142000 60%,#0a142066);pointer-events:none;opacity:0;transition:opacity .35s;z-index:1}.service-card:hover .service-card-photo:after{opacity:1}.masthead-dots{display:inline-flex;gap:5px;align-items:center;margin-top:10px;justify-content:center}.masthead-dots span{width:5px;height:5px;border-radius:50%}.masthead-dots span:nth-child(1){background:var(--flag-blue)}.masthead-dots span:nth-child(2){background:var(--flag-yellow)}.masthead-dots span:nth-child(3){background:var(--flag-red)}.service-card-title{font-weight:460;letter-spacing:-.012em}.hero-split-right:before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,#0e3160d9,#0e316000 18%)}.section-header .meta-strong,.section-header [class*=meta-strong]:before{position:relative}.fieldwork-grid{gap:28px}.announce-row{border-top:1px solid var(--rule);position:relative}.announce-row:before{content:"";position:absolute;left:0;top:-1px;width:0;height:1px;background:var(--primary);transition:width .4s cubic-bezier(.2,.7,.2,1)}.announce-row:hover:before{width:60px}.depth-scale{left:36px;background:linear-gradient(180deg,transparent 0%,rgba(198,149,49,.45) 12%,rgba(198,149,49,.45) 88%,transparent 100%)}.depth-tick{display:none!important}@keyframes pulseDot{0%,to{opacity:.7}50%{opacity:1}}.hero-data-card-label:before{content:"\25cf";display:inline-block;margin-right:8px;font-size:8px}a,button{transition:opacity .15s,color .15s}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--primary);outline-offset:3px;box-shadow:0 0 0 4px #1f4d8c38}:where(.hero-full,.footer,.hero-stats-row) :where(a,button):focus-visible{outline-color:#fff;box-shadow:0 0 0 4px #ffffff47}.leaflet-container{background:#eaecf0!important;font-family:var(--ff-body)!important}.leaflet-control-zoom a{border-radius:0!important;border:1px solid var(--rule-strong)!important;background:#fff!important;color:var(--ink)!important}.leaflet-control-attribution{background:transparent!important;font-size:10px!important;color:var(--muted)!important}.md-pin-wrap{background:transparent!important;border:0!important}.md-pin{position:relative;display:flex;align-items:center;white-space:nowrap}.md-pin-dot{width:10px;height:10px;border-radius:50%;background:var(--primary);border:1.5px solid #fff;box-shadow:0 1px 4px #00000040;flex-shrink:0}.md-pin-label{margin-left:6px;font-size:11px;font-weight:500;color:var(--ink);background:#ffffffeb;padding:2px 6px;border:1px solid var(--rule);text-shadow:none}.md-pin-seat .md-pin-dot{width:14px;height:14px;background:var(--gold, #c69531);border:2px solid #fff;box-shadow:0 2px 6px #00000059}.md-pin-seat .md-pin-pulse{position:absolute;left:-6px;top:-6px;width:26px;height:26px;border-radius:50%;background:var(--gold, #c69531);opacity:.25;animation:pulseSeat 2.4s ease-in-out infinite;pointer-events:none}.md-pin-seat .md-pin-label{font-weight:700;border-color:var(--gold, #c69531)}@keyframes pulseSeat{0%,to{transform:scale(1);opacity:.25}50%{transform:scale(1.6);opacity:0}}.back-bar{border-bottom:1px solid var(--rule);background:var(--paper)}.back-bar .container{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:14px var(--gutter);min-height:50px}.back-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;padding:6px 0;margin-left:-2px;font-family:var(--ff-body);font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--ink);cursor:pointer;transition:color .15s,transform .15s}.back-btn:hover{color:var(--primary)}.back-btn:hover .back-btn-arrow{transform:translate(-3px)}.back-btn-arrow{font-size:16px;color:var(--primary);transition:transform .2s}.back-crumbs{display:flex;align-items:center;gap:10px;font-family:var(--ff-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.back-link{background:0;border:0;padding:0;font:inherit;color:var(--muted);cursor:pointer;letter-spacing:inherit;text-transform:inherit;transition:color .15s}.back-link:hover{color:var(--primary)}.back-sep{opacity:.5}.back-current{color:var(--ink);font-weight:600}@media(max-width:700px){.back-crumbs{display:none}}.nav-toggle{display:none;position:relative;width:44px;height:44px;margin-left:8px;background:transparent;border:1px solid var(--rule-strong);border-radius:2px;cursor:pointer;padding:0;flex:0 0 auto}.nav-toggle span{position:absolute;left:11px;right:11px;height:1.5px;background:var(--ink);border-radius:1px;transition:transform .25s ease,opacity .2s ease,top .25s ease}.nav-toggle span:nth-child(1){top:14px}.nav-toggle span:nth-child(2){top:21px}.nav-toggle span:nth-child(3){top:28px}.nav-toggle.is-open span:nth-child(1){top:21px;transform:rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){top:21px;transform:rotate(-45deg)}.nav-toggle:hover{border-color:var(--primary)}.nav-toggle:hover span{background:var(--primary)}.nav-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.nav-drawer{position:fixed;inset:0;background:#10162600;z-index:1000;visibility:hidden;pointer-events:none;transition:background .25s ease,visibility 0s linear .25s;display:flex;justify-content:flex-end}.nav-drawer.is-open{background:#1016268c;visibility:visible;pointer-events:auto;transition:background .25s ease,visibility 0s;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.nav-drawer-panel{width:min(340px,86vw);max-width:100%;height:100%;background:var(--paper, #fff);box-shadow:-16px 0 48px #1016262e;display:flex;flex-direction:column;transform:translate(100%);transition:transform .28s cubic-bezier(.2,.7,.2,1);overflow-y:auto;padding:10px 18px calc(10px + env(safe-area-inset-bottom,0px)) 18px;-webkit-overflow-scrolling:touch}.nav-drawer.is-open .nav-drawer-panel{transform:translate(0)}.nav-drawer-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid var(--rule)}.nav-drawer-brand{font-family:var(--ff-display);font-size:18px;font-weight:500;letter-spacing:-.01em;color:var(--primary-deep, var(--ink))}.nav-drawer-close{background:transparent;border:0;width:36px;height:36px;font-size:20px;line-height:1;color:var(--muted);cursor:pointer;border-radius:2px}.nav-drawer-close:hover{color:var(--ink);background:var(--bg)}.nav-drawer-close:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.nav-drawer-list{display:flex;flex-direction:column;gap:0;margin:0 -8px 4px;padding:0}.nav-drawer-link{display:flex;align-items:center;text-align:left;background:transparent;border:0;font:inherit;color:var(--ink);font-family:var(--ff-display);font-size:16.5px;font-weight:380;letter-spacing:-.005em;padding:6px 14px;border-radius:3px;cursor:pointer;min-height:34px;position:relative;transition:background .15s,color .15s,padding .15s}.nav-drawer-link:hover{background:var(--bg);color:var(--primary);padding-left:20px}.nav-drawer-link.active{color:var(--primary);font-weight:500}.nav-drawer-link.active:before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:3px;height:16px;background:var(--primary);border-radius:2px}.nav-drawer-link:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.nav-drawer-cta{display:block;width:100%;background:var(--primary, #0e2c5e);color:#fff;border:0;font-family:var(--ff-display);font-size:14px;font-weight:500;letter-spacing:.02em;padding:10px 16px;min-height:40px;border-radius:3px;cursor:pointer;margin-bottom:6px;transition:background .15s}.nav-drawer-cta:hover{background:var(--primary-hover, #1a3d75)}.nav-drawer-cta:focus-visible{outline:2px solid var(--gold, #c69531);outline-offset:2px}.nav-drawer-util{padding-top:6px;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--muted)}.nav-drawer-lang{display:inline-flex;align-items:center;gap:0}.nav-drawer-lang button{background:transparent;border:0;cursor:pointer;padding:5px 9px;min-height:30px;font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--muted)}.nav-drawer-lang button.on{color:var(--primary)}.nav-drawer-lang .sep{color:var(--rule-strong);padding:0 2px}.nav-drawer-phone{color:var(--ink);font-weight:500;text-decoration:none;min-height:24px;display:inline-flex;align-items:center;font-size:13.5px}.nav-drawer-phone:hover{color:var(--primary)}.nav-drawer-hours{color:var(--muted);font-size:12.5px}@media(max-width:880px){.nav-toggle{display:inline-block}.nav-cta{display:none}}@media(max-width:880px){.section{padding:48px 0}.section-tight{padding:32px 0}html,body{overflow-x:clip;max-width:100%}h1,.h1{font-size:clamp(28px,7vw,38px)!important;line-height:1.1}h2,.h2,.headline{font-size:clamp(24px,5.5vw,30px)!important;line-height:1.15}h3{font-size:clamp(18px,4.5vw,22px)!important}.hero-full,.hero-full-bg,.hero-split,.hero-bg{min-height:auto!important}.hero-full{padding:56px 0 48px!important}.hero-full-title{font-size:clamp(28px,7.8vw,40px)!important;line-height:1.08!important}.hero-full-bg:after{background:linear-gradient(180deg,#0000009e,#00000059)!important}.hero-stats-row,.stats-row,.stat-grid{grid-template-columns:1fr 1fr!important;gap:12px!important}.hero-stats-row .hsv,.stat-n{font-size:clamp(22px,6vw,28px)!important}.hero-stats-row .hsl,.stat-l{font-size:12px!important;line-height:1.3!important}.grid-4,.grid-3,.services-grid{grid-template-columns:1fr!important;gap:14px!important}.container{padding-left:18px!important;padding-right:18px!important}button,a.btn{min-height:44px}.nav-drawer-link{min-height:34px}.nav-drawer-cta{min-height:40px}.tr-group{margin-bottom:36px!important}.tr-link{padding:14px 0!important;gap:12px!important}.tr-name{font-size:14.5px!important}.md-map-frame,.map-wrap{aspect-ratio:4/5;max-height:480px}.footer-grid{grid-template-columns:1fr 1fr!important;gap:22px!important}}@media(max-width:560px){.footer-grid{grid-template-columns:1fr!important}}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1!important;transform:none!important;transition:none!important}.nav-drawer-panel,.nav-drawer{transition:none!important}}.content-body{max-width:880px}.content-p{font-size:17px;line-height:1.7;margin:0 0 18px;color:var(--ink)}.content-lead{font-size:18px;line-height:1.7;margin:0 0 24px;color:var(--muted);font-family:var(--ff-display);font-weight:400}.content-h2{font-family:var(--ff-display);font-size:28px;font-weight:380;letter-spacing:-.01em;margin:40px 0 16px;padding-bottom:12px;border-bottom:1px solid var(--rule-strong);color:var(--ink)}.content-h3{font-family:var(--ff-display);font-size:22px;font-weight:420;margin:28px 0 12px;color:var(--primary-deep, var(--primary))}.content-h4{font-size:16px;font-weight:600;margin:20px 0 10px;color:var(--ink)}.content-list{padding-left:22px;margin:0 0 22px}.content-list li{font-size:16px;line-height:1.65;margin-bottom:10px}.content-list-ord{list-style:decimal}.content-deflist{margin:16px 0 24px;padding:0;display:grid;grid-template-columns:minmax(180px,30%) 1fr;gap:12px 24px}.content-deflist dt{font-weight:500;color:var(--ink);border-top:1px solid var(--rule);padding-top:12px}.content-deflist dd{margin:0;color:var(--muted);border-top:1px solid var(--rule);padding-top:12px;line-height:1.6}.content-table-wrap{overflow-x:auto;margin:18px 0 24px;border:1px solid var(--rule)}.content-table{width:100%;border-collapse:collapse;font-size:14.5px}.content-table th,.content-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--rule);vertical-align:top}.content-table th{background:var(--bg, #f6f4ef);font-weight:600;color:var(--ink);font-size:13px;letter-spacing:.02em}.content-table tr:last-child td{border-bottom:0}.content-figure{margin:22px 0 28px}.content-figure img{width:100%;height:auto;display:block;border-radius:2px}.content-figure figcaption{font-size:13px;color:var(--muted);margin-top:8px;font-style:italic}.content-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:22px 0 28px}.content-gallery-item{margin:0}.content-gallery-item img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:2px}.content-gallery-item figcaption{font-size:12.5px;color:var(--muted);margin-top:6px}.content-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin:22px 0 28px;padding:28px 0;border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong)}.content-stat-n{font-family:var(--ff-display);font-size:clamp(28px,4vw,42px);font-weight:380;letter-spacing:-.02em;color:var(--ink);line-height:1}.content-stat-l{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.4}.content-downloads{list-style:none;padding:0;margin:18px 0 24px}.content-download{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule);color:var(--ink);text-decoration:none;transition:padding .15s,background .15s}.content-download:hover{padding-left:12px;padding-right:12px;background:var(--bg)}.content-download:hover .content-download-name{color:var(--primary)}.content-download-icon{font-family:var(--ff-mono);font-size:10.5px;font-weight:600;letter-spacing:.12em;color:var(--muted);border:1px solid var(--rule-strong);padding:4px 8px;min-width:44px;text-align:center}.content-download-name{font-size:16px}.content-download-arrow{font-family:var(--ff-display);font-size:18px;color:var(--muted)}.content-subgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:16px 0 24px}.content-subcard{padding:22px;border:1px solid var(--rule);border-radius:3px;transition:border-color .15s,transform .15s}.content-subcard:hover{border-color:var(--primary);transform:translateY(-2px)}.content-subcard-cat{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-bottom:8px}.content-subcard-title{font-family:var(--ff-display);font-size:18px;font-weight:460;margin:0 0 8px}.content-subcard-desc{font-size:14px;color:var(--muted);margin:0 0 10px;line-height:1.55}.content-subcard-cta{font-family:var(--ff-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--primary);font-weight:600}.content-callout{margin:20px 0 24px;padding:18px 22px;background:var(--bg, #f7f4ec);border-left:3px solid var(--primary);border-radius:0 2px 2px 0}.content-callout-title{font-family:var(--ff-display);font-size:14px;font-weight:500;color:var(--primary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.content-callout-body{font-size:15.5px;line-height:1.6;color:var(--ink)}.content-cta-wrap{padding-top:20px;border-top:1px solid var(--rule);display:flex;justify-content:center}.nav-drawer-divider{height:1px;background:var(--rule);margin:6px 6px 4px}.nav-drawer-link-sm{font-size:16.5px!important;font-weight:380!important;min-height:34px!important;padding:6px 14px!important;color:var(--ink)!important}.nav-drawer-link-sm.active{color:var(--primary)!important}@media(min-width:881px)and (max-width:1280px){.nav-link{padding:0 11px;font-size:11.5px}.nav-cta{padding:8px 14px;font-size:12px}}@media(min-width:1281px){.nav-link{padding:0 14px}}@media(max-width:880px){.content-h2{font-size:22px!important}.content-h3{font-size:19px!important}.content-p,.content-list li{font-size:15.5px!important}.content-download{grid-template-columns:auto 1fr;gap:12px}.content-download-arrow{display:none}.content-deflist{grid-template-columns:1fr!important;gap:4px 0}.content-deflist dt{padding-top:14px}.content-deflist dd{border-top:0;padding-top:4px;padding-bottom:8px}.content-stats{gap:14px;padding:18px 0}}@media(max-width:880px){.masthead{padding:10px var(--gutter) 10px!important}.masthead-inner{padding:0!important;gap:12px!important}.masthead-seal{width:38px!important;height:38px!important}.masthead-title{font-size:13.5px!important;line-height:1.18!important;font-weight:500!important;letter-spacing:-.005em!important;text-wrap:balance}.masthead-sub{font-size:9px!important;letter-spacing:.1em!important;margin-top:4px!important}.masthead-dots{display:none!important}}@media(max-width:420px){.masthead{padding:8px var(--gutter) 8px!important}.masthead-seal{width:32px!important;height:32px!important}.masthead-title{font-size:12px!important}.masthead-sub{font-size:8.5px!important;letter-spacing:.08em!important}}.hero-full{min-height:620px!important}.hero-full-bg:after{background:linear-gradient(180deg,#080a1073,#080a1047 38%,#080a10d1),linear-gradient(96deg,#080a10b8,#080a102e 52%,#080a1000 68%)!important}.hero-full-bg .hero-photo-cycle img{filter:brightness(.62) saturate(1.08) contrast(1.04)!important;transform:scale(1.04);transition:opacity 1.4s cubic-bezier(.22,.7,.2,1),transform 9s linear!important}.hero-full-bg .hero-photo-cycle img.on{transform:scale(1)}.hero-full-title{font-size:clamp(38px,4.8vw,72px)!important;font-weight:360!important;line-height:1!important;letter-spacing:-.028em!important;max-width:17ch!important;text-shadow:0 4px 32px rgba(0,0,0,.45)!important;position:relative}.hero-full-title em{font-style:italic;font-weight:360;color:var(--gold, #d9a847)!important;position:relative}.hero-full-title em:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(217,168,71,.45) 40%,rgba(217,168,71,.85) 100%)}.hero-full-sub{font-size:clamp(15px,1.3vw,18px)!important;line-height:1.6!important;max-width:58ch!important;color:#ffffffe0!important;font-weight:320!important}.hero-full-content{padding:88px 96px!important}.hero-full-actions{gap:18px!important}.btn-gold{font-weight:500!important;padding:14px 26px!important;box-shadow:0 6px 24px #080a102e,inset 0 -2px #0000000f!important;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,background .15s!important;letter-spacing:.02em}.btn-gold:hover{background:#fff!important;transform:translateY(-2px);box-shadow:0 10px 36px #080a1047,inset 0 -2px #00000014!important}.btn-line-light{border:1px solid rgba(255,255,255,.55)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff0a;transition:all .2s}.btn-line-light:hover{background:#ffffff1f!important;border-color:#ffffffd9!important}.hero-stats-row{background:linear-gradient(180deg,#080a10eb,#080a10)!important;border-top:1px solid rgba(217,168,71,.18)}.hero-stats-row .hsv{font-family:var(--ff-display)!important;font-size:clamp(48px,5.2vw,72px)!important;font-weight:360!important;line-height:1!important;letter-spacing:-.025em!important;color:#fff;background:linear-gradient(180deg,#fff,#ffffffd1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-stats-row .hsv .suf{color:var(--gold, #d9a847)!important;-webkit-text-fill-color:var(--gold, #d9a847);font-size:.7em!important;margin-left:4px}.hero-stats-row>div:before{background:linear-gradient(90deg,#d9a847d9,#d9a84700)!important}.hero-stats-row .hsl{letter-spacing:.16em!important;color:#ffffff9e!important;font-size:11px!important;text-transform:uppercase;margin-top:14px!important}hr.rule{border:0;height:1px;background:linear-gradient(90deg,transparent 0%,var(--rule-strong) 30%,var(--rule-strong) 70%,transparent 100%);margin:0}.kicker{display:inline-flex!important;align-items:center;gap:10px;font-family:var(--ff-mono)!important;font-size:11px!important;letter-spacing:.18em!important;text-transform:uppercase;color:var(--primary)!important;font-weight:600!important}.kicker:before{content:"";display:inline-block;width:28px;height:1px;background:var(--primary)}.srv-card,.home-srv-card,.service-card{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .25s!important}.srv-card:hover,.home-srv-card:hover,.service-card:hover{transform:translateY(-4px);box-shadow:0 18px 48px -12px #0e31602e;border-color:var(--primary)!important}.home-srv-img,.srv-card-img{overflow:hidden}.home-srv-img img,.srv-card-img img{transition:transform .9s cubic-bezier(.2,.7,.2,1)!important}.home-srv-card:hover .home-srv-img img,.srv-card:hover .srv-card-img img{transform:scale(1.04)}.srv-row{transition:background .2s,padding .25s,border-color .25s!important}.srv-row:hover{background:linear-gradient(90deg,var(--paper) 0%,rgba(255,255,255,0) 100%)!important}.srv-row .srv-cta .arrow{display:inline-block;transition:transform .2s}.srv-row:hover .srv-cta .arrow{transform:translate(4px)}.kicker{margin-bottom:0}.footer{background:linear-gradient(180deg,var(--primary-deep, #0e3160) 0%,#08213f 100%)}.footer-h{font-family:var(--ff-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#ffffff9e;font-weight:500;position:relative;padding-bottom:14px;margin-bottom:18px}.footer-h:after{content:"";position:absolute;left:0;bottom:0;width:72px;height:1px;background:linear-gradient(to right,#d9a847 0%,rgba(217,168,71,.55) 55%,transparent 100%)}.nav{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#fffffff5!important}.nav-link.active:after{height:2px!important;background:linear-gradient(90deg,var(--primary) 0%,var(--gold, #d9a847) 100%)!important}.nav-cta{font-weight:500!important;letter-spacing:.04em;transition:background .15s,transform .15s,box-shadow .15s!important}.nav-cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px -4px #1f4d8c73}.announce-detail{transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,border-color .25s!important}.announce-detail:hover{transform:translateY(-3px);box-shadow:0 16px 40px -10px #0e316026;border-color:var(--primary)!important}.photo{overflow:hidden;position:relative}.photo img{transition:transform 1.4s cubic-bezier(.2,.7,.2,1)!important}.photo:hover img{transform:scale(1.025)}.photo-caption{background:#080a10b3!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.fade-in{animation:pageFadeIn .45s cubic-bezier(.2,.7,.2,1)}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:880px){.hero-full{min-height:480px!important}.hero-full-content{padding:64px 22px!important}.hero-full-title{font-size:clamp(32px,8.5vw,44px)!important;line-height:1.04!important;max-width:100%!important}.hero-full-sub{font-size:15px!important;line-height:1.55!important}.hero-stats-row .hsv{font-size:clamp(28px,7vw,36px)!important}.footer-h{font-size:10px}}section.section{position:relative}section.section[style*=paper]{background:linear-gradient(180deg,var(--paper) 0%,#fafaf6 100%)!important}.headline{font-weight:380!important;letter-spacing:-.02em!important;line-height:1.06!important;text-wrap:balance}.body,p.body{letter-spacing:-.002em}.tag,.tag-solid{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;padding:5px 10px;border-radius:1px}.tag{background:var(--bg, #f7f4ec);color:var(--ink);border:1px solid var(--rule-strong)}.tag-solid{background:var(--primary);color:#fff}.filter-chip{font-family:var(--ff-mono);font-size:11px!important;letter-spacing:.12em!important;text-transform:uppercase;padding:9px 16px!important;border:1px solid var(--rule-strong);background:transparent;color:var(--muted);font-weight:500;cursor:pointer;transition:all .15s;border-radius:2px}.filter-chip:hover{color:var(--ink);border-color:var(--ink)}.filter-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}.filter-chip .filter-count{opacity:.6;margin-left:6px;font-weight:400}.section-header+.section-header{margin-top:24px}.home-srv-card h3,.home-srv-title{font-family:var(--ff-display)!important;font-weight:420!important;letter-spacing:-.01em;line-height:1.15}.content-h2{position:relative}.content-h2:before{content:"";position:absolute;left:0;top:-2px;width:32px;height:1px;background:var(--gold, #d9a847)}@media(max-width:880px){.grid-12 .headline{grid-column:span 12!important}section[style*=--sp-9]{padding:28px 0!important}section:has(>div.container>div.grid-12>h1.headline)>div.container{padding:0 18px!important}.kicker{font-size:10px!important;letter-spacing:.16em!important;margin-top:0!important}.kicker:before{width:18px!important}.headline+div,.grid-12>div[style*="span 4"]{grid-column:span 12!important;margin-top:16px!important}.grid-12>div[style*="span 4"]>p{font-size:16.5px!important;line-height:1.65!important;margin:0 0 18px!important;color:#0d1f2cd1!important}.grid-12>div[style*="span 4"]>div[style*=flex-direction]{flex-direction:row!important;flex-wrap:wrap!important;margin-top:12px!important;gap:6px!important}.grid-12>div[style*="span 4"]>div[style*=flex-direction]>div{flex:1 1 auto!important;min-width:calc(50% - 6px);border-top:0!important;border-bottom:1px solid var(--rule)!important;padding:6px 0!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important}.grid-12>div[style*="span 4"]>div[style*=flex-direction] .meta{font-size:9.5px!important;letter-spacing:.1em!important}.grid-12>div[style*="span 4"]>div[style*=flex-direction] .body-sm{font-size:14px!important;font-weight:500;color:var(--ink)}.back-bar{padding:12px 0!important}.back-bar>.container{padding:0 18px!important}.back-btn{font-size:12px!important;padding:4px 0!important}.back-btn-arrow{font-size:14px!important}.back-crumbs{font-size:10px!important}.hero-full{min-height:540px!important}.hero-full-content{padding:56px 22px!important}.hero-full-title{font-size:clamp(34px,9vw,46px)!important;line-height:1.04!important;margin-bottom:18px!important}.hero-full-sub{font-size:14.5px!important;margin-bottom:24px!important}.btn-gold,.btn-line-light{width:100%!important;justify-content:center!important;padding:14px 18px!important;font-size:14px!important;min-height:48px!important}.hero-full-actions{flex-direction:column!important;gap:12px!important;width:100%}.hero-stats-row{grid-template-columns:1fr 1fr!important;padding:18px 0!important}.hero-stats-row>div{padding:14px 18px!important;border-right:1px solid rgba(255,255,255,.08)!important}.hero-stats-row>div:nth-child(2n){border-right:0!important}.hero-stats-row>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.08)}.hero-stats-row .hsv{font-size:clamp(28px,8vw,36px)!important;line-height:1!important}.hero-stats-row .hsl{font-size:9.5px!important;letter-spacing:.14em!important;margin-top:8px!important}.home-srv-card,.srv-card{border:1px solid var(--rule)!important;border-radius:3px}.home-srv-card h3,.home-srv-title{font-size:19px!important;line-height:1.2!important;margin:4px 0 8px!important}.home-srv-card .tag,.srv-card .tag{font-size:9.5px!important;padding:4px 8px!important}.home-srv-card p,.srv-card p{font-size:14px!important;line-height:1.55!important;margin-bottom:10px!important}.btn-link{font-family:var(--ff-mono);font-size:11px!important;letter-spacing:.14em!important;text-transform:uppercase;font-weight:600!important;color:var(--primary)!important;padding:8px 0!important;min-height:44px;display:inline-flex;align-items:center;gap:8px}.srv-row{padding:24px 0!important;gap:14px!important}.srv-title{font-size:clamp(22px,6vw,28px)!important;line-height:1.15!important}.srv-side{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}.srv-prop{border-top:1px solid var(--rule)!important;padding-top:8px!important}.srv-prop .meta{font-size:9.5px!important}.srv-prop .body-sm{font-size:13.5px!important;font-weight:500}.srv-cta{grid-column:span 2;margin-top:4px!important}.filter-chip{padding:8px 12px!important;font-size:10.5px!important;letter-spacing:.1em!important}.filter-bar,.srv-filter-bar{padding-bottom:16px!important;margin-bottom:16px!important;gap:6px!important}.hero-data-card{margin-top:24px!important;padding:16px 18px!important;background:#080a10c7!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(217,168,71,.25)}.hero-data-card-label{font-size:9.5px!important;letter-spacing:.16em!important;margin-bottom:8px!important}.hero-data-card-title{font-size:17px!important;line-height:1.2!important}.hero-data-card-body{font-size:13px!important;line-height:1.5!important}section.section{padding:40px 0!important}section.section-tight{padding:24px 0!important}.announce-detail{padding:18px!important;border-radius:3px}.announce-detail-title{font-size:17px!important;line-height:1.25!important}.announce-detail-head{gap:12px!important;margin-bottom:10px!important}.announce-detail-body p{font-size:14px!important;line-height:1.55!important}.announce-date{display:flex!important;flex-direction:column!important;align-items:flex-end!important;text-align:right!important;gap:0!important}.announce-date-d{font-size:22px!important;font-family:var(--ff-display)!important;line-height:1!important;color:var(--primary)}.announce-date-m{font-size:9.5px!important;letter-spacing:.1em!important;color:var(--muted);margin-top:2px;text-transform:uppercase}.content-body{max-width:100%!important}.content-h2{margin:28px 0 12px!important;padding-bottom:8px!important;font-size:21px!important}.content-h2:before{width:22px!important}.content-p{font-size:15.5px!important;line-height:1.65!important;margin-bottom:14px!important}.footer{padding:36px 0 24px!important}.footer-grid{gap:24px!important}.footer-h{padding-bottom:10px!important;margin-bottom:12px!important}.masthead-dots{display:none!important}}@media(max-width:380px){.hero-full-title{font-size:clamp(28px,8.5vw,38px)!important}.hero-stats-row .hsv{font-size:26px!important}.srv-title{font-size:20px!important}.content-h2{font-size:19px!important}}@media(max-width:700px){.grid-12{grid-template-columns:1fr!important;gap:24px!important}.grid-12>*{grid-column:1 / -1!important;max-width:100%!important;min-width:0!important}.grid-12>[style*=span]{grid-column:1 / -1!important}.content-body,.fade-in.content-body,.srv-detail-body,.tab-pane,.tab-description{max-width:100%!important;width:100%!important;min-width:0!important}pre,code,table{max-width:100%;overflow-x:auto}}@media(max-width:700px){.section p,.section li,p.lead,.lead,.hero-full-lead,.home p,.announce-detail-body p,.ann-summary,.ann-excerpt,.anno-excerpt{font-size:16.5px!important;line-height:1.65!important;color:#0d1f2cd1!important}.content-p,.content-list li,.content-list-ord li{font-size:16.5px!important;line-height:1.7!important;color:#0d1f2ceb!important;margin-bottom:16px!important}.content-lead{font-size:17.5px!important;line-height:1.6!important;color:#0d1f2cc7!important}.content-deflist dd,.content-deflist dt{font-size:15.5px!important;line-height:1.6!important}.content-deflist dd{color:#0d1f2cd1!important}.content-p,.content-lead,.section p,p.lead{text-wrap:pretty;hyphens:auto;-webkit-hyphens:auto}.hero-full p,.hero-full-sub{font-size:16px!important;line-height:1.6!important;color:#fffffff5!important}.meta-strong,.kicker,.eyebrow{font-size:11.5px!important}}

/* =========================================================
   Responsive masthead — keeps the full state header visible on
   mobile (state seal + name + Republica Moldova line + IDNO),
   just scaled & stacked. Plus tricolor accent strip.
   ========================================================= */

/* Add tricolor strip under masthead on every viewport */
.masthead{position:relative}
.masthead::after{
  content:"";
  display:block;
  position:absolute;
  left:0;right:0;bottom:0;
  height:3px;
  background:linear-gradient(to right,
    var(--flag-blue) 0 33.333%,
    var(--flag-yellow) 33.333% 66.666%,
    var(--flag-red) 66.666% 100%);
}

/* Tablet — keep 3-col but tighter */
@media (max-width: 880px){
  .masthead{padding:18px var(--gutter) 18px !important}
  .masthead-inner{padding:0 14px !important;gap:14px !important;grid-template-columns:auto 1fr !important}
  .masthead-seal{width:54px !important;height:54px !important}
  .masthead-title{font-size:18px !important;line-height:1.18 !important}
  .masthead-sub{font-size:10px !important;margin-top:6px !important}
  .masthead-meta{display:none !important}
  .masthead-dots{margin-top:6px !important}
}

/* Phone — PREMIUM masthead with halo, gradient mesh, shimmer */
@media (max-width: 700px){
  .masthead{
    display:block !important;
    position:relative !important;
    background:
      radial-gradient(ellipse 120% 80% at 20% 0%, rgba(31,77,140,.05), transparent 60%),
      radial-gradient(ellipse 100% 60% at 80% 100%, rgba(198,149,49,.05), transparent 65%),
      linear-gradient(180deg, #ffffff 0%, #fbfbfd 100%) !important;
    color:var(--ink) !important;
    padding:14px 16px 13px !important;
    border-bottom:0 !important;
    overflow:hidden !important;
  }

  /* Subtle dots pattern overlay (gov stationery feel) */
  .masthead::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:radial-gradient(circle, rgba(14,49,96,.025) 1px, transparent 1px);
    background-size:14px 14px;
    background-position:0 0;
    pointer-events:none;
    opacity:.7;
  }

  /* Tricolor at bottom — animated shimmer */
  .masthead::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:0;
    height:2px;
    background:linear-gradient(to right,
      var(--flag-blue) 0 33.333%,
      var(--flag-yellow) 33.333% 66.666%,
      var(--flag-red) 66.666% 100%);
    transform-origin:left;
    animation:stripeIn 1.2s .2s cubic-bezier(.65,.05,.1,1) both;
  }

  .masthead-inner{
    display:grid !important;
    grid-template-columns:58px 1fr !important;
    grid-template-rows:auto auto !important;
    gap:3px 14px !important;
    padding:0 !important;
    align-items:start !important;
    max-width:none !important;
    position:relative !important;
    z-index:1 !important;
  }

  /* Stema with golden halo + drop shadow */
  .masthead-seal{
    display:block !important;
    width:54px !important;
    height:54px !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
    margin-top:1px !important;
    position:relative !important;
    filter:drop-shadow(0 2px 6px rgba(14,49,96,.18)) drop-shadow(0 0 8px rgba(198,149,49,.18));
    transition:transform .5s cubic-bezier(.34,1.6,.64,1) !important;
  }
  .masthead-seal::before{
    content:"";
    position:absolute;
    inset:-8px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(198,149,49,.18) 0%, rgba(198,149,49,.08) 40%, transparent 70%);
    z-index:-1;
    animation:halo 4s ease-in-out infinite alternate;
  }
  .masthead-seal:active{
    transform:scale(.93) rotate(-3deg) !important;
  }
  @keyframes halo{
    from{transform:scale(.96);opacity:.7}
    to{transform:scale(1.08);opacity:1}
  }

  .masthead-text{
    min-width:0 !important;
    line-height:1.08 !important;
    align-self:center !important;
    padding-top:1px;
  }

  /* Title — elegant serif, larger, with refined letter-spacing */
  .masthead-title{
    font-family:var(--ff-display) !important;
    font-size:16px !important;
    font-weight:480 !important;
    color:var(--primary-deep) !important;
    letter-spacing:-.014em !important;
    line-height:1.13 !important;
    margin:0 !important;
    text-wrap:balance;
    position:relative;
  }
  .masthead-title br{display:inline !important}

  /* Subtle gold underline accent on first word "Întreprinderea" — via decorative line under entire title */
  .masthead-title::after{
    content:"";
    display:block;
    width:24px;
    height:1px;
    background:linear-gradient(to right, var(--gold), transparent);
    margin-top:5px;
    animation:lineGrow .9s .4s cubic-bezier(.22,.7,.2,1) both;
  }
  @keyframes lineGrow{
    from{width:0;opacity:0}
    to{width:24px;opacity:1}
  }

  /* Subtitle — primary blue, mono, tight tracking */
  .masthead-sub{
    display:block !important;
    font-family:var(--ff-mono) !important;
    font-size:8.5px !important;
    font-weight:600 !important;
    color:var(--primary) !important;
    letter-spacing:.18em !important;
    text-transform:uppercase !important;
    margin-top:4px !important;
    line-height:1.2 !important;
    opacity:.92;
  }

  .masthead-dots{display:none !important}

  /* Meta — single compact line with dot separators, more refined */
  .masthead-meta{
    display:block !important;
    grid-column:1 / -1 !important;
    text-align:left !important;
    font-family:var(--ff-mono) !important;
    font-size:7.5px !important;
    font-weight:400 !important;
    letter-spacing:.14em !important;
    text-transform:uppercase !important;
    color:rgba(26,36,51,.5) !important;
    line-height:1.45 !important;
    margin-top:9px !important;
    padding-top:8px !important;
    border-top:1px solid rgba(14,49,96,.07) !important;
    position:relative !important;
  }
  /* Hairline accent on the meta border at start */
  .masthead-meta::before{
    content:"";
    position:absolute;
    left:0;top:-1px;
    width:36px;
    height:1px;
    background:linear-gradient(to right, var(--gold) 0%, var(--gold) 60%, transparent 100%);
  }
  .masthead-meta br{display:inline !important}

  /* === Animation cascade === */
  .masthead-seal{
    animation:sealEntry .9s cubic-bezier(.34,1.4,.64,1) both;
  }
  @keyframes sealEntry{
    from{opacity:0;transform:scale(.5) rotate(-18deg)}
    to{opacity:1;transform:none}
  }
  .masthead-title{
    animation:titleEntry .8s .2s cubic-bezier(.22,.7,.2,1) both;
  }
  @keyframes titleEntry{
    from{opacity:0;transform:translateY(8px)}
    to{opacity:1;transform:none}
  }
  .masthead-sub{
    animation:subEntry .8s .35s cubic-bezier(.22,.7,.2,1) both;
  }
  @keyframes subEntry{
    from{opacity:0;letter-spacing:.4em}
    to{opacity:.92;letter-spacing:.18em}
  }
  .masthead-meta{
    animation:metaEntry .8s .55s cubic-bezier(.22,.7,.2,1) both;
  }
  @keyframes metaEntry{
    from{opacity:0;transform:translateY(4px)}
    to{opacity:1;transform:none}
  }

  /* === Sticky behaviour with subtle shrink on scroll (CSS-only via reduce padding state isn't easy without JS).
     Keep simple sticky for now. === */
  .masthead{
    position:sticky !important;
    top:0 !important;
    z-index:100 !important;
    backdrop-filter:saturate(1.05);
    -webkit-backdrop-filter:saturate(1.05);
  }
}

@keyframes stripeIn{
  from{transform:scaleX(0)}
  to{transform:scaleX(1)}
}

/* Smallest phones */
@media (max-width: 380px){
  .masthead{padding:10px 12px 12px !important}
  .masthead-inner{grid-template-columns:38px 1fr !important;gap:3px 10px !important}
  .masthead-seal{width:38px !important;height:38px !important}
  .masthead-title{font-size:12.5px !important}
  .masthead-sub{font-size:8px !important}
  .masthead-meta{font-size:8px !important}
}

/* Mobile: hide carousel position indicators */
@media (max-width: 700px){
  .cycle-dots{display:none !important}
}

/* =========================================================
   MOBILE WOW v2 — animations, polish, micro-interactions
   ========================================================= */
@media (max-width: 700px){

  /* === Scroll progress bar at very top === */
  body::before{
    content:"";
    position:fixed;
    left:0;top:0;
    width:100%;
    height:2px;
    background:linear-gradient(to right,
      var(--flag-blue) var(--scroll,0%),
      var(--flag-yellow) var(--scroll,0%),
      var(--flag-yellow) calc(var(--scroll,0%) + .1%),
      transparent calc(var(--scroll,0%) + .1%));
    z-index:200;
    pointer-events:none;
    transition:none;
  }

  /* === Masthead — sticky + tricolor accent === */
  .masthead{
    position:sticky !important;
    top:0 !important;
    z-index:100 !important;
    backdrop-filter:saturate(1.05);
    -webkit-backdrop-filter:saturate(1.05);
    box-shadow:0 1px 0 rgba(14,49,96,.04);
    animation:fadeDown .6s cubic-bezier(.22,.7,.2,1) both;
  }

  /* Stema gentle hover/pulse */
  .masthead-seal{
    transition:transform .35s cubic-bezier(.34,1.6,.64,1);
    animation:sealEntry .8s cubic-bezier(.34,1.4,.64,1) both;
  }
  .masthead-seal:active{transform:scale(.92)}
  @keyframes sealEntry{
    from{opacity:0;transform:scale(.6) rotate(-12deg)}
    to{opacity:1;transform:none}
  }

  /* Title — slide-up smooth */
  .masthead-title{
    animation:slideUp .7s .15s cubic-bezier(.22,.7,.2,1) both;
  }
  .masthead-sub{
    animation:slideUp .7s .28s cubic-bezier(.22,.7,.2,1) both;
  }
  .masthead-meta{
    animation:slideUp .7s .4s cubic-bezier(.22,.7,.2,1) both;
  }

  /* Tricolor accent on masthead bottom */
  .masthead::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:0;
    height:2px;
    background:linear-gradient(to right,
      var(--flag-blue) 0 33.333%,
      var(--flag-yellow) 33.333% 66.666%,
      var(--flag-red) 66.666% 100%);
    transform-origin:left;
    animation:stripeIn 1.1s .15s cubic-bezier(.65,.05,.1,1) both;
  }
  @keyframes stripeIn{
    from{transform:scaleX(0)}
    to{transform:scaleX(1)}
  }

  /* === Hero — premium polish === */
  .hero-full-title{
    animation:heroTitle 1s cubic-bezier(.22,.7,.2,1) both;
  }
  .hero-full-title em{
    animation:heroEm 1.4s .35s cubic-bezier(.22,.7,.2,1) both;
  }
  @keyframes heroTitle{
    from{opacity:0;transform:translateY(24px)}
    to{opacity:1;transform:none}
  }
  @keyframes heroEm{
    from{opacity:0;letter-spacing:0}
    to{opacity:1;letter-spacing:normal}
  }

  .hero-full-actions{
    animation:fadeUp 1s .5s cubic-bezier(.22,.7,.2,1) both;
  }
  .hero-full-actions button{
    transition:transform .15s, box-shadow .25s;
  }
  .hero-full-actions button:active{
    transform:scale(.97);
  }
  .hero-full-actions .btn-gold{
    box-shadow:0 8px 24px rgba(198,149,49,.18);
    position:relative;
    overflow:hidden;
  }
  .hero-full-actions .btn-gold::after{
    content:"";
    position:absolute;
    top:-50%;left:-100%;
    width:50%;height:200%;
    background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.35) 50%,transparent 100%);
    transform:rotate(20deg);
    animation:shine 3.5s 1.2s infinite cubic-bezier(.4,0,.2,1);
  }
  @keyframes shine{
    0%,40%{left:-100%}
    60%,100%{left:200%}
  }

  /* Subtle parallax on hero bg (CSS-only fixed bg) */
  .hero-full-bg{transform:translateZ(0);will-change:transform}

  /* === Service cards — elegant elevation + tap === */
  .services-grid{
    gap:18px !important;
    padding:0 14px !important;
  }
  .service-card{
    border-radius:14px !important;
    overflow:hidden !important;
    background:#fff !important;
    box-shadow:
      0 1px 2px rgba(14,49,96,.05),
      0 4px 16px rgba(14,49,96,.05) !important;
    border:1px solid rgba(14,49,96,.06) !important;
    transition:transform .25s cubic-bezier(.22,.7,.2,1), box-shadow .25s !important;
    transform:translateZ(0);
  }
  .service-card:active{
    transform:scale(.985) !important;
    box-shadow:
      0 0 0 rgba(14,49,96,0),
      0 1px 4px rgba(14,49,96,.08) !important;
  }
  .service-card-photo{
    overflow:hidden;
    border-radius:12px 12px 0 0;
  }
  .service-card-photo img{
    transition:transform 1s cubic-bezier(.22,.7,.2,1) !important;
  }
  .service-card:active .service-card-photo img{
    transform:scale(1.06);
  }
  .service-card-body{
    padding:16px 16px 18px !important;
  }
  .service-card-top .meta,
  .service-card .meta{
    position:relative;
    padding-left:18px !important;
  }
  .service-card-top .meta::before,
  .service-card .meta::before{
    content:"";
    position:absolute;
    left:0;top:50%;
    width:10px;height:1px;
    background:var(--gold);
    transition:width .3s;
  }
  .service-card:active .meta::before{width:14px}

  /* === Section headers — slide-in left === */
  .section-header,
  .section h2,
  .container > h2{
    position:relative;
  }

  /* === Announce rows — better mobile tap === */
  .announce-row{
    border-radius:10px;
    margin:0 6px 8px !important;
    padding:18px 14px !important;
    background:linear-gradient(180deg,#ffffff 0%,#fafbfd 100%);
    box-shadow:0 1px 2px rgba(14,49,96,.04);
    transition:transform .2s, box-shadow .2s;
  }
  .announce-row:active{
    transform:scale(.99);
    box-shadow:0 0 0 rgba(0,0,0,0);
  }
  .announce-row .tag{
    background:var(--primary) !important;
    color:#fff !important;
  }

  /* === Footer polish === */
  .footer{
    background:linear-gradient(180deg,var(--primary-deep) 0%,#0a223e 100%) !important;
  }
  .partner-row{
    transition:transform .2s;
  }
  .partner-row:active{transform:translateX(3px)}

  .footer-social a, .gov-social a{
    transition:transform .25s, color .2s;
  }
  .footer-social a:active, .gov-social a:active{
    transform:scale(1.15);
  }

  /* === Reveal — boost on mobile === */
  .reveal{
    transition:opacity .8s cubic-bezier(.22,.7,.2,1), transform .8s cubic-bezier(.22,.7,.2,1) !important;
  }

  /* === Universal keyframes === */
  @keyframes fadeDown{
    from{opacity:0;transform:translateY(-8px)}
    to{opacity:1;transform:none}
  }
  @keyframes slideUp{
    from{opacity:0;transform:translateY(6px)}
    to{opacity:1;transform:none}
  }
  @keyframes fadeUp{
    from{opacity:0;transform:translateY(14px)}
    to{opacity:1;transform:none}
  }
}

/* Respect user preference for reduced motion */
@media (prefers-reduced-motion: reduce){
  .masthead, .masthead *, .hero-full-title, .hero-full-title em,
  .hero-full-actions, .hero-full-actions .btn-gold::after,
  .service-card, .service-card-photo img, .announce-row,
  .footer-social a, .gov-social a, .partner-row{
    animation:none !important;
    transition:none !important;
  }
}

/* =========================================================
   MOBILE WOW v3 — body, hero, services, announcements, footer
   (header lasted untouched — already perfect)
   ========================================================= */
@media (max-width: 700px){

  /* === HERO — premium overlay & typography === */
  .hero-full{
    min-height:380px !important;
    padding:0 !important;
  }
  .hero-full-bg::after{
    background:
      linear-gradient(180deg,
        rgba(8,10,16,.35) 0%,
        rgba(8,10,16,.25) 35%,
        rgba(8,10,16,.55) 80%,
        rgba(8,10,16,.78) 100%),
      radial-gradient(ellipse 90% 60% at 30% 30%,
        rgba(31,77,140,.18),
        transparent 70%) !important;
  }
  .hero-full-content{
    padding:34px 18px 32px !important;
    position:relative;
  }
  /* Decorative kicker line above the title */
  .hero-full-content::before{
    content:"§ 01 · DOMENIU DE ACTIVITATE";
    display:block;
    font-family:var(--ff-mono);
    font-size:9px;
    font-weight:600;
    color:var(--gold);
    letter-spacing:.24em;
    text-transform:uppercase;
    margin-bottom:14px;
    padding-left:22px;
    position:relative;
    animation:slideIn .7s .1s cubic-bezier(.22,.7,.2,1) both;
  }
  .hero-full-content::before::after,
  .hero-full-content::after{
    content:"";
    position:absolute;
    left:18px;top:50px;
    width:16px;height:1px;
    background:var(--gold);
  }
  .hero-full-title{
    margin-bottom:18px !important;
    text-shadow:0 4px 24px rgba(0,0,0,.5), 0 0 60px rgba(31,77,140,.3) !important;
  }
  /* "experiență" gold italic glow */
  .hero-full-title em{
    color:var(--gold) !important;
    position:relative;
    display:inline-block;
  }
  .hero-full-title em::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:-1px;
    height:1px;
    background:linear-gradient(90deg, transparent, var(--gold), transparent);
    animation:underlineSlide 2s .8s cubic-bezier(.22,.7,.2,1) both;
  }
  @keyframes underlineSlide{
    from{transform:scaleX(0)}
    to{transform:scaleX(1)}
  }

  /* === BUTTONS — premium tap states === */
  .hero-full-actions{
    flex-direction:column !important;
    gap:10px !important;
    margin-top:6px !important;
  }
  .hero-full-actions button{
    width:100% !important;
    padding:14px 22px !important;
    font-size:12px !important;
    letter-spacing:.16em !important;
    border-radius:2px !important;
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
  }
  .hero-full-actions .btn-line-light{
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.4) !important;
  }

  /* === SECTION HEADERS — elegant kicker style === */
  .section{padding:48px 0 !important}
  .section-header,
  .container > .grid-12 > [style*="grid-column"],
  .home > section > .container > div:first-child{
    margin-bottom:28px !important;
  }
  /* Section number / label combo */
  .section-num,
  .section-label,
  [class*="SectionNumber"]{
    color:var(--gold) !important;
    font-size:9.5px !important;
    letter-spacing:.22em !important;
  }

  /* === SERVICES — refined layout === */
  .services-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    padding:0 16px !important;
  }
  .service-card{
    border-radius:16px !important;
    overflow:hidden !important;
    background:#fff !important;
    box-shadow:
      0 1px 1px rgba(14,49,96,.04),
      0 6px 20px rgba(14,49,96,.06) !important;
    border:1px solid rgba(14,49,96,.05) !important;
    transition:transform .35s cubic-bezier(.22,.7,.2,1),
               box-shadow .35s,
               border-color .35s !important;
    transform:translateZ(0);
    position:relative;
    text-align:left !important;
  }
  /* Gold accent strip — top of card */
  .service-card::before{
    content:"";
    position:absolute;
    top:0;left:0;right:0;
    height:2px;
    background:linear-gradient(to right, var(--gold), transparent);
    opacity:0;
    transition:opacity .35s;
    z-index:2;
  }
  .service-card:active::before{opacity:1}
  .service-card:active{
    transform:scale(.985) !important;
    box-shadow:
      0 1px 4px rgba(14,49,96,.08) !important;
    border-color:rgba(198,149,49,.25) !important;
  }
  .service-card-photo{
    height:160px !important;
    overflow:hidden;
    border-radius:14px 14px 0 0;
    position:relative;
  }
  .service-card-photo::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, transparent 50%, rgba(14,49,96,.18) 100%);
    z-index:1;
  }
  .service-card-photo img{
    transition:transform 1.5s cubic-bezier(.22,.7,.2,1), filter .35s !important;
    filter:saturate(1.05) brightness(.96);
  }
  .service-card:active .service-card-photo img{
    transform:scale(1.08);
    filter:saturate(1.15) brightness(1);
  }
  .service-card-body{
    padding:18px 18px 20px !important;
  }
  .service-card-top{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:10px !important;
  }
  .service-card-top .meta{
    color:var(--primary) !important;
    font-size:9.5px !important;
    font-weight:700 !important;
    letter-spacing:.18em !important;
    text-transform:uppercase !important;
    padding-left:0 !important;
  }
  .service-card-top .meta::before{display:none}
  .service-card-title{
    font-size:18px !important;
    font-weight:500 !important;
    line-height:1.2 !important;
    margin-bottom:10px !important;
    color:var(--primary-deep) !important;
    letter-spacing:-.012em !important;
  }
  .service-card-short{
    font-size:14px !important;
    line-height:1.55 !important;
    color:var(--muted) !important;
    margin-bottom:14px !important;
  }
  .service-card-foot{
    padding-top:14px !important;
    border-top:1px solid rgba(14,49,96,.07) !important;
    font-size:10.5px !important;
    letter-spacing:.18em !important;
    color:var(--primary) !important;
    font-weight:600 !important;
    position:relative;
  }
  .service-card-foot::after{
    content:"→";
    position:absolute;
    right:0;top:14px;
    transition:transform .3s;
  }
  .service-card:active .service-card-foot::after{
    transform:translateX(4px);
  }

  /* === Announcements — newspaper-style layout === */
  .announce-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    padding:20px 16px !important;
    margin:0 8px 10px !important;
    border-radius:12px !important;
    background:#fff !important;
    border-top:0 !important;
    border:1px solid rgba(14,49,96,.06) !important;
    box-shadow:0 2px 8px rgba(14,49,96,.04);
    position:relative;
    overflow:hidden;
  }
  .announce-row::before{
    content:"";
    position:absolute;
    left:0;top:0;bottom:0;
    width:3px;
    background:linear-gradient(180deg, var(--primary) 0%, var(--gold) 100%);
    opacity:0;
    transition:opacity .3s;
  }
  .announce-row:active::before{opacity:1}
  .announce-meta{
    flex-direction:row !important;
    align-items:center !important;
    gap:10px !important;
    grid-row:auto !important;
  }
  .announce-meta .tag{
    font-size:8.5px !important;
    padding:4px 9px !important;
    letter-spacing:.18em !important;
    background:var(--primary-deep) !important;
    color:#fff !important;
    border-radius:2px !important;
  }
  .announce-meta .meta{
    font-size:10px !important;
    color:var(--muted) !important;
    letter-spacing:.08em !important;
  }
  .announce-title{
    font-size:16px !important;
    font-weight:500 !important;
    line-height:1.25 !important;
    color:var(--primary-deep) !important;
    letter-spacing:-.01em !important;
    margin:6px 0 6px !important;
  }
  .announce-excerpt{
    font-size:13.5px !important;
    line-height:1.5 !important;
    color:var(--muted) !important;
  }

  /* === Section dividers — subtle gold hairline === */
  section + section,
  .section + .section{
    position:relative;
  }

  /* === Reveal stagger boost === */
  .reveal{
    transition:opacity .9s cubic-bezier(.22,.7,.2,1),
               transform .9s cubic-bezier(.22,.7,.2,1) !important;
  }
  .reveal[style*="translateY"]{
    transform:translateY(28px) !important;
  }

  /* === Footer === */
  .footer{
    padding:48px 18px 30px !important;
  }
  .footer-h{
    font-size:9px !important;
    letter-spacing:.24em !important;
    color:var(--gold) !important;
    margin-bottom:14px !important;
    position:relative;
    padding-bottom:8px;
  }
  .footer-h::after{
    content:"";
    position:absolute;
    left:0;bottom:0;
    width:20px;height:1px;
    background:var(--gold);
  }
  .footer-body, .footer-meta-link{
    font-size:13.5px !important;
    line-height:1.6 !important;
  }
  .partner-row{
    padding:8px 0 !important;
    transition:padding-left .25s, color .25s;
  }
  .partner-row:active{
    padding-left:6px !important;
  }
  .partner-link{
    font-size:13px !important;
    color:#fff !important;
    transition:color .25s;
  }
  .partner-link:active{color:var(--gold) !important}
  .footer-social, .gov-social{
    gap:14px !important;
    margin-top:16px !important;
  }
  .footer-social a, .gov-social a{
    width:38px;height:38px;
    display:flex;align-items:center;justify-content:center;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:50% !important;
    color:#fff !important;
    transition:transform .25s, background .25s, border-color .25s !important;
  }
  .footer-social a:active, .gov-social a:active{
    transform:scale(1.08) !important;
    background:rgba(198,149,49,.18) !important;
    border-color:var(--gold) !important;
  }
  .footer-bottom{
    margin-top:32px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.08);
    flex-direction:column;
    gap:6px;
    text-align:center;
  }
  .footer-bottom .meta{
    font-size:9.5px !important;
    letter-spacing:.14em !important;
  }

  /* Slide-in helper */
  @keyframes slideIn{
    from{opacity:0;transform:translateX(-12px)}
    to{opacity:1;transform:none}
  }
}

/* =========================================================
   Footer-bottom polish (desktop + mobile) — social moved here
   ========================================================= */

/* Desktop footer-bottom layout improvement */
.footer-bottom{
  padding:28px 0 8px !important;
  border-top:1px solid rgba(255,255,255,.08);
  align-items:center !important;
  flex-wrap:wrap;
  gap:18px 28px !important;
}
.footer-bottom .footer-social{
  display:flex;
  gap:10px;
  margin-left:auto;
}
.footer-bottom .footer-social a{
  width:36px;height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  color:#fff;
  transition:transform .25s, background .25s, border-color .25s, color .25s;
}
.footer-bottom .footer-social a:hover{
  transform:translateY(-2px);
  background:rgba(198,149,49,.18);
  border-color:var(--gold);
  color:var(--gold);
}
.footer-bottom .footer-social a svg{width:15px;height:15px}

/* Mobile fine-tune */
@media (max-width: 700px){
  .footer-bottom{
    flex-direction:column !important;
    align-items:center !important;
    text-align:center;
    gap:14px !important;
    padding:24px 0 20px !important;
  }
  .footer-bottom .footer-social{
    margin-left:0 !important;
    margin-top:6px;
    gap:14px;
  }
  .footer-bottom .footer-social a{
    width:42px;height:42px;
  }
  .footer-bottom .footer-social a svg{width:17px;height:17px}
}

/* Footer-social: original in Despre noi (desktop), duplicate in footer-bottom (mobile) */
.footer-social-bottom{display:none !important}
@media (max-width: 700px){
  /* Hide the one in Despre noi col */
  .footer-col-about .footer-social,
  .footer-col .footer-social:not(.footer-social-bottom){display:none !important}
  /* Show the one in footer-bottom */
  .footer-social-bottom{display:flex !important}
}

/* =========================================================
   "Descarcă cerere" page — compact layout on mobile
   ========================================================= */
@media (max-width: 700px){
  /* tighten page head section */
  .content-page .page-head,
  .content-page > section:first-of-type,
  main > section:first-of-type{
    padding:24px 16px 22px !important;
  }
  .content-page .kicker,
  .page-head .kicker{
    font-size:9.5px !important;
    letter-spacing:.24em !important;
    margin-bottom:10px !important;
    color:var(--gold) !important;
  }
  .content-page .page-head h1,
  .page-head h1,
  .content-page h1.title,
  main > section h1{
    font-size:26px !important;
    line-height:1.1 !important;
    letter-spacing:-.014em !important;
    margin:0 0 12px !important;
    text-wrap:balance;
  }
  .content-page .lead,
  .page-head .lead{
    font-size:14.5px !important;
    line-height:1.5 !important;
    margin:0 0 16px !important;
  }
  /* meta — two columns side by side, compact */
  .page-head-meta,
  .content-page .page-meta,
  .meta-table{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px 14px !important;
    margin:14px 0 4px !important;
    padding:12px 0 0 !important;
    border-top:1px solid rgba(14,49,96,.08) !important;
  }
  .page-head-meta dt,
  .page-head-meta dd,
  .meta-table dt,
  .meta-table dd{
    font-size:11px !important;
    line-height:1.3 !important;
    margin:0 !important;
    padding:0 !important;
  }
  .page-head-meta dt,
  .meta-table dt{
    color:var(--muted) !important;
    letter-spacing:.14em !important;
    text-transform:uppercase !important;
    font-size:9px !important;
    margin-bottom:2px !important;
  }
  .page-head-meta dd,
  .meta-table dd{
    font-size:14px !important;
    font-weight:500 !important;
    color:var(--primary-deep) !important;
  }

  /* Downloads section — premium card style on mobile */
  .content-downloads{
    margin:14px 16px 24px !important;
    padding:0 !important;
    display:grid !important;
    gap:10px !important;
  }
  .content-downloads li{
    list-style:none;
    margin:0 !important;
  }
  .content-download{
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    align-items:center !important;
    gap:14px !important;
    padding:14px 14px !important;
    border:1px solid rgba(14,49,96,.1) !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 2px 6px rgba(14,49,96,.04) !important;
    transition:transform .25s, box-shadow .25s, border-color .25s !important;
  }
  .content-download:active{
    transform:scale(.985) !important;
    border-color:var(--gold) !important;
    box-shadow:0 4px 12px rgba(198,149,49,.15) !important;
  }
  .content-download-icon{
    background:var(--primary-deep) !important;
    color:#fff !important;
    border:0 !important;
    border-radius:6px !important;
    padding:8px 10px !important;
    font-size:10.5px !important;
    font-weight:700 !important;
    letter-spacing:.1em !important;
    min-width:auto !important;
    width:44px;
    text-align:center;
  }
  .content-download-name{
    font-size:14.5px !important;
    line-height:1.3 !important;
    font-weight:500 !important;
    color:var(--primary-deep) !important;
  }
  .content-download-arrow{
    display:inline-flex !important;
    width:28px;height:28px;
    align-items:center;
    justify-content:center;
    background:rgba(31,77,140,.08);
    border-radius:50%;
    color:var(--primary) !important;
    font-size:14px !important;
    font-weight:600;
  }

  /* Back/breadcrumb above title — compact */
  .back-bar, .breadcrumb-bar{
    padding:10px 16px 4px !important;
  }
  .back-bar *, .breadcrumb-bar *{
    font-size:11px !important;
  }
}

/* =========================================================
   MOBILE FOOTER — OFFICIAL GOVERNMENT LETTERHEAD STYLE
   Cream paper texture · navy & gold · serif headers · seal up top
   ========================================================= */
@media (max-width: 700px){

  .footer{
    position:relative !important;
    background:
      /* paper texture via fine dots */
      radial-gradient(circle, rgba(14,49,96,.025) 1px, transparent 1px) 0 0 / 16px 16px,
      /* subtle vignette */
      radial-gradient(ellipse 120% 80% at 50% 0%, rgba(14,49,96,.03), transparent 60%),
      /* base cream */
      linear-gradient(180deg, #fbfaf6 0%, #f6f4ed 100%) !important;
    background-color:#fbfaf6 !important;
    color:var(--ink) !important;
    padding:0 !important;
    border:0 !important;
    overflow:hidden;
  }

  /* Tricolor flag strip TOP */
  .footer::before{
    content:"";
    position:absolute;
    left:0;right:0;top:0;
    height:3px;
    background:linear-gradient(to right,
      var(--flag-blue) 0 33.333%,
      var(--flag-yellow) 33.333% 66.666%,
      var(--flag-red) 66.666% 100%);
    z-index:2;
  }
  /* Tricolor flag strip BOTTOM */
  .footer::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:0;
    height:3px;
    background:linear-gradient(to right,
      var(--flag-blue) 0 33.333%,
      var(--flag-yellow) 33.333% 66.666%,
      var(--flag-red) 66.666% 100%);
    z-index:2;
  }

  /* Inner container — official letter feel */
  .footer .container{
    padding:30px 20px 24px !important;
    max-width:none !important;
  }

  /* Hide verbose paragraphs */
  .footer-col:not(:has(.partners)):not(:has(.footer-meta-link)):not(:has(.gov-social)){
    display:none !important;
  }

  /* Grid → single column */
  .footer-grid,
  .footer > .container > .footer-grid,
  .footer .footer-grid{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
  }

  /* === OFFICIAL LETTERHEAD HEADER === */
  /* Add ornamental separator at top using an absolutely positioned ::before on first col */
  .footer .footer-grid::before{
    content:"";
    display:block;
    width:38mm;
    height:1px;
    background:linear-gradient(to right, transparent 0%, var(--gold) 30%, var(--gold) 70%, transparent 100%);
    margin:0 auto 6px;
    opacity:.7;
  }

  /* === SECTION HEADERS — official decree style === */
  .footer-h{
    font-family:var(--ff-display) !important;
    font-size:11px !important;
    font-weight:600 !important;
    letter-spacing:.36em !important;
    color:var(--primary-deep) !important;
    text-transform:uppercase !important;
    text-align:center;
    margin:0 0 14px !important;
    padding:0 !important;
    position:relative;
  }
  /* Gold flourish on either side of h3 */
  .footer-h::before, .footer-h::after{
    content:"";
    position:absolute;
    top:50%;
    width:18px;
    height:1px;
    background:var(--gold);
    opacity:.5;
  }
  .footer-h::before{left:50%;transform:translateX(-90px)}
  .footer-h::after{right:50%;transform:translateX(90px);left:auto}

  /* === PARTENERI — engraved nameplates === */
  .footer-col:has(.partners){
    margin:0 0 24px !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }
  .partners{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    padding:0 !important;
    margin:0 !important;
    list-style:none !important;
    border-top:1px solid rgba(14,49,96,.12);
    border-bottom:1px solid rgba(14,49,96,.12);
  }
  .partner-row{
    padding:11px 8px !important;
    border-bottom:1px solid rgba(14,49,96,.06) !important;
    background:transparent !important;
    border-radius:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 !important;
    transition:padding-left .25s, background .25s;
    position:relative;
  }
  .partner-row:last-child{border-bottom:0 !important}
  .partner-row::before{
    content:"";
    width:3px;
    height:0;
    background:var(--gold);
    position:absolute;
    left:0;top:50%;
    transform:translateY(-50%);
    transition:height .25s;
  }
  .partner-row:active{
    padding-left:14px !important;
    background:rgba(198,149,49,.04) !important;
  }
  .partner-row:active::before{height:60%}
  .partner-seal{
    width:24px !important;
    height:24px !important;
    flex-shrink:0;
    filter:drop-shadow(0 1px 1px rgba(14,49,96,.1));
  }
  .partner-seal img{
    width:100% !important;
    height:100% !important;
    object-fit:contain;
  }
  .partner-link{
    font-family:var(--ff-display) !important;
    font-size:13px !important;
    font-weight:500 !important;
    color:var(--primary-deep) !important;
    letter-spacing:-.005em !important;
    line-height:1.2 !important;
    flex:1;
    text-decoration:none !important;
    position:relative;
  }
  .partner-link::after{display:none !important}
  /* === CONTACT — minimal official lines === */
  .footer-col:has(.footer-meta-link){
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }
  .footer-col:has(.footer-meta-link) .footer-body{
    display:block !important;
    text-align:center !important;
    font-family:var(--ff-mono) !important;
    font-size:10.5px !important;
    line-height:1.6 !important;
    letter-spacing:.08em !important;
    color:var(--muted) !important;
    text-transform:uppercase !important;
    margin:0 0 14px !important;
  }
  .footer-meta-list{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    margin:0 !important;
    border-top:1px solid rgba(14,49,96,.12);
    border-bottom:1px solid rgba(14,49,96,.12);
  }
  .footer-meta-link{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
    padding:12px 8px !important;
    background:transparent !important;
    border-radius:0 !important;
    border:0 !important;
    border-bottom:1px solid rgba(14,49,96,.06) !important;
    color:var(--primary-deep) !important;
    font-family:var(--ff-display) !important;
    font-size:14px !important;
    font-weight:500 !important;
    text-decoration:none !important;
    letter-spacing:-.005em !important;
    transition:padding-left .25s, background .25s !important;
    position:relative;
  }
  .footer-meta-link:last-child{border-bottom:0 !important}
  .footer-meta-link::before{
    width:26px !important;
    height:26px !important;
    border-radius:50% !important;
    border:1px solid var(--rule-strong) !important;
    background:#fff !important;
    color:var(--primary-deep) !important;
    font-size:12px !important;
    flex-shrink:0;
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    transition:transform .25s, border-color .25s, color .25s, background .25s;
  }
  .footer-meta-link[href^="mailto"]::before{content:"@"}
  .footer-meta-link[href^="tel"]::before{content:"☎"}
  .footer-meta-link:active{
    padding-left:14px !important;
    background:rgba(198,149,49,.04) !important;
  }
  .footer-meta-link:active::before{
    border-color:var(--gold) !important;
    color:var(--gold) !important;
    background:rgba(198,149,49,.08) !important;
    transform:scale(1.05);
  }

  /* === LETTERHEAD CLOSING — ornament + seal + copyright === */
  .footer-rule{display:none !important}
  .footer-bottom{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    padding:22px 0 14px !important;
    margin-top:20px !important;
    border-top:0 !important;
    gap:10px !important;
    text-align:center !important;
    position:relative;
  }
  /* Top ornament — double rule with gold dot */
  .footer-bottom::before{
    content:"◆";
    color:var(--gold);
    font-size:8px;
    margin-bottom:6px;
  }
  .footer-bottom .meta{
    font-family:var(--ff-mono) !important;
    font-size:9px !important;
    font-weight:500 !important;
    color:var(--muted) !important;
    letter-spacing:.18em !important;
    text-transform:uppercase !important;
    line-height:1.55 !important;
    opacity:.9;
  }
  .footer-bottom .meta:first-of-type{
    font-family:var(--ff-display) !important;
    font-size:10.5px !important;
    color:var(--primary-deep) !important;
    letter-spacing:.06em !important;
    text-transform:none !important;
    font-weight:500;
  }
  .footer-bottom .footer-social{
    gap:14px !important;
    margin-top:8px !important;
    padding-top:10px !important;
    border-top:1px solid rgba(14,49,96,.08) !important;
    width:80px;
    justify-content:center;
  }
  .footer-bottom .footer-social a{
    width:34px !important;height:34px !important;
    border:1px solid var(--primary-deep) !important;
    background:#fff !important;
    color:var(--primary-deep) !important;
    border-radius:50% !important;
    display:inline-flex !important;
    align-items:center;justify-content:center;
    transition:transform .25s, background .25s, color .25s, border-color .25s !important;
  }
  .footer-bottom .footer-social a svg{
    width:14px !important;
    height:14px !important;
  }
  .footer-bottom .footer-social a:active{
    border-color:var(--gold) !important;
    background:var(--primary-deep) !important;
    color:var(--gold) !important;
    transform:scale(1.08);
  }
}

/* =========================================================
   MOBILE‑ONLY "Despre EHGeoM" — between Anunțuri & Footer
   ========================================================= */
.mobile-only-about{display:none !important}
@media (max-width: 880px){
  .mobile-only-about{
    display:block !important;
    position:relative;
    padding:30px 0 26px;
    background:
      radial-gradient(ellipse 100% 60% at 0% 0%, rgba(31,77,140,.05), transparent 60%),
      radial-gradient(ellipse 80% 50% at 100% 100%, rgba(198,149,49,.04), transparent 60%),
      linear-gradient(180deg, #ffffff 0%, #fafbfd 100%);
    border-top:1px solid rgba(14,49,96,.08);
    border-bottom:1px solid rgba(14,49,96,.08);
    overflow:hidden;
  }
  /* Tricolor accent top */
  .mobile-only-about::before{
    content:"";
    position:absolute;
    left:50%;top:0;
    transform:translateX(-50%);
    width:60px;
    height:2px;
    background:linear-gradient(to right,
      var(--flag-blue) 0 33.333%,
      var(--flag-yellow) 33.333% 66.666%,
      var(--flag-red) 66.666% 100%);
  }
  .mobile-only-about .container{
    padding:0 22px !important;
    max-width:none;
  }
  .moa-kicker{
    font-family:var(--ff-mono);
    font-size:9.5px;
    font-weight:700;
    letter-spacing:.28em;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:10px;
  }
  .moa-title{
    font-family:var(--ff-display);
    font-size:24px;
    font-weight:500;
    color:var(--primary-deep);
    letter-spacing:-.014em;
    line-height:1.1;
    margin:0 0 14px;
    text-wrap:balance;
    position:relative;
  }
  .moa-title::after{
    content:"";
    display:block;
    width:28px;
    height:1px;
    background:var(--gold);
    margin-top:10px;
  }
  .moa-body{
    font-size:14.5px;
    line-height:1.6;
    color:var(--ink);
    opacity:.86;
    margin:0 0 18px;
    text-wrap:pretty;
  }
  /* Facts panel — official-looking key/value */
  .moa-facts{
    display:flex;
    flex-direction:column;
    gap:0;
    padding:4px 0 0;
    border-top:1px solid rgba(14,49,96,.1);
    border-bottom:1px solid rgba(14,49,96,.1);
    margin-bottom:18px;
  }
  .moa-fact{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:14px;
    padding:10px 4px;
    border-bottom:1px solid rgba(14,49,96,.05);
    align-items:baseline;
  }
  .moa-fact:last-child{border-bottom:0}
  .moa-fact .k{
    font-family:var(--ff-mono);
    font-size:9.5px;
    font-weight:700;
    color:var(--muted);
    letter-spacing:.16em;
    text-transform:uppercase;
    min-width:96px;
  }
  .moa-fact .v{
    font-family:var(--ff-display);
    font-size:14.5px;
    font-weight:500;
    color:var(--primary-deep);
    letter-spacing:-.005em;
  }
  /* CTA button */
  .moa-cta{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:11px 18px;
    background:var(--primary-deep);
    color:#fff;
    border:0;
    border-radius:2px;
    font-family:var(--ff-mono);
    font-size:11px;
    font-weight:600;
    letter-spacing:.16em;
    text-transform:uppercase;
    cursor:pointer;
    transition:transform .2s, background .2s, gap .2s;
    box-shadow:0 4px 12px rgba(14,49,96,.16);
  }
  .moa-cta:active{
    transform:scale(.98);
    background:var(--primary-hover);
    gap:12px;
  }
  .moa-cta .arrow{
    color:var(--gold);
    font-weight:700;
    transition:transform .2s;
  }
  .moa-cta:active .arrow{transform:translateX(3px)}
}

/* === Desktop services as vertical tabs (≥881px) — port from mediere.md === */
@media (min-width: 881px) {
  .services-grid { display: none !important; }
  .services-mobile {
    display: grid !important;
    grid-template-columns: 380px 1fr;
    gap: 32px;
    align-items: start;
    padding-top: 28px;
  }
  .svc-list-m {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    overflow: visible !important;
    margin-inline: 0 !important;
    padding: 4px 0 !important;
    scroll-snap-type: none !important;
    max-height: none !important;
  }
  .svc-tab-m {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    width: 100%;
    display: flex; align-items: center; gap: 14px;
    text-align: left;
    background: var(--bg);
    border: 1px solid var(--rule);
    border-radius: 12px;
    padding: 12px 18px;
    cursor: pointer;
    transition: background .15s ease, border-color .15s ease, box-shadow .2s ease;
    font: inherit; color: inherit;
    min-height: 0;
  }
  .svc-tab-m:hover { background: var(--paper); border-color: var(--rule-strong); }
  .svc-tab-m.on {
    background: var(--paper);
    border-color: var(--primary);
    box-shadow: 0 14px 30px -20px rgba(31, 77, 140, .35);
  }
  .svc-tab-m-tx { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; }
  .svc-tab-m-name {
    font-family: var(--ff-display);
    font-size: 1.15rem; font-weight: 460;
    line-height: 1.2; letter-spacing: -.012em;
  }
  .svc-tab-m.on .svc-tab-m-name { color: var(--primary-deep, var(--primary)); }
  .svc-tab-m-short { display: none !important; }
  .svc-tab-m-arr {
    font-size: 1.4rem; color: var(--muted);
    transition: color .15s ease, transform .15s ease;
    flex-shrink: 0; align-self: center; line-height: 1;
  }
  .svc-tab-m.on .svc-tab-m-arr {
    color: var(--primary); transform: translateX(2px);
  }
  .svc-detail-m {
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: 16px;
    overflow: hidden;
    display: flex; flex-direction: column;
    animation: svcDetailFadeD .25s ease both;
    position: sticky; top: 100px;
  }
  @keyframes svcDetailFadeD {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: none; }
  }
  .svc-detail-m-img { width: 100%; aspect-ratio: 16/9; overflow: hidden; background: var(--rule); }
  .svc-detail-m-img img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(.92); }
  .svc-detail-m-eyebrow {
    display: block; padding: 26px 28px 0;
    font-family: var(--ff-mono);
    font-size: .72rem; letter-spacing: .18em;
    color: var(--primary); text-transform: uppercase;
  }
  .svc-detail-m-name {
    padding: 10px 28px 0;
    font-size: 1.75rem; line-height: 1.18; margin: 0;
    letter-spacing: -.014em; text-wrap: balance;
  }
  .svc-detail-m-text {
    padding: 16px 28px 0; color: var(--muted);
    font-size: 1rem; line-height: 1.65; margin: 0;
  }
  .svc-detail-m-cta {
    margin: 26px 28px 28px; align-self: flex-start;
    background: transparent; color: var(--ink);
    border: 1px solid var(--rule-strong);
    padding: 14px 24px; font-size: .92rem;
    border-radius: 999px; cursor: pointer; font: inherit;
    transition: background .15s ease, color .15s ease, border-color .15s ease;
  }
  .svc-detail-m-cta:hover, .svc-detail-m-cta:focus-visible {
    background: var(--primary); color: var(--primary-ink, #fff); border-color: var(--primary);
  }
  @media (prefers-reduced-motion: reduce) {
    .svc-tab-m, .svc-tab-m-arr, .svc-tab-m-name,
    .svc-detail-m, .svc-detail-m-cta {
      transition: none !important; animation: none !important;
    }
  }
}

/* === Hide mobile-restored elements on desktop (≥881px) === */
@media (min-width: 881px) {
  .svc-tab-m-n { display: none !important; }
  .page-head-kicker { display: none !important; }
  /* Stats meta on PageHead (TOTAL/CONCURSURI/CATEGORII shown in right column) — hide on desktop */
  section[style*="var(--sp-4)"] .grid-12 > div[style*="span 4"] > div[style*="margin-top"] { display: none !important; }
  /* Filter bar on /anunțuri — hide chip row on desktop */
  .page-filter-bar { display: none !important; }
}

/* === Servicii desktop: depth + shadows (≥881px) === */
@media (min-width: 881px) {
  /* Wrap the list in its own card with a soft elevated shadow */
  .svc-list-m {
    background: linear-gradient(180deg, var(--bg) 0%, color-mix(in srgb, var(--paper) 35%, var(--bg)) 100%);
    border: 1px solid var(--rule);
    border-radius: 18px;
    padding: 12px 14px !important;
    box-shadow:
      0 1px 2px rgba(15, 23, 42, .04),
      0 6px 16px -4px rgba(15, 23, 42, .08),
      0 24px 48px -20px rgba(15, 23, 42, .18);
  }

  /* Individual tabs: subtle elevation */
  .svc-tab-m {
    box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
    transition: background .18s ease, border-color .18s ease, box-shadow .25s ease, transform .18s ease !important;
  }
  .svc-tab-m:hover {
    border-color: var(--rule-strong) !important;
    box-shadow:
      0 2px 4px rgba(15, 23, 42, .05),
      0 10px 22px -8px rgba(31, 77, 140, .22);
    transform: translateY(-1px);
  }
  .svc-tab-m.on {
    border-color: var(--primary) !important;
    box-shadow:
      0 2px 4px rgba(15, 23, 42, .06),
      0 14px 32px -10px rgba(31, 77, 140, .35),
      inset 0 0 0 1px var(--primary);
    transform: translateY(-1px);
  }

  /* Detail panel: hero-level shadow with navy tint */
  .svc-detail-m {
    border: 1px solid var(--rule);
    box-shadow:
      0 1px 2px rgba(15, 23, 42, .04),
      0 10px 30px -8px rgba(15, 23, 42, .10),
      0 40px 70px -28px rgba(31, 77, 140, .28) !important;
  }
  .svc-detail-m-img {
    position: relative;
  }
  .svc-detail-m-img::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    box-shadow: inset 0 -40px 60px -20px rgba(15, 23, 42, .18);
  }

  /* CTA button — small shadow lift on hover for the wow finish */
  .svc-detail-m-cta {
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
    transition: background .18s ease, color .18s ease, border-color .18s ease, box-shadow .25s ease, transform .18s ease !important;
  }
  .svc-detail-m-cta:hover,
  .svc-detail-m-cta:focus-visible {
    box-shadow:
      0 2px 4px rgba(31, 77, 140, .15),
      0 12px 24px -8px rgba(31, 77, 140, .35);
    transform: translateY(-1px);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc-tab-m, .svc-tab-m.on, .svc-detail-m-cta {
      transition: none !important; transform: none !important;
    }
  }
}

/* Transparency page: disable reveal animation (too visually noisy with 9 long groups) */
.tr-group[data-reveal],
.tr-group[data-reveal].in {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  animation: none !important;
}

/* About page — extra aerated */
.about-page .section{padding:140px 0}
.about-page hr.rule{margin:0}
@media (max-width:880px){
  .about-page .section{padding:72px 0}
}

@media (max-width:880px){
  .about-page .grid-12{display:block !important}
  .about-page .grid-12 > *{width:100% !important;max-width:none !important;margin:0 0 28px !important}
  .about-page .grid-12 > *:last-child{margin-bottom:0 !important}
  .about-page .headline{font-size:clamp(24px,7vw,32px) !important;text-wrap:pretty !important;line-height:1.12 !important;max-width:none !important}
  .about-page .body-lg{font-size:16px;max-width:none}
}

/* About page — centered timeline headline with flourish */
.about-page .timeline-head{text-align:center;margin:0 auto 56px;max-width:none}
.about-page .timeline-headline{margin:0 auto;max-width:22ch;font-weight:400}
.about-page .timeline-flourish{display:flex;align-items:center;justify-content:center;gap:14px;margin:22px auto 0;max-width:160px;color:var(--gold,#c69531);opacity:.85}
.about-page .timeline-flourish .tl-fl-line{flex:1;height:1px;background:linear-gradient(to right,transparent 0%,rgba(198,149,49,.55) 50%,transparent 100%)}
.about-page .timeline-flourish .tl-fl-line:first-child{background:linear-gradient(to right,transparent 0%,rgba(198,149,49,.55) 100%)}
.about-page .timeline-flourish .tl-fl-line:last-child{background:linear-gradient(to right,rgba(198,149,49,.55) 0%,transparent 100%)}
.about-page .timeline-flourish .tl-fl-dot{width:5px;height:5px;border-radius:50%;background:var(--gold,#c69531);transform:rotate(45deg);flex:0 0 auto}
@media (max-width:880px){
  .about-page .timeline-head{margin-bottom:40px}
  .about-page .timeline-flourish{max-width:120px}
}

/* Services page — aerated like About */
.services-page .section{padding:140px 0}
.services-page .section-tight{padding:96px 0 140px}
@media (max-width:880px){
  .services-page .section{padding:72px 0}
  .services-page .section-tight{padding:48px 0 72px}
  .services-page .grid-12{display:block !important}
  .services-page .grid-12 > *{width:100% !important;max-width:none !important;margin:0 0 28px !important}
  .services-page .grid-12 > *:last-child{margin-bottom:0 !important}
  .services-page .headline{font-size:clamp(24px,7vw,32px) !important;text-wrap:pretty !important;line-height:1.12 !important;max-width:none !important}
  .services-page .body-lg{font-size:16px;max-width:none}
}

/* === Equipment gallery: bigger cards + GlareHover + click-to-zoom === */
.content-gallery{
  grid-template-columns:repeat(auto-fill,minmax(360px,1fr)) !important;
  gap:22px !important;
  margin:28px 0 36px !important;
}
.content-gallery-item.gh-card{
  position:relative;
  overflow:hidden;
  border-radius:8px;
  background:var(--paper);
  box-shadow:0 1px 2px rgba(14,49,96,.05);
  transition:transform .45s cubic-bezier(.2,.7,.2,1),
             box-shadow .45s cubic-bezier(.2,.7,.2,1);
  cursor:zoom-in;
  outline:none;
}
.content-gallery-item.gh-card:hover,
.content-gallery-item.gh-card:focus-visible{
  transform:translateY(-4px);
  box-shadow:0 24px 48px -18px rgba(14,49,96,.35),
             0 6px 14px -8px rgba(14,49,96,.18);
}
.content-gallery-item.gh-card:focus-visible{
  outline:2px solid var(--primary);
  outline-offset:3px;
}
.content-gallery-item.gh-card img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  display:block;
  border-radius:8px 8px 0 0;
  transition:transform .8s cubic-bezier(.2,.7,.2,1),
             filter .45s ease;
  filter:saturate(.95);
}
.content-gallery-item.gh-card:hover img,
.content-gallery-item.gh-card:focus-visible img{
  transform:scale(1.06);
  filter:saturate(1.08);
}
.content-gallery-item.gh-card figcaption{
  padding:12px 16px 16px !important;
  font-size:13px !important;
  color:var(--ink) !important;
  margin-top:0 !important;
  position:relative;
  z-index:2;
}

/* GlareHover diagonal sweep */
.gh-glare{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
  border-radius:inherit;
  z-index:1;
}
.gh-glare::before{
  content:"";
  position:absolute;
  top:-20%;
  left:-60%;
  width:50%;
  height:140%;
  background:linear-gradient(115deg,
             transparent 0%,
             rgba(255,255,255,0) 30%,
             rgba(255,255,255,.55) 50%,
             rgba(255,255,255,0) 70%,
             transparent 100%);
  transform:skewX(-18deg) translateX(0);
  transition:transform 0s;
}
.content-gallery-item.gh-card:hover .gh-glare::before,
.content-gallery-item.gh-card:focus-visible .gh-glare::before{
  transform:skewX(-18deg) translateX(340%);
  transition:transform .9s cubic-bezier(.2,.7,.2,1);
}

/* Zoom hint icon top-right */
.content-gallery-item.gh-card::after{
  content:"⤢";
  position:absolute;
  top:10px;
  right:10px;
  width:32px;
  height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(14,49,96,.78);
  color:#fff;
  font-size:18px;
  font-weight:600;
  border-radius:50%;
  opacity:0;
  transform:scale(.85);
  transition:opacity .25s ease,transform .25s cubic-bezier(.2,.7,.2,1);
  z-index:2;
  pointer-events:none;
  backdrop-filter:blur(6px);
}
.content-gallery-item.gh-card:hover::after,
.content-gallery-item.gh-card:focus-visible::after{
  opacity:1;
  transform:scale(1);
}

@media (max-width:880px){
  .content-gallery{
    grid-template-columns:repeat(auto-fill,minmax(280px,1fr)) !important;
    gap:14px !important;
  }
  .content-gallery-item.gh-card::after{opacity:.92;transform:scale(1)}
}
@media (prefers-reduced-motion:reduce){
  .content-gallery-item.gh-card,
  .content-gallery-item.gh-card img,
  .gh-glare::before{transition:none !important;transform:none !important}
}

/* === Lightbox === */
body.lb-locked{overflow:hidden}
.lb{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px;
  opacity:0;
  visibility:hidden;
  transition:opacity .25s ease,visibility 0s linear .25s;
}
.lb.is-open{opacity:1;visibility:visible;transition:opacity .25s ease,visibility 0s linear 0s}
.lb-bg{
  position:absolute;
  inset:0;
  background:rgba(8,18,36,.88);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.lb-fig{
  position:relative;
  margin:0;
  max-width:min(1200px,92vw);
  max-height:88vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  transform:scale(.94);
  opacity:0;
  transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .3s ease;
}
.lb.is-open .lb-fig{transform:scale(1);opacity:1}
.lb-img{
  max-width:100%;
  max-height:80vh;
  width:auto;
  height:auto;
  border-radius:6px;
  box-shadow:0 30px 80px rgba(0,0,0,.5);
  background:#fff;
  object-fit:contain;
  display:block;
}
.lb-cap{
  color:#f3f6fb;
  font-family:var(--ff-body);
  font-size:14px;
  letter-spacing:.01em;
  text-align:center;
  text-wrap:balance;
  max-width:60ch;
  text-shadow:0 1px 2px rgba(0,0,0,.5);
}
.lb-close{
  position:fixed;
  top:18px;
  right:22px;
  width:44px;
  height:44px;
  padding:0;
  border-radius:50%;
  background:rgba(255,255,255,.10);
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .18s ease,border-color .18s ease,transform .25s cubic-bezier(.2,.7,.2,1);
  z-index:2;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.lb-close svg{width:18px;height:18px;display:block}
.lb-close:hover{
  background:rgba(255,255,255,.22);
  border-color:rgba(255,255,255,.45);
  transform:rotate(90deg);
}
.lb-close:focus-visible{outline:2px solid #fff;outline-offset:3px}
.lb-close:active{transform:rotate(90deg) scale(.94)}
@media (max-width:600px){
  .lb{padding:18px}
  .lb-close{top:12px;right:12px;width:44px;height:44px}
  .lb-close svg{width:16px;height:16px}
  .lb-cap{font-size:13px}
}
@media (prefers-reduced-motion:reduce){
  .lb,.lb-fig{transition:opacity .15s ease,visibility 0s !important}
  .lb-fig{transform:none !important}
}

/* ==========================================================================
   EDITORIAL MOBILE — inspired by cosmos.so
   Applies only ≤880px. Bigger typography, vertical service blocks with gold
   numerals, editorial announcements, dramatic featured panel.
   ========================================================================== */
@media (max-width:880px){

  /* ---- Hero: bigger, more dramatic ----------------------------------- */
  .hero-full{min-height:78vh !important;min-height:78dvh !important}
  .hero-full-content{padding:0 22px !important;gap:22px !important}
  .hero-full-title{
    font-size:clamp(40px,11vw,64px) !important;
    line-height:.98 !important;
    letter-spacing:-.025em !important;
    font-weight:380 !important;
    text-wrap:balance;
  }
  .hero-full-title em{
    font-style:italic;
    color:var(--gold,#c69531);
    font-weight:400;
  }
  .hero-full-actions{gap:12px !important;width:100%}
  .hero-full-actions .btn-gold,
  .hero-full-actions .btn-line-light{
    width:100% !important;
    justify-content:space-between !important;
    padding:18px 22px !important;
    font-size:13.5px !important;
    letter-spacing:.05em !important;
  }
  .cycle-dots{
    bottom:18px !important;
    right:22px !important;
    gap:8px !important;
  }
  .cycle-dots button{
    width:22px !important;
    height:2px !important;
    border-radius:0 !important;
    background:rgba(255,255,255,.35) !important;
    border:0 !important;
  }
  .cycle-dots button.on{background:#fff !important}

  /* ---- Section header treatment -------------------------------------- */
  .section{padding:80px 0 !important}
  .section .container > .meta:first-child,
  section.section h2.headline + .meta,
  .section .headline{margin-top:0}
  .section h2.headline{
    font-size:clamp(30px,7.5vw,42px) !important;
    letter-spacing:-.018em !important;
    line-height:1.04 !important;
    text-wrap:balance !important;
    margin-top:6px !important;
  }
  .section .meta{
    font-size:11px !important;
    letter-spacing:.16em !important;
    font-weight:500 !important;
  }

  /* ---- Services: HORIZONTAL SWIPE CAROUSEL --------------------------- */
  .services-mobile{
    display:block !important;
    padding-top:8px !important;
  }
  .svc-list-m{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scroll-snap-type:x mandatory !important;
    scroll-behavior:smooth !important;
    -webkit-overflow-scrolling:touch !important;
    margin:0 -22px !important;
    padding:18px 11vw 28px !important;
    gap:14px !important;
    max-height:none !important;
    border:0 !important;
    scrollbar-width:none !important;
    scroll-padding-left:11vw !important;
  }
  .svc-list-m::-webkit-scrollbar{display:none !important;width:0 !important;height:0 !important}
  .svc-tab-m{
    position:relative !important;
    flex:0 0 78vw !important;
    max-width:360px !important;
    scroll-snap-align:center !important;
    scroll-snap-stop:always !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    align-items:flex-start !important;
    text-align:left !important;
    background:var(--bg) !important;
    border:1px solid var(--rule) !important;
    border-radius:16px !important;
    padding:32px 26px 26px !important;
    min-height:280px !important;
    box-shadow:0 2px 8px rgba(14,49,96,.04) !important;
    transition:transform .35s cubic-bezier(.2,.7,.2,1),
               box-shadow .35s cubic-bezier(.2,.7,.2,1),
               border-color .25s ease !important;
    overflow:hidden;
    isolation:isolate;
  }
  .svc-tab-m.on{
    background:var(--paper) !important;
    border-color:var(--primary) !important;
    box-shadow:0 18px 42px -20px rgba(14,49,96,.30),
               0 6px 14px -8px rgba(14,49,96,.18) !important;
  }
  .svc-tab-m-n{
    display:flex !important;
    align-items:center;
    font-family:var(--ff-display) !important;
    font-size:42px !important;
    font-weight:380 !important;
    letter-spacing:-.02em !important;
    color:var(--gold,#c69531) !important;
    line-height:1 !important;
    margin-bottom:14px !important;
  }
  .svc-tab-m.on .svc-tab-m-n{color:var(--primary-deep,var(--primary)) !important}
  .svc-tab-m-tx{
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
    min-width:0;
    width:100%;
  }
  .svc-tab-m-name{
    font-family:var(--ff-display) !important;
    font-size:24px !important;
    font-weight:420 !important;
    line-height:1.12 !important;
    letter-spacing:-.014em !important;
    color:var(--ink) !important;
    text-wrap:balance;
  }
  .svc-tab-m.on .svc-tab-m-name{color:var(--primary-deep,var(--primary)) !important}
  .svc-tab-m-short{
    display:-webkit-box !important;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:14px !important;
    line-height:1.55 !important;
    color:var(--muted) !important;
  }
  .svc-tab-m-arr{
    margin-top:auto !important;
    padding-top:18px !important;
    font-size:22px !important;
    color:var(--primary) !important;
    align-self:flex-end !important;
    transition:transform .25s ease !important;
  }
  .svc-tab-m.on .svc-tab-m-arr,
  .svc-tab-m:active .svc-tab-m-arr{transform:translateX(6px)}

  /* Hide the bottom detail panel — slides ARE the content now */
  .svc-detail-m{display:none !important}

  /* Dot indicators (JS-injected) */
  .svc-dots{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:8px !important;
    margin:6px 0 10px !important;
    padding:0 22px !important;
  }
  .svc-dot{
    width:22px;height:2px;
    background:rgba(14,49,96,.18);
    border:0;padding:0;
    cursor:pointer;
    transition:background .25s ease,width .25s ease;
  }
  .svc-dot.on{
    background:var(--gold,#c69531);
    width:32px;
  }

  /* ---- Featured panel below: grand editorial card -------------------- */
  .svc-detail-m{
    margin-top:48px !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    position:static !important;
    overflow:visible !important;
  }
  .svc-detail-m-img{
    aspect-ratio:5/4 !important;
    border-radius:4px !important;
    overflow:hidden;
    margin-bottom:18px;
  }
  .svc-detail-m-img img{
    transform:scale(1.001);
    transition:transform 1.2s cubic-bezier(.2,.7,.2,1);
  }
  .svc-detail-m:hover .svc-detail-m-img img{transform:scale(1.04)}
  .svc-detail-m-eyebrow{
    padding:0 !important;
    margin-top:6px;
    font-size:10.5px !important;
    letter-spacing:.2em !important;
    color:var(--gold,#c69531) !important;
  }
  .svc-detail-m-name{
    padding:0 !important;
    margin-top:10px !important;
    font-size:30px !important;
    line-height:1.06 !important;
    letter-spacing:-.016em !important;
    font-family:var(--ff-display);
    font-weight:400;
    color:var(--ink);
  }
  .svc-detail-m-text{
    padding:0 !important;
    margin-top:14px !important;
    font-size:15px !important;
    line-height:1.6 !important;
    color:var(--muted);
  }
  .svc-detail-m-cta{
    margin:24px 0 0 !important;
    padding:14px 0 !important;
    background:transparent !important;
    color:var(--ink) !important;
    border:0 !important;
    border-bottom:1px solid var(--ink) !important;
    border-radius:0 !important;
    align-self:flex-start;
    font-weight:500 !important;
    letter-spacing:.02em !important;
    font-size:13.5px !important;
  }
  .svc-detail-m-cta:hover,
  .svc-detail-m-cta:focus-visible{
    background:transparent !important;
    color:var(--primary) !important;
    border-color:var(--primary) !important;
  }

  /* ---- Announcements: editorial cards (LEFT-aligned content) --------- */
  .announce-row{
    grid-template-columns:1fr !important;
    column-gap:0 !important;
    row-gap:14px !important;
    padding:32px 0 !important;
    text-align:left !important;
    justify-items:start !important;
  }
  .announce-meta{
    grid-row:auto !important;
    flex-direction:row !important;
    align-items:baseline !important;
    justify-content:flex-start !important;
    gap:18px !important;
  }
  .announce-meta .tag{
    align-self:flex-start !important;
    padding:5px 9px !important;
    font-size:9.5px !important;
    letter-spacing:.16em !important;
  }
  .announce-meta .meta{
    font-size:14px !important;
    font-family:var(--ff-body) !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
    color:var(--muted) !important;
    font-weight:500 !important;
  }
  .announce-title{
    grid-column:1 !important;
    font-size:24px !important;
    line-height:1.14 !important;
    letter-spacing:-.012em !important;
    margin:0 !important;
    text-wrap:balance;
    text-align:left !important;
    max-width:none !important;
  }
  .announce-excerpt{
    grid-column:1 !important;
    font-size:14.5px !important;
    line-height:1.55 !important;
    color:var(--muted) !important;
    margin-top:8px !important;
    text-align:left !important;
    max-width:none !important;
  }
  .announce-row:hover{padding-left:6px !important}

  /* Stronger headline split with toate-anuntturile button */
  section.section .container > div[style*="justify-content: space-between"]{
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:18px !important;
    margin-bottom:32px !important;
    padding-bottom:20px !important;
    text-align:center !important;
  }
  section.section .container > div[style*="justify-content: space-between"] > *{
    width:100% !important;
    text-align:center !important;
  }
  section.section .container > div[style*="justify-content: space-between"] .btn-link{
    align-self:center !important;
    font-size:11px !important;
    letter-spacing:.16em !important;
  }

  /* ---- Despre EHGeoM: more breathing room ---------------------------- */
  .mobile-only-about{padding:64px 0 !important}
  .mobile-only-about .moa-title{
    font-size:30px !important;
    letter-spacing:-.014em !important;
    margin-bottom:24px !important;
  }
  .moa-facts{gap:0 !important;margin-bottom:28px !important}
  .moa-fact{
    padding:18px 0 !important;
    border-bottom:1px solid var(--rule);
    display:flex !important;
    justify-content:space-between;
    align-items:baseline;
  }
  .moa-fact:first-child{border-top:1px solid var(--rule)}
  .moa-fact .k{
    font-size:10.5px !important;
    letter-spacing:.18em !important;
    text-transform:uppercase;
    color:var(--muted) !important;
    font-weight:500;
  }
  .moa-fact .v{
    font-family:var(--ff-display) !important;
    font-size:18px !important;
    font-weight:420 !important;
    color:var(--ink);
    letter-spacing:-.005em !important;
  }
  .moa-cta{
    margin-top:8px !important;
    padding:16px 22px !important;
    width:100% !important;
    justify-content:space-between !important;
    font-size:13px !important;
    letter-spacing:.06em !important;
  }

  /* ---- Reveal: fade-up + scale for images ---------------------------- */
  .mreveal{
    opacity:0;
    transform:translateY(28px);
    transition:opacity .9s cubic-bezier(.2,.7,.2,1),
               transform .9s cubic-bezier(.2,.7,.2,1);
    will-change:opacity,transform;
  }
  .mreveal.in{opacity:1;transform:none}
  .mreveal-img-wrap{overflow:hidden;border-radius:4px}
  .mreveal-img-wrap img{
    transform:scale(1.08);
    transition:transform 1.4s cubic-bezier(.2,.7,.2,1);
    will-change:transform;
  }
  .mreveal-img-wrap.in img{transform:scale(1)}

  @media (prefers-reduced-motion:reduce){
    .mreveal,.mreveal.in,.mreveal-img-wrap img{
      opacity:1 !important;
      transform:none !important;
      transition:none !important;
    }
  }

  /* ====================================================================
     CINEMATIC LAYER (mobile ≤880px)
     Ken Burns on hero, huge outline marks, stats strip with count-up,
     partner marquee, magazine-spread services.
     ==================================================================== */

  /* ---- Hero: Ken Burns + giant outline 60 + letter reveal ---------- */
  .hero-full-bg{overflow:hidden}
  .hero-photo-cycle img.on{
    animation:cineKenBurns 36s ease-in-out infinite alternate;
    transform-origin:center 38%;
  }
  @keyframes cineKenBurns{
    0%{transform:scale(1.04) translate(0,0)}
    100%{transform:scale(1.18) translate(-2.5%,-2%)}
  }
  /* Vignette darker bottom for text legibility */
  .hero-full-bg::after{
    background:linear-gradient(180deg,
      rgba(8,18,36,.30) 0%,
      rgba(8,18,36,.10) 35%,
      rgba(8,18,36,.62) 100%) !important;
  }
  /* Giant outline mark behind hero text */
  .hero-full-content{position:relative;isolation:isolate}
  .hero-full-content::before{
    content:"60";
    position:absolute;
    left:-4vw;
    top:-2vh;
    font-family:var(--ff-display);
    font-size:62vw;
    font-weight:380;
    line-height:.85;
    letter-spacing:-.04em;
    color:transparent;
    -webkit-text-stroke:1.5px rgba(255,255,255,.22);
    text-stroke:1.5px rgba(255,255,255,.22);
    z-index:-1;
    pointer-events:none;
    opacity:0;
    animation:cineMarkIn 1.6s cubic-bezier(.2,.7,.2,1) .6s forwards;
  }
  @keyframes cineMarkIn{
    0%{opacity:0;transform:translate(0,12px) scale(.96)}
    100%{opacity:1;transform:none}
  }

  /* Letter-by-letter reveal injected by JS as .cw > .cl spans */
  .hero-full-title .cw{
    display:inline-block;
    white-space:nowrap;
  }
  .hero-full-title .cl{
    display:inline-block;
    opacity:0;
    transform:translateY(.4em);
    animation:cineCharIn .7s cubic-bezier(.2,.7,.2,1) forwards;
    animation-delay:calc(.2s + var(--ci,0) * .035s);
  }
  @keyframes cineCharIn{
    to{opacity:1;transform:none}
  }

  /* ---- Stats strip (injected) -------------------------------------- */
  .cine-stats{
    background:#fff;
    padding:54px 22px 56px;
    border-bottom:1px solid var(--rule);
  }
  .cine-stats-eyebrow{
    display:flex;align-items:center;justify-content:center;gap:14px;
    margin-bottom:30px;
    font-family:var(--ff-mono);
    font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--muted);
  }
  .cine-stats-eyebrow::before,
  .cine-stats-eyebrow::after{
    content:"";flex:1;height:1px;background:var(--rule-strong);max-width:60px;
  }
  .cine-stats-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:36px 22px;
  }
  .cine-stat{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
  .cine-stat-num{
    font-family:var(--ff-display);
    font-size:clamp(46px,14vw,68px);
    font-weight:380;
    line-height:.95;
    letter-spacing:-.025em;
    color:var(--primary-deep,var(--primary));
    font-feature-settings:"tnum","lnum";
    font-variant-numeric:tabular-nums;
    display:flex;align-items:baseline;
  }
  .cine-stat-num .suf{
    font-size:.45em;
    color:var(--gold,#c69531);
    margin-left:4px;
    letter-spacing:0;
  }
  .cine-stat-label{
    font-family:var(--ff-mono);
    font-size:10.5px;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:var(--muted);
  }
  .cine-stat-rule{
    width:32px;height:2px;background:var(--gold,#c69531);
    margin:8px 0 0;
  }

  /* ---- Services magazine spread: huge outline numeral ------------- */
  .svc-tab-m{
    overflow:hidden;
    isolation:isolate;
  }
  .svc-tab-m::before{
    content:attr(data-cine-n);
    position:absolute;
    right:-12px;
    bottom:-22px;
    font-family:var(--ff-display);
    font-size:200px;
    font-weight:380;
    line-height:.78;
    letter-spacing:-.04em;
    color:transparent;
    -webkit-text-stroke:1.2px rgba(31,77,140,.10);
    text-stroke:1.2px rgba(31,77,140,.10);
    z-index:-1;
    pointer-events:none;
    transition:transform .8s cubic-bezier(.2,.7,.2,1),
               -webkit-text-stroke-color .4s ease;
    transform:translateY(8px);
  }
  .svc-tab-m.on::before,
  .svc-tab-m:hover::before{
    -webkit-text-stroke-color:rgba(198,149,49,.36);
    text-stroke-color:rgba(198,149,49,.36);
    transform:translateY(0);
  }
  /* Hide the original small inline numeral on mobile when cine is on */
  .svc-tab-m[data-cine-n] .svc-tab-m-n{
    color:transparent !important;
    -webkit-text-stroke:1px var(--gold,#c69531);
  }
  .svc-tab-m.on[data-cine-n] .svc-tab-m-n{
    -webkit-text-stroke:1px var(--primary-deep,var(--primary));
  }

  /* ---- Partner marquee --------------------------------------------- */
  .cine-marquee{
    overflow:hidden;
    padding:36px 0;
    background:var(--paper,#f5f7fa);
    border-top:1px solid var(--rule);
    border-bottom:1px solid var(--rule);
    position:relative;
  }
  .cine-marquee::before,
  .cine-marquee::after{
    content:"";
    position:absolute;
    top:0;bottom:0;width:48px;
    z-index:2;
    pointer-events:none;
  }
  .cine-marquee::before{left:0;background:linear-gradient(90deg,var(--paper,#f5f7fa),transparent)}
  .cine-marquee::after{right:0;background:linear-gradient(-90deg,var(--paper,#f5f7fa),transparent)}
  .cine-marquee-eyebrow{
    text-align:center;
    margin-bottom:22px;
    font-family:var(--ff-mono);
    font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--muted);
  }
  .cine-marquee-track{
    display:flex;
    gap:48px;
    width:max-content;
    animation:cineMarq 36s linear infinite;
    align-items:center;
  }
  .cine-marquee:hover .cine-marquee-track,
  .cine-marquee:active .cine-marquee-track{animation-play-state:paused}
  .cine-marq-item{
    display:flex;
    align-items:center;
    gap:12px;
    flex:0 0 auto;
    font-family:var(--ff-display);
    font-size:18px;
    font-weight:420;
    letter-spacing:-.005em;
    color:var(--ink);
    white-space:nowrap;
  }
  .cine-marq-item .dot{
    width:6px;height:6px;border-radius:50%;
    background:var(--gold,#c69531);
    flex:0 0 6px;
  }
  @keyframes cineMarq{
    0%{transform:translateX(0)}
    100%{transform:translateX(-50%)}
  }

  /* ---- Counts hide when reduced motion ----------------------------- */
  @media (prefers-reduced-motion:reduce){
    .hero-photo-cycle img.on,
    .hero-full-content::before,
    .hero-full-title .cl,
    .cine-marquee-track,
    .svc-tab-m::before{
      animation:none !important;
      transform:none !important;
      opacity:1 !important;
    }
  }

  /* ====================================================================
     GLOBAL: page heads centered & full-width on mobile
     Fixes titles stuck in narrow grid columns wrapping one word per line.
     ==================================================================== */
  .grid-12{
    display:block !important;
  }
  .grid-12 > *{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 0 22px !important;
  }
  .grid-12 > *:last-child{margin-bottom:0 !important}

  /* Center the page-head content (descendant selectors, not direct child) */
  .grid-12 .kicker,
  .grid-12 .page-head-kicker,
  .grid-12 h1.headline,
  .grid-12 h1.display,
  .grid-12 .lead,
  .grid-12 .body-lg,
  .page-head .kicker,
  .page-head h1,
  .page-head .lead,
  .page-head .body-lg{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Force titles to fit the row, not stack words */
  .grid-12 h1,
  .grid-12 h1.headline,
  .grid-12 h1.display,
  .page-head h1{
    width:100% !important;
    max-width:100% !important;
    text-wrap:balance !important;
    font-size:clamp(28px,7.5vw,40px) !important;
    line-height:1.05 !important;
    letter-spacing:-.018em !important;
    padding:0 4px !important;
    display:block !important;
  }

  /* Kicker (eyebrow) center it */
  .grid-12 .kicker,
  .page-head .kicker{
    display:block !important;
    text-align:center !important;
    margin-bottom:14px !important;
  }

  /* Lead paragraph under title — center, narrower */
  .grid-12 .lead,
  .grid-12 .body-lg,
  .page-head .lead,
  .page-head .body-lg{
    max-width:60ch !important;
    margin-top:14px !important;
    font-size:15px !important;
    line-height:1.6 !important;
    text-align:center !important;
  }

  /* Hide IDNO + address masthead block on mobile */
  .masthead-meta{display:none !important}

  /* Contact card address: collapse h3 + p (3 lines via <br>) into 1 row */
  div[style*="padding: 32px"] h3.title{
    display:inline !important;
    font-size:15px !important;
    font-weight:500 !important;
    line-height:1.5 !important;
    margin:0 !important;
    color:var(--ink) !important;
  }
  div[style*="padding: 32px"] h3.title + p.body{
    display:inline !important;
    margin:0 !important;
    font-size:15px !important;
    line-height:1.5 !important;
  }
  div[style*="padding: 32px"] h3.title::after{
    content:", " !important;
  }
  /* JS will replace br with ", " — these rules tighten styling */
  div[style*="padding: 32px"] h3.title + p.body{
    color:var(--muted);
  }

  /* Hide kicker (eyebrow) above page titles on mobile */
  .page-head .kicker,
  .page-head .page-head-kicker,
  .grid-12 .kicker,
  .grid-12 > .page-head-kicker,
  main > section:first-of-type .container > .kicker,
  main > section:first-of-type .container > .page-head-kicker,
  .content-page .page-head .kicker,
  .content-page .kicker{
    display:none !important;
  }

  /* ---- Footer: COMPACT + center on mobile --------------------------- */
  .footer{padding:0 !important}
  .footer .container{padding:20px 14px 16px !important}
  .footer .footer-grid{
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
  }
  .footer .footer-col{
    text-align:center !important;
    width:100% !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:16px 0 !important;
    position:relative;
  }
  /* Subtle divider between sections for structure */
  .footer .footer-col + .footer-col:not(:empty)::before{
    content:"";
    display:block;
    width:36px;
    height:1px;
    background:rgba(255,255,255,.18);
    margin:0 auto 14px;
  }
  .footer .footer-h{
    text-align:center !important;
    margin:0 auto 10px !important;
    display:block !important;
    font-size:10.5px !important;
    letter-spacing:.18em !important;
  }
  .footer .footer-body,
  .footer-col:has(.footer-meta-link) .footer-body{
    text-align:center !important;
    margin:0 auto !important;
    width:100% !important;
    max-width:100% !important;
    font-size:12px !important;
    line-height:1.5 !important;
  }
  .footer .footer-social{
    justify-content:center !important;
    margin:0 auto !important;
    gap:8px !important;
  }
  /* Partners list: tight 2-col grid */
  .footer .partners{
    list-style:none !important;
    padding:0 !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:auto auto !important;
    justify-content:center !important;
    align-items:center !important;
    column-gap:10px !important;
    row-gap:8px !important;
    width:max-content !important;
    max-width:100% !important;
  }
  .footer .partner-row{
    display:contents !important;
  }
  .footer .partner-seal{
    justify-self:end !important;
    flex:0 0 auto !important;
  }
  .footer .partner-seal img{
    width:18px !important;
    height:auto !important;
  }
  .footer .partner-link{
    justify-self:start !important;
    text-align:left !important;
    width:auto !important;
    max-width:none !important;
    font-size:12.5px !important;
    line-height:1.3 !important;
  }
  /* Email + phone rows: tighter */
  .footer .footer-meta-list{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:4px !important;
    margin-top:8px !important;
    border:0 !important;
  }
  .footer .footer-meta-link{
    flex:0 0 auto !important;
    width:auto !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    padding:6px 8px !important;
    font-size:13px !important;
    border-bottom:0 !important;
  }
  /* Remove email + phone glyphs (cleaner, more structured) */
  .footer .footer-meta-link::before{content:"" !important;display:none !important}
  .footer .footer-bottom{
    text-align:center !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:6px !important;
    padding:12px 0 0 !important;
    margin-top:8px !important;
  }
  /* Remove the ◆ diamond glyph above copyright */
  .footer .footer-bottom::before{content:none !important;display:none !important}
  .footer .footer-bottom .meta{
    text-align:center !important;
    font-size:10px !important;
    line-height:1.4 !important;
  }
  .footer .footer-social-bottom{
    justify-content:center !important;
    margin:6px auto 0 !important;
    gap:10px !important;
  }
  .footer .footer-social-bottom a{
    width:28px !important;
    height:28px !important;
  }
  .footer hr.footer-rule{margin:8px 0 !important}

  /* ---- Hero on homepage: center title + actions ------------------- */
  .hero-full-content{
    text-align:center !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .hero-full-title{
    text-align:center !important;
    margin:0 auto !important;
  }
  .hero-full-actions{
    align-items:center !important;
    justify-content:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    max-width:340px !important;
  }
  /* Recenter the giant outline 60 */
  .hero-full-content::before{
    left:50% !important;
    transform:translateX(-50%);
    text-align:center;
  }
  @keyframes cineMarkIn{
    0%{opacity:0;transform:translate(-50%,12px) scale(.96)}
    100%{opacity:1;transform:translateX(-50%)}
  }

  /* ---- Section headers on homepage: center ----------------------- */
  .section .container > .meta,
  .section h2.headline{
    text-align:center !important;
  }
  .section h2.headline{
    margin-left:auto !important;
    margin-right:auto !important;
    max-width:18ch !important;
  }
  /* Container with headline + "Toate anunțurile" link — keep that link below, centered */
  section.section .container > div[style*="justify-content: space-between"] .btn-link{
    align-self:center !important;
  }
}

/* Hide IDNO + address masthead block — desktop + mobile */
.masthead-meta{display:none !important}

/* Fix: mobile drawer overflows on desktop (translateX(100%) puts it off-canvas right, creating h-scroll). Hide on desktop. */
@media (min-width:881px){
  .nav-drawer{display:none !important}
}

/* Force hero-full-bg overflow hidden globally to prevent horizontal scroll from scaled inactive images */
.hero-full-bg{overflow:hidden !important}

/* Prevent horizontal scroll from any source */
html,body{overflow-x:clip !important;max-width:100% !important}

/* At viewports 1100-1440px, the nav still overflows. Also hide phone + sep to fit "Cere ofertă" CTA. */
@media (min-width:881px) and (max-width:1440px){
  .nav-util-hours,.nav-util-phone,.nav-util-sep{display:none !important}
  .nav-util{border-left:0 !important;padding:0 12px !important;gap:8px !important}
}

/* ============================================================
   MOBILE FOOTER → match desktop dark navy (user req 2026-06-14)
   Overrides the cream/letterhead variant in @media (max-width:700px).
   Stronger selector + later position wins specificity tie.
   ============================================================ */
@media (max-width:700px){
  .footer{
    background:linear-gradient(180deg,var(--primary-deep, #0e3160) 0%,#08213f 100%) !important;
    background-color:#0e3160 !important;
    color:#ffffff !important;
    border:0 !important;
  }
  .footer::before,.footer::after{display:none !important}
  .footer .footer-grid::before{display:none !important}
  .footer .container{padding:32px 22px 24px !important}
  .footer-h{
    font-family:var(--ff-mono) !important;
    font-size:10.5px !important;
    font-weight:600 !important;
    letter-spacing:.22em !important;
    color:#ffffff9e !important;
    text-transform:uppercase !important;
    text-align:left !important;
    margin:0 0 14px !important;
    padding:0 0 10px !important;
    position:relative !important;
  }
  .footer-h::before{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    left:0 !important;right:auto !important;top:auto !important;bottom:0 !important;
    width:48px !important;height:1px !important;
    background:linear-gradient(to right,#d9a847 0%,rgba(217,168,71,.55) 55%,transparent 100%) !important;
    transform:none !important;
    opacity:1 !important;
  }
  .footer-h::after{display:none !important}
  .partners{
    border-top:1px solid rgba(255,255,255,.12) !important;
    border-bottom:1px solid rgba(255,255,255,.12) !important;
  }
  .partner-row{
    border-bottom:1px solid rgba(255,255,255,.06) !important;
  }
  .partner-seal{filter:drop-shadow(0 1px 1px rgba(0,0,0,.4)) !important}
  .partner-link{
    color:#ffffffd9 !important;
  }
  .partner-row:active{
    background:rgba(198,149,49,.10) !important;
  }
  .footer-col:has(.footer-meta-link) .footer-body{
    color:#ffffff8c !important;
  }
  .footer-meta-list{
    border-top:1px solid rgba(255,255,255,.12) !important;
    border-bottom:1px solid rgba(255,255,255,.12) !important;
  }
  .footer-meta-link{
    color:#ffffffd9 !important;
    border-bottom:1px solid rgba(255,255,255,.06) !important;
  }
  .footer-meta-link:last-child{border-bottom:0 !important}
  .footer-meta-link:hover,
  .footer-meta-link:active{color:var(--gold, #c69531) !important}
  .footer-bottom,
  .footer-bottom *{color:#ffffff7a !important}
  .footer-bottom a{color:#ffffff9e !important}
  .footer-social a{
    background:rgba(255,255,255,.08) !important;
    color:#ffffffb3 !important;
    border:1px solid rgba(255,255,255,.15) !important;
  }
  .footer-social a:hover,
  .footer-social a:active{
    background:var(--gold, #c69531) !important;
    color:var(--ink) !important;
    border-color:var(--gold, #c69531) !important;
  }
}

/* Additional navy footer fixes — higher specificity overrides */
@media (max-width:700px){
  /* Hide the centered gold ornamental bar above headers */
  .footer .footer-grid::before,
  footer.footer .footer-grid::before{display:none !important}

  /* Force left-align of headers regardless of prefers-reduced-motion */
  footer.footer .footer-h,
  .footer .footer-h{text-align:left !important}

  /* Bottom social icons → dark navy theme (currently white circles with invisible navy SVG) */
  .footer .footer-bottom .footer-social a,
  footer.footer .footer-bottom .footer-social a{
    width:34px !important;height:34px !important;
    background:rgba(255,255,255,.08) !important;
    color:#ffffffb3 !important;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:50% !important;
  }
  .footer .footer-bottom .footer-social a:hover,
  .footer .footer-bottom .footer-social a:active{
    background:var(--gold, #c69531) !important;
    color:var(--ink) !important;
    border-color:var(--gold, #c69531) !important;
  }
  .footer .footer-bottom .footer-social a svg{
    width:15px !important;height:15px !important;
  }
  .footer .footer-bottom .footer-social{
    border-top:1px solid rgba(255,255,255,.10) !important;
  }

  /* Center the copyright/IDNO + meta on a single column with proper spacing */
  .footer-bottom{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    gap:8px !important;
    margin-top:18px !important;
    padding-top:18px !important;
    border-top:1px solid rgba(255,255,255,.10) !important;
  }
  .footer-bottom > *{color:#ffffff7a !important;font-size:11px !important}
}

/* Footer-bottom meta lines (© + IDNO) must be readable on navy bg */
@media (max-width:700px){
  .footer-bottom .meta,
  .footer-bottom .meta:first-of-type,
  .footer .footer-bottom .meta{
    color:#ffffff8c !important;
  }
  .footer-bottom::before{display:none !important}
}

/* Mobile sticky: only .nav (logo+hamburger) sticks. Masthead scrolls away normally. */
@media (max-width:880px){
  .masthead{position:relative !important; top:auto !important; z-index:auto !important}
  .nav{position:sticky !important; top:0 !important; z-index:60 !important}
}

/* ============================================================
   QUOTE — formular simplu (user req 2026-06-14)
   ============================================================ */
.quote-simple{padding:64px 0 80px;background:#fafbfd}
.quote-head{max-width:680px;margin:0 0 32px}
.quote-head .kicker{display:inline-block;font-family:var(--ff-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--primary);margin-bottom:10px}
.quote-head .headline{font-size:clamp(34px,4vw,52px);color:var(--ink);margin:0 0 14px}
.quote-head .quote-lead{font-size:17px;line-height:1.55;color:var(--muted);max-width:60ch;margin:0}

.quote-contact-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:780px;margin:0 0 36px}
.quote-contact-card{display:flex;flex-direction:column;gap:4px;padding:22px 24px;background:#fff;border:1px solid var(--rule);border-radius:4px;text-decoration:none;color:var(--ink);transition:border-color .18s,box-shadow .18s,transform .18s}
.quote-contact-card:hover{border-color:var(--primary);box-shadow:0 6px 18px rgba(14,49,96,.08);transform:translateY(-2px)}
.quote-contact-label{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.quote-contact-value{font-family:var(--ff-display);font-size:22px;font-weight:480;letter-spacing:-.008em;color:var(--primary-deep)}
.quote-contact-meta{font-size:12.5px;color:var(--muted);margin-top:2px}

.quote-sep{display:flex;align-items:center;gap:14px;max-width:780px;margin:0 0 28px;color:var(--muted);font-family:var(--ff-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.quote-sep::before,.quote-sep::after{content:"";flex:1;height:1px;background:var(--rule-strong)}

.quote-form{max-width:780px;display:flex;flex-direction:column;gap:18px}
.quote-row-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.quote-field{display:flex;flex-direction:column;gap:6px}
.quote-label-txt{font-family:var(--ff-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.quote-field input,.quote-field select,.quote-field textarea{
  font-family:var(--ff-body);font-size:16px;line-height:1.4;color:var(--ink);
  padding:13px 14px;background:#fff;border:1px solid var(--rule-strong);border-radius:3px;
  width:100%;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none;
}
.quote-field textarea{resize:vertical;min-height:96px;font-family:var(--ff-body)}
.quote-field select{
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23404a5e' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E") no-repeat right 14px center;
  padding-right:32px;
}
.quote-field input:focus,.quote-field select:focus,.quote-field textarea:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px rgba(31,77,140,.12)}

.quote-error{color:#9c2a35;font-size:14px;margin:0;padding:10px 14px;background:rgba(156,42,53,.06);border-left:3px solid #9c2a35;border-radius:0 3px 3px 0}

.quote-submit{
  align-self:flex-start;
  background:var(--primary);color:#fff;border:0;font-family:var(--ff-display);
  font-size:16px;font-weight:500;letter-spacing:.02em;padding:16px 36px;min-height:52px;
  border-radius:3px;cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s;
  box-shadow:0 4px 12px rgba(14,49,96,.18);
}
.quote-submit:hover{background:var(--primary-hover);box-shadow:0 6px 18px rgba(14,49,96,.24);transform:translateY(-1px)}
.quote-submit:active{transform:translateY(0);box-shadow:0 2px 6px rgba(14,49,96,.18)}
.quote-submit:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* Mobile responsive */
@media (max-width:700px){
  .quote-simple{padding:36px 0 60px}
  .quote-head{margin-bottom:24px}
  .quote-head .headline{font-size:32px !important}
  .quote-head .quote-lead{font-size:15px}
  .quote-contact-row{grid-template-columns:1fr;gap:10px;margin-bottom:24px}
  .quote-contact-card{padding:16px 18px}
  .quote-contact-value{font-size:19px}
  .quote-row-2{grid-template-columns:1fr;gap:14px}
  .quote-submit{width:100%;text-align:center}
  .quote-sep{margin-bottom:20px}
}

/* Quote — PDF download section below form */
.quote-forms-pdf{max-width:780px;margin-top:40px}
.quote-sep-tight{margin-bottom:14px !important}
.quote-forms-pdf-lead{font-size:14.5px;line-height:1.55;color:var(--muted);margin:0 0 18px;max-width:60ch}
.quote-forms-pdf-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.quote-pdf-link{
  display:flex;align-items:center;gap:14px;
  padding:14px 18px;background:#fff;border:1px solid var(--rule-strong);border-radius:3px;
  text-decoration:none;color:var(--ink);
  transition:border-color .15s,background .15s,padding .15s;
}
.quote-pdf-link:hover{border-color:var(--primary);background:var(--bg);padding-left:22px}
.quote-pdf-icon{
  font-family:var(--ff-mono);font-size:10.5px;font-weight:700;letter-spacing:.1em;color:var(--gold,#c69531);
  background:rgba(198,149,49,.08);border:1px solid rgba(198,149,49,.32);
  padding:4px 8px;min-width:42px;text-align:center;
}
.quote-pdf-name{flex:1;font-family:var(--ff-display);font-size:16px;font-weight:460;letter-spacing:-.005em}
.quote-pdf-arr{font-family:var(--ff-display);font-size:18px;color:var(--muted);transition:transform .15s,color .15s}
.quote-pdf-link:hover .quote-pdf-arr{color:var(--primary);transform:translateY(2px)}

@media (max-width:700px){
  .quote-forms-pdf{margin-top:28px}
  .quote-forms-pdf-list{grid-template-columns:1fr;gap:8px}
  .quote-pdf-link{padding:12px 14px}
  .quote-pdf-name{font-size:15px}
}

/* ============================================================
   Drawer mai plin (user req 2026-06-14) — link-uri mai mari,
   accent tricolor sus, lang switcher mai prezent.
   ============================================================ */
@media (max-width:880px){
  /* Tricolor stripe at top of drawer */
  .nav-drawer-panel{position:relative}
  .nav-drawer-panel::before{
    content:"";
    position:absolute;
    left:0;right:0;top:0;
    height:3px;
    background:linear-gradient(to right,
      var(--flag-blue, #0050a8) 0 33.333%,
      var(--flag-yellow, #ffd400) 33.333% 66.666%,
      var(--flag-red, #cc092f) 66.666% 100%);
    z-index:1;
  }

  /* Bigger primary links with breathing room */
  .nav-drawer-link{
    font-size:19px !important;
    font-weight:400 !important;
    padding:11px 14px !important;
    min-height:46px !important;
    letter-spacing:-.008em;
  }
  .nav-drawer-link.active{
    font-weight:500 !important;
    background:var(--bg) !important;
  }
  .nav-drawer-link.active::before{
    width:3px !important;
    height:22px !important;
    left:2px !important;
  }

  /* Secondary links — slightly smaller but still visible */
  .nav-drawer-link-sm{
    font-size:16.5px !important;
    font-weight:400 !important;
    min-height:40px !important;
    padding:9px 14px !important;
    color:var(--ink) !important;
  }

  .nav-drawer-divider{margin:10px 6px 6px !important}

  /* Drawer head — bigger brand */
  .nav-drawer-head{padding-bottom:14px !important;margin-bottom:10px !important}
  .nav-drawer-brand{font-size:20px !important;font-weight:520 !important}
  .nav-drawer-close{width:40px !important;height:40px !important;font-size:22px !important}

  /* Drawer panel padding more generous */
  .nav-drawer-panel{padding:14px 20px calc(14px + env(safe-area-inset-bottom, 0px)) 20px !important}

  /* Cere ofertă CTA — bigger and more prominent */
  .nav-drawer-cta{
    font-size:15px !important;
    padding:15px 18px !important;
    min-height:50px !important;
    margin:10px 0 14px !important;
    letter-spacing:.04em !important;
    box-shadow:0 4px 14px rgba(14,49,96,.18);
  }

  /* Util section becomes RICH contact card */
  .nav-drawer-util{
    background:var(--bg);
    border:1px solid var(--rule);
    border-top:1px solid var(--rule) !important;
    border-radius:4px;
    padding:14px 16px !important;
    gap:10px !important;
    margin-top:4px;
  }
  .nav-drawer-util .nav-drawer-phone{
    font-family:var(--ff-display);
    font-size:18px !important;
    font-weight:480 !important;
    letter-spacing:-.005em;
    color:var(--primary-deep) !important;
    min-height:auto !important;
    padding:2px 0;
    display:flex;
    align-items:center;
    gap:8px;
  }
  .nav-drawer-util .nav-drawer-phone::before{
    content:"\260E";
    font-size:18px;
    color:var(--gold, #c69531);
    line-height:1;
  }
  .nav-drawer-util .nav-drawer-hours{
    font-family:var(--ff-mono);
    font-size:11px !important;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--muted) !important;
    padding-left:26px;
    margin-top:-4px;
  }

  /* Lang switcher more prominent — pill-style */
  .nav-drawer-lang{
    display:inline-flex !important;
    background:#fff;
    border:1px solid var(--rule-strong);
    border-radius:24px;
    padding:2px;
    align-self:flex-start;
    margin-bottom:4px;
  }
  .nav-drawer-lang .sep{display:none !important}
  .nav-drawer-lang button{
    padding:6px 14px !important;
    min-height:32px !important;
    font-size:11.5px !important;
    font-weight:600 !important;
    border-radius:20px;
    transition:background .15s,color .15s;
  }
  .nav-drawer-lang button.on{
    background:var(--primary) !important;
    color:#fff !important;
  }
}

/* Remove phone icon from drawer (user req) */
@media (max-width:880px){
  .nav-drawer-util .nav-drawer-phone::before{content:none !important}
  .nav-drawer-util .nav-drawer-phone{padding-left:0}
  .nav-drawer-util .nav-drawer-hours{padding-left:0}
}

/* ============================================================
   CARIERA — pagina nouă (modelată după micb.md/cariera)
   ============================================================ */
.careers-page{background:#fafbfd}

/* Hero */
.careers-hero{
  position:relative;
  padding:80px 0 90px;
  background:
    radial-gradient(ellipse 100% 60% at 50% 0%, rgba(31,77,140,.06), transparent 60%),
    linear-gradient(180deg, #ffffff 0%, #f3f6fb 100%);
  border-bottom:1px solid var(--rule);
  overflow:hidden;
}
.careers-hero::before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(to right,
    var(--flag-blue, #0050a8) 0 33.333%,
    var(--flag-yellow, #ffd400) 33.333% 66.666%,
    var(--flag-red, #cc092f) 66.666% 100%);
}
.careers-hero-kicker{display:inline-block;font-family:var(--ff-mono);font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--primary);margin-bottom:14px}
.careers-hero-title{
  font-family:var(--ff-display);font-size:clamp(36px,5.5vw,72px);font-weight:400;
  line-height:1.04;letter-spacing:-.018em;color:var(--ink);margin:0 0 22px;
  max-width:18ch;text-wrap:balance;
}
.careers-hero-lead{
  font-size:19px;line-height:1.55;color:var(--muted);margin:0 0 32px;max-width:62ch;
}
.careers-hero-cta{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--gold, #c69531);color:#fff;text-decoration:none;
  font-family:var(--ff-display);font-size:15px;font-weight:500;letter-spacing:.02em;
  padding:15px 28px;border-radius:3px;
  transition:background .15s,transform .15s,box-shadow .15s;
  box-shadow:0 4px 14px rgba(198,149,49,.32);
}
.careers-hero-cta:hover{background:#b4842a;transform:translateY(-2px);box-shadow:0 8px 22px rgba(198,149,49,.38)}

/* Why section */
.careers-why-section{padding:80px 0 30px}
.careers-why{max-width:920px}
.careers-why-title{font-size:clamp(28px,3.5vw,44px);font-weight:400;margin:0 0 24px;color:var(--ink)}
.careers-why-p{margin:0 0 18px;font-size:17px;line-height:1.7;color:var(--ink);max-width:64ch}

/* 6 cards grid */
.careers-cards-section{padding:30px 0 60px}
.careers-cards{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}
.careers-card{
  padding:36px 28px;
  background:#fff;
  border:1px solid var(--rule);
  border-radius:4px;
  position:relative;
  transition:border-color .18s,transform .18s,box-shadow .25s;
}
.careers-card:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:0 12px 32px rgba(14,49,96,.08)}
.careers-card-num{
  display:block;font-family:var(--ff-mono);font-size:11px;letter-spacing:.18em;
  color:var(--gold, #c69531);font-weight:700;margin-bottom:14px;
}
.careers-card-title{
  font-family:var(--ff-display);font-size:21px;font-weight:480;letter-spacing:-.008em;
  color:var(--primary-deep, var(--ink));margin:0 0 12px;line-height:1.2;
}
.careers-card-text{
  font-size:15px;line-height:1.6;color:var(--muted);margin:0;
}

/* Contact section */
.careers-contact-section{padding:30px 0 80px}
.careers-contact{max-width:920px}
.careers-contact-title{font-size:clamp(26px,3vw,40px);font-weight:400;margin:0 0 18px;color:var(--ink)}
.careers-contact-cards{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:32px;max-width:780px;
}
.careers-contact-card{
  display:flex;flex-direction:column;gap:6px;
  padding:22px 24px;background:#fff;border:1px solid var(--rule);border-radius:4px;
  text-decoration:none;color:var(--ink);
  transition:border-color .15s,box-shadow .15s,transform .15s;
}
.careers-contact-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 6px 18px rgba(14,49,96,.08)}
.careers-contact-label{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.careers-contact-value{font-family:var(--ff-display);font-size:20px;font-weight:480;letter-spacing:-.008em;color:var(--primary-deep)}

/* Tablet */
@media (max-width:1100px){
  .careers-cards{grid-template-columns:repeat(2, 1fr)}
}

/* Mobile */
@media (max-width:700px){
  .careers-hero{padding:48px 0 56px}
  .careers-hero-lead{font-size:16px}
  .careers-hero-cta{padding:13px 22px;font-size:14px}
  .careers-why-section{padding:48px 0 20px}
  .careers-why-p{font-size:16px}
  .careers-cards-section{padding:20px 0 36px}
  .careers-cards{grid-template-columns:1fr;gap:14px}
  .careers-card{padding:24px 22px}
  .careers-card-title{font-size:19px}
  .careers-contact-section{padding:20px 0 60px}
  .careers-contact-cards{grid-template-columns:1fr;gap:10px}
  .careers-contact-card{padding:16px 18px}
  .careers-contact-value{font-size:17px}
}

/* Cariera — secțiunea Posturi vacante */
.careers-vacancies-section{padding:30px 0 80px}
.careers-vacancies{max-width:1080px}
.careers-vacancies-title{font-size:clamp(26px,3vw,40px);font-weight:400;margin:0 0 16px;color:var(--ink)}
.careers-vacancies-lead{margin:0 0 36px;color:var(--muted);font-size:16px;line-height:1.6;max-width:60ch}
.careers-vac-list{display:flex;flex-direction:column;gap:14px}
.careers-vac-row{
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  align-items:center;
  gap:24px;
  padding:24px 28px;
  background:#fff;
  border:1px solid var(--rule);
  border-radius:4px;
  text-decoration:none;
  color:var(--ink);
  transition:border-color .18s,box-shadow .25s,transform .18s,padding-left .15s;
}
.careers-vac-row:hover{
  border-color:var(--primary);
  box-shadow:0 8px 22px rgba(14,49,96,.08);
  transform:translateY(-2px);
}
.careers-vac-badge{
  font-family:var(--ff-mono);
  font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  color:var(--gold, #c69531);
  background:rgba(198,149,49,.08);
  border:1px solid rgba(198,149,49,.32);
  padding:6px 12px;
  white-space:nowrap;
}
.careers-vac-main{min-width:0}
.careers-vac-role{
  font-family:var(--ff-display);font-size:21px;font-weight:480;letter-spacing:-.008em;
  color:var(--primary-deep, var(--ink));margin:0 0 4px;line-height:1.2;
}
.careers-vac-dept{font-size:14.5px;color:var(--muted);margin:0;line-height:1.4}
.careers-vac-meta{display:flex;gap:8px;flex-wrap:wrap}
.careers-vac-chip{
  font-family:var(--ff-mono);font-size:11px;letter-spacing:.06em;
  color:var(--muted);background:var(--bg);border:1px solid var(--rule);
  padding:5px 10px;white-space:nowrap;
}
.careers-vac-arr{
  font-family:var(--ff-display);font-size:22px;color:var(--muted);
  transition:color .15s,transform .15s;line-height:1;
}
.careers-vac-row:hover .careers-vac-arr{color:var(--primary);transform:translateX(4px)}

@media (max-width:880px){
  .careers-vac-row{grid-template-columns:1fr auto;gap:14px;padding:18px 20px;align-items:start}
  .careers-vac-badge{grid-column:1;grid-row:1;justify-self:start}
  .careers-vac-arr{grid-column:2;grid-row:1;align-self:center}
  .careers-vac-main{grid-column:1 / -1;grid-row:2}
  .careers-vac-meta{grid-column:1 / -1;grid-row:3;gap:6px}
  .careers-vac-role{font-size:18px}
  .careers-vac-chip{font-size:10.5px;padding:4px 8px}
}

@media (max-width:700px){
  .careers-vacancies-section{padding:20px 0 60px}
  .careers-vacancies-lead{font-size:15px;margin-bottom:24px}
}

/* Vacancies: static — no hover effects */
.careers-vac-row,
.careers-vac-row:hover{
  border-color:var(--rule) !important;
  box-shadow:none !important;
  transform:none !important;
  cursor:default !important;
}
.careers-vac-row .careers-vac-arr,
.careers-vac-row:hover .careers-vac-arr{
  color:var(--muted) !important;
  transform:none !important;
}

/* Vacancies: plain rows, no card chenar */
.careers-vac-row{
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid var(--rule) !important;
  border-radius:0 !important;
  padding:18px 0 !important;
  grid-template-columns:auto 1fr auto !important;
}
.careers-vac-row:last-child{border-bottom:0 !important}
@media (max-width:880px){
  .careers-vac-row{
    grid-template-columns:1fr !important;
    padding:16px 0 !important;
  }
  .careers-vac-badge{grid-column:1;grid-row:1}
  .careers-vac-main{grid-column:1;grid-row:2}
  .careers-vac-meta{grid-column:1;grid-row:3}
}

/* ============================================================
   CareerApply — formular de aplicare CV
   ============================================================ */
.career-apply-page{background:#fafbfd}
.apply-section{padding:48px 0 80px}
.apply-container{max-width:780px}
.apply-title{font-size:clamp(28px,3.4vw,42px);font-weight:400;color:var(--ink);margin:0 0 14px;line-height:1.15}
.apply-lead{font-size:15.5px;line-height:1.55;color:var(--muted);margin:0 0 32px;max-width:64ch}

.apply-form{display:flex;flex-direction:column;gap:18px}
.apply-row-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.apply-field{display:flex;flex-direction:column;gap:6px}
.apply-label{font-family:var(--ff-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.apply-field input,.apply-field select,.apply-field textarea{
  font-family:var(--ff-body);font-size:16px;line-height:1.4;color:var(--ink);
  padding:13px 14px;background:#fff;border:1px solid var(--rule-strong);border-radius:3px;
  width:100%;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none;
}
.apply-field textarea{resize:vertical;min-height:96px;font-family:var(--ff-body)}
.apply-field select{
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23404a5e' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E") no-repeat right 14px center;
  padding-right:32px;
}
.apply-field input:focus,.apply-field select:focus,.apply-field textarea:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px rgba(31,77,140,.12)}

.apply-field-dob .apply-dob-row{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:10px}
.apply-dob-day,.apply-dob-year{text-align:center;font-family:var(--ff-mono);font-variant-numeric:tabular-nums}
.apply-dob-day::-webkit-inner-spin-button,
.apply-dob-day::-webkit-outer-spin-button,
.apply-dob-year::-webkit-inner-spin-button,
.apply-dob-year::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.apply-dob-day,.apply-dob-year{-moz-appearance:textfield}

.apply-cv-wrap{display:flex;align-items:center;gap:10px}
.apply-cv-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.apply-cv-button{
  display:inline-flex;align-items:center;gap:10px;
  padding:12px 18px;background:var(--bg);border:1px dashed var(--rule-strong);border-radius:3px;
  font-family:var(--ff-display);font-size:14.5px;color:var(--ink);
  cursor:pointer;transition:border-color .15s,background .15s;
  flex:1;max-width:520px;
}
.apply-cv-button:hover{border-color:var(--primary);background:#fff}
.apply-cv-button::before{
  content:"\21d1";font-size:18px;color:var(--gold,#c69531);
}
.apply-hint{display:block;font-size:13px;color:var(--muted);margin-top:4px;font-style:italic}

.apply-error{color:#9c2a35;font-size:14px;margin:0;padding:10px 14px;background:rgba(156,42,53,.06);border-left:3px solid #9c2a35;border-radius:0 3px 3px 0}

.apply-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:8px;flex-wrap:wrap}
.apply-back{
  background:transparent;border:0;font-family:var(--ff-mono);font-size:12px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted);cursor:pointer;padding:8px 0;
  transition:color .15s;
}
.apply-back:hover{color:var(--primary)}
.apply-submit{
  background:var(--primary);color:#fff;border:0;
  font-family:var(--ff-display);font-size:16px;font-weight:500;letter-spacing:.02em;
  padding:16px 36px;min-height:52px;
  border-radius:3px;cursor:pointer;
  transition:background .15s,transform .15s,box-shadow .15s;
  box-shadow:0 4px 12px rgba(14,49,96,.18);
}
.apply-submit:hover{background:var(--primary-hover);box-shadow:0 6px 18px rgba(14,49,96,.24);transform:translateY(-1px)}
.apply-submit:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

@media (max-width:700px){
  .apply-section{padding:32px 0 60px}
  .apply-title{font-size:26px !important}
  .apply-lead{font-size:14.5px;margin-bottom:24px}
  .apply-row-2{grid-template-columns:1fr;gap:14px}
  .apply-field-dob .apply-dob-row{grid-template-columns:1fr 1.4fr 1fr;gap:6px}
  .apply-dob-day,.apply-dob-year{font-size:14px}
  .apply-cv-button{font-size:13.5px;padding:11px 14px}
  .apply-actions{flex-direction:column-reverse;align-items:stretch}
  .apply-submit{width:100%;text-align:center}
  .apply-back{text-align:center}
}

/* Cariera — remove tricolor stripe from hero */
.careers-hero::before{display:none !important}

/* Remove default button border on hero CTA */
.careers-hero-cta{border:0 !important;outline:0 !important}

/* === Lang switcher moved to drawer head (next to ✕) === */
@media (max-width:880px){
  .nav-drawer-head{
    gap:12px;
    align-items:center;
  }
  .nav-drawer-head .nav-drawer-lang{
    background:transparent !important;
    border:0 !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:0 !important;
    display:inline-flex !important;
    align-items:center;
    gap:0 !important;
    flex:0 0 auto;
    margin-left:auto;
  }
  .nav-drawer-head .nav-drawer-lang button{
    background:transparent !important;
    border:0 !important;
    padding:6px 8px !important;
    min-height:32px !important;
    font-family:var(--ff-mono);
    font-size:11px !important;
    font-weight:600 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase;
    color:var(--muted) !important;
    border-radius:0 !important;
    transition:color .15s;
  }
  .nav-drawer-head .nav-drawer-lang button.on{
    color:var(--primary) !important;
    background:transparent !important;
    font-weight:700 !important;
  }
  .nav-drawer-head .nav-drawer-lang .sep{
    display:inline-block !important;
    padding:0 1px !important;
    color:var(--rule-strong);
    font-size:10px;
  }
  /* Nudge brand a bit smaller so all 3 fit nicely */
  .nav-drawer-head .nav-drawer-brand{
    font-size:18px !important;
  }
  /* Hide the lang switcher from the bottom util area (it's no longer rendered there
     but safety override in case any CSS pulls it back). */
  .nav-drawer-util .nav-drawer-lang{display:none !important}
}

/* ============================================================
   ADRESĂ ÎN MASTHEAD — link spre Google Maps (user req 2026-06-14)
   Override blanket hide; show only on desktop, polished hover.
   ============================================================ */
@media (min-width:881px){
  a.masthead-meta.masthead-addr-link{
    display:inline-block !important;
    text-align:right;
    text-decoration:none;
    color:rgba(26,36,51,.74);
    cursor:pointer;
    transition:color .18s;
    padding:4px 0;
    border-radius:6px;
    font-size:13px;
    line-height:1.55;
  }
  a.masthead-meta.masthead-addr-link .mm-addr{
    transition:color .18s;
    white-space:nowrap;
    display:inline-block;
  }
  a.masthead-meta.masthead-addr-link:hover,
  a.masthead-meta.masthead-addr-link:hover .mm-addr{
    color:var(--primary);
  }
  a.masthead-meta.masthead-addr-link:focus-visible{
    outline:2px solid var(--primary);
    outline-offset:3px;
  }
}

/* ============================================================
   TRANSPARENȚĂ — PDF list polished (user req 2026-06-14)
   Card-style rows with SVG PDF icon glyph (drawn via CSS), gold
   accent on hover, subtle elevation. Overrides the inline <style>
   block injected by the React component.
   ============================================================ */
.tr-group{margin-bottom:64px !important}
.tr-group-title{
  font-family:var(--ff-display) !important;
  font-size:22px !important;
  font-weight:380 !important;
  letter-spacing:-.01em !important;
  color:var(--ink) !important;
  margin:0 0 22px !important;
  padding:0 0 14px !important;
  border-bottom:1px solid var(--rule-strong) !important;
  position:relative;
}
.tr-group-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:48px;
  height:2px;
  background:var(--gold,#c69531);
}
.tr-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}
@media (max-width:880px){
  .tr-list{grid-template-columns:1fr;gap:10px}
}
.tr-row{border:0 !important;background:transparent}
.tr-row .tr-link{
  display:grid !important;
  grid-template-columns:48px 1fr auto !important;
  gap:16px !important;
  align-items:center !important;
  padding:14px 16px !important;
  border:1px solid var(--rule) !important;
  border-radius:8px !important;
  background:#fff !important;
  color:var(--ink) !important;
  transition:border-color .18s, box-shadow .18s, transform .18s, background .18s !important;
}
.tr-row .tr-link:hover{
  border-color:var(--primary) !important;
  box-shadow:0 6px 20px rgba(14,49,96,.08) !important;
  transform:translateY(-1px) !important;
  background:#fff !important;
  padding:14px 16px !important;
}
.tr-row .tr-link:hover .tr-name{color:var(--primary-deep) !important}
.tr-row .tr-link:hover .tr-arrow{color:var(--gold,#c69531) !important;transform:translateY(2px) !important}
.tr-row .tr-link:hover .tr-icon{
  border-color:var(--signal,#9c2a35) !important;
  background:#fff5f5 !important;
}
.tr-row .tr-link:hover .tr-icon::before{
  border-bottom-color:#fff5f5 !important;
}

/* PDF icon — drawn as a small folded-corner document */
.tr-row .tr-link .tr-icon{
  position:relative;
  width:36px !important;
  min-width:36px !important;
  height:44px !important;
  padding:0 !important;
  min-width:unset;
  border:1px solid #d6c2c2 !important;
  border-radius:3px !important;
  background:#fafbfd !important;
  color:var(--signal,#9c2a35) !important;
  font-family:var(--ff-mono) !important;
  font-size:9px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-align:center !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  padding-bottom:5px !important;
  transition:background .18s, border-color .18s;
}
/* Folded corner */
.tr-row .tr-link .tr-icon::before{
  content:"";
  position:absolute;
  top:-1px;
  right:-1px;
  width:10px;
  height:10px;
  background:linear-gradient(225deg,#fff 50%,#e8d5d5 50%);
  border-left:1px solid #d6c2c2;
  border-bottom:1px solid #d6c2c2;
  border-top-right-radius:3px;
  transition:background .18s, border-color .18s;
}
/* The "PDF" text label inside */
.tr-row .tr-link .tr-icon::after{
  content:"PDF";
  position:absolute;
  left:0;right:0;bottom:5px;
  font-size:9px;
  letter-spacing:.08em;
  color:var(--signal,#9c2a35);
}
/* Hide the original "PDF" textContent (the component renders "PDF" inside) */
.tr-row .tr-link .tr-icon{font-size:0 !important;color:transparent !important}

.tr-row .tr-link .tr-name{
  font-family:var(--ff-body) !important;
  font-size:15px !important;
  font-weight:450 !important;
  line-height:1.45 !important;
  color:var(--ink) !important;
  text-wrap:balance;
  transition:color .18s !important;
}
.tr-row .tr-link .tr-arrow{
  font-family:var(--ff-display) !important;
  font-size:20px !important;
  color:var(--muted) !important;
  transition:transform .2s, color .15s !important;
}
@media (max-width:680px){
  .tr-row .tr-link{grid-template-columns:42px 1fr !important;gap:14px !important;padding:12px 14px !important}
  .tr-row .tr-link .tr-arrow{display:none !important}
  .tr-row .tr-link .tr-icon{width:32px !important;min-width:32px !important;height:40px !important}
}

/* ============================================================
   HERO — buton "Principalele genuri de activitate" polish
   (user req 2026-06-14)
   ============================================================ */
.hero-full-actions .btn-line-light{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:14px !important;
  padding:16px 28px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.55) !important;
  color:#fff !important;
  font-family:var(--ff-body) !important;
  font-size:13px !important;
  font-weight:500 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
  overflow:hidden !important;
  isolation:isolate !important;
  backdrop-filter:blur(6px) !important;
  -webkit-backdrop-filter:blur(6px) !important;
  transition:color .3s ease, border-color .25s ease, transform .2s ease, box-shadow .25s ease !important;
}
.hero-full-actions .btn-line-light::after{
  content:"→" !important;
  position:static !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  top:auto !important;
  width:auto !important;
  height:auto !important;
  background:none !important;
  font-family:var(--ff-body);
  font-size:15px;
  line-height:1;
  color:#fff;
  display:inline-block !important;
  transform:none;
  transition:transform .25s ease, color .3s ease;
}
.hero-full-actions .btn-line-light::before{
  content:"";
  position:absolute;
  inset:0;
  background:var(--gold, #c69531);
  transform:translateX(-101%);
  transition:transform .4s cubic-bezier(.65,.05,.36,1);
  z-index:-1;
}
.hero-full-actions .btn-line-light:hover{
  color:#0e3160 !important;
  border-color:var(--gold, #c69531) !important;
  box-shadow:0 12px 32px rgba(198,149,49,.32) !important;
  transform:translateY(-2px) !important;
}
.hero-full-actions .btn-line-light:hover::before{
  transform:translateX(0);
}
.hero-full-actions .btn-line-light:hover::after{
  color:#0e3160;
  transform:translateX(4px);
}
.hero-full-actions .btn-line-light:focus-visible{
  outline:2px solid var(--gold,#c69531);
  outline-offset:3px;
}
.hero-full-actions .btn-line-light:active{
  transform:translateY(0) !important;
}
@media (max-width:880px){
  .hero-full-actions .btn-line-light{
    width:100% !important;
    justify-content:center !important;
    padding:14px 18px !important;
  }
}

/* ============================================================
   HERO TITLE — fit "60 de ani de experiență" on one line so RO/EN
   wrap like RU (user req 2026-06-14)
   ============================================================ */
@media (min-width:881px){
  .hero-full-title{
    max-width:24ch !important;
    text-wrap:balance !important;
    word-spacing:.02em;
  }
}

/* ============================================================
   Fix lang-switch shift (final): use CSS grid so right-side
   columns (lang switcher, CTA) stay at fixed positions
   regardless of how much the middle nav widens with RU/EN text.
   (user req 2026-06-14)
   ============================================================ */
@media (min-width:881px){
  .nav-inner{
    display:grid !important;
    grid-template-columns: 220px 1fr auto 210px;
    align-items:stretch;
    gap:0;
  }
  .nav-brand{ min-width:0; }
  .nav-links{ min-width:0; }
  .nav-util{ justify-self:end; }
  .nav-cta{
    min-width:210px !important;
    justify-content:center !important;
  }
}

/* Stable scrollbar gutter so width doesn't change when content height changes */
html{
  scrollbar-gutter:stable;
  overflow-y:scroll;
}

/* Tighten nav-link padding so all 8 items fit in the 1fr column
   even with longer RU/EN translations. */
@media (min-width:881px){
  .nav-link{
    padding:0 8px !important;
    font-size:12px !important;
    white-space:nowrap;
  }
  .nav-links{
    overflow:hidden;
  }
}

/* Hero title: add breathing room between italic underline and next line
   (user req 2026-06-14, round 2: more space) */
@media (min-width:881px){
  .hero-full-title{
    line-height:1.28 !important;
  }
  .hero-full-title em::after{
    bottom:-10px !important;
  }
  .hero-full-title em{
    padding-bottom:2px;
  }
}

/* Narrower viewports (881-1280px): more aggressive padding so RU/EN nav items
   all fit in the grid 1fr column. Without this, longer Russian/English labels
   get clipped by .nav-links overflow:hidden. */
@media (min-width:881px) and (max-width:1440px){
  .nav-inner{
    grid-template-columns: 180px 1fr auto 180px !important;
  }
  .nav-brand{ min-width:0 !important; }
  .nav-link{
    padding:0 4px !important;
    font-size:11px !important;
  }
  .nav-cta{
    min-width:180px !important;
    padding:0 14px !important;
    font-size:12px !important;
  }
  .nav-util{
    gap:8px !important;
    padding:0 10px !important;
  }
  .nav-util-hours,
  .nav-util-sep:first-of-type{display:none !important}
}

/* Even tighter padding under 1100px */
@media (min-width:881px) and (max-width:1280px){
  .nav-inner{
    grid-template-columns: 160px 1fr auto 170px !important;
  }
  .nav-link{
    padding:0 3px !important;
    font-size:10.5px !important;
    letter-spacing:.02em !important;
  }
  .nav-util-phone{display:none !important}
  .nav-util-sep{display:none !important}
}

/* Hide L-V hours from nav across all desktop widths to free room for menu items
   (user req 2026-06-14). Phone stays. */
@media (min-width:881px){
  .nav-util-hours,
  .nav-util-sep:first-of-type{
    display:none !important;
  }
}

/* ============================================================
   Service gallery (multi-photo per service, user req 2026-06-14)
   1 photo = full hero; 2 = halves; 3 = thirds; 4+ = quarters.
   On mobile (<880) fallback to 1-2 cols.
   ============================================================ */
.srv-gallery{
  display:grid;
  gap:12px;
  width:100%;
}
.srv-gallery-c2{grid-template-columns:repeat(2,1fr)}
.srv-gallery-c3{grid-template-columns:repeat(3,1fr)}
.srv-gallery-c4{grid-template-columns:repeat(4,1fr)}
.srv-gallery .srv-gallery-item{
  margin:0;
  position:relative;
  aspect-ratio:4 / 3;
  overflow:hidden;
  background:#f0f2f5;
  border-radius:2px;
}
.srv-gallery .srv-gallery-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .5s ease;
}
.srv-gallery .srv-gallery-item:hover img{transform:scale(1.03)}
@media (max-width:880px){
  .srv-gallery-c3,.srv-gallery-c4{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:480px){
  .srv-gallery-c2,.srv-gallery-c3,.srv-gallery-c4{grid-template-columns:1fr}
}

/* ============================================================
   Servicii — list v2 (1 featured hero + 2-col grid below)
   user req 2026-06-14
   ============================================================ */
.srv-list-v2{display:flex;flex-direction:column;gap:48px}
.srv-card{
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid var(--rule);
  border-radius:6px;
  overflow:hidden;
  cursor:pointer;
  transition:border-color .2s, box-shadow .2s, transform .2s;
}
.srv-card:hover{
  border-color:var(--primary);
  box-shadow:0 10px 28px rgba(14,49,96,.10);
  transform:translateY(-2px);
}
.srv-card:hover .srv-card-title{color:var(--primary-deep)}
.srv-card:hover .srv-card-cta{color:var(--gold,#c69531)}
.srv-card:hover .srv-card-photo img{transform:scale(1.03)}
.srv-card-photo{
  width:100%;
  aspect-ratio:16/9;
  background:#f0f2f5;
  overflow:hidden;
}
.srv-card-photo img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .6s ease;
}
.srv-card-body{
  padding:28px 32px 32px;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.srv-card-tag{
  align-self:flex-start;
  font-family:var(--ff-mono);
  font-size:10.5px;
  letter-spacing:.14em;
  text-transform:uppercase;
  background:transparent;
  border:1px solid var(--rule-strong);
  padding:5px 10px;
  color:var(--muted);
  border-radius:0;
}
.srv-card-title{
  font-family:var(--ff-display);
  font-weight:400;
  letter-spacing:-.012em;
  line-height:1.1;
  margin:0;
  color:var(--ink);
  transition:color .18s;
}
.srv-card-desc{
  margin:0;
  color:var(--muted);
  max-width:60ch;
}
.srv-card-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:6px;
  font-family:var(--ff-mono);
  font-size:11.5px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--primary);
  font-weight:600;
  transition:color .18s;
}
.srv-card-cta .arrow{display:inline-block;transition:transform .25s}
.srv-card:hover .srv-card-cta .arrow{transform:translateX(4px)}

/* Featured (first) card — bigger */
.srv-card-hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:stretch}
.srv-card-hero .srv-card-photo{aspect-ratio:auto;height:100%;min-height:380px}
.srv-card-hero .srv-card-body{padding:48px 56px;justify-content:center;gap:18px}
.srv-card-hero .srv-card-title{font-size:clamp(34px,3.4vw,52px)}
.srv-card-hero .srv-card-desc{font-size:18px;line-height:1.55}

/* Rest in 2-column grid */
.srv-grid-v2{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:32px;
}
.srv-grid-v2 .srv-card-title{font-size:clamp(22px,1.8vw,28px)}

@media (max-width:880px){
  .srv-card-hero{grid-template-columns:1fr}
  .srv-card-hero .srv-card-photo{min-height:0;aspect-ratio:16/9}
  .srv-card-hero .srv-card-body{padding:28px 24px}
  .srv-grid-v2{grid-template-columns:1fr;gap:24px}
  .srv-card-body{padding:22px 22px 26px}
}
@media (max-width:880px){.page-filter-bar{display:none!important}}
@media (max-width:880px){.grid-12>div[style*="sticky"]{position:static!important;top:auto!important}}

/* ============================================================
   TRANSPARENȚĂ — accordion toggle (user req 2026-06-23)
   Categoriile sunt colapsate by default; click pe titlu deschide
   lista PDF-urilor. PDF-urile se deschid în tab nou (target=_blank).
   ============================================================ */
.tr-group-title{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  width:100% !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid var(--rule-strong) !important;
  text-align:left !important;
  cursor:pointer !important;
  padding:0 0 14px !important;
  margin:0 0 22px !important;
  font-family:var(--ff-display) !important;
  font-size:22px !important;
  font-weight:380 !important;
  letter-spacing:-.01em !important;
  color:var(--ink) !important;
  position:relative;
  -webkit-appearance:none;
  appearance:none;
  transition:color .18s;
}
.tr-group-title:hover{color:var(--primary-deep) !important}
.tr-group-title:focus-visible{outline:2px solid var(--primary);outline-offset:4px;border-radius:2px}
.tr-group-title-text{flex:1 1 auto;min-width:0}
.tr-group-count{
  font-family:var(--ff-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--muted);
  font-weight:600;
  padding:3px 9px;
  border:1px solid var(--rule-strong);
  border-radius:999px;
  background:#fff;
  font-feature-settings:"tnum" 1;
  font-variant-numeric:tabular-nums;
}
.tr-chevron{
  display:inline-block;
  width:14px;
  height:14px;
  border-right:2px solid var(--muted);
  border-bottom:2px solid var(--muted);
  transform:rotate(45deg);
  transition:transform .22s ease, border-color .18s;
  margin-left:6px;
  margin-bottom:4px;
  flex:0 0 auto;
}
.tr-group:hover .tr-chevron{border-color:var(--primary-deep)}
.tr-group.tr-open .tr-chevron{transform:rotate(-135deg);margin-bottom:0;margin-top:4px;border-color:var(--primary)}
.tr-list[hidden]{display:none !important}
.tr-group.tr-open .tr-list{margin-top:4px}
@media (max-width:640px){
  .tr-group-title{font-size:19px !important;gap:10px !important}
  .tr-group-count{padding:2px 7px;font-size:10px}
}
