.ama-services-page{overflow:clip}.ama-catalog-hero{background:#f1f3ee;padding:56px 0 64px}.ama-catalog-back{display:inline-block;margin-bottom:32px;color:#546058;text-decoration:underline;text-underline-offset:4px}.ama-catalog-hero h1{font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.08;letter-spacing:-.035em;max-width:950px;margin:18px 0 24px;color:#39423c}.ama-catalog-hero .ama-lead{max-width:740px}.ama-catalog-note{max-width:850px;color:#59645d;font-size:.95rem;line-height:1.6;margin:24px 0}.ama-catalog-search{max-width:740px;margin:28px 0}.ama-catalog-search label{display:block;font-weight:700;margin-bottom:10px}.ama-catalog-search>div{display:flex;gap:10px}.ama-catalog-search input{flex:1;min-width:0;border:1px solid #819085;background:#fff;border-radius:10px;padding:14px;font:inherit;color:#2d332f}.ama-catalog-search button{border:1px solid #546058;border-radius:10px;padding:12px 16px;background:#546058;color:#fff;font:inherit;cursor:pointer}.ama-catalog-search p{font-size:.9rem;color:#59645d;min-height:24px;margin:10px 0}.ama-category-nav{position:sticky;top:calc(var(--ama-nav-offset,100px) - 20px);z-index:72;display:flex;flex-wrap:nowrap;gap:8px;margin:24px -8px 48px;padding:8px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;border:1px solid rgb(217 223 218 / .86);border-radius:18px;background:linear-gradient(135deg,rgb(255 255 255 / .91),rgb(247 248 245 / .84));box-shadow:0 8px 24px rgb(38 48 41 / .08);-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15)}.ama-category-nav::-webkit-scrollbar{display:none}.ama-category-nav a{overflow-wrap:normal;word-break:normal;min-width:min-content;padding:10px 16px;min-height:44px;box-sizing:border-box;border:1px solid #c2cbc3;border-radius:28px;color:#39423c;text-decoration:none;font-size:.9rem;background:#fff}.ama-category-nav a:hover{background:#eef1ed}.ama-category-nav a.is-current-category{background:#546058;color:#fff;border-color:#546058;box-shadow:0 5px 16px rgb(57 66 60 / .12)}.ama-catalog-group{margin:0 0 42px;scroll-margin-top:110px}.ama-catalog-heading{display:flex;gap:20px;align-items:baseline;margin-bottom:16px}.ama-catalog-heading>span{color:#59645d;font-size:.85rem;font-weight:700}.ama-catalog-heading h3{font-size:clamp(1.5rem,3vw,2rem);margin:0;color:#39423c}.ama-catalog-items{border-top:1px solid #cbd3cc}.ama-service-detail{border-bottom:1px solid #cbd3cc;scroll-margin-top:110px}.ama-service-detail summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:22px 20px;font-weight:600;font-size:1.1rem;line-height:1.4}.ama-service-detail summary::-webkit-details-marker{display:none}.ama-service-toggle{font-size:1.5rem;font-weight:400;flex:none}.ama-service-detail[open]{background:#f7f8f5}.ama-service-detail[open] .ama-service-toggle{transform:rotate(45deg)}.ama-service-content{padding:0 24px 26px;display:grid;grid-template-columns:1.15fr 1fr;gap:36px}.ama-service-content dl{margin:0}.ama-service-content dt{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#546058;margin-top:18px}.ama-service-content dd{margin:6px 0 0;line-height:1.65}.ama-service-availability{background:#fff;border:1px solid #d9dfda;border-radius:14px;padding:22px;align-self:start;margin-top:18px}.ama-service-availability h4{margin:0 0 16px;font-size:1rem}.ama-service-availability p{font-size:.9rem;line-height:1.6;margin:12px 0}.ama-service-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px}.ama-service-links a{display:inline-flex;align-items:center;min-height:44px;color:#465149;text-decoration:underline;text-underline-offset:4px;font-weight:600;font-size:.9rem}.ama-catalog-branches{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ama-catalog-branches article{padding:30px;background:#fff;border:1px solid #d9dfda;border-radius:20px}.ama-catalog-branches h3{font-size:1.5rem;margin:0 0 14px}.ama-catalog-branches p{line-height:1.7}.ama-catalog-branches p a,.ama-catalog-sources a{color:#465149;text-decoration:underline}.ama-catalog-sources{font-size:.85rem;line-height:1.8;margin-top:24px}.ama-catalog-sources summary{cursor:pointer;min-height:44px}.ama-services-page [hidden]{display:none!important}.ama-services-page :focus-visible{outline:3px solid #2f6f4e;outline-offset:4px}@media(max-width:760px){.ama-service-content{grid-template-columns:1fr;gap:10px;padding:0 16px 22px}.ama-catalog-branches{grid-template-columns:1fr}.ama-catalog-hero{padding:32px 0 44px}.ama-service-detail summary{padding:20px 12px}.ama-catalog-branches article{padding:24px}}@media(max-width:620px){.ama-catalog-group,.ama-service-detail{scroll-margin-top:160px}.ama-catalog-search>div{flex-direction:column}.ama-catalog-search button{align-self:flex-start}.ama-catalog-heading{gap:12px}.ama-category-nav{gap:8px}.ama-catalog-hero h1{font-size:2.45rem}}

/* 01/10/2026 — reusable Stripe-inspired explainer pattern for all services. */
.ama-service-main{min-width:0}
.ama-service-main>.ama-kicker{margin:18px 0 12px}
.ama-explainer-30{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ama-explainer-30 article{position:relative;min-width:0;padding:18px;border:1px solid #d9dfda;border-radius:16px;background:#fff;transition:transform .18s ease,box-shadow .18s ease}
.ama-explainer-30 article:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgb(57 66 60 / .07)}
.ama-explainer-30 article>span{display:inline-grid;place-items:center;width:30px;height:30px;margin-bottom:10px;border-radius:50%;background:#e8eee7;color:#465149;font-size:.72rem;font-weight:900}
.ama-explainer-30 h4{margin:0 0 7px;color:#39423c;font-size:1rem}
.ama-explainer-30 p{margin:0;color:#59645d;line-height:1.55;font-size:.92rem}
.ama-service-how{margin-top:14px;padding:16px 18px;border-left:4px solid #a7b59f;border-radius:0 14px 14px 0;background:#eef1ed}
.ama-service-how h4{margin:0 0 6px;color:#39423c}
.ama-service-how p{margin:0;color:#526058;line-height:1.6}
.ama-service-related{margin-top:18px;padding:18px;border:1px solid #d9dfda;border-radius:16px;background:#faf7f2}
.ama-service-related>h4{margin:0 0 12px;color:#39423c}
.ama-service-related>div{display:grid;gap:8px}
.ama-service-related a{display:flex;flex-direction:column;gap:3px;min-height:44px;padding:10px 12px;border-radius:12px;background:#fff;color:#465149;text-decoration:none}
.ama-service-related a:hover{background:#e8eee7}
.ama-service-related a span{color:#59645d;font-size:.86rem;line-height:1.45}
@media(max-width:620px){.ama-explainer-30{grid-template-columns:1fr}}

.ama-30-trigger{display:inline-flex;align-items:center;justify-content:flex-start;gap:7px;min-height:44px;margin:8px 0 10px;padding:5px 8px 5px 0;border:0;background:transparent;color:#546058;font:inherit;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-align:left}
.ama-30-trigger>span{font-size:1rem;line-height:1;letter-spacing:0}
.ama-30-trigger:hover{text-decoration:underline;text-underline-offset:4px}
.ama-30-trigger.is-speaking{color:#39423c}
.ama-30-trigger.is-speaking>span{animation:ama-speech-pulse 1s ease-in-out infinite}
@keyframes ama-speech-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.16)}}
.ama-explainer-30 article.is-current{transform:translateY(-3px);border-color:#546058;box-shadow:0 12px 28px rgb(57 66 60 / .13);background:#f2e9e5}
@media(prefers-reduced-motion:reduce){.ama-explainer-30 article,.ama-30-trigger{transition:none!important}}

/* Distributore Mortari: il "piccolo segreto" vive dentro la quarta card, senza creare una quinta sezione. */
#servizio-distributore .ama-explainer-30 article:nth-child(4){position:relative;padding-right:5rem;background:linear-gradient(135deg,#fff 0%,#faf7f2 100%);border-color:#d6c49d}
#servizio-distributore .ama-explainer-30 article:nth-child(4)::after{content:"😉";position:absolute;right:1.1rem;top:50%;font-size:2.15rem;line-height:1;transform:translateY(-50%);transform-origin:50% 70%;animation:ama-distributore-wink 2.6s ease-in-out infinite}
@keyframes ama-distributore-wink{0%,100%{transform:translateY(-50%) rotate(0deg) scale(1)}35%{transform:translateY(-58%) rotate(-7deg) scale(1.06)}55%{transform:translateY(-50%) rotate(7deg) scale(.98)}72%{transform:translateY(-55%) rotate(0deg) scale(1.08)}}
@media(max-width:620px){#servizio-distributore .ama-explainer-30 article:nth-child(4){padding-right:4.2rem}#servizio-distributore .ama-explainer-30 article:nth-child(4)::after{right:.8rem;font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){#servizio-distributore .ama-explainer-30 article:nth-child(4)::after{animation:none}}

/* 01/10/2026 — animazioni esplicative dei servizi, caricate solo quando la scheda è aperta. */
.ama-service-side{min-width:0;align-self:start}
.ama-service-visual{position:relative;width:100%;aspect-ratio:4/3;margin:18px 0 0;overflow:hidden;border:1px solid #c8d2cb;border-radius:18px;background:#eef1ed;box-shadow:0 18px 38px rgb(57 66 60 / .10)}
.ama-service-visual::before{content:"♡";position:absolute;inset:0;z-index:1;display:grid;place-items:center;color:#a7b59f;font-size:3.6rem;font-weight:300;opacity:.6;transition:opacity .2s ease}
.ama-service-visual.is-loaded::before{opacity:0}
.ama-service-gif{position:absolute!important;inset:0!important;z-index:2!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;visibility:visible!important;opacity:1!important;transition:opacity .22s ease;image-rendering:auto}
.ama-service-gif[src],.ama-service-visual.is-loaded .ama-service-gif{opacity:1!important}
.ama-service-visual:has(.ama-service-gif[src])::before{opacity:0}

/* 02/10/2026 — compact open service: keep title + key information + animation in view. */
.ama-service-detail[open] summary{padding:14px 16px;font-size:1.02rem;line-height:1.25}
.ama-service-detail[open] .ama-service-content{grid-template-columns:minmax(0,1.22fr) minmax(270px,.78fr);gap:22px;padding:0 18px 18px}
.ama-service-detail[open] .ama-service-main>.ama-kicker{margin:10px 0 8px;font-size:.72rem}
.ama-service-detail[open] .ama-30-trigger{min-height:38px;margin:0 0 8px;padding:7px 12px;font-size:.8rem}
.ama-service-detail[open] .ama-explainer-30{gap:8px}
.ama-service-detail[open] .ama-explainer-30 article{padding:12px 13px;border-radius:13px}
.ama-service-detail[open] .ama-explainer-30 article>span{width:26px;height:26px;margin-bottom:6px}
.ama-service-detail[open] .ama-explainer-30 h4{margin-bottom:4px;font-size:.93rem}
.ama-service-detail[open] .ama-explainer-30 p{font-size:.84rem;line-height:1.42}
.ama-service-detail[open] .ama-service-how{margin-top:8px;padding:11px 14px}
.ama-service-detail[open] .ama-service-how h4{margin-bottom:4px;font-size:.95rem}
.ama-service-detail[open] .ama-service-how p{font-size:.86rem;line-height:1.45}
.ama-service-detail[open] .ama-service-related{margin-top:10px;padding:12px}
.ama-service-detail[open] .ama-service-related>h4{margin-bottom:8px;font-size:.95rem}
.ama-service-detail[open] .ama-service-related>div{gap:5px}
.ama-service-detail[open] .ama-service-related a{min-height:38px;padding:7px 10px;font-size:.86rem}
.ama-service-detail[open] .ama-service-related a span{font-size:.8rem;line-height:1.35}
.ama-service-detail[open] .ama-service-availability{margin-top:8px;padding:14px 16px}
.ama-service-detail[open] .ama-service-availability h4{margin-bottom:9px;font-size:.95rem}
.ama-service-detail[open] .ama-service-availability p{margin:8px 0;font-size:.84rem;line-height:1.45}
.ama-service-detail[open] .ama-service-links{gap:4px 14px;margin-top:10px}
.ama-service-detail[open] .ama-service-links a{min-height:38px;font-size:.82rem}
.ama-service-detail[open] .ama-service-visual{width:min(100%,360px);margin:10px auto 0;border-radius:15px;box-shadow:0 12px 28px rgb(57 66 60 / .09)}
@media(min-width:761px) and (max-height:820px){.ama-service-detail[open] .ama-service-content{gap:16px;padding-bottom:14px}.ama-service-detail[open] summary{padding-block:11px}.ama-service-detail[open] .ama-service-visual{width:min(100%,320px)}.ama-service-detail[open] .ama-explainer-30 article{padding:10px 11px}.ama-service-detail[open] .ama-service-availability{padding:11px 13px}}
@media(max-width:760px){.ama-service-detail[open] .ama-service-content{grid-template-columns:1fr;gap:10px;padding:0 14px 18px}.ama-service-detail[open] summary{padding:14px 12px}.ama-service-side{display:grid;grid-template-columns:1fr;gap:10px}.ama-service-visual,.ama-service-detail[open] .ama-service-visual{width:min(100%,420px);margin:4px auto 0}}
@media(prefers-reduced-motion:reduce){.ama-service-gif{display:block;transition:none}.ama-service-visual::before{transition:none}}

/* 03/10/2026 — share each service directly via WhatsApp or email. */
.ama-service-share{margin-top:14px;padding-top:13px;border-top:1px solid #e1e6e2}
.ama-service-share__label{display:block;margin-bottom:9px;color:#59645d;font-size:.75rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.ama-service-share__actions{display:flex;flex-wrap:wrap;gap:8px}
.ama-service-share__button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 12px;border:1px solid #c9d2cb;border-radius:999px;background:#fff;color:#465149;text-decoration:none!important;font-size:.82rem;font-weight:800;line-height:1}
.ama-service-share__button:hover{border-color:#87958b;background:#f4f7f3}
.ama-service-share__button--whatsapp{color:#315c42}
.ama-service-share__button--mail{color:#4b5666}
.ama-service-share__button svg{display:block;flex:0 0 auto}
.ama-service-share__button:focus-visible{outline:3px solid #2f6f4e;outline-offset:3px}
@media(max-width:520px){.ama-service-share__actions{display:grid;grid-template-columns:1fr 1fr}.ama-service-share__button{width:100%;padding-inline:8px}}

/* 03/10/2026 — desktop handoff: continue the same service on a phone via on-demand QR. */
.ama-phone-handoff{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:13px;border-top:1px solid #e1e6e2}
.ama-phone-handoff__button{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 13px;border:1px solid #c9d2cb;border-radius:999px;background:linear-gradient(145deg,#fff,#f4f7f3);color:#465149;font-size:.82rem;font-weight:850;line-height:1;cursor:pointer;box-shadow:inset 0 1px 0 rgb(255 255 255 / .9);transition:transform .14s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
.ama-phone-handoff__button:hover{border-color:#87958b;background:#fff;box-shadow:0 7px 18px rgb(38 48 41 / .08)}
.ama-phone-handoff__button:focus-visible{outline:3px solid #172d21;outline-offset:3px}
.ama-phone-handoff__button svg{display:block;width:18px;height:18px;flex:0 0 18px}
.ama-phone-handoff__hint{margin:0;color:#59645d;font-size:.76rem;line-height:1.35}
.ama-qr-dialog{position:fixed;left:50%;top:50%;z-index:1405;width:min(430px,calc(100vw - 28px));max-width:none;margin:0;padding:0;border:0;border-radius:24px;background:transparent;color:#344039;box-shadow:none;transform:translate(-50%,-50%)}.ama-qr-dialog:not([open]){display:none}
.ama-qr-dialog::backdrop{background:rgb(27 34 29 / .42);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.ama-qr-dialog__panel{position:relative;padding:24px;border:1px solid rgb(255 255 255 / .66);border-radius:24px;background:linear-gradient(145deg,rgb(255 255 255 / .96),rgb(238 243 239 / .91));box-shadow:inset 0 1px 0 rgb(255 255 255 / .95),0 24px 70px rgb(25 32 27 / .24);-webkit-backdrop-filter:blur(22px) saturate(1.25);backdrop-filter:blur(22px) saturate(1.25)}
.ama-qr-dialog__close{-webkit-appearance:none;appearance:none;position:absolute;top:13px;right:13px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #cbd3cc;border-radius:50%;background:#fff;color:#465149;font-size:1.35rem;line-height:1;cursor:pointer}
.ama-qr-dialog__kicker{margin:0 44px 5px 0;color:#59645d;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.ama-qr-dialog h2{margin:0 44px 8px 0;font-size:1.35rem;line-height:1.18;color:#39423c}
.ama-qr-dialog__copy{margin:0;color:#5d6861;font-size:.88rem;line-height:1.55}
.ama-qr-dialog__service{margin:6px 0 0;color:#39423c;font-weight:850}
.ama-qr-dialog__code{display:grid;place-items:center;width:248px;min-height:248px;margin:20px auto 16px;padding:14px;border:1px solid #d7ded8;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgb(38 48 41 / .08)}
.ama-qr-dialog__code canvas,.ama-qr-dialog__code img,.ama-qr-dialog__code svg{display:block!important;max-width:100%;height:auto!important}
.ama-qr-dialog__loading{color:#59645d;font-size:.82rem;font-weight:800;text-align:center}
.ama-qr-dialog__status{min-height:21px;margin:0 0 12px;color:#59645d;font-size:.79rem;line-height:1.4;text-align:center}
.ama-qr-dialog__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:9px}
.ama-qr-dialog__actions button{min-height:40px;padding:8px 13px;border:1px solid #c9d2cb;border-radius:999px;background:#fff;color:#465149;font-weight:850;cursor:pointer}
.ama-qr-dialog__actions button:hover{background:#eef2ed}
.ama-qr-dialog__actions button.is-done{background:#e8eee7;border-color:#94a198;color:#364d3d}
@media(max-width:899px){.ama-phone-handoff,.ama-qr-dialog{display:none!important}}
@media(max-width:520px){.ama-qr-dialog__panel{padding:20px}.ama-qr-dialog__code{width:min(232px,100%);min-height:232px}}
@media(prefers-reduced-motion:reduce){.ama-phone-handoff__button{transition:none!important}}
@media print{.ama-phone-handoff,.ama-qr-dialog{display:none!important}}

/* 02/10/2026 — F.I.T. NatrixLab: elenco alimenti estratto nel sito, senza collegare il PDF sorgente. */
.ama-fit-foods{margin-top:10px;border:1px solid #d7ded8;border-radius:14px;background:#fff;overflow:hidden}
.ama-fit-foods>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:10px 13px;cursor:pointer;list-style:none;color:#546058;font-size:.86rem;font-weight:900;text-decoration:underline;text-underline-offset:3px}
.ama-fit-foods>summary::-webkit-details-marker{display:none}
.ama-fit-foods>summary:hover{background:#eef2ed}
.ama-fit-foods>summary span{flex:0 0 auto;text-decoration:none;font-size:1rem}
.ama-fit-foods-panel{max-height:470px;padding:14px 15px 16px;overflow:auto;border-top:1px solid #e1e6e2;background:#fafbf9}
.ama-fit-foods-panel>p{margin:0 0 13px;color:#5d6861;font-size:.83rem;line-height:1.5}
.ama-fit-foods-list{columns:4;column-gap:28px;margin:0;padding-left:1.55rem}
.ama-fit-foods-list li{break-inside:avoid;margin:0 0 5px;padding-left:2px;color:#465149;font-size:.82rem;line-height:1.35}
.ama-service-clinical-note{margin-top:10px;padding:12px 14px;border-left:4px solid #9a7426;border-radius:0 12px 12px 0;background:#fff8e9;color:#5b5d58;font-size:.83rem;line-height:1.5}
.ama-service-clinical-note strong{color:#39423c}
@media(max-width:980px){.ama-fit-foods-list{columns:3}}
@media(max-width:760px){.ama-fit-foods-list{columns:2}.ama-fit-foods-panel{max-height:420px}}
@media(max-width:520px){.ama-fit-foods-list{columns:1}.ama-fit-foods-panel{max-height:390px}}


/* 04/10/2026 — booking links restored inside every service detail. */
.ama-service-links .ama-service-booking-link{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:40px;
 padding:9px 13px;
 border:1px solid #546058;
 border-radius:999px;
 background:#546058;
 color:#fff!important;
 text-decoration:none!important;
 font-weight:850;
 line-height:1.15;
}
.ama-service-links .ama-service-booking-link:hover{background:#465149;border-color:#465149}
@media(max-width:620px){
 .ama-service-links .ama-service-booking-link{flex:1 1 100%;width:100%;text-align:center}
}


/* 08/10/2026 — redesign point 7: search recovery and category navigation. */
.ama-search-empty{margin:18px 0 28px;padding:20px;border:1px dashed #aab7ad;border-radius:18px;background:#fbfcfa;color:#526058}
.ama-search-empty p{margin:0;line-height:1.55}
.ama-search-empty__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.ama-search-empty__actions button,.ama-search-empty__actions a{
 display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;border:1px solid #546058;border-radius:999px;
 background:#fff;color:#465149;font:750 .84rem/1.2 inherit;text-decoration:none;cursor:pointer
}
.ama-search-empty__actions a{background:#546058;color:#fff}
.ama-search-empty__actions :is(button,a):focus-visible{outline:3px solid #2f6f4e;outline-offset:3px}
.ama-category-nav a[hidden]{display:none!important}


/* 13/10/2026 — category anchor headings must remain below sticky main header AND category rail on desktop. */
@media(min-width:761px){
 body.ama-site .ama-services-page section.ama-catalog-group[id]{
  /* Reserve room for the global 2-row header and sticky category rail. */
  scroll-margin-top:calc(max(var(--ama-nav-offset,185px),185px) + 155px)!important;
 }
}

/* 08/10/2026 — safe pre-release rendering performance pass.
   Keep all service content in the DOM for search/accessibility, but skip paint/layout
   work for off-screen cards until the browser approaches them. */
@supports (content-visibility:auto){
 .ama-services-page .ama-service-detail{
  content-visibility:auto;
  contain-intrinsic-size:auto 760px;
 }
 .ama-services-page .ama-catalog-group{
  content-visibility:auto;
  contain-intrinsic-size:auto 1200px;
 }
}
.ama-services-page img[loading="lazy"]{content-visibility:auto}


/* 09/10/2026 — compact service detail, preserving every block and the animated service GIF.
   Desktop: explainer + animation share the first row; availability/share use the full width below.
   This removes the previous dead column without deleting or hiding information. */
@media(min-width:761px){
 .ama-services-page .ama-service-detail[open]{
  margin:8px 0 14px;border:1px solid #d8dfd9;border-radius:24px;background:#f8faf7;
  box-shadow:0 12px 32px rgb(45 58 50/.07);overflow:hidden
 }
 .ama-services-page .ama-service-detail[open]>summary{
  padding:13px 18px;border-bottom:1px solid #e1e6e2;background:rgba(255,255,255,.72)
 }
 .ama-services-page .ama-service-detail[open] .ama-service-content{
  display:grid;
  grid-template-columns:minmax(0,1.34fr) minmax(330px,.76fr);
  grid-template-areas:"main side";
  grid-template-rows:auto;
  gap:12px 18px;padding:14px 16px 16px;align-items:start
 }
 .ama-services-page .ama-service-detail[open] .ama-service-main{grid-area:main;min-width:0}
 .ama-services-page .ama-service-detail[open] .ama-service-main>.ama-kicker{margin:0 0 8px}
 .ama-services-page .ama-service-detail[open] .ama-explainer-30{
  grid-template-columns:repeat(2,minmax(0,1fr));gap:8px
 }
 .ama-services-page .ama-service-detail[open] .ama-explainer-30 article{
  min-height:0;padding:10px 11px;border-radius:14px
 }
 .ama-services-page .ama-service-detail[open] .ama-explainer-30 article>span{width:24px;height:24px;margin-bottom:6px}
 .ama-services-page .ama-service-detail[open] .ama-explainer-30 h4{font-size:.87rem;margin-bottom:4px}
 .ama-services-page .ama-service-detail[open] .ama-explainer-30 p{font-size:.79rem;line-height:1.36}
 .ama-services-page .ama-service-detail[open] .ama-service-how{margin-top:8px;padding:10px 12px}
 .ama-services-page .ama-service-detail[open] .ama-service-how p{font-size:.82rem;line-height:1.42}
 .ama-services-page .ama-service-detail[open] .ama-service-related{margin-top:9px;padding:10px 11px}
 .ama-services-page .ama-service-detail[open] .ama-service-related>h4{margin-bottom:6px;font-size:.84rem}
 .ama-services-page .ama-service-detail[open] .ama-service-related>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .ama-services-page .ama-service-detail[open] .ama-service-related a{min-height:0;padding:7px 8px}
 .ama-services-page .ama-service-detail[open] .ama-service-visual{
  display:block!important;width:100%;max-width:430px;aspect-ratio:4/3;
  margin:2px auto 0;align-self:start;border-radius:16px
 }
 .ama-services-page .ama-service-detail[open] .ama-service-gif{display:block;width:100%;height:100%;object-fit:cover}
 .ama-services-page .ama-service-detail[open] .ama-service-side{
  grid-area:side;display:grid;grid-template-columns:1fr;gap:10px;align-content:start;min-width:0
 }
 .ama-services-page .ama-service-detail[open] .ama-service-availability{
  margin:0;padding:12px 14px
 }
 .ama-services-page .ama-service-detail[open] .ama-service-links{
  display:flex;flex-wrap:wrap;gap:5px 12px;margin-top:8px
 }
 .ama-services-page .ama-phone-handoff,.ama-services-page .ama-service-share{margin-top:8px;padding-top:8px}
}
@media(min-width:761px) and (max-width:1040px){
 .ama-services-page .ama-service-detail[open] .ama-service-content{
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:12px
 }
 .ama-services-page .ama-service-detail[open] .ama-service-visual{max-width:380px}
}
@media(prefers-reduced-motion:reduce){
 /* Respect the OS preference: the visual remains present, but the animated GIF is intentionally suppressed. */
 .ama-services-page .ama-service-visual{display:block!important}
}

/* Mobile is a list first; an opened item becomes a self-contained horizontal-detail page. */
@media(max-width:760px){
 .ama-services-page .ama-catalog-group{margin-bottom:26px;content-visibility:auto;contain-intrinsic-size:auto 760px}
 .ama-services-page .ama-catalog-heading{align-items:center;margin-bottom:8px}
 .ama-services-page .ama-catalog-heading>span{
  writing-mode:horizontal-tb!important;transform:none!important;
  min-width:28px;font-size:.68rem
 }
 .ama-services-page .ama-catalog-heading h3{
  writing-mode:horizontal-tb!important;transform:none!important;
  font-size:1.16rem!important;line-height:1.18!important
 }
 .ama-services-page .ama-catalog-items{
  display:grid;gap:7px;border-top:0
 }
 .ama-services-page .ama-service-detail{
  border:1px solid #d8dfd9!important;border-radius:16px!important;background:#fff!important;
  box-shadow:0 5px 16px rgb(45 58 50/.045);overflow:hidden;scroll-margin-top:126px
 }
 .ama-services-page .ama-service-detail>summary{
  min-height:48px;padding:10px 12px!important;gap:10px!important;
  font-size:.90rem!important;line-height:1.25!important;background:#fff
 }
 .ama-services-page .ama-service-detail>summary span{
  writing-mode:horizontal-tb!important;text-orientation:mixed!important;transform:none!important
 }
 .ama-services-page .ama-service-toggle{font-size:1.18rem!important}
 .ama-services-page .ama-service-detail[open]{
  border-color:#aebbb1!important;border-radius:20px!important;
  box-shadow:0 14px 34px rgb(38 50 42/.10)
 }
 .ama-services-page .ama-service-detail[open]>summary{
  padding:12px 14px!important;border-bottom:1px solid #e1e6e2;background:#f5f8f4
 }
 .ama-services-page .ama-service-detail[open] .ama-service-content{
  display:grid!important;grid-template-columns:1fr!important;gap:9px!important;
  padding:11px 12px 14px!important
 }
 .ama-services-page .ama-service-main,
 .ama-services-page .ama-service-side,
 .ama-services-page .ama-service-main *,
 .ama-services-page .ama-service-side *{
  writing-mode:horizontal-tb!important;text-orientation:mixed!important;transform:none
 }
 .ama-services-page .ama-service-detail[open] .ama-service-main>.ama-kicker{
  margin:0 0 6px!important;font-size:.66rem!important;min-height:36px!important
 }
 .ama-services-page .ama-explainer-30{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important
 }
 .ama-services-page .ama-explainer-30 article{
  min-height:0!important;padding:10px!important;border-radius:13px!important
 }
 .ama-services-page .ama-explainer-30 article>span{width:22px;height:22px;margin-bottom:5px;font-size:.62rem}
 .ama-services-page .ama-explainer-30 h4{font-size:.82rem;margin-bottom:4px}
 .ama-services-page .ama-explainer-30 p{font-size:.75rem;line-height:1.35}
 .ama-services-page .ama-service-how{margin-top:7px;padding:9px 11px}
 .ama-services-page .ama-service-how h4{font-size:.82rem;margin-bottom:3px}
 .ama-services-page .ama-service-how p{font-size:.76rem;line-height:1.4}
 .ama-services-page .ama-service-related{margin-top:7px;padding:10px}
 .ama-services-page .ama-service-related>h4{font-size:.78rem;margin-bottom:6px}
 .ama-services-page .ama-service-related a{padding:7px 8px;font-size:.76rem}
 .ama-services-page .ama-service-related a span{font-size:.70rem}
 .ama-services-page .ama-service-side{gap:8px!important}
 .ama-services-page .ama-service-detail[open] .ama-service-availability{margin:0!important;padding:11px!important;border-radius:13px}
 .ama-services-page .ama-service-detail[open] .ama-service-availability h4{font-size:.84rem;margin-bottom:6px}
 .ama-services-page .ama-service-detail[open] .ama-service-availability p{font-size:.74rem;line-height:1.38;margin:5px 0}
 .ama-services-page .ama-service-visual,
 .ama-services-page .ama-service-detail[open] .ama-service-visual{
  width:min(100%,330px)!important;max-height:190px!important;margin:1px auto 0!important;overflow:hidden
 }
 .ama-services-page .ama-service-gif{max-height:190px!important;object-fit:cover!important}
 .ama-services-page .ama-service-links{gap:5px!important;margin-top:7px!important}
 .ama-services-page .ama-service-links a{min-height:34px!important;font-size:.72rem!important}
 .ama-services-page .ama-service-share,.ama-services-page .ama-phone-handoff{margin-top:7px!important;padding-top:7px!important}
 .ama-services-page .ama-phone-handoff__hint{display:none!important}
}
@media(max-width:380px){
 .ama-services-page .ama-explainer-30{grid-template-columns:1fr!important}
 .ama-services-page .ama-service-detail>summary{font-size:.86rem!important}
}
/* 12 October 2026 — no empty desktop cavity in any expanded service.
   No content, GIF, buttons, QR, share, booking or spoken explanations removed. */
@media(min-width:900px){
 .ama-services-page .ama-service-detail[open]{content-visibility:visible!important;contain-intrinsic-size:none!important;height:auto!important;min-height:0!important}
 .ama-services-page .ama-service-detail[open] .ama-service-content{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-areas:"main" "side"!important;grid-auto-rows:min-content!important;
  align-items:start!important;gap:12px!important;padding:14px 18px 18px!important;
  min-height:0!important;height:auto!important
 }
 .ama-services-page .ama-service-detail[open] .ama-service-main{grid-area:main!important;min-width:0!important}
 .ama-services-page .ama-service-detail[open] .ama-explainer-30{grid-template-columns:repeat(4,minmax(0,1fr))!important}
 .ama-services-page .ama-service-detail[open] .ama-service-side{
  grid-area:side!important;display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(240px,.75fr)!important;
  grid-template-areas:"availability visual"!important;
  align-items:start!important;gap:14px!important;min-width:0!important
 }
 .ama-services-page .ama-service-detail[open] .ama-service-availability{grid-area:availability!important;align-self:start!important}
 .ama-services-page .ama-service-detail[open] .ama-service-visual{
  grid-area:visual!important;align-self:start!important;width:100%!important;
  max-width:none!important;min-height:0!important;margin:0!important;aspect-ratio:4/3!important
 }
}
@media(min-width:761px) and (max-width:899px){
 .ama-services-page .ama-service-detail[open]{content-visibility:visible!important;contain-intrinsic-size:none!important;min-height:0!important}
}



/* 08/10/2026 — mobile services hardening: never compress human-readable text vertically. */
@media(max-width:760px){
 .ama-services-page{max-width:100%!important;overflow-x:clip!important}
 .ama-services-page .ama-category-nav{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  margin:14px 0 24px!important;padding:6px!important;gap:6px!important;
  overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important
 }
 .ama-services-page .ama-category-nav::-webkit-scrollbar{display:none!important}
 .ama-services-page .ama-category-nav a{
  flex:0 0 auto!important;width:auto!important;min-width:max-content!important;max-width:none!important;
  white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;
  writing-mode:horizontal-tb!important;text-orientation:mixed!important;
  min-height:38px!important;padding:7px 11px!important;border-radius:12px!important;font-size:.78rem!important
 }
 .ama-services-page .ama-catalog-heading{display:flex!important;flex-wrap:wrap!important;min-width:0!important}
 .ama-services-page .ama-catalog-heading h3,
 .ama-services-page .ama-catalog-heading>span,
 .ama-services-page .ama-service-detail summary,
 .ama-services-page .ama-service-detail summary span{
  writing-mode:horizontal-tb!important;text-orientation:mixed!important;word-break:normal!important;overflow-wrap:break-word!important
 }
 .ama-services-page .ama-service-detail>summary{display:flex!important;min-width:0!important}
 .ama-services-page .ama-service-detail>summary>span:first-child{min-width:0!important;flex:1 1 auto!important}
}


/* 09/10/2026 — mobile QA: keep speech progress horizontal and legible. */
.ama-services-page .ama-speech-progress{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 flex:0 0 auto!important;min-width:34px!important;width:auto!important;
 padding:2px 7px!important;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;line-height:1!important
}

/* F05 / 17-10-2026: comfortable 44px touch targets in service details.
   Keep the existing wording, category horizontal rail, desktop and booking links. */
@media(max-width:760px){
 .ama-services-page .ama-category-nav a{min-height:44px!important;display:inline-flex!important;align-items:center!important}
 .ama-services-page .ama-service-links a{min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important}
 .ama-services-page .ama-service-detail[open] .ama-service-related a{min-height:44px!important;justify-content:center!important}
 .ama-services-page .ama-service-share__button{min-height:44px!important}
 .ama-services-page .ama-service-detail[open] .ama-30-trigger{min-height:44px!important}
}
/* F07 WCAG 2.2 AA: contact links remain readable when a secondary card has a dark background. */
.ama-services-page .ama-catalog-branches article p a:not(.ama-button){background:#fff!important;color:#314239!important;border-radius:6px;padding:4px 7px;display:inline-block;min-height:28px;box-sizing:border-box}

/* F07 / WCAG 2.2 SC 2.4.11: keyboard focus on long mobile Services lists.
   Reserve real sticky header clearance and accurate intrinsic height for closed details.
   Tested in disposable Chromium at 320/390/430 (3x each) without masking failed tests. */
@media(max-width:760px){
 html:has(body.ama-site.ama-sticky-nav .ama-services-page){
  scroll-padding-top:calc(var(--ama-nav-offset,220px) + 64px)!important;
 }
 body.ama-site.ama-sticky-nav .ama-services-page .ama-service-detail>summary{
  scroll-margin-top:calc(var(--ama-nav-offset,220px) + 64px)!important;
 }
 @supports(content-visibility:auto){
  .ama-services-page .ama-service-detail:not([open]){
   contain-intrinsic-size:auto 62px!important;
  }
 }
}


