@media (max-width:767px){.nav-toggle{display:block !important} .nav-menu{position:absolute;top:100%;right:0;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-4);min-width:200px;flex-direction:column;gap:var(--space-2);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all 0.2s ease-in-out} .nav-menu.active{opacity:1;visibility:visible;transform:translateY(0)} .nav-link{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md)} } .grid-cols-1{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:var(--space-4)} .flex-mobile{display:flex;flex-direction:column;gap:var(--space-4)} .section{padding:var(--space-8) 0} .section-content{display:flex;flex-direction:column;gap:var(--space-6)} .contact-form{width:100%;padding:0 var(--space-4)} .form-group{margin-bottom:var(--space-4)} .form-input,.form-select,.form-textarea{font-size:16px} .card-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)} .hero-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-6);animation:fadeInUp 0.8s ease-out;min-height:calc(100vh - 500px);justify-content:center} @keyframes fadeInUp{from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} } .cta-group{display:flex;flex-direction:column;gap:var(--space-3);width:100%;margin-top:auto} @media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))} .sm\:flex-row{flex-direction:row} .sm\:text-left{text-align:left} .cta-group{flex-direction:row;justify-content:center;width:auto} } @media (min-width:768px){.site-header{padding:var(--space-5) 0} .nav-toggle{display:none} .nav-menu{position:static;opacity:1;visibility:visible;transform:none;background:none;border:none;box-shadow:none;padding:0;min-width:auto;flex-direction:row;gap:var(--space-6)} .container{padding:0 var(--space-8)} .hero{padding:var(--space-20) 0} .section{padding:var(--space-12) 0} h1{font-size:var(--font-size-5xl)} h2{font-size:var(--font-size-4xl)} .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))} .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))} .md\:flex-row{flex-direction:row} .md\:items-center{align-items:center} .md\:justify-between{justify-content:space-between} .md\:text-left{text-align:left} .section-content{flex-direction:row;align-items:center;gap:var(--space-8)} .section-content.reverse{flex-direction:row-reverse} .contact-form{padding:0} .form-group{margin-bottom:var(--space-6)} .card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)} .hero-content{gap:var(--space-8)} } @media (min-width:1024px){.hero{padding:var(--space-24) 0} .section{padding:var(--space-16) 0} h1{font-size:var(--font-size-5xl)} h2{font-size:var(--font-size-4xl)} .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))} .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))} .lg\:flex-row{flex-direction:row} .lg\:items-center{align-items:center} .lg\:justify-between{justify-content:space-between} .lg\:text-left{text-align:left} .card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8)} .section-content{gap:var(--space-12)} .hero-content{gap:var(--space-10)} } @media (min-width:1280px){.container{padding:0 var(--space-12)} .xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))} .xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))} .section{padding:var(--space-20) 0} .hero{padding:var(--space-24) 0 var(--space-20) 0} } @media (min-width:1536px){.container{padding:0 var(--space-16)} .2xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))} .2xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))} } @media print{.no-print{display:none !important} .container{max-width:none;padding:0} .hero{padding:var(--space-8) 0} .section{padding:var(--space-6) 0} } @media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important} } @media (prefers-contrast:high){:root{--border-color:#000000;--text-light:var(--text-color)} }