/* =========================================================
   LANDING PAGES — secțiuni (intro, cifre, casete, pași, FAQ, CTA)
   ========================================================= */
.fi-page-content { --fi-lp-gap: clamp(56px, 7vw, 96px); }
.fi-page-content > * + * { margin-top: 22px !important; }
.fi-page-content > .alignwide { max-width: 1200px !important; }
.fi-page-content > .alignfull { max-width: none !important; margin-left: calc(var(--fi-gl) * -1) !important; margin-right: calc(var(--fi-gr) * -1) !important; }
.fi-page-content > :is(.fi-lp-stats, .fi-split, .fi-iboxes, .fi-lp-cards, .fi-band, .fi-faq, .fi-inline-cta, .fi-related, .fi-note, .fi-tool, .fi-form-card) { margin-top: var(--fi-lp-gap) !important; }
.fi-page-content > .alignfull:last-child { margin-bottom: -88px !important; }
.fi-page-content h2 { font-family: var(--fi-display); font-stretch: 112%; font-weight: 750; text-transform: uppercase; font-size: clamp(24px, 2.8vw, 38px) !important; line-height: 1.1; color: var(--fi-ink); margin: 0 0 16px !important; }
.fi-page-content > h2 { margin: var(--fi-lp-gap) auto 16px !important; max-width: 780px; }
.fi-page-content > :is(p, ul, ol, .fi-checklist) { margin-left: auto !important; margin-right: auto !important; }
/* CTA-ul din footer se repetă cu banda CTA a paginii: îl ascundem acolo unde există banda. */
body:has(.fi-band.fi-page-cta) .fi-footer-cta { display: none !important; }
.fi-page-content h3 { font-family: var(--fi-display); font-stretch: 108%; font-weight: 700; font-size: 19px !important; line-height: 1.25; margin: 0 0 8px !important; color: var(--fi-ink); }
.fi-eyebrow { font-family: var(--fi-mono); font-size: 12px !important; text-transform: uppercase; letter-spacing: .1em; color: var(--fi-steel) !important; margin: 0 0 10px !important; }
.wp-block-columns.fi-intro, .wp-block-columns.fi-split, .wp-block-columns.fi-faq { gap: clamp(28px, 5vw, 72px) !important; }
.fi-page-content .wp-block-column > * { margin-block: 0 0 16px !important; }
.fi-page-content .wp-block-column > :last-child { margin-bottom: 0 !important; }

/* Intro */
.fi-intro { margin-top: 0 !important; }
.fi-intro-img, .fi-split-img { margin: 0 !important; position: relative; }
.fi-intro-img img, .fi-split-img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 4px; display: block; box-shadow: 0 30px 60px -30px rgba(14,18,21,.45); }
.fi-intro-img::after { content: ""; position: absolute; right: -14px; bottom: -14px; width: 42%; height: 42%; border-right: 3px solid var(--fi-steel); border-bottom: 3px solid var(--fi-steel); z-index: -1; }

