body{margin:0}
a{text-decoration:none;box-sizing:border-box}
.btns a{flex:1 1 180px;max-width:360px;text-align:center}
.btns a,.nav-phone{white-space:nowrap}
@media (max-width:640px){.btns a{padding-left:20px !important;padding-right:20px !important;font-size:16px !important}.cta-card{padding:40px 24px !important}}
@media (max-width:640px){.nav-link{display:none !important}}
/* WhatsApp floating button */
.wa-fab{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));width:60px;height:60px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,0.25);z-index:1000}
.wa-fab:focus-visible{outline:3px solid #29265F;outline-offset:3px}
@media (max-width:480px){.wa-fab{right:16px}}
.gal-wrap{max-width:880px;margin:0 auto;position:relative}
.gal{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;border-radius:24px;box-shadow:0 12px 30px rgba(41,38,95,0.25);background:#FFFFFF;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.gal::-webkit-scrollbar{display:none}
.gal-track{display:flex}
.gal figure{margin:0;flex:0 0 100%;position:relative;scroll-snap-align:start}
.gal img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.gal figcaption{min-height:44px;box-sizing:border-box;display:flex;align-items:center;padding:0 104px 0 16px;background:#FFFFFF;color:#29265F;font-size:14px;font-weight:700}
.gal-btn{position:absolute;bottom:4px;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#E9E8F5;color:#29265F;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2}
.gal-btn:focus-visible{outline:3px solid #29265F;outline-offset:2px}
.warr{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media (max-width:640px){.warr{gap:12px}.warr>div{padding:18px !important;gap:10px !important}.warr>div>span:first-child{width:36px !important;height:36px !important}.warr>div>span:nth-child(2){font-size:16px !important}.warr>div>span:nth-child(3){font-size:14px !important}}
@media (max-width:340px){.warr{grid-template-columns:1fr}}
html{scroll-behavior:smooth}
:root{--accent:#29265F}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media (max-width:640px){header>div{flex-wrap:nowrap !important}.nav-phone{padding:10px 14px !important;font-size:14px !important;white-space:nowrap}}
