.contact-page-main-content{min-height:100vh;background-color:var(--bg-white);position:relative}.contact-page-section{padding:8rem 0;min-height:100vh;background:radial-gradient(ellipse 570px 300px at center 55%,rgba(237,133,128,.9) 0,rgba(241,145,132,.8) 0,rgba(245,145,123,.7) 20%,rgba(249,145,113,.6) 30%,rgba(251,147,103,.5) 40%,rgba(255,152,124,.4) 50%,rgba(255,158,143,.35) 60%,rgba(255,165,161,.3) 70%,rgba(255,186,203,.25) 80%,rgba(250,211,233,.2) 90%,rgba(247,234,250,.1) 95%,rgba(255,255,255,0) 100%);position:relative}.contact-page-section-content{max-width:65rem;margin:0 auto;padding:0 1rem;text-align:center}.contact-page-section h2,.contact-page-section-title{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.contact-page-section-desc{color:var(--text-secondary);font-size:1rem;font-family:var(--font-family);margin:0 auto}.contact-page-grid{max-width:1070px;margin:0 auto;padding:45px 16px 8px;display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start;position:relative}.contact-page-grid:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--contact-radial-gradient);z-index:-1;opacity:.3;border-radius:1rem}.contact-info-panel{background:var(--bg-white);border-radius:1rem;padding:1rem;box-shadow:var(--shadow-md);border:1px solid var(--bg-gray-200);position:relative;z-index:1;max-width:500px}.contact-info-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.contact-info-subtitle{font-size:1rem;font-weight:500;color:var(--text-secondary);margin:0 auto;font-family:var(--font-family)}.contact-details{display:flex;flex-direction:column;gap:1rem;margin:2rem auto}.contact-detail{display:flex;align-items:center;gap:1rem;padding:.5rem 0}.contact-detail .icon-email,.contact-detail .icon-location-black-and-white,.contact-detail .icon-phone{display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-detail-icon{width:24px;height:24px;color:var(--primary-orange);flex-shrink:0}.contact-detail .icon-email:before,.contact-detail .icon-location-color:before,.contact-detail .icon-phone:before{margin-right:0;width:24px;height:24px}.contact-detail-text{font-size:1rem;color:var(--text-primary);text-decoration:none;transition:color .3s ease;display:flex;align-items:center;line-height:1.2;max-width:360px}.contact-detail-text.email:hover,.contact-detail-text.phone:hover,.contact-detail-text:hover{color:var(--primary-orange)}.contact-social-links{display:flex;gap:1rem;justify-content:flex-start}.contact-social-link{width:40px;height:40px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .3s ease;background:var(--bg-white);border:1px solid var(--bg-gray-200)}.contact-social-link .social-icon-facebook{width:32px;height:32px;background-size:contain;background-repeat:no-repeat;background-position:50%}.contact-social-link .social-icon-instagram,.contact-social-link .social-icon-linkedin{width:20px;height:20px;background-size:contain;background-repeat:no-repeat;background-position:50%}.contact-social-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-primary)}.contact-form-panel{background:var(--bg-white);border-radius:1rem;padding:1rem;box-shadow:var(--shadow-md);border:1px solid var(--bg-gray-200);position:relative;z-index:1;max-width:500px}.contact-form{gap:1rem}.contact-form,.contact-form-group{display:flex;flex-direction:column}.contact-form-group{gap:.5rem}.contact-form-label{font-size:.9rem;font-weight:500;color:var(--text-primary)}.contact-form-input,.contact-form-textarea{padding:.5rem;border:1px solid var(--bg-gray-300);border-radius:.5rem;font-size:.9rem;transition:border-color .3s ease,box-shadow .3s ease;background:var(--bg-white);color:var(--text-primary)}.contact-form-input:focus,.contact-form-textarea:focus{outline:none;border-color:var(--primary-orange);box-shadow:0 0 0 3px rgba(231,121,55,.1)}.contact-form-textarea{min-height:80px;resize:vertical}.contact-form-submit{background:var(--primary-gradient);color:var(--bg-white);padding:.375rem 1.5rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:700;cursor:pointer;opacity:.9;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-primary);align-self:flex-end;min-width:150px;height:35px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.contact-form-submit:hover:not(:disabled){opacity:1;box-shadow:var(--shadow-primary-lg)}.contact-form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact-form-submit:active:not(:disabled){transform:translateY(0) scale(.98);transition:all .1s ease}.contact-form-error{color:#dc2626;background-color:rgba(220,38,38,.1);border-radius:.5rem;border:1px solid rgba(220,38,38,.2)}.contact-form-error,.contact-form-success{font-size:.875rem;margin-top:.25rem;text-align:center;padding:.75rem}.contact-form-success{color:#059669;background-color:rgba(5,150,105,.1);border-radius:.5rem;border:1px solid rgba(5,150,105,.2)}@media (min-width:1024px){.contact-page-main-content,.contact-page-section-content{padding:0 7.5rem}}@media (max-width:650px){.contact-page-section{padding:8rem 0}.contact-page-section-content{padding:0 .75rem}.contact-page-section h2,.contact-page-section-title{font-size:1.6rem;margin-bottom:.75rem}.contact-page-section-desc{font-size:.9rem}.contact-page-grid{grid-template-columns:1fr;padding:20px .75rem;gap:1.5rem}.contact-form-panel,.contact-info-panel{padding:1rem;max-width:100%}.contact-info-title{font-size:1.1rem;margin-bottom:.5rem}.contact-info-subtitle{font-size:.9rem}.contact-details{gap:0;margin:1.5rem auto}.contact-detail{gap:.75rem;padding:.5rem 0;flex-wrap:wrap}.contact-detail-text{font-size:.875rem;line-height:1.4;max-width:100%;word-break:break-word}.contact-detail .icon-email:before,.contact-detail .icon-location-black-and-white:before,.contact-detail .icon-phone:before{width:20px;height:20px}.contact-social-links{justify-content:center;gap:.875rem;margin-top:1rem}.contact-social-link{width:36px;height:36px}.contact-social-link .social-icon-facebook{width:28px;height:28px}.contact-social-link .social-icon-instagram,.contact-social-link .social-icon-linkedin{width:18px;height:18px}.contact-form{gap:.875rem}.contact-form-group{gap:.5rem}.contact-form-label{font-size:.85rem}.contact-form-input,.contact-form-textarea{padding:.625rem;font-size:.875rem}.contact-form-textarea{min-height:100px}.contact-form-submit{align-self:stretch;padding:.625rem 1.25rem;font-size:.875rem;min-width:100%;height:40px}.contact-form-error,.contact-form-success{font-size:.8rem;padding:.625rem}}@media (max-width:768px){.contact-page-section{padding:7rem 0}.contact-page-section-content{padding:0 1rem}.contact-page-grid{grid-template-columns:1fr;padding:25px 1rem;gap:1.75rem}.contact-form-panel,.contact-info-panel{padding:1.25rem;max-width:100%}.contact-page-section h2,.contact-page-section-title{font-size:1.85rem;margin-bottom:.75rem}.contact-page-section-desc{font-size:.95rem}.contact-info-title{font-size:1.2rem}.contact-info-subtitle{font-size:.95rem}.contact-details{gap:0;margin:1.75rem auto}.contact-detail{gap:.875rem}.contact-detail-text{font-size:.9rem}.contact-social-links{justify-content:center;gap:1rem}.contact-form{gap:1rem}.contact-form-label{font-size:.875rem}.contact-form-input,.contact-form-textarea{font-size:.9rem}.contact-form-submit{align-self:stretch;padding:.5rem 1.5rem;font-size:.875rem;min-width:100%;height:38px}}@media (min-width:768px) and (max-width:1024px){.contact-page-section{padding:7rem 0}.contact-page-section-content{padding:0 2rem}.contact-page-section h2,.contact-page-section-title{font-size:2rem;margin-bottom:.75rem}.contact-page-section-desc{font-size:.95rem}.contact-page-grid{grid-template-columns:1fr 1fr;gap:1.5rem;padding:30px 2rem;max-width:1070px;margin:0 auto}.contact-form-panel,.contact-info-panel{padding:1.5rem;max-width:100%}.contact-info-title{font-size:1.3rem}.contact-info-subtitle{font-size:.95rem}.contact-details{gap:0;margin:1.75rem auto}.contact-detail-text{font-size:.95rem}.contact-social-links{justify-content:flex-start;gap:1rem;margin-top:1rem}.contact-form{gap:1rem}.contact-form-label{font-size:.9rem}.contact-form-input,.contact-form-textarea{padding:.625rem;font-size:.9rem}.contact-form-textarea{min-height:100px}.contact-form-submit{align-self:flex-end;padding:.5rem 1.5rem;font-size:.875rem;min-width:160px;height:38px}}@media (min-width:1024px){.contact-page-grid{grid-template-columns:1fr 1fr;gap:2rem}.contact-form-panel,.contact-info-panel{padding:1.5rem}}