.psl-app,
.psl-app * ,
.psl-app *::before,
.psl-app *::after{box-sizing:border-box}
.psl-app{--psl-bg:#f5f7fb;--psl-surface:#ffffff;--psl-surface-soft:#f8fafc;--psl-border:#d7e0ea;--psl-border-strong:#b9c5d3;--psl-text:#142132;--psl-text-soft:#536173;--psl-muted:#6c7a8e;--psl-primary:#0f766e;--psl-primary-strong:#115e59;--psl-primary-soft:#e8f6f4;--psl-urgent:#c2410c;--psl-urgent-soft:#fff1e8;--psl-shadow:0 16px 40px rgba(15,23,42,.08);--psl-radius:24px;--psl-radius-sm:16px;background:linear-gradient(180deg,#f7fafc 0%,#f4f7fb 100%);color:var(--psl-text);font:500 16px/1.5 "Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
.psl-app body{margin:0}
.psl-app a{color:inherit}
.psl-app button,.psl-app input,.psl-app textarea,.psl-app select{font:inherit}
.psl-app img{max-width:100%;display:block}
.psl-app .material-symbols-rounded{font-variation-settings:'FILL' 1,'wght' 500,'GRAD' 0,'opsz' 24}
.psl-app .psl-page{max-width:1440px;margin:0 auto;padding:18px 18px 0}
.psl-app .psl-main{padding:24px 0 40px}
.psl-app .psl-skip-link{position:absolute;left:16px;top:-80px;background:#111827;color:#fff;padding:12px 14px;border-radius:12px;text-decoration:none;z-index:80;transition:top .18s ease}
.psl-app .psl-skip-link:focus{top:16px}
.psl-app :focus-visible{outline:3px solid #0f766e;outline-offset:2px}
.psl-app .psl-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;color:var(--psl-primary-strong);font-size:13px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}
.psl-app .psl-alert{margin:14px 0;padding:14px 16px;border-radius:18px;font-weight:800}
.psl-app .psl-alert--success{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}
.psl-app .psl-alert--error{background:#fff1f2;color:#9f1239;border:1px solid #fecdd3}

.psl-app .psl-header{position:sticky;top:0;z-index:40;padding-bottom:14px;background:linear-gradient(180deg,rgba(245,247,251,.97) 0%,rgba(245,247,251,.92) 76%,rgba(245,247,251,0) 100%);backdrop-filter:blur(16px)}
.psl-app .psl-header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:12px 16px;border:1px solid rgba(185,197,211,.65);border-radius:28px;background:rgba(255,255,255,.85);box-shadow:0 14px 40px rgba(15,23,42,.07)}
.psl-app .psl-header__brand{text-decoration:none;display:flex;align-items:center;gap:14px;min-width:0}
.psl-app .psl-header__logo{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,#0f766e,#14b8a6);display:grid;place-items:center;color:#fff;font-size:22px;flex-shrink:0;overflow:hidden}
.psl-app .psl-header__logo img{width:100%;height:100%;object-fit:cover}
.psl-app .psl-header__brand-copy{display:grid;gap:2px;min-width:0}
.psl-app .psl-header__name{font-size:19px;line-height:1.1;font-weight:900;letter-spacing:-.03em;display:block}
.psl-app .psl-header__tagline{font-size:13px;color:var(--psl-text-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.psl-app .psl-header__nav{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.psl-app .psl-header__nav a,.psl-app .psl-header__admin,.psl-app .psl-header__geo{text-decoration:none;display:inline-flex;align-items:center;gap:8px;color:var(--psl-text);padding:11px 14px;border-radius:16px;border:1px solid transparent;font-weight:800;background:transparent}
.psl-app .psl-header__nav a:hover,.psl-app .psl-header__admin:hover,.psl-app .psl-header__geo:hover{background:#fff;border-color:var(--psl-border)}
.psl-app .psl-header__actions{display:flex;align-items:center;gap:10px;justify-self:end}
.psl-app .psl-header__geo{cursor:pointer;border:1px solid var(--psl-border);background:#fff;color:var(--psl-primary-strong)}
.psl-app .psl-header__admin{background:#0f172a;color:#fff}

.psl-app .psl-search-strip{margin:2px 0 20px}
.psl-app .psl-search-strip__inner{display:grid;grid-template-columns:minmax(220px,1fr) minmax(620px,2.2fr);gap:18px;align-items:center;padding:20px 22px;border-radius:30px;background:linear-gradient(180deg,#ffffff 0%,#f9fbfd 100%);border:1px solid rgba(185,197,211,.72);box-shadow:var(--psl-shadow)}
.psl-app .psl-search-strip__copy h2{margin:0 0 8px;font-size:28px;line-height:1.05;letter-spacing:-.04em}
.psl-app .psl-search-strip__copy p:last-child{margin:0;color:var(--psl-text-soft)}

.psl-app .psl-search{display:grid;gap:12px;align-items:end}
.psl-app .psl-search--global{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr) auto auto}
.psl-app .psl-search--hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) auto auto;margin-top:20px}
.psl-app .psl-search--compact{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto auto;margin-top:18px}
.psl-app .psl-search label{display:grid;gap:6px;position:relative;font-weight:800;color:var(--psl-text);min-width:0}
.psl-app .psl-search__label-text{font-size:13px;color:var(--psl-muted)}
.psl-app .psl-search label>.material-symbols-rounded{position:absolute;left:14px;bottom:14px;color:var(--psl-primary-strong);font-size:20px}
.psl-app .psl-search input,.psl-app .psl-search textarea{width:100%;min-width:0;border:1px solid var(--psl-border);background:#fff;border-radius:18px;padding:15px 16px 15px 44px;color:var(--psl-text);min-height:54px;box-shadow:0 2px 0 rgba(255,255,255,.7) inset}
.psl-app .psl-search input::placeholder,.psl-app .psl-form-grid textarea::placeholder{color:#7d8da0}
.psl-app .psl-search__check{align-self:center;display:flex!important;align-items:center;gap:10px;padding:0 8px 0 4px;border-radius:16px;min-height:54px;font-weight:800;color:var(--psl-text-soft)}
.psl-app .psl-search__check input{width:18px;height:18px;min-height:18px;padding:0}
.psl-app .psl-search__geo,.psl-app .psl-search__submit{border:0;min-height:54px;border-radius:18px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:900;cursor:pointer;text-decoration:none;white-space:nowrap}
.psl-app .psl-search__geo{background:#eef4f8;color:var(--psl-primary-strong);border:1px solid var(--psl-border)}
.psl-app .psl-search__submit{background:var(--psl-primary);color:#fff;box-shadow:0 14px 30px rgba(15,118,110,.22)}
.psl-app .psl-search__submit:hover{background:var(--psl-primary-strong)}

.psl-app .psl-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.95fr);gap:22px;align-items:stretch;margin:0 0 28px}
.psl-app .psl-hero__content,.psl-app .psl-hero__trust{background:linear-gradient(180deg,#ffffff 0%,#f9fbfd 100%);border:1px solid rgba(185,197,211,.72);border-radius:32px;box-shadow:var(--psl-shadow)}
.psl-app .psl-hero__content{padding:34px}
.psl-app .psl-hero__content h1{margin:0 0 12px;font-size:clamp(34px,5vw,58px);line-height:.98;letter-spacing:-.055em;max-width:14ch}
.psl-app .psl-hero__content>p{margin:0;color:var(--psl-text-soft);font-size:18px;max-width:60ch}
.psl-app .psl-hero__quick{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.psl-app .psl-hero__quick a,.psl-app .psl-hero__quick button{display:inline-flex;align-items:center;gap:9px;padding:14px 16px;border-radius:18px;border:1px solid var(--psl-border);background:#fff;text-decoration:none;color:var(--psl-text);font-weight:900;cursor:pointer}
.psl-app .psl-hero__quick a{background:var(--psl-urgent-soft);border-color:#f2c2a9;color:#9a3412}
.psl-app .psl-hero__trust{padding:22px;display:grid;gap:14px}
.psl-app .psl-hero__trust article{padding:16px 18px;border-radius:22px;background:var(--psl-surface-soft);border:1px solid var(--psl-border)}
.psl-app .psl-hero__trust span.material-symbols-rounded{font-size:30px;color:var(--psl-primary-strong);display:inline-grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--psl-primary-soft);margin-bottom:10px}
.psl-app .psl-hero__trust h2{margin:0 0 6px;font-size:19px;letter-spacing:-.03em}
.psl-app .psl-hero__trust p{margin:0;color:var(--psl-text-soft)}

.psl-app .psl-page-title{padding:28px 28px 24px;background:linear-gradient(180deg,#ffffff 0%,#f9fbfd 100%);border:1px solid rgba(185,197,211,.72);border-radius:30px;box-shadow:var(--psl-shadow)}
.psl-app .psl-page-title h1{margin:0 0 10px;font-size:clamp(30px,3.3vw,46px);line-height:1.02;letter-spacing:-.05em}
.psl-app .psl-page-title>p{margin:0;color:var(--psl-text-soft);max-width:70ch}
.psl-app .psl-page-title__hint{margin-top:14px!important;padding:12px 14px;border-radius:16px;background:#f0fdfa;border:1px solid #99f6e4;color:#115e59;font-weight:700}
.psl-app .psl-page-title--urgent{border-color:#fdc9b0;background:linear-gradient(180deg,#fff7f2 0%,#fffdfc 100%)}
.psl-app .psl-page-title--local{border-color:#c7d8ec}

.psl-app .psl-section{margin:32px 0}
.psl-app .psl-section__heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}
.psl-app .psl-section__heading h2{margin:0;font-size:30px;line-height:1.05;letter-spacing:-.04em}
.psl-app .psl-section__heading a{text-decoration:none;color:var(--psl-primary-strong);font-weight:900}
.psl-app .psl-chip-grid{display:flex;gap:12px;flex-wrap:wrap}
.psl-app .psl-chip{display:inline-flex;align-items:center;gap:9px;padding:13px 16px;border-radius:999px;background:#fff;border:1px solid var(--psl-border);text-decoration:none;font-weight:800;color:var(--psl-text);box-shadow:0 6px 18px rgba(15,23,42,.04)}
.psl-app .psl-chip:hover{border-color:var(--psl-primary);transform:translateY(-1px)}
.psl-app .psl-chip--soft{background:#f8fafc}

.psl-app .psl-card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}
.psl-app .psl-provider-card{padding:20px;border-radius:28px;background:#fff;border:1px solid rgba(185,197,211,.72);box-shadow:var(--psl-shadow);display:grid;gap:18px;align-content:start}
.psl-app .psl-provider-card--emergency{border-color:#f5c4aa;box-shadow:0 16px 40px rgba(194,65,12,.08)}
.psl-app .psl-provider-card__top{display:flex;gap:16px;align-items:flex-start}
.psl-app .psl-provider-card__avatar{width:60px;height:60px;border-radius:20px;background:linear-gradient(135deg,#0f766e,#2dd4bf);color:#fff;font-size:28px;font-weight:900;display:grid;place-items:center;flex-shrink:0}
.psl-app .psl-provider-card__main{display:grid;gap:10px;flex:1;min-width:0}
.psl-app .psl-provider-card__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.psl-app .psl-provider-card__title-row h3{margin:0 0 4px;font-size:23px;line-height:1.06;letter-spacing:-.04em}
.psl-app .psl-provider-card__title-row h3 a{text-decoration:none}
.psl-app .psl-provider-card__title-row p{margin:0;color:var(--psl-text-soft)}
.psl-app .psl-provider-card__select{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:#f8fafc;border:1px solid var(--psl-border);cursor:pointer;font-size:14px;font-weight:900;white-space:nowrap}
.psl-app .psl-provider-card__select input{width:18px;height:18px;margin:0}
.psl-app .psl-provider-card__meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--psl-text-soft);font-size:14px;font-weight:800}
.psl-app .psl-provider-card__meta span{display:inline-flex;gap:7px;align-items:center;padding:7px 10px;border-radius:999px;background:#f8fafc}
.psl-app .psl-provider-card__badges{display:flex;gap:8px;flex-wrap:wrap}
.psl-app .psl-provider-card__badges span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#edf2f7;color:#1e293b;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.psl-app .psl-provider-card__badge-urgent{background:var(--psl-urgent-soft)!important;color:#9a3412!important}
.psl-app .psl-provider-card__actions{display:flex;gap:10px;flex-wrap:wrap}
.psl-app .psl-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 16px;border-radius:16px;border:1px solid var(--psl-border);background:#fff;color:var(--psl-text);text-decoration:none;font-weight:900;cursor:pointer}
.psl-app .psl-button--call{background:#0f172a;color:#fff;border-color:#0f172a}
.psl-app .psl-button--wa{background:#e7fff3;color:#067647;border-color:#b7efd1}
.psl-app .psl-button--mail{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.psl-app .psl-button--urgent{background:var(--psl-urgent);color:#fff;border-color:var(--psl-urgent)}
.psl-app .psl-button--ghost{background:#fff}
.psl-app .psl-empty,.psl-app .psl-contact-panel,.psl-app .psl-context-strip{padding:22px;border-radius:28px;background:#fff;border:1px solid rgba(185,197,211,.72);box-shadow:var(--psl-shadow);margin-top:18px}
.psl-app .psl-empty h2,.psl-app .psl-contact-panel h2{margin:0 0 8px;font-size:28px;letter-spacing:-.04em}
.psl-app .psl-empty p,.psl-app .psl-contact-panel p,.psl-app .psl-context-strip{color:var(--psl-text-soft)}
.psl-app .psl-note{display:flex;gap:8px;align-items:flex-start;padding-top:12px}
.psl-app .psl-note--urgent{color:#9a3412;font-weight:800}
.psl-app .psl-service-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}
.psl-app .psl-service-card{padding:24px;border-radius:28px;background:#fff;border:1px solid rgba(185,197,211,.72);box-shadow:var(--psl-shadow);display:grid;gap:10px}
.psl-app .psl-service-card__icon{width:58px;height:58px;border-radius:18px;background:var(--psl-primary-soft);color:var(--psl-primary-strong);display:grid;place-items:center;font-size:28px}
.psl-app .psl-service-card h2{margin:0;font-size:24px;line-height:1.08;letter-spacing:-.04em}
.psl-app .psl-service-card h2 a{text-decoration:none}
.psl-app .psl-service-card p{margin:0;color:var(--psl-text-soft)}
.psl-app .psl-service-card span:last-child{color:var(--psl-primary-strong);font-weight:900;font-size:14px}
.psl-app .psl-how{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:34px 0 20px}
.psl-app .psl-how>div{padding:18px;border-radius:24px;background:#fff;border:1px solid rgba(185,197,211,.72);box-shadow:var(--psl-shadow);display:grid;gap:12px;justify-items:start}
.psl-app .psl-how strong{width:46px;height:46px;border-radius:16px;background:var(--psl-primary-soft);color:var(--psl-primary-strong);display:grid;place-items:center}
.psl-app .psl-how span:last-child{font-weight:800;color:var(--psl-text)}
.psl-app .psl-faq details{margin-top:12px;background:#fff;border:1px solid var(--psl-border);border-radius:18px;padding:16px 18px}
.psl-app .psl-faq summary{cursor:pointer;font-weight:900;color:var(--psl-text)}
.psl-app .psl-faq p{margin:12px 0 0;color:var(--psl-text-soft)}
.psl-app .psl-rich-text{padding:24px;border-radius:28px;background:#fff;border:1px solid rgba(185,197,211,.72);box-shadow:var(--psl-shadow);color:var(--psl-text-soft)}

.psl-app .psl-footer{padding:20px 0 120px}
.psl-app .psl-footer__grid{display:grid;grid-template-columns:1.2fr 1fr .9fr;gap:18px;padding:24px;border-radius:32px;background:#0f172a;color:#fff}
.psl-app .psl-footer__brand{display:flex;align-items:flex-start;gap:14px}
.psl-app .psl-footer__brand-mark{width:54px;height:54px;border-radius:18px;background:rgba(255,255,255,.12);display:grid;place-items:center;overflow:hidden;font-size:22px;flex-shrink:0}
.psl-app .psl-footer__brand-mark img{width:100%;height:100%;object-fit:cover}
.psl-app .psl-footer__brand strong{display:block;font-size:20px;letter-spacing:-.03em;margin-bottom:6px}
.psl-app .psl-footer__brand p,.psl-app .psl-footer__info{margin:0;color:#cbd5e1}
.psl-app .psl-footer h2{margin:0 0 12px;font-size:16px;color:#fff}
.psl-app .psl-footer__links{display:grid;gap:8px}
.psl-app .psl-footer__links a{color:#cbd5e1;text-decoration:none;font-weight:700}
.psl-app .psl-footer__bottom{padding:16px 8px 0;color:#64748b;font-size:14px;text-align:center}

.psl-app .psl-geo-prompt{position:fixed;left:18px;right:18px;bottom:20px;z-index:90;display:flex;justify-content:center}
.psl-app .psl-geo-prompt__card{max-width:780px;width:100%;padding:18px 20px;border-radius:24px;background:#fff;border:1px solid rgba(185,197,211,.75);box-shadow:0 28px 60px rgba(15,23,42,.18);display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
.psl-app .psl-geo-prompt__card>.material-symbols-rounded{width:48px;height:48px;border-radius:16px;background:var(--psl-primary-soft);display:grid;place-items:center;color:var(--psl-primary-strong);font-size:26px}
.psl-app .psl-geo-prompt__card strong{display:block;font-size:18px}
.psl-app .psl-geo-prompt__card p{margin:3px 0 0;color:var(--psl-text-soft)}
.psl-app .psl-geo-prompt__actions{display:flex;gap:10px;flex-wrap:wrap}
.psl-app .psl-geo-prompt__actions button{min-height:48px;padding:0 16px;border-radius:16px;border:1px solid var(--psl-border);background:#fff;color:var(--psl-text);font-weight:900;cursor:pointer}
.psl-app .psl-geo-prompt__actions button:first-child{background:var(--psl-primary);border-color:var(--psl-primary);color:#fff}

.psl-app .psl-mass-bar{position:fixed;left:18px;right:18px;bottom:22px;z-index:88;padding:14px 16px;border-radius:22px;background:#0f172a;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 24px 50px rgba(15,23,42,.22)}
.psl-app .psl-mass-bar strong{font-size:22px}
.psl-app .psl-mass-bar button{border:0;background:var(--psl-primary);color:#fff;min-height:50px;border-radius:16px;padding:0 16px;font-weight:900;display:inline-flex;align-items:center;gap:9px;cursor:pointer}

.psl-app .psl-modal[hidden],.psl-app .psl-geo-prompt[hidden],.psl-app .psl-mass-bar[hidden]{display:none!important}
.psl-app .psl-modal{position:fixed;inset:0;z-index:95;display:grid;place-items:center;padding:20px}
.psl-app .psl-modal__backdrop{position:absolute;inset:0;background:rgba(2,6,23,.54)}
.psl-app .psl-modal__card{position:relative;max-width:760px;width:100%;background:#fff;border-radius:28px;border:1px solid var(--psl-border);padding:22px;box-shadow:0 28px 80px rgba(15,23,42,.35);display:grid;gap:18px}
.psl-app .psl-modal__head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.psl-app .psl-modal__head h2{margin:0;font-size:30px;line-height:1.03;letter-spacing:-.04em}
.psl-app .psl-modal__head button{border:1px solid var(--psl-border);background:#fff;border-radius:14px;width:44px;height:44px;display:grid;place-items:center;cursor:pointer}
.psl-app .psl-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.psl-app .psl-form-grid label{display:grid;gap:7px;font-weight:800;color:var(--psl-text)}
.psl-app .psl-form-grid__wide{grid-column:1/-1}
.psl-app .psl-form-grid input,.psl-app .psl-form-grid textarea{border:1px solid var(--psl-border);border-radius:16px;padding:14px 15px;color:var(--psl-text);background:#fff;min-width:0}
.psl-app .psl-modal__note{margin:0;color:var(--psl-text-soft)}

.psl-app .psl-suggest{z-index:92;background:#fff;border:1px solid var(--psl-border);border-radius:18px;padding:8px;box-shadow:0 22px 50px rgba(15,23,42,.16)}
.psl-app .psl-suggest button{width:100%;display:grid;gap:2px;justify-items:start;text-align:left;border:0;background:transparent;border-radius:14px;padding:11px 12px;cursor:pointer;color:var(--psl-text)}
.psl-app .psl-suggest button small{color:var(--psl-text-soft)}
.psl-app .psl-suggest button:hover,.psl-app .psl-suggest button.is-active{background:#f0fdfa}

.psl-app .psl-mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;grid-template-columns:repeat(5,1fr);gap:8px;padding:10px max(14px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-right));background:rgba(255,255,255,.96);border-top:1px solid rgba(185,197,211,.85);backdrop-filter:blur(14px)}
.psl-app .psl-mobile-nav a{text-decoration:none;color:var(--psl-text-soft);display:grid;justify-items:center;gap:4px;padding:8px 4px;font-size:12px;font-weight:800;border-radius:14px}
.psl-app .psl-mobile-nav a i{font-size:18px}
.psl-app .psl-mobile-nav a.is-active{background:var(--psl-primary-soft);color:var(--psl-primary-strong)}
.psl-app .psl-mobile-nav__urgent{color:#9a3412}
.psl-app .psl-mobile-nav__urgent.is-active{background:var(--psl-urgent-soft)!important;color:#9a3412!important}

.psl-app .psl-sticky-cta{position:fixed;left:0;right:0;bottom:76px;display:none;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 14px;z-index:72}
.psl-app .psl-sticky-cta a{text-decoration:none;min-height:52px;border-radius:18px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:900;box-shadow:0 18px 40px rgba(15,23,42,.18);background:#fff;color:var(--psl-text)}
.psl-app .psl-sticky-cta__urgent{background:var(--psl-urgent)!important;color:#fff!important}

@media (max-width:1180px){
.psl-app .psl-header__inner{grid-template-columns:1fr;justify-items:start}
.psl-app .psl-header__nav{justify-content:flex-start}
.psl-app .psl-header__actions{justify-self:start}
.psl-app .psl-search-strip__inner,.psl-app .psl-hero{grid-template-columns:1fr}
.psl-app .psl-search--global,.psl-app .psl-search--hero{grid-template-columns:repeat(2,minmax(0,1fr))}
.psl-app .psl-footer__grid{grid-template-columns:1fr 1fr}
}

@media (max-width:900px){
.psl-app .psl-page{padding:12px 12px 0}
.psl-app .psl-header{position:relative}
.psl-app .psl-search-strip__copy h2,.psl-app .psl-section__heading h2{font-size:24px}
.psl-app .psl-search--compact{grid-template-columns:1fr 1fr}
.psl-app .psl-search__check{grid-column:1/2}
.psl-app .psl-search__submit{grid-column:2/3}
.psl-app .psl-how{grid-template-columns:1fr}
.psl-app .psl-footer__grid{grid-template-columns:1fr}
.psl-app .psl-form-grid{grid-template-columns:1fr}
.psl-app .psl-geo-prompt__card{grid-template-columns:auto 1fr}
.psl-app .psl-geo-prompt__actions{grid-column:1/-1}
}

@media (max-width:720px){
.psl-app .psl-main{padding-bottom:130px}
.psl-app .psl-header__nav,.psl-app .psl-header__actions .psl-header__admin{display:none}
.psl-app .psl-header__geo{min-height:46px}
.psl-app .psl-search-strip{margin-bottom:16px}
.psl-app .psl-search-strip__inner,.psl-app .psl-page-title,.psl-app .psl-hero__content,.psl-app .psl-hero__trust,.psl-app .psl-provider-card,.psl-app .psl-service-card{border-radius:24px}
.psl-app .psl-search--global,.psl-app .psl-search--hero,.psl-app .psl-search--compact{grid-template-columns:1fr}
.psl-app .psl-search__check,.psl-app .psl-search__submit{grid-column:auto}
.psl-app .psl-search__geo,.psl-app .psl-search__submit{width:100%;justify-content:center}
.psl-app .psl-mobile-nav{display:grid}
.psl-app .psl-sticky-cta{display:grid}
.psl-app .psl-geo-prompt{bottom:92px}
.psl-app .psl-mass-bar{left:12px;right:12px;bottom:94px;display:grid;justify-items:stretch}
.psl-app .psl-mass-bar button{width:100%;justify-content:center}
.psl-app .psl-card-list,.psl-app .psl-service-list{grid-template-columns:1fr}
.psl-app .psl-footer{padding-bottom:118px}
}

@media (max-width:520px){
.psl-app .psl-header__inner{padding:12px}
.psl-app .psl-header__logo{width:48px;height:48px;border-radius:16px}
.psl-app .psl-header__name{font-size:18px}
.psl-app .psl-search-strip__inner{padding:16px}
.psl-app .psl-hero__content{padding:22px}
.psl-app .psl-hero__content h1{font-size:36px;max-width:none}
.psl-app .psl-page-title{padding:22px 18px}
.psl-app .psl-section{margin:26px 0}
.psl-app .psl-provider-card__title-row{display:grid}
.psl-app .psl-provider-card__select{justify-self:start}
.psl-app .psl-provider-card__actions .psl-button{flex:1 1 100%}
.psl-app .psl-search input{padding-right:14px}
}

/* Hotfix 1.4.0: interfaccia pubblica più ordinata, compatta e dinamica */
.psl-app{font-size:15px;--psl-radius:18px;--psl-radius-sm:12px;--psl-shadow:0 8px 22px rgba(15,23,42,.06)}
.psl-app .psl-page{max-width:1320px;padding:12px 14px 0}
.psl-app .psl-main{padding:16px 0 30px}
.psl-app .psl-header{padding-bottom:8px}
.psl-app .psl-header__inner{padding:9px 12px;border-radius:20px;gap:12px}
.psl-app .psl-header__logo{width:42px;height:42px;border-radius:14px;font-size:18px}
.psl-app .psl-header__name{font-size:17px}
.psl-app .psl-header__tagline{font-size:12px}
.psl-app .psl-header__nav a,.psl-app .psl-header__admin,.psl-app .psl-header__geo{padding:8px 10px;border-radius:12px;font-size:14px}
.psl-app .psl-search-strip{margin:0 0 12px}
.psl-app .psl-search-strip__inner{display:block;padding:11px 12px;border-radius:18px}
.psl-app .psl-search-strip__copy{display:none}
.psl-app .psl-search--global{grid-template-columns:minmax(160px,1.2fr) minmax(140px,.95fr) 118px auto auto}
.psl-app .psl-search--hero{grid-template-columns:minmax(180px,1.2fr) minmax(150px,.9fr) 126px auto auto;margin-top:18px}
.psl-app .psl-search--compact{grid-template-columns:minmax(150px,1fr) minmax(140px,.85fr) 118px auto auto auto;margin-top:14px}
.psl-app .psl-search{gap:8px}
.psl-app .psl-search__label-text{font-size:11px;letter-spacing:.02em}
.psl-app .psl-search label>.material-symbols-rounded{left:11px;bottom:11px;font-size:18px}
.psl-app .psl-search input{min-height:44px;border-radius:13px;padding:10px 11px 10px 36px;font-size:14px}
.psl-app .psl-search__geo,.psl-app .psl-search__submit{min-height:44px;border-radius:13px;padding:0 12px;font-size:14px}
.psl-app .psl-search__check{min-height:44px;font-size:13px}
.psl-app .psl-hero--single-search{grid-template-columns:1fr;margin-bottom:18px}
.psl-app .psl-hero__content{padding:26px;border-radius:24px}
.psl-app .psl-hero__content h1{font-size:clamp(32px,4vw,48px);max-width:18ch}
.psl-app .psl-hero__content>p{font-size:16px;max-width:68ch}
.psl-app .psl-hero__quick{margin-top:12px}
.psl-app .psl-hero__quick a,.psl-app .psl-hero__quick button{padding:10px 12px;border-radius:13px;font-size:14px}
.psl-app .psl-home-zone{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;border-radius:14px;background:#f0fdfa;border:1px solid #99f6e4;color:#115e59;font-weight:800}
.psl-app .psl-home-zone[hidden]{display:none!important}
.psl-app .psl-home-zone p{margin:0}
.psl-app .psl-page-title{padding:18px;border-radius:20px}
.psl-app .psl-page-title h1{font-size:clamp(26px,3vw,36px)}
.psl-app .psl-section{margin:22px 0}
.psl-app .psl-section__heading{margin-bottom:10px}
.psl-app .psl-section__heading h2{font-size:24px}
.psl-app .psl-kicker{font-size:11px;margin-bottom:7px}
.psl-app .psl-chip-grid{gap:8px}
.psl-app .psl-chip{padding:9px 11px;border-radius:14px;font-size:14px;gap:7px}
.psl-app .psl-chip .material-symbols-rounded{font-size:19px}
.psl-app .psl-card-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;align-items:start}
.psl-app .psl-provider-card{padding:14px;border-radius:20px;gap:12px;min-width:0;overflow:hidden}
.psl-app .psl-provider-card__top{gap:11px}
.psl-app .psl-provider-card__avatar{width:46px;height:46px;border-radius:14px;font-size:21px}
.psl-app .psl-provider-card__main{gap:7px;min-width:0}
.psl-app .psl-provider-card__title-row{gap:9px}
.psl-app .psl-provider-card__title-row h3{font-size:18px;line-height:1.08;letter-spacing:-.035em;overflow-wrap:anywhere}
.psl-app .psl-provider-card__title-row p{font-size:14px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.psl-app .psl-provider-card__select{padding:6px 8px;border-radius:11px;font-size:12px;gap:5px}
.psl-app .psl-provider-card__select .material-symbols-rounded{font-size:17px}
.psl-app .psl-provider-card__select input{width:15px;height:15px}
.psl-app .psl-provider-card__meta{gap:7px;font-size:12px}
.psl-app .psl-provider-card__meta span{padding:5px 8px;gap:5px}
.psl-app .psl-provider-card__badges{gap:6px}
.psl-app .psl-provider-card__badges span{font-size:10px;padding:5px 8px}
.psl-app .psl-provider-card__actions{gap:7px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.psl-app .psl-provider-card__actions .psl-button{min-height:38px;padding:0 10px;border-radius:12px;font-size:13px;gap:6px;white-space:nowrap;min-width:0}
.psl-app .psl-provider-card__actions .psl-button .material-symbols-rounded{font-size:18px}
.psl-app .psl-service-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.psl-app .psl-service-card{padding:16px;border-radius:18px;gap:8px}
.psl-app .psl-service-card__icon{width:42px;height:42px;border-radius:13px;font-size:22px}
.psl-app .psl-service-card h2{font-size:18px}
.psl-app .psl-service-card p{font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.psl-app .psl-how{gap:10px;margin:22px 0 14px}
.psl-app .psl-how>div{padding:13px;border-radius:16px}
.psl-app .psl-how strong{width:36px;height:36px;border-radius:12px}
.psl-app .psl-empty--inline{box-shadow:none;border-style:dashed;width:100%;grid-column:1/-1;padding:16px}
.psl-app .psl-footer{padding-top:10px}
.psl-app .psl-footer__grid{padding:18px;border-radius:22px;gap:14px}
.psl-app .psl-geo-prompt__card{padding:13px 14px;border-radius:18px}
.psl-app .psl-mass-bar{padding:10px 12px;border-radius:16px}
.psl-app .psl-modal__card{border-radius:20px;padding:18px}
@media (max-width:1180px){.psl-app .psl-search--global,.psl-app .psl-search--hero,.psl-app .psl-search--compact{grid-template-columns:repeat(3,minmax(0,1fr))}.psl-app .psl-search__submit{grid-column:auto}.psl-app .psl-provider-card__actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.psl-app .psl-search--global,.psl-app .psl-search--hero,.psl-app .psl-search--compact{grid-template-columns:1fr 1fr}.psl-app .psl-search__geo,.psl-app .psl-search__submit,.psl-app .psl-search__check{grid-column:auto}.psl-app .psl-provider-card__actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.psl-app .psl-page{padding:10px 10px 0}.psl-app .psl-search--global,.psl-app .psl-search--hero,.psl-app .psl-search--compact{grid-template-columns:1fr}.psl-app .psl-hero__content{padding:18px}.psl-app .psl-provider-card__actions{grid-template-columns:1fr}.psl-app .psl-card-list{grid-template-columns:1fr}.psl-app .psl-header__geo span:last-child{display:none}}
.psl-app .psl-search-strip{margin:0 0 16px;padding:12px;border-radius:22px;background:rgba(255,255,255,.9);border:1px solid rgba(185,197,211,.72);box-shadow:var(--psl-shadow)}
.psl-app .psl-search-strip>.psl-search{margin:0}
@media (max-width:720px){.psl-app .psl-search-strip{padding:10px;border-radius:18px}}

/* Hotfix 1.4.1: rifinitura compatta finale */
.psl-app .psl-provider-card__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.psl-app .psl-provider-card__actions .psl-button{width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.psl-app .psl-provider-card__actions .psl-button--ghost:last-child{grid-column:auto}
.psl-app .psl-search__field-with-hint>.material-symbols-rounded{bottom:25px}
.psl-app .psl-search__field-with-hint{padding-bottom:14px}
.psl-app .psl-search__hint{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.psl-app .psl-cap-results__chips .psl-chip{padding:6px 9px;border-radius:999px;font-size:12px;min-height:30px;box-shadow:none}
.psl-app .psl-cap-results__chips .psl-chip .material-symbols-rounded{font-size:15px}
.psl-app .psl-home-services-empty,.psl-app .psl-empty-inline{grid-column:1/-1;width:100%;margin:0;padding:12px;border-radius:14px;background:#fff;border:1px dashed var(--psl-border);color:var(--psl-text-soft);font-size:13px;font-weight:750}
@media (max-width:520px){.psl-app .psl-provider-card__actions{grid-template-columns:1fr 1fr}.psl-app .psl-search__field-with-hint{padding-bottom:18px}.psl-app .psl-search__field-with-hint>.material-symbols-rounded{bottom:29px}}
.psl-app .psl-zone-feedback{display:flex;align-items:center;gap:9px;margin-top:10px;padding:10px 12px;border-radius:14px;background:#f0fdfa;border:1px solid #99f6e4;color:#115e59;font-weight:800;font-size:13px}
.psl-app .psl-zone-feedback[hidden]{display:none!important}
.psl-app .psl-zone-feedback p{margin:0}
.psl-app .psl-empty--inline{grid-column:1/-1;padding:16px;border-radius:16px}
.psl-app .psl-empty--inline{grid-column:1/-1;margin:0;padding:14px 16px;border-radius:16px;box-shadow:none}
.psl-app .psl-home-zone{margin-top:10px;padding:10px 12px;border-radius:14px;background:#f0fdfa;border:1px solid #99f6e4;color:#115e59;display:flex;align-items:center;gap:8px;font-weight:700;font-size:13px}
.psl-app .psl-home-zone[hidden]{display:none!important}
.psl-app .psl-home-zone p{margin:0}
.psl-app .psl-section__hint{margin:5px 0 0;color:var(--psl-text-soft);font-size:13px;max-width:68ch}
.psl-app .psl-home-zone{margin-top:10px;padding:10px 12px;border-radius:14px;background:#f0fdfa;border:1px solid #99f6e4;color:#115e59;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800}
.psl-app .psl-home-zone[hidden]{display:none!important}
.psl-app .psl-home-zone .material-symbols-rounded{font-size:19px}

/* Hotfix 1.5.0: ricerca smart, card uniformi, icone stabili */
html:not(.psl-icons-ready) .psl-app .material-symbols-rounded,
html:not(.psl-icons-ready) .psl-app .fa-solid,
html:not(.psl-icons-ready) .psl-app .fa-brands{opacity:0}
html.psl-icons-ready .psl-app .material-symbols-rounded,
html.psl-icons-ready .psl-app .fa-solid,
html.psl-icons-ready .psl-app .fa-brands{opacity:1;transition:opacity .08s linear}
.psl-app .psl-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.psl-app .psl-search--smart{grid-template-columns:minmax(260px,1.8fr) 118px auto auto!important;align-items:end}
.psl-app .psl-search--smart .psl-search__smart-field{min-width:0}
.psl-app .psl-search--smart .psl-search__smart-field input{font-weight:750}
.psl-app .psl-suggest{display:grid;gap:4px;max-height:min(420px,70vh);overflow:auto}
.psl-app .psl-suggest button{position:relative;grid-template-columns:1fr auto;column-gap:10px;padding:9px 10px;min-height:48px}
.psl-app .psl-suggest button span{font-weight:900;line-height:1.2;grid-column:1/2}
.psl-app .psl-suggest button small{font-size:12px;line-height:1.25;grid-column:1/2}
.psl-app .psl-suggest button em{grid-column:2/3;grid-row:1/3;align-self:center;font-style:normal;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.04em;color:#0f766e;background:#e8f6f4;border:1px solid #bde7df;border-radius:999px;padding:4px 7px}
.psl-app .psl-card-list{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));align-items:stretch;grid-auto-rows:1fr;gap:12px}
.psl-app .psl-provider-card{height:100%;min-height:202px;max-height:232px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:12px;border-radius:18px;gap:8px;cursor:default}
.psl-app .psl-provider-card--clickable{cursor:pointer}
.psl-app .psl-provider-card--clickable:hover{border-color:var(--psl-primary);box-shadow:0 12px 28px rgba(15,118,110,.11)}
.psl-app .psl-provider-card__top{min-height:0;align-items:flex-start;gap:9px}
.psl-app .psl-provider-card__avatar{width:40px;height:40px;border-radius:12px;font-size:19px}
.psl-app .psl-provider-card__main{min-width:0;min-height:0;gap:5px}
.psl-app .psl-provider-card__title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;min-height:0}
.psl-app .psl-provider-card__copy{min-width:0;overflow:hidden}
.psl-app .psl-provider-card__title-row h3{font-size:17px;line-height:1.06;margin:0 0 3px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.psl-app .psl-provider-card__title-row p{font-size:13px;line-height:1.32;-webkit-line-clamp:2;margin:0;color:var(--psl-text-soft)}
.psl-app .psl-provider-card__select{width:32px;height:32px;min-width:32px;padding:0;border-radius:10px;display:grid;grid-template-columns:1fr;place-items:center;gap:0;background:#f8fafc}
.psl-app .psl-provider-card__select input{position:absolute;opacity:.01;width:1px;height:1px}
.psl-app .psl-provider-card__select .material-symbols-rounded{font-size:20px;color:#334155}
.psl-app .psl-provider-card__select:has(input:checked){background:#0f766e;border-color:#0f766e;color:#fff}
.psl-app .psl-provider-card__select:has(input:checked) .material-symbols-rounded{color:#fff}
.psl-app .psl-provider-card__meta{gap:5px;font-size:11.5px;max-height:30px;overflow:hidden}
.psl-app .psl-provider-card__meta span{padding:4px 7px;gap:5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.psl-app .psl-provider-card__badges{gap:5px;max-height:24px;overflow:hidden}
.psl-app .psl-provider-card__badges span{font-size:9.5px;padding:4px 7px;line-height:1}
.psl-app .psl-provider-card__actions{display:flex!important;align-items:center;gap:6px;flex-wrap:wrap;margin-top:auto;min-height:34px}
.psl-app .psl-provider-card__actions .psl-button{width:34px!important;height:34px;min-height:34px!important;flex:0 0 34px;padding:0!important;border-radius:11px;font-size:0;gap:0;overflow:hidden}
.psl-app .psl-provider-card__actions .psl-button .material-symbols-rounded{font-size:18px}
.psl-app .psl-provider-card__actions .psl-button i{font-size:16px}
.psl-app .psl-provider-card__actions .psl-button--urgent{width:auto!important;flex:0 0 auto;padding:0 10px!important;font-size:12px;gap:5px;min-width:86px}
.psl-app .psl-provider-card__actions .psl-button--urgent .material-symbols-rounded{font-size:17px}
.psl-app .psl-provider-card__actions .psl-button--ghost{margin-left:auto}
.psl-app .psl-chip-grid--compact .psl-chip span:last-child{display:inline-flex;gap:4px;align-items:center}
.psl-app .psl-cap-status{font-size:12.5px;color:var(--psl-text-soft);margin:9px 0 0}
@media (max-width:1180px){.psl-app .psl-search--smart{grid-template-columns:1fr 118px auto auto!important}.psl-app .psl-card-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}
@media (max-width:760px){.psl-app .psl-search--smart{grid-template-columns:1fr 1fr!important}.psl-app .psl-search--smart .psl-search__smart-field{grid-column:1/-1}.psl-app .psl-provider-card{max-height:none;min-height:188px}.psl-app .psl-card-list{grid-template-columns:1fr}}
@media (max-width:520px){.psl-app .psl-search--smart{grid-template-columns:1fr!important}.psl-app .psl-provider-card__actions{display:flex!important}.psl-app .psl-provider-card__actions .psl-button{flex:0 0 36px;width:36px!important;height:36px}.psl-app .psl-provider-card__actions .psl-button--urgent{flex:1 0 auto;width:auto!important}}
.psl-app .psl-service-list{align-items:stretch;grid-auto-rows:1fr}
.psl-app .psl-service-card{height:100%;min-height:150px;cursor:pointer}
.psl-app .psl-service-card:hover{border-color:var(--psl-primary);box-shadow:0 12px 28px rgba(15,118,110,.10)}

/* Hotfix 1.6.0 */
.psl-app .psl-header__logo--image{width:auto;min-width:0;max-width:190px;height:46px;padding:0;background:transparent;border-radius:0;color:inherit;overflow:visible}
.psl-app .psl-header__logo--image img{width:auto;height:100%;max-width:190px;object-fit:contain}
.psl-app .psl-footer__brand-mark--image{width:auto;min-width:0;max-width:210px;height:48px;background:transparent;border-radius:0;overflow:visible}
.psl-app .psl-footer__brand-mark--image img{width:auto;height:100%;max-width:210px;object-fit:contain}
.psl-app .psl-footer__info{display:grid;gap:5px}
.psl-app .psl-footer__info-extra{margin-top:8px;color:#dbeafe}
.psl-app .psl-cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:96;display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:980px;margin:0 auto;padding:14px 16px;border-radius:22px;background:#0f172a;color:#fff;box-shadow:0 24px 60px rgba(15,23,42,.28)}
.psl-app .psl-cookie-banner[hidden]{display:none!important}
.psl-app .psl-cookie-banner__content{display:flex;align-items:flex-start;gap:12px;min-width:0}
.psl-app .psl-cookie-banner__content p{margin:0;color:#dbeafe;font-size:14px;line-height:1.45}
.psl-app .psl-cookie-banner__content .material-symbols-rounded{color:#5eead4;flex-shrink:0}
.psl-app .psl-cookie-banner__actions{display:flex;gap:10px;align-items:center;flex-shrink:0}
.psl-app .psl-cookie-banner__actions a{color:#dbeafe;font-weight:800;text-decoration:underline}
.psl-app .psl-cookie-banner__actions button{border:0;background:var(--psl-primary);color:#fff;min-height:42px;border-radius:14px;padding:0 14px;font-weight:900;cursor:pointer}
.psl-app .psl-contact-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:18px;margin-top:20px;align-items:start}
.psl-app .psl-public-form,.psl-app .psl-contact-info,.psl-app .psl-owner-box{padding:22px;border-radius:28px;background:#fff;border:1px solid rgba(185,197,211,.72);box-shadow:var(--psl-shadow)}
.psl-app .psl-public-form h2,.psl-app .psl-contact-info h2,.psl-app .psl-owner-box h2{margin:0 0 14px;font-size:26px;letter-spacing:-.04em;line-height:1.08}
.psl-app .psl-contact-info__lines{display:grid;gap:8px;color:var(--psl-text-soft)}
.psl-app .psl-contact-info__lines p{margin:0}
.psl-app .psl-contact-info__links{display:grid;gap:10px;margin-top:18px}
.psl-app .psl-contact-info__links a{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--psl-primary-strong);font-weight:900}
.psl-app .psl-owner-box{margin:18px 0;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;align-items:start}
.psl-app .psl-owner-box p{color:var(--psl-text-soft)}
.psl-app .psl-public-form--compact{padding:0;border:0;box-shadow:none;background:transparent}
.psl-app .psl-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.psl-app .psl-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:900px){.psl-app .psl-contact-layout,.psl-app .psl-owner-box{grid-template-columns:1fr}.psl-app .psl-cookie-banner{display:grid;bottom:90px}.psl-app .psl-cookie-banner__actions{justify-content:flex-end}}
@media (max-width:520px){.psl-app .psl-header__logo--image{height:38px;max-width:140px}.psl-app .psl-cookie-banner__actions{display:grid;justify-content:stretch}.psl-app .psl-cookie-banner__actions button,.psl-app .psl-cookie-banner__actions a{text-align:center}}
.psl-app .psl-provider-card__owner-link{display:inline-flex;align-items:center;justify-content:center;text-align:center;margin-top:-6px;padding:8px 10px;border-radius:12px;background:#f8fafc;border:1px dashed var(--psl-border);color:var(--psl-text-soft);font-size:12px;font-weight:800;text-decoration:none}
.psl-app .psl-provider-card__owner-link:hover{border-color:var(--psl-primary);color:var(--psl-primary-strong);background:#f0fdfa}

/* Hotfix 1.6.1: body senza margini/padding e logo sempre contenuto nella barra */
.psl-public-body .psl-app{width:100%;min-height:100vh;overflow-x:hidden}
.psl-public-body .psl-app .psl-header__inner{overflow:hidden}
.psl-public-body .psl-app .psl-header__brand{min-width:0;max-width:100%;overflow:hidden}
.psl-public-body .psl-app .psl-header__brand--has-logo{gap:0;flex:0 1 auto;max-width:min(44vw,230px)}
.psl-public-body .psl-app .psl-header__brand--has-logo .psl-header__brand-copy{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.psl-public-body .psl-app .psl-header__logo--image{width:100%!important;min-width:0!important;max-width:210px!important;height:46px!important;max-height:46px!important;padding:0!important;background:transparent!important;border-radius:0!important;color:inherit!important;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;line-height:0!important}
.psl-public-body .psl-app .psl-header__logo--image img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:left center!important}
.psl-public-body .psl-app .psl-footer__brand-mark--image{width:100%!important;max-width:210px!important;height:46px!important;max-height:46px!important;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;background:transparent!important;border-radius:0!important;line-height:0!important}
.psl-public-body .psl-app .psl-footer__brand-mark--image img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:left center!important}
@media (max-width:1180px){.psl-public-body .psl-app .psl-header__brand--has-logo{max-width:240px}}
@media (max-width:720px){.psl-public-body .psl-app .psl-header__brand--has-logo{max-width:190px}.psl-public-body .psl-app .psl-header__logo--image{height:42px!important;max-height:42px!important}}
@media (max-width:520px){.psl-public-body .psl-app .psl-header__brand--has-logo{max-width:150px}.psl-public-body .psl-app .psl-header__logo--image{height:38px!important;max-height:38px!important}.psl-public-body .psl-app .psl-footer__brand-mark--image{height:40px!important;max-height:40px!important}}

/* Hotfix 1.7.0: ServeSubito minimal public redesign and SEO page sections */
.psl-public-body .psl-app{--psl-primary:#0a8dff;--psl-primary-strong:#0667cc;--psl-accent:#19c45a;--psl-primary-soft:#eef7ff;--psl-border:#d8e7f8;--psl-text:#0f172a;--psl-text-soft:#475569;--psl-surface:#fff;--psl-surface-soft:#f7fbff;background:#eef6ff;color:var(--psl-text);font-size:15px;line-height:1.55}
.psl-public-body .psl-app .psl-page{max-width:1220px;padding:14px 16px 0}
.psl-public-body .psl-app .psl-header__inner,.psl-public-body .psl-app .psl-search-strip__inner,.psl-public-body .psl-app .psl-hero__content,.psl-public-body .psl-app .psl-page-title,.psl-public-body .psl-app .psl-section,.psl-public-body .psl-app .psl-provider-card,.psl-public-body .psl-app .psl-contact-panel,.psl-public-body .psl-app .psl-owner-box,.psl-public-body .psl-app .psl-rich-text{border:1px solid var(--psl-border);box-shadow:0 10px 28px rgba(10,132,255,.06);background:#fff;border-radius:22px}
.psl-public-body .psl-app .psl-header{padding:10px 0;background:rgba(238,246,255,.92);backdrop-filter:blur(14px)}
.psl-public-body .psl-app .psl-header__inner{padding:10px 14px;display:flex;justify-content:space-between;gap:18px}
.psl-public-body .psl-app .psl-header__nav a{border-radius:12px;padding:8px 10px;color:#27415f}
.psl-public-body .psl-app .psl-header__nav a:hover{background:var(--psl-primary-soft);color:var(--psl-primary-strong)}
.psl-public-body .psl-app .psl-header__logo--image{max-width:210px!important;height:46px!important}
.psl-public-body .psl-app .psl-main{padding:16px 0 40px}
.psl-public-body .psl-app .psl-hero{display:block;margin:0 0 20px}.psl-public-body .psl-app .psl-hero__content{width:100%;max-width:none;padding:32px}.psl-public-body .psl-app .psl-hero h1{max-width:780px;font-size:clamp(36px,5vw,64px);line-height:.98;letter-spacing:-.06em}.psl-public-body .psl-app .psl-hero p{max-width:880px;font-size:18px;color:var(--psl-text-soft)}
.psl-public-body .psl-app .psl-search{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.55fr) auto;gap:10px;align-items:end}.psl-public-body .psl-app .psl-search input{border-radius:14px;min-height:50px;border-color:#c8dcf5;background:#fff}.psl-public-body .psl-app .psl-search__submit{min-height:50px;border-radius:14px;background:linear-gradient(135deg,var(--psl-primary),var(--psl-accent));box-shadow:none}.psl-public-body .psl-app .psl-search__label-text{font-size:12px;color:#52657d}.psl-public-body .psl-app .psl-search-strip .psl-search{grid-template-columns:minmax(0,1fr) minmax(220px,.5fr) auto}
.psl-public-body .psl-app .psl-page-title{padding:26px 28px;margin-bottom:18px}.psl-public-body .psl-app .psl-page-title h1{font-size:clamp(30px,4vw,48px);line-height:1.02}.psl-public-body .psl-app .psl-section{padding:22px;margin:22px 0}.psl-public-body .psl-app .psl-section__heading{margin-bottom:14px}.psl-public-body .psl-app .psl-section__heading h2{font-size:clamp(24px,2.4vw,34px)}.psl-public-body .psl-app .psl-section__heading p{margin:6px 0 0;color:var(--psl-text-soft)}
.psl-public-body .psl-app .psl-rich-text{padding:20px;color:var(--psl-text-soft)}.psl-public-body .psl-app .psl-rich-text p{margin:0 0 14px}.psl-public-body .psl-app .psl-rich-text p:last-child{margin-bottom:0}
.psl-public-body .psl-app .psl-chip-grid{gap:10px}.psl-public-body .psl-app .psl-chip{border-color:#cfe0f7;background:#fbfdff;border-radius:999px;padding:9px 13px;font-size:14px}.psl-public-body .psl-app .psl-chip:hover{border-color:var(--psl-primary);background:#eef7ff}
.psl-public-body .psl-app .psl-card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px;align-items:stretch}.psl-public-body .psl-app .psl-provider-card{min-height:245px;max-height:none;padding:14px;display:grid;grid-template-rows:auto 1fr auto;gap:10px;overflow:visible}.psl-public-body .psl-app .psl-provider-card__top{gap:10px}.psl-public-body .psl-app .psl-provider-card__avatar{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--psl-primary),var(--psl-accent));font-size:0}.psl-public-body .psl-app .psl-provider-card__avatar .material-symbols-rounded{font-size:23px}.psl-public-body .psl-app .psl-provider-card__title-row{grid-template-columns:minmax(0,1fr) auto}.psl-public-body .psl-app .psl-provider-card h3{font-size:17px!important;line-height:1.1;-webkit-line-clamp:2!important;line-clamp:2}.psl-public-body .psl-app .psl-provider-card__title-row p{font-size:13px;line-height:1.35;min-height:36px;-webkit-line-clamp:2!important;line-clamp:2}.psl-public-body .psl-app .psl-provider-card__select{width:28px;height:28px;min-width:28px}.psl-public-body .psl-app .psl-provider-card__meta{gap:6px}.psl-public-body .psl-app .psl-provider-card__meta span{font-size:11.5px;padding:4px 7px;max-width:100%}.psl-public-body .psl-app .psl-provider-card__badges{gap:5px;max-height:48px;overflow:hidden}.psl-public-body .psl-app .psl-provider-card__badges span{font-size:10px;padding:4px 7px;border:1px solid #dceafb;background:#f7fbff}.psl-public-body .psl-app .psl-provider-card__actions{display:flex!important;gap:7px;align-items:center;flex-wrap:wrap;margin-top:auto}.psl-public-body .psl-app .psl-provider-card__actions .psl-button{width:36px!important;height:36px;min-height:36px!important;flex:0 0 36px;border-radius:12px;padding:0!important}.psl-public-body .psl-app .psl-provider-card__actions .psl-button--urgent{width:auto!important;min-width:86px;flex:0 0 auto;padding:0 10px!important;font-size:12px}.psl-public-body .psl-app .psl-provider-card__actions .psl-button--ghost{margin-left:auto}
.psl-public-body .psl-app .psl-service-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.psl-public-body .psl-app .psl-service-card{padding:18px;border-radius:18px}.psl-public-body .psl-app .psl-service-card h3,.psl-public-body .psl-app .psl-service-card h2{font-size:20px;margin:0}.psl-public-body .psl-app .psl-service-card p{font-size:14px;color:var(--psl-text-soft)}.psl-public-body .psl-app .psl-service-card__icon{width:44px;height:44px;border-radius:14px;background:var(--psl-primary-soft);color:var(--psl-primary-strong)}
.psl-public-body .psl-app .psl-faq-list{display:grid;gap:12px}.psl-public-body .psl-app .psl-faq-list article{border:1px solid var(--psl-border);border-radius:16px;background:#fff;padding:16px}.psl-public-body .psl-app .psl-faq-list h3{margin:0 0 8px;font-size:17px}.psl-public-body .psl-app .psl-faq-list p{margin:0;color:var(--psl-text-soft)}
.psl-public-body .psl-app .psl-contact-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);gap:18px}.psl-public-body .psl-app .psl-public-form,.psl-public-body .psl-app .psl-contact-info,.psl-public-body .psl-app .psl-contact-action-card{background:#fff;border:1px solid var(--psl-border);border-radius:22px;padding:22px;box-shadow:0 10px 28px rgba(10,132,255,.06)}.psl-public-body .psl-app .psl-contact-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.psl-public-body .psl-app .psl-contact-action-card__icon{width:44px;height:44px;border-radius:14px;background:var(--psl-primary-soft);color:var(--psl-primary-strong);display:grid;place-items:center}
.psl-public-body .psl-app .psl-catalog-tools{display:grid;gap:12px}.psl-public-body .psl-app .psl-catalog-tools input{border:1px solid var(--psl-border);border-radius:14px;padding:12px 14px}.psl-public-body .psl-app .psl-catalog-tabs{display:flex;gap:8px;flex-wrap:wrap}.psl-public-body .psl-app .psl-catalog-tabs button{border:1px solid var(--psl-border);background:#fff;border-radius:999px;padding:8px 11px;font-weight:800;cursor:pointer}.psl-public-body .psl-app .psl-catalog-tabs button.is-active,.psl-public-body .psl-app .psl-catalog-tabs button:hover{background:var(--psl-primary);color:#fff;border-color:var(--psl-primary)}
.psl-public-body .psl-app .psl-alert-note{padding:12px 14px;border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-weight:700}.psl-public-body .psl-app .psl-button--compact-urgent{display:inline-flex;white-space:nowrap;font-size:13px;padding:0 12px!important;min-height:38px!important;border-radius:12px!important}
.psl-public-body .psl-app .psl-footer{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:linear-gradient(135deg,#071c3a,#0a74dc 58%,#17c65c);color:#fff}.psl-public-body .psl-app .psl-footer__inner{max-width:1220px;margin:0 auto;padding:28px 16px}.psl-public-body .psl-app .psl-footer__grid{background:transparent;border:0;padding:0}.psl-public-body .psl-app .psl-footer__bottom{color:#dbeafe}
@media (max-width:760px){.psl-public-body .psl-app .psl-search,.psl-public-body .psl-app .psl-search-strip .psl-search{grid-template-columns:1fr}.psl-public-body .psl-app .psl-hero__content{padding:24px}.psl-public-body .psl-app .psl-contact-layout{grid-template-columns:1fr}.psl-public-body .psl-app .psl-card-list{grid-template-columns:1fr}.psl-public-body .psl-app .psl-provider-card{min-height:0}}


/* Hotfix 1.7.1: breadcrumb orizzontali, puliti e responsive */
.psl-public-body .psl-app .psl-breadcrumbs{margin:0 0 18px;padding:0 2px;max-width:100%}
.psl-public-body .psl-app .psl-breadcrumbs__list{list-style:none;margin:0;padding:6px;display:flex;align-items:center;gap:6px;width:max-content;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;border:1px solid rgba(149,191,237,.74);border-radius:999px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(238,247,255,.92));box-shadow:0 10px 28px rgba(10,132,255,.08);backdrop-filter:blur(10px)}
.psl-public-body .psl-app .psl-breadcrumbs__list::-webkit-scrollbar{display:none}
.psl-public-body .psl-app .psl-breadcrumbs__item{display:flex;align-items:center;gap:6px;flex:0 0 auto;min-width:0}
.psl-public-body .psl-app .psl-breadcrumbs__item:not(:last-child)::after{content:"";width:7px;height:7px;border-top:2px solid rgba(69,93,118,.46);border-right:2px solid rgba(69,93,118,.46);transform:rotate(45deg);margin:0 3px 0 1px;flex:0 0 auto}
.psl-public-body .psl-app .psl-breadcrumbs__link,.psl-public-body .psl-app .psl-breadcrumbs__current{min-height:34px;padding:0 12px;border-radius:999px;display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-size:13px;line-height:1;font-weight:850;white-space:nowrap;max-width:44vw;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
.psl-public-body .psl-app .psl-breadcrumbs__link{color:#405a76;background:transparent}
.psl-public-body .psl-app .psl-breadcrumbs__link:hover{color:#0966cc;background:#fff;box-shadow:0 8px 18px rgba(10,132,255,.12);transform:translateY(-1px)}
.psl-public-body .psl-app .psl-breadcrumbs__link:focus-visible{background:#fff}
.psl-public-body .psl-app .psl-breadcrumbs__current{color:#fff;background:linear-gradient(135deg,#0a84ff,#10b8d8 55%,#32d74b);box-shadow:0 10px 22px rgba(10,132,255,.18)}
.psl-public-body .psl-app .psl-breadcrumbs__current-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.psl-public-body .psl-app .psl-breadcrumbs .material-symbols-rounded{font-size:17px;line-height:1;color:currentColor}
@media (max-width:720px){.psl-public-body .psl-app .psl-breadcrumbs{margin-bottom:14px}.psl-public-body .psl-app .psl-breadcrumbs__list{width:100%;padding:5px;border-radius:18px}.psl-public-body .psl-app .psl-breadcrumbs__link,.psl-public-body .psl-app .psl-breadcrumbs__current{min-height:32px;padding:0 10px;font-size:12px;max-width:58vw}.psl-public-body .psl-app .psl-breadcrumbs__item:not(:last-child)::after{width:6px;height:6px;margin-right:1px}}

/* Hotfix 1.7.2: geolocalizzazione pubblica disattivata */
.psl-app .psl-geo-prompt,
.psl-app .psl-search__geo,
.psl-app .psl-header__geo{display:none!important}

/* Hotfix 1.7.4: header sticky e menu mobile laterale */
.psl-app.psl-menu-open{height:100vh;overflow:hidden}
.psl-app .psl-header{position:sticky!important;top:0!important;z-index:120!important;padding:8px 0!important;background:rgba(247,251,255,.94)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.psl-app .psl-header__inner{position:relative;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important}
.psl-app .psl-header__hamburger{display:none;align-items:center;gap:7px;border:1px solid var(--psl-border);background:#fff;color:var(--psl-text);border-radius:14px;padding:10px 12px;font-weight:850;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.psl-app .psl-header__hamburger .material-symbols-rounded{font-size:22px}
.psl-app .psl-mobile-drawer[hidden]{display:none!important}
.psl-app .psl-mobile-drawer{position:fixed;inset:0;z-index:260;display:block}
.psl-app .psl-mobile-drawer__backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.42);cursor:pointer}
.psl-app .psl-mobile-drawer__panel{position:absolute;top:0;right:0;width:min(88vw,360px);height:100%;background:#fff;border-left:1px solid var(--psl-border);box-shadow:-20px 0 60px rgba(15,23,42,.22);padding:18px;display:flex;flex-direction:column;gap:16px;animation:pslDrawerIn .18s ease-out}
.psl-app .psl-mobile-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--psl-border)}
.psl-app .psl-mobile-drawer__head strong{font-size:18px;letter-spacing:-.03em;color:var(--psl-text)}
.psl-app .psl-mobile-drawer__head button{width:42px;height:42px;border-radius:14px;border:1px solid var(--psl-border);background:#f8fbff;color:var(--psl-text);display:grid;place-items:center;cursor:pointer}
.psl-app .psl-mobile-drawer__nav{display:grid;gap:8px}
.psl-app .psl-mobile-drawer__nav a{display:flex;align-items:center;gap:12px;padding:13px 12px;border-radius:16px;text-decoration:none;color:var(--psl-text);font-weight:800;background:#f7fbff;border:1px solid transparent}
.psl-app .psl-mobile-drawer__nav a:hover,.psl-app .psl-mobile-drawer__nav a:focus-visible{background:var(--psl-primary-soft);border-color:var(--psl-border-strong);color:var(--psl-primary-strong)}
.psl-app .psl-mobile-drawer__nav .material-symbols-rounded{color:var(--psl-primary-strong)}
.psl-app .psl-mobile-nav{display:none!important}
@keyframes pslDrawerIn{from{transform:translateX(24px);opacity:.7}to{transform:translateX(0);opacity:1}}
@media (max-width:760px){.psl-app .psl-header__nav{display:none!important}.psl-app .psl-header__hamburger{display:inline-flex}.psl-app .psl-header__inner{padding:10px 12px!important}.psl-app .psl-main{padding-bottom:36px!important}.psl-app .psl-page{padding-top:10px!important}}
@media (min-width:761px){.psl-app .psl-header__hamburger{display:none!important}.psl-app .psl-mobile-drawer{display:none!important}}

/* Hotfix 1.7.5: pulizia dettaglio attività, owner CTA e breadcrumb/schema friendly */
.psl-app .psl-provider-hero--no-leading-icon{grid-template-columns:minmax(0,1fr)!important;align-items:start}
.psl-app .psl-provider-hero__icon{display:none!important}
.psl-app .psl-home-owner-cta .psl-owner-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.psl-app .psl-home-owner-cta .psl-owner-card{display:grid;grid-template-columns:auto 1fr;gap:10px 14px;align-items:start;padding:18px;border:1px solid var(--psl-border);border-radius:20px;background:linear-gradient(180deg,#ffffff,#f7fbff);text-decoration:none;box-shadow:var(--psl-shadow)}
.psl-app .psl-home-owner-cta .psl-owner-card .material-symbols-rounded{grid-row:1/3;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--psl-primary-soft);color:var(--psl-primary);font-size:24px}
.psl-app .psl-home-owner-cta .psl-owner-card strong{font-size:17px;color:var(--psl-text)}
.psl-app .psl-home-owner-cta .psl-owner-card span:last-child{color:var(--psl-text-soft);line-height:1.45}
.psl-app .psl-provider-card__avatar .material-symbols-rounded{font-size:23px;color:#fff}
.psl-app .psl-provider-card__select{box-shadow:none!important}
.psl-app .psl-provider-card__actions{z-index:1;position:relative}
.psl-app .psl-breadcrumbs ol{display:flex;align-items:center;gap:8px;white-space:nowrap;overflow-x:auto;padding:10px 12px;margin:0;list-style:none;border:1px solid var(--psl-border);border-radius:16px;background:rgba(255,255,255,.78)}
.psl-app .psl-breadcrumbs li{display:inline-flex;align-items:center;gap:8px;color:var(--psl-text-soft);font-size:13px;font-weight:800}
.psl-app .psl-breadcrumbs li+li::before{content:"›";color:var(--psl-muted);font-weight:900}
.psl-app .psl-breadcrumbs a{text-decoration:none;color:var(--psl-primary)}
.psl-app .psl-breadcrumbs [aria-current="page"]{color:var(--psl-text)}
@media (max-width:640px){.psl-app .psl-home-owner-cta .psl-owner-actions{grid-template-columns:1fr}.psl-app .psl-provider-hero--no-leading-icon{padding:18px}}


/* Hotfix 1.8.2: consensi form */
.psl-app .psl-form-consents{display:grid;gap:10px;margin:12px 0;padding:12px;border:1px solid rgba(148,163,184,.35);border-radius:14px;background:#f8fafc;color:#334155;font-size:14px;line-height:1.45}
.psl-app .psl-form-consents label{display:flex;align-items:flex-start;gap:10px;font-weight:700}
.psl-app .psl-form-consents input{width:18px;height:18px;margin-top:2px;accent-color:var(--psl-primary)}
.psl-app .psl-form-consents a{color:var(--psl-primary-strong);font-weight:900}

/* Hotfix 1.8.3: UI pubblica app-like, menu attivo e icone servizi sempre coerenti */
.psl-public-body .psl-app .psl-header__nav a.is-active,
.psl-public-body .psl-app .psl-header__nav-link.is-active{
  background:linear-gradient(135deg,rgba(10,132,255,.13),rgba(50,215,75,.10));
  border-color:rgba(10,132,255,.28);
  color:#075cb8;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 8px 20px rgba(10,132,255,.08);
}
.psl-public-body .psl-app .psl-header__nav a.is-active .material-symbols-rounded,
.psl-public-body .psl-app .psl-header__nav-link.is-active .material-symbols-rounded{color:#0a84ff}
.psl-public-body .psl-app .psl-mobile-drawer__nav a.is-active{
  background:linear-gradient(135deg,#eef7ff,#f1fff5);
  border-color:#b9d8fb;
  color:#075cb8;
  box-shadow:0 10px 24px rgba(10,132,255,.08);
}
.psl-public-body .psl-app .psl-mobile-drawer__nav a.is-active .material-symbols-rounded{color:#0a84ff}
.psl-public-body .psl-app .psl-header__hamburger{
  display:none;
  align-items:center;
  gap:7px;
  border:1px solid #cfe0f7;
  background:#fff;
  color:#0f1d33;
  border-radius:999px;
  padding:9px 12px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 26px rgba(10,132,255,.10);
}
.psl-public-body .psl-app .psl-mobile-drawer__panel{
  background:linear-gradient(180deg,#ffffff 0%,#f5fbff 100%);
  border-left:1px solid #cfe0f7;
}
.psl-public-body .psl-app .psl-mobile-drawer__head strong{letter-spacing:-.03em}
.psl-public-body .psl-app .psl-mobile-drawer__nav a{min-height:50px}
.psl-app.psl-menu-open{height:100vh;overflow:hidden}
.psl-app .psl-suggest button{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:9px}
.psl-app .psl-suggest__icon{width:34px;height:34px;border-radius:12px;background:#eef7ff;color:#0a84ff;display:grid!important;place-items:center;font-size:20px!important;grid-row:1 / span 2}
.psl-app .psl-suggest__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}
.psl-app .psl-suggest button small{grid-column:2 / -1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.psl-app .psl-suggest button em{grid-column:3;grid-row:1 / span 2;align-self:center}
@media (max-width:760px){
  .psl-public-body .psl-app{background:#eef6ff;min-height:100dvh}
  .psl-public-body .psl-app .psl-page{padding:8px 10px calc(82px + env(safe-area-inset-bottom))!important;max-width:none}
  .psl-public-body .psl-app .psl-header{position:sticky!important;top:0!important;z-index:220!important;padding:8px 0!important;background:rgba(238,246,255,.92)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .psl-public-body .psl-app .psl-header__inner{border-radius:22px!important;padding:9px 10px!important;box-shadow:0 12px 30px rgba(10,132,255,.10);min-height:62px}
  .psl-public-body .psl-app .psl-header__nav{display:none!important}
  .psl-public-body .psl-app .psl-header__hamburger{display:inline-flex!important;white-space:nowrap}
  .psl-public-body .psl-app .psl-header__hamburger span:last-child{font-size:13px}
  .psl-public-body .psl-app .psl-header__brand--has-logo{max-width:170px!important}
  .psl-public-body .psl-app .psl-header__logo--image{height:42px!important;max-height:42px!important}
  .psl-public-body .psl-app .psl-hero__content,
  .psl-public-body .psl-app .psl-page-title,
  .psl-public-body .psl-app .psl-section,
  .psl-public-body .psl-app .psl-search-strip__inner,
  .psl-public-body .psl-app .psl-rich-text,
  .psl-public-body .psl-app .psl-provider-card,
  .psl-public-body .psl-app .psl-service-card{border-radius:24px!important;box-shadow:0 10px 26px rgba(10,132,255,.07)}
  .psl-public-body .psl-app .psl-search{grid-template-columns:1fr!important;gap:9px}
  .psl-public-body .psl-app .psl-search input{min-height:52px;border-radius:16px;font-size:16px}
  .psl-public-body .psl-app .psl-search__submit{min-height:52px;border-radius:16px;width:100%;font-size:15px}
  .psl-public-body .psl-app .psl-card-list{grid-template-columns:1fr;gap:12px}
  .psl-public-body .psl-app .psl-mobile-nav{
    display:grid!important;
    grid-template-columns:repeat(5,1fr);
    gap:6px;
    left:10px;
    right:10px;
    bottom:calc(8px + env(safe-area-inset-bottom));
    border:1px solid rgba(207,224,247,.9);
    border-radius:24px;
    background:rgba(255,255,255,.94);
    box-shadow:0 18px 40px rgba(10,132,255,.18);
    padding:8px;
    z-index:230;
  }
  .psl-public-body .psl-app .psl-mobile-nav a{border-radius:18px;padding:8px 3px;color:#60748c;font-size:11px;gap:3px}
  .psl-public-body .psl-app .psl-mobile-nav a i{font-size:17px}
  .psl-public-body .psl-app .psl-mobile-nav a.is-active{background:linear-gradient(135deg,#eaf5ff,#eefdf2);color:#075cb8;box-shadow:0 8px 20px rgba(10,132,255,.10)}
  .psl-public-body .psl-app .psl-footer{padding-bottom:110px!important}
}
@media (min-width:761px){
  .psl-public-body .psl-app .psl-mobile-nav{display:none!important}
  .psl-public-body .psl-app .psl-header__hamburger{display:none!important}
}

/* Hotfix 1.8.4: icone fuori dal testo indicizzabile e header sticky desktop/mobile */
.psl-app .material-symbols-rounded[data-icon]::before{content:attr(data-icon)}
.psl-app .psl-header{position:sticky!important;top:0!important;z-index:300!important}
.psl-public-body .psl-app .psl-header{position:sticky!important;top:0!important;z-index:300!important;background:rgba(247,251,255,.96)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.psl-public-body .psl-app .psl-header__inner{box-shadow:0 14px 34px rgba(10,132,255,.10)}
@media (min-width:761px){.psl-public-body .psl-app .psl-header{padding-top:10px!important;padding-bottom:10px!important}}


/* Hotfix 1.8.5: header desktop realmente fisso, mappa locale e rifiniture social SEO */
@media (min-width:761px){
  .psl-app .psl-header{
    position:fixed!important;
    top:0!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:min(1320px, calc(100% - 32px))!important;
    z-index:9999!important;
    padding:10px 0!important;
    background:rgba(247,251,255,.96)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  .psl-app .psl-page{padding-top:92px!important;}
}
.psl-app .psl-local-map-section{overflow:hidden}
.psl-app .psl-local-map{display:grid;gap:12px}
.psl-app .psl-local-map__canvas{width:100%;height:380px;border:1px solid var(--psl-border,#cfe0f7);border-radius:22px;overflow:hidden;background:#edf6ff;box-shadow:0 12px 30px rgba(10,132,255,.08)}
.psl-app .psl-local-map__fallback{display:flex;flex-wrap:wrap;gap:8px}
.psl-app .psl-local-map__fallback a{display:inline-flex;gap:5px;align-items:center;max-width:100%;padding:8px 10px;border:1px solid var(--psl-border,#cfe0f7);border-radius:999px;background:#fff;color:#16324f;text-decoration:none;font-size:13px;font-weight:750}
.psl-app .psl-local-map__fallback a:hover{border-color:#0a84ff;color:#075cb8;background:#eef7ff}
.psl-app .leaflet-popup-content a{color:#0a64d8;font-weight:800;text-decoration:none}
@media (max-width:760px){.psl-app .psl-local-map__canvas{height:320px;border-radius:18px}.psl-app .psl-local-map__fallback{display:grid}.psl-app .psl-local-map__fallback a{border-radius:16px}}


/* Hotfix 1.8.6: pin mappa attività sempre visibili */
.psl-app .psl-local-map__canvas .leaflet-marker-icon.psl-map-pin{background:transparent!important;border:0!important}
.psl-app .psl-map-pin span{display:block;width:30px;height:30px;border-radius:18px 18px 18px 5px;background:linear-gradient(135deg,#0a84ff,#22c55e);border:3px solid #fff;box-shadow:0 10px 22px rgba(10,132,255,.28);transform:rotate(-45deg);position:relative}
.psl-app .psl-map-pin span::after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;border-radius:999px;background:#fff;transform:translate(-50%,-50%)}
.psl-app .psl-local-map .leaflet-popup-content{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:13px;line-height:1.45}
.psl-app .psl-local-map .leaflet-popup-content small{display:inline-block;margin-top:3px;color:#5d728a;font-weight:700}
.psl-app .psl-local-map .leaflet-container{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}

/* Hotfix 1.9.3: ricerca mobile app-like e suggeritore più usabile */
.psl-public-body .psl-app .psl-hero--home .psl-search--app,
.psl-public-body .psl-app .psl-search-strip .psl-search--app{
  width:100%;
}
.psl-public-body .psl-app .psl-search--app{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(220px,.62fr) auto!important;
  gap:10px!important;
  align-items:end!important;
}
.psl-public-body .psl-app .psl-search--app .psl-search__field{
  position:relative;
  display:grid;
  gap:6px;
  min-width:0;
  margin:0;
}
.psl-public-body .psl-app .psl-search--app .psl-search__label-text{
  font-size:12px;
  line-height:1;
  color:#4c6078;
  font-weight:950;
  letter-spacing:.01em;
}
.psl-public-body .psl-app .psl-search--app .psl-search__field > .material-symbols-rounded{
  position:absolute;
  left:14px;
  bottom:13px;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  color:#0a84ff;
  pointer-events:none;
  font-size:21px;
}
.psl-public-body .psl-app .psl-search--app input{
  height:52px;
  min-height:52px;
  width:100%;
  border:1px solid #c9ddf5;
  border-radius:16px;
  padding:0 15px 0 44px;
  font-size:16px;
  font-weight:760;
  color:#10233c;
  background:#fff;
  box-shadow:0 1px 0 rgba(255,255,255,.85) inset;
}
.psl-public-body .psl-app .psl-search--app input::placeholder{color:#74889e;font-weight:650}
.psl-public-body .psl-app .psl-search--app input:focus{
  outline:0;
  border-color:#0a84ff;
  box-shadow:0 0 0 4px rgba(10,132,255,.12),0 8px 22px rgba(10,132,255,.07);
}
.psl-public-body .psl-app .psl-search--app .psl-search__submit{
  height:52px;
  min-height:52px;
  white-space:nowrap;
  border-radius:16px;
  padding:0 18px;
  background:linear-gradient(135deg,#0a84ff,#35b6ff);
  box-shadow:0 14px 28px rgba(10,132,255,.18);
}
.psl-public-body .psl-app .psl-search-strip__inner{
  padding:14px;
  border-radius:22px;
  background:rgba(255,255,255,.94);
}
.psl-public-body .psl-app .psl-hero--home .psl-search--app{
  margin-top:18px;
  padding:12px;
  border:1px solid rgba(201,221,245,.9);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff,#f7fbff);
  box-shadow:0 18px 46px rgba(10,132,255,.10);
}
.psl-app .psl-suggest{
  border-radius:18px!important;
  padding:7px!important;
  background:#fff!important;
  border:1px solid #c9ddf5!important;
  box-shadow:0 22px 55px rgba(10,36,80,.18)!important;
  z-index:360!important;
}
.psl-app .psl-suggest button,
.psl-app .psl-suggest-sheet button[role="option"]{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) auto!important;
  grid-template-rows:auto auto;
  column-gap:10px!important;
  row-gap:2px!important;
  align-items:center!important;
  min-height:58px!important;
  width:100%!important;
  padding:10px!important;
  border:0!important;
  border-radius:15px!important;
  background:transparent!important;
  text-align:left!important;
  cursor:pointer!important;
}
.psl-app .psl-suggest button:hover,
.psl-app .psl-suggest button.is-active,
.psl-app .psl-suggest-sheet button[role="option"]:hover,
.psl-app .psl-suggest-sheet button[role="option"].is-active{
  background:linear-gradient(135deg,#eef7ff,#f5fffa)!important;
}
.psl-app .psl-suggest__icon{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  width:38px!important;
  height:38px!important;
  border-radius:14px!important;
  background:#eaf5ff!important;
  color:#0a84ff!important;
  display:grid!important;
  place-items:center!important;
  font-size:21px!important;
}
.psl-app .psl-suggest__title{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  font-size:15px!important;
  line-height:1.18!important;
  color:#10233c!important;
  font-weight:950!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.psl-app .psl-suggest button small,
.psl-app .psl-suggest-sheet button[role="option"] small{
  grid-column:2 / -1!important;
  grid-row:2!important;
  min-width:0!important;
  color:#667b93!important;
  font-size:12px!important;
  line-height:1.2!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.psl-app .psl-suggest button em,
.psl-app .psl-suggest-sheet button[role="option"] em{
  grid-column:3!important;
  grid-row:1!important;
  align-self:center!important;
  font-style:normal!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  color:#075cb8!important;
  background:#eaf5ff!important;
  border:1px solid #c9ddf5!important;
  border-radius:999px!important;
  padding:5px 7px!important;
}
.psl-app .psl-suggest-sheet[hidden]{display:none!important}
.psl-app .psl-suggest-sheet{
  position:fixed;
  inset:0;
  z-index:380;
  display:block;
}
.psl-app .psl-suggest-sheet__backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.34);
  border:0;
  width:100%;
  height:100%;
}
.psl-app .psl-suggest-sheet__panel{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  max-height:min(70vh,620px);
  padding:14px 14px calc(14px + env(safe-area-inset-bottom));
  border-radius:26px 26px 0 0;
  background:linear-gradient(180deg,#ffffff 0%,#f6fbff 100%);
  border-top:1px solid #c9ddf5;
  box-shadow:0 -24px 70px rgba(15,23,42,.22);
  display:flex;
  flex-direction:column;
  gap:10px;
}
.psl-app .psl-suggest-sheet__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 2px 8px;
  border-bottom:1px solid #e4eef9;
}
.psl-app .psl-suggest-sheet__head strong{
  display:block;
  color:#10233c;
  font-size:18px;
  line-height:1.1;
  letter-spacing:-.03em;
}
.psl-app .psl-suggest-sheet__head span{
  display:block;
  margin-top:3px;
  color:#667b93;
  font-size:13px;
  font-weight:700;
}
.psl-app .psl-suggest-sheet__head button{
  width:42px;
  height:42px;
  border-radius:14px;
  border:1px solid #c9ddf5;
  background:#fff;
  color:#10233c;
  display:grid;
  place-items:center;
}
.psl-app .psl-suggest-sheet__list{
  overflow:auto;
  display:grid;
  gap:6px;
  padding-right:2px;
}
.psl-app.psl-suggest-open{height:100vh;overflow:hidden!important}
@media (max-width:760px){
  .psl-public-body .psl-app .psl-page{padding-left:10px!important;padding-right:10px!important}
  .psl-public-body .psl-app .psl-hero--home .psl-hero__content{padding:20px!important;border-radius:24px!important}
  .psl-public-body .psl-app .psl-hero--home .psl-search--app,
  .psl-public-body .psl-app .psl-search-strip .psl-search--app{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:10px!important;
    border-radius:22px!important;
    background:#fff!important;
    border:1px solid #d5e6f8!important;
    box-shadow:0 14px 34px rgba(10,132,255,.10)!important;
  }
  .psl-public-body .psl-app .psl-search-strip{
    position:sticky;
    top:70px;
    z-index:45;
    margin:8px 0 12px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .psl-public-body .psl-app .psl-search-strip__inner{
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .psl-public-body .psl-app .psl-search--app .psl-search__label-text{
    font-size:12px!important;
    color:#31526f!important;
  }
  .psl-public-body .psl-app .psl-search--app input,
  .psl-public-body .psl-app .psl-search--app .psl-search__submit{
    height:54px!important;
    min-height:54px!important;
    border-radius:17px!important;
    font-size:16px!important;
  }
  .psl-public-body .psl-app .psl-search--app .psl-search__submit{
    width:100%!important;
    margin-top:2px!important;
  }
}

/* Hotfix 1.9.6: header sticky centrato, icone SVG integrate, ricerca e mappa coerenti */
.psl-public-body{
  margin:0!important;
  padding:0!important;
  overflow-x:clip!important;
  background:#eef6ff;
}
.psl-public-body .psl-app{
  overflow:visible!important;
  min-width:0;
}
.psl-public-body .psl-app .psl-page{
  max-width:1320px!important;
  margin:0 auto!important;
  padding:0 16px 32px!important;
  overflow:visible!important;
  transform:none!important;
  contain:none!important;
}
.psl-app .psl-icon{
  display:inline-block!important;
  width:1em!important;
  height:1em!important;
  min-width:1em;
  flex:0 0 auto!important;
  vertical-align:-.14em;
  fill:currentColor;
  overflow:visible;
  opacity:1!important;
  visibility:visible!important;
}
.psl-app .material-symbols-rounded.psl-icon::before{content:none!important}

/* L'header occupa tutta la viewport, ma i contenuti restano centrati. */
.psl-public-body .psl-app .psl-header{
  position:sticky!important;
  top:0!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  width:100vw!important;
  max-width:none!important;
  margin:0 0 0 calc(50% - 50vw)!important;
  padding:10px 16px!important;
  z-index:1000!important;
  background:rgba(247,251,255,.94)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  isolation:isolate;
}
.psl-public-body .psl-app .psl-header__inner{
  width:100%!important;
  max-width:1320px!important;
  min-height:64px!important;
  margin:0 auto!important;
  padding:9px 14px!important;
  display:grid!important;
  grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr)!important;
  align-items:center!important;
  gap:16px!important;
  border:1px solid rgba(158,197,241,.72)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 12px 34px rgba(10,74,140,.10)!important;
  overflow:visible!important;
}
.psl-public-body .psl-app .psl-header__brand{
  grid-column:1!important;
  justify-self:start!important;
  min-width:0!important;
  max-width:260px!important;
  overflow:hidden!important;
}
.psl-public-body .psl-app .psl-header__logo--image{
  width:100%!important;
  max-width:250px!important;
  height:48px!important;
  max-height:48px!important;
  overflow:hidden!important;
}
.psl-public-body .psl-app .psl-header__logo--image img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.psl-public-body .psl-app .psl-header__nav{
  grid-column:2!important;
  justify-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  margin:0!important;
  min-width:0;
}
.psl-public-body .psl-app .psl-header__nav-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:42px!important;
  padding:8px 11px!important;
  white-space:nowrap!important;
}
.psl-public-body .psl-app .psl-header__nav-link.is-active{
  color:#075fbd!important;
  border-color:#9ec5f1!important;
  background:#eaf5ff!important;
  box-shadow:inset 0 0 0 1px rgba(10,132,255,.06)!important;
}
.psl-public-body .psl-app .psl-header__hamburger{
  grid-column:3!important;
  justify-self:end!important;
}
.psl-public-body .psl-app .psl-header__logo .psl-icon,
.psl-public-body .psl-app .psl-footer__brand-mark .psl-icon{font-size:28px;color:#0a84ff}
.psl-public-body .psl-app .psl-mobile-nav .psl-icon{font-size:18px}
.psl-public-body .psl-app .psl-provider-card__meta .psl-icon{font-size:14px;color:#0a84ff}
.psl-public-body .psl-app .psl-provider-card__actions .psl-icon{font-size:18px}

/* Le icone dei due campi di ricerca sono SVG inline, quindi sono visibili subito. */
.psl-public-body .psl-app .psl-search--app .psl-search__field>.psl-icon{
  position:absolute!important;
  left:14px!important;
  bottom:15px!important;
  width:22px!important;
  height:22px!important;
  color:#0a84ff!important;
  pointer-events:none!important;
  z-index:2;
}
.psl-public-body .psl-app .psl-search--app input{padding-left:46px!important}
.psl-public-body .psl-app .psl-suggest__icon .psl-icon{width:22px!important;height:22px!important}
.psl-public-body .psl-app .psl-suggest-sheet__head button .psl-icon{width:22px!important;height:22px!important}

/* Un contenitore e un pin per ciascun risultato visualizzato. */
.psl-public-body .psl-app .psl-local-map-section{overflow:visible!important}
.psl-public-body .psl-app .psl-local-map{display:grid!important;gap:12px!important}
.psl-public-body .psl-app .psl-local-map__canvas{
  width:100%!important;
  height:440px!important;
  min-height:340px!important;
  border:1px solid #c9ddf5!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#edf6ff!important;
  box-shadow:0 12px 30px rgba(10,132,255,.08)!important;
}
.psl-public-body .psl-app .psl-local-map__fallback{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;
  gap:8px!important;
  max-height:280px!important;
  overflow:auto!important;
  padding:4px!important;
}
.psl-public-body .psl-app .psl-local-map__fallback a{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  gap:2px 8px!important;
  align-items:center!important;
  padding:10px!important;
  border:1px solid #cfe0f7!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#16324f!important;
  text-align:left!important;
  text-decoration:none!important;
}
.psl-public-body .psl-app .psl-local-map__fallback a strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.psl-public-body .psl-app .psl-local-map__fallback a>span:not(.psl-local-map__result-number),
.psl-public-body .psl-app .psl-local-map__fallback a>small{
  grid-column:2;
  color:#64748b;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.psl-public-body .psl-app .psl-local-map__result-number{
  grid-column:1;
  grid-row:1 / span 3;
  width:28px;
  height:28px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#0a84ff,#1ab7d8);
  color:#fff;
  font-size:12px;
  font-weight:950;
}
.psl-public-body .psl-app .psl-map-pin-wrap{background:transparent!important;border:0!important}
.psl-public-body .psl-app .psl-map-pin-number{
  width:34px;
  height:34px;
  border:3px solid #fff;
  border-radius:50% 50% 50% 8px;
  transform:rotate(-45deg);
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#0a84ff,#17b4d8 58%,#32d74b);
  color:#fff;
  box-shadow:0 8px 18px rgba(8,73,137,.32);
}
.psl-public-body .psl-app .psl-map-pin-number b{
  display:block;
  transform:rotate(45deg);
  font:950 12px/1 Inter,system-ui,sans-serif;
}
.psl-public-body .psl-app .leaflet-popup-content a{color:#0966cc;font-weight:900}

@media (max-width:1120px) and (min-width:981px){
  .psl-public-body .psl-app .psl-header__inner{grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr)!important;gap:10px!important}
  .psl-public-body .psl-app .psl-header__brand{max-width:210px!important}
  .psl-public-body .psl-app .psl-header__nav-link{padding:8px 8px!important;font-size:13px!important;gap:5px!important}
}
@media (max-width:980px){
  .psl-public-body .psl-app .psl-header{padding:8px 10px!important}
  .psl-public-body .psl-app .psl-header__inner{
    min-height:60px!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    padding:8px 10px!important;
  }
  .psl-public-body .psl-app .psl-header__brand{grid-column:1!important;max-width:210px!important}
  .psl-public-body .psl-app .psl-header__nav{display:none!important}
  .psl-public-body .psl-app .psl-header__hamburger{grid-column:2!important;display:inline-flex!important}
  .psl-public-body .psl-app .psl-mobile-drawer{display:block}
}
@media (min-width:981px){
  .psl-public-body .psl-app .psl-header__hamburger{display:none!important}
  .psl-public-body .psl-app .psl-mobile-drawer{display:none!important}
}
@media (max-width:760px){
  .psl-public-body .psl-app .psl-page{padding:0 10px 30px!important}
  .psl-public-body .psl-app .psl-header__brand{max-width:190px!important}
  .psl-public-body .psl-app .psl-header__logo--image{height:42px!important;max-height:42px!important}
  .psl-public-body .psl-app .psl-local-map__canvas{height:360px!important;min-height:320px!important;border-radius:18px!important}
  .psl-public-body .psl-app .psl-local-map__fallback{grid-template-columns:1fr!important;max-height:300px!important}
}

.psl-public-body .psl-app>.psl-header .psl-header__inner{overflow:visible!important}
.psl-public-body .psl-app>.psl-header{position:-webkit-sticky!important;position:sticky!important}

/* FIX-196-FINAL: sticky header outside content wrapper, centered on every viewport */
.psl-public-body .psl-app{overflow:visible!important;transform:none!important;contain:none!important}
.psl-public-body .psl-app>.psl-header{
  position:-webkit-sticky!important;
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:10px 0!important;
  z-index:1400!important;
  background:rgba(247,251,255,.96)!important;
  border:0!important;
  box-shadow:0 1px 0 rgba(158,197,241,.34)!important;
  transform:none!important;
  contain:none!important;
}
.psl-public-body .psl-app>.psl-header>.psl-header__inner{
  width:min(1320px,calc(100% - 28px))!important;
  max-width:1320px!important;
  margin:0 auto!important;
  padding:9px 12px!important;
  display:grid!important;
  grid-template-columns:minmax(180px,1fr) auto minmax(80px,1fr)!important;
  align-items:center!important;
  gap:14px!important;
  border-radius:20px!important;
  overflow:visible!important;
}
.psl-public-body .psl-app>.psl-header .psl-header__brand{grid-column:1!important;justify-self:start!important;margin:0!important}
.psl-public-body .psl-app>.psl-header .psl-header__nav{grid-column:2!important;justify-self:center!important;margin:0!important}
.psl-public-body .psl-app>.psl-header .psl-header__hamburger{grid-column:3!important;justify-self:end!important}
.psl-public-body .psl-app>.psl-page{width:100%!important;max-width:1320px!important;margin:0 auto!important;overflow:visible!important}
@media(max-width:980px){
  .psl-public-body .psl-app>.psl-header{padding:8px 0!important}
  .psl-public-body .psl-app>.psl-header>.psl-header__inner{width:calc(100% - 20px)!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
  .psl-public-body .psl-app>.psl-header .psl-header__nav{display:none!important}
  .psl-public-body .psl-app>.psl-header .psl-header__hamburger{grid-column:2!important;display:inline-flex!important}
}

/* Hotfix 1.9.9: mappa con coordinate reali e stato geocodifica */
.psl-app .psl-local-map__status{display:flex;align-items:center;gap:9px;min-height:42px;padding:10px 13px;border:1px solid var(--psl-border,#cfe0f7);border-radius:14px;background:#f7fbff;color:var(--psl-text-soft,#4f6178);font-size:13px;font-weight:750}
.psl-app .psl-local-map__status::before{content:"";width:9px;height:9px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12);flex:0 0 auto}
.psl-app .psl-local-map__status.is-loading::before{background:transparent;border:2px solid rgba(10,132,255,.22);border-top-color:#0a84ff;box-shadow:none;animation:psl-map-spin .8s linear infinite}
.psl-app .psl-local-map__fallback a{transition:border-color .16s ease,background .16s ease,opacity .16s ease}
.psl-app .psl-local-map__fallback a.is-loading{border-color:#93c5fd;background:#f0f7ff}
.psl-app .psl-local-map__fallback a.is-located{border-color:#86efac;background:#f0fdf4}
.psl-app .psl-local-map__fallback a.is-unavailable{border-color:#e2e8f0;background:#f8fafc;opacity:.82}
.psl-app .psl-local-map__fallback a [data-map-location-status]{display:block;width:100%;margin-top:2px;color:#64748b;font-size:11px;font-weight:700}
.psl-app .psl-local-map__fallback a.is-located [data-map-location-status]{color:#15803d}
.psl-app .psl-local-map__fallback a.is-loading [data-map-location-status]{color:#0966cc}
.psl-app .psl-local-map__canvas:empty{display:grid;place-items:center}
@keyframes psl-map-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.psl-app .psl-local-map__status.is-loading::before{animation:none}}

/* Hotfix 1.10.5 — quality gate, contenuti editoriali e componenti di fiducia */
.psl-app .psl-quality-notice{display:flex;align-items:flex-start;gap:12px;margin:12px 0;padding:14px 16px;border:1px solid #f4cf82;border-radius:16px;background:#fff9e9;color:#5f4614}
.psl-app .psl-quality-notice .psl-icon{width:22px;height:22px;margin-top:2px}
.psl-app .psl-quality-notice div{display:grid;gap:3px}
.psl-app .psl-quality-notice strong{font-size:14px}
.psl-app .psl-quality-notice span{font-size:13px;line-height:1.5}
.psl-app .psl-search--modern{width:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px}
.psl-app .psl-search--modern label{position:relative}
.psl-app .psl-search--modern .psl-search__field-icon{position:absolute;left:13px;bottom:14px;color:#0a84ff;line-height:0;pointer-events:none}
.psl-app .psl-search--modern input{width:100%;padding-left:42px}
.psl-app .psl-hero__trust-row{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:14px;color:#4b6078;font-size:13px;font-weight:700}
.psl-app .psl-hero__trust-row span{display:inline-flex;align-items:center;gap:6px}
.psl-app .psl-summary-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;background:transparent;border:0;box-shadow:none}
.psl-app .psl-summary-panel__item{display:grid;gap:2px;padding:16px;border:1px solid #cfe0f7;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(10,132,255,.05)}
.psl-app .psl-summary-panel__item strong{font-size:26px;line-height:1;color:#0966cc}
.psl-app .psl-summary-panel__item span{font-size:13px;color:#52657c}
.psl-app .psl-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.psl-app .psl-fact-grid>div{display:grid;gap:4px;padding:14px;border:1px solid #d8e8fb;border-radius:14px;background:#fff}
.psl-app .psl-fact-grid dt{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#60738b}
.psl-app .psl-fact-grid dd{margin:0;font-size:15px;font-weight:750;color:#15263d;overflow-wrap:anywhere}
.psl-app .psl-transparency-box{padding:20px;border:1px solid #bcd8f8;border-radius:20px;background:linear-gradient(135deg,#f8fbff,#eef7ff)}
.psl-app .psl-transparency-box h2{margin:0 0 8px}
.psl-app .psl-transparency-box p{margin:0;color:#42566e;line-height:1.65}
.psl-app .psl-transparency-box a{color:#0966cc;font-weight:850}
.psl-app .psl-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.psl-app .psl-trust-grid>a{display:grid;gap:6px;padding:18px;border:1px solid #cfe0f7;border-radius:18px;background:#fff;color:#14243a;text-decoration:none;box-shadow:0 10px 26px rgba(10,132,255,.05)}
.psl-app .psl-trust-grid>a:hover{border-color:#0a84ff;transform:translateY(-1px)}
.psl-app .psl-trust-grid strong{font-size:16px}
.psl-app .psl-trust-grid span{font-size:13px;line-height:1.5;color:#53677e}
.psl-app .psl-trust-content{max-width:960px;margin-left:auto;margin-right:auto;padding:26px}
.psl-app .psl-trust-content h2{margin:26px 0 8px;color:#10233d}
.psl-app .psl-trust-content h2:first-child{margin-top:0}
.psl-app .psl-trust-content p,.psl-app .psl-editorial-content p{line-height:1.75;color:#3f536b}
.psl-app .psl-section__intro{margin:-6px 0 14px;color:#52657c}
.psl-app .psl-breadcrumbs{overflow-x:auto;scrollbar-width:none;margin:2px 0 12px}
.psl-app .psl-breadcrumbs::-webkit-scrollbar{display:none}
.psl-app .psl-breadcrumbs ol{display:flex;align-items:center;gap:8px;width:max-content;min-width:100%;margin:0;padding:8px 12px;list-style:none;border:1px solid #d9e8f8;border-radius:13px;background:#f9fcff}
.psl-app .psl-breadcrumbs li{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:750;color:#63768d}
.psl-app .psl-breadcrumbs li:not(:last-child)::after{content:"/";color:#9aacc0}
.psl-app .psl-breadcrumbs a{color:#315c88;text-decoration:none}
.psl-app .psl-breadcrumbs [aria-current="page"]{color:#10233d}
@media(max-width:900px){.psl-app .psl-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.psl-app .psl-search--modern{grid-template-columns:1fr}.psl-app .psl-search--modern .psl-search__submit{width:100%}.psl-app .psl-summary-panel{grid-template-columns:1fr 1fr}.psl-app .psl-fact-grid{grid-template-columns:1fr}.psl-app .psl-trust-grid{grid-template-columns:1fr}.psl-app .psl-hero__trust-row{display:grid}}
@media(max-width:430px){.psl-app .psl-summary-panel{grid-template-columns:1fr}}
