/* Springsan Global Footer V1.2 — all selectors are scoped, safe for every inner page. */
.spr-footer { background: #111; color: #f5f5f5; font-family: var(--spr-font-sans, 'Poppins', Arial, sans-serif); }
.spr-footer * { box-sizing: border-box; }
.spr-footer__top { padding: clamp(3.6rem, 4.7vw, 6.2rem) 0 clamp(2.7rem, 3.5vw, 4.2rem); }
.spr-footer__grid { align-items: flex-start; }
.spr-footer__logo { display: inline-flex; align-items: center; min-height: 74px; max-width: 180px; color: #49aee7; font-size: 1.55rem; text-decoration:none; }
.spr-footer__logo img { display: block; width: 150px; max-width:100%; height: auto; max-height: 90px; object-fit: contain; object-position: left center; }
.spr-footer__logo:hover { color: #49aee7; }
.spr-footer__contacts { margin: clamp(1.4rem, 2vw, 2rem) 0 0; max-width: 430px; font-style: normal; }
.spr-footer__contact-row { display: grid; grid-template-columns: 30px minmax(0,1fr); align-items:start; gap: 16px; padding: 13px 0 14px; border-bottom: 1px solid rgba(255,255,255,.13); color: #d4d4d4; font-size: .925rem; line-height: 1.7; }
.spr-footer__contact-row svg { width: 26px; height:26px; margin-top:3px; stroke: currentColor; stroke-width: 1.4; fill:none; stroke-linecap:round; stroke-linejoin:round; color: #f3f3f3; }
.spr-footer__contact-label { color:#e5e5e5; margin-right: .35rem; }
.spr-footer__contact-row a { color: inherit; text-decoration: none; overflow-wrap:anywhere; }
.spr-footer__contact-row a:hover { color: #43a6e2; }
.spr-footer__heading { margin: .45rem 0 clamp(1.35rem, 2vw, 2rem); color: #f7f7f7; font:600 1.18rem/1.35 var(--spr-font-sans,Arial,sans-serif); }
.spr-footer__links { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.49rem; }
.spr-footer__links li { min-width:0; margin:0; font-size:.91rem; line-height:1.55; }
.spr-footer__links li a, .spr-footer__links li span { display:inline-block; color:#cacaca; text-decoration:none; overflow-wrap:anywhere; transition: color .2s; }
.spr-footer__links a:hover, .spr-footer__links a:focus-visible { color:#4ba9e7; }
.spr-footer__bottom { border-top: 1px solid rgba(255,255,255,.10); }
.spr-footer__bottom-inner { min-height:94px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1.25rem; padding:1.25rem 0; }
.spr-footer__copyright { color:#bcbcbc; margin:0; font-size:.82rem; line-height:1.7; }
.spr-footer__socials { display:flex; gap:1rem; align-items:center; }
.spr-footer__social-link { display:inline-flex; align-items:center; justify-content:center; width:23px; height:25px; color:#f6f6f6; transition: color .2s, transform .2s; }
.spr-footer__social-link svg { width: 21px; height:21px; fill:currentColor; }
.spr-footer__social-link svg[fill="none"] { fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap:round; stroke-linejoin:round; }
.spr-footer__social-link:hover, .spr-footer__social-link:focus-visible { color:#42a9e7; transform:translateY(-2px); }
/* Shared modal: identical field names and iframe handler as original footer01.php. */
.spr-footer-modal{z-index: 99999;}
.spr-footer-modal .modal-dialog { max-width: 830px; padding: 12px; }
.spr-footer-modal .modal-content { border-radius:0; border:0; box-shadow:0 24px 65px rgba(0,0,0,.24); overflow:hidden; }
.spr-footer-modal__head { display:flex; justify-content:space-between; align-items:start; gap:1rem; padding:clamp(1.2rem,2.7vw,2.25rem) clamp(1.2rem,3vw,2.5rem) 0; }
.spr-footer-modal__head .btn-close { opacity:.65; margin:.4rem 0; flex:none; }
.spr-footer-modal__eyebrow { color:#6f7980; font-size:.71rem; font-weight:600; letter-spacing:.11em; margin:0 0 .5rem; }
.spr-footer-modal__head h2 { margin:0; font-size:clamp(1.6rem,2.6vw,2.3rem); font-weight:600; color:#141414; }
.spr-footer-modal__body { padding:1.25rem clamp(1.2rem,3vw,2.5rem) clamp(1.3rem,3vw,2.4rem); overflow:auto; max-height:calc(100dvh - 150px); }
.spr-footer-modal label { color:#353535; font-size:.81rem; font-weight:500; margin-bottom:.4rem; }
.spr-footer-modal label b { color:#b73434; }
.spr-footer-modal .form-control { border-radius:0; border:1px solid #dedede; padding:.7rem .85rem; min-height:44px; background:#fafafa; color:#171717; font-size:.88rem; box-shadow:none; }
.spr-footer-modal .form-control:focus { border-color:#57a9df; background:#fff; }
.spr-footer-modal textarea.form-control { resize:vertical; min-height:95px; }
.spr-footer-modal__submit { width:100%; min-height:48px; display:flex; justify-content:space-between; align-items:center; background:#111; color:white; border:1px solid #111; padding:.75rem 1.15rem; font-weight:600; font-size:.8rem; text-transform:uppercase; }
.spr-footer-modal__submit:hover { color:#fff; background:#267db4; border-color:#267db4; }
.spr-footer-modal__submit:disabled { opacity:.65; cursor:wait; }
.spr-footer-modal__errors { font-size:.77rem; line-height:1.7; color:#b43b31; }
.spr-footer-modal__errors span:not(:empty) { display:block; margin-bottom:.4rem; }
.spr-footer-modal__product:not([hidden]) { display:flex; gap:12px; align-items:center; padding:.4rem; border:1px solid #ececec; margin-bottom:1rem; }
.spr-footer-modal__product img { width:70px; height:70px; object-fit:contain; }
.spr-footer-modal__product span { color:#111; font-size:.85rem; }
@media (max-width:991.98px) {
 .spr-footer__top { padding:3.3rem 0 2.8rem; }
 .spr-footer__company { margin-bottom:.5rem; }
 .spr-footer__contacts { max-width:100%; }
 .spr-footer__nav-col { padding-top:.3rem; }
}
@media (max-width:575.98px) {
 .spr-footer__top { padding:2.6rem 0 2rem; }
 .spr-footer__logo img { width:132px; }
 .spr-footer__contacts { margin-top:1.25rem; }
 .spr-footer__contact-row { font-size:.83rem; gap:12px; grid-template-columns:24px minmax(0,1fr); }
 .spr-footer__contact-row svg { width:21px; height:21px; }
 .spr-footer__heading { font-size:1.02rem; margin:.2rem 0 1.1rem; }
 .spr-footer__links li { font-size:.78rem; }
 .spr-footer__bottom-inner { text-align:center; justify-content:center; flex-direction:column; gap:1rem; }
 .spr-footer__copyright { font-size:.72rem; }
 .spr-footer__socials { gap:1.15rem; }
 .spr-footer-modal__body { max-height:calc(100dvh - 100px); }
}
@media (prefers-reduced-motion:reduce) { .spr-footer__links a, .spr-footer__social-link {transition:none} }
