:root{--hg-ink:#303233;--hg-muted:#666b6d;--hg-line:#ded8d2;--hg-paper:#fff;--hg-soft:#f7f3ef;--hg-soft-2:#fbf9f7;--hg-accent:#8b6755;--hg-accent-dark:#654738;--hg-accent-light:#eadfd8;--hg-error:#9d2c2c;--hg-radius:12px;--hg-shadow:0 18px 55px rgba(48,40,35,.09)}
.hg-form{max-width:1040px;margin:2.5rem auto 4rem;padding:0 1.25rem;color:var(--hg-ink);font:16px/1.6 "Lato",Arial,sans-serif}.hg-form *{box-sizing:border-box}
.hg-form__header{max-width:820px;margin:0 auto 2.25rem;text-align:center}.hg-form__header h1{margin:.3rem 0 1rem;color:#3a3b3c;font:400 clamp(2.2rem,5vw,4rem)/1.08 "Lora",Georgia,serif;letter-spacing:-.025em}.hg-form__header p{max-width:700px;margin:.6rem auto;color:var(--hg-muted);font-size:1.05rem}.hg-form__eyebrow{color:var(--hg-accent)!important;font-size:.76rem!important;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.hg-progress{max-width:860px;margin:0 auto 2rem;padding:1.15rem 1.4rem 1rem;border:1px solid rgba(222,216,210,.9);border-radius:var(--hg-radius);background:rgba(255,255,255,.78);box-shadow:0 8px 28px rgba(48,40,35,.05)}.hg-progress__bar{height:3px;overflow:hidden;border-radius:3px;background:var(--hg-accent-light)}.hg-progress__bar span{display:block;width:0;height:100%;border-radius:inherit;background:var(--hg-accent);transition:width .25s ease}.hg-progress ol{display:grid;grid-template-columns:repeat(3,1fr);margin:.85rem 0 0;padding:0;list-style:none}.hg-progress li{color:var(--hg-muted);font-size:.84rem;font-weight:600;text-align:center}.hg-progress li span{display:inline-grid;place-items:center;width:1.8rem;height:1.8rem;margin-right:.4rem;border:1px solid var(--hg-line);border-radius:50%;background:var(--hg-paper);transition:background .2s ease,border-color .2s ease,color .2s ease}.hg-progress li.is-active,.hg-progress li.is-complete{color:var(--hg-ink);font-weight:800}.hg-progress li.is-active span,.hg-progress li.is-complete span{border-color:var(--hg-accent);background:var(--hg-accent);color:#fff}
.hg-step{margin:0;padding:clamp(1.4rem,4vw,2.6rem);border:1px solid rgba(222,216,210,.95);border-radius:18px;background:var(--hg-paper);box-shadow:var(--hg-shadow)}.hg-step[hidden]{display:none}.hg-step legend{float:left;display:block;width:100%;margin:0 0 1.3rem;padding:0 0 1.3rem;border:0;border-bottom:1px solid var(--hg-line);color:#393b3c;font:400 clamp(1.55rem,3vw,2rem)/1.25 "Lora",Georgia,serif}.hg-step legend+*{clear:both}.hg-step legend span{display:block;margin-bottom:.35rem;color:var(--hg-accent);font:800 .72rem/1.2 "Lato",Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.hg-question{padding:1.7rem 0;border-bottom:1px solid #ece8e4}.hg-question:last-child{border-bottom:0;padding-bottom:.25rem}.hg-question h2,.hg-upload h2{margin:0 0 1rem;color:#3b3d3e;font:700 1.08rem/1.45 "Lato",Arial,sans-serif}.hg-grid{display:grid;gap:1rem}.hg-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.hg-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.hg-options label,.hg-consents label{position:relative;display:flex;align-items:flex-start;gap:.72rem;min-height:3.35rem;margin:0;padding:.82rem .95rem;border:1px solid var(--hg-line);border-radius:10px;background:var(--hg-soft-2);color:#444748;font-weight:500;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.hg-options label:hover,.hg-consents label:hover{border-color:#bca99e;background:#fff;box-shadow:0 5px 18px rgba(48,40,35,.07);transform:translateY(-1px)}.hg-options input,.hg-consents input{flex:0 0 auto;width:1.15rem;height:1.15rem;margin:.18rem 0 0;accent-color:var(--hg-accent)}.hg-options label:has(input:checked),.hg-consents label:has(input:checked),.hg-options label.is-selected,.hg-consents label.is-selected{border-color:var(--hg-accent);background:#f5eee9;box-shadow:inset 0 0 0 1px rgba(139,103,85,.12)}
.hg-options span.checkbox,.hg-options span.radio,.hg-consents span.checkbox{position:relative!important;display:block!important;flex:0 0 1.2rem!important;width:1.2rem!important;height:1.2rem!important;min-height:1.2rem!important;margin:.15rem 0 0!important;padding:0!important;border:1px solid #b9ada5!important;border-radius:5px!important;background:#fff!important;box-shadow:none!important}.hg-options span.radio{border-radius:50%!important}.hg-options span.checkbox input,.hg-options span.radio input,.hg-consents span.checkbox input{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;opacity:0!important}.hg-options span.checkbox label.checkbox_inner,.hg-options span.radio label.radio_inner,.hg-consents span.checkbox label.checkbox_inner{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}.hg-options span.checkbox:has(input:checked),.hg-consents span.checkbox:has(input:checked){border-color:var(--hg-accent)!important;background:var(--hg-accent)!important}.hg-options span.checkbox input:checked+label.checkbox_inner:before,.hg-consents span.checkbox input:checked+label.checkbox_inner:before{color:#fff!important;font-size:13px!important;line-height:18px!important}.hg-options span.radio input:checked+label.radio_inner:before{width:8px!important;height:8px!important;border:0!important;background:var(--hg-accent)!important;box-shadow:none!important}.hg-options span.checkbox:focus-within,.hg-options span.radio:focus-within,.hg-consents span.checkbox:focus-within{outline:3px solid rgba(139,103,85,.22)!important;outline-offset:2px!important}
.hg-field{display:block;margin:1rem 0 0;color:#444748;font-size:.93rem;font-weight:700}.hg-field input,.hg-field textarea{display:block;width:100%;margin-top:.4rem;padding:.78rem .9rem;border:1px solid #d7d1cb;border-radius:9px;background:#fff;color:var(--hg-ink);font:400 1rem/1.45 "Lato",Arial,sans-serif;box-shadow:inset 0 1px 2px rgba(48,40,35,.025);transition:border-color .18s ease,box-shadow .18s ease}.hg-field textarea{min-height:82px;resize:vertical}.hg-field input:hover,.hg-field textarea:hover{border-color:#b9ada5}.hg-field input:focus,.hg-field textarea:focus{outline:0;border-color:var(--hg-accent);box-shadow:0 0 0 3px rgba(139,103,85,.16)}.hg-field .is-invalid,.hg-consents .is-invalid{border-color:var(--hg-error);box-shadow:0 0 0 3px rgba(157,44,44,.10)}
.hg-upload{margin:1.7rem 0;padding:1.35rem;border:1px dashed #bca99e;border-radius:12px;background:linear-gradient(135deg,#faf6f3,#fff)}.hg-upload p{margin:-.35rem 0 1rem;color:var(--hg-muted);font-size:.92rem}.hg-upload small{display:inline-block;margin-left:.3rem;padding:.15rem .45rem;border-radius:999px;background:var(--hg-accent-light);color:var(--hg-accent-dark);font:700 .7rem/1.4 "Lato",Arial,sans-serif;text-transform:uppercase}.hg-upload input[type=file]{width:100%;padding:.55rem;border:1px solid var(--hg-line);border-radius:9px;background:#fff;color:var(--hg-muted)}.hg-upload input[type=file]::file-selector-button,.hg-upload input[type=file]::-webkit-file-upload-button{margin-right:.8rem;padding:.62rem .95rem;border:0;border-radius:7px;background:var(--hg-accent);color:#fff;font-weight:800;cursor:pointer}.hg-upload input[type=file]::file-selector-button:hover,.hg-upload input[type=file]::-webkit-file-upload-button:hover{background:var(--hg-accent-dark)}.hg-file-list{margin-top:.75rem;color:var(--hg-muted);font-size:.9rem}
.hg-consents{display:grid;gap:.75rem;margin:1.5rem 0 .5rem}.hg-consents label{min-height:auto;background:#fff;font-size:.92rem}.hg-consent-required{border-width:2px!important}.hg-consents a{color:var(--hg-accent-dark);font-weight:800;text-decoration:underline;text-underline-offset:2px}.hg-required-note{margin:1.25rem 0 0;color:var(--hg-muted);font-size:.9rem}
.hg-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:1.25rem;padding:1.1rem 0 0}.hg-button{min-width:11rem;min-height:3.15rem;padding:.82rem 1.5rem;border:1px solid var(--hg-accent);border-radius:999px;background:var(--hg-accent);color:#fff;font:800 .95rem/1.2 "Lato",Arial,sans-serif;letter-spacing:.015em;box-shadow:0 7px 20px rgba(101,71,56,.17);cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.hg-button:hover,.hg-button:focus{border-color:var(--hg-accent-dark);background:var(--hg-accent-dark);color:#fff;box-shadow:0 9px 25px rgba(101,71,56,.23);transform:translateY(-1px)}.hg-button:focus-visible{outline:3px solid rgba(139,103,85,.28);outline-offset:3px}.hg-button:disabled{opacity:.65;cursor:wait;transform:none}.hg-button--secondary{background:#fff;color:var(--hg-accent-dark);box-shadow:none}.hg-button[hidden]{display:none}
.hg-alert{margin:0 0 1.25rem;padding:1rem 1.1rem;border:1px solid #e4b5b5;border-left:5px solid var(--hg-error);border-radius:9px;background:#fff3f3;color:#751d1d;font-weight:700}.hg-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.hg-form{margin:1.5rem auto 2.5rem;padding:0 .7rem}.hg-form__header{margin-bottom:1.4rem}.hg-form__header h1{font-size:clamp(2rem,10vw,2.7rem)}.hg-form__header p{font-size:.96rem}.hg-progress{margin-bottom:1rem;padding:.8rem .6rem .7rem}.hg-progress li{font-size:0}.hg-progress li span{margin:0;font-size:.82rem}.hg-step{padding:1.2rem .95rem;border-radius:13px}.hg-step legend{font-size:1.5rem}.hg-question{padding:1.3rem 0}.hg-grid--2,.hg-options{grid-template-columns:1fr}.hg-options label{min-height:3rem;padding:.75rem .8rem}.hg-actions{position:sticky;z-index:20;bottom:0;margin:1rem -.7rem 0;padding:.75rem;border-top:1px solid rgba(222,216,210,.9);background:rgba(251,249,247,.96);backdrop-filter:blur(8px)}.hg-button{min-width:0;flex:1;padding:.78rem .85rem}}
@media(prefers-reduced-motion:reduce){.hg-progress__bar span,.hg-options label,.hg-consents label,.hg-button{transition:none}.hg-options label:hover,.hg-consents label:hover,.hg-button:hover,.hg-button:focus{transform:none}}
.hg-progress li:before{content:none!important;display:none!important}
.hg-options span.checkbox,.hg-options span.radio,.hg-consents span.checkbox{flex-basis:20px!important;width:20px!important;height:20px!important;min-height:20px!important;margin-top:2px!important}

/* T3 uses a 10 px root font. Keep component typography independent from it. */
.hg-form{max-width:980px;font-size:16px;line-height:1.6}
.hg-form__eyebrow{font-size:12px!important;line-height:1.4!important;letter-spacing:.16em}
.hg-form__header>p:not(.hg-form__eyebrow){font-size:16px;line-height:1.65}
.hg-progress li{font-size:13px;line-height:30px}
.hg-progress li span{width:30px;height:30px;margin-right:7px;font-size:13px;line-height:1}
.hg-step legend{font-size:28px;line-height:1.3}
.hg-step legend span{font-size:12px;line-height:1.3}
.hg-question h2,.hg-upload h2{font-size:16px;line-height:1.45}
.hg-options label{font-size:15px;line-height:1.5}
.hg-field{font-size:14px;line-height:1.5}
.hg-field input,.hg-field textarea{font-size:16px;line-height:1.5}
.hg-birth-date{min-width:0;padding:0;border:0}.hg-birth-date legend{float:none;width:auto;margin:0;padding:0;border:0;color:#444748;font:700 14px/1.5 "Lato",Arial,sans-serif}.hg-birth-date__fields{display:grid;grid-template-columns:.72fr 1.35fr 1fr;gap:8px;margin-top:.4rem}.hg-birth-date__fields label{min-width:0;margin:0}.hg-birth-date__fields label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.hg-birth-date select{display:block;width:100%;height:50px;margin:0;padding:0 34px 0 12px;border:1px solid #d7d1cb;border-radius:9px;background:#fff;color:var(--hg-ink);font:400 16px/1.45 "Lato",Arial,sans-serif}.hg-birth-date select:hover{border-color:#b9ada5}.hg-birth-date select:focus{outline:0;border-color:var(--hg-accent);box-shadow:0 0 0 3px rgba(139,103,85,.16)}.hg-birth-date select.is-invalid{border-color:var(--hg-error);box-shadow:0 0 0 3px rgba(157,44,44,.10)}.hg-birth-date .chzn-container{min-width:0!important;width:100%!important;max-width:100%!important}.hg-birth-date .chzn-container .chzn-single{height:50px;padding-left:12px;border:1px solid #d7d1cb;border-radius:9px;background:#fff;box-shadow:none;color:var(--hg-ink);font:400 16px/48px "Lato",Arial,sans-serif}.hg-birth-date .chzn-container .chzn-single div b{background-position:0 15px}.hg-birth-date .chzn-container-active .chzn-single{border-color:var(--hg-accent);box-shadow:0 0 0 3px rgba(139,103,85,.16)}.hg-birth-date .chzn-drop{min-width:100%;max-width:280px}.hg-birth-date small{display:block;margin-top:6px;color:var(--hg-muted);font-size:12px;font-weight:400;line-height:1.4}
.hg-field textarea{min-height:96px}
.hg-required-note,.hg-upload p,.hg-file-list{font-size:14px;line-height:1.55}
.hg-upload small{font-size:11px;line-height:1.4}
.hg-consents label{font-size:14px;line-height:1.55}
.hg-button{font-size:15px;line-height:1.2}
@media(max-width:700px){.hg-form{font-size:16px}.hg-form__header h1{font-size:36px;line-height:1.12}.hg-step legend{font-size:24px}.hg-progress li{font-size:0;line-height:30px}.hg-progress li span{font-size:13px}.hg-options label{font-size:15px}.hg-birth-date__fields{grid-template-columns:.72fr 1.3fr .9fr;gap:6px}.hg-birth-date select{padding-left:9px;padding-right:24px}.hg-button{font-size:15px}}
