/* Contacto e marcações — Ricky Barber Shop; sem dependências externas. */
.ricky-quick-contact{position:fixed;right:clamp(16px,3vw,28px);bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:11px;font-family:Arial,Helvetica,sans-serif;pointer-events:none}
.ricky-quick-contact>*{pointer-events:auto}
.ricky-float-nudge{color:#1d1711;background:#f3e2b8;border:1px solid #b58b49;border-radius:12px;padding:10px 15px;font-size:14px;font-weight:800;box-shadow:0 8px 24px #0003;animation:rickyNudge 5.5s ease-in-out infinite}
.ricky-quick-contact.is-expanded .ricky-float-nudge{display:none}
.ricky-float-options{display:none;flex-direction:column;align-items:stretch;gap:8px;margin-bottom:1px}
.ricky-quick-contact.is-expanded .ricky-float-options{display:flex}
.ricky-float-option{display:flex;align-items:center;justify-content:flex-start;gap:11px;color:#171512!important;background:#f7f1e8;border:1px solid #c5a46d;border-radius:28px;min-height:52px;padding:11px 18px;font-size:15px;font-weight:800;line-height:1.35;text-decoration:none!important;box-shadow:0 9px 24px #0004;white-space:nowrap;cursor:pointer}
.ricky-float-option svg{height:21px;width:21px;flex:none;fill:none;stroke:#8b602d;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.ricky-float-option:hover,.ricky-float-option:focus-visible{background:#fff;border-color:#8b602d}
.ricky-float-trigger{height:62px;width:62px;border:2px solid #17120c;border-radius:50%;display:grid;place-items:center;background:#c7a061;color:#1b1711;box-shadow:0 0 0 3px #d7b9805c,0 9px 25px #0006;cursor:pointer;transition:background .15s,transform .15s}
.ricky-float-trigger:hover{background:#e5c17c;transform:translateY(-2px)}
.ricky-float-trigger svg{width:29px;height:29px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ricky-float-trigger:focus-visible,.ricky-float-option:focus-visible,.ricky-booking-modal button:focus-visible{outline:3px solid #efc781;outline-offset:3px}
@keyframes rickyNudge{0%,17%,36%,100%{transform:translateY(0);box-shadow:0 8px 24px #0003}24%{transform:translateY(-5px);box-shadow:0 7px 24px #b58b4980}29%{transform:translateY(0)}}
.ricky-booking-modal{position:fixed;inset:0;overflow:hidden;max-width:min(1080px,calc(100vw - 32px));width:100%;max-height:min(860px,calc(100dvh - 30px));height:calc(100dvh - 40px);padding:0;border:1px solid #a3875e;border-radius:14px;background:#f6f3ee;color:#1a1713;box-shadow:0 20px 70px #0007}
.ricky-booking-modal::backdrop{background:#0b0909d9}
.ricky-booking-head{display:flex;justify-content:space-between;align-items:center;background:#171512;color:#fff;padding:15px 18px;gap:15px}
.ricky-booking-head h2{font:500 clamp(18px,3vw,24px) Georgia,'Times New Roman',serif;margin:0;color:#fff}
.ricky-booking-close{background:#c7a061;border:0;border-radius:50%;width:43px;height:43px;cursor:pointer;flex:none;color:#14110e;font-size:26px;line-height:1}
.ricky-booking-modal iframe{display:block;width:100%;height:calc(100% - 123px);border:0;background:#fff}
.ricky-booking-help{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 18px;min-height:56px;background:#f6f3ee;font-size:13px}
.ricky-booking-help a{color:#694614;text-decoration:underline;font-weight:700}
.home-team-banner--facade{height:auto;max-width:1120px;background:#111;overflow:visible}
.home-team-banner--facade img{display:block;width:100%;height:auto;object-fit:contain;filter:none}
.home-team-banner--facade:after{background:linear-gradient(0deg,#0b0909dd,transparent 45%);pointer-events:none}
.home-team-banner--facade .home-team-banner-caption{bottom:clamp(20px,4vw,46px)}
.home-ricky-profile{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,74px);align-items:center;max-width:1010px;margin:auto}
.home-ricky-profile-photo{background:#1b1916;border:1px solid #b89969;overflow:hidden}
.home-ricky-profile-photo img{display:block;width:100%;height:auto;object-fit:contain;filter:none}
.home-ricky-profile-copy h3{font:500 clamp(30px,4vw,45px)/1.12 Georgia,'Times New Roman',serif;margin:0 0 22px;color:#1c1916}
.home-ricky-profile-copy p{color:#514b44;font-size:clamp(16px,1.45vw,19px);line-height:1.85;margin:0 0 18px}
.home-ricky-profile-copy .button{margin-top:16px;display:inline-flex;text-decoration:none}
.ricky-contact-choices{display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px}
.ricky-contact-choices .button{cursor:pointer}
@media(max-width:700px){
 .home-team-banner--facade{width:100%;max-height:none;aspect-ratio:auto;overflow:visible}
 .home-team-banner--facade img{height:auto;max-height:none;object-fit:contain}
 .home-team-banner--facade:after{display:none}
 .home-team-banner--facade .home-team-banner-caption{position:static;display:flex;align-items:flex-start;gap:8px;flex-direction:column;padding:21px 22px;background:#111}
 .home-team-banner--facade .home-team-banner-caption strong{text-align:left;font-size:clamp(20px,5vw,27px);line-height:1.24}
 .home-ricky-profile{grid-template-columns:minmax(0,1fr);max-width:560px;gap:22px}
 .home-ricky-profile-photo{max-width:420px;margin:auto}
 .ricky-booking-modal{max-width:100vw;width:100vw;max-height:100dvh;height:100dvh;border-radius:0;border:0}
 .ricky-booking-head{padding:12px 16px}
 .ricky-booking-modal iframe{height:calc(100% - 125px)}
 .ricky-booking-help{padding:9px 14px}
 .ricky-quick-contact{right:calc(15px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px))}
}
@media(prefers-reduced-motion:reduce){.ricky-float-nudge{animation:none}.ricky-float-trigger{transition:none}}
