.features{padding:6rem 0}.features--light{background:#f7fafc}.features--dark{background:#2d3748;color:white}.features--white{background:white}.container{max-width:1200px;margin:0 auto;padding:0 2rem;@media (max-width:768px){padding-left:1rem;padding-bottom:0;padding-right:1rem;padding-top:0}}.features-header{text-align:center;margin-bottom:3rem}.features-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#2d3748;@media (max-width:1024px){font-size:2rem}@media (max-width:768px){font-size:1.5rem}}.features--dark .features-title{color:white}.features-subtitle{font-size:1.25rem;color:#4a5568;line-height:1.6;max-width:600px;margin:0 auto}.features--dark .features-subtitle{color:rgba(255,255,255,.8)}.features-grid{display:grid;gap:2rem;@media (max-width:768px){grid-template-columns:1fr;gap:1.5rem}}.features-grid--cols-1{grid-template-columns:1fr}.features-grid--cols-2{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.features-grid--cols-3{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.features-grid--cols-4{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.feature-card{background:white;padding:2rem;border-radius:12px;text-align:center;box-shadow:0 1px 3px 0 rgba(0,0,0,.1);transition:transform .2s ease,box-shadow .2s ease;border:1px solid #e2e8f0;&:hover{transform:translateY(-4px);box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}}.features--dark .feature-card{background:#4a5568;border-color:#718096}.feature-icon{font-size:3rem;margin-bottom:1rem;display:block;line-height:1}.feature-title{color:#2d3748;margin-bottom:1rem;font-size:1.5rem;font-weight:600;@media (max-width:768px){font-size:1.25rem}}.features--dark .feature-title{color:white}.feature-description{color:#4a5568;line-height:1.6;margin:0}.features--dark .feature-description{color:rgba(255,255,255,.8)}.hero{color:white;padding:6rem 2rem;min-height:70vh;display:flex;align-items:center;position:relative;@media (max-width:1024px){padding-left:1rem;padding-bottom:4rem;padding-right:1rem;padding-top:4rem;min-height:60vh}@media (max-width:768px){padding-left:1rem;padding-bottom:3rem;padding-right:1rem;padding-top:3rem;min-height:50vh}}.hero--with-background{background-size:cover;background-position:50%;background-repeat:no-repeat}.hero--gradient-default{background:linear-gradient(135deg,#667eea,#764ba2)}.hero--left .hero-content{text-align:left;@media (max-width:1024px){text-align:center}}.hero--center .hero-content{text-align:center}.hero--right .hero-content{text-align:right;@media (max-width:1024px){text-align:center}}.hero-container{max-width:1200px;margin:0 auto;width:100%}.hero-content{display:flex;align-items:center;justify-content:space-between;gap:4rem;@media (max-width:1024px){flex-direction:column;gap:2rem}}.hero-content--center{text-align:center;@media (max-width:1024px){text-align:center}}.hero-content--right{text-align:right;@media (max-width:1024px){text-align:center}}.hero-content--left{text-align:left;@media (max-width:1024px){text-align:center}}.hero-text{flex:1;max-width:600px}.hero-title{color:white;margin-bottom:1.5rem;font-size:3.5rem;font-weight:700;line-height:1.2;@media (max-width:1024px){font-size:2.5rem}@media (max-width:768px){font-size:2rem}}.hero-subtitle{display:block;background:linear-gradient(135deg,#f093fb,#ffeaa7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-top:.5rem}.hero-description{font-size:1.25rem;color:rgba(255,255,255,.9);margin-bottom:2rem;line-height:1.6;@media (max-width:768px){font-size:1.1rem}}.hero-actions{display:flex;gap:1rem;@media (max-width:480px){flex-direction:column}}.hero-media{flex:1;display:flex;justify-content:center;align-items:center;@media (max-width:1024px){max-width:400px;margin-left:auto;margin-bottom:0;margin-right:auto;margin-top:0}}.cta-primary{background:#f093fb;color:white;padding:1rem 2rem;font-size:1.1rem;border:none;border-radius:12px;font-family:inherit;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);&:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1)}&:focus{outline:2px solid #f093fb;outline-offset:2px}}.cta-secondary{background:transparent;color:white;padding:1rem 2rem;font-size:1.1rem;border:2px solid rgba(255,255,255,.3);border-radius:12px;font-family:inherit;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;backdrop-filter:blur(10px);&:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5)}&:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}}.keen-slider:not([data-keen-slider-disabled]){-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;align-content:flex-start;display:flex;overflow:hidden;position:relative;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-khtml-user-select:none;width:100%}.keen-slider:not([data-keen-slider-disabled]) .keen-slider__slide{min-height:100%;overflow:hidden;position:relative;width:100%}.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-reverse]{flex-direction:row-reverse}.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-v]{flex-wrap:wrap}.layout{min-height:100vh;display:flex;flex-direction:column}.footer{background:#2d3748;color:white;padding:2rem 0;margin-top:auto}.footer-content{display:flex;justify-content:space-between;align-items:center;@media (max-width:768px){flex-direction:column;gap:1rem;text-align:center}}.footer-main{display:flex;align-items:center;gap:2rem;@media (max-width:768px){flex-direction:column;gap:1rem}}.footer-copyright{color:rgba(255,255,255,.8);margin:0;font-size:.9rem}.footer-links{display:flex;gap:1.5rem;@media (max-width:480px){flex-direction:column;gap:.5rem}}.footer-link{color:rgba(255,255,255,.8);text-decoration:none;font-size:.9rem;transition:color .2s ease;&:hover{color:white}&:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px;border-radius:4px}}.footer-admin{display:flex;align-items:center;gap:1rem;@media (max-width:768px){flex-direction:column;gap:.5rem}}.admin-welcome{color:rgba(255,255,255,.8);font-size:.9rem}.admin-link{background:#667eea;color:white;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;text-decoration:none;transition:background-color .2s ease;&:hover{background:#764ba2}&:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}}