@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700&display=swap'); :root { --background: #0a0a0a; --text-color: #ffffff; --box-bg: rgba(255, 255, 255, 0.1); --hover-bg: rgba(255, 255, 255, 0.2); --glass-bg: rgba(255, 255, 255, 0.1); --glass-border: rgba(255, 255, 255, 0.2); } .light-mode { --background: #f8f9fa; --text-color: #0a0a0a; --box-bg: rgba(0, 0, 0, 0.1); --hover-bg: rgba(0, 0, 0, 0.2); --glass-bg: rgba(0, 0, 0, 0.05); --glass-border: rgba(0, 0, 0, 0.1); } *, *::before, *::after { box-sizing: border-box; } body { margin: 0; padding: 0; padding-top: 80px; /* push content below fixed navbar */ font-family: 'Orbitron', sans-serif; background-color: var(--background); color: var(--text-color); text-align: center; transition: background 0.3s, color 0.3s; overflow-y: auto; } ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.3); border-radius: 10px; } ::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.5); } /* Navbar */ .navbar { display: flex; align-items: center; justify-content: space-between; padding: 15px 30px; background: rgba(0,0,0,0.3); backdrop-filter: blur(10px); position: fixed; top: 0; left: 0; width: 100%; z-index: 10000; } .logo { display: flex; align-items: center; gap: 10px; } .logo-main { height: 50px; border-radius: 20%; } .logo-text { font-size: 1.5em; color: var(--text-color); font-weight: bold; } .nav-links { list-style: none; display: flex; gap: 20px; } .nav-links li { display: inline; } .nav-links a { text-decoration: none; color: inherit; font-size: 1.2em; transition: color 0.3s; } .nav-links a:hover { color: #facc15; } .menu-toggle { display: none; font-size: 1.8em; background: none; border: none; color: var(--text-color); cursor: pointer; } #toggleMode { font-size: 1.2em; background: transparent; border: none; cursor: pointer; color: var(--text-color); } /* Mobile Nav */ @media screen and (max-width: 768px) { .nav-links { display: none; flex-direction: column; position: absolute; top: 60px; right: 0; background: var(--background); width: 100%; text-align: center; padding: 10px; z-index: 9999; } .nav-links.active { display: flex; } .nav-links li { margin: 10px 0; } .menu-toggle { display: block; } } /* Contact Form Container */ .contact-container { width: 50%; margin: 100px auto; background: var(--glass-bg); padding: 40px; border-radius: 15px; backdrop-filter: blur(15px); box-shadow: 0 0 20px var(--glass-border); display: flex; flex-direction: column; align-items: center; transition: transform 0.3s ease-in-out; animation: fadeIn 1s ease-in-out; } /* Form Styles */ .contact-form { background: var(--box-bg); /* now picks up theme */ padding: 30px; border-radius: 15px; box-shadow: 0 0 20px var(--glass-border); width: 100%; max-width: 500px; display: flex; flex-direction: column; align-items: center; color: var(--text-color); } .contact-form h2 { margin-bottom: 20px; color: var(--text-color); } .contact-form label { display: block; font-size: 1.2em; margin-bottom: 5px; text-align: left; color: var(--text-color); font-weight: bold; width: 100%; } .contact-form input, .contact-form textarea, .contact-form select { width: 100%; padding: 12px; margin-bottom: 20px; border: none; border-radius: 8px; font-size: 1em; background: var(--hover-bg); color: var(--text-color); /* ensure text is visible */ outline: none; transition: 0.3s ease-in-out; box-sizing: border-box; backdrop-filter: blur(5px); box-shadow: inset 0 0 5px var(--glass-border); appearance: none; } /* dropdown options match theme */ .contact-form select option { background-color: var(--background); color: var(--text-color); } .contact-form input::placeholder, .contact-form textarea::placeholder { color: rgba(255, 255, 255, 0.5); } .contact-form input:focus, .contact-form textarea:focus, .contact-form select:focus { background: rgba(255, 255, 255, 0.3); box-shadow: 0 0 10px var(--glass-border); transform: scale(1.02); } .contact-form textarea { resize: none; height: 120px; } .submit-button, .contact-form button { background: linear-gradient(135deg, #0d47a1, #1565c0, #1e88e5); color: white; border: none; padding: 15px; font-size: 1.2em; border-radius: 8px; cursor: pointer; transition: background 0.3s ease-in-out, transform 0.2s; width: 100%; text-align: center; box-shadow: 0 4px 10px rgba(13, 71, 161, 0.5); font-weight: bold; } .submit-button:hover, .contact-form button:hover { background: linear-gradient(135deg, #1e88e5, #1565c0, #0d47a1); transform: scale(1.05); } /* Fade-In Animation */ @keyframes fadeIn { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } } /* Success Popup */ .popup { display: none; position: fixed; bottom: 10px; right: 10px; background: #333; color: #0f0; padding: 12px 20px; border-radius: 8px; font-weight: bold; box-shadow: 0 4px 12px rgba(0,0,0,0.5); z-index: 99999; } .popup.show { display: block; } #loadingLine { width: 0; height: 5px; background-color: #0f0; position: fixed; bottom: 0; left: 0; z-index: 999; } /* Feedback Container */ .feedback-container { width: 50%; margin: 60px auto; background: var(--glass-bg); padding: 40px; border-radius: 15px; backdrop-filter: blur(15px); box-shadow: 0 0 20px var(--glass-border); display: flex; flex-direction: column; align-items: center; } .feedback-container h2 { font-size: 2em; margin-bottom: 20px; color: var(--text-color); } .no-feedback { font-size: 1.2em; margin-bottom: 20px; color: var(--text-color); } .feedback-item { background: var(--hover-bg); color: var(--text-color); padding: 15px; border-radius: 8px; width: 100%; margin-bottom: 15px; text-align: left; box-shadow: inset 0 0 5px var(--glass-border); } .feedback-button { background: linear-gradient(135deg, #00e676, #00c853); color: #fff; border: none; padding: 15px 30px; font-size: 1.2em; border-radius: 8px; cursor: pointer; box-shadow: 0 4px 10px rgba(0,200,83,0.5); transition: transform 0.2s; } .feedback-button:hover { transform: scale(1.05); } /* Course Selection */ .hidden { display: none; } #course-selection { display: flex; flex-direction: column; align-items: center; margin-top: 60px; } #course-selection button { background: linear-gradient(135deg, #0d47a1, #1565c0, #1e88e5); color: #fff; border: none; border-radius: 8px; padding: 15px; font-size: 1.2em; width: 200px; margin: 20px; cursor: pointer; transition: background 0.3s; } #course-selection button:hover { background: linear-gradient(135deg, #1e88e5, #1565c0, #0d47a1); } /* Live / Recorded Buttons */ #live-courses > button, #recorded-courses > button { background: linear-gradient(135deg, #0d47a1, #1565c0, #1e88e5); color: #fff; border: none; border-radius: 8px; padding: 12px 24px; font-size: 1.1em; margin: 10px 8px 15px; cursor: pointer; transition: background 0.3s, transform 0.2s; } #live-courses > button:hover, #recorded-courses > button:hover { background: linear-gradient(135deg, #1e88e5, #1565c0, #0d47a1); transform: scale(1.05); } /* Grid & Boxes */ .courses-wrapper { padding: 0 20px; } .courses-section { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr)); gap: 20px; margin: 30px auto; max-width: 1200px; } .course-box { background: var(--box-bg); border: 1px solid var(--glass-border); border-radius: 12px; padding: 16px; font-size: 1.1em; color: var(--text-color); text-align: center; transition: background 0.3s, transform 0.2s; position: relative; min-height: 120px; display: flex; align-items: center; justify-content: center; } .course-box:hover { background: var(--hover-bg); transform: translateY(-4px); } .download-btn { position: absolute; bottom: 8px; right: 8px; width: 32px; height: 32px; background: var(--hover-bg); border: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; text-decoration: none; cursor: pointer; transition: background 0.3s, transform 0.2s; font-size: 1.2em; color: var(--text-color); } .download-btn:hover { background: var(--box-bg); transform: scale(1.1); } /* Responsive tweaks for form */ @media screen and (max-width: 768px) { .contact-container { width: 90%; margin: 80px auto 20px; padding: 20px; } .contact-form { padding: 20px; max-width: 100%; } } /* Very small screens */ @media screen and (max-width: 480px) { #live-courses h4 { padding: 0 15px; font-size: 0.95em; } } .floating-feedback-btn { position: fixed; bottom: 30px; right: 30px; z-index: 999; } .floating-feedback-btn .feedback-button { display: flex; align-items: center; gap: 10px; padding: 12px 20px; font-size: 1em; font-weight: bold; } /* Manual CAPTCHA styling */ #captcha-container { margin-bottom: 20px; text-align: left; width: 100%; } #captcha-question { display: block; font-weight: bold; margin-bottom: 5px; color: var(--text-color); } #captcha-answer { width: 100%; padding: 12px; border: none; border-radius: 8px; font-size: 1em; background: var(--hover-bg); color: var(--text-color); outline: none; transition: 0.3s ease-in-out; box-sizing: border-box; backdrop-filter: blur(5px); box-shadow: inset 0 0 5px var(--glass-border); } #captcha-answer:focus { background: rgba(255,255,255,0.3); box-shadow: 0 0 10px var(--glass-border); transform: scale(1.02); } /* ——— Event Cards: Responsive & Centered Title/Button ——— */ .events-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px; padding: 50px 20px 40px; /* give left/right padding so cards aren’t flush to screen edge */ max-width: 1200px; margin: 0 auto; } .event-box { display: grid; grid-template-rows: 160px auto 1fr auto; /* fixed image height + title + spacer + button */ gap: 8px; background: var(--box-bg); border-radius: 16px; box-shadow: 0 0 20px var(--glass-border); backdrop-filter: blur(15px); overflow: hidden; width: 100%; } .event-box .event-image { grid-row: 1; width: 100%; height: 100%; object-fit: cover; } .event-box .event-title { grid-row: 2; padding: 0 12px; margin: 0; font-size: 1em; text-align: center; word-break: break-word; color: var(--text-color); } .event-box .event-divider { grid-row: 3; width: 60%; border: none; border-top: 1px solid var(--glass-border); justify-self: center; } .event-box .event-button { grid-row: 4; justify-self: center; align-self: end; margin-bottom: 12px; padding: 8px 16px; font-size: 0.9em; background: linear-gradient(135deg, #0d47a1, #1565c0, #1e88e5); color: #fff; border: none; border-radius: 8px; cursor: pointer; transition: transform 0.2s; } .event-box .event-button:hover { transform: scale(1.05); } /* ——— Blur everything under the modal ——— */ body.modal-open > *:not(.event-modal) { filter: blur(8px); pointer-events: none; user-select: none; } /* ——— Modal Overrides & Better Description Spacing ——— */ .event-modal { display: none; position: fixed; inset: 0; background: rgba(0, 0, 0, 0.75); align-items: center; justify-content: center; z-index: 100000; } .event-modal.show { display: flex !important; } .event-modal-content { background: var(--glass-bg); color: var(--text-color); padding: 24px; border-radius: 16px; width: 90vw; max-width: 500px; max-height: 80vh; overflow-y: auto; box-shadow: 0 0 20px var(--glass-border); backdrop-filter: blur(10px); position: relative; } .event-modal-close { position: absolute; top: 12px; right: 12px; font-size: 1.4em; cursor: pointer; } #modalTitle { margin: 24px 0 12px; font-size: 1.2em; text-align: center; } #modalDesc { font-size: 1em; line-height: 1.6; white-space: pre-wrap; /* preserve paragraphs/line breaks */ word-break: break-word; /* wrap long URLs or words */ margin: 0 0 12px; } .event-modal-content a { color: #1e88e5; text-decoration: underline; } /* ——— Very Small Screens ——— */ @media screen and (max-width: 480px) { .events-container { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; padding: 50px 12px 20px; } } .event-box .event-title::before { content: "\A\A"; /* two line-feeds */ white-space: pre; /* preserve them */ } /* ——— Philosophy Page Layout & Animations ——— */ .philosophy-page { display: flex; flex-direction: column; align-items: center; gap: 40px; padding: 60px 20px; max-width: 1000px; margin: 0 auto 40px; } /* Hero */ .hero { text-align: center; } .hero-title, .hero-subtitle { opacity: 0; } .hero-title { font-size: 2.5em; animation: fadeIn 1s ease-out forwards; } .hero-subtitle { font-size: 1.2em; margin-top: 10px; animation: fadeIn 1s ease-out 0.5s forwards; } /* Glass panels */ .glass-card { background: var(--glass-bg); padding: 30px; border-radius: 16px; box-shadow: 0 0 20px var(--glass-border); backdrop-filter: blur(15px); width: 100%; } /* Fade-in on scroll */ .fade-in { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease-out, transform 0.6s ease-out; } .fade-in.visible { opacity: 1; transform: translateY(0); } /* Approach list */ .approach-list { list-style: none; padding: 0; margin: 20px 0; text-align: left; } .approach-list li { margin: 12px 0; font-size: 1.05em; } /* Flip-cards */ .flip-cards { display: flex; gap: 20px; flex-wrap: wrap; justify-content: center; } .flip-card { width: 200px; height: 200px; perspective: 1000px; } .flip-card-inner { position: relative; width: 100%; height: 100%; backface-visibility: hidden; transform-style: preserve-3d; transition: transform 0.6s; } .flip-card:hover .flip-card-inner { transform: rotateY(180deg); } .flip-card-front, .flip-card-back { position: absolute; width: 100%; height: 100%; border-radius: 12px; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 10px var(--glass-border); padding: 10px; box-sizing: border-box; backface-visibility: hidden; } .flip-card-front { background: var(--box-bg); color: var(--text-color); font-size: 1.2em; } .flip-card-back { background: var(--hover-bg); color: var(--text-color); transform: rotateY(180deg); text-align: center; font-size: 1em; } /* Stats counters */ /* .stats-counters { display: flex; gap: 40px; flex-wrap: wrap; justify-content: center; } .stat { text-align: center; } .counter { font-size: 2.5em; color: var(--text-color); } */ /* CTA */ .cta-button { margin-top: 16px; padding: 12px 32px; font-size: 1.1em; border: none; border-radius: 8px; cursor: pointer; background: linear-gradient(135deg, #0d47a1, #1565c0, #1e88e5); color: #fff; animation: pulse 2s infinite; } /* Keyframes */ @keyframes fadeIn { to { opacity: 1; } } @keyframes pulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.05); } } /* ——— Improve readability in Philosophy & Approach ——— */ .our-philosophy, .our-approach { padding: 40px 30px; /* more inside-room */ } .our-philosophy h2, .our-approach h2 { margin-bottom: 20px; /* extra gap under headings */ } .our-philosophy p, .our-approach p, .our-approach .approach-list li { line-height: 1.8; /* taller lines */ word-spacing: 0.15em; /* a bit more space between words */ margin-bottom: 16px; /* separate paragraphs/items */ } /* If you removed the stats section, you can also remove its CSS to keep the file tidy */ .stats, .stats-counters, .stat, .counter { display: none !important; } /* ——— Site Footer ——— */ .site-footer { background: var(--glass-bg); backdrop-filter: blur(15px); color: var(--text-color); padding: 40px 20px 20px; font-size: 0.95em; } .footer-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr)); gap: 20px; max-width: 1200px; margin: 0 auto; text-align: left; } .footer-col h3, .footer-col h4 { margin-bottom: 12px; font-size: 1.1em; } .footer-col p, .footer-col ul { margin: 0; line-height: 1.6; } .footer-col ul { list-style: none; padding: 0; } .footer-col ul li { margin-bottom: 8px; } .footer-col a { color: var(--text-color); text-decoration: none; transition: color 0.3s; } .footer-col a:hover { color: #facc15; } .footer-bottom { margin-top: 30px; text-align: center; border-top: 1px solid var(--glass-border); padding-top: 16px; } .footer-bottom p { margin: 0; font-size: 0.9em; } /* Responsive tweaks */ @media screen and (max-width: 480px) { .site-footer { padding: 30px 12px 12px; } .footer-bottom { font-size: 0.85em; } } .a-footer { text-decoration: none; padding: 12px; color: cadetblue; } .a-foot { text-decoration: none; color: cadetblue; } /* ——— Footer “Choose Your Path” CTA ——— */ .footer-path { text-align: center; margin: 20px 0 10px; } .footer-path p { margin: 0; font-size: 0.95em; line-height: 1.6; } .footer-path a { color: purple; text-decoration: none; transition: color 0.3s; } .footer-path a:hover { color: #facc15; } /* =========================================== ttaindex.html — Hero / Welcome Section =========================================== */ /* ——— Slide-up animation ——— */ @keyframes slideUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } /* ——— Container ——— */ .hero { background-color: var(--background); padding: 80px 20px; } /* ——— Frosted-glass panel ——— */ .hero-content { max-width: 1000px; margin: 0 auto; padding: 40px 30px; background: var(--glass-bg); backdrop-filter: blur(10px); border: 1px solid var(--glass-border); border-radius: 16px; text-align: center; animation: slideUp 1s ease-out forwards; color: var(--text-color); } /* ——— Headline ——— */ #welcome-text { color: var(--text-color); font-size: 2.8em; line-height: 1.2; margin-bottom: 20px; } /* ——— Divider ——— */ .light-hr { width: 60%; margin: 20px auto 40px; border: none; border-top: 1px solid var(--glass-border); } /* ——— Logo & Typewriter wrapper ——— */ .logo-typewriter { display: flex; align-items: center; justify-content: space-between; gap: 60px; margin-top: 20px; animation: slideUp 1s ease-out 0.5s forwards; } /* ——— Logo fixed slot ——— */ .logo-container { flex: 0 0 auto; } /* ——— Round logo ——— */ .welcome-logo { width: 120px; height: 120px; object-fit: cover; border-radius: 50%; transition: transform 0.3s; } .welcome-logo:hover { transform: scale(1.1) rotate(5deg); } /* ——— Typewriter text ——— */ .typewriter-text { flex: 1 1 auto; text-align: right; font-size: 2em; font-weight: 600; color: var(--text-color); } /* ——— Blinking cursor ——— */ #typewriter { display: inline-block; border-right: 2px solid var(--text-color); padding-right: 5px; white-space: nowrap; overflow: hidden; } /* =========================================== Responsive Adjustments =========================================== */ /* Tablet & small desktop */ @media screen and (max-width: 768px) { .hero { padding: 60px 15px; } .hero-content { padding: 30px 20px; } #welcome-text { font-size: 2.2em; margin-bottom: 15px; } .light-hr { width: 80%; } .logo-typewriter { flex-direction: column; gap: 30px; text-align: center; } .welcome-logo { width: 100px; height: 100px; } .typewriter-text { font-size: 1.6em; } } /* Mobile phones */ @media screen and (max-width: 480px) { .hero { padding: 40px 10px; } .hero-content { padding: 20px 15px; border-radius: 12px; } #welcome-text { font-size: 1.6em; line-height: 1.3; } .light-hr { width: 90%; margin: 15px auto 30px; } .welcome-logo { width: 80px; height: 80px; } .typewriter-text { font-size: 1.3em; } #typewriter { border-right: 1px solid var(--text-color); } } /* ——— Prevent “on ” from breaking onto two lines ——— */ .logo-typewriter .typewriter-text { white-space: nowrap; overflow-x: auto; /* allow horizontal scroll if it overflows */ } /* ===== PDF Modal Popup Styles ===== */ .modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; backdrop-filter: blur(8px); background: rgba(0,0,0,0.5); overflow: auto; animation: fadeIn 0.5s ease; } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } .modal-content { position: relative; background: var(--background); color: var(--text-color); margin: 5% auto; padding: 0; border: 1px solid var(--glass-border); border-radius: 10px; width: 90%; max-width: 900px; height: 80vh; box-shadow: 0 0 20px rgba(0,0,0,0.3); } .modal-close { position: absolute; right: 15px; top: 10px; font-size: 30px; font-weight: bold; color: var(--text-color); cursor: pointer; z-index: 10; } .modal-close:hover { color: red; } #pdfFrame { width: 100%; height: 100%; border: none; border-radius: 0 0 10px 10px; } /* Responsive Modal */ @media screen and (max-width: 600px) { .modal-content { width: 95%; height: 75vh; } } /* Responsive tweaks for PDF iframe */ @media screen and (max-width: 600px) { #pdfFrame { height: 80vh; width: 100%; } } /* Corrected Responsive Modal for PDF iframe on Mobile */ @media screen and (max-width: 600px) { .modal-content { width: 95%; height: 80vh; padding: 0; border-radius: 10px; } #pdfFrame { width: 100%; height: 100%; border-radius: 0 0 10px 10px; object-fit: contain; } } .light-mode .event-modal-content { background: rgba(255, 255, 255, 0.95); /* strong white background */ color: #000; /* black text */ box-shadow: 0 0 20px rgba(0,0,0,0.3); } .light-mode .event-modal-content a { color: #0d47a1; /* blue link color */ } .honeypot-field { position: absolute; left: -9999px; top: -9999px; } @media (max-width: 480px) { .typewriter-text { font-size: 1.2rem; /* even smaller font for tiny phones */ } } .typewriter-text { font-size: clamp(1rem, 2.5vw, 1.6rem); /* 👈 responsive smart sizing */ font-weight: bold; color: var(--text-color); text-align: center; max-width: 85%; /* 👈 smaller max width */ word-wrap: break-word; overflow-wrap: break-word; margin: 0 auto; line-height: 1.4; /* 👈 better line spacing */ } .f0f { border-radius: 10px; }