/* ==========================================================
   ON-TARGET.PL – O nas
   SP Page Builder / osobny CSS podstrony
   System wizualny HOME + OFERTA V2
   ========================================================== */

:root{
  --ota-black:#111111;
  --ota-black2:#191919;
  --ota-yellow:#F5C400;
  --ota-yellow-dark:#D9AD00;
  --ota-cream:#FAFAF7;
  --ota-warm:#F2F0E7;
  --ota-warm-gold:#F1E6B7;
  --ota-line:#DEDCD2;
  --ota-muted:#514F49;
  --ota-white:#FFFFFF;
}

.ota-sp,
.ota-sp > .sppb-row-container,
.ota-sp > .sppb-row-container > .sppb-row,
.ota-sp > .sppb-row,
.ota-sp .sppb-column,
.ota-sp .sppb-column-addons,
.ota-sp .sppb-addon,
.ota-sp .sppb-addon-content{margin:0!important;padding:0!important}
.ota-sp > .sppb-row-container{width:100%!important;max-width:none!important}
.ota-sp .sppb-row{margin-left:0!important;margin-right:0!important}
.ota-sp .sppb-column{padding-left:0!important;padding-right:0!important}
.ota-sp .ota-page-block{width:100%!important;max-width:none!important}

.ota,.ota *{box-sizing:border-box}
.ota{width:100%;position:relative;font-family:Inter,Arial,sans-serif;color:var(--ota-black)}
.ota a{text-decoration:none!important}
.ota p,.ota h1,.ota h2,.ota h3,.ota h4{margin:0}
.ota img{display:block;width:100%;max-width:100%}
.ota-wrap{width:min(1500px,calc(100% - 96px));margin:0 auto}
.ota-kicker{display:inline-flex;align-items:center;gap:11px;font-size:12px;line-height:1.3;font-weight:850;letter-spacing:.15em;text-transform:uppercase;color:#66645E}
.ota-kicker:before{content:"";width:30px;height:3px;background:var(--ota-yellow);display:block}
.ota-kicker--light{color:rgba(255,255,255,.72)}
.ota-h1{color:#fff!important;font-size:clamp(54px,5.4vw,84px)!important;line-height:.95!important;letter-spacing:-.055em!important;font-weight:850!important}
.ota-h1 em,.ota-h2 em{font-style:normal;color:var(--ota-yellow)}
.ota-h2{color:var(--ota-black)!important;font-size:clamp(40px,4vw,62px)!important;line-height:1!important;letter-spacing:-.045em!important;font-weight:830!important}
.ota-h2--light{color:#fff!important}
.ota-lead{font-size:18px!important;line-height:1.72!important;font-weight:460!important}
.ota-copy{font-size:16.5px!important;line-height:1.76!important;font-weight:480!important;color:#514F49!important}
.ota-copy--light{color:rgba(255,255,255,.74)!important}

.ota-btn{min-height:58px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:0 8px 0 24px;border:1px solid transparent;font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;transition:.22s ease}
.ota-btn b{width:42px;height:42px;display:grid;place-items:center;font-size:18px;font-weight:500;transition:.22s ease}
.ota-btn:hover b{transform:translateX(2px)}
.ota-btn--yellow{background:var(--ota-yellow);color:#111!important}
.ota-btn--yellow b{background:#111;color:#fff}
.ota-btn--yellow:hover{background:#FFD51A;color:#111!important}
.ota-btn--black{background:#111;color:#fff!important}
.ota-btn--black b{background:var(--ota-yellow);color:#111}
.ota-btn--black:hover{background:#252525}
.ota-btn--ghost{border-color:rgba(255,255,255,.28);color:#fff!important;background:rgba(255,255,255,.03)}
.ota-btn--ghost b{background:rgba(255,255,255,.11);color:#fff}
.ota-btn--ghost:hover{border-color:var(--ota-yellow);color:var(--ota-yellow)!important}

/* NUMERY W STYLU TARCZY */
.ota-target{position:relative;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;flex:0 0 72px;overflow:hidden;font-style:normal;font-size:12px;font-weight:950;letter-spacing:.06em;line-height:1}
.ota-target span{position:relative;z-index:4}
.ota-target:before,.ota-target:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.ota-target:before{inset:10px;border:1px solid currentColor;opacity:.34}
.ota-target:after{inset:23px;border:1px solid currentColor;opacity:.28}
.ota-target em,.ota-target u{position:absolute;inset:0;z-index:1;pointer-events:none;text-decoration:none}
.ota-target em:before,.ota-target em:after,.ota-target u:before,.ota-target u:after{content:"";position:absolute;background:currentColor;opacity:.18}
.ota-target em:before{left:50%;top:8px;bottom:8px;width:1px;transform:translateX(-50%)}
.ota-target em:after{top:50%;left:8px;right:8px;height:1px;transform:translateY(-50%)}
.ota-target u:before{left:50%;top:17px;bottom:17px;width:1px;transform:translateX(-50%)}
.ota-target u:after{top:50%;left:17px;right:17px;height:1px;transform:translateY(-50%)}
.ota-target--dark{color:#111;background:#F3F1E8;border:1px solid #D8D5C8}
.ota-target--gold{color:#111;background:#EEDB89;border:1px solid rgba(17,17,17,.18)}
.ota-target--light{color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18)}
.ota-target--light:before,.ota-target--light:after{border-color:var(--ota-yellow)}

/* HERO */
.ota-hero{overflow:hidden;padding:94px 0 86px;min-height:670px;background:radial-gradient(circle at 83% 28%,rgba(245,196,0,.10),transparent 27%),linear-gradient(135deg,#0D0D0D 0%,#171717 62%,#101010 100%)}
.ota-hero:before{content:"";position:absolute;inset:0;opacity:.16;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,transparent 0,#000 45%,#000 100%)}
.ota-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:72px;align-items:center;position:relative;z-index:2}
.ota-hero .ota-kicker{margin-bottom:26px}
.ota-hero .ota-lead{margin-top:30px!important;max-width:760px;color:rgba(255,255,255,.74)!important}
.ota-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.ota-hero-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:52px;padding-top:25px;border-top:1px solid rgba(255,255,255,.13)}
.ota-hero-meta div{padding-right:22px}
.ota-hero-meta strong{display:block;color:#fff;font-size:17px;font-weight:900}
.ota-hero-meta span{display:block;margin-top:5px;color:rgba(255,255,255,.50);font-size:11px;font-weight:750;letter-spacing:.07em;text-transform:uppercase}
.ota-hero-photo{height:530px;position:relative;overflow:hidden;border-radius:26px;border:1px solid rgba(255,255,255,.12);box-shadow:0 32px 85px rgba(0,0,0,.35)}
.ota-hero-photo img{height:100%;object-fit:cover;object-position:center}
.ota-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,17,17,.02),rgba(17,17,17,.20))}
.ota-photo-tag{position:absolute;left:22px;bottom:22px;z-index:2;padding:15px 18px;background:rgba(255,255,255,.96);border-left:4px solid var(--ota-yellow);box-shadow:0 18px 45px rgba(0,0,0,.20)}
.ota-photo-tag small{display:block;color:#6D6A63;font-size:10px;font-weight:850;letter-spacing:.13em}
.ota-photo-tag strong{display:block;margin-top:5px;color:#111;font-size:16px;font-weight:950}

/* SEKCJE */
.ota-section{padding:108px 0 116px;background:var(--ota-cream)}
.ota-section--white{background:#fff}
.ota-section--dark{background:#111}
.ota-section--warm{background:linear-gradient(180deg,#F6F3E8 0%,var(--ota-warm-gold) 100%)}
.ota-section-head{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end;margin-bottom:50px}
.ota-section-head .ota-kicker{margin-bottom:16px}
.ota-section-head>p{max-width:580px;justify-self:end;color:#55534D!important;font-size:17px!important;line-height:1.74!important;font-weight:480!important}
.ota-section--dark .ota-section-head>p{color:rgba(255,255,255,.72)!important}

/* KARTY */
.ota-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ota-card{min-height:350px;padding:30px 28px;background:#fff;border:1px solid var(--ota-line);display:flex;flex-direction:column;position:relative;overflow:hidden}
.ota-card h3{margin-top:48px!important;font-size:25px!important;line-height:1.10!important;font-weight:880!important;letter-spacing:-.03em!important;color:#111!important}
.ota-card p{margin-top:17px!important;font-size:16.5px!important;line-height:1.68!important;color:#55534D!important;font-weight:480!important}
.ota-card small{margin-top:auto;padding-top:26px;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#8B6D00}
.ota-card--dark{background:#171717;border-color:#171717}
.ota-card--dark h3{color:#fff!important}
.ota-card--dark p{color:rgba(255,255,255,.72)!important}
.ota-card--dark small{color:var(--ota-yellow)}

/* SPLIT */
.ota-split{display:grid;grid-template-columns:.94fr 1.06fr;gap:88px;align-items:center}
.ota-split--reverse{grid-template-columns:1.06fr .94fr}
.ota-split--reverse .ota-split-photo{order:2}
.ota-split--reverse .ota-split-copy{order:1}
.ota-split-photo{height:550px;overflow:hidden;border-radius:26px;box-shadow:0 28px 70px rgba(17,17,17,.10)}
.ota-split-photo img{height:100%;object-fit:cover}
.ota-split-copy .ota-kicker{margin-bottom:19px}
.ota-split-copy .ota-h2{margin-bottom:27px!important}
.ota-split-copy .ota-copy{max-width:760px}
.ota-checks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:31px}
.ota-check{display:flex;align-items:center;gap:12px;min-height:56px;padding:13px 15px;border:1px solid #D8D5C9;background:rgba(255,255,255,.70);color:#171717;font-size:15.5px;font-weight:720;line-height:1.4}
.ota-check:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ota-yellow);box-shadow:0 0 0 4px rgba(245,196,0,.16);flex:0 0 8px}

/* LISTA / ETAPY */
.ota-steps{border-top:1px solid rgba(17,17,17,.18)}
.ota-step{display:grid;grid-template-columns:94px 1fr 1.08fr;gap:28px;align-items:center;min-height:156px;padding:25px 0;border-bottom:1px solid rgba(17,17,17,.15)}
.ota-step h3{font-size:23px!important;line-height:1.15!important;font-weight:880!important;letter-spacing:-.025em!important;color:#111!important}
.ota-step p{font-size:16.5px!important;line-height:1.68!important;color:#514F49!important;font-weight:480!important}
.ota-section--dark .ota-steps{border-color:rgba(255,255,255,.18)}
.ota-section--dark .ota-step{border-color:rgba(255,255,255,.14)}
.ota-section--dark .ota-step h3{color:#fff!important}
.ota-section--dark .ota-step p{color:rgba(255,255,255,.72)!important}

/* INFO */
.ota-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.ota-info{padding:30px;background:rgba(255,255,255,.72);border:1px solid rgba(17,17,17,.10)}
.ota-info h3{font-size:21px!important;line-height:1.18!important;font-weight:880!important;color:#111!important}
.ota-info p{margin-top:11px!important;font-size:16.5px!important;line-height:1.68!important;color:#4C4A44!important;font-weight:480!important}

/* KONTAKT – KARTY */
.ota-contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ota-contact-card{min-height:245px;padding:30px;background:#fff;border:1px solid var(--ota-line);display:flex;flex-direction:column}
.ota-contact-card small{font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#77746D}
.ota-contact-card strong{margin-top:auto;color:#111;font-size:22px;line-height:1.2;font-weight:900;letter-spacing:-.02em}
.ota-contact-card span{margin-top:10px;color:#5B5953;font-size:15.5px;line-height:1.55;font-weight:480}
.ota-contact-card a{color:#111!important}
.ota-contact-card a:hover{color:#8B6D00!important}

/* FORM BUILDER */
.ota-form-section{padding:108px 0 116px;background:linear-gradient(180deg,#F6F3E8 0%,var(--ota-warm-gold) 100%)}
.ota-form-section > .sppb-row-container{width:min(1500px,calc(100% - 96px))!important;max-width:1500px!important;margin:0 auto!important}
.ota-form-left{height:100%;padding:22px 62px 22px 0}
.ota-form-left .ota-kicker{margin-bottom:18px}
.ota-form-left .ota-h2{margin-bottom:25px!important}
.ota-form-direct{display:grid;gap:0;margin-top:34px;border-top:1px solid rgba(17,17,17,.16)}
.ota-form-direct a,.ota-form-direct div{min-height:78px;display:grid;align-content:center;border-bottom:1px solid rgba(17,17,17,.14);color:#111!important}
.ota-form-direct small{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#77746D}
.ota-form-direct strong{margin-top:4px;font-size:17px;font-weight:850}
.ota-form-addon{padding:34px!important;background:#fff;border:1px solid rgba(17,17,17,.10);box-shadow:0 24px 65px rgba(17,17,17,.08)}
.ota-form-addon .sppb-addon-form-builder{padding:0!important}
.ota-form-addon .sppb-form-builder-form{display:flex!important;flex-wrap:wrap!important;margin-left:-8px!important;margin-right:-8px!important}
.ota-form-addon .sppb-form-group,.ota-form-addon .form-group,.ota-form-addon .sppb-form-builder-field{padding-left:8px!important;padding-right:8px!important;margin-bottom:16px!important}
.ota-form-addon label{display:block!important;margin-bottom:8px!important;color:#26241F!important;font-size:13px!important;line-height:1.35!important;font-weight:800!important}
.ota-form-addon .sppb-form-control,.ota-form-addon input,.ota-form-addon textarea,.ota-form-addon select{width:100%!important;min-height:54px!important;padding:13px 14px!important;border:1px solid #D7D3C6!important;border-radius:8px!important;background:#FAFAF7!important;color:#111!important;font-family:inherit!important;font-size:16px!important;line-height:1.45!important;box-shadow:none!important;outline:0!important}
.ota-form-addon textarea.sppb-form-control,.ota-form-addon textarea{min-height:170px!important;resize:vertical!important}
.ota-form-addon .sppb-form-control:focus,.ota-form-addon input:focus,.ota-form-addon textarea:focus{border-color:#A68500!important;box-shadow:0 0 0 3px rgba(245,196,0,.14)!important}
.ota-form-addon .sppb-form-check,.ota-form-addon .form-check{width:100%!important;flex:0 0 100%!important;margin:2px 8px 16px!important;color:#55534D!important;font-size:13px!important;line-height:1.55!important}
.ota-form-addon .sppb-form-builder-recaptcha,.ota-form-addon .sppb-form-builder-captcha{width:100%!important;flex:0 0 100%!important;margin:0 8px 18px!important;padding:14px!important;border:1px solid #DDD7C6!important;border-radius:8px!important;background:#FAF7EB!important}
.ota-form-addon .sppb-form-builder-btn{width:100%!important;flex:0 0 100%!important;margin:6px 8px 0!important}
.ota-form-addon .sppb-btn,.ota-form-addon button[type="submit"],.ota-form-addon input[type="submit"]{width:100%!important;min-height:56px!important;border:1px solid var(--ota-yellow)!important;border-radius:4px!important;background:var(--ota-yellow)!important;color:#111!important;font-family:inherit!important;font-size:13px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important;box-shadow:none!important;transition:.2s ease!important}
.ota-form-addon .sppb-btn:hover,.ota-form-addon button[type="submit"]:hover{background:#D9AD00!important;border-color:#D9AD00!important;transform:translateY(-1px)}
.ota-form-addon .sppb-alert{width:100%!important;margin:16px 8px 0!important;border-radius:8px!important}

/* CTA */
.ota-final{padding:92px 0 100px;background:#fff}
.ota-final-box{padding:60px 64px;min-height:400px;background:#111;display:grid;grid-template-columns:1.08fr .92fr;gap:78px;align-items:center;position:relative;overflow:hidden;box-shadow:0 34px 75px rgba(17,17,17,.16)}
.ota-final-box:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(245,196,0,.30);border-radius:50%;right:-175px;top:-220px;box-shadow:0 0 0 55px rgba(245,196,0,.035),0 0 0 110px rgba(245,196,0,.022)}
.ota-final-copy,.ota-final-contact{position:relative;z-index:2}
.ota-final .ota-kicker{margin-bottom:21px}
.ota-final h2{color:#fff!important;font-size:clamp(42px,4.3vw,64px)!important;line-height:.98!important;letter-spacing:-.045em!important;font-weight:850!important}
.ota-final h2 em{font-style:normal;color:var(--ota-yellow)}
.ota-final-copy p{margin-top:23px!important;color:rgba(255,255,255,.72)!important;font-size:16.5px!important;line-height:1.72!important;max-width:620px}
.ota-final-contact{display:grid;border-top:1px solid rgba(255,255,255,.17)}
.ota-contact-row{min-height:84px;display:grid;align-content:center;border-bottom:1px solid rgba(255,255,255,.14);color:#fff!important;padding-right:48px;position:relative}
.ota-contact-row small{font-size:11px;color:rgba(255,255,255,.50);font-weight:850;letter-spacing:.13em}
.ota-contact-row strong{margin-top:5px;font-size:18px;font-weight:850}
.ota-contact-row i{position:absolute;right:0;top:50%;transform:translateY(-50%);font-style:normal;color:var(--ota-yellow);font-size:20px}

@media(max-width:1199px){
  .ota-wrap{width:min(100% - 64px,1420px)}
  .ota-hero-grid{grid-template-columns:1fr .82fr;gap:42px}
  .ota-hero-photo{height:500px}
  .ota-cards{grid-template-columns:1fr 1fr}
  .ota-split,.ota-split--reverse{gap:58px}
}
@media(max-width:991px){
  .ota-wrap{width:calc(100% - 48px)}
  .ota-hero{padding:74px 0}
  .ota-hero-grid,.ota-section-head,.ota-split,.ota-split--reverse,.ota-final-box{grid-template-columns:1fr;gap:42px}
  .ota-hero-photo{width:min(600px,100%);height:510px;margin-top:15px}
  .ota-section-head>p{justify-self:start}
  .ota-split--reverse .ota-split-photo,.ota-split--reverse .ota-split-copy{order:initial}
  .ota-split-photo{height:470px}
  .ota-step{grid-template-columns:82px 1fr;gap:24px}
  .ota-step p{grid-column:2}
  .ota-final-box{padding:50px}
  .ota-contact-grid{grid-template-columns:1fr}
  .ota-form-section > .sppb-row-container{width:calc(100% - 48px)!important}
  .ota-form-left{padding:0 0 34px}
  .ota-form-addon{padding:28px!important}
}
@media(max-width:767px){
  .ota-wrap{width:calc(100% - 34px)}
  .ota-hero{min-height:0;padding:60px 0 58px}
  .ota-h1{font-size:clamp(43px,13vw,62px)!important}
  .ota-h2{font-size:clamp(36px,10vw,50px)!important}
  .ota-lead{font-size:16px!important}
  .ota-actions{display:grid}
  .ota-btn{width:100%}
  .ota-hero-meta{gap:12px}
  .ota-hero-meta strong{font-size:15px}
  .ota-hero-meta span{font-size:9px}
  .ota-hero-photo{height:420px}
  .ota-section{padding:76px 0 82px}
  .ota-cards{grid-template-columns:1fr}
  .ota-card{min-height:315px}
  .ota-split-photo{height:370px}
  .ota-checks,.ota-info-grid{grid-template-columns:1fr}
  .ota-step{grid-template-columns:62px 1fr;gap:16px;min-height:0;padding:25px 0}
  .ota-step h3{font-size:21px!important}
  .ota-step p{font-size:15.5px!important}
  .ota-final{padding:64px 0 72px}
  .ota-final-box{padding:38px 25px;gap:38px}
  .ota-final h2{font-size:clamp(38px,10.5vw,51px)!important}
  .ota-target{width:54px;height:54px;flex-basis:54px;font-size:10px}
  .ota-target:before{inset:8px}.ota-target:after{inset:17px}
  .ota-form-section{padding:76px 0 82px}
  .ota-form-section > .sppb-row-container{width:calc(100% - 34px)!important}
  .ota-form-addon{padding:22px 18px!important}
  .ota-form-addon .sppb-form-group,.ota-form-addon .form-group,.ota-form-addon .sppb-form-builder-field{width:100%!important;max-width:100%!important;flex:0 0 100%!important}
}

/* ==========================================================
   O NAS – UJEDNOLICONE HERO
   Zachowuje oryginalny kontener i układ strony.
   Desktop/tablet: stała wysokość 700 px.
   Mobile: naturalna wysokość dla układu jednokolumnowego.
   ========================================================== */

@media (min-width:1200px){
  .ota-hero{
    height:700px!important;
    min-height:700px!important;
    max-height:700px!important;
    padding:50px 0!important;
    overflow:hidden!important;
  }

  .ota-hero .ota-wrap{
    width:min(1500px,calc(100% - 96px))!important;
    max-width:1500px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .ota-hero-grid{
    height:100%!important;
    grid-template-columns:1.08fr .92fr!important;
    gap:72px!important;
    align-items:center!important;
  }

  .ota-hero .ota-h1{
    font-size:clamp(48px,3.35vw,64px)!important;
    line-height:.98!important;
    letter-spacing:-.048em!important;
  }

  .ota-hero .ota-kicker{
    margin-bottom:18px!important;
  }

  .ota-hero .ota-lead{
    margin-top:21px!important;
    font-size:17px!important;
    line-height:1.65!important;
  }

  .ota-hero .ota-actions{
    margin-top:24px!important;
  }

  .ota-hero .ota-hero-meta{
    margin-top:29px!important;
    padding-top:18px!important;
  }

  .ota-hero-photo{
    height:500px!important;
  }
}

@media (min-width:992px) and (max-width:1199px){
  .ota-hero{
    height:700px!important;
    min-height:700px!important;
    max-height:700px!important;
    padding:46px 0!important;
    overflow:hidden!important;
  }

  .ota-hero .ota-wrap{
    width:min(100% - 64px,1420px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .ota-hero-grid{
    height:100%!important;
    grid-template-columns:1fr .82fr!important;
    gap:42px!important;
    align-items:center!important;
  }

  .ota-hero .ota-h1{
    font-size:clamp(44px,4.4vw,54px)!important;
    line-height:1!important;
    letter-spacing:-.045em!important;
  }

  .ota-hero .ota-kicker{
    margin-bottom:16px!important;
  }

  .ota-hero .ota-lead{
    margin-top:18px!important;
    font-size:16px!important;
    line-height:1.62!important;
  }

  .ota-hero .ota-actions{
    margin-top:21px!important;
  }

  .ota-hero .ota-hero-meta{
    margin-top:25px!important;
    padding-top:15px!important;
  }

  .ota-hero-photo{
    height:460px!important;
  }
}

/* Od 991 px w dół pozostaje wcześniejszy, naturalny układ responsywny. */

