/* ===== Stile A (foto in primo piano, accento corallo) + sezioni nuove =====
   Per cambiare colore al sito basta modificare le tre variabili qui sotto. */
:root{--accent:#E8505B;--accent-dark:#D23B47;--accent-soft:#FFF0F1;--radius:16px}
h1,h2,h3{font-family:'Bricolage Grotesque','Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:-.02em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* barra "esplora" sotto il menu */
.explore{border-bottom:1px solid #eee;background:#fff}
.explore-in{display:flex;gap:30px;overflow-x:auto;padding-top:12px;padding-bottom:12px;scrollbar-width:none}
.explore-in::-webkit-scrollbar{display:none}
.explore a{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#717171;text-decoration:none;white-space:nowrap;padding-bottom:8px;border-bottom:2px solid transparent}
.explore a:hover{color:#222;border-bottom-color:#ddd}.explore a.on{color:#222;border-bottom-color:#222}
.explore svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* schede annunci e città */
.grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:30px 22px}
.l-card .ph{aspect-ratio:1/1;border-radius:16px}
.l-card .body{padding-top:10px}.l-card strong{font-size:15px;line-height:1.3}
.l-card .price strong{font-weight:800}
.badge{box-shadow:0 1px 4px rgba(0,0,0,.18)}
.city-card .ph{height:auto;aspect-ratio:4/5;border-radius:16px}
.city-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.card{border-radius:16px}
.btn{border-radius:12px}
.hero-box{border-radius:28px}
.site-footer{background:#f7f7f7}

/* componenti delle sezioni nuove */
.ft{padding-bottom:40px}
.ft-narrow{max-width:820px}
.ft-head{padding:6px 0 22px}.ft-head h1{font-size:clamp(28px,3.6vw,42px);margin:10px 0 8px}.ft-head p{max-width:720px;color:#555;font-size:17px}
.ft-badge{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;padding:5px 12px}
.ft-sec{margin-top:40px}.ft-sec h2{font-size:26px;margin:0 0 14px}
.ft-box{margin-top:44px;background:#fff;border:1px solid #e8e8e8;border-radius:20px;padding:28px}.ft-box h2{font-size:24px;margin:0 0 12px}
.ft-filters{margin:4px 0 22px;align-items:center}.ft-inline{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ft-inline select{width:auto;min-width:170px;max-width:100%;padding:10px 14px;border:1px solid var(--line-2);border-radius:999px;background:#fff;font:inherit;font-weight:600}
.ft-sort{margin-left:auto;font-size:14px;color:#717171}.ft-sort a{font-weight:700;color:#717171;text-decoration:none}.ft-sort a.on{color:#222;text-decoration:underline}
.ft .field textarea,.ft .field select,.ft .field input[type=text],.ft .field input[type=email],.ft .field input[type=number],.ft .field input[type=date]{width:100%}

/* recensioni */
.rv-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:22px}
.rv-sum-i{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid #e8e8e8;border-radius:18px;padding:18px 20px;text-decoration:none;color:#222}
.rv-sum-i b{font-family:'Bricolage Grotesque',sans-serif;font-size:38px;line-height:1}.rv-sum-i small{color:#717171}
.rv-sum-w{display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border-radius:18px;font-weight:800;text-decoration:none;padding:18px}.rv-sum-w:hover{background:var(--accent-dark);color:#fff}
.rv-stars{color:var(--accent);letter-spacing:2px;font-size:16px}
.rv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.rv-card{background:#fff;border:1px solid #e8e8e8;border-radius:20px;padding:22px;display:flex;flex-direction:column;gap:8px}
.rv-card h2{font-size:18px;margin:0}.rv-card p{margin:0;color:#333}
.rv-top{display:flex;justify-content:space-between;align-items:center}
.rv-role{font-size:12px;font-weight:800;border-radius:999px;padding:4px 10px;background:#EEF3FF;color:#1F3F9E}.rv-role.rv-landlord{background:#FFF6E0;color:#8A5A00}
.rv-by{margin-top:auto;display:flex;flex-direction:column;gap:2px;font-size:14px;color:#717171;padding-top:8px}.rv-by b{color:#222}
.rv-rate{border:0;padding:0;margin:0 0 18px}.rv-rate legend{font-weight:700;margin-bottom:4px;padding:0}.rv-rate .rv-in{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px}
.rv-rate input{position:absolute;opacity:0}.rv-rate label{font-size:34px;line-height:1;color:#d6d6d6;cursor:pointer;margin:0}
.rv-rate label:hover,.rv-rate label:hover~label,.rv-rate input:checked~label{color:var(--accent)}
.rv-rate input:focus-visible+label{outline:3px solid rgba(232,80,91,.35);border-radius:6px}

/* guide */
.gd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.gd-card{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid #e8e8e8;border-radius:18px;padding:18px 20px;text-decoration:none;color:#222}
.gd-card:hover{border-color:#222}.gd-card b{font-family:'Bricolage Grotesque',sans-serif;font-size:21px}.gd-card span{color:#555;font-size:14px}.gd-card small{color:#717171}
.gd-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:6px 0 18px}
.gd-facts div{background:#f7f7f7;border-radius:18px;padding:18px 20px}.gd-facts b{display:block;font-family:'Bricolage Grotesque',sans-serif;font-size:28px;line-height:1.1}.gd-facts span{color:#717171;font-size:14px}
.gd-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.gd-types div{border:1px solid #e8e8e8;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:2px;background:#fff}.gd-types b{font-size:22px;font-family:'Bricolage Grotesque',sans-serif}.gd-types small{color:#717171}
.gd-body{max-width:760px}.gd-body h3{font-size:21px;margin:22px 0 6px}.gd-list{padding-left:22px;display:grid;gap:8px;color:#333}.gd-body h2{font-size:24px;margin:26px 0 10px}
.gd-mates{background:var(--accent-soft);border-radius:16px;padding:16px 20px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}

/* osservatorio prezzi */
.pr-meta{display:flex;flex-wrap:wrap;gap:8px 26px;color:#555;margin:0 0 16px}.pr-meta b{color:#222}
.pr-table table{width:100%;border-collapse:collapse;font-size:14.5px}.pr-table th,.pr-table td{padding:12px 14px;border-bottom:1px solid #eee;text-align:left;white-space:nowrap}
.pr-table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#717171;background:#fafafa}
.pr-table tbody th{font-weight:700;white-space:normal}.pr-table tbody th small{display:block;color:#717171;font-weight:500}
.pr-avg b{display:block}.pr-bar{display:block;height:6px;border-radius:99px;background:#f0f0f0;margin-top:5px;min-width:120px}.pr-bar i{display:block;height:100%;border-radius:99px;background:var(--accent)}
.pr-t{color:#555}
@media (max-width:900px){.pr-t{display:none}}

/* coinquilini */
.rm-bar{margin:0 0 16px}
.rm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}
.rm-card{display:flex;gap:16px;background:#fff;border:1px solid #e8e8e8;border-radius:20px;padding:20px;text-decoration:none;color:#222}.rm-card:hover{border-color:#222}
.rm-av{flex:0 0 52px;width:52px;height:52px;border-radius:50%;background:var(--accent-soft);color:var(--accent-dark);font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:22px;display:flex;align-items:center;justify-content:center}.rm-av.big{width:76px;height:76px;font-size:32px;flex:none}
.rm-in{display:flex;flex-direction:column;gap:3px;min-width:0}.rm-in b{font-size:17px}.rm-in p{margin:6px 0 0;color:#444;font-size:14.5px}.rm-in small{color:#717171}
.rm-where{color:#555;font-size:14px}
.rm-kind{display:inline-block;font-size:12px;font-weight:800;background:#EEF3FF;color:#1F3F9E;border-radius:999px;padding:4px 10px;align-self:flex-start}
.rm-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.rm-chips span{font-size:12px;font-weight:600;border:1px solid #e0e0e0;border-radius:999px;padding:3px 10px;color:#444}
.rm-page{display:flex;flex-direction:column;gap:6px}.rm-page h1{font-size:32px;margin:4px 0 0}.rm-facts{list-style:none;padding:0;margin:6px 0;display:grid;gap:4px}
.rm-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px 14px}
.rm-form .check{margin:6px 0}
.rm-report summary{cursor:pointer;font-weight:700}

/* aiuto */
.hp-search input{width:100%;max-width:560px;padding:14px 18px;border:1px solid #ddd;border-radius:999px;font:inherit;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.hp-cat[hidden],.hp-cat .faq[hidden]{display:none}

/* sezioni nella home */
.hx{margin-top:56px}.hx-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px;margin-bottom:18px}.hx-head h2{margin:0;font-size:28px}.hx-head a{font-weight:700;color:#222}
.hx-cities{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px}
.hx-city{border-radius:18px;padding:18px;min-height:130px;color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(135deg,var(--c1),var(--c2))}.hx-city b{font-family:'Bricolage Grotesque',sans-serif;font-size:22px}.hx-city span{font-size:13px;opacity:.95}
.hx-cta{background:var(--accent-soft);border-radius:20px;padding:22px 26px;display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;align-items:center}.hx-cta b{font-size:18px}
.hx-prices{border:1px solid #e8e8e8;border-radius:20px;overflow:hidden;background:#fff}.hx-prices div{display:flex;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid #f0f0f0}.hx-prices div:last-child{border:0}.hx-prices b{font-family:'Bricolage Grotesque',sans-serif}
@media (max-width:700px){.ft-box{padding:20px}.rm-card{flex-direction:column}}
