.olf-widget{--olf-deep:#193b42;--olf-accent:#159aa9;--olf-soft:#ebf7fc;--olf-border:#dce7eb;max-width:920px;margin:16px auto;padding:clamp(21px,3vw,38px);border:1px solid var(--olf-border);border-radius:28px;background:#fff;box-shadow:0 20px 70px rgba(20,60,60,.09);font-family:inherit;color:var(--olf-deep)}
.olf-widget *{box-sizing:border-box}.olf-widget .olf-intro{text-align:center;max-width:630px;margin:0 auto 24px}.olf-eyebrow{display:block;letter-spacing:.14em;font-size:11px;font-weight:800;color:var(--olf-accent);margin-bottom:12px}.olf-widget h2{font-size:clamp(28px,4vw,40px);line-height:1.17;color:var(--olf-deep);margin:0 0 14px}.olf-widget p{font-size:15px;color:#60777a;line-height:1.7}.olf-field-group{margin-bottom:18px}.olf-label{display:block;font-size:15px;font-weight:750;margin:0 0 13px}.olf-amounts button{font-family:inherit;cursor:pointer;transition:all .15s ease}.olf-amounts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.olf-amounts button{border:1.5px solid var(--olf-border);border-radius:14px;background:#fff;color:var(--olf-deep);font-weight:800;font-size:22px;padding:15px 6px;min-height:72px}.olf-amounts button small{display:block;font-size:12px;color:#65868e;line-height:1.2;font-weight:500}.olf-amounts button.is-active{border-color:var(--olf-accent);background:var(--olf-soft);box-shadow:0 0 0 1px var(--olf-accent)}.olf-amounts button.olf-custom-button{font-size:14px}.olf-custom-wrap{margin-top:14px}.olf-custom-wrap[hidden]{display:none}.olf-custom-label{display:block;font-weight:700;font-size:13px;margin-bottom:6px}.olf-widget input[type=number],.olf-widget input[type=text],.olf-widget input[type=email]{width:100%;min-height:48px;border:1px solid #d5e3e9;background:#fff;color:#1e4549;border-radius:11px;padding:12px 14px;outline:none;font-size:15px;box-shadow:none}.olf-widget input:focus{border-color:var(--olf-accent);box-shadow:0 0 0 3px rgba(21,154,169,.13)}.olf-custom-wrap small{display:block;color:#687f88;margin-top:8px;font-size:12px}.olf-personal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:19px 0}.olf-input-label{display:block;font-size:14px;font-weight:700}.olf-input-label input{display:block;margin-top:10px}.olf-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.55;color:#526b70;margin:14px 0}.olf-consent input{appearance:auto;flex:0 0 17px;margin:4px 0 0;accent-color:var(--olf-accent)}.olf-consent a{color:var(--olf-accent);text-decoration:underline}.olf-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:17px;margin-top:19px;border-top:1px solid var(--olf-border)}.olf-recap small,.olf-recap span{display:block;font-size:12px;color:#69858c}.olf-recap strong{display:block;color:var(--olf-deep);font-size:26px;margin:3px 0}.olf-submit{min-height:58px;border:0;border-radius:14px;padding:15px 25px;background:#fa777d;color:#fff;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 8px 18px rgba(250,119,125,.2);display:flex;justify-content:center;align-items:center;gap:22px}.olf-submit:hover{background:#ed646d}.olf-submit:disabled{opacity:.7;cursor:wait}.olf-security{text-align:center;margin:14px 0 0!important;font-size:12px!important;color:#78909c!important}.olf-trap{position:absolute!important;left:-9999px!important;top:-9999px!important}.olf-message{padding:16px 20px;border-radius:12px;border:1px solid #c6e9f1;background:#effaff;color:#1a6476;margin-bottom:18px}.olf-message.olf-error{background:#fff4f2;border-color:#f6c7be;color:#8d3830}.olf-status{max-width:770px;margin:40px auto;padding:40px 25px;text-align:center;border:1px solid #dce7eb;border-radius:24px;background:#fff}.olf-status h2{font-size:34px;color:#193b42;margin:0 0 14px}.olf-status p{color:#5b7378}.olf-status-icon{display:block;font-size:45px;color:#159aa9;margin-bottom:10px}.olf-status a{display:inline-block;margin-top:18px;color:#168d9f;font-weight:700}
@media(max-width:690px){.olf-widget{border-radius:18px;padding:21px 16px}.olf-amounts{grid-template-columns:repeat(3,minmax(0,1fr))}.olf-personal-grid{grid-template-columns:1fr}.olf-bottom{align-items:stretch;flex-direction:column}.olf-submit{width:100%}.olf-amounts button{min-height:63px;font-size:19px}}


/* v1.3 – transfer bancar compact, adaptat identității corai + turcoaz OLF */
.olf-widget .olf-bank{
 margin:18px 0 0!important;padding:19px 20px!important;
 border:1px solid #f7dce0;border-radius:18px;
 background:linear-gradient(120deg,#fff7f7 0%,#fffaf8 65%,#f5fbfd 100%);
 box-shadow:none;color:var(--olf-deep);
}
.olf-widget .olf-bank-heading{display:flex;align-items:center;gap:11px;margin:0 0 13px!important}
.olf-widget .olf-bank-icon{width:36px;height:36px;display:grid;place-items:center;flex-shrink:0;border-radius:11px;background:#ffe1e3;color:#fa777d;font-size:27px;font-weight:800;line-height:1}
.olf-widget .olf-bank h3{font-size:20px;line-height:1.22;letter-spacing:-.015em;color:#193b42;font-weight:800;margin:0 0 3px!important}
.olf-widget .olf-bank-heading p{margin:0!important;font-size:12px;line-height:1.48;color:#647c83}
.olf-widget .olf-bank-data{display:grid;grid-template-columns:1.4fr .6fr;gap:9px;margin:0!important}
.olf-widget .olf-bank-item{padding:10px 12px!important;margin:0!important;border:1px solid #edebec;border-radius:11px;background:rgba(255,255,255,.92);min-width:0}
.olf-widget .olf-bank-item>span{display:block;margin:0 0 3px!important;color:#78919a;font-size:11px;line-height:1.25;font-weight:750;letter-spacing:.02em}
.olf-widget .olf-bank-item strong{font-size:14px;line-height:1.35;font-weight:750;color:#193b42}
.olf-widget .olf-bank-item-iban{grid-column:1 / -1}
.olf-widget .olf-bank-ibanline{display:flex;gap:10px;align-items:center;justify-content:space-between;min-width:0;flex-wrap:wrap}
.olf-widget .olf-bank-ibanline .olf-bank-iban{font-size:clamp(15px,1.65vw,18px);font-weight:800;letter-spacing:.025em;overflow-wrap:anywhere;word-break:break-word;font-variant-numeric:tabular-nums}
.olf-widget .olf-copy-iban{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:35px;padding:7px 11px;background:#eaf8fc;color:#0a8699;border:1px solid #c7ebf2;border-radius:9px;font:inherit;font-weight:750;font-size:12px;line-height:1.2;cursor:pointer;white-space:nowrap;transition:background .15s}
.olf-widget .olf-copy-iban:hover{background:#d9f2f9}
.olf-widget .olf-copy-iban:focus-visible{outline:3px solid #159aa9;outline-offset:2px}
.olf-widget .olf-copy-feedback{display:block;color:#0c8799;font-size:12px;min-height:0}
.olf-widget .olf-copy-feedback:not(:empty){margin-top:5px}
.olf-widget .olf-bank-hint,.olf-widget .olf-bank-note{margin:8px 0 0!important;font-size:12px!important;line-height:1.4!important;color:#73868a!important}
.olf-widget .olf-bank-hint strong{color:#193b42}
.olf-widget .olf-bank-note{font-size:11px!important}
.olf-widget.olf-bank-only{padding:0;max-width:920px;background:transparent;border:0;box-shadow:none;margin:0 auto}
.olf-widget.olf-bank-only .olf-bank{margin:0!important}
/* Reset margini de titluri/paragrafe moștenite din Impreza/WPBakery. */
.olf-widget .olf-intro p{margin:0!important}
.olf-widget .olf-bank .olf-bank-heading div{min-width:0}
@media(max-width:690px){
 .olf-widget{margin:10px auto;padding:20px 16px}
 .olf-widget .olf-intro{margin-bottom:19px}
 .olf-widget .olf-bank{margin-top:16px!important;padding:16px 14px!important;border-radius:15px}
 .olf-widget .olf-bank-heading{align-items:flex-start;margin-bottom:11px!important}
 .olf-widget .olf-bank h3{font-size:18px}
 .olf-widget .olf-bank-data{grid-template-columns:1fr;gap:8px}
 .olf-widget .olf-bank-item-iban{grid-column:auto}
 .olf-widget .olf-bank-ibanline .olf-bank-iban{font-size:16px;letter-spacing:0}
 .olf-widget .olf-copy-iban{width:100%;min-height:40px}
}

/* v1.4: compactare proporții fără a altera rândurile WPBakery din restul site-ului. */
.olf-widget:not(.olf-bank-only){max-width:1020px;margin:0 auto;padding:clamp(18px,2vw,28px);border-radius:22px}
.olf-widget .olf-intro{margin:0 auto 20px!important}
.olf-widget .olf-eyebrow{margin:0 0 8px!important}
.olf-widget .olf-intro h2{margin:0 0 8px!important;line-height:1.15}
.olf-widget .olf-intro p{margin:0!important;line-height:1.48}
.olf-widget .olf-field-group{margin-bottom:12px!important}
.olf-widget .olf-label{margin-bottom:8px!important}
.olf-widget .olf-personal-grid{margin:13px 0!important}
.olf-widget .olf-input-label input{margin-top:7px!important}
.olf-widget .olf-consent{margin:11px 0!important}
.olf-widget .olf-bottom{margin-top:13px!important;padding-top:13px!important}
.olf-widget .olf-security{margin:9px 0 0!important;line-height:1.45!important}
.olf-widget .olf-bank{margin-top:14px!important}
/* Poate fi aplicată rândului Impreza/WPBakery prin Extra class = olf-donatii-row. */
.olf-donatii-row .olf-widget{margin-top:0!important;margin-bottom:0!important}
.olf-donatii-row .wpb_wrapper > .olf-widget:last-child{margin-bottom:0!important}
@media(max-width:690px){
 .olf-widget:not(.olf-bank-only){padding:18px 14px;border-radius:17px}
 .olf-widget .olf-intro{margin-bottom:16px!important}
 .olf-widget .olf-amounts{gap:7px}
 .olf-widget .olf-amounts button{padding:10px 4px;min-height:57px}
 .olf-widget .olf-personal-grid{gap:11px;margin:12px 0!important}
}

/* v1.6: remediază suprapunerea cu headerul Impreza din v1.5.
   NU modifica niciun ancestor .l-section/.l-section-h/.vc_row:
   tema gestioneaza offset-ul necesar pentru headerul sticky/transparent. */
.olf-widget:not(.olf-bank-only) {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: clamp(20px, 2.4vw, 34px);
  box-sizing: border-box;
}
/* Doar spatierea interna a formularului, fara a atinge layoutul temei. */
.olf-widget .olf-intro { margin-bottom: clamp(18px, 2vw, 24px) !important; }
@media (max-width: 690px) {
  .olf-widget:not(.olf-bank-only) {
    max-width: 100%;
    padding: 18px 14px;
  }
}
