/* STOREWEB - CSS externalizat pentru digitalizare-institutii-2026 */

:root { --bg:#ffffff; --card:#f9fafb; --ink:#111827; --brand:#2563eb; --muted:#6b7280; }
    *{box-sizing:border-box}
    body{margin:0;font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;background:var(--bg);color:var(--ink);}
    header{padding:24px 20px 8px; text-align:center;}
    h1{margin:0;font-size:28px;letter-spacing:.2px}
    p.subtitle{margin:6px 0 0;color:var(--muted)}
    main{padding:24px 20px 80px; max-width:1200px; margin:0 auto;}
    .grid{display:grid; gap:14px; grid-template-columns: repeat(auto-fill,minmax(180px,1fr));}
    .tile{appearance:none;border:1px solid rgba(0,0,0,.1); background:var(--card); color:var(--ink);
      border-radius:16px; padding:18px; text-align:left; cursor:pointer; display:flex; flex-direction:column; gap:14px;
      box-shadow: 0 2px 6px rgba(0,0,0,.1); transition:.18s transform, .18s box-shadow, .18s background}
    .tile:hover{transform:translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,.15); background:#fff;}
    .tile:active{transform:translateY(0)}
    .icon svg{display:block;}
    .label{font-weight:600; font-size:16px; line-height:1.2; min-height:2.2em}
    footer{position:fixed; bottom:0; left:0; right:0; padding:10px 16px; font-size:12px; color:var(--muted); background:#f3f4f6}

    /* Modal */
    .modal{position:fixed; inset:0; display:none; align-items:center; justify-content:center; padding:24px; background:rgba(0,0,0,.5); backdrop-filter:saturate(140%) blur(8px); z-index:50}
    .modal.open{display:flex}
    .dialog{max-width:960px; width:min(960px, 96vw); max-height:85vh; overflow:auto; background:#fff; border:1px solid rgba(0,0,0,.1);
      border-radius:18px; box-shadow: 0 30px 80px rgba(0,0,0,.2); color:#111827}
    .dialog header{position:sticky; top:0; background:#f9fafb; padding:14px 18px; border-bottom:1px solid rgba(0,0,0,.1); display:flex; align-items:center; gap:12px}
    .dialog header .title{font-weight:700; font-size:16px}
    .dialog .content{padding:18px; line-height:1.6; color:#111827}
    .dialog .content h2{margin-top:0}
    .close-btn{margin-left:auto; background:#fff; border:1px solid rgba(0,0,0,.2); color:var(--ink); padding:8px 12px; border-radius:10px; cursor:pointer}
    .close-btn:hover{background:#f3f4f6}
    .hint{font-size:12px; color:var(--muted);}
    a.source{color:var(--brand); text-decoration:none}
  
  /* ── iPhone 16 Pro Max – Safe Area + Dynamic Island + home bar ── */
  html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
  body {
    padding-top: env(safe-area-inset-top, 0px);
    padding-left: env(safe-area-inset-left, 0px);
    padding-right: env(safe-area-inset-right, 0px);
    min-height: 100dvh;
    width: 100%;
    overflow-x: hidden;
  }
  footer { padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px)) !important; }
  .modal {
    padding-top: env(safe-area-inset-top, 0px);
    padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px));
    padding-left: env(safe-area-inset-left, 0px);
    padding-right: env(safe-area-inset-right, 0px);
  }
  .dialog {
    max-height: calc(90dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));
    width: min(960px, calc(100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px) - 32px)) !important;
  }
  @media screen and (max-width: 430px) {
    main { padding: 16px 16px calc(80px + env(safe-area-inset-bottom,0px)) !important; }
    .grid  { grid-template-columns: repeat(2,1fr) !important; }
    .grid1 { grid-template-columns: repeat(2,1fr) !important; }
  }
  @supports (-webkit-overflow-scrolling: touch) {
    body   { -webkit-overflow-scrolling: touch; }
    .modal { -webkit-overflow-scrolling: touch; }
  }

.grid1 {display:grid; gap:14px; grid-template-columns: repeat(auto-fill,minmax(180px,1fr));}
.tile1 {appearance:none;border:1px solid rgba(0,0,0,.1); background:var(--card); color:var(--ink);
      border-radius:16px; padding:18px; text-align:left; cursor:pointer; display:flex; flex-direction:column; gap:14px;
      box-shadow: 0 2px 6px rgba(0,0,0,.1); transition:.18s transform, .18s box-shadow, .18s background}
          .grid2 {display:grid; gap:14px; grid-template-columns: repeat(auto-fill,minmax(180px,1fr));}
.tile2 {appearance:none;border:1px solid rgba(0,0,0,.1); background:var(--card); color:var(--ink);
      border-radius:16px; padding:18px; text-align:left; cursor:pointer; display:flex; flex-direction:column; gap:14px;
      box-shadow: 0 2px 6px rgba(0,0,0,.1); transition:.18s transform, .18s box-shadow, .18s background}
          .compliance-grid {              display: grid;
              grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
              gap: 20px;
              margin-top: 30px;
}
.compliance-item {              background: white;
              padding: 20px;
              border-radius: 10px;
              box-shadow: 0 5px 15px rgba(0,0,0,0.1);
              border-left: 4px solid #007bff;
}

:root {
  --lp-primary: #1a56e8;
  --lp-primary-dark: #1340bb;
  --lp-accent: #f59e0b;
  --lp-bg: #f8faff;
  --lp-dark: #0d1b3e;
  --lp-text: #374151;
  --lp-muted: #6b7280;
  --lp-white: #ffffff;
  --lp-radius: 14px;
  --lp-shadow: 0 4px 30px rgba(26,86,232,0.10);
}



.lp-modcat-toolbar { display:flex; justify-content:space-between; align-items:end; gap:1rem; flex-wrap:wrap; margin-bottom:1rem; }
.lp-modcat-toolbar p { margin:0; color:var(--lp-muted); max-width:760px; }
.lp-modcat-actions { display:flex; gap:.75rem; flex-wrap:wrap; }
.lp-mini-btn { border:1px solid #d7e3ff; background:#fff; color:var(--lp-primary); border-radius:999px; padding:.55rem .95rem; font-size:.82rem; font-weight:700; cursor:pointer; }
.lp-mini-btn:hover { background:#f3f7ff; }
.lp-modcat-section { padding: 0 2rem 1.35rem; background: #fff; }
.lp-modcat-card { max-width:1100px; margin:0 auto; background:#fff; border:1px solid #e6edf8; border-radius:18px; overflow:hidden; box-shadow:0 8px 24px rgba(15,27,62,.04); }
.lp-modcat-head { padding:1.25rem 1.3rem 1rem; display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; cursor:pointer; }
.lp-modcat-head h3 { font-size: 1.2rem; font-weight: 800; color: var(--lp-dark); margin: 0 0 0.35rem; }
.lp-modcat-head p { color: var(--lp-muted); font-size: 0.94rem; max-width: 820px; margin: 0; }
.lp-modcat-toggle { min-width:42px; height:42px; border-radius:12px; border:1px solid #dce7fb; background:#f7faff; color:var(--lp-primary); font-size:1.2rem; font-weight:800; display:flex; align-items:center; justify-content:center; }
.lp-modcat-
.lp-modcat-section .grid2 { margin-top: .3rem; }
.lp-modcat-section .tile2 { background: #fff; }
.lp-modcat-card.collapsed .lp-modcat-
.lp-modcat-card.collapsed .lp-modcat-toggle::before { content:'+'; }
.lp-modcat-card:not(.collapsed) .lp-modcat-toggle::before { content:'−'; }
.lp-anchor-nav { display:flex; gap:.65rem; flex-wrap:wrap; margin-top:1rem; }
.lp-anchor-nav a { text-decoration:none; padding:.55rem .8rem; border-radius:999px; background:#f4f8ff; color:var(--lp-primary); font-size:.8rem; font-weight:700; }
.lp-anchor-nav a:hover { background:#eaf2ff; }
.lp-seo-intro { max-width:1100px; margin:0 auto; padding:0 0 1.2rem; }
.lp-seo-intro p { color:var(--lp-text); font-size:1rem; line-height:1.75; margin:0; }

.lp-modcat-head { max-width: 1100px; margin: 0 auto 1rem; }
.lp-modcat-head h3 { font-size: 1.35rem; font-weight: 800; color: var(--lp-dark); margin: 0 0 0.45rem; }
.lp-modcat-head p { color: var(--lp-muted); font-size: 0.96rem; max-width: 820px; margin: 0; }
.lp-modcat-section .grid2 { margin-top: 1rem; }
.lp-modcat-section .tile2 { background: #fff; }

/* HERO */
.lp-hero {
  background: linear-gradient(135deg, #0d1b3e 0%, #1a56e8 100%);
  color: #fff; padding: 5rem 2rem 4rem;
  text-align: center; position: relative; overflow: hidden;
}
.lp-hero::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse at 60% 0%, rgba(255,255,255,0.06) 0%, transparent 70%);
  pointer-events: none;
}
.lp-badge {
  display: inline-block;
  background: rgba(255,255,255,0.11);
  border: 1px solid rgba(255,255,255,0.22);
  border-radius: 50px; padding: 0.3rem 1.1rem;
  font-size: 0.79rem; font-weight: 600; letter-spacing: 0.5px;
  margin-bottom: 1.6rem; text-transform: uppercase; color: #fff;
}
.lp-hero h1 {
  font-size: clamp(1.9rem, 4.5vw, 3.1rem); font-weight: 900;
  line-height: 1.13; max-width: 780px; margin: 0 auto 1.2rem; color: #fff;
}
.lp-hero h1 em { color: var(--lp-accent); font-style: normal; }
.lp-hero p { font-size: 1.08rem; max-width: 600px; margin: 0 auto 2rem; opacity: 0.88; color: #fff; }
.lp-hero-actions { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }
.lp-btn-prim {
  background: var(--lp-accent); color: var(--lp-dark);
  padding: 0.9rem 2.1rem; border-radius: 10px;
  font-weight: 800; font-size: 1rem; text-decoration: none;
  box-shadow: 0 5px 20px rgba(245,158,11,0.35);
  transition: transform 0.14s, box-shadow 0.14s; display: inline-block;
}
.lp-btn-prim:hover { transform: translateY(-2px); box-shadow: 0 9px 28px rgba(245,158,11,0.45); color: var(--lp-dark); text-decoration: none; }
.lp-btn-sec {
  background: transparent; color: #fff;
  border: 2px solid rgba(255,255,255,0.45);
  padding: 0.9rem 2.1rem; border-radius: 10px;
  font-weight: 600; font-size: 1rem; text-decoration: none;
  transition: background 0.18s, border-color 0.18s; display: inline-block;
}
.lp-btn-sec:hover { background: rgba(255,255,255,0.09); border-color: #fff; color: #fff; text-decoration: none; }
.lp-hero-stats { display: flex; justify-content: center; gap: 3rem; margin-top: 3.5rem; flex-wrap: wrap; }
.lp-hs strong { display: block; font-size: 2rem; font-weight: 900; color: var(--lp-accent); }
.lp-hs span { font-size: 0.83rem; opacity: 0.72; color: #fff; }

/* SECTIUNI GENERALE */
.lp-section { padding: 5rem 2rem; }
.lp-section-white { background: #fff; padding: 5rem 2rem; }
.lp-section-bg { background: var(--lp-bg); padding: 5rem 2rem; }
.lp-section-dark { background: linear-gradient(135deg, #0d1b3e 0%, #183590 100%); color: #fff; padding: 5rem 2rem; }
.lp-section-light { background: linear-gradient(135deg, #f0f5ff, #e8f0ff); padding: 5rem 2rem; }
.lp-section-grad { background: linear-gradient(135deg, #0d1b3e 0%, #1a56e8 100%); color: #fff; padding: 5rem 2rem; }
.lp-con { max-width: 1120px; margin: 0 auto; }
.lp-lbl {
  display: inline-block; background: rgba(26,86,232,0.08); color: var(--lp-primary);
  border-radius: 50px; padding: 0.28rem 1rem;
  font-size: 0.76rem; font-weight: 700; letter-spacing: 0.5px;
  text-transform: uppercase; margin-bottom: 0.8rem;
}
.lp-stitle { font-size: clamp(1.5rem, 3vw, 2.2rem); font-weight: 800; color: var(--lp-dark); line-height: 1.2; margin-bottom: 0.8rem; }
.lp-ssub { font-size: 1rem; color: var(--lp-muted); max-width: 580px; margin-bottom: 3rem; }
.lp-section-dark .lp-stitle { color: #fff; }
.lp-section-dark .lp-ssub { color: rgba(255,255,255,0.68); }
.lp-section-grad .lp-stitle { color: #fff; }
.lp-section-grad .lp-ssub { color: rgba(255,255,255,0.73); }

/* WHY GRID */
.lp-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
.lp-check-list { list-style: none; display: flex; flex-direction: column; gap: 0.95rem; padding: 0; }
.lp-check-list li { display: flex; align-items: flex-start; gap: 0.75rem; font-size: 0.96rem; color: var(--lp-text); }
.lp-chk { width: 22px; height: 22px; background: rgba(26,86,232,0.09); border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 2px; }
.lp-chk svg { width: 12px; height: 12px; }
.lp-visual-cards { background: linear-gradient(135deg, #e8eeff, #f0f6ff); border-radius: var(--lp-radius); padding: 2rem; display: flex; flex-direction: column; gap: 1rem; }
.lp-vc { background: #fff; border-radius: 10px; padding: 1.1rem 1.4rem; box-shadow: var(--lp-shadow); display: flex; align-items: center; gap: 1rem; }
.lp-vc-icon { width: 42px; height: 42px; background: rgba(26,86,232,0.09); border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.3rem; flex-shrink: 0; }
.lp-vc strong { display: block; font-size: 1.2rem; font-weight: 800; color: var(--lp-dark); }
.lp-vc span { font-size: 0.8rem; color: var(--lp-muted); }

/* MODULE CARDS */

.lp-mc { flex: 1 1 auto; display: flex; flex-direction: column; height: 100%; box-sizing: border-box; background: #fff; border-radius: var(--lp-radius); padding: 1.8rem; border: 1.5px solid #e5e9f5; transition: box-shadow .2s, transform .2s, border-color .2s; }
.lp-mc:hover { box-shadow: var(--lp-shadow); transform: translateY(-3px); border-color: var(--lp-primary); }
.lp-mc-icon { font-size: 2rem; margin-bottom: 0.9rem; display: block; }
.lp-mc h3 { font-size: 1rem; font-weight: 700; color: var(--lp-dark); margin-bottom: 0.45rem; margin-top: 0; }
.lp-mc p { font-size: 0.88rem; color: var(--lp-muted); line-height: 1.6; margin: 0; }

/* STEPS */
.lp-steps-g { display: grid; grid-template-columns: repeat(3,1fr); gap: 2rem; }
.lp-step { text-align: center; padding: 2rem 1.5rem; }
.lp-step-n { width: 58px; height: 58px; border-radius: 50%; background: rgba(255,255,255,0.1); border: 2px solid rgba(255,255,255,0.18); display: flex; align-items: center; justify-content: center; font-size: 1.3rem; font-weight: 900; color: var(--lp-accent); margin: 0 auto 1.2rem; }
.lp-step h3 { font-size: 1.02rem; font-weight: 700; margin-bottom: 0.55rem; color: #fff; }
.lp-step p { font-size: 0.88rem; opacity: 0.72; color: #fff; }

/* PRICING */
.lp-priceg { display: grid; grid-template-columns: 1fr 1.15fr 1fr; gap: 1.5rem; }
.lp-pc { background: #fff; border-radius: var(--lp-radius); padding: 2rem; border: 2px solid #e5e9f5; }
.lp-pc.lp-feat { border-color: var(--lp-primary); box-shadow: 0 8px 40px rgba(26,86,232,0.15); position: relative; }
.lp-feat-b { position: absolute; top: -14px; left: 50%; transform: translateX(-50%); background: var(--lp-primary); color: #fff; font-size: 0.73rem; font-weight: 700; padding: 0.22rem 1rem; border-radius: 20px; white-space: nowrap; }
.lp-pc h3 { font-size: 0.97rem; font-weight: 700; color: var(--lp-dark); margin-bottom: 0.5rem; margin-top: 0; }
.lp-price-v { font-size: 2.1rem; font-weight: 900; color: var(--lp-primary); margin: 0.4rem 0 0.2rem; }
.lp-price-v sup { font-size: 0.95rem; vertical-align: top; margin-top: 0.45rem; }
.lp-price-d { font-size: 0.82rem; color: var(--lp-muted); margin-bottom: 1.4rem; }
.lp-pl { list-style: none; display: flex; flex-direction: column; gap: 0.6rem; margin-bottom: 1.6rem; padding: 0; }
.lp-pl li { font-size: 0.87rem; display: flex; align-items: center; gap: 0.5rem; color: var(--lp-text); }
.lp-pl li::before { content: '✓'; color: var(--lp-primary); font-weight: 800; flex-shrink: 0; }
.lp-btn-pc { display: block; text-align: center; padding: 0.68rem; border-radius: 8px; font-weight: 600; font-size: 0.88rem; text-decoration: none; border: 2px solid var(--lp-primary); color: var(--lp-primary); transition: background .18s, color .18s; }
.lp-btn-pc:hover { background: var(--lp-primary); color: #fff; text-decoration: none; }
.lp-pc.lp-feat .lp-btn-pc { background: var(--lp-primary); color: #fff; }

/* BENEFITS */
.lp-benef-g { display: grid; grid-template-columns: repeat(3,1fr); gap: 2rem; }
.lp-bc { background: var(--lp-bg); border-radius: var(--lp-radius); padding: 2rem; }
.lp-bc .lp-av { width: 46px; height: 46px; background: rgba(26,86,232,0.09); border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; margin-bottom: 1rem; }
.lp-bc h3 { font-size: 1rem; font-weight: 700; color: var(--lp-dark); margin-bottom: 0.9rem; margin-top: 0; }
.lp-bc ul { list-style: none; display: flex; flex-direction: column; gap: 0.55rem; padding: 0; margin: 0; }
.lp-bc ul li { font-size: 0.88rem; display: flex; gap: 0.5rem; color: var(--lp-text); }
.lp-bc ul li::before { content: '→'; color: var(--lp-primary); flex-shrink: 0; }

/* FINANTARI */
.lp-fin-g { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-top: 2rem; }
.lp-fc { background: #fff; border-radius: var(--lp-radius); padding: 1.7rem; border-left: 4px solid var(--lp-primary); box-shadow: var(--lp-shadow); }
.lp-fc h3 { font-size: 0.98rem; font-weight: 700; color: var(--lp-dark); margin-bottom: 0.45rem; margin-top: 0; }
.lp-fc p { font-size: 0.88rem; color: var(--lp-muted); margin: 0; }

/* FAQ */
.lp-faq-l { display: flex; flex-direction: column; gap: 0.9rem; max-width: 780px; }
.lp-faq-l details { background: #fff; border-radius: 10px; border: 1.5px solid #e5e9f5; overflow: hidden; }
.lp-faq-l details[open] { border-color: var(--lp-primary); }
.lp-faq-l summary { padding: 1.1rem 1.4rem; font-weight: 600; font-size: 0.95rem; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; color: var(--lp-dark); }
.lp-faq-l summary::after { content: '+'; font-size: 1.2rem; color: var(--lp-primary); }
.lp-faq-l details[open] summary::after { content: '−'; }
.lp-fa { padding: 0 1.4rem 1.1rem; font-size: 0.9rem; color: var(--lp-muted); line-height: 1.7; }

/* FORM */
.lp-form-wrap { display: grid; grid-template-columns: 1fr 1.2fr; gap: 4rem; align-items: center; }
.lp-perks { display: flex; flex-direction: column; gap: 1.1rem; margin-top: 1rem; }
.lp-perk { display: flex; align-items: center; gap: 0.85rem; }
.lp-perk-ic { width: 42px; height: 42px; background: rgba(255,255,255,0.1); border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.25rem; flex-shrink: 0; }
.lp-perk p { font-size: 0.88rem; opacity: 0.82; color: #fff; margin: 0; }
.lp-perk strong { display: block; font-size: 0.95rem; font-weight: 600; margin-bottom: 0.05rem; color: #fff; }
.lp-cform { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.14); border-radius: var(--lp-radius); padding: 2.3rem; }
.lp-fg { display: grid; grid-template-columns: 1fr 1fr; gap: 0.9rem; }
.lp-fg .lp-full { grid-column: 1/-1; }
.lp-fg label { display: block; font-size: 0.8rem; font-weight: 600; margin-bottom: 0.35rem; opacity: 0.84; color: #fff; }
.lp-fg input, .lp-fg select, .lp-fg textarea { width: 100%; background: rgba(255,255,255,0.11); border: 1.5px solid rgba(255,255,255,0.18); border-radius: 8px; padding: 0.68rem 0.95rem; color: #fff; font-size: 0.9rem; font-family: inherit; outline: none; transition: border-color .2s; }
.lp-fg input::placeholder, .lp-fg textarea::placeholder { opacity: 0.45; color: #fff; }
.lp-fg input:focus, .lp-fg select:focus, .lp-fg textarea:focus { border-color: var(--lp-accent); }
.lp-fg select option { background: #0d1b3e; color: #fff; }
.lp-fg textarea { resize: vertical; min-height: 78px; }
.lp-sbtn { width: 100%; background: var(--lp-accent); color: var(--lp-dark); border: none; border-radius: 10px; padding: 0.88rem; font-size: 1rem; font-weight: 800; cursor: pointer; margin-top: 0.9rem; transition: transform .14s, box-shadow .14s; }
.lp-sbtn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(245,158,11,0.4); }
.lp-fnote { font-size: 0.76rem; opacity: 0.55; text-align: center; margin-top: 0.75rem; color: #fff; }

/* RESPONSIVE */
@media (max-width: 900px) {
  .lp-why-grid, .lp-steps-g, .lp-priceg, .lp-benef-g, .lp-fin-g, .lp-form-wrap { grid-template-columns: 1fr !important; }
}
@media (max-width: 640px) {
  .lp-fg { grid-template-columns: 1fr; }
  .lp-fg .lp-full { grid-column: 1; }
  .lp-hero-stats { gap: 1.5rem; }
}

/* Stil corectat pentru butoane (logo centrat sus, text bold dedesubt) */
.tile2 {
  background: #ffffff;
  color: #111827;
  border: 1px solid rgba(0,0,0,0.1);
  text-align: center;
  font-weight: 700;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
  padding: 20px;
}
.tile2:hover {
  background: #f9fafb;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
.tile2 .label {
  color: #111827;
  font-weight: 700;
  text-align: center;
}
.tile2 .icon svg {
  stroke: #2563eb;
  display: block;
  margin: 0 auto;
}

/* =====================================================
   STOREWEB – Digitalizare Primarii – FINAL FIX
   1. Base font 16px (override Bootstrap 14px)
   2. Accordion collapse/expand
   3. Typography echilibrata
   4. Spacing uniform
   5. Responsive complet
   ===================================================== */

/* 1. BASE — forteaza 16px peste Bootstrap */
html { font-size: 16px !important; }
body {
  font-size: 15px !important;
  line-height: 1.72 !important;
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif !important;
}

/* 2. ACCORDION — extindere / retrangere */
.lp-modcat-body { display: block !important; }
.lp-modcat-card.collapsed .lp-modcat-body { display: none !important; }
.lp-modcat-toggle { position: relative; }
.lp-modcat-toggle::before { content: '−'; display: block; }
.lp-modcat-card.collapsed .lp-modcat-toggle::before { content: '+'; }
/* Asigura ca onclick functioneaza - headul trebuie sa fie clickable */
.lp-modcat-head {
  cursor: pointer !important;
  user-select: none;
}
.lp-modcat-head:hover { background: rgba(37,99,235,.03); }

/* 3. TITLURI */
.lp-hero h1 {
  font-size: clamp(26px, 3.8vw, 42px) !important;
  line-height: 1.1 !important;
  letter-spacing: -.02em !important;
}
.lp-hero p     { font-size: 15px !important; line-height: 1.8 !important; }
.lp-stitle     { font-size: clamp(20px, 2.4vw, 28px) !important; line-height: 1.18 !important; letter-spacing: -.01em; }
.lp-ssub       { font-size: 15px !important; line-height: 1.78 !important; }
.lp-modcat-head h3 { font-size: 16px !important; font-weight: 700 !important; line-height: 1.3 !important; }
.lp-modcat-head p  { font-size: 14px !important; line-height: 1.7 !important; }
.lp-feature-card h3 { font-size: 15px !important; font-weight: 700 !important; }
.lp-feature-card p  { font-size: 14px !important; line-height: 1.72 !important; }

/* 4. CONTENT TEXT — 14px echilibrat */
.lp-seo-intro p,
.lp-check-list li,
.lp-pl li,
.lp-bc ul li,
.lp-fc p,
.lp-step p,
.lp-mc p,
.lp-fa        { font-size: 14px !important; line-height: 1.78 !important; }
.lp-vc span   { font-size: 13px !important; line-height: 1.65 !important; }
.lp-perk p    { font-size: 13px !important; line-height: 1.65 !important; }
.lp-price-d   { font-size: 13px !important; }
.lp-fnote     { font-size: 12px !important; }

/* Card headings */
.lp-vc strong   { font-size: 15px !important; font-weight: 700 !important; }
.lp-step h3     { font-size: 15px !important; font-weight: 700 !important; }
.lp-mc h3       { font-size: 15px !important; font-weight: 700 !important; }
.lp-bc h3       { font-size: 15px !important; font-weight: 700 !important; }
.lp-fc h3       { font-size: 15px !important; font-weight: 700 !important; }
.lp-pc h3       { font-size: 15px !important; font-weight: 700 !important; }
.lp-perk strong { font-size: 15px !important; font-weight: 700 !important; }

/* Stats hero */
.lp-hs strong { font-size: 26px !important; font-weight: 800 !important; }
.lp-hs span   { font-size: 12px !important; }
.lp-price-v   { font-size: 32px !important; font-weight: 800 !important; }

/* Badges, labels, small */
.lp-lbl, .lp-badge, .lp-feat-b { font-size: 11px !important; letter-spacing: .07em !important; }
.lp-anchor-nav a, .lp-mini-btn  { font-size: 12px !important; }
.lp-faq-l summary               { font-size: 15px !important; font-weight: 700 !important; }

/* Module tile labels */
.tile2 .label {
  font-size: 12px !important;
  line-height: 1.3 !important;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  min-height: 0 !important;
  word-break: break-word;
}

/* Butoane */
.lp-btn-prim, .lp-btn-sec { font-size: 15px !important; }
.lp-btn-pc                 { font-size: 14px !important; }
.lp-sbtn                   { font-size: 15px !important; font-weight: 700 !important; }

/* Formular */
.lp-fg label        { font-size: 12px !important; font-weight: 700 !important; }
.lp-fg input,
.lp-fg select,
.lp-fg textarea     { font-size: 15px !important; }

/* 5. SPACING UNIFORM */
.lp-section-white,
.lp-section-bg,
.lp-section-light,
.lp-section-dark,
.lp-section-grad,
.lp-section         { padding: 4.5rem 2rem !important; }
.lp-feature-needs   { padding: 0 2rem 3.5rem !important; }
.lp-modcat-section  { padding: 0 2rem 1.5rem !important; }
.lp-modcat-head     { padding: 1.2rem 1.4rem 1rem !important; }
.lp-modcat-body     { padding: .9rem 1.2rem 1.2rem !important; }
.lp-con { max-width: 1120px; margin: 0 auto; }

/* Grid tile spacing */
.grid2 {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(130px,1fr)) !important;
  gap: 8px !important;
}
.tile2 {
  padding: 12px 11px !important;
  border-radius: 10px !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
.tile2 .icon svg { width: 20px !important; height: 20px !important; }

/* 6. RESPONSIVE */

@media (max-width: 1024px) {
  .lp-feature-grid { grid-template-columns: 1fr 1fr !important; }
  .lp-hero-stats   { grid-template-columns: 1fr 1fr !important; }
  .lp-priceg       { grid-template-columns: 1fr !important; max-width: 420px; margin: 0 auto; }
  .lp-benef-g      { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 820px) {
  html { font-size: 15px !important; }
  .lp-why-grid, .lp-form-wrap { grid-template-columns: 1fr !important; }
  .lp-steps-g { grid-template-columns: 1fr !important; }
  .lp-benef-g { grid-template-columns: 1fr !important; }
  .lp-fin-g   { grid-template-columns: 1fr !important; }
  .lp-priceg  { max-width: 100% !important; }
  
  .lp-hero h1 { font-size: clamp(22px, 5.5vw, 32px) !important; }
  .lp-stitle  { font-size: clamp(18px, 4vw, 24px) !important; }
  .lp-section-white, .lp-section-bg, .lp-section-light,
  .lp-section-dark, .lp-section-grad, .lp-section { padding: 3.5rem 1.5rem !important; }
  .lp-feature-needs  { padding: 0 1.5rem 3rem !important; }
  .lp-modcat-section { padding: 0 1.5rem 1.1rem !important; }
  .lp-feature-grid   { grid-template-columns: 1fr !important; }
}
@media (max-width: 600px) {
  html { font-size: 14px !important; }
  body { font-size: 14px !important; }
  .lp-hero { padding: 3rem 1.25rem 2.75rem !important; }
  .lp-hero h1 { font-size: clamp(20px, 7vw, 28px) !important; }
  .lp-hero p  { font-size: 14px !important; }
  .lp-hero-actions { flex-direction: column !important; }
  .lp-btn-prim, .lp-btn-sec { width: 100% !important; text-align: center !important; }
  .lp-hero-stats { grid-template-columns: 1fr 1fr !important; gap: .6rem !important; }
  .lp-section-white, .lp-section-bg, .lp-section-light,
  .lp-section-dark, .lp-section-grad, .lp-section { padding: 3rem 1.25rem !important; }
  .lp-modcat-section { padding: 0 1.1rem .9rem !important; }
  .lp-modcat-head { padding: 1rem 1.1rem .85rem !important; }
  .lp-modcat-body { padding: .75rem .9rem .9rem !important; }
  .lp-fg { grid-template-columns: 1fr !important; }
  .lp-fg .lp-full { grid-column: 1 !important; }
  .grid2 { grid-template-columns: repeat(auto-fill, minmax(105px,1fr)) !important; }
  
  .tile2 { padding: 9px 8px !important; }
  .tile2 .icon svg { width: 17px !important; height: 17px !important; }
  .tile2 .label { font-size: 11px !important; }
  .lp-cform { padding: 1.25rem !important; }
}
@media (max-width: 400px) {
  html { font-size: 13.5px !important; }
  .lp-hero h1 { font-size: clamp(18px, 7.5vw, 24px) !important; }
  .lp-hero-stats { grid-template-columns: 1fr 1fr !important; }
  .grid2 { grid-template-columns: repeat(auto-fill, minmax(92px,1fr)) !important; }
  .tile2 .label { font-size: 10px !important; }
}

/* MODULE GRID — full width, no gaps */
.lp-mod-grid-wrap { width: 100%; overflow: hidden; }
.lp-mod-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 0 !important;
  width: 100% !important;
}
.lp-mc {
  border-radius: 0 !important;
  border-top: 1px solid #e2e8f3;
  border-right: 1px solid #e2e8f3;
  border-bottom: none;
  border-left: none;
  display: flex !important;
  flex-direction: column !important;
  min-height: 190px;
  box-sizing: border-box;
}
.lp-mc:nth-child(-n+4) { border-top: none; }
.lp-mc:nth-child(4n+1) { border-left: 1px solid #e2e8f3; }
.lp-mc:nth-child(5), .lp-mc:nth-child(6),
.lp-mc:nth-child(7), .lp-mc:nth-child(8) { border-bottom: 1px solid #e2e8f3; }
.lp-mc:hover {
  z-index: 2; position: relative;
  background: #f8fbff !important;
  box-shadow: inset 0 0 0 2px #c7d7f0;
}
@media (max-width: 820px) {
  .lp-mod-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .lp-mc { border: 1px solid #e2e8f3 !important; min-height: 160px; }
}
@media (max-width: 480px) {
  .lp-mod-grid { grid-template-columns: 1fr !important; }
}


/* ── Mobile: carduri una sub alta – Institutii & Finantari ── */
@media (max-width: 820px) {
  #grid-institutii   { grid-template-columns: 1fr !important; }
  #grid-finantari    { grid-template-columns: 1fr !important; }
  #grid-legal        { grid-template-columns: 1fr !important; }
  #grid-calculator   { grid-template-columns: 1fr !important; gap: 1.5rem !important; }
}

/* ── Mobile: blog cards una sub alta ── */
@media (max-width: 820px) {
  #grid-blog { grid-template-columns: 1fr !important; }
}

/* ══ ANIMATII TOGGLE MODCAT ══ */

/* Pulse glow pe butonul + cand cardul e inchis */
@keyframes pulse-toggle {
  0%   { box-shadow: 0 0 0 0 rgba(37,99,235,.45); transform: scale(1); }
  50%  { box-shadow: 0 0 0 8px rgba(37,99,235,.0); transform: scale(1.12); }
  100% { box-shadow: 0 0 0 0 rgba(37,99,235,.0); transform: scale(1); }
}

/* Bounce hint pe sageata/plus */
@keyframes bounce-hint {
  0%, 100% { transform: translateY(0); }
  40%       { transform: translateY(-4px); }
  60%       { transform: translateY(-2px); }
}

/* Highlight border pe cardul collapsed */
@keyframes border-glow {
  0%, 100% { border-color: #e6edf8; box-shadow: 0 8px 24px rgba(15,27,62,.04); }
  50%       { border-color: #93c5fd; box-shadow: 0 8px 28px rgba(37,99,235,.14); }
}

/* Aplica animatii pe cardurile INCHISE */
.lp-modcat-card.collapsed {
  animation: border-glow 2.8s ease-in-out infinite;
}

.lp-modcat-card.collapsed .lp-modcat-toggle {
  animation: pulse-toggle 2s ease-in-out infinite;
  background: linear-gradient(135deg, #eff6ff, #dbeafe) !important;
  border-color: #93c5fd !important;
  color: #1d4ed8 !important;
}

/* Hint text "Expandeaza" vizibil langa toggle pe cardurile closed */
.lp-modcat-card.collapsed .lp-modcat-head::after {
  content: 'Click pentru detalii';
  font-size: 11px;
  font-weight: 600;
  color: #2563eb;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 50px;
  padding: 3px 10px;
  white-space: nowrap;
  animation: bounce-hint 2s ease-in-out infinite;
  display: inline-flex;
  align-items: center;
  align-self: center;
  margin-left: auto;
  margin-right: .75rem;
  order: 2;
}

/* Opreste animatia pe cardurile DESCHISE */
.lp-modcat-card:not(.collapsed) {
  animation: none;
  border-color: #2563eb;
  box-shadow: 0 8px 32px rgba(37,99,235,.12);
}

.lp-modcat-card:not(.collapsed) .lp-modcat-toggle {
  animation: none;
  background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
  color: #fff !important;
  border-color: #2563eb !important;
}

/* Tranzitie smooth expand/collapse */
.lp-modcat-body {
  transition: opacity .25s ease;
}
.lp-modcat-card.collapsed .lp-modcat-body {
  opacity: 0;
  pointer-events: none;
}
.lp-modcat-card:not(.collapsed) .lp-modcat-body {
  opacity: 1;
}

/* Hover pe header - feedback vizual */
.lp-modcat-head:hover .lp-modcat-toggle {
  transform: scale(1.08) !important;
  transition: transform .15s ease;
}

/* Opreste animatia dupa primul click pe pagina (reduce distragerea) */
.lp-modcat-card.collapsed.interacted {
  animation: none;
  border-color: #e6edf8;
}
.lp-modcat-card.collapsed.interacted .lp-modcat-toggle {
  animation: none;
}

/* ══ Ascunde butonul +/- si lasa doar hint-ul "Click pentru detalii" ══ */
.lp-modcat-toggle {
  display: none !important;
}

/* Facem header-ul sa arate ca un buton clickabil complet */
.lp-modcat-card.collapsed .lp-modcat-head {
  background: linear-gradient(135deg, #f8faff 0%, #eff6ff 100%);
  border-bottom: none;
}
.lp-modcat-card:not(.collapsed) .lp-modcat-head {
  background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
  border-bottom: 1px solid #bfdbfe;
}

/* Hint "Click pentru detalii" mai proeminent fara buton */
.lp-modcat-card.collapsed .lp-modcat-head::after {
  margin-right: 0 !important;
  font-size: 12px !important;
  padding: 5px 14px !important;
  background: #2563eb !important;
  color: #fff !important;
  border-color: #2563eb !important;
  box-shadow: 0 2px 8px rgba(37,99,235,.3);
}

/* Hint "Inchide" pe carduri deschise */
.lp-modcat-card:not(.collapsed) .lp-modcat-head::after {
  content: '▲ Restrânge' !important;
  font-size: 12px;
  font-weight: 600;
  color: #2563eb;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 50px;
  padding: 3px 12px;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  align-self: center;
  margin-left: auto;
  animation: none !important;
}

/* ══ Formular contact - optimizat mobil ══ */
@media (max-width: 820px) {
  /* Grid 1 coloana pe mobil */
  .lp-fg {
    grid-template-columns: 1fr !important;
  }
  .lp-fg .lp-full {
    grid-column: 1 !important;
  }

  /* Mareste campurile pentru touch (minim 48px inaltime - standard iOS/Android) */
  .lp-fg input,
  .lp-fg select,
  .lp-fg textarea {
    padding: 0.85rem 1rem !important;
    font-size: 16px !important; /* previne zoom automat iOS Safari pe focus */
    border-radius: 10px !important;
    min-height: 48px !important;
  }

  /* Label mai lizibil */
  .lp-fg label {
    font-size: 13px !important;
    margin-bottom: .5rem !important;
  }

  /* Textarea mai inalta pe mobil */
  .lp-fg textarea {
    min-height: 100px !important;
  }

  /* Buton submit full width, mai inalt pentru touch */
  .lp-sbtn {
    padding: 1rem !important;
    font-size: 1rem !important;
    border-radius: 12px !important;
    min-height: 52px !important;
  }

  /* Form container padding redus pe mobil */
  .lp-cform {
    padding: 1.4rem 1.2rem !important;
    border-radius: 14px !important;
  }

  /* Spatiere intre campuri */
  .lp-fg {
    gap: 0.75rem !important;
  }

  /* Hint toggle pe mobil mai mic */
  .lp-modcat-card.collapsed .lp-modcat-head::after,
  .lp-modcat-card:not(.collapsed) .lp-modcat-head::after {
    font-size: 11px !important;
    padding: 4px 10px !important;
  }
}

@media (max-width: 430px) {
  .lp-cform {
    padding: 1.1rem 1rem !important;
  }
  .lp-fg input,
  .lp-fg select,
  .lp-fg textarea {
    font-size: 16px !important;
    padding: 0.8rem 0.9rem !important;
  }
}

@media (max-width: 820px) {
  .lp-priceg { grid-template-columns: 1fr !important; }
  #price-toggle { flex-direction: column; width: 100%; }
  #price-toggle button { width: 100%; text-align: center; }
}

/* ── Placeholder alb formular contact ── */
.lp-cform .lp-fg input::placeholder,
.lp-cform .lp-fg textarea::placeholder,
.lp-cform .lp-fg select::placeholder {
  color: rgba(255,255,255,0.55) !important;
  opacity: 1 !important;
}
.lp-cform .lp-fg input,
.lp-cform .lp-fg select,
.lp-cform .lp-fg textarea {
  color: #fff !important;
}
/* Selectul sa aiba text alb */
.lp-cform .lp-fg select option {
  background: #0d1b3e;
  color: #fff;
}

@media (max-width: 820px) {
  #lp-preturi [style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
  }
  #lp-preturi [style*="grid-template-columns:auto 1fr"] {
    grid-template-columns: 1fr !important;
    text-align: center;
  }
  #lp-preturi [style*="font-size:3rem"] {
    display: none;
  }
}

@media (max-width: 820px) {
  #grid-modele-plata { grid-template-columns: 1fr !important; }
}

@keyframes arrow-pulse {
  0%, 100% { opacity: 1; transform: translateX(0); }
  50%       { opacity: .6; transform: translateX(5px); }
}
@media (max-width: 600px) {
  #grid-modele-plata { grid-template-columns: 1fr !important; }
}