:root{--lime:#EFE7D6;--card:#FBF7EF;--line:#DCCFB4;--ink:#2B2418;--ink2:#5A4E3C;--muted:#7A6D58;--olive:#4E5D23;--oliveh:#3F4C1A;--olived:#2F3A14;--clay:#9A4E2A}
*{box-sizing:border-box}
body{margin:0;background:var(--lime);color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-size:20px;line-height:1.6}
a{color:var(--olive)}
.top{background:var(--olived);color:#fff;text-align:center;padding:12px;font-family:'Lora',Georgia,serif;font-size:18px}
.top a{color:#fff;text-decoration:none}
main{max-width:720px;margin:40px auto 80px;padding:0 16px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:36px 32px}
h1,h2{font-family:'Lora',Georgia,serif;font-weight:600;line-height:1.2;margin:0 0 .5em}
h1{font-size:36px}h2{font-size:24px;margin-top:1.4em}
p{margin:0 0 1em}
.btn{display:block;text-align:center;background:var(--olive);color:#fff;text-decoration:none;border:0;border-radius:12px;padding:18px 24px;font-family:'Lora',Georgia,serif;font-weight:600;font-size:23px;box-shadow:0 5px 0 var(--olived);margin:0 0 8px;cursor:pointer;width:100%}
.btn:hover{background:var(--oliveh)}
.btn small{display:block;font-family:Georgia,serif;font-weight:400;font-size:15px;opacity:.9;margin-top:4px}
.hint{font-size:16px;color:var(--muted);margin:0 0 22px}
label{display:block;font-size:17px;margin-bottom:6px;color:var(--ink2)}
input[type=text],input[type=email],textarea{width:100%;font:inherit;font-size:19px;padding:13px 15px;border:1px solid #C9BA99;border-radius:10px;background:#fff;color:var(--ink);margin-bottom:14px}
textarea{min-height:150px;resize:vertical}
.msg{margin-top:12px;font-size:18px;min-height:1.2em}.msg.bad{color:#9A2E14}.msg.good{color:var(--olive)}
.note{background:#F6E3D8;border:1px solid var(--clay);color:#6E2F12;border-radius:10px;padding:14px 18px;margin-bottom:20px;font-size:17px}
.stars{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:6px;margin-bottom:16px}
.stars input{position:absolute;opacity:0;width:1px;height:1px}
.stars label{font-size:44px;line-height:1;color:#CDBF9F;cursor:pointer;margin:0}
.stars input:checked~label,.stars label:hover,.stars label:hover~label{color:#B8862F}
.stars input:focus-visible+label{outline:3px solid rgba(78,93,35,.4);border-radius:4px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:17px;color:var(--ink2);margin:4px 0 18px}
.check input{width:22px;height:22px;margin-top:4px;flex:0 0 22px}
.sig{font-family:'Lora',Georgia,serif;font-style:italic;font-size:26px}
footer{text-align:center;font-size:15px;color:var(--muted);padding:0 16px 40px}
footer a{color:var(--muted)}
