#contact-form{--_radius:clamp(10px,2.2vw,20px);--_gap:clamp(14px,2.5vw,28px);--_pad:clamp(16px,3.2vw,36px);--_shadow:0 10px 30px rgba(16,57,120,.12);--_shadow-focus:0 12px 40px rgba(16,57,120,.18);--_ring:0 0 0 clamp(2px,.4vw,4px) var(--color-primary-light);--_border:1px solid rgba(26,103,204,.12);--_label:clamp(12px,1.6vw,14px);--_fs-body:clamp(15px,1.3vw,17px);--_fs-h:clamp(20px,3vw,28px)}.contact-form-section{font-family:var(--font-body_font);color:var(--color-text-primary);background:linear-gradient(180deg,var(--color-background-default),#ffffff 60%);padding:clamp(0px,6vw,80px)}.contact-form-container{max-width:100%;margin:0 auto;background:var(--color-secondary-main);border:var(--_border);border-radius:var(--_radius);box-shadow:var(--_shadow);padding:var(--_pad);position:relative;overflow:clip}.contact-form-container::before{content:"";position:absolute;inset:-40% -10% auto auto;width:clamp(180px,30vw,420px);aspect-ratio:1.8/1;background:radial-gradient(72% 120% at 80% 0%,rgba(45,102,253,.18) 0%,rgba(45,102,253,0) 60%),conic-gradient(from 210deg at 20% 60%,rgba(32,128,255,.10),rgba(26,103,204,.0) 40%,rgba(32,128,255,.12) 75%,rgba(26,103,204,.0) 100%);transform:skewY(-6deg) rotate(-2deg);filter:blur(10px);pointer-events:none}.contact-form-header{margin-bottom:clamp(18px,3.2vw,36px)}.contact-form-visuallyhidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.contact-form-intro{font-family:var(--font-heading_font);font-weight:600;font-size:var(--_fs-h);line-height:var(--font-font_sizes-line_height_heading);color:var(--color-text-primary);display:inline-block;position:relative;padding:clamp(2px,.5vw,6px) clamp(6px,1vw,10px)}.contact-form-intro::after{content:"";position:absolute;inset:auto 0 10% 0;height:clamp(10px,1.8vw,16px);background:linear-gradient(92deg,var(--color-primary-light),var(--color-accent-main));opacity:.25;transform:skewX(-12deg);border-radius:clamp(6px,1vw,12px);z-index:-1}.contact-form-body{display:grid;gap:var(--_gap)}.contact-form-fieldset{border:0;padding:0;margin:0;display:grid;gap:var(--_gap)}.contact-form-legend{font-family:var(--font-heading_font);font-weight:600;font-size:clamp(16px,2.2vw,20px);color:var(--color-primary-dark);position:relative;width:max-content;padding:clamp(2px,.6vw,8px) clamp(8px,1.2vw,14px);border-radius:clamp(6px,1vw,12px);background:linear-gradient(90deg,rgba(32,128,255,.12),rgba(45,102,253,.06))}.contact-form-row{display:grid;gap:var(--_gap)}.contact-form-group{display:grid;gap:clamp(6px,1vw,10px)}.contact-form-group label{font-size:var(--_label);font-weight:600;color:var(--color-text-primary);letter-spacing:.2px}.contact-form-group input,.contact-form-group textarea{font:400 var(--_fs-body) var(--font-body_font);color:var(--color-text-primary);background:#fff;border:var(--_border);border-radius:var(--_radius);padding:clamp(12px,2.2vw,16px);outline:none;transition:box-shadow .25s ease,border-color .25s ease,background-color .25s ease,transform .08s ease;box-shadow:inset 0 -1px 0 rgba(26,103,204,.06)}.contact-form-group textarea{min-height:clamp(140px,24vw,220px);resize:vertical}.contact-form-group input::placeholder,.contact-form-group textarea::placeholder{color:rgba(0,0,0,.45)}.contact-form-group input:focus,.contact-form-group textarea:focus{border-color:var(--color-primary-light);box-shadow:var(--_ring),var(--_shadow);background:linear-gradient(#fff,#fff) padding-box,radial-gradient(70% 120% at 0% 0%,rgba(32,128,255,.06),rgba(45,102,253,0)) border-box}.contact-form-group input:invalid[required]:not(:focus),.contact-form-group textarea:invalid[required]:not(:focus){border-color:var(--color-error);box-shadow:inset 0 0 0 1px rgba(231,76,60,.3)}.contact-form-actions{display:grid;gap:clamp(8px,1.4vw,14px);justify-items:start;margin-top:clamp(6px,1.6vw,12px)}.contact-form-submit{-webkit-box-sizing:border-box;box-sizing:border-box;appearance:none;border:0;cursor:pointer;font:600 clamp(14px,1.6vw,16px) var(--font-body_font);background:linear-gradient(92deg,var(--color-primary-main),var(--color-accent-main));padding:clamp(12px,2.2vw,16px) clamp(16px,3.2vw,28px);border-radius:clamp(12px,2.2vw,22px);box-shadow:0 8px 18px rgba(32,128,255,.25),inset 0 -2px 0 rgba(255,255,255,.25);transition:transform .1s ease,box-shadow .25s ease,filter .25s ease}.contact-form-submit:hover{filter:saturate(1.05) brightness(1.02);box-shadow:0 10px 24px rgba(32,128,255,.3),inset 0 -2px 0 rgba(255,255,255,.3);transform:translateY(-1px)}.contact-form-submit:active{transform:translateY(0);box-shadow:0 6px 14px rgba(32,128,255,.28)}.contact-form-submit:focus-visible{outline:none;box-shadow:var(--_ring),0 8px 18px rgba(32,128,255,.25)}.contact-form-feedback{margin-top:clamp(6px,1.4vw,12px);font-size:clamp(13px,1.4vw,14px);color:var(--color-primary-dark);min-height:1em}.contact-form-group input[aria-invalid="true"],.contact-form-group textarea[aria-invalid="true"]{border-color:var(--color-error);box-shadow:inset 0 0 0 1px rgba(231,76,60,.3)}.contact-form-group input:disabled,.contact-form-group textarea:disabled,.contact-form-submit:disabled{opacity:.6;cursor:not-allowed}@media (min-width:480px){.contact-form-row{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.contact-form-container{max-width:840px}.contact-form-body{grid-template-columns:1fr}}@media (min-width:1024px){.contact-form-container{max-width:960px}}