/* ======================================================================
   RAP’2010 — KONTAKT
   ====================================================================== */
body.rap2010-contact-template{margin:0!important;padding:0!important;background:#fff;color:var(--rap-text);overflow-x:hidden}
body.rap2010-contact-template .rap-page{background:#fff!important}
.rap-contact-main{display:block;width:100%;max-width:none!important;margin:0!important;padding:0!important;background:#fff}
.rap-contact-main h2,.rap-contact-main h3{font-family:"Barlow Condensed",Impact,"Arial Black",sans-serif}
.rap-contact-main svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.rap-contact-section-heading,.rap-contact-block-title,.rap-dark-section-heading{display:grid;grid-template-columns:minmax(30px,1fr) auto minmax(30px,1fr);align-items:center;gap:22px;text-align:center}
.rap-contact-section-heading>span,.rap-contact-block-title>span{height:1px;background:linear-gradient(90deg,transparent,rgba(227,6,19,.72))}
.rap-contact-section-heading>span:last-child,.rap-contact-block-title>span:last-child{background:linear-gradient(90deg,rgba(227,6,19,.72),transparent)}
.rap-contact-section-heading h2,.rap-contact-block-title h2{margin:0;color:var(--rap-text);font-size:1.55rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.035em}

/* Dane kontaktowe */
.rap-contact-overview{padding:42px 0 20px;background:#fff}
.rap-contact-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:25px}
.rap-contact-card{min-height:142px;display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start;padding:24px 20px;border:1px solid rgba(3,21,46,.12);border-radius:6px;background:linear-gradient(180deg,#fff,#fbfcfe);box-shadow:0 12px 28px rgba(3,21,46,.055);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.rap-contact-card:hover{transform:translateY(-3px);border-color:rgba(227,6,19,.23);box-shadow:0 18px 36px rgba(3,21,46,.10)}
.rap-contact-card-icon{display:grid;place-items:center;width:48px;height:48px;padding:12px;border-radius:50%;background:var(--rap-red);color:#fff;box-shadow:0 10px 22px rgba(227,6,19,.22)}
.rap-contact-card h3{margin:1px 0 13px;color:var(--rap-text);font-size:1rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.035em}
.rap-contact-card a,.rap-contact-card strong{display:block;color:var(--rap-text)!important;font-family:Montserrat,Arial,sans-serif;font-size:.83rem;font-weight:700;line-height:1.45}
.rap-contact-card p{margin:5px 0 0;color:var(--rap-muted);font-family:Montserrat,Arial,sans-serif;font-size:.68rem;font-weight:500;line-height:1.45}
.rap-contact-card ul{list-style:none;margin:0;padding:0}
.rap-contact-card li{position:relative;margin:0 0 6px;padding-left:14px;color:#4f5b71;font-family:Montserrat,Arial,sans-serif;font-size:.67rem;font-weight:600;line-height:1.4}
.rap-contact-card li:last-child{margin-bottom:0}
.rap-contact-card li::before{content:"";position:absolute;left:0;top:.53em;width:5px;height:5px;border-radius:50%;background:var(--rap-red)}

/* Składki + formularz */
.rap-contact-core{padding:25px 0 54px;background:#fff}
.rap-contact-core-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(560px,1.6fr);gap:28px;align-items:start}
.rap-contact-block-title{gap:14px;margin:0 0 18px}
.rap-contact-block-title h2{font-size:1.2rem}
.rap-membership-list{display:grid;gap:8px}
.rap-membership-item{display:grid;grid-template-columns:62px minmax(0,1fr);min-height:84px;overflow:hidden;border:1px solid rgba(3,21,46,.12);border-radius:5px;background:#fff;box-shadow:0 8px 20px rgba(3,21,46,.035)}
.rap-membership-icon{display:grid;place-items:center;padding:18px;background:linear-gradient(155deg,#061d42,#021126);color:#fff}
.rap-membership-item>div{padding:15px 16px}
.rap-membership-item h3{margin:0 0 7px;color:var(--rap-text);font-size:.86rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.025em}
.rap-membership-item p{margin:0;color:#566177;font-family:Montserrat,Arial,sans-serif;font-size:.66rem;font-weight:500;line-height:1.5}
.rap-membership-item strong{color:var(--rap-text);font-weight:750}

.rap-trial-form-panel{scroll-margin-top:110px;padding:28px 30px 22px;border:1px solid rgba(3,21,46,.12);border-radius:7px;background:linear-gradient(180deg,#fff 0%,#fcfdff 100%);box-shadow:0 17px 42px rgba(3,21,46,.075)}
.rap-trial-form-heading{text-align:center}
.rap-trial-form-heading .rap-kicker{margin-bottom:8px}
.rap-trial-form-heading h2{margin:0;color:var(--rap-red);font-size:1.55rem;font-weight:800;line-height:1.05;text-transform:uppercase;letter-spacing:.03em}
.rap-trial-form-heading p{max-width:610px;margin:10px auto 23px;color:#667086;font-family:Montserrat,Arial,sans-serif;font-size:.72rem;line-height:1.55}
.rap-form-message{margin:0 0 18px;padding:13px 15px;border-radius:4px;font-family:Montserrat,Arial,sans-serif;font-size:.72rem;font-weight:650;line-height:1.45}
.rap-form-message.is-success{border:1px solid rgba(32,139,77,.25);background:#eef9f2;color:#176738}
.rap-form-message.is-error{border:1px solid rgba(227,6,19,.22);background:#fff2f3;color:#9f0811}
.rap-trial-form{position:relative}
.rap-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 16px}
.rap-field{display:grid;gap:7px;min-width:0}
.rap-field.is-wide{grid-column:span 1}
.rap-field.is-full{grid-column:1/-1}
.rap-field>span{color:#27344c;font-family:Montserrat,Arial,sans-serif;font-size:.61rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.035em}
.rap-field b,.rap-check b{color:var(--rap-red)}
.rap-field input,.rap-field select,.rap-field textarea{width:100%;min-height:43px;padding:10px 13px;border:1px solid rgba(3,21,46,.16);border-radius:3px;background:#fff;color:var(--rap-text);font-family:Montserrat,Arial,sans-serif;font-size:.72rem;line-height:1.4;outline:none;transition:border-color .2s ease,box-shadow .2s ease}
.rap-field textarea{min-height:91px;resize:vertical}
.rap-field input::placeholder,.rap-field textarea::placeholder{color:#a1a8b5}
.rap-field input:focus,.rap-field select:focus,.rap-field textarea:focus{border-color:rgba(227,6,19,.65);box-shadow:0 0 0 3px rgba(227,6,19,.075)}
.rap-check{display:grid;grid-template-columns:17px minmax(0,1fr);gap:10px;align-items:start;margin-top:14px;color:#5a6579;font-family:Montserrat,Arial,sans-serif;font-size:.64rem;font-weight:500;line-height:1.5}
.rap-check input{width:16px;height:16px;margin:1px 0 0;accent-color:var(--rap-red)}
.rap-check a{color:var(--rap-red)!important;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.rap-trial-submit{width:100%;min-height:48px;margin-top:18px;border:0;border-radius:3px;background:linear-gradient(90deg,#ce0010 0%,#ef101d 52%,#d90010 100%);color:#fff;font-family:"Barlow Condensed",Impact,sans-serif;font-size:.92rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;box-shadow:0 12px 25px rgba(227,6,19,.22);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.rap-trial-submit:hover,.rap-trial-submit:focus-visible{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 16px 31px rgba(227,6,19,.29)}
.rap-trial-submit span{display:inline-block;margin-left:12px;transition:transform .2s ease}.rap-trial-submit:hover span{transform:translateX(4px)}
.rap-form-security{margin:10px 0 0;color:#8991a1;font-family:Montserrat,Arial,sans-serif;font-size:.59rem;text-align:center}
.rap-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* FAQ + godziny */
.rap-contact-faq-hours{padding:0 0 48px;background:#fff}
.rap-contact-secondary-grid{display:grid;grid-template-columns:290px minmax(0,1fr);gap:24px}
.rap-contact-hours{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-content:start;padding:25px 22px;border:1px solid rgba(3,21,46,.12);border-radius:6px;background:#fff;box-shadow:0 10px 27px rgba(3,21,46,.045)}
.rap-contact-hours-icon{width:48px;height:48px;padding:11px;border:1px solid rgba(3,21,46,.12);border-radius:50%;color:var(--rap-text)}
.rap-contact-hours h2{margin:7px 0 12px;color:var(--rap-text);font-size:1.15rem;font-weight:800;text-transform:uppercase}
.rap-contact-hours p{margin:0 0 8px;color:#58647a;font-family:Montserrat,Arial,sans-serif;font-size:.69rem;font-weight:550;line-height:1.5}
.rap-contact-hours p:first-of-type{color:var(--rap-text);font-weight:750}
.rap-contact-faq .rap-contact-block-title{margin-bottom:16px}
.rap-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}
.rap-faq-grid details{border:1px solid rgba(3,21,46,.12);border-radius:4px;background:#fff;overflow:hidden}
.rap-faq-grid summary{position:relative;padding:13px 42px 13px 15px;color:var(--rap-text);font-family:Montserrat,Arial,sans-serif;font-size:.66rem;font-weight:700;line-height:1.35;cursor:pointer;list-style:none}
.rap-faq-grid summary::-webkit-details-marker{display:none}
.rap-faq-grid summary::after{content:"+";position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--rap-red);font-size:1.05rem;font-weight:500}
.rap-faq-grid details[open] summary::after{content:"−"}
.rap-faq-grid details[open] summary{border-bottom:1px solid rgba(3,21,46,.08)}
.rap-faq-grid details p{margin:0;padding:13px 15px;color:#687287;font-family:Montserrat,Arial,sans-serif;font-size:.64rem;line-height:1.55}

/* Mapa */
.rap-contact-map{padding:0 0 50px;background:#fff}
.rap-contact-map .rap-contact-section-heading{margin-bottom:20px}
.rap-map-frame{position:relative;min-height:310px;overflow:hidden;border:1px solid rgba(3,21,46,.12);border-radius:7px;background:#e9edf1;box-shadow:0 15px 38px rgba(3,21,46,.075)}
.rap-map-frame iframe{display:block;width:100%;height:310px;border:0;filter:saturate(.78) contrast(.94) brightness(1.04)}
.rap-map-locations{position:absolute;z-index:2;left:18px;top:18px;width:min(315px,calc(100% - 36px));display:grid;gap:8px;padding:14px 15px;border:1px solid rgba(3,21,46,.11);border-radius:5px;background:rgba(255,255,255,.96);box-shadow:0 12px 27px rgba(3,21,46,.13);backdrop-filter:blur(6px)}
.rap-map-locations>div{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:center}
.rap-map-locations span{width:19px;height:19px;color:var(--rap-red)}
.rap-map-locations strong{color:#26344c;font-family:Montserrat,Arial,sans-serif;font-size:.64rem;font-weight:700;line-height:1.35}

/* Dlaczego warto */
.rap-join-benefits{position:relative;padding:37px 0 42px;overflow:hidden;background:linear-gradient(118deg,#03142e,#061d42 54%,#021126);color:#fff}
.rap-join-benefits::before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 0 20%,rgba(227,6,19,.12) 20.2% 20.4%,transparent 20.6% 78%,rgba(227,6,19,.11) 78.2% 78.45%,transparent 78.7%);opacity:.72;pointer-events:none}
.rap-dark-section-heading{position:relative;z-index:1;margin-bottom:26px}
.rap-dark-section-heading>span{height:1px;background:linear-gradient(90deg,transparent,rgba(227,6,19,.75))}.rap-dark-section-heading>span:last-child{background:linear-gradient(90deg,rgba(227,6,19,.75),transparent)}
.rap-dark-section-heading h2{margin:0;color:#fff;font-size:1.55rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.04em}
.rap-join-benefits-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.rap-join-benefits-grid article{display:grid;grid-template-columns:45px minmax(0,1fr);gap:14px;min-height:94px;padding:10px 25px;border-right:1px solid rgba(255,255,255,.16)}
.rap-join-benefits-grid article:last-child{border-right:0}
.rap-join-benefits-grid article>span{width:39px;height:39px;color:var(--rap-red)}
.rap-join-benefits-grid h3{margin:1px 0 8px;color:#fff;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.025em}
.rap-join-benefits-grid p{margin:0;color:rgba(255,255,255,.70);font-family:Montserrat,Arial,sans-serif;font-size:.61rem;line-height:1.5}

/* CTA */
.rap-contact-final-cta{position:relative;overflow:hidden;background:#03152e;color:#fff}
.rap-contact-final-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,21,46,.98) 0%,rgba(3,21,46,.92) 56%,rgba(3,21,46,.74) 100%),url('../images/cta-team.jpg') center 42%/cover no-repeat;opacity:.95}
.rap-contact-final-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 23%,rgba(227,6,19,.13) 23.2% 23.5%,transparent 23.7%)}
.rap-contact-final-inner{position:relative;z-index:1;min-height:174px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.rap-contact-final-inner h2{margin:8px 0 8px;color:#fff;font-size:2.6rem;font-weight:800;line-height:.95;text-transform:uppercase;font-style:italic;letter-spacing:-.012em}
.rap-contact-final-inner p{margin:0;color:rgba(255,255,255,.74);font-family:Montserrat,Arial,sans-serif;font-size:.75rem}
.rap-contact-final-inner .rap-btn{min-width:215px}

@media(max-width:1180px){
  .rap-contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rap-contact-core-grid{grid-template-columns:340px minmax(0,1fr)}
  .rap-join-benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 0}.rap-join-benefits-grid article:nth-child(2){border-right:0}.rap-join-benefits-grid article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}
}

@media(max-width:900px){
  .rap-contact-core-grid{grid-template-columns:1fr}.rap-membership-list{grid-template-columns:repeat(2,minmax(0,1fr))}.rap-membership-item:last-child{grid-column:1/-1}
  .rap-contact-secondary-grid{grid-template-columns:1fr}.rap-contact-hours{grid-template-columns:52px 1fr}
}

@media(max-width:650px){
  .rap-contact-section-heading,.rap-contact-block-title,.rap-dark-section-heading{grid-template-columns:24px minmax(0,auto) 24px;gap:12px}.rap-contact-section-heading h2,.rap-dark-section-heading h2{font-size:1.25rem}.rap-contact-block-title h2{font-size:1.05rem}
  .rap-contact-overview{padding:32px 0 15px}.rap-contact-cards{grid-template-columns:1fr;gap:11px;margin-top:20px}.rap-contact-card{min-height:0;padding:18px 16px;grid-template-columns:44px 1fr}.rap-contact-card-icon{width:42px;height:42px;padding:10px}
  .rap-contact-core{padding:20px 0 42px}.rap-membership-list{grid-template-columns:1fr}.rap-membership-item:last-child{grid-column:auto}.rap-membership-item{grid-template-columns:55px 1fr}.rap-membership-icon{padding:15px}.rap-membership-item>div{padding:14px}
  .rap-trial-form-panel{padding:23px 17px 18px}.rap-trial-form-heading h2{font-size:1.28rem}.rap-form-grid{grid-template-columns:1fr;gap:13px}.rap-field.is-full,.rap-field.is-wide{grid-column:auto}.rap-trial-submit{font-size:.83rem}
  .rap-contact-faq-hours{padding-bottom:38px}.rap-contact-hours{padding:20px 17px}.rap-faq-grid{grid-template-columns:1fr}
  .rap-contact-map{padding-bottom:38px}.rap-map-frame,.rap-map-frame iframe{height:365px;min-height:365px}.rap-map-locations{left:12px;top:12px;width:calc(100% - 24px)}
  .rap-join-benefits{padding:31px 0 35px}.rap-join-benefits-grid{grid-template-columns:1fr}.rap-join-benefits-grid article{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important;padding:16px 8px}.rap-join-benefits-grid article:last-child{border-bottom:0!important}
  .rap-contact-final-inner{min-height:210px;display:block;padding-top:36px;padding-bottom:36px}.rap-contact-final-inner h2{font-size:2.05rem}.rap-contact-final-inner .rap-btn{margin-top:22px;min-width:200px}
}


/* RAP’2010 v1.11.2 — lokalna CAPTCHA formularza */
.rap-captcha-field{position:relative;margin-top:2px;padding:14px 16px;border:1px solid rgba(227,6,19,.16);border-radius:4px;background:linear-gradient(180deg,rgba(227,6,19,.035),rgba(3,21,46,.018))}
.rap-captcha-field>span{font-size:.68rem!important;color:#39465c!important}
.rap-captcha-field>span strong{display:inline-block;margin:0 3px;color:var(--rap-red);font-family:"Barlow Condensed",Impact,sans-serif;font-size:1rem;font-weight:800;letter-spacing:.04em}
.rap-captcha-field input{max-width:220px;margin-top:8px;background:#fff!important}
@media(max-width:650px){.rap-captcha-field input{max-width:none}}
