.hec{max-width:920px;margin:2rem auto;color:#18332d}.hec *{box-sizing:border-box}.hec fieldset{border:1px solid #d3dfdb;border-radius:12px;padding:24px;margin:24px 0;background:#fafcfb}.hec legend{font-size:1.25rem;font-weight:700;padding:0 8px}.hec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.hec label{display:block;font-size:1rem}.hec input:not([type=checkbox]),.hec select,.hec textarea{display:block;width:100%;margin:8px 0 0;padding:11px;border:1px solid #718a80;border-radius:6px;background:white;color:#18332d;font:inherit;height:auto}.hec-topic{border-bottom:1px solid #d3dfdb;padding:18px 0;display:grid;grid-template-columns:1fr 1.3fr;gap:20px}.hec-topic:last-child{border:0}.hec button{border:0;border-radius:8px;background:#185a46;color:white;padding:14px 24px;margin-top:20px;font:inherit;font-weight:700;cursor:pointer}.hec :is(input,textarea,select,button,a):focus-visible{outline:3px solid #cc8500;outline-offset:3px}.hec .hec-consent{display:flex;align-items:flex-start;gap:12px}.hec-consent input{margin-top:5px}.hec-success,.hec-error{padding:16px;border-radius:8px;background:#e0f3e6}.hec-error{background:#fff0e9;color:#782d18}@media(max-width:640px){.hec-grid,.hec-topic{grid-template-columns:1fr}.hec fieldset{padding:16px}}
.hec-question{margin:0 0 24px}.hec-question>label+label{margin-top:12px}
.hec-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.hec dialog{border:0;border-radius:14px;max-width:460px;padding:28px;color:#18332d;box-shadow:0 10px 50px #0004}.hec dialog::backdrop{background:#0008}
.hec h2{color:#145b66}.hec fieldset{border:1px solid #b8d3d8;border-left:5px solid #247e8b;background:#f3fafb}.hec legend{background:#247e8b;color:#fff;border-radius:7px;padding:9px 15px;line-height:1.4;max-width:100%}.hec .hec-section-checklist{border-color:#b8d9c5;border-left-color:#32764d;background:#f4faf5}.hec .hec-section-checklist legend{background:#32764d}.hec .hec-section-label{border-color:#e0cfaa;border-left-color:#85631f;background:#fffbf2}.hec .hec-section-label legend{background:#85631f}.hec .hec-section-extra{border-color:#d1c6e3;border-left-color:#6d4b8d;background:#faf7fd}.hec .hec-section-extra legend{background:#6d4b8d}.hec-question>label:first-child{font-weight:600;color:#214a50}.hec input[readonly]{background:#e8f0f2;border-color:#bbcccf;color:#344b50}
.hec-locations{margin:16px 0;padding:14px;background:#fff;border:1px solid #b8d9c5;border-radius:8px}.hec-locations label{display:flex;gap:10px;align-items:center;margin:9px 0}.hec-locations input[type=checkbox]{flex:0 0 auto;width:18px;height:18px}
.hec .hec-accordion{--hec-accent:#247e8b;border:1px solid #b8d3d8;border-radius:12px;background:#f3fafb;margin:18px 0;overflow:hidden}.hec .hec-accordion>summary{cursor:pointer;background:var(--hec-accent);color:#fff;font-size:1.15rem;font-weight:700;line-height:1.45;padding:16px 20px;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}.hec .hec-accordion>summary::-webkit-details-marker{display:none}.hec .hec-accordion>summary::after{content:"+";font-size:1.5rem;flex-shrink:0}.hec .hec-accordion[open]>summary::after{content:"−"}.hec .hec-accordion>summary:focus-visible{outline:3px solid #e2a600;outline-offset:-4px}.hec .hec-accordion>fieldset{border:0;background:transparent;margin:0;padding:24px;min-width:0}.hec .hec-accordion>fieldset>legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hec .hec-accordion.hec-section-checklist{--hec-accent:#32764d;background:#f4faf5}.hec .hec-accordion.hec-section-label{--hec-accent:#85631f;background:#fffbf2}.hec .hec-accordion.hec-section-extra{--hec-accent:#6d4b8d;background:#faf7fd}.hec .hec-accordion.hec-section-signature{--hec-accent:#23516c;background:#f2f7fb}.hec .hec-expand{background:#fff;color:#185a46;border:1px solid #185a46;padding:9px 14px}.hec .hec-consent+.hec-consent{margin-top:18px}@media(max-width:640px){.hec .hec-accordion>fieldset{padding:16px}.hec .hec-accordion>summary{padding:14px 16px}}
@media(max-width:640px){.hec .hec-accordion>summary{font-size:1rem;line-height:1.35;padding:12px 14px;min-height:44px;overflow-wrap:anywhere}.hec .hec-accordion>summary::after{font-size:1.25rem}}
