#contact-form{--_radius:clamp(10px,1.2vw,18px);--_space-1:clamp(8px,1vw,14px);--_space-2:clamp(12px,1.6vw,22px);--_space-3:clamp(20px,3vw,48px);--_shadow:0 8px 24px rgba(18,72,142,0.12);--_border:1px solid rgba(26,103,204,0.15);--_focus:0 0 0 3px rgba(45,102,253,0.25),0 6px 16px rgba(18,72,142,0.18);--_input-bg:#fff;--_chip:linear-gradient(135deg,rgba(32,128,255,.12),rgba(29,96,205,.08));--_marker:linear-gradient(100deg,rgba(45,102,253,.25) 18%,rgba(32,128,255,.18) 50%,rgba(18,72,142,.22) 82%);--_grad:linear-gradient(160deg,rgba(26,103,204,.08),rgba(45,102,253,.04) 40%,rgba(26,103,204,.08) 100%);--_blur:saturate(120%) blur(0.3px);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--color-text-primary);background:var(--color-background-default);padding:clamp(24px,5vw,72px) 0;font-family:var(--font-body_font)}.contact-form-container{max-width:clamp(720px,82vw,1040px);margin:0 auto;padding:0 clamp(16px,4vw,40px)}.contact-form-header{display:block;margin-bottom:clamp(12px,2.5vw,28px)}.contact-form-eyebrow{display:inline-block;font-family:var(--font-heading_font);font-weight:600;letter-spacing:.2px;color:var(--color-text-primary);font-size:clamp(18px,2.3vw,28px);line-height:var(--font-font_sizes-line_height_heading);position:relative;padding:clamp(2px,.6vw,6px) clamp(6px,1vw,10px);border-radius:clamp(6px,1vw,12px);background:var(--_chip);backdrop-filter:var(--_blur)}.contact-form-intro{margin-bottom:clamp(10px,2vw,20px)}.contact-form-group-title{font-size:clamp(14px,1.6vw,18px);color:var(--color-primary-dark);font-weight:600;display:inline-block;position:relative;padding-bottom:clamp(2px,.4vw,6px)}.contact-form-group-title::after{content:"";position:absolute;left:0;bottom:0.08em;width:100%;height:clamp(8px,1.6vw,14px);background:var(--_marker);transform:skewX(-10deg);z-index:-1;border-radius:clamp(3px,.6vw,8px)}.contact-form{background:var(--color-secondary-main);border:var(--_border);border-radius:var(--_radius);padding:clamp(18px,4vw,40px);box-shadow:var(--_shadow);position:relative;overflow:hidden}.contact-form::before,.contact-form::after{content:"";position:absolute;inset:-30% -20% auto auto;width:clamp(220px,40vw,520px);height:clamp(120px,22vw,260px);background:var(--_grad);transform:rotate(-8deg);border-radius:50%;filter:blur(8px)}.contact-form::after{inset:auto auto -28% -18%;transform:rotate(12deg)}.contact-form-fieldset{border:0;margin:0 0 clamp(18px,4vw,36px);padding:0}.contact-form-legend{font-family:var(--font-heading_font);font-weight:600;font-size:clamp(16px,1.9vw,22px);margin-bottom:clamp(10px,2vw,18px);color:var(--color-primary-dark);display:inline-block;position:relative}.contact-form-legend::after{content:"";position:absolute;left:-4px;right:-8px;bottom:0.08em;height:clamp(8px,1.7vw,14px);background:var(--_marker);border-radius:clamp(3px,.6vw,8px);transform:skewX(-12deg);z-index:-1}.contact-form-row{display:grid;grid-template-columns:1fr;gap:clamp(12px,2vw,20px);margin-bottom:var(--_space-2)}.contact-form-field{display:grid;gap:clamp(6px,1vw,10px)}.contact-form-field label{font-size:clamp(14px,1.5vw,16px);color:var(--color-text-secondary);font-weight:600}.contact-form input[type="text"],.contact-form input[type="email"],.contact-form input[type="tel"],.contact-form textarea{width:100%;font:400 clamp(15px,1.6vw,16px)/1.5 var(--font-body_font);color:var(--color-text-primary);background:var(--_input-bg);border:1px solid rgba(26,103,204,0.25);border-radius:var(--_radius);padding:clamp(12px,1.8vw,16px) clamp(12px,2vw,18px);transition:box-shadow .25s ease,border-color .25s ease,background-color .25s ease,transform .06s ease;outline:none}.contact-form textarea{min-height:clamp(140px,24vw,220px);resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(0,0,0,.45)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--color-accent-main);box-shadow:var(--_focus);background:#fff}.contact-form input:invalid[required],.contact-form textarea:invalid[required]{border-color:var(--color-error)}.contact-form input:disabled,.contact-form textarea:disabled{background:var(--color-background-paper);cursor:not-allowed;opacity:.8}.form-feedback{font-size:clamp(14px,1.5vw,16px);margin:var(--_space-1) 0 var(--_space-2);min-height:1.2em;color:var(--color-text-secondary)}.contact-form-actions{display:flex;justify-content:flex-end;gap:var(--_space-1);margin-top:var(--_space-2)}.contact-form-submit{appearance:none;border:0;border-radius:clamp(999px,5vw,999px);background:linear-gradient(135deg,var(--color-primary-main),var(--color-accent-main));font-weight:600;letter-spacing:.2px;padding:clamp(12px,1.8vw,16px) clamp(18px,3vw,28px);font-size:clamp(15px,1.8vw,16px);box-shadow:0 6px 16px rgba(45,102,253,.25),inset 0 -2px 0 rgba(0,0,0,.12);transform:translateZ(0);transition:transform .14s ease,box-shadow .25s ease,filter .25s ease}.contact-form-submit:hover{box-shadow:0 10px 22px rgba(45,102,253,.3),inset 0 -2px 0 rgba(0,0,0,.12);filter:saturate(110%)}.contact-form-submit:active{transform:translateY(1px)}.contact-form-submit:focus-visible{outline:none;box-shadow:var(--_focus)}.contact-form-submit:disabled{background:linear-gradient(135deg,var(--color-secondary-dark),#d9d9d9);color:var(--color-secondary-contrast);box-shadow:none;cursor:not-allowed}@media (min-width:480px){.contact-form-row{grid-template-columns:1fr 1fr}}@media (min-width:768px){.contact-form-actions{justify-content:flex-end}}@media (min-width:1024px){.contact-form-container{max-width:1040px}}.contact-info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(16px,2.5vw,24px);margin-bottom:clamp(32px,5vw,48px)}.contact-info-card{background:var(--color-secondary-main);border:1px solid rgba(26,103,204,0.15);border-radius:clamp(10px,1.2vw,16px);padding:clamp(18px,3vw,24px);display:flex;align-items:flex-start;gap:clamp(14px,2vw,18px);box-shadow:0 4px 16px rgba(18,72,142,0.08);transition:all 0.3s ease;position:relative;overflow:hidden}.contact-info-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary-main),var(--color-accent-main));opacity:0;transition:opacity 0.3s ease}.contact-info-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(45,102,253,0.18);border-color:rgba(26,103,204,0.3)}.contact-info-card:hover::before{opacity:1}.contact-info-card__icon{flex-shrink:0;width:clamp(44px,6vw,52px);height:clamp(44px,6vw,52px);background:linear-gradient(135deg,rgba(32,128,255,0.12),rgba(29,96,205,0.08));border-radius:clamp(10px,1.5vw,14px);display:flex;align-items:center;justify-content:center;color:var(--color-primary-main);font-size:clamp(20px,2.5vw,24px);transition:all 0.3s ease}.contact-info-card:hover .contact-info-card__icon{background:linear-gradient(135deg,var(--color-primary-main),var(--color-accent-main));transform:scale(1.05)}.contact-info-card__content{flex:1;min-width:0}.contact-info-card__title{font-family:var(--font-heading_font);font-weight:600;font-size:clamp(15px,1.8vw,18px);color:var(--color-text-primary);margin:0 0 clamp(6px,1vw,8px) 0}.contact-info-card__link{display:inline-block;font-weight:600;font-size:clamp(16px,2vw,19px);color:var(--color-primary-main);text-decoration:none;margin-bottom:clamp(4px,0.8vw,6px);transition:color 0.2s ease;position:relative}button.contact-info-card__link{appearance:none;-webkit-appearance:none;background:none;border:0;padding:0;margin:0;cursor:pointer;font:inherit;text-align:left}.contact-info-card__link::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--color-primary-main);transition:width 0.3s ease}.contact-info-card__link:hover{color:var(--color-accent-main)}.contact-info-card__link:hover::after{width:100%}.contact-info-card__subtitle{font-size:clamp(13px,1.4vw,14px);color:var(--color-text-secondary);margin:0;opacity:0.85}.contact-form-intro{margin-bottom:clamp(16px,2.5vw,24px)}@media (max-width:767px){.contact-info-cards{grid-template-columns:1fr}}@media (min-width:768px) and (max-width:1023px){.contact-info-cards{grid-template-columns:repeat(2,1fr)}.contact-info-card:last-child{grid-column:1 / -1;max-width:50%;margin:0 auto}}