/* Ferrum Theme Builder footer - hooks are the fwf-* global classes. */
.elementor-location-footer:has(.fwf-footer){background:#080808;}
.fwf-footer{background:#080808;color:#fff;padding:6rem max(3rem,calc((100% - 104rem)/2)) 2.5rem!important;font-family:'Roboto',sans-serif;overflow:clip;}
.elementor-location-footer .fwf-footer .e-div-block-base{padding:0;}
.fwf-footer a{color:inherit;text-decoration:none;transition:color .25s;}
.fwf-footer a:hover{color:#07d9e6;}
.fwf-footer a:focus-visible{outline:2px solid #07d9e6;outline-offset:4px;}
.fwf-label{font-size:.72rem;font-weight:500;letter-spacing:.14em;color:#07d9e6;margin-bottom:1.25rem!important;}

/* Contact panel: shown on every page, so the homepage has no separate contact section. */
.fwf-panel{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,4vw,4.5rem);align-items:start;margin-bottom:6rem!important;padding:clamp(2rem,4.5vw,4.5rem)!important;border-radius:28px;overflow:hidden!important;background:#07d9e6;color:#080808;scroll-margin-top:120px;}
.fwf-panel::after{content:'';position:absolute;left:-6rem;bottom:-7rem;width:24rem;aspect-ratio:1;background:url('/wp-content/uploads/2026/11/w-okregu-czarny-sygnet.svg') center/contain no-repeat;opacity:.07;animation:fwf-spin 80s linear infinite;pointer-events:none;}
.fwf-panel > *{position:relative;z-index:1;}
.fwf-intro .fwf-label{color:#080808;}
.fwf-intro .fwf-label::before{content:'';display:inline-block;width:1.75rem;height:1px;margin-right:.8rem;vertical-align:middle;background:currentColor;}
.fwf-intro h2{font-family:'Cormorant Garamond',serif!important;font-weight:400;font-size:clamp(2.8rem,5vw,5.6rem);line-height:.98;letter-spacing:-.025em;color:#080808;margin-bottom:1.75rem!important;}
.fwf-intro > p:not(.fwf-label){max-width:30rem;font-size:1.02rem;line-height:1.7;color:#080808cc;}
.fwf-person{display:flex!important;align-items:center;gap:1.25rem;margin-top:2.25rem!important;}
.fwf-person > *{width:auto;}
.elementor-location-footer .fwf-avatar{flex:none;width:6.5rem!important;height:6.5rem;border-radius:50%!important;overflow:hidden!important;background:#080808;box-shadow:0 0 0 4px #07d9e6,0 0 0 5px #08080840,0 .75rem 1.5rem #08080833;}
.fwf-avatar img{display:block;width:100%!important;height:100%;object-fit:cover;object-position:50% 0;transform:scale(1.18);transform-origin:50% 8%;}
.fwf-person p:first-child{margin-bottom:.2rem;font-size:.68rem;font-weight:500;letter-spacing:.14em;opacity:.6;}
.fwf-person p:last-child{font-size:.95rem;line-height:1.45;color:#080808;}
.fwf-person b{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:500;}
.fwf-person a{color:#080808;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px;}
.fwf-next{display:flex!important;flex-direction:column;gap:.6rem;margin-top:1.75rem!important;padding:1.25rem 1.4rem!important;border-radius:16px;background:#08080814;}
.fwf-next p{display:flex;align-items:flex-start;gap:.75rem;font-size:.92rem;line-height:1.5;color:#080808;}
.fwf-next p:first-child{font-size:.68rem;font-weight:500;letter-spacing:.14em;opacity:.6;}
.fwf-next span{display:grid;place-items:center;flex:none;width:1.5rem;height:1.5rem;border-radius:50%;background:#080808;color:#07d9e6;font-size:.72rem;font-weight:500;}
.fwf-details{display:flex!important;flex-direction:column;margin-top:2.5rem;border-top:1px solid #08080833;}
.fwf-details p{padding:1rem 0;border-bottom:1px solid #08080833;font-size:.95rem;}
.fwf-details span{display:block;margin-bottom:.25rem;font-size:.68rem;font-weight:500;letter-spacing:.14em;opacity:.6;}
.fwf-details a{font-family:'Cormorant Garamond',serif!important;font-size:1.6rem!important;line-height:1.2;color:#080808!important;}
.fwf-details a:hover{color:#080808;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px;}

/* Form: dark card, services as toggle chips, underline fields. */
:is(.elementor-location-footer,.fwl-audit) .fwf-form{display:flex!important;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:1.25rem;padding:clamp(1.5rem,3vw,2.75rem)!important;border-radius:20px;background:#080808;color:#fff;box-shadow:0 2rem 4rem #0803;}
.fwf-step{display:flex!important;align-items:center;gap:.75rem;font-size:1.05rem;font-weight:500;}
.fwf-step span{display:grid;place-items:center;flex:none;width:2rem;height:2rem;border:1px solid #07d9e6;border-radius:50%;color:#07d9e6;font-size:.72rem;letter-spacing:.04em;}
.fwf-form .fwf-step:not(:first-child){margin-top:1rem;}
.fwf-chips{display:flex!important;flex-wrap:wrap;gap:.5rem;}
.fwf-chip{width:auto!important;}
.elementor-location-footer .fwf-chip input{position:absolute;width:1px!important;height:1px!important;opacity:0;margin:0;pointer-events:none;}
.elementor-location-footer .fwf-chip label{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.05rem;border:1px solid #ffffff33;border-radius:999px;color:#fff;font-size:.85rem;line-height:1.2;cursor:pointer;user-select:none;transition:background .25s,border-color .25s,color .25s,transform .25s;}
.elementor-location-footer .fwf-chip label:hover{border-color:#07d9e6;transform:translateY(-2px);}
.elementor-location-footer .fwf-chip input:checked + label{background:#07d9e6;border-color:#07d9e6;color:#080808;}
.elementor-location-footer .fwf-chip input:checked + label::before{content:'✓';font-weight:500;}
.elementor-location-footer .fwf-chip input:focus-visible + label{outline:2px solid #07d9e6;outline-offset:3px;}
.fwf-fields{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem 1.5rem;}
.fwf-field{display:flex!important;flex-direction:column;gap:.4rem;}
.fwf-field:last-child{grid-column:1/-1;}
:is(.elementor-location-footer,.fwl-audit) .fwf-field label{font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#ffffff99;}
:is(.elementor-location-footer,.fwl-audit) .fwf-field :is(input,textarea){width:100%;height:auto;padding:.6rem 0;border:0;border-bottom:1px solid #ffffff33;border-radius:0;background:transparent;color:#fff;font:400 1rem/1.5 'Roboto',sans-serif;outline:none;transition:border-color .25s;}
:is(.elementor-location-footer,.fwl-audit) .fwf-field textarea{min-height:5.5rem;resize:vertical;}
:is(.elementor-location-footer,.fwl-audit) .fwf-field :is(input,textarea)::placeholder{color:#ffffff59;}
:is(.elementor-location-footer,.fwl-audit) .fwf-field :is(input,textarea):focus{border-bottom-color:#07d9e6;}
.fwf-consent{display:flex!important;align-items:flex-start;gap:.75rem;margin-top:.5rem;}
.fwf-consent > *{width:auto;}
:is(.elementor-location-footer,.fwl-audit) .fwf-consent input{appearance:none;-webkit-appearance:none;flex:none;width:1.15rem!important;height:1.15rem!important;margin:.1rem 0 0;border:1px solid #ffffff66;border-radius:5px;background:transparent;clip-path:none;opacity:1;cursor:pointer;transition:background .2s,border-color .2s;}
:is(.elementor-location-footer,.fwl-audit) .fwf-consent input:checked{background:#07d9e6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23080808' stroke-width='2'/%3E%3C/svg%3E") center/80% no-repeat;border-color:#07d9e6;}
:is(.elementor-location-footer,.fwl-audit) .fwf-consent input:focus-visible{outline:2px solid #07d9e6;outline-offset:3px;}
:is(.elementor-location-footer,.fwl-audit) .fwf-consent label{font-size:.78rem;line-height:1.55;color:#ffffff99;cursor:pointer;}
:is(.elementor-location-footer,.fwl-audit) .fwf-submit{align-self:flex-start;margin-top:.5rem;padding:1.1rem 1.8rem!important;border:0;border-radius:20px!important;background:#07d9e6!important;color:#080808!important;font:500 .95rem/1.2 'Roboto',sans-serif!important;cursor:pointer;transition:background .25s,transform .25s;}
:is(.elementor-location-footer,.fwl-audit) .fwf-submit:hover{background:#fff!important;transform:translateY(-3px);}
:is(.elementor-location-footer,.fwl-audit) .fwf-submit:focus-visible{outline:2px solid #fff;outline-offset:3px;}
:is(.elementor-location-footer,.fwl-audit) .fwf-status{padding:1rem 1.25rem;border-radius:12px;font-size:.92rem;text-align:left;}
:is(.elementor-location-footer,.fwl-audit) .e-form-success-message-base.fwf-status{background:#07d9e61f;color:#07d9e6;}
:is(.elementor-location-footer,.fwl-audit) .e-form-error-message-base.fwf-status{background:#ff6b6b1f;color:#ff9b9b;}

.fwf-grid{display:grid!important;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:3rem;}
.fwf-col > img,.fwf-col > a{display:block;width:10rem!important;margin-bottom:1.75rem!important;}
.fwf-col img{width:10rem!important;height:auto;}
.fwf-col > p:not(.fwf-label):not(.fwf-links){max-width:22rem;font-size:.92rem;line-height:1.7;color:#ffffffa6;}
.fwf-links{display:flex!important;flex-direction:column;gap:.75rem;font-size:.95rem;}
.fwf-links span{color:#ffffffa6;}
.fwf-bottom{display:flex!important;flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;margin-top:5rem;padding-top:2rem!important;border-top:1px solid #ffffff1f;font-size:.8rem;color:#ffffff80;}
.fwf-bottom > *{width:auto;}
/* Seamless join: no theme gap or white sub-pixel seam between the homepage and the footer. */
body.page-id-36 .ct-container-full{padding-bottom:0!important;}
body.page-id-36 .elementor-36 > .e-con{background:#080808!important;}
@keyframes fwf-spin{to{transform:rotate(360deg)}}
@media(max-width:1024px){
.fwf-footer{padding:4.5rem 2rem 2rem!important;}
.fwf-panel{grid-template-columns:1fr;margin-bottom:4.5rem!important;}
.fwf-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.fwf-grid > :first-child{grid-column:1/-1;}
}
@media(max-width:767px){
.fwf-footer{padding:3.5rem 1.25rem 1.5rem!important;}
.fwf-panel{border-radius:20px;margin-bottom:3.5rem!important;scroll-margin-top:92px;}
.fwf-fields{grid-template-columns:1fr;}
:is(.elementor-location-footer,.fwl-audit) .fwf-submit{align-self:stretch;}
.fwf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 1.5rem;}
.fwf-grid > :last-child{grid-column:1/-1;}
.fwf-bottom{margin-top:3rem;flex-direction:column;}
}
@media(prefers-reduced-motion:reduce){.fwf-panel::after{animation:none;}.fwf-footer *{transition:none!important;}}