/* Cifre cheie */
.fi-lp-stats { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 !important; background: var(--fi-ink); border-radius: 4px; overflow: hidden; }
.fi-lp-stats > * { margin: 0 !important; }
.fi-lp-stat { padding: 28px 24px; border-left: 1px solid rgba(255,255,255,.1); }
.fi-lp-stat:first-child { border-left: 0; }
.fi-lp-stat > * { margin: 0 !important; }
/* valori lungi (email) */
.fi-lp-stat-value { overflow-wrap: anywhere; font-family: var(--fi-display); font-stretch: 112%; font-weight: 700; font-size: clamp(18px, 1.7vw, 23px) !important; line-height: 1.2 !important; color: #fff !important; }
.fi-lp-stat-label { font-family: var(--fi-mono); font-size: 12px !important; text-transform: uppercase; letter-spacing: .08em; color: #93a1aa !important; margin-top: 8px !important; }
@media (max-width: 900px) { .fi-lp-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .fi-lp-stat:nth-child(3) { border-left: 0; } .fi-lp-stat:nth-child(n+3) { border-top: 1px solid rgba(255,255,255,.1); } }
@media (max-width: 420px) { .fi-lp-stat { padding: 20px 16px; } }

/* Casete cu iconițe */
.fi-iboxes { display: grid !important; gap: 18px !important; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fi-iboxes-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.fi-iboxes > * { margin: 0 !important; }
.fi-ibox { position: relative; background: var(--fi-surface); border: 1px solid var(--fi-line); border-radius: 4px; padding: 26px 22px 24px; transition: transform .3s cubic-bezier(.2,.7,.2,1), box-shadow .3s, border-color .3s; }
.fi-ibox:hover { transform: translateY(-4px); box-shadow: 0 24px 40px -24px rgba(14,18,21,.35); border-color: transparent; }
.fi-ibox::before { content: ""; display: block; width: 46px; height: 46px; margin-bottom: 18px; border-radius: 4px; background: var(--fi-ink) var(--fi-ico) center / 24px no-repeat; }
.fi-ibox > * { margin: 0 0 6px !important; }
.fi-ibox p { font-size: 16px !important; line-height: 1.6 !important; color: var(--fi-graphite) !important; }
.fi-ibox-title a { color: var(--fi-ink) !important; text-decoration: none !important; }
.fi-ibox-title a::after { content: " →"; color: var(--fi-steel); }
@media (max-width: 1000px) { .fi-iboxes, .fi-iboxes-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .fi-iboxes, .fi-iboxes-4 { grid-template-columns: 1fr; } .fi-ibox { display: grid; grid-template-columns: 46px 1fr; column-gap: 16px; padding: 20px 18px; } .fi-ibox::before { grid-row: span 3; margin: 0; } }

/* Iconițe (SVG alb), alternate */
.fi-ibox, .fi-checklist li { --fi-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21V9l9-6 9 6v12'/%3E%3Cpath d='M9 21v-6h6v6'/%3E%3C/svg%3E"); }
.fi-ibox:nth-child(6n+2) { --fi-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='1'/%3E%3Cpath d='M3 9h18M3 15h18M9 3v18M15 3v18'/%3E%3C/svg%3E"); }
.fi-ibox:nth-child(6n+3) { --fi-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3s6 6.2 6 11a6 6 0 0 1-12 0c0-4.8 6-11 6-11z'/%3E%3C/svg%3E"); }
.fi-ibox:nth-child(6n+4) { --fi-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2c1 3 4 5 4 9a4 4 0 0 1-8 0c0-1.5.5-2.5 1-3 0 2 1 3 2 3 0-3-1-6 1-9z'/%3E%3Cpath d='M6 15a6 6 0 0 0 12 0'/%3E%3C/svg%3E"); }
.fi-ibox:nth-child(6n+5) { --fi-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12h4l3-8 6 16 3-8h4'/%3E%3C/svg%3E"); }
.fi-ibox:nth-child(6n) { --fi-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a1 1 0 0 0-1 1v16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h4'/%3E%3C/svg%3E"); }

/* Liste bifate */
.fi-checklist { list-style: none; padding: 0 !important; margin: 0 !important; display: grid; gap: 4px; }
.fi-checklist li { position: relative; padding: 12px 0 12px 40px !important; margin: 0 !important; border-bottom: 1px solid var(--fi-line); font-size: 17px !important; line-height: 1.55 !important; }
.fi-checklist li:last-child { border-bottom: 0; }
.fi-checklist li::before { content: ""; position: absolute; left: 0; top: 13px; width: 24px; height: 24px; border-radius: 50%; background: var(--fi-steel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 14px no-repeat; }
.fi-check-card { background: var(--fi-surface); border: 1px solid var(--fi-line); border-left: 3px solid var(--fi-steel); border-radius: 4px; padding: 14px 26px; }
.fi-page-content > .fi-checklist { max-width: 780px; }

/* Carduri (sub-secțiuni h3) */
.fi-lp-cards { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px !important; }
.fi-lp-cards-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fi-lp-cards-1 { grid-template-columns: 1fr; max-width: 780px !important; }
.fi-lp-cards > * { margin: 0 !important; }
.fi-card-box { background: var(--fi-surface); border: 1px solid var(--fi-line); border-top: 3px solid var(--fi-ink); border-radius: 4px; padding: 26px 24px; }
.fi-card-box > * { margin: 0 0 8px !important; }
.fi-card-box p { font-size: 16px !important; color: var(--fi-graphite) !important; }
@media (max-width: 800px) { .fi-lp-cards, .fi-lp-cards-3 { grid-template-columns: 1fr; } }

/* Text + imagine */
.fi-split p { font-size: 17px !important; }
@media (max-width: 781px) { .fi-split-rev { flex-direction: column-reverse; } }

/* Notă (secțiune scurtă de text) */
.fi-note { max-width: 780px; padding-left: 26px; border-left: 3px solid var(--fi-line); }
.fi-note > * { margin: 0 0 14px !important; }
.fi-note > :last-child { margin-bottom: 0 !important; }

/* Bandă (pași numerotați, CTA final) */
.fi-band { padding-block: clamp(56px, 7vw, 96px); }
.fi-band-inner { max-width: 1200px; margin: 0 auto !important; padding-inline: var(--fi-gl) var(--fi-gr); }
.fi-band-inner > * { margin: 0 0 16px !important; }
.fi-band-steps { background: var(--fi-mist); border-block: 1px solid var(--fi-line); }
.fi-band-steps .fi-band-title { max-width: 780px; }
.fi-lp-steps { list-style: none; counter-reset: fi-lp-step; padding: 0 !important; margin-top: 30px !important; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
.fi-lp-steps li { counter-increment: fi-lp-step; position: relative; background: var(--fi-surface); border: 1px solid var(--fi-line); border-radius: 4px; padding: 64px 22px 22px !important; margin: 0 !important; font-size: 16px !important; line-height: 1.55 !important; }
.fi-lp-steps li::before { content: counter(fi-lp-step, decimal-leading-zero); position: absolute; left: 22px; top: 18px; font-family: var(--fi-display); font-stretch: 120%; font-weight: 800; font-size: 30px; line-height: 1; color: var(--fi-steel); }
.fi-lp-steps li::after { content: ""; position: absolute; left: 72px; right: 22px; top: 33px; height: 1px; background: var(--fi-line); }
.fi-band-steps .fi-band-inner > p { max-width: 780px; }

/* CTA intermediar */
.fi-inline-cta { display: flex !important; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 32px !important; background: var(--fi-steel); color: #fff; border-radius: 4px; padding: 26px 32px; }
.fi-inline-cta > * { margin: 0 !important; }
.fi-inline-cta-text { color: #fff !important; font-size: 18px !important; max-width: 60ch; }
.fi-inline-cta-text strong { font-family: var(--fi-display); font-stretch: 110%; text-transform: uppercase; letter-spacing: .02em; display: block; font-size: 20px; margin-bottom: 4px; }

/* FAQ acordeon */
.fi-faq h2 { margin-bottom: 14px !important; }
.fi-faq-item { border-bottom: 1px solid var(--fi-line); margin: 0 !important; }
.fi-faq-item:first-child { border-top: 1px solid var(--fi-line); }
.fi-faq-item summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 0; font-family: var(--fi-display); font-stretch: 105%; font-weight: 650; font-size: 18px; line-height: 1.35; color: var(--fi-ink); }
.fi-faq-item summary::-webkit-details-marker { display: none; }
.fi-faq-item summary::after { content: ""; flex: none; width: 32px; height: 32px; border-radius: 50%; border: 1px solid var(--fi-line); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2315191c' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 14px no-repeat; transition: transform .3s, background-color .3s; }
.fi-faq-item[open] summary::after { transform: rotate(45deg); background-color: var(--fi-mist); }
.fi-faq-item summary:hover { color: var(--fi-steel); }
.fi-faq-item p { margin: 0 0 20px !important; padding-right: 52px; font-size: 17px !important; color: var(--fi-graphite) !important; }
.wp-block-button.fi-btn-outline-dark .wp-block-button__link { background: transparent !important; color: var(--fi-ink) !important; border: 1px solid var(--fi-ink) !important; }
.wp-block-button.fi-btn-outline-dark .wp-block-button__link:hover { background: var(--fi-ink) !important; color: #fff !important; }
@media (min-width: 782px) { .fi-faq > .wp-block-column:first-child { align-self: flex-start; position: sticky; top: calc(var(--fi-admin) + var(--fi-nav-h) + 24px); } }

/* Pagini conexe */
.fi-related { background: none !important; border: 0 !important; padding: 0 !important; }
.fi-related h3 { font-family: var(--fi-mono) !important; font-size: 12px !important; font-weight: 500 !important; text-transform: uppercase; letter-spacing: .1em; color: var(--fi-steel) !important; margin-bottom: 14px !important; }
.fi-related-list { list-style: none; padding: 0 !important; display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px !important; }
.fi-related-list li { margin: 0 !important; border: 0 !important; }
.fi-related-list a { display: flex !important; flex-direction: column; gap: 8px; height: 100%; box-sizing: border-box; padding: 20px !important; background: var(--fi-surface); border: 1px solid var(--fi-line); border-radius: 4px; text-decoration: none !important; color: var(--fi-ink) !important; transition: border-color .25s, transform .25s; }
.fi-related-list a::after { content: "→" !important; margin-top: auto; color: var(--fi-steel); font-size: 18px; }
.fi-related-list a:hover { border-color: var(--fi-steel); transform: translateY(-3px); }
.fi-related-list strong { font-family: var(--fi-display); font-stretch: 108%; font-size: 16px; line-height: 1.25; }
.fi-related-list span { font-size: 14px; line-height: 1.5; color: var(--fi-muted); font-weight: 400; }
@media (max-width: 1000px) { .fi-related-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .fi-related-list { grid-template-columns: 1fr; } }

/* CTA final */
.fi-band.fi-page-cta { position: relative; isolation: isolate; border-radius: 0 !important; margin-top: var(--fi-lp-gap) !important; padding-block: clamp(64px, 8vw, 110px) !important; background: var(--fi-night) !important; overflow: hidden; }
.fi-band.fi-page-cta::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .5; background:
	linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 60px 60px,
	linear-gradient(0deg, rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 60px 60px,
	radial-gradient(60% 80% at 85% 20%, rgba(74,124,158,.45), transparent 70%); }
.fi-band.fi-page-cta h2 { color: #fff !important; font-size: clamp(30px, 4.4vw, 60px) !important; max-width: 18ch; }
.fi-band.fi-page-cta p { color: #b8c1c6 !important; max-width: 58ch; font-size: 18px !important; }
.fi-band.fi-page-cta .fi-eyebrow { color: #8fb3cc !important; font-size: 12px !important; }
.fi-band.fi-page-cta .wp-block-buttons { margin-top: 26px !important; gap: 12px; }

/* Calculator / formular */
.fi-tool, .fi-form-card { max-width: 900px !important; }
.fi-form-card { background: var(--fi-surface); border: 1px solid var(--fi-line); border-radius: 4px; padding: clamp(20px, 4vw, 40px); }

/* Mobil */
@media (max-width: 781px) {
	.fi-page-content { --fi-lp-gap: 52px; }
	.fi-intro-img::after { display: none; }
	.fi-inline-cta { padding: 22px 20px; }
	.fi-faq-item p { padding-right: 0; }
	.fi-faq-item summary { font-size: 17px; }
}
