:root{color-scheme:light;--ink:#25251d;--paper:#faf5e9;--accent:#a23728;--line:#dbd3c0}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.55 system-ui,sans-serif}main{max-width:740px;margin:auto;padding:34px 22px}header{padding:10px 0 24px}.brand{color:var(--ink);font:bold 27px Georgia,serif;text-decoration:none}.eyebrow{font-size:11px;letter-spacing:.16em;margin:32px 0 8px}h1{font:normal clamp(38px,7vw,58px)/1.08 Georgia,serif;margin:0 0 18px}h2{font:normal 28px Georgia,serif;margin:0 0 18px}section{background:#fffdf8;border:1px solid var(--line);border-radius:12px;padding:24px;margin:18px 0}p{margin:10px 0}a{color:var(--accent)}label{display:block;margin:16px 0 8px}input:not([type=radio],[type=checkbox]),select{display:block;width:100%;font:inherit;padding:12px;border:1px solid #9b998e;border-radius:5px;background:white;color:var(--ink);margin-top:5px}input[type=radio],input[type=checkbox]{width:20px;height:20px;vertical-align:middle;flex-shrink:0;accent-color:var(--accent)}fieldset{border:0;padding:0;margin:0}legend{font-weight:600}.inline{display:flex;gap:10px;align-items:flex-start;font-size:16px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}button,.button{border:0;display:inline-block;text-align:center;background:var(--accent);color:white;border-radius:6px;padding:14px 22px;font:600 16px system-ui,sans-serif;cursor:pointer;text-decoration:none;margin:18px 0 4px}button:disabled{opacity:.5;cursor:wait}.secondario{background:transparent;color:var(--accent);border:1px solid var(--line)}.small,footer{font-size:14px;color:#5c5b53}.totale{font-size:30px;font-weight:650;border-top:1px solid var(--line);padding-top:16px}ul{padding-left:23px}li{margin:7px 0}footer{margin-top:35px;border-top:1px solid var(--line);padding-top:20px}#messaggio:not(:empty){padding:14px 18px;border-left:3px solid var(--accent);background:#f1e8d5}#messaggio:empty{display:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #335c85;outline-offset:3px}@media(max-width:480px){main{padding:22px 14px}section{padding:19px}.grid{grid-template-columns:1fr;gap:0}button,.button{width:100%}}
