:root{--tp-brand: #0ea5e9;--tp-brand-dark: #0284c7;--tp-brand-glow: rgba(14, 165, 233, .25);--tp-brand-rgb: 14, 165, 233;--tp-bg: #080f1e;--tp-glass: rgba(15, 23, 42, .7);--tp-surface: rgba(30, 41, 59, .5);--tp-text: #e2e8f0;--tp-muted: #94a3b8;--tp-border: rgba(255, 255, 255, .08);--tp-subtle: rgba(255, 255, 255, .05);--tp-radius: 12px;--tp-radius-lg: 16px;--tp-radius-xl: 20px;--tp-ease: cubic-bezier(.4, 0, .2, 1)}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-y:none;overflow-x:hidden}body{background:var(--tp-bg);color:var(--tp-text);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;overflow-x:hidden}.tp-hero a,.tp-hero button,.tp-content-wrapper a,.tp-content-wrapper button,select,input{min-height:44px}button{touch-action:manipulation}button:active,.tp-cta-btn:active{transform:scale(.97)!important;transition:transform .1s!important}.tp-parallax-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;pointer-events:none}.tp-parallax-bg img{width:100%;height:100%;object-fit:cover;display:block}@keyframes tp-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes tp-orb-1{0%{transform:translate(0)}to{transform:translate(-30px,20px)}}@keyframes tp-orb-2{0%{transform:translate(0)}to{transform:translate(20px,-25px)}}@keyframes tp-orb-3{0%{transform:translate(0) scale(1)}to{transform:translate(-15px,15px) scale(1.15)}}.tp-loading-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--tp-bg);z-index:99999;display:flex;align-items:center;justify-content:center;transition:opacity .4s,visibility .4s}.tp-loading-overlay.tp-hidden{opacity:0;visibility:hidden}.tp-loader-ring{width:40px;height:40px;border:3px solid rgba(255,255,255,.05);border-top-color:var(--tp-brand);border-radius:50%;animation:tp-spin .8s linear infinite;box-shadow:0 0 15px var(--tp-brand-glow)}.tp-hero{background:linear-gradient(to bottom,#080f1e8c,#080f1ecc,#080f1e);position:relative;overflow:hidden;min-height:85vh;display:flex;align-items:center;padding:120px 0 80px}.tp-hero:before{content:"";position:absolute;top:auto;bottom:0;left:0;right:0;height:150px;background:linear-gradient(to bottom,transparent,#080f1e);z-index:2;pointer-events:none}.tp-orb{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:1;will-change:transform}.tp-orb-1{width:600px;height:600px;top:-20%;right:-15%;background:radial-gradient(circle,rgba(var(--tp-brand-rgb),.25),transparent 65%);animation:tp-orb-1 8s ease-in-out infinite alternate}.tp-orb-2{width:450px;height:450px;bottom:-10%;left:-15%;background:radial-gradient(circle,rgba(var(--tp-brand-rgb),.15),transparent 65%);animation:tp-orb-2 10s ease-in-out infinite alternate}.tp-orb-3{width:200px;height:200px;top:40%;left:30%;background:radial-gradient(circle,rgba(var(--tp-brand-rgb),.12),transparent 60%);animation:tp-orb-3 12s ease-in-out infinite alternate}.tp-grid-texture{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.03;background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);background-size:60px 60px}.tp-track-graphic{position:absolute;left:3%;bottom:10%;opacity:.08;z-index:0;pointer-events:none;color:var(--tp-brand)}.tp-hero-inner{width:100%;max-width:1200px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1.2fr .8fr;gap:5rem;align-items:center;position:relative;z-index:3}.tp-breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.85rem;color:var(--tp-muted);min-height:unset}.tp-breadcrumb a{color:var(--tp-muted);text-decoration:none;min-height:unset}.tp-breadcrumb a:hover{color:var(--tp-brand)}.tp-breadcrumb-sep{opacity:.4}.tp-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(var(--tp-brand-rgb),.1);color:var(--tp-brand);border:1px solid rgba(var(--tp-brand-rgb),.4);box-shadow:0 0 15px rgba(var(--tp-brand-rgb),.1);padding:8px 20px;border-radius:50px;font-size:.9rem;font-weight:600;margin-bottom:1.5rem;min-height:unset}.tp-hero-content h1{font-size:clamp(2.2rem,5vw,3.5rem);font-weight:900;line-height:1.2;margin-bottom:1.5rem;background:linear-gradient(135deg,white 0%,#cbd5e1 50%,var(--tp-brand) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tp-hero-desc{font-size:1.1rem;line-height:1.7;color:var(--tp-muted);margin-bottom:2.5rem;max-width:600px}.hero-checks{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.hero-check{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--tp-text)}.hero-check i{color:#10b981;font-size:.85rem}.tp-cta-hero-btn{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--tp-brand),var(--tp-brand-dark));color:#fff;padding:14px 32px;border-radius:50px;font-size:1rem;font-weight:700;text-decoration:none;box-shadow:0 10px 20px -5px var(--tp-brand-glow);transition:all .3s var(--tp-ease);min-height:44px}.tp-cta-hero-btn:hover{box-shadow:0 20px 40px -10px var(--tp-brand-glow);transform:translateY(-3px)}.tp-form-wrap{width:400px;max-width:100%}.tp-glass-form{background:#0f172ab3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--tp-border);border-radius:24px;padding:2.5rem;position:relative;overflow:hidden}.tp-glass-form:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--tp-brand),var(--tp-brand-dark))}.tp-glass-form h3{color:#fff;font-size:1.5rem;margin:0 0 .5rem;font-weight:700;text-align:right}.tp-form-sub{color:#64748b;font-size:.9rem;margin-bottom:1.5rem;text-align:right}.tp-glass-input{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--tp-radius);padding:14px 16px;color:#fff;font-family:Heebo,sans-serif;font-size:.95rem;margin-bottom:.75rem;transition:border-color .2s;box-sizing:border-box;text-align:right;min-height:unset}.tp-field-wrap{position:relative}.tp-field-wrap:has(.tp-glass-input[required]):after{content:"*";position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--tp-brand);font-size:1.2rem;pointer-events:none}.tp-glass-input:focus{outline:none;border-color:var(--tp-brand);box-shadow:0 0 0 3px var(--tp-brand-glow)}.tp-glass-input::placeholder{color:#64748b}.tp-privacy-row{display:flex!important;align-items:flex-start!important;gap:10px!important;margin-bottom:1.2rem}.tp-privacy-row input[type=checkbox]{width:16px;height:16px;min-height:unset;margin-top:4px;flex-shrink:0;accent-color:var(--tp-brand);cursor:pointer}.tp-privacy-row label{font-size:.8rem;color:#cbd5e1;line-height:1.4;cursor:pointer;min-height:unset}.tp-privacy-row a{color:#fff;text-decoration:underline}.tp-submit-btn{width:100%;background:var(--tp-brand);color:#fff;border:none;border-radius:var(--tp-radius);padding:15px;font-size:1rem;font-weight:700;font-family:Heebo,sans-serif;cursor:pointer;transition:all .2s;margin-top:.5rem;min-height:44px}.tp-submit-btn:hover{background:var(--tp-brand-dark);transform:translateY(-2px);box-shadow:0 8px 25px var(--tp-brand-glow)}.tp-content-wrapper{background:var(--tp-bg);position:relative;z-index:2}.tp-section{max-width:1200px;margin:0 auto;padding:3rem 2rem}.tp-section+.tp-section{border-top:1px solid rgba(255,255,255,.05)}.tp-section-title{font-size:clamp(1.8rem,3vw,2.4rem);font-weight:800;color:#fff;margin-bottom:2rem}.tp-section-title-center{text-align:center}.tp-content-box{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:var(--tp-radius-lg);padding:2rem}.tp-syllabus-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;list-style:none;padding:0;margin:0}.tp-syllabus-item{display:flex;align-items:flex-start;gap:.75rem;color:var(--tp-text);font-size:1.05rem;line-height:1.5}.tp-syllabus-bullet{color:var(--tp-brand);font-weight:700;flex-shrink:0}details.tp-accordion summary::-webkit-details-marker{display:none!important}details.tp-accordion summary{list-style:none!important}.tp-accordion{background:#1e293b80;border:1px solid var(--tp-subtle);border-radius:var(--tp-radius-lg);overflow:hidden;transition:all .3s var(--tp-ease)}.tp-accordion-summary{padding:1.5rem;cursor:pointer;font-weight:700;font-size:1.1rem;display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;user-select:none;color:#fff;min-height:unset}.tp-accordion-toggle{font-size:1.5rem;color:var(--tp-brand);transition:transform .3s}.tp-accordion[open] .tp-accordion-toggle{transform:rotate(45deg)}.tp-accordion-body{padding:0 1.5rem 1.5rem;border-top:1px solid var(--tp-subtle)}.tp-admission-item{display:flex;align-items:flex-start;gap:1rem;padding:.8rem 0;color:var(--tp-muted);border-bottom:1px solid var(--tp-subtle)}.tp-admission-item:last-child{border-bottom:none}.tp-admission-check{color:var(--tp-brand);font-size:1.1rem;margin-top:2px;flex-shrink:0}.tp-salary-row{margin-bottom:1.25rem}.tp-salary-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.95rem}.tp-salary-label span{color:var(--tp-muted)}.tp-salary-label strong{color:#fff;font-weight:700}.tp-salary-track{height:10px;background:#ffffff0f;border-radius:5px;overflow:hidden}.tp-salary-fill{height:100%;width:0;border-radius:5px;background:linear-gradient(90deg,var(--tp-brand-dark),var(--tp-brand));transition:width 1.2s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px rgba(var(--tp-brand-rgb),.4)}.tp-salary-note{font-size:.8rem;color:#475569;margin-top:1rem;line-height:1.5}details.tp-job-card summary::-webkit-details-marker{display:none!important}details.tp-job-card summary{list-style:none!important}.tp-job-card{background:#1e293b33;border:1px solid var(--tp-subtle);border-radius:var(--tp-radius-lg);overflow:hidden;transition:all .3s var(--tp-ease);margin-bottom:1rem}.tp-job-card[open]{border-color:rgba(var(--tp-brand-rgb),.2)}.tp-job-summary{padding:1.5rem;cursor:pointer;display:flex;align-items:center;gap:1rem;-webkit-user-select:none;user-select:none;outline:none;min-height:unset}.tp-job-icon{font-size:2rem;background:#ffffff0d;padding:12px;border-radius:var(--tp-radius);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .3s}.tp-job-card[open] .tp-job-icon{background:rgba(var(--tp-brand-rgb),.1)}.tp-job-info{flex:1;min-width:0}.tp-job-header{display:flex;justify-content:space-between;align-items:center}.tp-job-title{font-size:1.2rem;margin:0;color:#fff;font-weight:700}.tp-job-toggle{font-size:1.5rem;color:var(--tp-brand);font-weight:700;transition:transform .3s}.tp-job-card[open] .tp-job-toggle{transform:rotate(45deg)}.tp-job-salary{display:inline-block;background:#10b9811a;color:#34d399;padding:4px 12px;border-radius:50px;font-size:.85rem;font-weight:700;margin-top:.5rem}.tp-job-body{padding:0 1.5rem 1.5rem;border-top:1px solid var(--tp-subtle)}.tp-job-desc{color:var(--tp-muted);line-height:1.6;margin-bottom:1.5rem;font-size:1rem;padding-top:1rem}.tp-job-duties{background:#0f172a4d;padding:1.5rem;border-radius:var(--tp-radius)}.tp-job-duties h4{color:#fff;margin-bottom:1rem}.tp-job-duties ul{color:#cbd5e1;padding-right:1.2rem;display:grid;gap:.5rem}.tp-find-college{background:linear-gradient(135deg,rgba(var(--tp-brand-rgb),.08),rgba(var(--tp-brand-rgb),.04));border:1px solid rgba(var(--tp-brand-rgb),.2);border-radius:var(--tp-radius-xl);padding:3rem 2rem;text-align:center}.tp-find-college h3{color:#fff;font-size:1.8rem;font-weight:800;margin-bottom:.75rem}.tp-find-college p{color:var(--tp-muted);margin-bottom:2rem}.tp-find-btn{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--tp-brand);color:var(--tp-brand);background:transparent;padding:12px 32px;border-radius:50px;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s var(--tp-ease);min-height:44px}.tp-find-btn:hover{background:var(--tp-brand);color:#fff}.tp-disclaimer{font-size:.85rem;color:#64748b;background:#0f172a80;padding:1rem 1.5rem;border-radius:var(--tp-radius);border:1px dashed rgba(255,255,255,.1);max-width:700px;margin:0 auto;line-height:1.6;text-align:center}.tp-faq-list{max-width:750px;margin:0 auto;display:flex;flex-direction:column;gap:0}details.tp-faq-item summary::-webkit-details-marker{display:none!important}details.tp-faq-item summary{list-style:none!important}.tp-faq-item{border-bottom:1px solid var(--tp-subtle);transition:background .3s}.tp-faq-item:last-child{border-bottom:none}.tp-faq-item[open]{background:#ffffff05}.tp-faq-q{padding:1.25rem .5rem;cursor:pointer;font-weight:600;font-size:1.05rem;display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;user-select:none;color:var(--tp-text);min-height:44px;transition:color .2s}.tp-faq-q:hover{color:var(--tp-brand)}.tp-faq-toggle{font-size:1.4rem;color:var(--tp-brand);transition:transform .3s var(--tp-ease);flex-shrink:0;margin-right:1rem}.tp-faq-item[open] .tp-faq-toggle{transform:rotate(45deg)}.tp-faq-a{padding:0 .5rem 1.25rem;animation:tp-faq-slide .3s var(--tp-ease)}.tp-faq-a p{color:var(--tp-muted);line-height:1.7;margin:0;font-size:.95rem}.tp-faq-a a{color:var(--tp-brand);text-decoration:none;font-weight:600}.tp-faq-a a:hover{text-decoration:underline}@keyframes tp-faq-slide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.tp-related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:800px;margin:0 auto}.tp-related-card{display:flex;align-items:center;gap:1rem;background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:var(--tp-radius-lg);padding:1.25rem;text-decoration:none;transition:all .3s var(--tp-ease);min-height:44px}.tp-related-card:hover{border-color:rgba(var(--tp-brand-rgb),.3);transform:translateY(-3px);box-shadow:0 12px 30px #0000004d}.tp-related-card:active{transform:scale(.98)}.tp-related-icon{font-size:1.8rem;flex-shrink:0}.tp-related-text{display:flex;flex-direction:column;gap:.2rem}.tp-related-text strong{color:var(--tp-text);font-size:.95rem;font-weight:700}.tp-related-text span{color:var(--tp-muted);font-size:.82rem}.tp-footer{border-top:1px solid var(--tp-border);padding:3rem 2rem 2rem;max-width:1200px;margin:0 auto}.tp-footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:2rem;margin-bottom:2rem;text-align:right}.tp-footer-col{display:flex;flex-direction:column;gap:.5rem}.tp-footer-title{font-weight:700;color:var(--tp-text);margin-bottom:.5rem}.tp-footer-col a{color:var(--tp-muted);text-decoration:none;font-size:.9rem;transition:color .2s;min-height:unset}.tp-footer-col a:hover{color:var(--tp-brand)}.tp-footer-bottom{border-top:1px solid var(--tp-border);padding-top:1.5rem;text-align:center}.tp-footer-bottom p{color:#475569;font-size:.85rem}.tp-footer-bottom a{color:var(--tp-brand);text-decoration:none}.tp-reveal{opacity:0;transform:translateY(24px);transition:opacity .6s var(--tp-ease),transform .6s var(--tp-ease)}.tp-reveal.tp-visible{opacity:1;transform:none}@media(max-width:968px){.tp-hero{min-height:auto;padding-top:100px}.tp-hero-inner{grid-template-columns:1fr!important;gap:3rem!important;padding:0 1rem!important}.tp-hero-content{order:-1}.tp-form-wrap{width:100%!important}.tp-related-grid{grid-template-columns:1fr!important}}@media(max-width:768px){.tp-hero-inner{padding-left:1rem!important;padding-right:1rem!important}.tp-hero-content h1{font-size:2rem!important;line-height:1.2!important;max-width:280px}.tp-hero-desc{font-size:1.05rem!important;line-height:1.55!important}.tp-badge{font-size:.85rem!important;margin-bottom:1.5rem!important}.hero-checks{gap:.75rem;justify-content:flex-start!important}.tp-cta-hero-btn{width:100%;max-width:290px;text-align:center;display:block;margin:1rem auto 0}.tp-glass-form{padding:1.5rem!important;border-radius:var(--tp-radius-xl)}.tp-section{padding:2rem 1rem}.tp-section-title{font-size:1.5rem!important}.tp-content-box{padding:1.25rem!important}.tp-syllabus-grid{grid-template-columns:1fr!important}.tp-job-summary{padding:1.25rem!important}.tp-job-body{padding:0 1.25rem 1.25rem!important}.tp-job-title{font-size:1.1rem!important}.tp-job-icon{font-size:1.4rem!important;padding:8px!important}.tp-track-graphic{display:none}.tp-find-college{padding:2rem 1rem}.tp-find-college h3{font-size:1.4rem}.tp-related-grid{grid-template-columns:1fr!important}.tp-footer{padding:2rem 1rem 1.5rem}.tp-footer-grid{gap:1.5rem}}
