 :root{--bg:#f5f0e8;--fg:#1a1a1a;--accent:#c9a227;--green-primary:#1a4d2e;--green-dark:#0d2818}
        *{box-sizing:border-box; scroll-behavior: smooth;}
        html{scroll-behavior:smooth; font-size: 16px;}
        body{font-family:'Source Sans 3',sans-serif;background-color:var(--bg);color:var(--fg);overflow-x: hidden; width: 100%; max-width: 100vw;}
        h1,h2,h3,h4,h5,h6{font-family:'Cormorant Garamond',serif}
        
        /* Custom Scrollbar */
        ::-webkit-scrollbar{width:8px}
        ::-webkit-scrollbar-track{background:var(--bg)}
        ::-webkit-scrollbar-thumb{background:var(--green-primary);border-radius:4px}

        /* Animations */
        @keyframes float{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(5deg)}}
        @keyframes ripple{0%{transform:scale(1);opacity:.6}100%{transform:scale(2.5);opacity:0}}
        @keyframes drift{0%{transform:translate(0,0) rotate(0deg)}25%{transform:translate(10px,-10px) rotate(5deg)}50%{transform:translate(20px,0) rotate(0deg)}75%{transform:translate(10px,10px) rotate(-5deg)}100%{transform:translate(0,0) rotate(0deg)}}
        @keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

        /* Reveal on Scroll */
        .animate-on-scroll{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.16,1,.3,1)}
        .animate-on-scroll.visible{opacity:1;transform:translateY(0)}
        .animate-on-scroll-left{opacity:0;transform:translateX(-40px);transition:all .8s cubic-bezier(.16,1,.3,1)}
        .animate-on-scroll-left.visible{opacity:1;transform:translateX(0)}
        .animate-on-scroll-right{opacity:0;transform:translateX(40px);transition:all .8s cubic-bezier(.16,1,.3,1)}
        .animate-on-scroll-right.visible{opacity:1;transform:translateX(0)}

        /* Delays */
        .delay-100{transition-delay:100ms}.delay-200{transition-delay:200ms}.delay-300{transition-delay:300ms}.delay-400{transition-delay:400ms}.delay-500{transition-delay:500ms}

        /* Component Specific Styles */
        .hero-3d-container{position:relative;perspective:1000px;overflow:hidden; width: 100%;}
        .kerala-bg-layer{position:absolute;inset:0;transition:transform .1s ease-out;will-change:transform; width: 100%; height: 100%; object-fit: cover;}
        .floating-element{position:absolute;animation:float 6s ease-in-out infinite;pointer-events:none}
        .water-layer{position:absolute;bottom:0;left:0;right:0;height:40%;background:linear-gradient(to top,rgba(26,77,46,.4),transparent)}
        .petal{width:20px;height:20px;background:radial-gradient(circle,#fff 0%,#c9a227 100%);border-radius:50% 0 50% 0;opacity:.7;animation:drift 15s linear infinite}
        
        .room-card{transition:all .4s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:1rem;overflow:hidden; display: flex; flex-direction: column;}
        .room-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px -12px rgba(26,77,46,.25)}
        .room-card:hover .card-image{transform:scale(1.05)}
        .card-image{transition:transform .6s cubic-bezier(.16,1,.3,1)}
        
        .feature-card{transition:all .3s ease;background:#fff}
        .feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.05)}
        
        .btn-primary{background:linear-gradient(135deg,var(--accent) 0%,#b8922a 100%);color:#0d2818;font-weight:600;padding:12px 28px;border-radius:4px;transition:all .3s ease;display:inline-block; text-align: center;}
        .btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(201,162,39,.4)}
        .btn-secondary{border:2px solid var(--accent);color:var(--accent);font-weight:600;padding:10px 24px;border-radius:4px;background:transparent;transition:all .3s ease; text-align: center;}
        .btn-secondary:hover{background:var(--accent);color:var(--green-dark)}
        .btn-dark{background:var(--green-primary);color:#fff;font-weight:600;padding:12px 28px;border-radius:4px;transition:all .3s ease;display:inline-block; text-align: center;}
        .btn-dark:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 10px 30px rgba(13,40,24,.4)}
        
        .nav-link{position:relative;color:#fff;font-weight:500;transition:color .3s ease}
        /*.nav-link.active, .nav-link:hover{color:var(--accent)}*/
        /*.nav-link::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--accent);transition:width .3s ease}*/
        .nav-link.active::after, .nav-link:hover::after{width:100%}
        
        .nav-scrolled{background:rgba(13,40,24,.98)!important;backdrop-filter:blur(10px);box-shadow:0 4px 30px rgba(0,0,0,.2)}
        
        /* Mobile Menu */
        .mobile-menu{transform:translateX(100%);transition:transform .4s cubic-bezier(.16,1,.3,1)}
        .mobile-menu.active{transform:translateX(0)}
        
        .gallery-item{position:relative;overflow:hidden}
        .gallery-item img{transition:transform .6s cubic-bezier(.16,1,.3,1)}
        .gallery-item:hover img{transform:scale(1.1)}
        .gallery-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,40,24,.8) 0%,transparent 60%);opacity:0;transition:opacity .4s ease}
        .gallery-item:hover .gallery-overlay{opacity:1}
        
        /* Accordion */
        .faq-item .faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease}
        .faq-item.active .faq-answer{max-height:500px;padding-bottom:1rem}
        .faq-icon{transition:transform .3s ease}
        .faq-item.active .faq-icon{transform:rotate(180deg)}
        
        /* Mobile Accordion */
        .mobile-accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out;
        }
        .mobile-accordion-content.open {
            max-height: 500px;
        }
        .accordion-icon {
            transition: transform 0.3s ease;
        }
        .accordion-icon.rotate {
            transform: rotate(180deg);
        }

        /* Parallax Strip */
        .parallax-strip-item{background-size:cover;background-position:center;position:relative;will-change:background-position;transition:transform .1s linear}
        
        .discipline-card{position:relative;overflow:hidden;border-radius:1rem;transition:all .5s cubic-bezier(.16,1,.3,1)}
        .discipline-card:hover{transform:translateY(-10px) scale(1.02)}
        .discipline-card::before{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(13,40,24,.9) 0%,rgba(13,40,24,.3) 50%,transparent 100%);z-index:1;transition:all .5s ease}
        .discipline-card:hover::before{background:linear-gradient(to top,rgba(13,40,24,.95) 0%,rgba(26,77,46,.5) 60%,rgba(26,77,46,.2) 100%)}
        .discipline-card img{transition:transform .8s cubic-bezier(.16,1,.3,1)}
        .discipline-card:hover img{transform:scale(1.15)}
        .discipline-content{position:relative;z-index:2}
        .discipline-card .discipline-detail{max-height:0;overflow:hidden;transition:max-height .5s ease,opacity .5s ease;opacity:0}
        .discipline-card:hover .discipline-detail{max-height:200px;opacity:1}
        
        .workspace-card{transition:all .4s cubic-bezier(.16,1,.3,1);border:2px solid transparent}
        .workspace-card:hover{border-color:var(--accent);transform:translateY(-6px);box-shadow:0 20px 40px rgba(26,77,46,.15)}
        .workspace-card .workspace-icon{transition:all .4s ease}
        .workspace-card:hover .workspace-icon{transform:scale(1.1) rotate(5deg);background:var(--accent);color:var(--green-dark)}
        
        .event-card{transition:all .4s ease;position:relative;overflow:hidden}
        .event-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--accent);transform:scaleX(0);transition:transform .4s ease;transform-origin:left}
        .event-card:hover::after{transform:scaleX(1)}
        .event-card:hover{transform:translateY(-4px);box-shadow:0 15px 30px rgba(0,0,0,.08)}
        
        .pricing-tag{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;padding:2px 8px;border-radius:3px}
        .pricing-free{background:#d1fae5;color:#065f46}
        .pricing-paid{background:#fef3c7;color:#92400e}
        
        .spotlight-card{transition:all .5s cubic-bezier(.16,1,.3,1)}
        .spotlight-card:hover{transform:translateY(-8px)}
        .spotlight-card:hover .spotlight-img{transform:scale(1.08)}
        .spotlight-img{transition:transform .7s cubic-bezier(.16,1,.3,1)}
        .spotlight-card:hover .spotlight-accent{width:60px}
        .spotlight-accent{width:30px;height:3px;background:var(--accent);transition:width .4s ease}
        
        .brush-underline{position:relative;display:inline-block}
        .brush-underline::after{content:'';position:absolute;bottom:-4px;left:0;height:8px;width:100%;background:var(--accent);opacity:.3;border-radius:4px;transform:skewX(-12deg)}
        .creative-marquee{overflow:hidden;white-space:nowrap; width: 100%;}
        .creative-marquee-content{display:inline-block;animation:marquee 30s linear infinite}
        .cta-pattern{background-image:radial-gradient(circle at 1px 1px,rgba(201,162,39,.15) 1px,transparent 0);background-size:30px 30px}

        @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
        
        /* Responsive Fixes */
        @media (max-width: 768px) {
            .hero-text h1 { font-size: 2.2rem; line-height: 1.2; }
            .section-padding { padding: 3rem 0; }
            .grid-cols-responsive { grid-template-columns: 1fr; }
            .flex-col-mobile { flex-direction: column; }
            .mobile-text-center { text-align: center; }
            .mobile-mb-4 { margin-bottom: 1rem; }
            
            /* Fix text overflow */
            body { font-size: 14px; }
            h1 { word-wrap: break-word; }
            
            /* Ensure no horizontal scroll */
            section { width: 100%; overflow-x: hidden; }
        }