*{margin:0;padding:0;box-sizing:border-box}html{-webkit-overflow-scrolling:touch;overflow-x:hidden}body{font-family:ubuntu,Helvetica Neue,sans-serif;line-height:1.6;color:var(--primary-text);background-color:var(--background-color);-webkit-overflow-scrolling:touch;overflow-x:hidden;position:relative}:root{--midnight-navy: #1C2A3A;--coral-blush: #F76C5E;--golden-apricot: #F4B860;--mint-cream: #F9F9F6;--lavender-mist: #D6CDEA;--teal-breeze: #4FBDBA;--primary-text: var(--midnight-navy);--accent-color: var(--coral-blush);--highlight-color: var(--golden-apricot);--background-color: var(--mint-cream);--secondary-accent: var(--lavender-mist);--interactive-color: var(--teal-breeze);--white: #fff;--shadow: 0 5px 15px rgba(28, 42, 58, .1)}h1,h2,h3,h4,h5,h6{font-weight:600;color:var(--primary-text)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}p{color:var(--primary-text);opacity:.8;margin-bottom:1rem}.btn{padding:.8rem 1.5rem;border:none;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-primary{background:var(--accent-color);color:var(--white)}.btn-primary:hover{background:var(--highlight-color);transform:translateY(-2px);box-shadow:var(--shadow)}.btn-secondary{background:var(--white);color:var(--accent-color);border:2px solid var(--accent-color)}.btn-secondary:hover{background:var(--accent-color);color:var(--white)}.card{background:var(--white);border-radius:10px;box-shadow:var(--shadow);overflow:hidden;transition:transform .3s ease}.card:hover{transform:translateY(-5px)}.grid{display:grid;gap:2rem}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.section{padding:4rem 5%}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}@media(max-width:768px){.section{padding:2rem 3%}h1{font-size:2rem}h2{font-size:1.5rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.btn{padding:1rem 1.5rem;font-size:1rem;min-height:44px;touch-action:manipulation}}@media(max-width:480px){.section{padding:1.5rem 2%}h1{font-size:1.8rem}h2{font-size:1.3rem}h3{font-size:1.2rem}.btn{padding:1.2rem 2rem;width:100%;margin-bottom:.5rem}}body.modal-open{overflow:hidden;height:100vh;touch-action:none}
