*,::before,::after{margin:0;padding:0;box-sizing:border-box}
body{font-family:'PT Sans',sans-serif;background:#FFF;color:#273042;line-height:1.6;font-size:16px}
.topbar{background:linear-gradient(135deg,#784aae14 0%,#fffffff2 100%);border-bottom:1px solid #784aae26;padding:18px 0}
.topbarinner{max-width:1024px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center}
.logoarea{flex-shrink:0}
.logolink{display:block;line-height:0}
.logoimage{height:85px;width:85px;display:block;box-shadow:0 6px 14px #784aae1f;border:2px solid #784aae33;border-radius:8px;background:#FFF;padding:4px;transition:all 450ms cubic-bezier(0.34,1.56,0.64,1)}
.logoimage:hover{box-shadow:0 10px 20px #784aae3d;transform:translateY(-2px)}
.mainnavigation{display:flex;gap:32px;align-items:center}
.mainnavigation .navitem{color:#273042;text-decoration:none;font-size:17px;font-weight:400;padding:10px 16px;border-radius:7px;transition:background 420ms cubic-bezier(0.25,0.46,0.45,0.94),color 420ms ease;white-space:nowrap}
.mainnavigation .navitem:hover{background:#784aae1c;color:#784AAE}
.bottombar{background:linear-gradient(to right,#784AAE 0%,#9b6dd1 100%);padding:28px 0;box-shadow:0 8px 18px #27304224}
.bottombarinner{max-width:1024px;margin:0 auto;padding:0 24px;text-align:center}
.companytitle{color:#FFF;font-size:32px;font-weight:700;letter-spacing:.5px;text-shadow:0 4px 12px #0003}
.footertop{background:linear-gradient(180deg,#f8f7fa 0%,#ececf0 100%);padding:56px 0 42px;border-top:3px solid #784aae40}
.footercontainer{max-width:1024px;margin:0 auto;padding:0 24px}
.footergrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:42px}
.footerblock{background:#FFF;padding:26px;border-radius:9px;box-shadow:0 6px 16px #784aae14;border:1px solid #784aae1f}
.footerheading{color:#784AAE;font-size:20px;font-weight:700;margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid #784aae33}
.footerdesc{color:#273042;font-size:15px;line-height:1.7}
.footernav{display:flex;flex-direction:column;gap:12px}
.footerlink{color:#273042;text-decoration:none;font-size:15px;padding:8px 0;transition:color 380ms ease}
.footerlink:hover{color:#784AAE}
.contactinfo{display:flex;flex-direction:column;gap:14px}
.contactline{color:#273042;font-size:15px;line-height:1.6}
.contactlink{color:#784AAE;text-decoration:none;transition:color 380ms ease}
.contactlink:hover{color:#273042}
.footerbottom{background:#273042;padding:24px 0}
.copyrighttext{text-align:center;color:#FFF;font-size:14px}
.consentpopup{position:fixed;top:20px;right:-450px;width:420px;max-width:92%;background:#FFF;border-radius:10px;box-shadow:0 12px 28px #27304238;border:2px solid #784aae4d;z-index:9999;transition:right 520ms cubic-bezier(0.68,-0.55,0.27,1.55)}
.consentpopup.showing{right:20px}
.consentpopup.hiding{right:-450px}
.consentcontent{padding:28px}
.consenttext{color:#273042;font-size:15px;line-height:1.6;margin-bottom:22px}
.consentactions{display:flex;gap:14px}
.consentbtn{flex:1;padding:12px 20px;border:none;border-radius:50px;font-size:15px;font-weight:700;cursor:pointer;transition:all 450ms cubic-bezier(0.34,1.56,0.64,1);font-family:'PT Sans',sans-serif}
.acceptbtn{background:#784AAE;color:#FFF;box-shadow:0 6px 14px #784aae47}
.acceptbtn:hover{background:#6a3f9e;box-shadow:0 10px 20px #784aae61;transform:translateY(-2px)}
.declinebtn{background:#ececf0;color:#273042;box-shadow:0 4px 10px #2730421f}
.declinebtn:hover{background:#d9d9de;box-shadow:0 6px 14px #2730422e;transform:translateY(-2px)}
::-webkit-scrollbar{width:7px}
::-webkit-scrollbar-track{background:#ececf0}
::-webkit-scrollbar-thumb{background:#784AAE;border-radius:0;transition:background 450ms ease}
::-webkit-scrollbar-thumb:hover{background:#6a3f9e}
@media (max-width: 768px) {
.topbarinner{flex-direction:column;gap:20px}
.mainnavigation{flex-wrap:wrap;justify-content:center;gap:16px}
.companytitle{font-size:26px}
.footergrid{grid-template-columns:1fr;gap:28px}
.consentpopup{width:92%;right:-100%}
.consentpopup.showing{right:4%}
.consentactions{flex-direction:column}
}
@media (max-width: 480px) {
.logoimage{height:70px;width:70px}
.mainnavigation .navitem{font-size:15px;padding:8px 12px}
.companytitle{font-size:22px}
}
.rules-text{max-width:1024px;margin:0 auto;padding:60px 24px;background:#FFF}
.rules-text p{font-size:16px;line-height:1.8;color:#273042;margin:0 0 24px;text-align:justify}
.rules-text p strong,.rules-text p b{color:#784AAE;font-weight:600}
.rules-text p em,.rules-text p i{font-style:italic;color:#273042}
.rules-text ul,.rules-text ol{margin:0 0 32px;padding:0 0 0 28px;color:#273042}
.rules-text ul li,.rules-text ol li{font-size:16px;line-height:1.8;margin:0 0 12px;padding:0 0 0 8px}
.rules-text ul li::marker{color:#784AAE}
.rules-text ol li::marker{color:#784AAE;font-weight:600}
.rules-text a{color:#784AAE;text-decoration:underline;transition:all 450ms cubic-bezier(0.4,0.0,0.2,1)}
.rules-text a:hover{color:#273042;text-decoration:none}
.rules-text table{width:100%;border-collapse:collapse;margin:0 0 40px;background:#FFF;box-shadow:0 8px 16px #784aae14}
.rules-text thead{background:#784aae14}
.rules-text thead tr th{padding:18px 20px;text-align:left;font-size:15px;font-weight:600;color:#784AAE;border-bottom:2px solid #784AAE}
.rules-text tbody tr{border-bottom:1px solid #2730421a;transition:background 400ms cubic-bezier(0.4,0.0,0.2,1)}
.rules-text tbody tr:hover{background:#784aae08}
.rules-text tbody tr td{padding:16px 20px;font-size:15px;line-height:1.6;color:#273042}
.rules-text hr{border:0;height:2px;background:linear-gradient(to right,transparent,#784aae4d,transparent);margin:48px 0}
@media (max-width: 768px) {
.rules-text{padding:40px 20px}
.rules-text p{font-size:15px;line-height:1.7;margin:0 0 20px;text-align:left}
.rules-text ul,.rules-text ol{padding:0 0 0 20px;margin:0 0 24px}
.rules-text ul li,.rules-text ol li{font-size:15px;margin:0 0 10px}
.rules-text table{font-size:14px;display:block;overflow-x:auto;margin:0 0 32px}
.rules-text thead tr th{padding:14px 16px;font-size:14px}
.rules-text tbody tr td{padding:12px 16px;font-size:14px}
.rules-text hr{margin:36px 0}
}
@media (max-width: 480px) {
.rules-text{padding:32px 16px}
.rules-text p{font-size:14px;margin:0 0 16px}
.rules-text ul,.rules-text ol{padding:0 0 0 16px;margin:0 0 20px}
.rules-text ul li,.rules-text ol li{font-size:14px;padding:0 0 0 4px}
.rules-text table{font-size:13px}
.rules-text thead tr th{padding:12px;font-size:13px}
.rules-text tbody tr td{padding:10px 12px;font-size:13px}
}
.coursebanner{background:linear-gradient(135deg,#784AAE 0%,#5a3782 100%);padding:80px 20px 60px;position:relative;overflow:hidden}
.coursebanner::before{content:'';position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:#ffffff0f;border-radius:50%}
.coursebanner .contentwrap{max-width:1024px;margin:0 auto;position:relative;z-index:2}
.coursebanner .maintitle{font-size:48px;color:#FFF;margin:0 0 16px;font-weight:700;line-height:1.2}
.coursebanner .subtitle{font-size:20px;color:#ffffffe6;margin:0;line-height:1.6;max-width:680px}
.enrollgrid{padding:70px 20px;background:#FFF}
.enrollgrid .gridwrap{max-width:1024px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.enrollgrid .textcol h2{font-size:36px;color:#273042;margin:0 0 20px;font-weight:700}
.enrollgrid .textcol p{font-size:17px;color:#273042;line-height:1.7;margin:0 0 18px}
.enrollgrid .textcol p:last-of-type{margin-bottom:0}
.enrollgrid .imagecol{position:relative}
.enrollgrid .imagecol img{width:100%;height:400px;object-fit:cover;border-radius:8px;box-shadow:0 12px 28px #784aae2e}
.pathways{padding:70px 20px;background:linear-gradient(180deg,#f8f6fb 0%,#FFF 100%)}
.pathways .pathwrap{max-width:1024px;margin:0 auto}
.pathways .sectionhead{text-align:center;margin-bottom:50px}
.pathways .sectionhead h2{font-size:38px;color:#273042;margin:0 0 14px;font-weight:700}
.pathways .sectionhead p{font-size:18px;color:#273042;margin:0;line-height:1.6}
.pathways .cardsrow{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.pathways .pathcard{background:#FFF;padding:32px 28px;border-radius:10px;box-shadow:0 6px 18px #27304214;transition:transform 500ms cubic-bezier(0.34,1.56,0.64,1),box-shadow 500ms ease;border:2px solid transparent}
.pathways .pathcard:hover{transform:translateY(-8px);box-shadow:0 14px 32px #784aae38;border-color:#784AAE}
.pathways .pathcard h3{font-size:24px;color:#784AAE;margin:0 0 14px;font-weight:600}
.pathways .pathcard p{font-size:16px;color:#273042;line-height:1.6;margin:0 0 12px}
.pathways .pathcard .duration{font-size:15px;color:#784AAE;font-weight:600;margin:0}
.scheduleblock{padding:70px 20px;background:#FFF}
.scheduleblock .schedulewrap{max-width:1024px;margin:0 auto}
.scheduleblock h2{font-size:36px;color:#273042;margin:0 0 40px;font-weight:700;text-align:center}
.scheduleblock .timeline{position:relative;padding-left:50px}
.scheduleblock .timeline::before{content:'';position:absolute;left:18px;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#784AAE 0%,#5a3782 100%)}
.scheduleblock .timeitem{position:relative;margin-bottom:36px;padding-left:30px}
.scheduleblock .timeitem:last-child{margin-bottom:0}
.scheduleblock .timeitem::before{content:'';position:absolute;left:-38px;top:6px;width:16px;height:16px;background:#784AAE;border-radius:50%;border:3px solid #FFF;box-shadow:0 0 0 3px #784AAE}
.scheduleblock .timeitem h4{font-size:22px;color:#784AAE;margin:0 0 8px;font-weight:600}
.scheduleblock .timeitem p{font-size:16px;color:#273042;line-height:1.7;margin:0}
.actionzone{padding:80px 20px;background:linear-gradient(135deg,#273042 0%,#1a2230 100%);position:relative;overflow:hidden}
.actionzone::after{content:'';position:absolute;bottom:-30%;left:-15%;width:500px;height:500px;background:#784aae1f;border-radius:50%}
.actionzone .actionwrap{max-width:1024px;margin:0 auto;display:flex;align-items:center;gap:60px;position:relative;z-index:2}
.actionzone .imagepart{flex:0 0 45%}
.actionzone .imagepart img{width:100%;height:420px;object-fit:cover;border-radius:10px;box-shadow:0 16px 40px #0000004d}
.actionzone .contentpart{flex:1}
.actionzone .contentpart h2{font-size:40px;color:#FFF;margin:0 0 20px;font-weight:700;line-height:1.2}
.actionzone .contentpart p{font-size:18px;color:#ffffffe6;line-height:1.7;margin:0 0 32px}
.actionzone .btngroup{display:flex;gap:18px;flex-wrap:wrap}
.actionzone .primarybtn{display:inline-block;padding:16px 36px;background:#784AAE;color:#FFF;text-decoration:none;border-radius:8px;font-size:17px;font-weight:600;transition:all 450ms cubic-bezier(0.23,1,0.32,1);box-shadow:0 8px 20px #784aae4d;position:relative;z-index:10}
.actionzone .primarybtn:hover{background:#5a3782;transform:translateY(-3px);box-shadow:0 12px 28px #784aae66}
.actionzone .secondarybtn{display:inline-block;padding:16px 36px;background:transparent;color:#FFF;text-decoration:none;border-radius:8px;font-size:17px;font-weight:600;border:2px solid #FFF;transition:all 450ms ease;position:relative;z-index:10}
.actionzone .secondarybtn:hover{background:#FFF;color:#273042}
@media (max-width: 768px) {
.coursebanner{padding:60px 20px 50px}
.coursebanner .maintitle{font-size:36px}
.coursebanner .subtitle{font-size:18px}
.enrollgrid .gridwrap{grid-template-columns:1fr;gap:40px}
.enrollgrid .textcol h2{font-size:30px}
.enrollgrid .imagecol img{height:300px}
.pathways .cardsrow{grid-template-columns:1fr;gap:24px}
.pathways .sectionhead h2{font-size:32px}
.scheduleblock h2{font-size:30px}
.scheduleblock .timeline{padding-left:40px}
.actionzone .actionwrap{flex-direction:column;gap:40px}
.actionzone .imagepart{flex:0 0 auto;width:100%}
.actionzone .imagepart img{height:280px}
.actionzone .contentpart h2{font-size:32px}
.actionzone .btngroup{flex-direction:column}
.actionzone .primarybtn,.actionzone .secondarybtn{text-align:center}
}
@media (min-width: 769px) and (max-width: 1024px) {
.pathways .cardsrow{grid-template-columns:repeat(2,1fr)}
.actionzone .actionwrap{gap:40px}
.actionzone .imagepart{flex:0 0 42%}
}
.titleentry{background:linear-gradient(135deg,#f5f0fa 0%,#fff 100%);padding:80px 20px;position:relative;overflow:hidden}
.titleentry::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-image:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><filter id="noise"><feTurbulence type="fractalNoise" baseFrequency="0.9" numOctaves="4" stitchTiles="stitch"/></filter><rect width="100" height="100" filter="url(%23noise)" opacity="0.03"/></svg>');pointer-events:none}
.titleentry .innerwrap{max-width:1024px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative}
.titleentry .textzone{padding:40px;background:#ffffffb3;border:2px solid #784AAE;border-radius:8px;box-shadow:0 8px 24px #784aae1f}
.titleentry .primaryhead{font-size:48px;line-height:1.2;color:#273042;margin:0 0 20px;font-weight:700}
.titleentry .supporttext{font-size:18px;line-height:1.6;color:#273042;margin:0 0 32px}
.titleentry .actionlink{display:inline-block;padding:16px 36px;background:#784AAE;color:#FFF;text-decoration:none;border-radius:8px;font-size:16px;font-weight:600;transition:all 450ms cubic-bezier(0.4,0,0.2,1);box-shadow:0 4px 12px #784aae4d}
.titleentry .actionlink:hover{background:#5d3a8a;transform:translateY(-2px);box-shadow:0 8px 20px #784aae66}
.titleentry .visualzone{position:relative}
.titleentry .heroimage{width:100%;height:480px;object-fit:cover;border-radius:8px;box-shadow:0 12px 32px #27304226}
.levelaudience{padding:80px 20px;background:#FFF}
.levelaudience .contentwrap{max-width:1024px;margin:0 auto}
.levelaudience .sectionlabel{font-size:36px;color:#273042;margin:0 0 48px;text-align:center;font-weight:700}
.levelaudience .levelgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.levelaudience .levelcard{background:linear-gradient(145deg,#f8f5fc 0%,#fff 100%);padding:36px 28px;border-radius:8px;border:1px solid #784aae33;transition:all 500ms cubic-bezier(0.34,1.56,0.64,1);position:relative}
.levelaudience .levelcard::before{content:'';position:absolute;top:0;left:0;width:4px;height:0;background:#784AAE;transition:height 500ms cubic-bezier(0.34,1.56,0.64,1)}
.levelaudience .levelcard:hover{transform:translateY(-6px);box-shadow:0 12px 28px #784aae2e}
.levelaudience .levelcard:hover::before{height:100%}
.levelaudience .cardtitle{font-size:22px;color:#784AAE;margin:0 0 16px;font-weight:600}
.levelaudience .cardcontent{font-size:16px;line-height:1.6;color:#273042;margin:0}
.organizationstuff{padding:80px 20px;background:linear-gradient(180deg,#fff 0%,#f5f0fa 100%)}
.organizationstuff .contentwrap{max-width:1024px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.organizationstuff .visualpart{position:relative}
.organizationstuff .businessimage{width:100%;height:420px;object-fit:cover;border-radius:8px;box-shadow:0 10px 30px #27304226}
.organizationstuff .textpart{padding:20px 0}
.organizationstuff .maintitle{font-size:34px;color:#273042;margin:0 0 24px;font-weight:700;position:relative;padding-left:20px}
.organizationstuff .maintitle::before{content:'';position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,#784AAE 0%,#5d3a8a 100%);border-radius:3px}
.organizationstuff .featurelist{list-style:none;padding:0;margin:0 0 32px}
.organizationstuff .featurelist li{padding:16px 0 16px 40px;font-size:16px;line-height:1.6;color:#273042;position:relative}
.organizationstuff .featurelist li::before{content:'';position:absolute;left:0;top:20px;width:24px;height:24px;background:#784AAE;border-radius:50%;box-shadow:0 4px 10px #784aae40}
.organizationstuff .featurelist li::after{content:'';position:absolute;left:8px;top:26px;width:8px;height:12px;border:solid #FFF;border-width:0 3px 3px 0;transform:rotate(45deg)}
.organizationstuff .contactaction{display:inline-block;padding:14px 32px;background:#273042;color:#FFF;text-decoration:none;border-radius:8px;font-size:16px;font-weight:600;transition:all 450ms cubic-bezier(0.4,0,0.2,1)}
.organizationstuff .contactaction:hover{background:#1a1f2e;transform:scale(1.05);box-shadow:0 6px 16px #2730424d}
.trialzone{padding:80px 20px;background:#FFF}
.trialzone .contentwrap{max-width:1024px;margin:0 auto;text-align:center}
.trialzone .zonetitle{font-size:36px;color:#273042;margin:0 0 20px;font-weight:700}
.trialzone .zonedesc{font-size:18px;line-height:1.6;color:#273042;margin:0 0 48px;max-width:720px;margin-left:auto;margin-right:auto}
.trialzone .offerrow{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.trialzone .offerbox{background:linear-gradient(135deg,#f8f5fc 0%,#fff 100%);padding:32px 24px;border-radius:8px;border:2px solid transparent;transition:all 500ms cubic-bezier(0.34,1.56,0.64,1);cursor:pointer}
.trialzone .offerbox:hover{border-color:#784AAE;transform:translateY(-8px);box-shadow:0 14px 32px #784aae33}
.trialzone .iconwrap{width:64px;height:64px;margin:0 auto 20px;background:#784aae1a;border-radius:50%;display:flex;align-items:center;justify-content:center}
.trialzone .iconwrap svg{width:32px;height:32px;fill:#784AAE}
.trialzone .offerlabel{font-size:20px;color:#273042;margin:0 0 12px;font-weight:600}
.trialzone .offerdetail{font-size:15px;line-height:1.5;color:#273042;margin:0}
.progresspath{padding:80px 20px;background:linear-gradient(180deg,#f5f0fa 0%,#fff 100%)}
.progresspath .contentwrap{max-width:1024px;margin:0 auto}
.progresspath .pathtitle{font-size:36px;color:#273042;margin:0 0 56px;text-align:center;font-weight:700}
.progresspath .stagecontainer{position:relative}
.progresspath .stageline{position:absolute;left:40px;top:60px;bottom:60px;width:4px;background:linear-gradient(180deg,#784AAE 0%,#784aae4d 100%)}
.progresspath .stageitem{display:grid;grid-template-columns:80px 1fr;gap:32px;margin-bottom:48px;position:relative}
.progresspath .stageitem:last-child{margin-bottom:0}
.progresspath .stagenumber{width:80px;height:80px;background:#784AAE;color:#FFF;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;box-shadow:0 8px 20px #784aae59;position:relative;z-index:2}
.progresspath .stagebody{background:#FFF;padding:28px 32px;border-radius:8px;box-shadow:0 6px 18px #2730421a;border-left:4px solid #784AAE}
.progresspath .stagetitle{font-size:22px;color:#273042;margin:0 0 12px;font-weight:600}
.progresspath .stagedesc{font-size:16px;line-height:1.6;color:#273042;margin:0}
.peoplezone{padding:80px 20px;background:#FFF}
.peoplezone .contentwrap{max-width:1024px;margin:0 auto}
.peoplezone .peopletitle{font-size:36px;color:#273042;margin:0 0 24px;text-align:center;font-weight:700}
.peoplezone .peopleintro{font-size:18px;line-height:1.6;color:#273042;margin:0 0 48px;text-align:center;max-width:800px;margin-left:auto;margin-right:auto}
.peoplezone .practitionergrid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.peoplezone .practitionercard{display:grid;grid-template-columns:180px 1fr;gap:28px;background:linear-gradient(135deg,#f8f5fc 0%,#fff 100%);padding:32px;border-radius:8px;border:1px solid #784aae26;transition:all 500ms cubic-bezier(0.4,0,0.2,1)}
.peoplezone .practitionercard:hover{box-shadow:0 12px 28px #784aae33;transform:translateX(8px)}
.peoplezone .practitionerphoto{width:180px;height:180px;object-fit:cover;border-radius:8px;box-shadow:0 6px 16px #27304226}
.peoplezone .practitionerdata{display:flex;flex-direction:column;justify-content:center}
.peoplezone .practitionername{font-size:22px;color:#784AAE;margin:0 0 8px;font-weight:600}
.peoplezone .practitionerrole{font-size:16px;color:#273042;margin:0 0 16px;font-weight:500}
.peoplezone .practitionerbio{font-size:15px;line-height:1.6;color:#273042;margin:0}
@media (max-width: 768px) {
.titleentry .innerwrap{grid-template-columns:1fr;gap:40px}
.titleentry .primaryhead{font-size:36px}
.titleentry .heroimage{height:320px}
.levelaudience .levelgrid{grid-template-columns:1fr}
.organizationstuff .contentwrap{grid-template-columns:1fr;gap:40px}
.organizationstuff .businessimage{height:340px}
.trialzone .offerrow{grid-template-columns:1fr}
.progresspath .stageitem{grid-template-columns:60px 1fr;gap:20px}
.progresspath .stagenumber{width:60px;height:60px;font-size:24px}
.progresspath .stageline{left:30px}
.peoplezone .practitionergrid{grid-template-columns:1fr}
.peoplezone .practitionercard{grid-template-columns:1fr;text-align:center}
.peoplezone .practitionerphoto{margin:0 auto}
}
@media (min-width: 769px) and (max-width: 1024px) {
.titleentry .innerwrap{gap:40px}
.levelaudience .levelgrid{grid-template-columns:repeat(2,1fr)}
.trialzone .offerrow{grid-template-columns:repeat(2,1fr)}
}
.introheader{background:linear-gradient(165deg,#784aae14 0%,#fffffff2 45%,#2730420a 100%);padding:85px 20px 65px;position:relative;overflow:hidden}
.introheader::before{content:'';position:absolute;top:-120px;right:-80px;width:340px;height:340px;background:radial-gradient(circle,#784aae26 0%,transparent 70%);border-radius:50%;pointer-events:none}
.introheader .centercontent{max-width:1024px;margin:0 auto;position:relative;z-index:2}
.introheader .maintitle{font-size:46px;line-height:1.15;color:#273042;margin:0 0 18px;font-weight:700;letter-spacing:-.5px}
.introheader .subheading{font-size:20px;line-height:1.6;color:#5a5a6e;margin:0 0 28px;max-width:680px}
.introheader .visualarea{margin-top:45px;border-radius:8px;overflow:hidden;box-shadow:0 8px 28px #784aae2e 0 2px 8px #27304214}
.introheader .visualarea img{width:100%;height:auto;display:block;object-fit:cover}
.contactinfo{padding:75px 20px;background:#fff}
.contactinfo .centercontent{max-width:1024px;margin:0 auto}
.contactinfo .sectionlabel{font-size:32px;color:#273042;margin:0 0 45px;font-weight:700;text-align:center}
.contactinfo .gridlayout{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px}
.contactinfo .infocard{background:linear-gradient(135deg,#f9f9fc 0%,#fff 100%);padding:38px 28px;border-radius:10px;border:2px solid transparent;transition:all 450ms cubic-bezier(0.25,0.46,0.45,0.94);position:relative;overflow:hidden}
.contactinfo .infocard::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#784AAE 0%,#5a3a8e 100%);opacity:0;transition:opacity 450ms cubic-bezier(0.25,0.46,0.45,0.94)}
.contactinfo .infocard:hover{border-color:#784aae4d;box-shadow:0 12px 32px #784aae26;transform:translateY(-4px)}
.contactinfo .infocard:hover::before{opacity:1}
.contactinfo .cardicon{width:52px;height:52px;background:linear-gradient(135deg,#784AAE 0%,#5a3a8e 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.contactinfo .cardicon svg{width:26px;height:26px;fill:#fff}
.contactinfo .cardtitle{font-size:19px;font-weight:600;color:#273042;margin:0 0 12px}
.contactinfo .carddetail{font-size:16px;line-height:1.7;color:#5a5a6e;margin:0}
.contactinfo .carddetail a{color:#784AAE;text-decoration:none;transition:color 400ms ease}
.contactinfo .carddetail a:hover{color:#5a3a8e}
.formsection{padding:75px 20px;background:linear-gradient(165deg,#27304208 0%,#ffff 50%,#784aae0d 100%)}
.formsection .centercontent{max-width:720px;margin:0 auto}
.formsection .sectionlabel{font-size:32px;color:#273042;margin:0 0 15px;font-weight:700;text-align:center}
.formsection .sectionintro{font-size:17px;line-height:1.6;color:#5a5a6e;margin:0 0 45px;text-align:center;max-width:560px;margin-left:auto;margin-right:auto}
.formsection .contactform{background:#fff;padding:48px 42px;border-radius:10px;box-shadow:0 6px 24px #784aae1f 0 2px 6px #2730420f}
.formsection .inputgroup{margin-bottom:28px}
.formsection .inputlabel{display:block;font-size:15px;font-weight:600;color:#273042;margin-bottom:10px}
.formsection .textinput,.formsection .emailinput,.formsection .phoneinput,.formsection .messagearea{width:100%;padding:14px 16px;border:2px solid #e5e5ea;border-radius:8px;font-size:15px;color:#273042;transition:all 400ms cubic-bezier(0.25,0.46,0.45,0.94);box-sizing:border-box}
.formsection .textinput:focus,.formsection .emailinput:focus,.formsection .phoneinput:focus,.formsection .messagearea:focus{outline:none;border-color:#784AAE;box-shadow:0 0 0 4px #784aae1f}
.formsection .messagearea{min-height:140px;resize:vertical}
.formsection .privacyarea{margin-bottom:32px;display:flex;align-items:flex-start;gap:12px}
.formsection .privacycheckbox{width:20px;height:20px;margin-top:2px;cursor:pointer;flex-shrink:0}
.formsection .privacytext{font-size:14px;line-height:1.6;color:#5a5a6e;margin:0}
.formsection .privacytext a{color:#784AAE;text-decoration:none;font-weight:600;transition:color 400ms ease}
.formsection .privacytext a:hover{color:#5a3a8e}
.formsection .submitbtn{width:100%;padding:16px 32px;background:linear-gradient(135deg,#784AAE 0%,#5a3a8e 100%);color:#fff;border:none;border-radius:8px;font-size:17px;font-weight:600;cursor:pointer;transition:all 450ms cubic-bezier(0.25,0.46,0.45,0.94);box-shadow:0 6px 18px #784aae4d;position:relative;z-index:10}
.formsection .submitbtn:hover{transform:translateY(-3px);box-shadow:0 10px 28px #784aae66}
.formsection .submitbtn:active{transform:translateY(-1px)}
.hoursection{padding:75px 20px;background:#fff}
.hoursection .centercontent{max-width:1024px;margin:0 auto}
.hoursection .sectionlabel{font-size:32px;color:#273042;margin:0 0 45px;font-weight:700;text-align:center}
.hoursection .hourgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px}
.hoursection .hourcard{background:linear-gradient(135deg,#f9f9fc 0%,#fff 100%);padding:32px 28px;border-radius:10px;border-left:5px solid #784AAE;box-shadow:0 4px 16px #784aae1a}
.hoursection .daytitle{font-size:18px;font-weight:700;color:#273042;margin:0 0 10px}
.hoursection .timeinfo{font-size:16px;color:#5a5a6e;margin:0;line-height:1.6}
.channelssection{padding:75px 20px 85px;background:linear-gradient(165deg,#784aae0f 0%,#ffff 100%);position:relative}
.channelssection::after{content:'';position:absolute;bottom:-60px;left:-60px;width:280px;height:280px;background:radial-gradient(circle,#784aae1f 0%,transparent 70%);border-radius:50%;pointer-events:none}
.channelssection .centercontent{max-width:1024px;margin:0 auto;position:relative;z-index:2}
.channelssection .sectionlabel{font-size:32px;color:#273042;margin:0 0 15px;font-weight:700;text-align:center}
.channelssection .sectionintro{font-size:17px;line-height:1.6;color:#5a5a6e;margin:0 0 45px;text-align:center;max-width:580px;margin-left:auto;margin-right:auto}
.channelssection .channelgrid{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}
.channelssection .channelbtn{display:inline-flex;align-items:center;gap:12px;padding:16px 32px;background:#fff;color:#273042;text-decoration:none;border-radius:8px;font-size:16px;font-weight:600;border:2px solid #e5e5ea;transition:all 450ms cubic-bezier(0.25,0.46,0.45,0.94);box-shadow:0 4px 12px #27304214;position:relative;z-index:10}
.channelssection .channelbtn:hover{border-color:#784AAE;background:linear-gradient(135deg,#784AAE 0%,#5a3a8e 100%);color:#fff;transform:translateY(-4px);box-shadow:0 10px 24px #784aae40}
.channelssection .channelbtn svg{width:24px;height:24px;fill:currentColor}
@media (max-width: 768px) {
.introheader{padding:60px 20px 50px}
.introheader .maintitle{font-size:34px}
.introheader .subheading{font-size:18px}
.contactinfo,.formsection,.hoursection,.channelssection{padding:55px 20px}
.contactinfo .sectionlabel,.formsection .sectionlabel,.hoursection .sectionlabel,.channelssection .sectionlabel{font-size:28px}
.contactinfo .gridlayout{grid-template-columns:1fr}
.formsection .contactform{padding:32px 24px}
.hoursection .hourgrid{grid-template-columns:1fr}
.channelssection .channelgrid{flex-direction:column;align-items:stretch}
.channelssection .channelbtn{justify-content:center}
}
@media (max-width: 480px) {
.introheader .maintitle{font-size:28px}
.introheader .subheading{font-size:16px}
.contactinfo .sectionlabel,.formsection .sectionlabel,.hoursection .sectionlabel,.channelssection .sectionlabel{font-size:24px}
}
.programtitle{position:relative;overflow:hidden;background:linear-gradient(135deg,#784aae14 0%,#fffffff2 100%);padding:0;margin:0 auto 80px;max-width:1024px}
.programtitle .imagewrap{position:relative;height:420px;overflow:hidden}
.programtitle .imagewrap img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(1.05)}
.programtitle .imagewrap::after{content:'';position:absolute;bottom:0;left:0;right:0;height:140px;background:linear-gradient(to top,#ffffffeb,transparent)}
.programtitle .textzone{position:relative;max-width:880px;margin:-90px auto 0;padding:0 32px 48px;z-index:2}
.programtitle .textzone::before{content:'';position:absolute;top:0;left:32px;width:4px;height:60px;background:linear-gradient(to bottom,#784AAE,#784aae33)}
.programtitle h1{font-size:2.8rem;color:#273042;margin:0 0 18px;line-height:1.2;font-weight:700}
.programtitle .lead{font-size:1.15rem;color:#273042;line-height:1.7;opacity:.88;max-width:720px}
.structuremap{max-width:1024px;margin:0 auto 90px;padding:0 24px}
.structuremap h2{font-size:2.2rem;color:#273042;margin:0 0 52px;text-align:center;font-weight:700}
.structuremap .phasegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px}
.structuremap .phasecard{background:#FFF;border:2px solid #784aae26;border-radius:8px;padding:32px 28px;position:relative;transition:all 450ms cubic-bezier(0.4,0,0.2,1)}
.structuremap .phasecard::before{content:'';position:absolute;top:-2px;left:-2px;right:-2px;height:4px;background:linear-gradient(90deg,#784AAE,#784aae4d);opacity:0;transition:opacity 400ms ease}
.structuremap .phasecard:hover{transform:translateY(-6px);box-shadow:0 12px 32px #784aae2e;border-color:#784aae59}
.structuremap .phasecard:hover::before{opacity:1}
.structuremap .phasenum{display:inline-block;background:linear-gradient(135deg,#784AAE,#9b6fd4);color:#FFF;font-size:.95rem;font-weight:700;padding:6px 16px;border-radius:6px;margin-bottom:18px}
.structuremap .phasecard h3{font-size:1.4rem;color:#273042;margin:0 0 14px;font-weight:600}
.structuremap .phasecard p{font-size:1rem;color:#273042;line-height:1.65;margin:0 0 18px;opacity:.82}
.structuremap .phaselist{list-style:none;padding:0;margin:0}
.structuremap .phaselist li{font-size:.95rem;color:#273042;padding-left:24px;margin-bottom:10px;position:relative;opacity:.78}
.structuremap .phaselist li::before{content:'';position:absolute;left:0;top:8px;width:8px;height:8px;background:#784AAE;border-radius:50%}
.deliverymethod{background:linear-gradient(160deg,#784aae0f 0%,#2730420a 100%);padding:80px 24px;margin:0 0 90px}
.deliverymethod .contentbox{max-width:1024px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.deliverymethod .textside h2{font-size:2.2rem;color:#273042;margin:0 0 24px;font-weight:700}
.deliverymethod .textside p{font-size:1.05rem;color:#273042;line-height:1.75;margin:0 0 20px;opacity:.85}
.deliverymethod .imageside{position:relative}
.deliverymethod .imageside img{width:100%;height:460px;object-fit:cover;border-radius:8px;box-shadow:0 16px 48px #27304224}
.deliverymethod .imageside::after{content:'';position:absolute;bottom:-16px;right:-16px;width:180px;height:180px;background:linear-gradient(135deg,#784aae26,transparent);border-radius:8px;z-index:-1}
.toolsaccess{max-width:1024px;margin:0 auto 90px;padding:0 24px}
.toolsaccess h2{font-size:2.2rem;color:#273042;margin:0 0 16px;font-weight:700}
.toolsaccess .intro{font-size:1.1rem;color:#273042;line-height:1.7;margin:0 0 48px;opacity:.82;max-width:780px}
.toolsaccess .toolrow{display:flex;gap:32px;margin-bottom:28px;align-items:flex-start}
.toolsaccess .toolrow:nth-child(odd){flex-direction:row}
.toolsaccess .toolrow:nth-child(even){flex-direction:row-reverse}
.toolsaccess .toolicon{flex-shrink:0;width:64px;height:64px;background:linear-gradient(135deg,#784AAE,#9b6fd4);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px #784aae40}
.toolsaccess .toolicon svg{width:32px;height:32px;fill:#FFF}
.toolsaccess .tooltext{flex:1}
.toolsaccess .tooltext h3{font-size:1.3rem;color:#273042;margin:0 0 10px;font-weight:600}
.toolsaccess .tooltext p{font-size:1rem;color:#273042;line-height:1.65;margin:0;opacity:.8}
.enrollblock{background:#273042;padding:72px 24px;margin:0;position:relative;overflow:hidden}
.enrollblock::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#784aae1f 0%,transparent 70%);pointer-events:none}
.enrollblock .enrollcontent{max-width:720px;margin:0 auto;text-align:center;position:relative;z-index:2}
.enrollblock h2{font-size:2.4rem;color:#FFF;margin:0 0 20px;font-weight:700}
.enrollblock p{font-size:1.15rem;color:#FFF;line-height:1.7;margin:0 0 36px;opacity:.92}
.enrollblock .ctabutton{display:inline-block;background:linear-gradient(135deg,#784AAE,#9b6fd4);color:#FFF;font-size:1.1rem;font-weight:600;padding:16px 48px;border-radius:8px;text-decoration:none;transition:all 500ms cubic-bezier(0.34,1.56,0.64,1);box-shadow:0 8px 24px #784aae59;position:relative;z-index:10}
.enrollblock .ctabutton:hover{transform:scale(1.08) translateY(-3px);box-shadow:0 14px 36px #784aae73}
@media (max-width: 768px) {
.programtitle .imagewrap{height:300px}
.programtitle .textzone{margin-top:-60px;padding:0 20px 36px}
.programtitle h1{font-size:2rem}
.programtitle .lead{font-size:1.05rem}
.structuremap h2,.deliverymethod .textside h2,.toolsaccess h2,.enrollblock h2{font-size:1.8rem}
.structuremap .phasegrid{grid-template-columns:1fr}
.deliverymethod .contentbox{grid-template-columns:1fr;gap:40px}
.deliverymethod .imageside img{height:320px}
.toolsaccess .toolrow,.toolsaccess .toolrow:nth-child(even){flex-direction:column;align-items:center;text-align:center}
.enrollblock h2{font-size:1.9rem}
.enrollblock .ctabutton{padding:14px 36px;font-size:1rem}
}
@media (max-width: 480px) {
.programtitle h1{font-size:1.7rem}
.structuremap h2,.deliverymethod .textside h2,.toolsaccess h2{font-size:1.5rem}
.enrollblock h2{font-size:1.6rem}
}
.successwrap{max-width:1024px;margin:0 auto;padding:0}
.heroconfirm{position:relative;background:linear-gradient(135deg,#f8f5fc 0%,#fff 50%,#f0ebf7 100%);padding:80px 24px 100px;overflow:hidden}
.heroconfirm::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 30%,#784aae14 0%,transparent 50%),radial-gradient(circle at 80% 70%,#784aae0f 0%,transparent 50%);pointer-events:none}
.heroconfirm::after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent 0%,#784aae 50%,transparent 100%)}
.confirmcontent{position:relative;z-index:2;text-align:center;max-width:680px;margin:0 auto}
.checkmark{width:120px;height:120px;margin:0 auto 32px;position:relative;animation:scalepulse .6s cubic-bezier(0.34,1.56,0.64,1)}
@keyframes scalepulse {
0%{transform:scale(0) rotate(-45deg);opacity:0}
50%{transform:scale(1.1) rotate(0deg)}
100%{transform:scale(1) rotate(0deg);opacity:1}
}
.checkmark svg{width:100%;height:100%;filter:drop-shadow(0 8px 24px #784aae40)}
.confirmcontent .pretitle{font-size:15px;color:#784aae;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;margin:0 0 16px;opacity:0;animation:slideup .5s cubic-bezier(0.34,1.56,0.64,1) .3s forwards}
@keyframes slideup {
0%{opacity:0;transform:translateY(20px)}
100%{opacity:1;transform:translateY(0)}
}
.confirmcontent h1{font-size:48px;line-height:1.2;color:#273042;margin:0 0 24px;font-weight:700;opacity:0;animation:slideup .5s cubic-bezier(0.34,1.56,0.64,1) .4s forwards}
.confirmcontent .messagetext{font-size:18px;line-height:1.7;color:#5a6778;margin:0 0 40px;opacity:0;animation:slideup .5s cubic-bezier(0.34,1.56,0.64,1) .5s forwards}
.detailsbox{background:#ffffffb3;border:2px solid #784aae26;padding:28px 32px;text-align:left;margin:0 0 40px;position:relative;opacity:0;animation:slideup .5s cubic-bezier(0.34,1.56,0.64,1) .6s forwards}
.detailsbox::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#784aae 0%,#784aae4d 100%)}
.detailsbox h3{font-size:16px;color:#784aae;margin:0 0 16px;font-weight:600;text-transform:uppercase;letter-spacing:.8px}
.detailsbox p{font-size:16px;line-height:1.6;color:#273042;margin:0}
.detailsbox p + p{margin-top:12px}
.actionbuttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;opacity:0;animation:slideup .5s cubic-bezier(0.34,1.56,0.64,1) .7s forwards}
.primarybtn{display:inline-block;background:#784aae;color:#fff;padding:16px 40px;text-decoration:none;font-weight:600;font-size:16px;transition:all .4s cubic-bezier(0.34,1.56,0.64,1);position:relative;overflow:hidden;z-index:10}
.primarybtn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:#273042;transition:left .4s cubic-bezier(0.34,1.56,0.64,1);z-index:-1}
.primarybtn:hover::before{left:0}
.primarybtn:hover{transform:translateY(-2px);box-shadow:0 12px 28px #784aae59}
.secondarybtn{display:inline-block;background:transparent;color:#784aae;padding:16px 40px;text-decoration:none;font-weight:600;font-size:16px;border:2px solid #784aae;transition:all .4s cubic-bezier(0.34,1.56,0.64,1);position:relative;z-index:10}
.secondarybtn:hover{background:#784aae;color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #784aae40}
.nextstepszone{background:#fff;padding:80px 24px;position:relative}
.nextstepszone::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:90%;height:1px;background:linear-gradient(90deg,transparent 0%,#784aae4d 50%,transparent 100%)}
.stepscontainer{max-width:920px;margin:0 auto}
.stepsgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:32px;margin-top:48px}
.stepcard{background:linear-gradient(135deg,#f8f5fc 0%,#fff 100%);padding:32px 28px;position:relative;transition:all .5s cubic-bezier(0.34,1.56,0.64,1);border:1px solid transparent}
.stepcard::before{content:'';position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;background:linear-gradient(135deg,#784aae,#273042);opacity:0;transition:opacity .5s cubic-bezier(0.34,1.56,0.64,1);z-index:-1}
.stepcard:hover::before{opacity:.15}
.stepcard:hover{transform:translateY(-8px);box-shadow:0 16px 40px #784aae33}
.stepnumber{width:56px;height:56px;background:#784aae;color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin:0 0 20px;position:relative;transition:all .5s cubic-bezier(0.34,1.56,0.64,1)}
.stepcard:hover .stepnumber{background:#273042;transform:rotate(360deg)}
.stepcard h3{font-size:20px;color:#273042;margin:0 0 12px;font-weight:600;line-height:1.3}
.stepcard p{font-size:15px;line-height:1.6;color:#5a6778;margin:0}
.sectionheader{text-align:center;position:relative}
.sectionheader h2{font-size:36px;color:#273042;margin:0 0 16px;font-weight:700;line-height:1.2}
.sectionheader h2::after{content:'';display:block;width:80px;height:4px;background:#784aae;margin:20px auto 0}
.sectionheader .subtitle{font-size:17px;color:#5a6778;line-height:1.6;max-width:620px;margin:0 auto}
@media (max-width: 768px) {
.heroconfirm{padding:60px 20px 80px}
.confirmcontent h1{font-size:36px}
.checkmark{width:90px;height:90px}
.confirmcontent .messagetext{font-size:16px}
.detailsbox{padding:24px 20px}
.actionbuttons{flex-direction:column;gap:12px}
.primarybtn,.secondarybtn{width:100%;text-align:center}
.nextstepszone{padding:60px 20px}
.sectionheader h2{font-size:28px}
.stepsgrid{grid-template-columns:1fr;gap:24px}
}
@media (min-width: 769px) and (max-width: 1024px) {
.confirmcontent h1{font-size:42px}
.stepsgrid{grid-template-columns:repeat(2,1fr)}
}