@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800&display=swap');

/* ===== oFinaczej – zapis na newsletter (opt-in). CSS zawężony do .ofn (styl strony głównej) ===== */
.ofn{
  --navy:#2C3347;--bordo:#8E2B5B;--rose:#C98BAA;--blush:#EED9E1;--mist:#F8F7F9;--muted:#6b6f7d;--line:#ebe4e8;
  font-family:"Montserrat","Segoe UI",Arial,sans-serif;color:var(--navy);background:var(--mist);line-height:1.6;-webkit-font-smoothing:antialiased}
.ofn *{box-sizing:border-box}
.ofn h1,.ofn h2,.ofn h3{font-family:inherit;letter-spacing:-.02em;margin:0}
.ofn p{margin:0}
header#top,header#top .navbar{background:linear-gradient(180deg,#ffffff 0%,#f4ecf1 100%)!important;box-shadow:none!important;border-bottom:0!important}
.ofn .hero{position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(700px 520px at 78% 48%,rgba(142,43,91,.55),transparent 62%),
    radial-gradient(520px 420px at 8% 95%,rgba(90,44,81,.55),transparent 70%),
    linear-gradient(160deg,#10162a 0%,#1a2034 45%,#2a1d33 100%)}
.ofn .hero .mgla{position:absolute;left:0;right:0;top:0;height:110px;pointer-events:none;
  background:linear-gradient(180deg,#f4ecf1 0%,rgba(244,236,241,.6) 22%,rgba(244,236,241,.2) 55%,rgba(244,236,241,0) 100%)}
.ofn .hero-in{position:relative;max-width:980px;margin:0 auto;padding:110px 20px 100px}
.ofn .eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:#f3c6db}
.ofn .hero h1{color:#fff;font-size:clamp(32px,4.8vw,56px);font-weight:800;line-height:1.05;margin-top:14px}
.ofn .hero h1 em{font-style:normal;background:linear-gradient(90deg,#f7d3e3 0%,#e2a9c3 45%,#C98BAA 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.ofn .hero .lead{color:rgba(255,255,255,.84);font-size:17px;max-width:620px;margin-top:16px}
.ofn .karta{max-width:980px;margin:-60px auto 70px;padding:0 16px;position:relative}
.ofn .karta-in{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 22px 50px rgba(44,51,71,.10);padding:38px 42px;display:grid;grid-template-columns:1.1fr .9fr;gap:40px}
.ofn h2{font-size:22px;font-weight:800;margin-bottom:16px}
.ofn .lista{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.ofn .lista li{display:flex;gap:12px;align-items:flex-start}
.ofn .lista .ic{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;background:linear-gradient(135deg,#8E2B5B 0%,#C98BAA 100%)}
.ofn .lista b{display:block}
.ofn .lista span.t{font-size:14px;color:var(--muted)}
.ofn .zapis{background:var(--mist);border:1px solid var(--line);border-radius:18px;padding:26px}
.ofn .zapis .l{display:block;font-size:13px;font-weight:700;margin-bottom:8px}
.ofn .js_subscribe{display:flex;flex-direction:column;gap:12px}
.ofn .js_subscribe .form-control{height:52px;border-radius:14px;border:1.5px solid #d9d0d6;font:500 15px Montserrat,sans-serif;padding:0 16px}
.ofn .js_subscribe .form-control:focus{border-color:var(--rose);box-shadow:0 0 0 .2rem rgba(201,139,170,.25);outline:0}
.ofn .js_subscribe .btn{width:100%;height:52px;border-radius:14px;border:0;font:700 15px Montserrat,sans-serif;display:flex;align-items:center;justify-content:center;text-decoration:none}
.ofn .js_subscribe_btn{background:linear-gradient(135deg,#8E2B5B 0%,#C98BAA 100%);color:#fff;box-shadow:0 12px 26px rgba(142,43,91,.28)}
.ofn .js_subscribed_btn{background:#2f7d5b;color:#fff;cursor:default}
.ofn .js_subscribe .d-none{display:none!important}
.ofn .zgoda{font-size:12px;line-height:1.55;color:var(--muted);margin-top:14px}
.ofn .zgoda a{color:var(--bordo);font-weight:600}
@media (max-width:767px){.ofn .hero-in{padding:84px 16px 80px}.ofn .karta-in{grid-template-columns:1fr;padding:26px 20px;gap:26px}}
