/* Homepage callback panel; independent of the slideshow and section navigation. */
.p51-callback{position:fixed;right:24px;top:50%;transform:translateY(-50%);z-index:1100;width:min(350px,calc(100vw - 32px));color:#fff;font-family:inherit}
.p51-callback[hidden],.p51-callback-tab[hidden]{display:none!important}
.p51-callback-card{padding:27px;border:1px solid #ffffff65;border-radius:18px;background:rgba(24,19,40,.82);backdrop-filter:blur(16px);box-shadow:0 12px 40px #0004;animation:p51-callback-in .45s ease-out}
@keyframes p51-callback-in{from{opacity:0;transform:translateX(-70px)}to{opacity:1;transform:translateX(0)}}
.p51-callback h2{color:#fff;font-size:24px;line-height:1.2;margin:0 24px 10px 0}.p51-callback p{font-size:15px;line-height:1.5;margin:0 0 14px}.p51-callback label{display:block;font-size:14px;margin:10px 0 4px;color:#fff}.p51-callback input{box-sizing:border-box;width:100%;min-width:0;background:#fffffff2;color:#222;border:1px solid #ddd;border-radius:7px;padding:10px 12px;font:inherit;font-size:16px}.p51-callback input:focus-visible{outline:3px solid #e784ce;outline-offset:2px}.p51-callback .p51-callback-note{font-size:11px;line-height:1.5;margin:12px 0;color:#e4deeb}.p51-callback-note a{color:inherit;text-decoration:underline}.p51-callback-close{position:absolute;top:10px;right:12px;border:0;background:transparent;color:white;font-size:25px;cursor:pointer;width:32px;height:32px}.p51-callback-submit,.p51-callback-tab{border:0;background:linear-gradient(100deg,#aa1c84,#663889);color:white;font:inherit;font-weight:600;cursor:pointer;border-radius:24px;padding:12px 24px}.p51-callback-submit{width:100%}.p51-callback-submit:disabled{opacity:.6;cursor:wait}.p51-callback-tab{position:fixed;right:16px;bottom:28px;z-index:1099;box-shadow:0 4px 18px #0003}.p51-callback .p51-callback-status{font-size:12px;min-height:18px;margin:9px 0 0}.p51-callback button:focus-visible{outline:3px solid #e784ce;outline-offset:3px}
@media(max-width:700px){.p51-callback{right:16px;top:auto;bottom:16px;transform:none;max-height:calc(100dvh - 100px);overflow:auto}.p51-callback-card{padding:22px}.p51-callback-tab{bottom:18px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.p51-callback-card{animation:none}}
/* Header and modal additions. */
.callback-header-slot{flex:1;display:flex;justify-content:center;min-width:180px}.callback-header-button{border:0;border-radius:24px;background:linear-gradient(100deg,#aa1c84,#663889);color:white;padding:10px 18px;font-family:inherit;font-weight:600;font-size:13px;line-height:1.3;white-space:nowrap;cursor:pointer}.site-header .social-links{margin-left:0}.p51-callback{transition:opacity .25s,translate .25s}.p51-callback.is-leaving{opacity:0;translate:90px 0;pointer-events:none}.callback-backdrop{position:fixed;inset:0;z-index:1199;background:#ffffffb8;backdrop-filter:blur(9px)}.callback-backdrop[hidden]{display:none}.p51-callback.is-modal{z-index:1200;left:50%;right:auto;top:50%;bottom:auto;transform:translate(-50%,-50%);max-height:calc(100dvh - 32px);overflow:auto}.hero-whatsapp{position:absolute;right:28px;bottom:48px;z-index:5;display:inline-flex;align-items:center;gap:9px;padding:10px 17px;border-radius:26px;background:#167a43;color:#fff;font-weight:600;font-size:14px;text-decoration:none;box-shadow:0 4px 15px #0003}.hero-whatsapp:hover{background:#116537;color:white}.hero-whatsapp:focus-visible,.callback-header-button:focus-visible{outline:3px solid #e784ce;outline-offset:3px}
@media(min-width:1151px){.site-header{gap:16px}.main-nav{flex-shrink:0}.callback-header-slot{margin:0 12px}.p51-callback:not(.is-modal){top:47%}}
@media(max-width:1150px){.callback-header-slot{flex:0 1 auto;min-width:0;margin-left:0}.callback-header-button{font-size:12px;padding:9px 12px}.site-header .social-links{display:none}}
@media(max-width:700px){.p51-callback:not(.is-modal){top:100px;bottom:auto;max-height:calc(100dvh - 130px);width:min(310px,calc(100vw - 32px))}.hero-whatsapp{right:16px;bottom:12px;font-size:12px;padding:8px 12px}.callback-header-button{font-size:11px;padding:8px}.site-header{gap:8px}.p51-callback h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.p51-callback{transition:none}}

/* Completed is not a busy state. */
.p51-callback-submit.is-complete:disabled{cursor:default;opacity:1;background:#31704e}
.callback-header-button{font-size:16px;padding:12px 24px;min-height:44px}
@media(min-width:1151px){
 .home-hero .hero-copy{position:absolute;top:var(--callback-copy-top,25%);left:3%;width:50%;margin-left:5vw}
 .p51-callback:not(.is-modal){top:var(--callback-hero-top,28%);transform:none}
}
@media(max-width:1150px){.callback-header-button{font-size:14px;padding:10px 16px}}
@media(max-width:700px){.callback-header-button{font-size:12px;padding:9px 10px}}
