/* Base dal mockup */
*{box-sizing:border-box}
body{margin:0;background:#EFEBE5;font-family:Barlow,Helvetica,Arial,sans-serif;color:#0E1726;-webkit-font-smoothing:antialiased}
a{color:#C8402B;text-decoration:none}
a:hover{color:#00A6E2}
button{font-family:inherit;cursor:pointer}
input,select,textarea{font-family:inherit}
::selection{background:#00A6E2;color:#fff}
img,video{max-width:100%}
[data-r="burger"]{display:none}


/* Responsive dal mockup */
@media (max-width: 1440px) {
    [data-r="navbar"] { gap: 14px !important; }
    [data-r="nav"] > button, [data-r="drop"] > button { padding-left: 8px !important; padding-right: 8px !important; font-size: 12.5px !important; letter-spacing: 0.01em !important; }
    [data-r="navCta"] { padding: 13px 15px !important; font-size: 12px !important; letter-spacing: 0.03em !important; }
  }

@media (max-width: 1240px) {
    [data-r="navbar"] { gap: 10px !important; }
    [data-r="nav"] > button, [data-r="drop"] > button { padding-left: 6px !important; padding-right: 6px !important; font-size: 11.5px !important; letter-spacing: 0 !important; }
    [data-r="navCta"] { padding: 12px 12px !important; font-size: 11.5px !important; letter-spacing: 0.02em !important; }
    [data-r="topbar"] { white-space: nowrap !important; }
  }

@media (max-width: 1024px) {
    [style*="max-width: 1240px"], [style*="max-width: 1000px"], [style*="max-width: 940px"] { padding-left: 24px !important; padding-right: 24px !important; }
    [data-r="anniv"] { grid-template-columns: 1fr !important; gap: 24px !important; padding: 48px 0 !important; }
    [data-r="anniv"] > div:first-child > div:first-child { font-size: 132px !important; }
    [data-r="annivRail"] { grid-template-columns: 1fr !important; }
    [data-r="casaGrid"] { grid-template-columns: 1fr 1fr !important; }
    [data-r="casaGrid"] > div { grid-column: span 1 !important; }
    [data-r="casaNum"] { grid-template-columns: 1fr 1fr !important; }
    [data-r="heroBar"] { position: static !important; background: #0E1726 !important; padding: 0 !important; }
    [data-r="heroBar"] [data-r="row"] { padding: 24px 24px 26px !important; }
    [data-r="navbar"] { flex-wrap: wrap !important; height: auto !important; padding-top: 12px !important; padding-bottom: 12px !important; gap: 12px !important; }
    [data-r="burger"] { display: inline-flex !important; }
    [data-r="nav"] { display: none !important; }
    [data-r="nav"][data-open="true"] { display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 0 !important; order: 3; flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; border-top: 1px solid rgba(255,255,255,0.14); padding-top: 6px !important; }
    [data-r="nav"] > button { padding: 14px 4px !important; font-size: 14px !important; text-align: left !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
    [data-r="navCta"] { display: none !important; }
    [data-r="nav"][data-open="true"] ~ [data-r="navCta"] { display: block !important; order: 4; flex: 0 0 100% !important; width: 100% !important; margin-top: 10px; }
    [data-r="drop"] { width: 100% !important; }
    [data-r="drop"] > button { width: 100% !important; justify-content: space-between !important; padding: 14px 4px !important; font-size: 14px !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
    [data-r="dropMenu"] { position: static !important; width: 100% !important; min-width: 0 !important; background: rgba(255,255,255,0.07) !important; box-shadow: none !important; }
    [data-r="dropMenu"] > div { color: rgba(255,255,255,0.82) !important; border-left-color: transparent !important; padding: 12px 18px !important; }
    [data-r="h1"] { font-size: 46px !important; }
    [style*="font-size: 76px"] { font-size: 46px !important; }
    [style*="font-size: 68px"] { font-size: 42px !important; }
    [style*="font-size: 60px"] { font-size: 38px !important; }
    [style*="font-size: 58px"] { font-size: 36px !important; }
    [style*="font-size: 52px"] { font-size: 36px !important; }
    [style*="font-size: 46px"] { font-size: 32px !important; }
    [style*="font-size: 42px"] { font-size: 30px !important; }
    [style*="font-size: 38px"] { font-size: 28px !important; }
    [style*="font-size: 36px"] { font-size: 27px !important; }
    [style*="repeat(4, 1fr)"]:not([data-r="keep"]) { grid-template-columns: 1fr 1fr !important; }
    [style*="1fr 1.1fr"], [style*="1.15fr 1fr"], [style*="1fr 1.25fr"], [style*="1.3fr 1fr"], [style*="1fr 1.2fr"], [style*="1.1fr 1fr"],
    [style*="1fr 320px"], [style*="1fr 340px"], [style*="200px 1fr 300px"], [style*="320px 1fr"],
    [style*="1.4fr 1fr 1fr auto"], [style*="1.4fr 1fr 1fr"] { grid-template-columns: 1fr !important; }
    [data-r="row"] { flex-direction: column !important; align-items: flex-start !important; gap: 20px !important; }
    [data-r="sticky"]:not(header) { position: static !important; }
    [data-r="modal"] { align-items: flex-start !important; padding: 20px !important; }
    [data-r="modalBody"] { grid-template-columns: 1fr !important; max-height: calc(100vh - 40px) !important; overflow-y: auto !important; }
    [data-r="modalPhoto"] { height: 300px !important; flex-shrink: 0; }
    [data-r="modalPhoto"] img { object-position: center 38% !important; }
    [data-r="lbNav"] { display: none !important; }
    [style*="gap: 80px"], [style*="gap: 72px"], [style*="gap: 64px"] { gap: 40px !important; }
    [style*="padding: 96px 32px"] { padding: 56px 24px !important; }
    [style*="padding: 88px 32px"], [style*="padding: 80px 32px"] { padding: 56px 24px !important; }
    [style*="padding: 76px 0 64px"] { padding: 48px 0 40px !important; }
  }

@media (max-width: 680px) {
    [style*="max-width: 1240px"], [style*="max-width: 1000px"], [style*="max-width: 940px"] { padding-left: 18px !important; padding-right: 18px !important; }
    [data-r="anniv"] > div:first-child > div:first-child { font-size: 104px !important; }
    [data-r="annivRail"] { grid-template-columns: 1fr !important; }
    [data-r="casaGrid"], [data-r="casaNum"] { grid-template-columns: 1fr !important; }
    [data-r="heroBar"] [data-r="row"] { padding: 20px 18px 22px !important; }
    [data-r="heroBtns"] { width: 100% !important; }
    [data-r="heroBtns"] > button { flex: 1 1 100% !important; }
    [data-r="topbar"] { white-space: normal !important; }
    [data-r="nav"] > button { white-space: nowrap !important; }
    [data-r="h1"], [style*="font-size: 76px"], [style*="font-size: 68px"], [style*="font-size: 60px"], [style*="font-size: 58px"], [style*="font-size: 52px"] { font-size: 34px !important; }
    [style*="font-size: 46px"], [style*="font-size: 42px"], [style*="font-size: 38px"], [style*="font-size: 36px"] { font-size: 26px !important; }
    [style*="font-size: 34px"] { font-size: 24px !important; }
    [style*="font-size: 28px"], [style*="font-size: 27px"], [style*="font-size: 26px"] { font-size: 22px !important; }
    [style*="font-size: 21px"], [style*="font-size: 20px"], [style*="font-size: 19px"] { font-size: 17px !important; }
    [style*="grid-template-columns"]:not([data-r="keep"]) { grid-template-columns: 1fr !important; }
    [data-r="row"] { flex-direction: column !important; align-items: flex-start !important; gap: 18px !important; }
    [data-r="row"] > * { width: auto; }
    [data-r="navbar"] { height: auto !important; flex-wrap: wrap !important; padding-top: 12px !important; padding-bottom: 12px !important; gap: 12px !important; }
    [data-r="burger"] { display: inline-flex !important; }
    [data-r="nav"] { display: none !important; }
    [data-r="nav"][data-open="true"] { display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 0 !important; order: 3; flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; border-top: 1px solid rgba(255,255,255,0.14); padding-top: 6px !important; }
    [data-r="nav"] > button { padding: 14px 4px !important; font-size: 14px !important; text-align: left !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; border-left: 3px solid transparent !important; }
    [data-r="navCta"] { display: none !important; }
    [data-r="nav"][data-open="true"] ~ [data-r="navCta"] { display: block !important; order: 4; flex: 0 0 100% !important; width: 100% !important; margin-top: 10px; }
    [data-r="drop"] { width: 100% !important; }
    [data-r="drop"] > button { width: 100% !important; justify-content: space-between !important; padding: 14px 4px !important; font-size: 14px !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
    [data-r="dropMenu"] { position: static !important; width: 100% !important; min-width: 0 !important; background: rgba(255,255,255,0.07) !important; box-shadow: none !important; }
    [data-r="dropMenu"] > div { color: rgba(255,255,255,0.82) !important; border-left-color: transparent !important; padding: 12px 18px !important; }
    [data-r="topbar"] { height: auto !important; flex-direction: column !important; align-items: flex-start !important; gap: 6px !important; padding-top: 8px !important; padding-bottom: 8px !important; font-size: 11px !important; }
    [data-r="ctaFull"] { width: 100% !important; }
    [style*="padding: 96px 32px"], [style*="padding: 88px 32px"], [style*="padding: 80px 32px"] { padding: 44px 18px !important; }
    [style*="padding: 88px 0"], [style*="padding: 76px 0"], [style*="padding: 74px 0"], [style*="padding: 70px 0"] { padding: 44px 0 !important; }
    [style*="padding: 76px 0 64px"] { padding: 34px 0 30px !important; }
    [style*="padding: 46px 50px"], [style*="padding: 40px 44px"], [style*="padding: 44px 46px"] { padding: 26px 20px !important; }
    [style*="padding: 34px 36px"], [style*="padding: 34px 32px"] { padding: 24px 20px !important; }
    [style*="padding: 26px 28px"], [style*="padding: 28px 32px"], [style*="padding: 30px 32px"] { padding: 20px 18px !important; }
    [data-r="cal"] { padding: 18px !important; }
    [data-r="lbNav"] { display: none !important; }
    [data-r="modal"] { padding: 0 !important; align-items: flex-start !important; }
    [data-r="modalBody"] { grid-template-columns: 1fr !important; }
    [data-r="modalPhoto"] { height: 260px !important; }
    [data-r="sticky"] { position: static !important; }
    [data-r="steps"] { flex-wrap: wrap !important; }
    [data-r="steps"] > div { min-width: 45% !important; }
  }
/* Wizard prenota: stati step e scelte */
.step-dot{background:#FAF8F5;color:#8B94A2;transition:background .2s,color .2s}
.step-dot[data-state="active"]{background:#0E1726;color:#fff}
.step-dot[data-state="done"]{background:#00A6E2;color:#fff}
.wstep{display:none}
.choice[data-sel="1"]{border-color:#C8402B !important;background:rgba(200,64,43,0.06) !important}
.alga-flt.is-active{background:#0E1726 !important;color:#fff !important}

/* Corpo articolo (single post) */
.alga-article-body{font-size:19px;line-height:1.72;color:#23303F}
.alga-article-body p{margin:0 0 26px}
.alga-article-body h2{font-family:Archivo,sans-serif;font-weight:900;font-size:30px;text-transform:uppercase;margin:40px 0 16px;line-height:1.1}
.alga-article-body h3{font-family:Archivo,sans-serif;font-weight:800;font-size:23px;margin:32px 0 12px}
.alga-article-body ul,.alga-article-body ol{margin:0 0 26px 22px}
.alga-article-body li{margin-bottom:8px}
.alga-article-body img{margin:12px 0}
.alga-article-body a{color:#C8402B;text-decoration:underline}
.alga-article-body blockquote{border-left:5px solid #E9B23C;padding:8px 0 8px 28px;margin:36px 0;font-family:Archivo,sans-serif;font-weight:700;font-size:25px;line-height:1.35}

/* Paginazione News */
.alga-pagination{display:flex;flex-wrap:wrap;gap:6px;margin-top:46px;align-items:center}
.alga-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:46px;padding:0 14px;border:1px solid rgba(14,23,38,0.2);background:#fff;color:#0E1726;font-family:Archivo,sans-serif;font-weight:800;font-size:14px;text-transform:uppercase;letter-spacing:.02em;text-decoration:none;transition:background .15s,color .15s}
.alga-pagination a.page-numbers:hover{background:#00A6E2;border-color:#00A6E2;color:#fff}
.alga-pagination .page-numbers.current{background:#C8402B;border-color:#C8402B;color:#fff}
.alga-pagination .page-numbers.dots{border-color:transparent;background:none}
.alga-pagination .prev,.alga-pagination .next{padding:0 18px}
