@keyframes spin{to{transform:rotate(360deg)}}.section-head{display:flex;align-items:center;gap:10px;margin:28px 0 0;padding-bottom:10px;border-bottom:2px solid var(--c-primary)}.section-head:first-child{margin-top:0}.section-head+.card,.section-head+.g2,.section-head+.g3,.section-head+div{margin-top:12px}.section-num{width:22px;height:22px;border-radius:50%;background:var(--c-primary);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.section-title,label{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--c-primary)}.card{background:#fff;border:1.5px solid #e5e7eb;border-left:4px solid var(--c-primary);border-radius:var(--r);box-shadow:var(--shadow-sm);padding:18px}.g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.g3,.g4{display:grid;gap:10px}.g3{grid-template-columns:1fr 1fr 1fr}.g4{grid-template-columns:repeat(4,1fr)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.form-grid .full,.full{grid-column:1/-1}@media (max-width:540px){.form-grid,.g2,.g3{grid-template-columns:1fr}.g4{grid-template-columns:1fr 1fr}.form-grid .full,.full{grid-column:1}}.field{display:flex;flex-direction:column;gap:4px}.soft-warning{font-size:12px;color:#b45309;background:#fef3c7;border:1px solid #fde68a;border-radius:4px;padding:4px 8px;margin-top:2px;line-height:1.4}label{font-size:12px;letter-spacing:.04em;color:var(--c-muted);user-select:none}label .req{color:var(--c-cta);margin-left:2px}input[type=date],input[type=email],input[type=number],input[type=tel],input[type=text],select,textarea{width:100%;padding:9px 11px;font-family:var(--font);font-size:14px;color:var(--c-ink);background:var(--c-input-bg);border:1.5px solid var(--c-input-border);border-radius:var(--r);outline:0;transition:border-color .15s,box-shadow .15s;appearance:none;-webkit-appearance:none;box-shadow:var(--shadow-sm)}input:focus,select:focus,textarea:focus{border-color:var(--c-input-focus);box-shadow:0 0 0 3px rgba(29,78,216,.1)}input::placeholder,textarea::placeholder{color:var(--c-subtle)}input[disabled],input[readonly],select[disabled]{background:var(--c-readonly-bg);color:var(--c-muted);cursor:default}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px;cursor:pointer}textarea{resize:vertical;min-height:100px;line-height:1.5}.field-wrap{position:relative}.field-wrap .valid-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#16a34a;font-size:15px;pointer-events:none;opacity:0;transition:opacity .2s}.field-wrap input.valid,.field-wrap select.valid{border-color:#16a34a;box-shadow:0 0 0 2px rgba(22,163,74,.1);padding-right:34px}.field-wrap input.valid+.valid-icon,.field-wrap select.valid+.valid-icon{opacity:1}.field-wrap input.invalid,.field-wrap select.invalid{border-color:var(--c-cta);box-shadow:0 0 0 2px rgba(220,38,38,.1)}.hint,.inline-error{font-size:11px;line-height:1.4;margin-top:2px}.inline-error{color:var(--c-error-text);background:var(--c-error-bg);border:1px solid var(--c-error-border);border-radius:4px;padding:3px 8px;display:none}.inline-error.on{display:block}.hint{color:var(--c-subtle)}.section-note{font-size:12px;color:var(--c-muted);margin-top:8px}.counter-box{border:1.5px solid var(--c-input-border);border-radius:var(--r);padding:12px 10px 10px;background:var(--c-input-bg);text-align:center;box-shadow:var(--shadow-sm)}.counter-box .cb-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--c-muted);margin-bottom:2px}.counter-box .cb-age{font-size:10px;color:var(--c-subtle);margin-bottom:8px}.counter-btn,.counter-ctrl{display:flex;align-items:center;justify-content:center}.counter-ctrl{gap:10px}.counter-btn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--c-input-border);background:var(--c-white);color:var(--c-ink);font-size:16px;font-weight:400;line-height:1;cursor:pointer;transition:all .12s;user-select:none}.counter-btn:hover:not(:disabled){border-color:var(--c-primary);background:var(--c-primary);color:#fff}.counter-btn:disabled{opacity:.25;cursor:default}.counter-value{font-size:20px;font-weight:600;color:var(--c-ink);min-width:22px;text-align:center}.row-item{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border:1.5px solid var(--c-input-border);border-radius:var(--r);background:var(--c-input-bg);gap:12px;box-shadow:var(--shadow-sm);transition:border-color .12s}.row-item+.row-item{margin-top:8px}.row-item.row-disabled{opacity:.45;pointer-events:none}.row-label{font-size:14px;font-weight:500;color:var(--c-ink)}.row-hint,.row-sub{font-size:11px;color:var(--c-subtle)}.row-hint{margin-top:2px;font-style:italic}.row-sub{margin-top:1px}.row-counter{display:flex;align-items:center;gap:8px;flex-shrink:0}.row-counter .counter-value{font-size:17px;min-width:18px}.alert{padding:14px 16px;border-radius:var(--r);font-size:14px;line-height:1.5}.alert.on{display:flex;align-items:flex-start;gap:8px}.alert-error{background:var(--c-error-bg);border:1px solid var(--c-error-border);color:var(--c-error-text)}.alert-warn{background:var(--c-warn-bg);border:1px solid var(--c-warn-border);color:var(--c-warn-text)}.alert-success{background:var(--c-success-bg);border:1px solid var(--c-success-border);color:var(--c-success-text);padding:18px;border-radius:var(--r);font-size:14px;line-height:1.6;text-align:center}.btn-submit{display:block;width:100%;padding:16px;background:var(--c-cta);color:#fff;border:0;border-radius:var(--r);font-family:"Oswald",sans-serif;font-size:17px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:background .2s,box-shadow .15s,transform .1s}.btn-submit:hover:not(:disabled){background:var(--c-cta-hover)}.btn-submit:active{transform:translateY(0)}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.spinner{display:inline-block;width:32px;height:32px;border:3px solid var(--c-border);border-top-color:var(--c-primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.load-error{text-align:center;padding:60px 24px}.load-error h2{font-size:18px;color:var(--c-cta);margin-bottom:8px}.load-error p{font-size:14px;color:var(--c-muted);line-height:1.6}.divider{height:1px;background:var(--c-border);margin:14px 0}@media (max-width:768px){input[type=date],input[type=email],input[type=number],input[type=tel],input[type=text],select,textarea{font-size:16px}}.hidden{display:none!important}