/* Footer layout and contact area. */
.rose-footer{position:relative;isolation:isolate;margin-top:0;padding:36px 0 12px;color:#fff;background:linear-gradient(90deg,#ffffff02 1px,transparent 1px),linear-gradient(#ffffff02 1px,transparent 1px),radial-gradient(ellipse at 95% 20%,#392065 0,transparent 60%),linear-gradient(135deg,var(--footer-bg,#191126),var(--footer-bg-end,#24173d));font-family:var(--font-body);background-size:48px 48px,48px 48px,auto,auto}
.rose-footer:before{content:'';position:absolute;z-index:0;right:0;bottom:0;width:min(640px,100%);height:min(360px,100%);background:url('../images/footer-circuit.svg') no-repeat right bottom;background-size:contain;opacity:var(--footer-circuit-opacity,.3);pointer-events:none}
.rose-footer>.shell{position:relative;z-index:1}





.rose-footer svg{display:block;flex-shrink:0;width:16px;height:16px}







.rose-footer-columns{display:grid;grid-template-columns:minmax(230px,1.15fr) minmax(0,.8fr) repeat(3,minmax(0,.75fr));gap:24px;padding-bottom:16px;align-items:start}
.rose-footer-contact{padding:14px;border:1px solid #c6b7e02b;border-radius:12px;background:linear-gradient(130deg,#ffffff0c,#ffffff03)}
.rose-footer-phone-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.rose-footer-contact-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid #b798f05c;border-radius:10px;background:#9a72ee24;color:#bda1f7}
.rose-footer-phone{display:block;font-family:var(--font-heading);font-size:19px;font-weight:800;line-height:1.3;color:#fff;overflow-wrap:anywhere}
.rose-footer-phone-row small{display:block;margin-top:3px;color:#c2b2d8;font-size:10px;line-height:1.4}
.rose-footer-contact-row{display:flex;align-items:center;gap:9px;margin:0;padding:7px 0;font-size:13px;font-weight:600;line-height:1.5;color:#e2d8ef;overflow-wrap:anywhere}
.rose-footer-contact-row:not(a){border-bottom:1px dashed #ffffff21}
.rose-footer-contact-row svg{color:#bca5f9}
.rose-footer-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.rose-footer-socials:empty{display:none}
.rose-footer-socials a{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eee8ff;color:#5932c9;font-size:12px;font-weight:800}
.rose-footer-socials a:hover{background:#fff}
.rose-footer-help{display:inline-flex;align-items:center;gap:12px;margin-top:10px;color:#ddd2ff;font-size:12px;font-weight:700}
.rose-footer-column h3{margin:0 0 8px;color:#fff;font:700 15px/1.4 var(--font-heading)}
.rose-footer-links,.rose-footer-policies{margin:0;padding:0;list-style:none}
.rose-footer-links li{border-bottom:1px dashed #ffffff21}
.rose-footer-links a{display:flex;align-items:baseline;gap:10px;padding:6px 0;color:#ddd4eb;font-size:13px;font-weight:600;line-height:1.45}
.rose-footer-links a:before{content:'';display:block;flex:0 0 auto;align-self:center;width:12px;height:1px;background:#a88ae9;transition:width .2s ease,background-color .2s ease}
.rose-footer-links a:hover:before,.rose-footer-links a:focus-visible:before{width:20px;background:#ddd2ff}
.rose-footer-links a:hover{color:#fff}
.rose-footer-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:42px;padding:9px 16px;border:1px solid #ac8fe85c;border-radius:30px;background:linear-gradient(110deg,#6941bc,#51318d)}
.rose-footer-bar nav{min-width:0}
.rose-footer-policies{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}
.rose-footer-policies a{color:#fff;font-size:13px;line-height:1.4;font-weight:600}
.rose-footer-policies a:hover{text-decoration:underline}
.rose-footer-policies .current-menu-item a{color:#e4d8ff;text-decoration:underline}
.rose-footer-payments{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;width:390px;max-width:42%;flex-shrink:0}
.rose-footer-payments:empty{display:none}
.rose-footer-payments>img{display:block;width:100%;max-width:100%;height:auto}
.rose-footer-payments span img{display:block;width:auto;max-width:56px;height:auto;max-height:17px}
.rose-footer-payments span{padding:3px 6px;border-radius:3px;background:#fff;color:#392252;font-size:9px;line-height:1.3}
.rose-footer-copyright{display:flex;justify-content:space-between;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid #ffffff14;color:#baaccf;font-size:11px;line-height:1.6}
.rose-footer a:focus-visible{outline:2px solid #c6adff;outline-offset:4px}
@media(max-width:980px){.rose-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.rose-footer-contact{grid-column:1/-1}.rose-footer-bar{align-items:flex-start;flex-direction:column;border-radius:16px}.rose-footer-payments{width:min(440px,100%);max-width:100%;justify-content:flex-start}}
@media(max-width:600px){.rose-footer{padding-top:26px;background-size:36px 36px,36px 36px,auto,auto}.rose-footer-columns{gap:22px 16px}.rose-footer-contact{grid-column:1/-1}.rose-footer-column h3{font-size:14px}.rose-footer-policies{gap:10px 14px}.rose-footer-copyright{flex-direction:column;gap:5px}}

@media(prefers-reduced-motion:reduce){.rose-footer-links a:before{transition:none}}

/* v0.13.41 — optional footer controls, leaving unset colors on the established palette. */
.rose-footer{padding-top:var(--footer-pad-top,36px);padding-bottom:var(--footer-pad-bottom,12px)}
.rose-footer{background-color:var(--footer-bg,#191126)}

.rose-footer .rose-footer-column h3{color:var(--footer-heading,#fff)}
.rose-footer .rose-footer-links a{color:var(--footer-link,#ddd4eb)}
.rose-footer .rose-footer-contact-row,.rose-footer .rose-footer-phone-row small{color:var(--footer-text,#e2d8ef)}
.rose-footer .rose-footer-brand{display:block;width:min(100%,var(--footer-logo-width,190px));margin:0 0 14px}
.rose-footer .rose-footer-brand img{display:block;width:100%;height:auto;max-height:90px;object-fit:contain;object-position:left center}
@media(max-width:600px){.rose-footer{padding-top:var(--footer-pad-top-mobile,26px)}}




/* v0.13.42 — payment methods belong in the copyright row, not the policy menu. */
.rose-footer-copyright{align-items:center}
.rose-footer-copyright .rose-footer-payments{width:min(390px,45%);max-width:45%;margin-left:auto;align-items:center}
.rose-footer-copyright .rose-footer-payments>img,
.rose-footer-copyright .rose-footer-payments>picture img{display:block;width:100%;height:auto;object-fit:contain;object-position:right center}
@media(max-width:600px){
 .rose-footer-copyright{align-items:flex-start}
 .rose-footer-copyright .rose-footer-payments{width:min(390px,100%);max-width:100%;margin-left:0;justify-content:flex-start}
 .rose-footer-copyright .rose-footer-payments>img{object-position:left center}
}


/* v0.13.43 — move socials to the footer menu bar and refine icon clarity. */
.rose-footer-socials{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:0}
.rose-footer-socials:empty{display:none}
.rose-footer-socials a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(180deg,#fff,#f2ebff);border:1px solid #dacaff;box-shadow:0 8px 18px #1b0b341f;color:#5d36cb;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease}
.rose-footer-socials a:hover,.rose-footer-socials a:focus-visible{transform:translateY(-1px);background:#fff;border-color:#eee2ff;box-shadow:0 10px 22px #1b0b3429;color:#4f2cc1}
.rose-footer-socials a svg{width:15px;height:15px}
.rose-footer-bar .rose-footer-socials{margin-left:auto;justify-content:flex-end;flex-shrink:0}
.rose-footer-bar nav + .rose-footer-socials{padding-left:16px;border-left:1px solid #ffffff2e}
@media(max-width:980px){.rose-footer-bar .rose-footer-socials{margin-left:0;justify-content:flex-start}.rose-footer-bar nav + .rose-footer-socials{padding-left:0;border-left:0;padding-top:2px}}


/* v0.13.45 — clearer and slightly larger social media icons in footer bar. */
.rose-footer-bar .rose-footer-socials{gap:12px}
.rose-footer-socials a{width:42px;height:42px;border-radius:999px;background:linear-gradient(180deg,#ffffff,#f7f2ff);border:1px solid #efe4ff;box-shadow:0 10px 22px #17092724, inset 0 1px 0 #ffffff;color:#5a33c8}
.rose-footer-socials a svg{width:18px;height:18px;stroke-width:2;shape-rendering:geometricPrecision}
.rose-footer-socials a:hover,.rose-footer-socials a:focus-visible{transform:translateY(-1px) scale(1.02);background:#fff;border-color:#ffffff;box-shadow:0 12px 24px #1709272e, inset 0 1px 0 #ffffff;color:#4d27bf}


/* v0.13.46 — authentic brand-shaped social glyphs; no remote icon requests. */
.rose-footer-bar .rose-footer-socials a{width:30px;height:30px;background:#fff;border:1px solid #ffffffd6;box-shadow:0 3px 10px #1b0b3426}
.rose-footer-bar .rose-footer-socials a svg.rose-social-brand-icon{display:block;width:15px;height:15px;stroke:none;fill:currentColor;overflow:visible}
.rose-footer-bar .rose-footer-socials a.rose-social-facebook{color:#1877f2}
.rose-footer-bar .rose-footer-socials a.rose-social-whatsapp{color:#25d366}
.rose-footer-bar .rose-footer-socials a.rose-social-linkedin{color:#0a66c2}
.rose-footer-bar .rose-footer-socials a.rose-social-youtube{color:#ff0033}
.rose-footer-bar .rose-footer-socials a.rose-social-x{color:#111}
.rose-footer-bar .rose-footer-socials a:hover{background:#fff;box-shadow:0 6px 15px #1b0b3438}

/* v0.13.57 — fixed vertical WhatsApp tab, powered by the saved Footer WhatsApp URL. */
.rose-whatsapp-side-tab{position:fixed;right:0;bottom:120px;z-index:49;display:inline-flex;align-items:center;justify-content:center;min-height:126px;padding:16px 10px;color:#fff;background:var(--purple,#6b3df4);border:1px solid #ffffff35;border-right:0;border-radius:9px 0 0 9px;box-shadow:0 7px 24px #1c0c3b32;text-decoration:none;font:700 12px/1.1 var(--font-body,Arial,sans-serif);letter-spacing:.07em;writing-mode:vertical-rl;transform:none;transition:background-color .18s ease,box-shadow .18s ease}
.rose-whatsapp-side-tab span{transform:rotate(180deg)}
.rose-whatsapp-side-tab:hover{background:var(--purple-hover,#572aca);color:#fff;box-shadow:0 9px 26px #1c0c3b44}
.rose-whatsapp-side-tab:focus-visible{outline:2px solid #fff;outline-offset:-4px}
@media(max-width:600px){.rose-whatsapp-side-tab{bottom:calc(86px + env(safe-area-inset-bottom,0px));min-height:105px;padding:12px 8px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.rose-whatsapp-side-tab{transition:none}}
