/* Essex Mind Coach – standalone, responsive consent form. Scoped to this form only. */
.emc-consent { --emc-blue:#4a607a; --emc-sand:#f4f1ea; --emc-ink:#293644; --emc-line:#d9e0e6; color:var(--emc-ink); max-width:1200px; margin:0 auto 30px; font-size:16px; line-height:1.65; }
.emc-consent * { box-sizing:border-box; }
.emc-consent a { color:#355b81; text-decoration:underline; text-underline-offset:3px; }
.emc-consent a:hover { color:#1d405f; }
.emc-consent__heading { padding:26px 29px 24px; background:var(--emc-sand); border-top:4px solid var(--emc-blue); margin-bottom:24px; }
.emc-consent__eyebrow { font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; margin:0 0 7px; color:var(--emc-blue); }
.emc-consent__heading h2 { font-size:clamp(25px,3vw,35px); line-height:1.17; margin:0 0 10px; color:#26394e; }
.emc-consent__heading p:last-child { margin:0; max-width:810px; }
.emc-consent__columns { display:grid; grid-template-columns:minmax(0, 0.9fr) minmax(0,1.1fr); gap:26px; align-items:start; }
.emc-consent__information { padding:9px 6px 16px 0; }
.emc-consent__information > h3 { color:var(--emc-blue); font-size:21px; line-height:1.3; margin:10px 0 10px; }
.emc-consent__information > h3:not(:first-child) { margin-top:28px; }
.emc-consent__information p { margin:0 0 14px; }
.emc-consent__faq { border-top:1px solid var(--emc-line); margin-top:12px; }
.emc-consent__faq-item { border-bottom:1px solid var(--emc-line); padding:0; }
.emc-consent__faq-item summary { cursor:pointer; display:list-item; font-weight:650; padding:13px 8px 13px 2px; line-height:1.35; }
.emc-consent__faq-item summary::marker { color:var(--emc-blue); }
.emc-consent__faq-answer { padding:0 12px 12px 18px; }
.emc-consent__faq-answer p { margin:0 0 8px; }
.emc-consent__form-panel { background:#f7f8fa; border:1px solid #e2e6eb; padding:27px 27px 31px; }
.emc-consent__form-panel h3 { margin:0 0 6px; font-size:24px; color:#26394e; }
.emc-consent__subline, .emc-consent__hint, .emc-consent__fineprint { font-size:14px; color:#536373; }
.emc-consent__subline { margin:0 0 16px; }
.emc-consent__fieldset { margin:0 0 24px; border:0; padding:0; min-width:0; }
.emc-consent__fieldset legend { padding:0 0 11px; margin:4px 0 12px; width:100%; display:block; border-bottom:1px solid #ccd7e0; color:var(--emc-blue); font-size:19px; font-weight:700; }
.emc-consent__field { margin:0 0 15px; min-width:0; }
.emc-consent__field label { display:block; font-weight:650; margin:0 0 5px; font-size:15px; }
.emc-consent__optional { font-weight:400; color:#677481; font-size:13px; }
.emc-consent input[type="text"],.emc-consent input[type="tel"],.emc-consent input[type="email"],.emc-consent input[type="date"],.emc-consent textarea { width:100%; max-width:100%; min-height:45px; border:1px solid #aebbc5; background:#fff; border-radius:3px; padding:9px 11px; font-family:inherit; font-size:16px; color:#26394e; box-shadow:none; }
.emc-consent textarea { resize:vertical; min-height:86px; }
.emc-consent input:focus-visible,.emc-consent textarea:focus-visible,.emc-consent summary:focus-visible,.emc-consent button:focus-visible { outline:3px solid #d2ad40; outline-offset:2px; }
.emc-consent__field-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.emc-consent__choice { display:flex; align-items:flex-start; gap:10px; margin:0 0 14px; font-size:15px; line-height:1.55; cursor:pointer; }
.emc-consent__choice input[type="checkbox"],.emc-consent__choice input[type="radio"] { flex:0 0 auto; width:19px; height:19px; min-width:19px; min-height:19px; margin:2px 0 0; padding:0; accent-color:#4a607a; cursor:pointer; }
.emc-consent__hint { margin:0 0 14px; line-height:1.5; }
.emc-consent__submit { display:block; width:100%; border:0; border-radius:3px; background:var(--emc-blue); color:#fff; padding:14px 20px; font-weight:700; font-size:17px; line-height:1.3; cursor:pointer; }
.emc-consent__submit:hover { background:#344f6d; }
.emc-consent__fineprint { margin:13px 0 0; line-height:1.5; }
.emc-consent__notice { margin:0 0 24px; padding:17px 20px; border:1px solid #9eb0bf; background:#eef3f7; }
.emc-consent__notice--error { border-color:#b96a6a; background:#fff4f2; }
.emc-consent__trap { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
@media (max-width:850px) { .emc-consent__columns { grid-template-columns:1fr; gap:12px; } .emc-consent__information { padding:0; } .emc-consent__form-panel { padding:23px; } }
@media (max-width:520px) { .emc-consent__heading { padding:21px; } .emc-consent__form-panel { padding:18px 15px 20px; } .emc-consent__field-row { grid-template-columns:1fr; gap:0; } }
@media print { .emc-consent__heading { background:#fff; } .emc-consent__form-panel { background:#fff; } .emc-consent__submit { display:none; } }
