.article-hero-bg{position:relative;height:clamp(320px,38vh,460px);min-height:0;overflow:hidden;background:#dfeaf5}
.article-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(6,20,35,.18));pointer-events:none}
.article-hero-picture,.article-hero-picture img{display:block;width:100%;height:100%}
.article-hero-picture{position:absolute;inset:0}
.article-hero-picture img{object-fit:cover;object-position:center}
.article-main-layout>.article-sidebar{position:static!important;top:auto;right:auto;z-index:auto;width:auto;max-height:none;overflow:visible;overscroll-behavior:auto;scrollbar-width:auto}
@media (min-width:1100px){.article-main-layout>.article-sidebar{position:sticky!important;top:138px;align-self:start;width:320px;max-height:none;overflow:visible;overscroll-behavior:auto;scrollbar-width:auto}}
.ao-service-detail-copy h1{max-width:900px;min-height:2.08em;margin-bottom:20px;font-size:clamp(46px,4.8vw,68px);line-height:1.04;letter-spacing:-.018em;text-wrap:balance}
.ao-appointment-rail{position:fixed;top:55%;left:0;z-index:88;transform:translateY(-50%)}
.ao-appointment-rail summary{position:relative;z-index:2;display:flex;width:48px;min-height:154px;align-items:center;justify-content:center;gap:9px;border:0;border-radius:0 14px 14px 0;background:#042c53;padding:15px 11px;color:#fff;box-shadow:0 12px 32px rgba(4,44,83,.24);cursor:pointer;list-style:none}
.ao-appointment-rail summary::-webkit-details-marker{display:none}
.ao-appointment-rail summary span{font-size:12px;font-weight:500;letter-spacing:.05em;white-space:nowrap;writing-mode:vertical-rl;transform:rotate(180deg)}
.ao-appointment-rail summary i{font-size:17px}
.ao-appointment-rail-panel{position:absolute;top:50%;left:100%;width:270px;border:1px solid rgba(24,95,165,.14);border-radius:0 16px 16px 0;background:#fff;padding:20px;box-shadow:0 18px 50px rgba(4,44,83,.18);opacity:0;pointer-events:none;transform:translate(-18px,-50%);transition:opacity .2s ease,transform .2s ease}
.ao-appointment-rail[open] .ao-appointment-rail-panel,.ao-appointment-rail:focus-within .ao-appointment-rail-panel{opacity:1;pointer-events:auto;transform:translate(0,-50%)}
.ao-appointment-rail-panel strong{display:block;margin-bottom:7px;color:#042c53;font-family:"Cormorant Garamond",serif;font-size:24px;font-weight:500;line-height:1.1}
.ao-appointment-rail-panel p{margin:0 0 14px;color:#64748b;font-size:13px;line-height:1.6}
.ao-appointment-rail-panel a{display:flex;min-height:42px;align-items:center;justify-content:center;gap:7px;margin-top:8px;border-radius:8px;padding:10px 13px;font-size:12px;font-weight:500}
.ao-appointment-whatsapp{background:#25d366;color:#fff}
.ao-appointment-contact{border:1px solid #185fa5;color:#185fa5}
.ao-services-section .ao-service-grid{align-items:stretch}
.ao-services-section .ao-service-card{height:100%}
.ao-reviews-section .ao-review-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,32%);grid-template-columns:none;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;padding:8px 4px 20px;scroll-padding-inline:4px;scroll-snap-type:inline mandatory;scrollbar-width:thin;scrollbar-color:#378add rgba(24,95,165,.1)}
.ao-reviews-section .ao-review-grid::-webkit-scrollbar{height:8px}
.ao-reviews-section .ao-review-grid::-webkit-scrollbar-track{border-radius:999px;background:rgba(24,95,165,.1)}
.ao-reviews-section .ao-review-grid::-webkit-scrollbar-thumb{border-radius:999px;background:#378add}
.ao-reviews-section .ao-review-card{height:100%;scroll-snap-align:start}
@media (min-width:1100px){.ao-services-section .ao-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:768px){.ao-appointment-rail>.ao-appointment-rail-panel{display:block!important;opacity:1;pointer-events:auto;transform:translate(0,-50%)}
}
@media (max-width:1099.98px){.ao-service-detail-copy h1{min-height:0;font-size:clamp(42px,7vw,62px)}
.ao-reviews-section .ao-review-grid{grid-auto-columns:minmax(280px,48%)}
}
@media (max-width:1099.98px){.article-main-layout>.article-sidebar{position:static!important;width:auto;max-height:none;overflow:visible}
}
@media (max-width:767.98px){.article-hero-bg{height:220px;min-height:220px}
.ao-service-detail-copy h1{min-height:0;margin-bottom:16px;font-size:clamp(38px,10vw,50px);line-height:1.06}
.ao-appointment-rail{top:auto;bottom:84px;transform:none}
.ao-appointment-rail summary{width:auto;min-width:48px;min-height:48px;gap:8px;border-radius:0 12px 12px 0;padding:11px 13px}
.ao-appointment-rail summary span{font-size:11px;letter-spacing:.02em;writing-mode:horizontal-tb;transform:none}
.ao-appointment-rail-panel{top:auto;bottom:0;width:min(276px,calc(100vw - 54px));border-radius:0 14px 14px 0;transform:translate(-18px,0)}
.ao-appointment-rail[open] .ao-appointment-rail-panel,.ao-appointment-rail:focus-within .ao-appointment-rail-panel{transform:translate(0,0)}
.ao-reviews-section .ao-review-grid{grid-auto-columns:minmax(270px,84vw)}
}
@media (prefers-reduced-motion:reduce){.ao-appointment-rail-panel{transition:none}
}
