:root{
--green:#103a2f;
--green2:#164b3c;
--gold:#b58b31;
--cream:#f3efe4;
--paper:#fffdf8;
--ink:#24322d;
--muted:#68736e;
--line:#e6ddc9;
}
*{box-sizing:border-box}
body{margin:0;background:#f3f0e8;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.page{width:min(1040px,calc(100% - 30px));margin:30px auto 70px}
.hero{text-align:center;padding:42px 20px 35px}
.hero img,.thank-card img{width:145px;height:145px;object-fit:contain}
.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:850;color:#987630}
.hero h1,.intro h2,.section-title h2,.thank-card h1{font-family:Georgia,serif;color:var(--green)}
.hero h1{font-size:55px;line-height:1.02;margin:14px 0}
.lead{font-size:20px;line-height:1.65;color:#52605a;max-width:760px;margin:0 auto}
.intro,.form-card,.thank-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 55px rgba(16,58,47,.06)}
.intro{padding:28px 34px;margin-bottom:18px;line-height:1.7}
.intro h2{font-size:30px;margin:0 0 10px}
.form-card{padding:36px}
.section-title{display:flex;gap:15px;align-items:center;margin:12px 0 22px;padding-top:20px;border-top:1px solid var(--line)}
.section-title:first-of-type{border-top:0;padding-top:0}
.section-title>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#eee3c7;color:#745b27;font-weight:850}
.section-title small{font-size:10px;letter-spacing:.16em;color:#9a7a34;font-weight:850}
.section-title h2{margin:3px 0 0;font-size:29px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:34px}
label{display:grid;gap:7px;font-size:13px;font-weight:750;color:#495851}
label.full{grid-column:1/-1}
input,textarea{width:100%;border:1px solid #d7cfbd;border-radius:11px;padding:12px 13px;background:white;color:var(--ink);font:inherit;outline:none}
textarea{resize:vertical;line-height:1.55}
input:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(181,139,49,.12)}
label small{font-weight:500;color:var(--muted)}
.consent{display:flex;grid-auto-flow:column;grid-template-columns:auto 1fr;align-items:flex-start;gap:10px;background:#f6f1e5;border-radius:13px;padding:15px}
.consent input{width:auto;margin-top:3px}
.submit-zone{text-align:center;padding-top:28px}
.submit-zone button{border:0;border-radius:12px;background:var(--green);color:white;padding:15px 25px;font-size:16px;font-weight:850;cursor:pointer}
.submit-zone button:hover{background:var(--green2)}
.submit-zone p{font-size:12px;color:var(--muted);max-width:620px;margin:13px auto 0}
.alert{background:#f2dfdc;border:1px solid #e5c2bb;color:#823931;border-radius:13px;padding:14px 17px;margin-bottom:18px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.thank-page{min-height:85vh;display:grid;place-items:center}
.thank-card{max-width:720px;text-align:center;padding:42px}
.thank-card h1{font-size:42px;margin:12px 0}
.thank-card p{line-height:1.7;color:#52605a}
.reference{margin:24px auto;background:#f3ead5;border-radius:14px;padding:18px;display:grid;gap:6px}
.reference span{font-size:11px;letter-spacing:.16em;font-weight:850;color:#967534}
.reference strong{font:27px Georgia,serif;color:var(--green)}
.thank-card a{display:inline-block;margin-top:15px;background:var(--green);color:white;text-decoration:none;padding:13px 18px;border-radius:10px;font-weight:800}
@media(max-width:700px){
.page{width:min(100% - 20px,1040px);margin-top:12px}
.hero{padding:26px 10px}
.hero img,.thank-card img{width:112px;height:112px}
.hero h1{font-size:39px}
.lead{font-size:17px}
.form-card,.intro,.thank-card{padding:23px 18px}
.grid{grid-template-columns:1fr}
label.full{grid-column:auto}
.section-title h2{font-size:25px}
}

/* Phase 4B — dossier technique */
.reference{max-width:520px}
.form-help{margin:-4px 0 20px;color:var(--muted);line-height:1.6}
.cuvee-card{border:1px solid var(--line);border-radius:18px;background:#fffaf0;padding:24px;margin:0 0 20px}
.cuvee-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}
.cuvee-head small{font-size:10px;letter-spacing:.16em;color:#9a7a34;font-weight:850}
.cuvee-head h3{font:28px Georgia,serif;color:var(--green);margin:3px 0 0}
.remove-cuvee{border:0;border-radius:9px;padding:9px 12px;background:#f2dfdc;color:#823931;font-weight:800;cursor:pointer}
.secondary-action{display:inline-flex;border:1px solid #d8c89f;border-radius:11px;padding:12px 16px;background:#efe4c8;color:#5f4a22;font-weight:850;cursor:pointer;margin-bottom:24px}
select{width:100%;border:1px solid #d7cfbd;border-radius:11px;padding:12px 13px;background:white;color:var(--ink);font:inherit;outline:none}
select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(181,139,49,.12)}
@media(max-width:700px){
.cuvee-card{padding:18px 14px}
.cuvee-head h3{font-size:24px}
}

