:root{--primary:#2563eb;--primary-light:#3b82f6;--primary-dark:#1d4ed8;--primary-ultralight:#eff6ff;--text:#1f2937;--text-light:#6b7280;--background:#f9fafb;--white:#fff;--gray-light:#f3f4f6;--shadow-sm:0 1px 2px #0000000d;--shadow:0 4px 12px #00000014;--shadow-md:0 8px 18px #0000001a;--shadow-lg:0 18px 35px #00000024;--radius:14px;--transition:all .3s cubic-bezier(.4,0,.2,1);--transition-slow:all .6s cubic-bezier(.16,1,.3,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;background:#f9fafb;background:var(--background);color:#1f2937;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;line-height:1.6;overflow-x:hidden}body:before{background-image:radial-gradient(circle at 1px 1px,rgba(0,0,0,.025) 1px,#0000 0);background-size:18px 18px;content:"";inset:0;pointer-events:none;position:fixed;z-index:-1}.portfolio-container{margin:0 auto;max-width:1100px;padding:0 1rem}.hero-section{display:grid;min-height:84vh;overflow:hidden;padding:clamp(1.25rem,4.5vw,3rem) 0;place-items:center;position:relative}.hero-cover{border-radius:18px;box-shadow:0 18px 35px #00000024;box-shadow:var(--shadow-lg);height:clamp(200px,42vw,340px);left:50%;overflow:hidden;position:absolute;top:0;transform:translateX(-50%);width:min(1100px,100%);z-index:0}.hero-cover-image{display:block;filter:contrast(1.05) saturate(1.05);height:100%;object-fit:cover;object-position:center 26%;object-position:center var(--cover-focus-y,26%);width:100%}.hero-cover:after{background:linear-gradient(180deg,#0000002e,#0000000d 60%,#0000),linear-gradient(90deg,#2563eb1a,#2563eb0a);content:"";inset:0;position:absolute}@media (max-width:480px){.hero-cover-image{object-position:center 22%}}@media (min-width:768px){.hero-cover{height:clamp(220px,36vw,360px)}.hero-cover-image{object-position:center 30%}}.hero-section:before{background:radial-gradient(60% 70% at 50% 100%,#2563eb0f,#0000 60%);content:"";height:40%;inset:auto -20% 0 -20%;pointer-events:none;position:absolute;z-index:0}.hero-content{margin-top:clamp(90px,22vw,180px);max-width:1000px;position:relative;width:100%;z-index:2}.profile-text-container{align-items:center;display:flex;flex-direction:column;gap:.9rem;margin-bottom:1rem;text-align:center}.profile-container{background:#fff;background:var(--white);border:3px solid #ffffffb3;border-radius:50%;box-shadow:0 18px 35px #00000024;box-shadow:var(--shadow-lg);flex-shrink:0;height:clamp(130px,34vw,210px);overflow:hidden;position:relative;width:clamp(130px,34vw,210px)}.profile-image{filter:grayscale(10%) contrast(108%);height:100%;object-fit:cover;transition:all .6s cubic-bezier(.16,1,.3,1);transition:var(--transition-slow);width:100%}.profile-container:hover .profile-image{filter:grayscale(0) contrast(115%);transform:scale(1.04)}.profile-decoration{animation:rotate 18s linear infinite;border:2px dashed #2563eb;border:2px dashed var(--primary);border-radius:50%;inset:-10px;opacity:.22;position:absolute}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.profile-side-text{max-width:720px;width:100%}.text-bubble{background:#fff;background:var(--white);border:1px solid rgba(0,0,0,.035);border-radius:16px;border-radius:calc(var(--radius) + 2px);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);padding:.9rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.text-bubble:hover{box-shadow:0 8px 18px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.bubble-text{color:#1f2937;color:var(--text);font-size:clamp(1.02rem,3.2vw,1.3rem);font-weight:800;margin-bottom:.3rem}.highlight{color:#2563eb;color:var(--primary);display:inline-block;position:relative}.highlight:after{background:currentColor;bottom:-2px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:right;transition:transform .3s;width:100%}.text-bubble:hover .highlight:after{transform:scaleX(1);transform-origin:left}.bubble-subtext{color:#6b7280;color:var(--text-light);font-size:clamp(.95rem,2.8vw,1.05rem)}.emphasize{color:#1f2937;color:var(--text);font-weight:600}.text-arrow{border-left:10px solid #0000;border-right:10px solid #0000;border-top:10px solid #fff;border-top:10px solid var(--white);height:0;margin:8px auto 0;width:0}.hero-text{margin-top:.25rem;text-align:center}.hero-text h1{color:#1f2937;color:var(--text);display:inline-block;font-size:clamp(1.85rem,6vw,3.1rem);font-weight:900;line-height:1.15;position:relative}.hero-text h1:after{background:#2563eb;background:var(--primary);bottom:-6px;content:"";height:3px;left:0;position:absolute;transform:scaleX(0);transform-origin:right;transition:transform .6s;width:100%}.hero-text:hover h1:after{transform:scaleX(1);transform-origin:left}.subtitle{color:#6b7280;color:var(--text-light);display:block;font-size:clamp(1rem,3.2vw,1.3rem);font-weight:600;margin-top:.35rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center;margin-top:.85rem}.action-button{border:2px solid #0000;border-radius:999px;box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:800;overflow:hidden;padding:.78rem 1.1rem;position:relative;text-decoration:none!important}.action-button,.action-button:before{transition:all .3s cubic-bezier(.4,0,.2,1)}.action-button:before{background:linear-gradient(135deg,#2563eb,#1d4ed8);background:linear-gradient(135deg,var(--primary),var(--primary-dark));content:"";inset:0;position:absolute;transition:var(--transition);z-index:-1}.action-button.secondary{border-color:#2563eb;border-color:var(--primary);color:#2563eb}.action-button.secondary:before{background:#eff6ff;background:var(--primary-ultralight);opacity:0}.action-button:hover{box-shadow:0 8px 18px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-button.secondary:hover:before{opacity:1}.action-button.secondary:hover{color:#fff}.section{padding:clamp(1rem,3.8vw,2.2rem) 0;position:relative;scroll-margin-top:72px;z-index:2}.section.alt{background:linear-gradient(180deg,rgba(37,99,235,.045),#2563eb05)}.section.tight{padding-block:clamp(.7rem,3vw,1.5rem)}.section-title{color:#1f2937;color:var(--text);font-size:clamp(1.3rem,4.2vw,1.95rem);font-weight:900;margin-bottom:.9rem;position:relative;text-align:center}.section-title:after{background:linear-gradient(90deg,#2563eb,#3b82f6);background:linear-gradient(90deg,var(--primary),var(--primary-light));border-radius:2px;bottom:-9px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);transition:width .25s;width:64px}.section:hover .section-title:after{width:96px}.timeline{display:flex;flex-direction:column;gap:.85rem;margin:0 auto;max-width:760px;position:relative}.timeline:before{background:linear-gradient(180deg,#2563eb,#3b82f6);background:linear-gradient(to bottom,var(--primary),var(--primary-light));bottom:0;content:"";left:16px;opacity:.2;position:absolute;top:0;width:2px}.timeline-item{background:#fff;background:var(--white);border:1px solid #00000008;border-radius:14px;border-radius:var(--radius);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);margin-left:46px;padding:.9rem 1rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.timeline-item:hover{box-shadow:0 8px 18px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-3px)}.timeline-dot{background:#fff;border:3px solid #2563eb;border:3px solid var(--primary);border-radius:50%;box-shadow:0 0 0 2px #fff;height:14px;left:-34px;position:absolute;top:18px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:14px}.timeline-item:hover .timeline-dot{transform:scale(1.1)}.timeline-item h3{color:#2563eb;color:var(--primary);display:inline-block;font-size:1.08rem;font-weight:800;margin-bottom:.2rem;position:relative}.timeline-item h3:after{background:currentColor;bottom:-3px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:right;transition:transform .3s;width:100%}.timeline-item:hover h3:after{transform:scaleX(1);transform-origin:left}.timeline-date{color:#6b7280;color:var(--text-light);display:block;font-size:.9rem;font-weight:600;margin-bottom:.3rem}.timeline-description{color:#1f2937;color:var(--text);font-size:.97rem}.services-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:1fr;margin:0 auto;max-width:1000px}@media (min-width:640px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.services-grid{gap:1.1rem;grid-template-columns:repeat(3,1fr)}}.service-card{background:#fff;border:1px solid rgba(0,0,0,.035);border-radius:14px;border-radius:var(--radius);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:100%;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.service-card:before{background:linear-gradient(90deg,#2563eb,#3b82f6);background:linear-gradient(90deg,var(--primary),var(--primary-light));content:"";height:3px;inset:0 0 auto 0;position:absolute}.service-card:hover{box-shadow:0 8px 18px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-3px)}.service-top{padding:.95rem 1rem .5rem}.service-icon{background:linear-gradient(135deg,#eff6ff,#eaf2ff);background:linear-gradient(135deg,var(--primary-ultralight),#eaf2ff);border-radius:10px;box-shadow:inset 0 0 0 1px #2563eb26;color:#2563eb;color:var(--primary);display:grid;font-size:1.3rem;height:44px;margin-bottom:.55rem;place-items:center;width:44px}.service-card h3{color:#1f2937;color:var(--text);font-size:1.03rem;font-weight:800;margin-bottom:.2rem}.service-short{color:#6b7280;color:var(--text-light);font-size:.94rem}.service-points{grid-gap:.32rem;display:grid;gap:.32rem;list-style:none;padding:.35rem 1rem .7rem}.service-points li{font-size:.96rem;padding-left:1.05rem;position:relative}.service-points li:before{color:#2563eb;color:var(--primary);content:"•";font-weight:900;left:0;position:absolute;top:0}.service-cta{margin-top:auto;padding:.75rem 1rem 1rem}.service-button{align-items:center;border:2px solid #2563eb;border:2px solid var(--primary);border-radius:999px;color:#2563eb;color:var(--primary);display:inline-flex;font-weight:800;gap:.5rem;justify-content:center;padding:.68rem 1rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.service-button:hover{background:#2563eb;background:var(--primary);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);color:#fff;transform:translateY(-2px)}.contact-container{background:#fff;border:1px solid rgba(0,0,0,.035);border-radius:16px;border-radius:calc(var(--radius) + 2px);box-shadow:0 8px 18px #0000001a;box-shadow:var(--shadow-md);max-width:620px;padding:clamp(1rem,3.6vw,1.5rem);transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.contact-container:hover{box-shadow:0 18px 35px #00000024;box-shadow:var(--shadow-lg);transform:translateY(-3px)}.contact-form{grid-gap:.8rem;display:grid;gap:.8rem}.form-alert{border-radius:10px;box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);font-size:.94rem;font-weight:700;padding:.65rem .9rem}.form-alert.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.form-alert.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.label-with-icon{align-items:center;color:#1f2937;color:var(--text);display:flex;font-size:.98rem;font-weight:700;gap:.5rem}.input-icon{opacity:.85}.input-group input,.input-group textarea{background:#f3f4f6;background:var(--gray-light);border:1px solid #e5e7eb;border-radius:12px;font-family:inherit;font-size:1rem;margin-top:.32rem;padding:.8rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.input-group textarea{min-height:136px;resize:vertical}.input-group input:focus,.input-group textarea:focus{background:#fff;border-color:#2563eb;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a;outline:none}.submit-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-radius:12px;box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);display:inline-flex;font-weight:800;gap:.55rem;margin-top:.05rem;padding:.9rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.submit-button:hover{box-shadow:0 8px 18px #0000001a;box-shadow:var(--shadow-md)}.button-icon{font-size:1.08rem}@media (min-width:768px){.profile-text-container{align-items:center;flex-direction:row;gap:1.8rem;text-align:left}.text-arrow{margin:8px 0 0 20px}.section{padding:clamp(1.4rem,4.6vw,3.6rem) 0}.timeline-item{margin-left:52px;padding:1rem 1.1rem}.timeline-dot{left:-38px}.hero-actions{gap:.75rem}}@media (min-width:1024px){.hero-text{margin:0 auto;max-width:800px}}:root{--primary:#3498db;--primary-hover:#2980b9;--secondary:#f39c12;--secondary-hover:#e67e22;--text:#2c3e50;--text-light:#7f8c8d;--shadow:0 4px 20px #00000014;--radius:16px;--radius-sm:8px;--transition:all 0.4s cubic-bezier(0.16,1,0.3,1)}.projets-container{margin:0 auto;max-width:1400px;overflow-x:hidden;padding:1.5rem}.projets-header{margin-bottom:2.5rem;padding:0 1rem;text-align:center}.projets-header h1{color:#2c3e50;color:var(--text);font-size:clamp(1.8rem,5vw,2.5rem);font-weight:700;line-height:1.2;margin-bottom:.75rem}.projets-header .subtitle{color:#7f8c8d;color:var(--text-light);font-size:clamp(1rem,3vw,1.2rem);line-height:1.5;margin:0 auto;max-width:600px}.projets-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));padding:.5rem}.projet-card{background:#fff;border-radius:16px;border-radius:var(--radius);box-shadow:0 4px 20px #00000014;box-shadow:var(--shadow);display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .4s cubic-bezier(.16,1,.3,1);transition:var(--transition);will-change:transform}.projet-image-container{border-radius:16px 16px 0 0;border-radius:var(--radius) var(--radius) 0 0;height:200px;overflow:hidden;position:relative}.projet-image-container img{height:100%;object-fit:cover;transition:all .4s cubic-bezier(.16,1,.3,1);transition:var(--transition);width:100%}.technologies-badge{bottom:12px;display:flex;flex-wrap:wrap;gap:6px;left:12px;position:absolute;z-index:2}.technologies-badge span{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;border-radius:20px;color:#fff;font-size:.75rem;font-weight:500;padding:4px 10px}.projet-content{display:flex;flex-direction:column;flex-grow:1;padding:1.5rem}.projet-content h3{color:#2c3e50;color:var(--text);font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.projet-content p{color:#7f8c8d;color:var(--text-light);flex-grow:1;line-height:1.6;margin-bottom:1.5rem}.projet-actions{display:flex;gap:.75rem;margin-top:auto}.action-button{align-items:center;background:#3498db;background:var(--primary);border-radius:8px;border-radius:var(--radius-sm);color:#fff;display:flex;flex:1 1;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;padding:.65rem 1.25rem;text-align:center;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);transition:var(--transition)}.action-button.secondary{background:#0000;border:1.5px solid #3498db;border:1.5px solid var(--primary);color:#3498db;color:var(--primary)}.status-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f39c12;background:var(--secondary);border-radius:20px;box-shadow:0 2px 10px #0000001a;color:#fff;font-size:.75rem;font-weight:600;padding:5px 12px;position:absolute;right:12px;top:12px;z-index:2}.projet-card.in-progress{position:relative}.projet-card.in-progress .action-button{background:#f39c12;background:var(--secondary)}.projet-card.in-progress .action-button.secondary{border-color:#f39c12;border-color:var(--secondary);color:#f39c12;color:var(--secondary)}.external-link-icon{display:inline-flex;font-size:.9em}@media (max-width:768px){.projets-container{padding:1rem .5rem}.projets-grid{gap:1rem;padding:0}.projet-actions{flex-direction:column}.action-button{padding:.75rem;width:100%}.projet-image-container{height:180px}.projet-content{padding:1.25rem}}@media (prefers-reduced-motion:no-preference){.projet-card{view-timeline-name:--card;view-timeline-axis:block;animation-timeline:--card;animation-range:entry 25% cover 50%;animation-fill-mode:both;animation-name:cardEnter}@keyframes cardEnter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}:root{--transition:all 0.3s cubic-bezier(0.25,0.8,0.25,1)}.contact-container{display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;justify-content:center}.contact-header h1{background:linear-gradient(135deg,#4361ee,#3a0ca3);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:700;letter-spacing:-.05em;margin-bottom:1rem}.contact-header .subtitle{color:#6c757d;font-size:clamp(1rem,2vw,1.2rem);line-height:1.6;margin:0 auto;max-width:600px}.contact-form-container,.social-links-container{flex:1 1;min-width:0}.contact-form{border:1px solid #0000000d;overflow:hidden}.form-alert{border-radius:8px;font-weight:500;margin-bottom:1.5rem;padding:1rem;text-align:center}.form-alert.success{background-color:#28a74526;border:1px solid #28a74533;color:#28a745}.form-alert.error{background-color:#dc354526;border:1px solid #dc354533;color:#dc3545}.form-group{margin-bottom:1.8rem;position:relative}.form-group label{color:#212529;color:var(--dark);font-size:.95rem;margin-bottom:.6rem}.input-icon{font-size:1.1rem;margin-right:10px}.form-group input,.form-group textarea{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:10px;font-family:inherit;padding:14px 16px 14px 44px;transition:all .3s cubic-bezier(.25,.8,.25,1);transition:var(--transition)}.form-group input:focus,.form-group textarea:focus{background-color:#fff;border-color:#4361ee;border-color:var(--primary);box-shadow:0 0 0 3px #4361ee1a;outline:none}.form-group textarea{min-height:160px;padding-left:16px}.submit-button{border-radius:10px;font-weight:600;gap:10px;padding:16px 24px;transition:all .3s cubic-bezier(.25,.8,.25,1);transition:var(--transition)}.submit-button:hover{background:#4895ef;background:var(--primary-light);box-shadow:0 10px 15px #00000026;box-shadow:var(--shadow-hover);transform:translateY(-2px)}.loader{animation:spin 1s ease-in-out infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.social-links-container h3{color:#212529;color:var(--dark);font-size:1.4rem;font-weight:600;margin-bottom:1.8rem;text-align:center}.social-links-grid{grid-gap:1.2rem;gap:1.2rem}.social-link{border:1px solid #ffffff1a;justify-content:center;overflow:hidden;padding:1.8rem 1rem;position:relative;z-index:1}.social-link,.social-link:before{transition:all .3s cubic-bezier(.25,.8,.25,1);transition:var(--transition)}.social-link:before{background:linear-gradient(#ffffff1a,#fff0);content:"";height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:-1}.social-link:hover:before{opacity:1}.social-icon-wrapper{border:2px solid #ffffff4d;height:60px;margin-bottom:1rem;transition:all .3s ease;width:60px}.social-icon-inner{color:#fff;font-size:28px;transition:transform .3s ease}.social-link:hover .social-icon-wrapper{background:#ffffff4d;transform:scale(1.1)}.social-link:hover .social-icon-inner{transform:rotate(15deg)}.direct-contact{background:#f8f9fa;border:1px solid #0000000d;border-radius:14px;border-radius:var(--border-radius);color:#495057;font-size:1rem;margin-top:2.5rem;padding:1.8rem;text-align:center}.direct-contact p{align-items:center;display:flex;justify-content:center;margin:.6rem 0}.contact-icon{color:#4361ee;color:var(--primary);font-size:1.1rem;margin-right:12px}@media (max-width:768px){.contact-container{padding:1.5rem}.contact-content{flex-direction:column;gap:2.5rem}.contact-form{padding:1.8rem}.contact-form,.social-links-container{margin:0 auto;max-width:450px;width:90%}.social-links-grid{grid-template-columns:repeat(2,1fr)}.contact-header h1{font-size:2.2rem}}@media (max-width:480px){.contact-header h1{font-size:1.9rem}.social-links-grid{grid-template-columns:1fr}.direct-contact{font-size:.9rem;padding:1.5rem}.form-group input,.form-group textarea{padding:12px 14px 12px 40px}.submit-button{padding:14px 20px}}:root{--primary:#4361ee;--primary-light:#4895ef;--dark:#212529;--light:#f8f9fa;--shadow:0 4px 6px #0000001a;--shadow-hover:0 10px 15px #00000026;--border-radius:14px}.contact-container{font-family:Inter,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.contact-header{margin-bottom:3rem;text-align:center}.gradient-text{background:linear-gradient(135deg,#4361ee,#3a0ca3);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:2.5rem;font-weight:700}.text-highlight{color:#4895ef}.subtitle{color:#6c757d;font-size:1.2rem;margin:0 auto;max-width:600px}.contact-content{align-items:flex-start;display:flex;gap:3rem}@media (max-width:768px){.contact-content{flex-direction:column}}.contact-form{background:#fff;border-radius:14px;border-radius:var(--border-radius);box-shadow:0 4px 6px #0000001a;box-shadow:var(--shadow);padding:2rem;position:relative}.contact-form:before{background:linear-gradient(180deg,#4361ee,#4895ef);background:linear-gradient(to bottom,var(--primary),var(--primary-light));content:"";height:100%;left:0;position:absolute;top:0;width:4px}.form-group{margin-bottom:1.5rem}.form-group label{align-items:center;display:flex;font-weight:500;margin-bottom:.5rem}.input-icon{color:#4361ee;color:var(--primary);margin-right:.5rem}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:8px;font-size:1rem;padding:.75rem;width:100%}.form-group textarea{min-height:150px;resize:vertical}.submit-button{align-items:center;background:#4361ee;background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;gap:.5rem;justify-content:center;padding:1rem;width:100%}.button-icon{font-size:1.2rem}.social-links-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.social-link{align-items:center;border-radius:14px;border-radius:var(--border-radius);color:#fff;display:flex;flex-direction:column;padding:1.5rem 1rem;text-align:center;text-decoration:none}.social-icon-wrapper{align-items:center;background:#fff3;border-radius:50%;display:flex;height:50px;justify-content:center;margin-bottom:.5rem;width:50px}.social-icon-inner{font-size:1.5rem}@media (max-width:768px){.contact-container{padding:1rem}.gradient-text{font-size:2rem}.social-links-grid{grid-template-columns:repeat(2,1fr)}}
/*# sourceMappingURL=main.f7c563c3.css.map*/