:root{--ink: #23281B;--heading: #0B0F14;--muted: rgba(35, 40, 27, .6);--muted-strong: rgba(35, 40, 27, .75);--cream: #ffffff;--warm: #f6f8f3;--card-bg: #ffffff;--surface: #ffffff;--paper: #ffffff;--header-top: #ffffff;--input-focus-bg: #ffffff;--hero-gradient: linear-gradient(180deg, #ffffff 0px, #fcf9e9 300px, #f9f3d2 620px, #fbf7e4 800px, #ffffff 1000px);--hero-wave-fill: #eaf2e4;--green: #45a58a;--green-soft: #eaf2e4;--olive: #6d8231;--sage: #35816b;--sage-light: #eaf2e4;--sage-border: rgba(69, 165, 138, .35);--gold: #45a58a;--gold-light: #7cc5ad;--terracotta: #d5453c;--border: rgba(35, 40, 27, .12);--border-soft: rgba(11, 15, 20, .08);--input-border: rgba(35, 40, 27, .18);--shadow: 0 16px 60px -46px rgba(0, 0, 0, .35);--shadow-lift: 0 22px 44px -30px rgba(20, 55, 44, .4);--radius-lg: 20px;--radius-md: 14px;--radius-sm: 12px;--radius-pill: 999px;--gradient-cta: linear-gradient(135deg, rgba(69, 165, 138, .95), rgba(109, 130, 49, .88));--btn-primary-bg: var(--gradient-cta);--btn-primary-hover-bg: linear-gradient(135deg, #3d9a80, #5f7330);--btn-primary-color: #ffffff;--badge-green-bg: #eaf2e4;--badge-green-border: rgba(69, 165, 138, .4);--badge-yellow-bg: #fdf6e3;--badge-yellow-color: #8a6d1f;--badge-yellow-border: rgba(217, 164, 65, .4);--badge-red-bg: #fdeeec;--error-bg: #fdf1f0;--error-border: rgba(213, 69, 60, .35);--compare-summary-bg: #eaf2e4;--compare-summary-border: rgba(69, 165, 138, .3);--compare-summary-value: #2e7d64;--compare-breakeven-accent: #45a58a}body.dark{--ink: #e8ede6;--heading: #f4f7f2;--muted: rgba(232, 237, 230, .6);--muted-strong: rgba(232, 237, 230, .78);--cream: #0f1412;--warm: #1a231e;--card-bg: #161e19;--surface: #1a231e;--paper: #0f1412;--header-top: #0f1412;--input-focus-bg: #1a231e;--hero-gradient: linear-gradient(180deg, #0f1412 0px, #12211b 300px, #14281f 620px, #12241c 800px, #0f1412 1000px);--hero-wave-fill: #16302a;--green: #45a58a;--green-soft: #16302a;--sage: #6fbfa4;--sage-light: #16302a;--sage-border: rgba(111, 191, 164, .3);--gold: #45a58a;--gold-light: #7cc5ad;--border: rgba(255, 255, 255, .12);--border-soft: rgba(255, 255, 255, .08);--input-border: rgba(255, 255, 255, .18);--shadow: 0 16px 60px -46px rgba(0, 0, 0, .8);--badge-green-bg: #16302a;--badge-green-border: rgba(111, 191, 164, .35);--badge-yellow-bg: #2a2513;--badge-yellow-color: #d9b95c;--badge-yellow-border: rgba(217, 185, 92, .35);--badge-red-bg: #33191a;--error-bg: #2a1414;--error-border: rgba(217, 90, 82, .4);--compare-summary-bg: #16302a;--compare-summary-border: rgba(111, 191, 164, .3);--compare-summary-value: #8fd4bc}*{margin:0;padding:0;box-sizing:border-box}html{color-scheme:light only}body.dark,html:has(body.dark){color-scheme:dark}body{background:var(--cream);color:var(--ink);font-family:Jost,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;min-height:100vh;overflow-x:hidden}a{color:var(--sage)}:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:6px}header{position:relative;z-index:10;padding:3.5rem 2rem 4.75rem;text-align:center;background:var(--hero-gradient)}header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:26px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' preserveAspectRatio='none'%3E%3Cpath fill='%23eaf2e4' d='M0 12 Q30 0 60 12 T120 12 V24 H0 Z'/%3E%3C/svg%3E") bottom center / 120px 26px repeat-x;pointer-events:none}body.dark header:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' preserveAspectRatio='none'%3E%3Cpath fill='%2316302a' d='M0 12 Q30 0 60 12 T120 12 V24 H0 Z'/%3E%3C/svg%3E")}.logo-badge{display:inline-block;font-size:.68rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--sage);background:#ffffffb8;border:1.5px solid var(--green);border-radius:var(--radius-pill);padding:.4rem 1.1rem;margin-bottom:1.5rem}body.dark .logo-badge{background:#ffffff0f}h1{font-size:clamp(2.4rem,5.5vw,4rem);font-weight:900;line-height:1.05;color:var(--heading);letter-spacing:-.03em;margin-bottom:.85rem}h1 em{font-style:italic;color:var(--green)}.subtitle{font-size:1rem;color:var(--muted);max-width:520px;margin:0 auto;line-height:1.7}main{position:relative;z-index:1;max-width:900px;margin:0 auto;padding:2.5rem 1.5rem 4rem}.form-card,.results-card,.compare-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.5rem;box-shadow:var(--shadow)}.form-card{margin-bottom:2rem}.results-card{display:none;animation:fadeUp .4s ease forwards}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.form-section-title{font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:var(--heading);margin-bottom:1.5rem;padding-bottom:.85rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.75rem}.form-section-title .dot{width:10px;height:10px;background:var(--green);border-radius:50%;flex-shrink:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem}@media(max-width:600px){.form-grid{grid-template-columns:1fr}.form-card{padding:1.5rem}}.field-group{display:flex;flex-direction:column;gap:.4rem}.field-group.full{grid-column:1 / -1}label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}label span.req{color:var(--terracotta);margin-left:2px}input,select{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);padding:.75rem 1rem;font-family:inherit;font-size:.95rem;font-weight:500;color:var(--ink);transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;width:100%}input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #45a58a29;background:var(--input-focus-bg)}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23737373' fill='none' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}input::placeholder{color:#23281b59}body.dark input::placeholder{color:#e8ede661}.field-hint{font-size:.75rem;color:var(--muted);line-height:1.5}.field-hint a{color:var(--sage);font-weight:600;text-decoration:underline}.btn-primary{width:100%;padding:1.05rem 2rem;background:var(--gradient-cta);color:#fff;border:none;border-radius:var(--radius-md);font-family:inherit;font-size:.95rem;font-weight:800;letter-spacing:.01em;cursor:pointer;transition:transform .2s,box-shadow .2s,filter .2s;display:flex;align-items:center;justify-content:center;gap:.6rem;margin-top:.5rem;box-shadow:0 16px 40px -22px #45a58abf}.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 20px 44px -20px #45a58acc}.btn-primary:active{transform:translateY(0) scale(.99)}.btn-primary:disabled{background:#23281b4d;box-shadow:none;cursor:not-allowed}.btn-primary .spinner{width:16px;height:16px;border:2.5px solid rgba(255,255,255,.85);border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite;display:none}.btn-primary.loading .spinner{display:block}.btn-primary.loading .btn-text{display:none}@keyframes spin{to{transform:rotate(360deg)}}.error-box{background:var(--error-bg);border:1px solid var(--error-border);border-left:3px solid var(--terracotta);padding:1rem 1.25rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;color:#a83a32;display:none;margin-top:1rem}body.dark .error-box{color:#f0a49e}.results-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.results-title{font-size:1.5rem;font-weight:900;letter-spacing:-.02em;color:var(--heading)}.results-meta{font-size:.85rem;color:var(--muted);margin-top:.35rem;line-height:1.6}.conservazione-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem 1rem;border-radius:var(--radius-pill);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.badge-ottimo{background:var(--badge-green-bg);color:var(--sage);border:1px solid var(--badge-green-border)}.badge-normale{background:var(--badge-yellow-bg);color:var(--badge-yellow-color);border:1px solid var(--badge-yellow-border)}.badge-scadente{background:var(--badge-red-bg);color:var(--terracotta);border:1px solid var(--error-border)}.price-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-bottom:2rem}@media(max-width:600px){.price-grid{grid-template-columns:1fr}}.price-card{text-align:center;padding:1.75rem 1rem;border:1px solid var(--border);border-radius:16px;background:var(--card-bg);position:relative;overflow:hidden;transition:transform .25s ease}.price-card:hover{transform:translateY(-4px)}.price-card.featured{background:linear-gradient(150deg,#4caf93,#45a58a 55%,#6d8231 130%);border-color:transparent;box-shadow:0 22px 44px -26px #45a58aa6}.price-card.featured:hover{transform:translateY(-6px)}.price-label{font-size:.65rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:.75rem}.price-card.featured .price-label{color:#ffffffd9}.price-value{font-size:1.8rem;font-weight:800;color:var(--heading);letter-spacing:-.02em;line-height:1}.price-card.featured .price-value{color:#fff}.price-sqm{font-size:.82rem;color:var(--muted);margin-top:.5rem}.price-card.featured .price-sqm{color:#fffc}.range-section{margin-bottom:2rem;padding:1.5rem;background:var(--warm);border:1px solid var(--border);border-radius:var(--radius-md)}.range-title{font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem}.range-bar-wrap{position:relative;height:8px;background:#23281b1a;border-radius:var(--radius-pill);margin-bottom:.75rem}body.dark .range-bar-wrap{background:#ffffff1f}.range-bar-fill{position:absolute;height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--green),#e3b23c,var(--terracotta))}.range-bar-mid{position:absolute;width:14px;height:14px;background:var(--heading);border:2px solid var(--card-bg);border-radius:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000040}.range-labels{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted)}.tips-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}@media(max-width:600px){.tips-grid{grid-template-columns:1fr}}.tip-card{padding:1.1rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--warm)}.tip-icon{font-size:1.25rem;margin-bottom:.5rem}.tip-title{font-size:.85rem;font-weight:700;color:var(--heading);margin-bottom:.3rem}.tip-text{font-size:.82rem;color:var(--muted);line-height:1.6}.attribution{text-align:center;padding:1rem;border-top:1px solid var(--border);font-size:.75rem;color:var(--muted);margin-top:1.5rem}.attribution a{color:var(--sage);text-decoration:none}.attribution a:hover{text-decoration:underline}footer,.site-footer{position:relative;z-index:1;border-top:1px solid var(--border);background:var(--card-bg);font-size:.85rem;color:var(--muted)}.site-footer-inner{max-width:1140px;margin:0 auto;padding:1.5rem clamp(20px,3vw,40px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.footer-brand{font-weight:800;color:var(--heading)}.footer-links{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem}.footer-links a{color:var(--ink);font-weight:700;text-decoration:none;opacity:.8;transition:opacity .15s}.footer-links a:hover{opacity:1;text-decoration:underline}.footer-note{border-top:1px solid var(--border-soft);text-align:center;padding:.85rem clamp(20px,3vw,40px);font-size:.72rem;color:var(--muted)}.footer-note a{color:var(--sage);font-weight:600;text-decoration:none}.footer-note a:hover{text-decoration:underline}footer{text-align:left;padding:0}.decor-line{display:flex;align-items:center;gap:1rem;margin:1.5rem 0}.decor-line:before,.decor-line:after{content:"";flex:1;height:1px;background:var(--border)}.decor-line span{font-size:.65rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.affitto-section{background:var(--warm);border:1px solid var(--border);padding:1.5rem;border-radius:var(--radius-md);margin-top:0}.affitto-title{font-size:1.1rem;font-weight:800;margin-bottom:1rem;color:var(--heading)}.affitto-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem}@media(max-width:600px){.affitto-grid{grid-template-columns:1fr}}.affitto-item{text-align:center;padding:1rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm)}.affitto-label{font-size:.65rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}.affitto-value{font-size:1.4rem;font-weight:800;color:var(--sage)}.affitto-sub{font-size:.72rem;color:var(--muted);margin-top:.25rem}@media(max-width:480px){.results-card,.form-card,.compare-card{padding:1.25rem}main{padding:1.5rem 1rem 3rem}}.dark-toggle{position:absolute;top:1.75rem;right:2rem;background:#ffffffb8;border:1px solid var(--border);border-radius:var(--radius-pill);padding:.45rem .95rem;cursor:pointer;font-size:1.15rem;transition:transform .2s,box-shadow .2s;display:flex;align-items:center;gap:.5rem;box-shadow:0 10px 30px -18px #00000059;z-index:20}body.dark .dark-toggle{background:#ffffff0f}.dark-toggle:hover{transform:scale(1.06)}.btn-print{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-pill);padding:.6rem 1.4rem;font-family:inherit;font-size:.82rem;font-weight:700;color:var(--ink);cursor:pointer;transition:background .2s,transform .2s;display:flex;align-items:center;gap:.5rem}.btn-print:hover{background:var(--warm);transform:translateY(-1px)}.btn-compare{background:var(--green);color:#fff;border:none;border-radius:var(--radius-pill);padding:.6rem 1.4rem;font-family:inherit;font-size:.82rem;font-weight:700;cursor:pointer;transition:filter .2s,transform .2s;display:flex;align-items:center;gap:.5rem}.btn-compare:hover{filter:brightness(1.06);transform:translateY(-1px)}.compare-card{margin-top:2rem;display:none}.compare-card.active{display:block;animation:fadeUp .4s ease forwards}.compare-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.compare-title{font-size:1.3rem;font-weight:900;letter-spacing:-.02em;color:var(--heading)}.btn-close-compare{background:var(--badge-red-bg);color:var(--terracotta);border:1px solid var(--error-border);border-radius:50%;width:32px;height:32px;font-size:1.15rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s}.btn-close-compare:hover{background:var(--error-border);transform:rotate(90deg)}.compare-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:1rem;margin-bottom:1.5rem;align-items:end}@media(max-width:600px){.compare-form{grid-template-columns:1fr}}.compare-results{border-top:1px solid var(--border);padding-top:1.5rem;display:none}.compare-results.visible{display:block}@media print{body:before,header,.form-card,footer,.site-footer,.btn-print,.btn-compare,.dark-toggle,.compare-card{display:none!important}body{background:#fff;color:#000}.results-card{box-shadow:none;border:1px solid #ccc;page-break-inside:avoid}.results-card:before{content:"Stima Immobiliare OMI — " attr(data-print-date);display:block;font-family:Jost,sans-serif;font-size:.9rem;font-weight:700;color:#333;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid #000}*{color:#000!important;background:#fff!important;border-color:#ccc!important}.price-card.featured{border:2px solid #000!important}}.autocomplete-wrapper{position:relative}.autocomplete-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--card-bg);border:1px solid var(--sage-border);border-radius:var(--radius-sm);box-shadow:0 24px 48px -24px #0000004d;z-index:100;max-height:240px;overflow-y:auto;display:none}.autocomplete-dropdown.visible{display:block}.autocomplete-item{padding:.65rem 1rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.9rem;transition:background .15s}.autocomplete-item+.autocomplete-item{border-top:1px solid var(--border-soft)}.autocomplete-item:hover,.autocomplete-item[aria-selected=true]{background:var(--sage-light)}.comune-nome{font-weight:600;color:var(--ink)}.comune-provincia{font-size:.75rem;color:var(--muted)}.autocomplete-empty{padding:.75rem 1rem;font-size:.85rem;color:var(--muted);font-style:italic}.comune-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .85rem;background:var(--badge-green-bg);border:1px solid var(--badge-green-border);border-radius:var(--radius-pill);font-size:.78rem;font-weight:700;color:var(--sage);margin-top:.25rem}.storico-section{margin-bottom:1.25rem;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.storico-title{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:.6rem 1rem;background:var(--warm);border-bottom:1px solid var(--border)}.storico-item{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem;transition:background .15s}.storico-item+.storico-item{border-top:1px solid var(--border-soft)}.storico-item:hover{background:var(--warm)}.storico-content{flex:1;cursor:pointer;min-width:0}.storico-comune{font-size:.88rem;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.storico-dettagli{font-size:.72rem;color:var(--muted);margin-top:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.storico-delete{background:none;border:none;color:var(--muted);font-size:1.1rem;cursor:pointer;padding:.25rem .5rem;line-height:1;flex-shrink:0;transition:color .15s}.storico-delete:hover{color:var(--terracotta)}.rendita-box{background:var(--sage-light);border:1px solid var(--sage-border);padding:1rem 1.25rem;border-radius:var(--radius-md);margin-bottom:1rem;display:flex;align-items:center;gap:.75rem}.rendita-box-icon{font-size:1.5rem}.rendita-box-title{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sage);margin-bottom:.2rem}.rendita-box-value{font-size:1.3rem;font-weight:800;color:var(--sage)}.rendita-box-sub{font-size:.75rem;color:var(--muted)}.compare-tipologia{background:var(--warm);border:1px solid var(--border);padding:1rem;border-radius:var(--radius-sm);margin-bottom:.75rem}.compare-tipologia-title{font-weight:700;font-size:.85rem;margin-bottom:.5rem;color:var(--muted)}.compare-tipologia-prices{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.compare-price-item span{font-size:.7rem;text-transform:uppercase;color:var(--muted)}.compare-price-item strong{color:var(--ink)}.compare-price-item.highlight strong{color:var(--sage)}.tool-tabs{display:flex;flex-wrap:wrap;justify-content:center;width:fit-content;gap:4px;padding:6px;border:1px solid var(--border);border-radius:var(--radius-pill);background:#ffffffb8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow);margin:0 auto 2rem}body.dark .tool-tabs{background:#ffffff0d}.tool-tabs button{background:transparent;border:none;border-radius:var(--radius-pill);padding:.7rem 1.35rem;font-family:inherit;font-size:.85rem;font-weight:600;letter-spacing:.01em;color:var(--muted);cursor:pointer;transition:color .2s,background .2s,box-shadow .2s;white-space:nowrap}.tool-tabs button:hover{color:var(--ink)}.tool-tabs button[aria-selected=true]{color:#fff;background:var(--gradient-cta);font-weight:700;box-shadow:0 10px 24px -14px #45a58acc}@media(max-width:600px){.tool-tabs{border-radius:22px}.tool-tabs button{padding:.6rem .95rem;font-size:.78rem}}.cta-box{background:var(--sage-light);border:1px solid var(--sage-border);border-left:3px solid var(--green);padding:1rem 1.25rem;border-radius:var(--radius-md);margin-top:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.cta-box-text{font-size:.9rem;color:var(--ink)}.btn-cta{background:var(--green);color:#fff;border:none;border-radius:var(--radius-pill);padding:.6rem 1.4rem;font-family:inherit;font-size:.82rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:filter .2s,transform .2s}.btn-cta:hover{filter:brightness(1.06);transform:translateY(-1px)}.checkboxes-grid{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.75rem}.checkbox-option{display:flex;align-items:center;gap:.55rem;font-size:.9rem;font-weight:500;color:var(--ink);cursor:pointer;text-transform:none;letter-spacing:0}.checkbox-option input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--green);cursor:pointer;flex-shrink:0}.info-btn{position:relative;background:var(--green);border:none;border-radius:50%;cursor:pointer;color:#fff;font-size:.72rem;font-weight:800;width:1.15rem;height:1.15rem;line-height:1.15rem;text-align:center;padding:0;flex-shrink:0;vertical-align:middle;transition:filter .15s}.info-btn:hover{filter:brightness(1.1)}.info-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);background:var(--heading);color:#fff;font-size:.74rem;font-weight:500;line-height:1.5;padding:.55rem .8rem;border-radius:10px;width:240px;white-space:normal;pointer-events:none;opacity:0;transition:opacity .15s;z-index:100;text-transform:none;letter-spacing:0}body.dark .info-btn[data-tooltip]:after{color:#0f1412}.info-btn[data-tooltip]:before{content:"";position:absolute;left:50%;bottom:calc(100% + 3px);transform:translate(-50%);border:5px solid transparent;border-top-color:var(--heading);pointer-events:none;opacity:0;transition:opacity .15s;z-index:100}.info-btn[data-tooltip]:hover:after,.info-btn[data-tooltip]:hover:before{opacity:1}.checkbox-item{display:flex;flex-direction:column}.checkbox-row{display:flex;align-items:center;gap:.4rem}.checkbox-detail{margin-top:.6rem;margin-left:1.65rem;padding:.85rem 1rem;background:var(--warm);border-left:2px solid var(--green);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.detail-desc{font-size:.82rem;color:var(--muted);line-height:1.55;margin:0 0 .65rem}.detail-desc strong{color:var(--ink)}.detail-input-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.detail-input-row label{font-size:.78rem;color:var(--muted);font-weight:600;text-transform:none;letter-spacing:0;min-width:170px}.detail-input-row input[type=number]{width:90px;padding:.35rem .6rem;font-size:.88rem}.detail-unit{font-size:.82rem;color:var(--muted);font-weight:500}.input-with-unit{display:flex;align-items:center;gap:.5rem}.input-with-unit input{flex:0 0 100px}.input-unit{font-size:.78rem;color:var(--muted);font-style:italic}.compare-summary-box{background:var(--compare-summary-bg);border:1px solid var(--compare-summary-border);border-radius:var(--radius-md);padding:1rem 1.25rem;margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.5rem}.compare-summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.compare-summary-label{font-size:.85rem;color:var(--muted)}.compare-summary-value{font-size:1.05rem;font-weight:800;color:var(--compare-summary-value)}.compare-breakeven-text{font-size:.9rem;line-height:1.65;color:var(--ink);background:var(--warm);border-left:3px solid var(--compare-breakeven-accent);padding:.8rem 1.1rem;margin-bottom:1.5rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.compare-chart-wrap{margin-bottom:2rem;position:relative}.disclaimer-legal{background:var(--warm);border:1px solid var(--border);padding:.85rem 1.25rem;margin-top:1.5rem;border-radius:var(--radius-md);font-size:.78rem;color:var(--muted);line-height:1.65}.disclaimer-legal strong{color:var(--ink)}body.legal-page{display:flex;flex-direction:column;min-height:100vh}.legal-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#ffffffc7;border-bottom:1px solid var(--border)}.legal-header:after{display:none}body.dark .legal-header{background:#0f1412cc}.legal-header-inner{max-width:1140px;margin:0 auto;padding:14px clamp(20px,3vw,40px);display:flex;align-items:center;justify-content:space-between;gap:14px}.legal-logo{font-weight:900;font-size:1.25rem;letter-spacing:-.02em;color:var(--heading);text-decoration:none}.legal-logo em{font-style:normal;color:var(--green)}.btn-back{display:inline-flex;align-items:center;gap:.45rem;text-decoration:none;color:var(--ink);background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-pill);padding:.55rem 1.2rem;font-size:.85rem;font-weight:700;transition:transform .2s,box-shadow .2s}.btn-back:hover{transform:translateY(-1px);box-shadow:0 12px 28px -20px #0006}.legal-main{flex:1;width:100%;max-width:820px;margin:0 auto;padding:2.75rem 1.5rem 4rem;position:relative;z-index:1}.legal-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(1.5rem,4vw,3rem);box-shadow:var(--shadow)}.legal-eyebrow{display:inline-block;font-size:.65rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--sage);background:var(--sage-light);border:1px solid var(--sage-border);border-radius:var(--radius-pill);padding:.35rem .95rem;margin-bottom:1rem}.legal-card h1{font-size:clamp(2rem,4.5vw,2.6rem);margin:0 0 .4rem}.legal-updated{font-size:.85rem;color:var(--muted);margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border)}.legal-card h2{font-size:1.15rem;font-weight:800;letter-spacing:-.01em;color:var(--heading);margin:2.25rem 0 .7rem;scroll-margin-top:90px}.legal-card h3{font-size:.95rem;font-weight:700;color:var(--heading);margin:1.5rem 0 .5rem}.legal-card p{font-size:.95rem;line-height:1.75;margin-bottom:.85rem}.legal-card ul,.legal-card ol{margin:0 0 1rem 1.35rem;display:flex;flex-direction:column;gap:.45rem}.legal-card li{font-size:.95rem;line-height:1.7}.legal-card strong{font-weight:700;color:var(--heading)}.legal-card a{color:var(--sage);font-weight:600}.legal-callout{background:var(--sage-light);border:1px solid var(--sage-border);border-radius:var(--radius-md);padding:1rem 1.25rem;font-size:.9rem;line-height:1.7;margin:1.25rem 0}.legal-callout p{margin:0;font-size:.9rem}.legal-toc{background:var(--warm);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.1rem 1.35rem;margin-bottom:2rem}.legal-toc-title{font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem}.legal-toc ol{margin:0;padding-left:1.2rem;gap:.3rem}.legal-toc a{text-decoration:none}.legal-toc a:hover{text-decoration:underline}.legal-other-pages{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:2rem}.legal-other-pages a{display:inline-flex;text-decoration:none;color:var(--ink);background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-pill);padding:.55rem 1.25rem;font-size:.85rem;font-weight:700;transition:transform .2s,box-shadow .2s}.legal-other-pages a:hover{transform:translateY(-1px);box-shadow:0 12px 28px -20px #0006}@media(max-width:600px){.legal-main{padding:1.75rem 1rem 3rem}.legal-header-inner{padding:12px 20px}}
