.contact-layout{display:grid;gap:var(--s-6);grid-template-columns:350px 1fr}.contact-sidebar{display:flex;flex-direction:column;gap:var(--s-6);z-index:1}.contact-sidebar-title{font-size:clamp(1.1rem,.9rem + 1.5vw,1.5rem);font-weight:var(--font-weight-semi-bold);margin:0}.contact-sidebar-list{display:flex;flex-direction:column;gap:var(--s-4);list-style:none;margin-top:var(--s-2);padding:0}.contact-sidebar-item{align-items:center;display:flex;gap:var(--s-4)}.contact-sidebar-item,.contact-sidebar-note{font-size:var(--font-size-sm)}.contact-sidebar-note svg{min-width:24px}.contact-form{background:var(--card-primary);border:1px solid var(--card-border);border-radius:var(--radius-default);box-shadow:0 24px 60px color-mix(in srgb,var(--black) 75%,transparent),0 0 40px color-mix(in srgb,var(--primary-200) 20%,transparent),0 0 80px color-mix(in srgb,var(--accent-200) 15%,transparent);overflow:hidden}.contact-navigation{align-items:center;background:color-mix(in srgb,var(--bg-100) 10%,transparent);border-top:1px solid color-mix(in srgb,var(--card-border) 50%,transparent);display:flex;flex-wrap:wrap;gap:var(--s-4);justify-content:space-between;padding:var(--s-4)}.contact-navigation .navigation-buttons{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-left:auto}.contact-navigation .contact-navigation-text{color:var(--text-300);font-size:var(--font-size-sm);padding:var(--s-2)}.contact-progress{align-items:center;background:color-mix(in srgb,var(--bg-100) 10%,transparent);border-bottom:1px solid var(--card-border);display:flex;flex-wrap:wrap;gap:var(--s-4);justify-content:space-between;padding:var(--s-4) var(--s-6)}.contact-progress .steps{color:var(--text-300);font-size:var(--font-size-sm)}.contact-steps{display:flex;flex-wrap:wrap;gap:var(--s-4);list-style:none;margin:0;padding:0}.contact-steps .step-btn{align-items:center;background:var(--bg-100);border:1px solid var(--card-border);border-radius:var(--radius-full);color:var(--text-300);cursor:pointer;display:inline-flex;font-size:var(--font-size-xs);gap:var(--s-2);line-height:1.2;padding:var(--s-2) var(--s-3);text-decoration:none;transition:background-color var(--anim-speed) ease,border-color var(--anim-speed) ease,color var(--anim-speed) ease}.contact-steps .step-btn:is(:hover,:focus-visible){background:var(--card-primary-hover);border:1px solid var(--card-border-hover);color:var(--text-100)}.contact-steps .step-btn[aria-current=step]{background:var(--gradient-200);border-color:var(--card-border-hover);box-shadow:0 0 20px color-mix(in srgb,var(--primary-200) 40%,transparent),0 0 60px color-mix(in srgb,var(--accent-200) 30%,transparent);color:var(--text-100);font-weight:var(--font-weight-semi-bold)}.contact-body{border:none;min-inline-size:auto;padding:var(--s-6)}.contact-body-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semi-bold);padding-top:var(--s-6)}.contact-body .hint-text{color:var(--text-200);display:flex;flex-direction:column;font-size:var(--font-size-sm);gap:var(--s-2)}.contact-body .field-full-width{grid-column:1/-1}.contact-body .input-field,.contact-body .text-field{background:color-mix(in srgb,var(--bg-100) 25%,transparent);border:1px solid var(--card-border);border-radius:var(--radius-full);color:var(--text-100);font-size:var(--font-size-sm);padding:var(--s-4);transition:background-color var(--anim-speed) ease,border-color var(--anim-speed) ease,color var(--anim-speed) ease;width:100%}.contact-body select.input-field{padding-right:var(--s-10)}.contact-body .text-field{border-radius:var(--radius-default);line-height:1.5;max-height:400px;min-height:250px;resize:vertical}.contact-body .input-field:is(:hover,:focus-visible,:focus-within),.contact-body .text-field:is(:hover,:focus-visible,:focus-within),.contact-body select:is(:hover,:focus-visible,:focus-within){background:var(--card-primary-hover);border:1px solid var(--card-border-hover);color:var(--text-100);outline:none}.contact-body .checkbox{align-items:center;display:flex;font-size:var(--font-size-sm);gap:var(--s-3)}.contact-body .input-field::placeholder,.contact-body .text-field::placeholder,.contact-body select:invalid{color:color-mix(in srgb,var(--text-100) 50%,transparent)}.contact-body .group{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));margin-top:var(--s-4)}.contact-body .field-group{display:flex;flex-direction:column;gap:var(--s-2)}.contact-body .radio-group{background:color-mix(in srgb,var(--bg-100) 25%,transparent);border:1px solid var(--card-border);border-radius:var(--radius-default);display:flex;flex-wrap:wrap;padding:var(--s-1);transition:background-color var(--anim-speed) ease,border-color var(--anim-speed) ease,color var(--anim-speed) ease}.contact-body .radio-group:hover{background:var(--card-primary-hover);border:1px solid var(--card-border-hover);color:var(--text-100)}.contact-body .radio-btn{opacity:0;pointer-events:none;position:absolute}.contact-body .radio-text{align-items:center;border:1px solid transparent;border-radius:var(--radius-full);color:var(--text-300);cursor:pointer;display:flex;flex:1;font-size:var(--font-size-sm);justify-content:center;padding:var(--s-2) var(--s-4)}.contact-body .radio-text:has(input:focus-visible){outline:2px solid var(--primary-100);outline-offset:3px}.contact-body .radio-text:has(input:checked){background:var(--gradient-200);border-color:var(--card-border-hover);border-radius:calc(var(--radius-default) - var(--s-1));color:var(--text-100);font-weight:var(--font-weight-semi-bold)}.contact-review-body{background:color-mix(in srgb,var(--bg-100) 25%,transparent);border:1px solid var(--card-border);border-radius:var(--radius-default);color:var(--text-100);font-size:var(--font-size-sm);line-height:1.5;overflow:hidden;padding:var(--s-6)}.contact-review-body .review-label{border-top:1px solid var(--card-border);color:var(--text-300);font-size:var(--font-size-sm);margin-top:var(--s-2);padding-top:var(--s-4);text-transform:uppercase}.contact-review-body .review-label:first-of-type{border-top:none;margin:0;padding:0}.contact-review-body .review-field-message{white-space:pre-wrap}.contact-form.is-sent{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:500px;text-align:center}.contact-form.is-sent>:not(.contact-success){display:none}.contact-success{margin:auto}.contact-success-title{color:var(--success-100);margin:0;margin-bottom:var(--s-2);padding:0}.contact-success-text{color:var(--text-100)}.contact-navigation-text.is-error{color:var(--error-100)}@media (width <= 1024px){.contact-layout{grid-template-columns:1fr}}@media (width <= 660px){.contact-body .radio-group{flex-direction:column}}