.contact-section{padding-block:clamp(2.5rem,5vw,4.5rem) clamp(3.5rem,7vw,6rem)}.contact-grid{display:grid;grid-template-columns:1.25fr .92fr;grid-gap:clamp(1.5rem,3vw,2.6rem);gap:clamp(1.5rem,3vw,2.6rem);align-items:start}.contact-form-card{order:1}.contact-info{order:2}.contact-intro-title{font-size:clamp(1.4rem,2.4vw,1.85rem);font-weight:900;letter-spacing:-.02em;color:var(--text)}.contact-intro-desc{margin-top:.75rem;color:var(--text-soft);font-size:1rem;line-height:1.8;max-width:46ch}.info-cards{display:flex;flex-direction:column;gap:.9rem;margin-top:1.8rem}.info-card{display:flex;align-items:flex-start;gap:1rem;padding:1.15rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s}.info-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:rgba(249,115,22,.35)}.info-card-icon{flex-shrink:0;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:1.1rem;color:#fff;background:var(--grad-135);box-shadow:var(--shadow-orange)}.info-card-label{font-size:.78rem;font-weight:700;color:var(--text-muted)}.info-card-value{margin-top:.2rem;font-size:.98rem;font-weight:700;color:var(--text);word-break:break-word}.info-card-value a{color:var(--text);transition:color .2s}.info-card-value a:hover{color:var(--primary)}.info-card-sub{margin-top:.15rem;font-size:.82rem;color:var(--text-soft)}.contact-socials{display:flex;gap:.6rem;margin-top:1.6rem}.contact-socials a{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;font-size:1rem;color:var(--text-soft);background:var(--surface);border:1px solid var(--border);transition:color .2s,border-color .2s,transform .2s,background .2s}.contact-socials a:hover{color:var(--primary);border-color:rgba(249,115,22,.4);transform:translateY(-2px)}.contact-form-card{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:clamp(1.5rem,3vw,2.4rem)}.contact-form-card:before{content:"";position:absolute;inset-block-start:0;inset-inline:0;height:4px;background:var(--grad)}.form-head-title{font-size:1.3rem;font-weight:900;color:var(--text);letter-spacing:-.01em}.form-head-desc{margin-top:.4rem;font-size:.92rem;color:var(--text-soft);line-height:1.7}.contact-form{margin-top:1.6rem;display:flex;flex-direction:column;gap:1.1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.1rem;gap:1.1rem}.field{display:flex;flex-direction:column;gap:.45rem}.field label{font-size:.85rem;font-weight:700;color:var(--text)}.field label .req{color:var(--primary);-webkit-margin-start:.15rem;margin-inline-start:.15rem}.field input,.field select,.field textarea{width:100%;font-family:inherit;font-size:.95rem;color:var(--text);background:var(--surface-3);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.8rem .95rem;transition:border-color .2s,box-shadow .2s,background .2s}.field textarea{resize:vertical;min-height:130px;line-height:1.7}.field input::placeholder,.field textarea::placeholder{color:var(--text-muted)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 4px rgba(249,115,22,.13)}.field select{cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;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='%2394a3b8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left .95rem center;-webkit-padding-start:.95rem;padding-inline-start:.95rem}.field select,html[dir=ltr] .field select{-webkit-padding-end:2.4rem;padding-inline-end:2.4rem}html[dir=ltr] .field select{background-position:right .95rem center;-webkit-padding-start:.95rem;padding-inline-start:.95rem}.consent{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer}.consent input{width:18px;height:18px;margin-top:.15rem;accent-color:var(--primary);flex-shrink:0;cursor:pointer}.consent span{font-size:.85rem;color:var(--text-soft);line-height:1.6}.consent a{color:var(--primary);font-weight:700}.consent a:hover{text-decoration:underline}.form-submit{margin-top:.3rem}.form-note{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--text-muted);margin-top:.2rem}.form-note i,.form-success{color:var(--green)}.form-success{display:none;align-items:center;gap:.7rem;padding:.9rem 1.1rem;margin-top:.2rem;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);border-radius:var(--radius-sm);font-size:.9rem;font-weight:700}.form-success.show{display:flex}.form-success i{font-size:1.05rem}.field input:user-invalid,.field select:user-invalid,.field textarea:user-invalid{border-color:rgba(239,68,68,.6)}.field-error{display:none;font-size:.8rem;font-weight:600;color:var(--red);margin-top:-.1rem}.field-error:before{content:"\f06a";font-family:Font Awesome\ 6 Free;font-weight:900;-webkit-margin-end:.4rem;margin-inline-end:.4rem;font-size:.82em}.field-error.show,.field.has-error .field-error{display:block}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--red);background:rgba(239,68,68,.04)}.field.has-error input:focus,.field.has-error select:focus,.field.has-error textarea:focus{box-shadow:0 0 0 4px rgba(239,68,68,.12)}.consent.has-error span{color:var(--red)}.consent.has-error input{outline:2px solid var(--red);outline-offset:2px}.contact-map{margin-top:clamp(1.6rem,3vw,2.6rem);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.contact-map-bar{display:flex;align-items:center;gap:.9rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.contact-map-pin{flex-shrink:0;width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:1rem;color:#fff;background:var(--grad-135);box-shadow:var(--shadow-orange)}.contact-map-title{font-size:.98rem;font-weight:800;color:var(--text)}.contact-map-sub{font-size:.8rem;color:var(--text-soft);margin-top:.1rem}.contact-map-link{-webkit-margin-start:auto;margin-inline-start:auto;display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1rem;border-radius:999px;white-space:nowrap;font-size:.85rem;font-weight:700;color:var(--primary);background:rgba(249,115,22,.1);border:1px solid rgba(249,115,22,.25);transition:background .2s,transform .2s}.contact-map-link:hover{background:rgba(249,115,22,.16);transform:translateY(-1px)}.contact-map iframe{display:block;width:100%;height:340px;border:0;filter:grayscale(.15)}html[data-theme=dark] .contact-map iframe{filter:grayscale(.3) invert(.9) hue-rotate(180deg) brightness(.95) contrast(.95)}@media (max-width:880px){.contact-grid{grid-template-columns:1fr}}@media (max-width:540px){.form-row{grid-template-columns:1fr}}