.header{background-color:var(--header-background);color:var(--header-text-color);position:sticky;top:0;z-index:1000;transition:background-color .2s ease,color .2s ease}.header-top-row{padding:.5rem 2rem;color:var(--header-text-color)}.header-top-row .logo{font-size:1.2rem;font-weight:700}.header-bottom-row{padding:.5rem 2rem}.header-bottom-row .header-container{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;gap:20px}.header-container nav{order:1;flex-grow:1}.header-container nav ul{list-style:none;padding:0;margin:0;display:flex;gap:1.5rem;align-items:center}.header-container nav a{text-decoration:none;color:var(--header-text-color);font-weight:500;padding:.5rem;border-radius:4px;transition:background-color .2s ease,color .2s ease;opacity:.9}.header-container nav a:hover,.header-container nav a:focus,.header-container nav a.active{color:var(--primary-color);opacity:1}.header-container nav a:focus-visible{outline:2px dashed var(--primary-color);outline-offset:2px}.header-container .social-icons-header{display:flex;align-items:center;gap:15px;flex-shrink:0;order:2}.header-container .social-icons-header a{color:var(--header-text-color);font-size:1.25rem;display:inline-block;transition:color .3s ease,transform .2s ease}.header-container .social-icons-header a:hover{color:var(--primary-color);transform:scale(1.1)}.header-container .menu-toggle{display:none;order:3;background:none;border:none;cursor:pointer;padding:.5rem;z-index:1001;flex-shrink:0}.header-container .menu-toggle .hamburger-line{display:block;width:25px;height:3px;background-color:var(--header-text-color);margin:5px 0;transition:transform .3s ease,opacity .3s ease}.header-container .menu-toggle[aria-expanded=true] .hamburger-line:nth-child(1){transform:translateY(8px) rotate(45deg)}.header-container .menu-toggle[aria-expanded=true] .hamburger-line:nth-child(2){opacity:0}.header-container .menu-toggle[aria-expanded=true] .hamburger-line:nth-child(3){transform:translateY(-8px) rotate(-45deg)}@media (max-width: 767px){.header-top-row{font-size:1rem;padding:.6rem 1rem;text-align:center}.header-bottom-row{padding:.5rem 1rem}.header-bottom-row .header-container{gap:10px}.header-container nav{position:absolute;top:100%;left:0;right:0;background-color:var(--header-background);box-shadow:0 4px 8px #0000001a;padding:1rem 0;z-index:1000;order:1;visibility:hidden;opacity:0;transform:translateY(-10px);transition:opacity .3s ease,transform .3s ease,visibility .3s ease}.header-container nav ul{display:none;flex-direction:column;align-items:center;gap:.5rem}.header-container nav ul.active{display:flex}.header-container nav ul.active+.social-icons-header{display:flex}.header-container nav:has(ul.active){visibility:visible;opacity:1;transform:translateY(0)}.header-container nav a{display:block;width:100%;text-align:center;padding:.75rem 1rem;color:var(--header-text-color)}.header-container nav a:hover,.header-container nav a:focus,.header-container nav a.active{background-color:#0003;color:var(--primary-color)}.header-container .social-icons-header{display:none}.header-container .menu-toggle{display:block;order:2}}.footer{background-color:var(--footer-background);color:var(--footer-text-color);padding:1rem 0;text-align:center;font-size:.9rem;margin-top:auto;transition:background-color .2s ease,color .2s ease}.footer p{margin:0;color:var(--footer-text-color)}.footer a{color:var(--link-color);text-decoration:underline;transition:color .2s ease}.footer a:hover{color:var(--link-hover-color)}.privacy-link{background:none;border:none;color:#007bff;cursor:pointer;padding:0;text-decoration:underline;font-size:inherit;font-family:inherit}.privacy-link:hover{color:#0056b3;text-decoration:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1100;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.modal-overlay:has(.modal-content){opacity:1;visibility:visible}.modal-content{background-color:var(--card-background);color:var(--text-color);padding:30px 40px;border-radius:8px;max-width:800px;width:90%;max-height:85vh;overflow-y:auto;position:relative;box-shadow:0 5px 15px #0003;transform:scale(.95);transition:transform .3s ease}.modal-overlay:has(.modal-content) .modal-content{transform:scale(1)}.modal-close-button{position:absolute;top:10px;right:15px;background:none;border:none;font-size:2rem;line-height:1;color:var(--text-color);cursor:pointer;padding:5px;opacity:.7;transition:opacity .2s ease,transform .2s ease}.modal-close-button:hover{opacity:1;transform:scale(1.1)}.modal-content h2{margin-top:0;margin-bottom:1.5rem;color:var(--text-color)}.modal-content h3{margin-top:1.5rem;margin-bottom:.5rem;color:var(--text-color)}.modal-content p,.modal-content ul{margin-bottom:1rem;line-height:1.6}.modal-content ul{padding-left:20px}.modal-content strong{font-weight:700}.home-section{display:flex;flex-direction:column;align-items:center;padding:40px 20px;text-align:center;background-color:var(--background-color);transition:background-color .2s ease;min-height:60vh}.home-section .container{max-width:800px;width:100%}.home-section .profile-pic{width:150px;height:150px;border-radius:50%;object-fit:cover;margin-bottom:1.5rem;border:3px solid var(--card-border);transition:border-color .2s ease}.home-section h2{font-size:2rem;margin-bottom:1rem;color:var(--text-color);transition:color .2s ease}.home-section p{font-size:1.1rem;line-height:1.7;margin-bottom:1rem;color:var(--text-color);opacity:.9;transition:color .2s ease,opacity .2s ease;max-width:700px;margin-left:auto;margin-right:auto}@media (min-width: 768px){.home-section h2{font-size:2.5rem}.home-section p{font-size:1.2rem}}.skills-section{padding:40px 20px;background-color:var(--background-color);transition:background-color .2s ease}.skills-section h2{text-align:center;margin-bottom:2rem;color:var(--text-color);transition:color .2s ease}.skills-list{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;list-style:none;padding:0;max-width:900px;margin:0 auto}.skills-list li{background-color:var(--skill-background);color:var(--skill-text-color);border-radius:5px;padding:10px 15px;font-size:.9rem;transition:background-color .2s ease,color .2s ease,transform .2s ease}.skills-list li:hover{transform:scale(1.05)}.portfolio-section h2{font-size:2rem;margin-bottom:2rem;color:var(--text-color);transition:color .2s ease}.portfolio-section .portfolio-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.portfolio-section .portfolio-item{background-color:var(--card-background);border:1px solid var(--card-border);border-radius:8px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,background-color .2s ease,border-color .2s ease;display:flex;flex-direction:column}.portfolio-section .portfolio-item:hover{transform:translateY(-5px)}.portfolio-section .portfolio-image{width:100%;height:200px;object-fit:cover;display:block}.portfolio-section .portfolio-title{font-size:1.25rem;color:var(--text-color);font-weight:600;margin:1rem 1rem .5rem;transition:color .2s ease}.portfolio-section .portfolio-description{font-size:.95rem;color:var(--text-color);opacity:.9;line-height:1.6;margin:0 1rem 1rem;flex-grow:1;transition:color .2s ease}.portfolio-section .portfolio-link{display:inline-block;background-color:var(--primary-color);color:#fff;text-align:center;padding:.75rem 1rem;margin:0 1rem 1rem;border-radius:4px;text-decoration:none;font-weight:500;transition:background-color .2s ease;align-self:flex-start}.portfolio-section .portfolio-link:hover,.portfolio-section .portfolio-link:focus{background-color:var(--secondary-color);color:#fff;text-decoration:none;outline:2px solid transparent;outline-offset:2px}.portfolio-section .portfolio-link:focus-visible{outline:2px dashed var(--secondary-color)}.show-more-button{padding:12px 25px;background-color:var(--primary-color);color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .3s ease}.show-more-button:hover{background-color:var(--secondary-color)}@media (min-width: 768px){.portfolio-section h2{font-size:2.5rem}.portfolio-section .portfolio-grid{grid-template-columns:repeat(2,1fr);gap:2rem}}@media (min-width: 1024px){.portfolio-section .portfolio-grid{grid-template-columns:repeat(3,1fr)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Arial,sans-serif;line-height:1.6;color:#333;background-color:#f9f9f9}.container{max-width:1200px;margin:0 auto;padding:20px}.services-header{text-align:center;margin-bottom:50px}.services-header h1{font-size:2.5rem;color:#222}.services-header p{font-size:1.1rem;color:#555}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.service-card{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{transform:translateY(-10px);box-shadow:0 6px 12px #00000026}.service-card img{width:100%;height:200px;object-fit:cover}.service-card .card-content{padding:20px}.service-card h3{font-size:1.5rem;margin-bottom:10px;color:#222}.service-card p{font-size:1rem;color:#666;margin-bottom:15px}.service-card a{display:inline-block;text-decoration:none;color:#fff;background:#007bff;padding:10px 20px;border-radius:5px;transition:background .3s ease}.service-card a:hover{background:#0056b3}@media (max-width: 768px){.services-header h1{font-size:2rem}.services-header p{font-size:1rem}}.services-section{padding:3rem 0}.services-section h2{text-align:center;font-size:2.2rem;color:var(--text-primary);margin-bottom:1rem}.services-section .section-intro{text-align:center;font-size:1.1rem;color:var(--text-secondary);max-width:700px;margin:0 auto 3rem}.service-steps-simplified{display:flex;flex-direction:column;gap:3rem}.service-step{display:flex;flex-direction:column;gap:1.5rem;background-color:var(--card-background, #ffffff);padding:1.5rem;border-radius:8px;box-shadow:0 4px 8px var(--card-shadow, rgba(0, 0, 0, .05));border:1px solid var(--card-border, #e0e0e0)}.service-step-image{width:100%;max-width:400px;height:auto;object-fit:cover;border-radius:6px;margin:0 auto}.service-step-content h3{font-size:1.6rem;color:var(--text-primary);margin-bottom:.75rem}.service-step-content p{font-size:1rem;color:var(--text-secondary);line-height:1.7;margin-bottom:.5rem}.service-step-content p strong{color:var(--text-primary)}@media (min-width: 768px){.service-step{flex-direction:row;align-items:center;gap:2.5rem;padding:2rem}.service-step-image,.service-step-content{flex:1;min-width:0}.service-step-image{max-width:100%;margin:0}.service-step:nth-child(2n){flex-direction:row-reverse}}.services-cta{text-align:center;margin-top:4rem;padding:2rem;background-color:var(--background-secondary, #f9f9f9);border-radius:8px}.services-cta h3{font-size:1.8rem;color:var(--text-primary);margin-bottom:.5rem}.services-cta p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:1.5rem}.services-cta .cta-button{display:inline-block;padding:12px 25px;background-color:var(--primary-color);color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:700;cursor:pointer;text-decoration:none;transition:background-color .3s ease,transform .2s ease}.services-cta .cta-button:hover{background-color:var(--secondary-color);transform:translateY(-2px)}.services-cta .cta-button:focus-visible{outline:2px dashed var(--secondary-color);outline-offset:2px}.contact-section{padding-top:40px;padding-bottom:80px}.contact-section>h2{text-align:center;margin-bottom:1rem;color:var(--text-color);transition:color .2s ease}.contact-section .contact-intro{text-align:center;margin-bottom:2.5rem;max-width:700px;margin-left:auto;margin-right:auto;color:var(--text-color);transition:color .2s ease}.form-wrapper{max-width:700px;margin:0 auto 4rem;padding:2rem;background-color:var(--card-background);border:1px solid var(--card-border);border-radius:8px;transition:background-color .2s ease,border-color .2s ease}.form-wrapper .form-group{margin-bottom:1.5rem}.form-wrapper .form-group label{display:block;margin-bottom:8px;font-weight:700;color:var(--text-color);transition:color .2s ease}.form-wrapper .form-group input[type=text],.form-wrapper .form-group input[type=email],.form-wrapper .form-group textarea{display:block;width:100%;padding:12px;border:1px solid var(--input-border);border-radius:5px;background-color:var(--input-background);color:var(--text-color);font-size:1rem;box-sizing:border-box;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.recaptcha-container{margin-bottom:1.5rem;display:flex;justify-content:center}.form-wrapper form button[type=submit]{display:block;width:100%;max-width:300px;margin:1.5rem auto 0;padding:18px 35px;background-color:var(--primary-color);color:#fff;border:none;border-radius:5px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background-color .2s ease;text-transform:uppercase;letter-spacing:1px}.form-wrapper form button[type=submit]:hover{background-color:var(--secondary-color)}.contact-details-layout{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:4rem;padding-top:2rem;border-top:1px solid #444}.contact-details{text-align:left}.contact-details-column p,.calendly-details-column p{margin-bottom:.75rem;line-height:1.6;color:var(--text-color);transition:color .2s ease}.contact-details-column a{color:var(--link-color);text-decoration:none;transition:color .2s ease}.contact-details-column a:hover{color:var(--link-hover-color);text-decoration:underline}.calendly-link-button{display:inline-block;padding:12px 25px;background-color:var(--primary-color);color:#fff;text-decoration:none;border-radius:5px;font-weight:700;transition:background-color .2s ease}.calendly-link-button:hover{background-color:var(--secondary-color)}@media (min-width: 768px){.contact-details-layout{grid-template-columns:1fr 1fr;gap:3rem}.contact-details-column,.calendly-details-column{text-align:left}.calendly-details-column p:has(>.calendly-link-button){text-align:left}}.back-to-top{position:fixed;bottom:30px;right:30px;z-index:1000}.back-to-top button{background-color:var(--primary-color);color:#fff;border:none;border-radius:50%;width:50px;height:50px;font-size:1.5rem;box-shadow:0 4px 8px #0003;transition:background-color .3s ease,opacity .3s ease,transform .3s ease;opacity:.8}.back-to-top button:hover{background-color:var(--secondary-color);opacity:1;transform:scale(1.1)}.back-to-top button:focus-visible{outline:3px dashed var(--secondary-color);outline-offset:3px}:root{--background-color: #ffffff;--text-color: #212529;--primary-color: #007bff;--secondary-color: #0056b3;--card-background: #f8f9fa;--background-secondary: #e9ecef;--card-border: #dee2e6;--input-background: #ffffff;--input-border: #ced4da;--link-color: var(--primary-color);--link-hover-color: var(--secondary-color);--header-background: #343a40;--header-text-color: #ffffff;--footer-background: #343a40;--footer-text-color: #ffffff;--skill-background: #e9ecef;--skill-text-color: #495057}@media (prefers-color-scheme: dark){:root{--background-color: #121212;--text-color: #e0e0e0;--primary-color: #4dabf7;--secondary-color: #1e88e5;--card-background: #1e1e1e;--background-secondary: #2c2c2e;--card-border: #444444;--input-background: #2c2c2c;--input-border: #555555;--link-color: var(--primary-color);--link-hover-color: #8ccfff;--header-background: #1c1c1c;--header-text-color: #e0e0e0;--footer-background: #1c1c1c;--footer-text-color: #e0e0e0;--skill-background: #3a3a3a;--skill-text-color: #e0e0e0}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-color);color:var(--text-color);transition:background-color .2s ease,color .2s ease}h1,h2,h3,h4,h5,h6{margin:0;color:var(--text-color)}p{color:var(--text-color);line-height:1.6}a{text-decoration:none;color:var(--link-color);transition:color .2s ease}a:hover{color:var(--link-hover-color)}*,*:before,*:after{box-sizing:border-box}
