/* Source: site-header.css */
.menu-toggle{display:none;border:1px solid rgba(98,66,139,.18);border-radius:12px;background:#fff;color:#352346;padding:10px 13px;font:inherit;font-size:.82rem;font-weight:800;cursor:pointer}
.navlinks{display:flex!important;align-items:center;gap:22px}
.navlinks>a,.nav-group>button{border:0;background:none;color:#352346;padding:11px 2px;font:inherit;font-size:.84rem;font-weight:750;white-space:nowrap;cursor:pointer}
.navlinks>a:hover,.navlinks>a:focus-visible,.nav-group>button:hover,.nav-group>button:focus-visible{color:#62428b}
.nav-group{position:relative}
.nav-group>button{display:flex;align-items:center;gap:6px}
.nav-group>button:after{content:"⌄";font-size:.82rem;transition:transform .2s ease}
.nav-group.open>button:after{transform:rotate(180deg)}
.dropdown{position:absolute;top:calc(100% + 9px);left:-18px;z-index:30;display:none;min-width:290px;padding:10px;background:#fff;border:1px solid rgba(98,66,139,.14);border-radius:16px;box-shadow:0 20px 46px rgba(53,35,70,.16)}
.nav-group.open .dropdown{display:grid}
.dropdown a{display:block;border-radius:10px;padding:11px 12px;color:#352346;font-size:.78rem;font-weight:800;line-height:1.3}
.dropdown a:hover,.dropdown a:focus-visible{background:#f1edf9;color:#62428b}
.dropdown small{display:block;margin-top:3px;color:#746c82;font-size:.66rem;font-weight:500;line-height:1.45}
.header-user{display:flex;align-items:center;gap:9px;padding-left:16px;border-left:1px solid rgba(98,66,139,.14);white-space:nowrap}.header-welcome{color:#62428b;font-size:.72rem;font-weight:850}.header-welcome:hover{color:#352346}.header-signout{border:1px solid rgba(98,66,139,.2);border-radius:999px;background:#fff;color:#352346;padding:8px 11px;font:inherit;font-size:.68rem;font-weight:850;cursor:pointer}.header-signout:hover{border-color:#62428b;color:#62428b;background:#faf8f5}
.header-signin{display:inline-flex!important;align-items:center;justify-content:center;border:1px solid rgba(98,66,139,.28)!important;border-radius:999px;background:#fff!important;color:#62428b!important;padding:9px 16px!important;font-size:.74rem!important;font-weight:900!important;white-space:nowrap}.header-signin:hover,.header-signin:focus-visible{border-color:#62428b!important;background:#f4eef8!important;color:#352346!important}
.admin-access-link{display:inline-flex!important;align-items:center;gap:7px;border-radius:999px;background:#eee9fb;color:#62428b!important;padding:9px 13px!important;font-size:.72rem!important;font-weight:900!important;white-space:nowrap}.admin-access-link:hover{background:#62428b;color:#fff!important}.admin-request-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#d92d20;color:#fff;font-size:.64rem;line-height:1;font-weight:950;box-shadow:0 0 0 3px rgba(217,45,32,.12)}.admin-request-badge[hidden]{display:none!important}.admin-access-link.has-pending{box-shadow:0 0 0 2px rgba(217,45,32,.14)}
@media(max-width:1100px){.navlinks{gap:12px}.navlinks>a,.nav-group>button{font-size:.8rem}.header-cta,.topbar>.nav>.btn{padding:11px 15px;font-size:.8rem}}
/* Desktop header: reserve space for the logo and account controls. */
.topbar .nav{width:min(1680px,calc(100% - clamp(40px,5vw,120px)));gap:clamp(12px,1.1vw,20px)}
.topbar .brand{flex:0 0 auto;min-width:max-content}
.topbar .navlinks{flex:0 1 auto;min-width:0;gap:clamp(10px,.9vw,18px)}
.topbar .navlinks>a,.topbar .nav-group>button{font-size:.78rem}
.topbar .header-user{flex:0 0 auto}
.topbar .nav>.btn{flex:0 0 auto;width:auto;min-height:44px;padding:10px 17px;border-radius:999px;white-space:nowrap;line-height:1.2;text-align:center}
@media(max-width:1500px){
 .menu-toggle{display:inline-flex;margin-left:auto}
 .navlinks{position:absolute;top:100%;left:0;right:0;display:none!important;max-height:calc(100vh - 72px);overflow:auto;padding:12px 20px 22px;background:#fff;border-bottom:1px solid rgba(98,66,139,.14);box-shadow:0 18px 32px rgba(53,35,70,.10);flex-direction:column;align-items:stretch;gap:2px}
 .navlinks.open{display:flex!important}
 .navlinks>a,.nav-group>button{width:100%;padding:12px;text-align:left}
 .nav-group>button{justify-content:space-between}
 .dropdown{position:static;min-width:0;margin:0 8px 8px;padding:5px;background:#faf8f5;border:0;box-shadow:none}
 .nav-group:hover .dropdown{display:none}
 .nav-group.open .dropdown{display:grid}
 .header-user{margin:8px 0 0;padding:13px 12px 0;border-left:0;border-top:1px solid rgba(98,66,139,.14);justify-content:space-between}.header-welcome{font-size:.78rem}.header-signout{padding:8px 13px}
 .header-signin{margin-top:8px;width:100%;padding:11px 14px!important}
 .topbar>.nav>.btn,.header-cta{display:none!important}
}
@media(max-width:480px){.brand-copy strong{font-size:.74rem!important}.brand-copy small{font-size:.46rem!important}.brand img{width:31px!important;height:31px!important}.menu-toggle{padding:8px 10px}}
.skip-link{position:fixed;top:-100px;left:12px;z-index:2000;background:#fff;color:#352346;padding:12px}.skip-link:focus{top:12px}

/* Click-controlled menus; focus and hover alone never reveal a dropdown. */
.nav-group .dropdown[hidden]{display:none!important}
.dropdown a{display:flex;flex-direction:column;justify-content:center;min-height:44px;box-sizing:border-box;font-size:.85rem;white-space:normal;overflow-wrap:anywhere;text-decoration:none}
.dropdown-label{display:block;padding:12px 12px 6px;font-size:.65rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;color:#79698b}
.topbar .dropdown{max-height:min(70vh,560px);overflow-y:auto;overscroll-behavior:contain}
@media(max-width:1500px){.topbar .dropdown{max-height:none;overflow:visible}.dropdown a{padding:14px 16px;min-height:48px}.nav-group>button{min-height:48px}}
/* Keep desktop account controls together; narrower screens use the existing menu. */
@media(min-width:1501px){body .topbar .navlinks{flex-wrap:nowrap;min-width:0;gap:clamp(10px,1vw,18px)}body .topbar .header-user{flex-wrap:nowrap;white-space:nowrap}body .topbar .nav{flex-wrap:nowrap}body.site-makeover .topbar .nav{width:min(1440px,calc(100% - 64px));max-width:1440px}body .header-welcome{max-width:170px;overflow:hidden;text-overflow:ellipsis}}

.renewal-policy{margin:20px auto;padding:20px;border:1px solid #e5ddeb;border-radius:16px;background:#f4eef8;color:#49334f}.renewal-policy p{line-height:1.7;margin:10px 0}.renewal-policy h2{margin:0 0 12px}.renewal-note{font-size:12px;line-height:1.6;color:#65556d;margin:8px 0}

/* Current page remains visible in both the desktop and compact navigation. */
body .topbar .navlinks a[aria-current="page"]{background:#f4eef8;color:#352346;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;border-radius:10px}
body .topbar .nav-group.contains-current-page>button{color:#352346;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
body .topbar .dropdown a[aria-current="page"]{box-shadow:inset 3px 0 #352346}

/* Source: mobile-optimization.css */
/* Intellecta shared mobile layout — version 124 */
*,*::before,*::after{box-sizing:border-box}
html{max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:88px}
body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}

@media (max-width:900px){
  :root{--mobile-gutter:clamp(16px,4.5vw,28px)}
  body{min-width:0}
  main,section,article,aside,header,footer,nav,div{min-width:0}
  .container,.shell,.page-shell,.account-shell,.admin-shell,.checkout-shell,.dashboard-shell,.section-inner,.footer-inner,.site-footer-inner{width:100%!important;max-width:100%!important;padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  section{scroll-margin-top:82px}

  /* Comfortable, consistent touch targets. */
  button,.button,.btn,[class*="-button"],[class*="-btn"],a.primary,a.secondary,input:not([type="checkbox"]):not([type="radio"]),select,textarea{min-height:44px}
  button,.button,.btn,[class*="-button"],[class*="-btn"]{max-width:100%}
  input,select,textarea{width:100%;max-width:100%;font-size:16px}
  textarea{min-height:112px;resize:vertical}
  label{line-height:1.35}

  /* Header and mobile navigation. */
  .site-header,.topbar{position:sticky!important;top:0;z-index:1000}
  .navbar,.nav-inner,.header-inner{min-height:68px;padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  .brand,.logo{min-width:0;max-width:calc(100% - 58px)}
  .brand img,.logo img{max-height:48px;width:auto}
  .menu-toggle{display:inline-grid!important;place-items:center;min-width:44px;min-height:44px}
  .navlinks{max-height:calc(100dvh - 68px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important}
  .navlinks>a,.nav-group>button,.header-welcome,.header-signout,.admin-access-link{width:100%;min-height:48px;justify-content:flex-start!important;text-align:left}
  .nav-group{width:100%}
  .nav-group .dropdown{position:static!important;width:100%!important;min-width:0!important;max-width:none!important;box-shadow:none!important;margin:0!important}
  .header-user{width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
  .header-signout{width:auto!important;white-space:nowrap}
  .header-cta{width:100%;justify-content:center!important}

  /* Forms, popups and dialogs. */
  form,.form-grid,.form-row,.field-row,.fields,.contact-grid,.booking-form-grid,.profile-form-grid{min-width:0}
  .form-grid,.field-row,.fields,.contact-grid,.booking-form-grid,.profile-form-grid{grid-template-columns:1fr!important}
  dialog,.modal,.modal-card,.dialog-card,.popup,.popup-card,[class*="modal-content"],[class*="dialog-content"]{max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;margin:auto!important;overflow:auto!important}
  dialog[open]{inset:12px!important;width:auto!important}
  .modal,.popup,[class*="modal-backdrop"]{padding:12px!important;align-items:center!important}
  .modal-actions,.dialog-actions,.form-actions,.button-row,.action-row,.actions{display:flex;flex-wrap:wrap;gap:10px}
  .modal-actions>* ,.dialog-actions>* ,.form-actions>*{flex:1 1 180px}

  /* Student dashboard and account areas. */
  .account-layout,.dashboard-layout,.dashboard-grid,.overview-grid,.student-overview,.student-summary-grid,.quick-actions,.service-grid,.purchase-grid,.booking-grid,.records-grid,.pathway-grid,.revision-grid,.achievement-grid,.badge-grid{grid-template-columns:1fr!important}
  .account-sidebar,.dashboard-sidebar{position:static!important;width:100%!important}
  .account-nav,.dashboard-nav,.admin-tabs{display:flex!important;overflow-x:auto;scroll-snap-type:x proximity;gap:8px;padding-bottom:8px;-webkit-overflow-scrolling:touch}
  .account-nav a,.dashboard-nav a,.admin-tabs button,.admin-tab{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start}
  .account-panel,.dashboard-panel,.overview-card,.service-card,.purchase-card,.booking-card,.pathway-card,.revision-card,.achievement-card,.badge-card{padding:clamp(16px,4vw,24px)!important;border-radius:16px!important}
  .dashboard-heading,.panel-heading,.section-heading,.card-heading{align-items:flex-start!important;flex-wrap:wrap;gap:10px}
  .dashboard-heading h1,.page-title,h1{overflow-wrap:anywhere}
  .cancellation-form,.cancellation-request-form{grid-template-columns:1fr!important}
  .class-card,.booking-card,.purchase-record,.history-record{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}

  /* Access Manager: priority totals remain first and usable. */
  .admin-shell{padding-top:20px!important}
  .admin-header,.admin-toolbar,.admin-section-header,.manager-heading{align-items:flex-start!important;flex-wrap:wrap!important;gap:12px!important}
  .admin-overview,.admin-stats,.manager-stats,.schedule-stats,.summary-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .admin-grid,.manager-grid,.request-grid,.availability-grid,.promo-grid,.user-grid,.class-grid,.history-grid,.cancellation-grid{grid-template-columns:1fr!important}
  .admin-card,.request-card,.availability-card,.promo-card,.user-card,.class-card,.history-card,.cancellation-card{padding:16px!important}
  .admin-card-actions,.request-actions,.class-actions,.cancellation-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .admin-card-actions>*,.request-actions>*,.class-actions>*,.cancellation-actions>*{flex:1 1 160px}
  .google-calendar-card,.calendar-connection{order:99}

  /* Checkout, services and booking. */
  .checkout-layout,.checkout-grid,.payment-layout,.order-layout,.catalogue-grid,.services-grid,.plans-grid,.pricing-grid,.booking-layout,.calendar-layout{grid-template-columns:1fr!important}
  .order-summary,.checkout-summary,.sticky-summary{position:static!important;top:auto!important;width:100%!important}
  .checkout-card,.payment-card,.order-summary,.service-option,.pricing-card,.booking-panel,.calendar-panel{padding:clamp(16px,4vw,24px)!important;border-radius:16px!important}
  .calendar-toolbar,.calendar-header,.booking-toolbar{align-items:center!important;flex-wrap:wrap!important;gap:8px!important}
  .calendar-grid,.time-slots,.slot-grid{min-width:0!important}
  .time-slot,.slot-button{min-height:44px}
  .document-links,.checkout-actions,.booking-actions{display:grid!important;grid-template-columns:1fr!important}

  /* Home page, resources and simulations. */
  .hero,.hero-inner,.hero-grid,.intro-grid,.about-grid,.feature-grid,.service-paths,.simulation-grid,.subject-grid,.resource-grid,.footer-grid{grid-template-columns:1fr!important}
  .hero{min-height:auto!important;padding-top:clamp(42px,9vw,76px)!important;padding-bottom:clamp(42px,9vw,76px)!important}
  .hero-copy,.hero-content{max-width:100%!important}
  .hero-actions,.cta-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
  .hero-actions>*,.cta-actions>*{flex:1 1 190px;text-align:center;justify-content:center}
  .simulation-card,.subject-card,.resource-card,.feature-card,.service-card{padding:clamp(16px,4vw,24px)!important}
  .simulation-workspace,.lab-layout,.builder-layout,.practice-layout,.challenge-layout,.tool-layout{grid-template-columns:1fr!important}
  .simulation-controls,.lab-controls,.challenge-controls{position:static!important;width:100%!important}
  .simulation-toolbar,.challenge-toolbar,.practice-toolbar{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .simulation-toolbar>*,.challenge-toolbar>*,.practice-toolbar>*{flex:1 1 135px}
  .simulation-modal,.lab-modal{padding:8px!important}
  .simulation-modal .modal-card,.lab-modal .modal-card{width:100%!important;max-width:100%!important;border-radius:16px!important}

  /* Tools and data tables stay readable without widening the page. */
  .table-scroll,.table-wrap,.data-table-wrap,.periodic-table-wrap,[class*="table-container"]{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
  table{max-width:none}
  .converter-grid,.tools-grid,.periodic-layout,.scale-layout,.balance-layout{grid-template-columns:1fr!important}
  .tool-card,.converter-card,.periodic-panel{padding:16px!important}
  .periodic-table{min-width:760px}
  .isotope-notation{white-space:nowrap}

  footer{padding-bottom:calc(24px + env(safe-area-inset-bottom))}
}

@media (max-width:600px){
  :root{--mobile-gutter:16px}
  html{scroll-padding-top:74px}
  h1{font-size:clamp(30px,10vw,44px)!important;line-height:1.08!important}
  h2{font-size:clamp(24px,7vw,34px)!important;line-height:1.16!important}
  h3{line-height:1.25}
  p,li{overflow-wrap:anywhere}
  .admin-overview,.admin-stats,.manager-stats,.schedule-stats,.summary-cards{grid-template-columns:1fr!important}
  .stat-card,.summary-card{min-height:0!important;padding:15px!important}
  .header-user{grid-template-columns:1fr}
  .header-signout{width:100%!important}
  .hero-actions,.cta-actions,.modal-actions,.dialog-actions,.form-actions,.button-row,.action-row,.actions{display:grid!important;grid-template-columns:1fr!important;width:100%}
  .hero-actions>*,.cta-actions>*,.modal-actions>*,.dialog-actions>*,.form-actions>*{width:100%!important}
  .calendar-grid{gap:4px!important}
  .calendar-day,.calendar-cell{min-width:0!important;padding:6px 2px!important;font-size:12px!important}
  .time-slots,.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .account-panel,.dashboard-panel,.admin-card,.checkout-card,.payment-card,.order-summary{border-radius:14px!important}
}

@media (max-width:380px){
  :root{--mobile-gutter:12px}
  .time-slots,.slot-grid{grid-template-columns:1fr!important}
  .navbar,.nav-inner,.header-inner{padding-left:12px!important;padding-right:12px!important}
}

@media (max-height:560px) and (orientation:landscape){
  dialog,.modal-card,.dialog-card,.popup-card,[class*="modal-content"]{max-height:calc(100dvh - 12px)!important}
  .modal,.popup,[class*="modal-backdrop"]{align-items:flex-start!important;padding:6px!important}
}

/* Compact menu items occupy their natural height, in DOM order. */
@media(max-width:1500px){body .topbar .navlinks{height:auto;min-height:0;gap:4px;justify-content:flex-start;align-content:flex-start}body .topbar .navlinks>*{flex:0 0 auto;order:0}body .topbar .navlinks>a,body .topbar .nav-group>button{min-height:48px;margin:0;padding:12px;text-align:left}body .topbar .navlinks>.header-user{margin-top:10px;padding-top:14px}}

/* Source: layout-fixes.css */
/* Shared layout corrections for every page. */
.topbar .nav{display:flex;flex-wrap:wrap;align-items:center;gap:16px;max-width:1440px}
.topbar .brand,.topbar .nav>.btn{flex:0 0 auto}
.topbar .navlinks{flex:1 1 0;min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:8px 14px}
.topbar .header-user{min-width:0;max-width:100%;flex:0 1 auto;flex-wrap:wrap;white-space:normal}
.topbar .header-welcome{overflow-wrap:anywhere;max-width:220px}
.topbar .nav>.btn[hidden]{display:none!important}
.topbar .dropdown{max-width:calc(100vw - 40px)}
.topbar .nav-group:last-of-type .dropdown{left:auto;right:0}
.sitemap{background:#f4f0fa;border-top:1px solid var(--line);padding:48px 0}
.sitemap h2{font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:24px}
.sitemap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.sitemap h3{font-size:1.1rem;margin-bottom:14px}.sitemap ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.sitemap a{display:inline-block;color:var(--purple);font-size:.9rem;font-weight:600;overflow-wrap:anywhere}.sitemap a:hover{text-decoration:underline}
.cards>*,.services>*,.program-grid>*,.plan-grid>*,.vsl-intro>*,.form-wrap>*,.footer-grid>*{min-width:0}
.contact-actions,.doc-actions,.footer-links{flex-wrap:wrap}
.subject>summary{flex-wrap:wrap;gap:12px}.subject>summary>span:nth-child(2){min-width:0;flex:1 1 200px}
@media(max-width:1500px){.topbar .navlinks{flex:none;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start}.topbar .nav>.btn{display:none!important}.topbar .header-user{flex:none;width:100%;white-space:normal}.topbar .header-welcome{max-width:none}.topbar .dropdown{max-width:100%}}
@media(max-width:900px){.sitemap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vsl-intro,.vsl-two,.sim-grid,.plan-grid,.package-areas,.paid-package-layout{grid-template-columns:1fr!important}.subject>summary .subject-status{margin-left:0}.header-user .header-welcome{width:auto}.hero-carousel-controls button{min-width:32px}.hero-carousel-dots button{min-width:44px!important;min-height:44px!important;width:44px!important;height:44px!important;padding:0!important}}
@media(max-width:480px){.sitemap-grid{grid-template-columns:1fr}.sitemap{padding:36px 0}.topbar .brand{min-width:0}.topbar .header-user{display:flex!important;flex-direction:column;align-items:stretch}.topbar .nav{gap:10px}}

/* Interface refresh: consistent spacing, readable forms and device layouts. */
:root{--shadow:0 12px 36px rgba(53,35,70,.08)}
body{line-height:1.65}main{isolation:isolate}
.topbar{background:rgba(255,255,255,.97)}.topbar .nav{padding-top:14px;padding-bottom:14px}
input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #a38bdd;outline-offset:3px}
.btn{min-height:46px;line-height:1.35}.btn:disabled{cursor:not-allowed}
.card,.service-card,.document-card,.plan{box-shadow:0 8px 28px rgba(53,35,70,.05)}
.directory-card{transition:transform .2s,box-shadow .2s}.directory-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(53,35,70,.1)}
.hero-program .eyebrow{max-width:520px;line-height:1.7}.hero-program h1{font-size:clamp(2.5rem,4vw,4.1rem)}
.account-page{background:#faf8f5!important}.account-page .shell{gap:32px!important}.account-page .intro{background:linear-gradient(145deg,#352346,#301955);border-radius:28px;padding:36px!important;position:sticky;top:110px}.account-page .card{min-height:0}.account-page .account-types{grid-template-columns:1fr}.account-page .account-type{min-height:76px;align-items:center}.account-page .account-type small{font-size:.8rem}.account-page .account-type strong{font-size:.88rem}.account-page .card form{box-shadow:none;padding:0}.otp-countdown-status{margin:0;color:#655d76;font-size:.85rem;line-height:1.6}.text-button:disabled{opacity:.65;cursor:wait}
.sitemap a{line-height:1.55}.sitemap ul{gap:12px}.sitemap h3{line-height:1.4}
@media(max-width:1100px){.cards,.services,.deliverables{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{grid-template-columns:1fr}.account-page .shell{grid-template-columns:1fr!important;max-width:800px!important}.account-page .intro{position:static}.account-page .intro h1{max-width:650px}.guide{grid-template-columns:1fr}.mock-pdf{display:none}.form-wrap{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.account-page{padding:28px 0!important}.account-page .shell{padding-inline:20px!important}.account-page .intro{padding:28px!important}.account-page .card{padding:24px!important}.account-page .profile-grid{grid-template-columns:1fr}.sitemap a{min-height:40px;display:inline-flex;align-items:center}.subject-status{white-space:normal}.sim-controls,.data-box{min-width:0}.sim-tab{white-space:normal}.plan-grid{gap:16px}.plan{padding:24px}.hero-carousel-controls{gap:10px;flex-wrap:wrap}.hero-carousel-pause{margin-left:auto}}
@media(max-width:600px){.cards,.services,.deliverables,.steps,.program-grid,.testimonial-grid{grid-template-columns:1fr}.account-page .shell{padding-inline:14px!important}.account-page .intro{padding:24px!important;border-radius:20px}.account-page .card{padding:20px!important;border-radius:20px}.account-page .subject-options{grid-template-columns:1fr}.account-page .subject-options label{min-height:44px}.account-page .intro h1{font-size:2rem!important}.hero-program .eyebrow{letter-spacing:.12em;font-size:.72rem}.hero-program h1{font-size:2.5rem!important}.hero-program .lead{font-size:1rem}.service-meta{grid-template-columns:1fr}.highlight{padding:26px}.sitemap-grid{gap:24px}.footer-links a{min-height:40px;display:inline-flex;align-items:center}.otp{letter-spacing:.25em}.account-page .account-type em{font-size:.62rem}.account-page .check input{min-height:0}.hero-feature-card .hero-side-title h2{font-size:1.65rem!important}}
@media(prefers-reduced-motion:reduce){.directory-card{transition:none}.directory-card:hover{transform:none}}

/* Audit 154: keep fixed controls, dialogs and narrow-screen content distinct. */
.floating-plan-cart{bottom:84px!important;max-width:calc(100vw - 40px);min-width:0;box-sizing:border-box}
.chem-celebration,.badge-celebration{bottom:84px!important;max-width:calc(100vw - 28px);overflow-wrap:anywhere}
.access-modal{z-index:1200;overflow-y:auto;overscroll-behavior:contain}
.access-modal[hidden]{display:none!important}
.access-dialog{max-height:calc(100dvh - 40px);overflow-y:auto;box-sizing:border-box}
.notification-panel{box-sizing:border-box}
.new-chem-grid>*,.new-chem-metrics>*,.parent-panel>*,.record-panel>*,.package-heading>*,.chem-mode-row>*{min-width:0}
.configuration-output,.formula-line,.equation-view,.record-panel,.parent-panel{overflow-wrap:anywhere}
@media(max-width:700px){.package-heading{flex-wrap:wrap}.package-count{text-align:left}.record-facts{grid-template-columns:minmax(0,1fr)}.parent-panel{padding:18px}.user-row>summary{gap:10px;flex-wrap:wrap}.user-row-identity{flex-basis:60%}.user-pager{flex-wrap:wrap;gap:10px}.agenda-class>summary{gap:10px;flex-wrap:wrap}.agenda-main{flex-basis:calc(100% - 110px)}.agenda-extra{padding:14px}.chem-mode-row{flex-wrap:wrap}.chem-coach span{min-width:0;flex-basis:100%}}
@media(max-width:480px){.topbar .nav .brand-copy strong{font-size:.88rem!important}.topbar .nav .brand-copy small{font-size:.6rem!important}.topbar .nav .brand img{width:34px!important;height:34px!important}.topbar .nav .brand{gap:8px}.floating-plan-cart{right:14px!important;max-width:calc(100vw - 28px)}}

.converter-footer,footer{padding-bottom:max(88px,calc(24px + env(safe-area-inset-bottom)))}

.user-row-identity small,.user-detail-grid b,.user-detail-grid small,.agenda-main strong,.linked-student-card p,.parent-registration-card p{overflow-wrap:anywhere}

/* Account controls must not collapse to a clipped welcome fragment. */
@media(min-width:1501px){body.site-makeover .topbar .nav{width:calc(100% - 64px);max-width:1800px}body .topbar .header-user{flex:0 0 auto;min-width:190px}body .topbar .header-welcome{flex:0 0 auto;max-width:170px;min-width:80px}body .topbar .nav>.header-cta,body .topbar .nav>a.btn[href*="#book"]{display:none!important}}
.student-teacher-pilot{grid-column:1/-1}.student-teacher-pilot p{max-width:78ch;line-height:1.7}.student-teacher-pilot .btn{white-space:normal}

.request-actions .teacher-assignment-option{display:flex;align-items:flex-start;gap:10px;flex:1 1 100%;line-height:1.6}.request-actions .teacher-assignment-option input{width:18px;height:18px;min-width:18px;flex:0 0 18px;margin:4px 0 0;padding:0;accent-color:#62428b}

/* Organise administration around one selected task at a time. */
body .admin-workspace[data-admin-organized]{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;align-items:start}
body .admin-task-nav{display:flex;flex-direction:column;align-items:stretch;gap:20px;margin:0;position:sticky;top:110px;padding:18px;background:#fff;border:1px solid #e5ddeb;border-radius:18px}
body .admin-task-nav .admin-nav-group{display:grid;gap:6px}body .admin-nav-group>span{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:#79648b;padding:4px 8px}body .admin-task-nav button{width:100%;margin:0;padding:12px;text-align:left;white-space:normal;border-radius:10px;line-height:1.5;font:inherit;font-size:.84rem;border:1px solid transparent;background:transparent;color:#352346;min-height:44px}body .admin-task-nav button.active{background:#352346;color:#fff}body .admin-task-nav button:hover{border-color:#d8cbe3}body .admin-more-tools summary{cursor:pointer;font-size:.9rem;font-weight:700;padding:8px;color:#62428b}body .admin-section-content{min-width:0}body .admin-current-section{padding:0 0 20px;margin-bottom:22px;border-bottom:1px solid #e5ddeb}body .admin-current-section>span{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:#79648b;font-weight:800}body .admin-current-section h2{font-size:1.8rem;margin:6px 0 10px;line-height:1.3}body .admin-current-section p{margin:0;line-height:1.7;max-width:85ch;color:#65576e}body .admin-section-content>[hidden]{display:none!important}body .admin-section-content .access-tier-guide summary{cursor:pointer;font-weight:700;padding:12px}body .admin-section-content .access-tier-guide:not([open])>*:not(summary){display:none}body .admin-section-content #feedback-manager{padding:24px;border:1px solid #e5ddeb;border-radius:18px;background:#fff}.tp-finance-tools{margin-top:18px;border-top:1px solid #e5ddeb;padding-top:16px}.tp-finance-tools summary{font-weight:700;cursor:pointer;line-height:1.6}
@media(max-width:1050px){body .admin-workspace[data-admin-organized]{grid-template-columns:1fr}body .admin-task-nav{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}body .admin-task-nav .admin-more-tools{grid-column:1/-1}}
@media(max-width:600px){body .admin-task-nav{grid-template-columns:1fr;padding:14px}body .admin-task-nav .admin-nav-group{gap:4px}body .admin-workspace[data-admin-organized]{gap:20px}body .admin-current-section h2{font-size:1.5rem}}
body .admin-section-content .access-tier-guide summary{grid-column:1/-1}

/* Access Manager: status-driven task queue. */
.admin-task-board{min-width:0}.admin-task-filters{display:grid;grid-template-columns:1fr 1fr 2fr;gap:16px;margin:24px 0}.admin-task-filters label{display:grid;gap:7px;font-weight:600}.admin-task-filters input,.admin-task-filters select{width:100%;min-width:0;padding:12px;border:1px solid #d9cede;border-radius:12px;background:#fff;color:#43273f}.admin-task-card{background:#fff;border:1px solid #e5dce8;border-radius:18px;padding:22px;margin:16px 0;overflow-wrap:anywhere}.admin-task-card h3{font-size:1.1rem;margin:12px 0 8px;color:#43273f}.admin-task-card p{margin:8px 0 18px}.admin-task-card small{display:block;color:#705b77;margin-top:8px}.admin-task-state{display:inline-block;background:#eee7f3;color:#5e406b;border-radius:20px;padding:5px 12px;font-size:.85rem;font-weight:700}.admin-task-card.task-urgent{border-left:4px solid #a06c25}.task-urgent .admin-task-state{background:#fff0d6;color:#78501b}#adminTaskFailures:not(:empty){background:#fff0d6;color:#6a471d;border-radius:12px;padding:10px 18px}#adminTaskFailures a{color:#43273f;text-decoration:underline}@media(max-width:700px){.admin-task-filters{grid-template-columns:1fr}.admin-task-card{padding:18px}.admin-task-card .notification-actions{flex-wrap:wrap;gap:12px}}

/* Source: experience.css */

:root{--focus-ring:#805400}html{scroll-padding-top:110px}body{overflow-wrap:break-word}*,*::before,*::after{box-sizing:border-box}img{max-width:100%}input,select,textarea{max-width:100%}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}button,a.btn,summary,select{touch-action:manipulation}.skip-link{position:fixed;top:-100px;left:12px;z-index:2000;background:#fff;color:#352346;padding:12px}.skip-link:focus{top:12px}
.hero-slide-label,.hero-carousel-slide small,.program-badge,.marketing-badge,.bundle-label{font-size:.875rem!important}.hero-carousel-slide p{font-size:1rem}.hero-carousel button{min-width:44px;min-height:44px}.hero-carousel-dots button{min-width:44px;min-height:44px;border-radius:50%;background:transparent!important;position:relative}.hero-carousel-dots button:after{content:"";width:10px;height:10px;position:absolute;top:17px;left:17px;border-radius:50%;background:#c8bddf}.hero-carousel-dots button.is-active:after{background:#62428b}
.service-inclusions summary,.featured-conditions summary{font-weight:700;color:#62428b;padding:10px 0;cursor:pointer}.bundle-card,.featured-card{min-height:0!important}.bundle-card .marketing-points dd{font-size:.95rem}.bundle-card .marketing-points dt{font-size:.875rem}.bundle-card p,.featured-card p,.featured-card li,.service-inclusions li{font-size:1rem!important;line-height:1.65}.bundle-card .unit-value,.featured-terms dt,.featured-terms dd,.bundle-summary label,.bundle-summary small,.summary-note,.catalogue-documents span,.finder-result,.terms-consent span,.selection-count span,.checkout-promo p,.checkout-promo summary small{font-size:.875rem!important;line-height:1.6}.bundle-card .marketing-badge,.featured-card .marketing-badge{color:#332251}.bundle-card button,.featured-card button,.goal-filters button{min-height:44px}.bundle-card .service-toggle{margin-top:auto}.featured-conditions{margin-bottom:16px}.checkout-package{padding:24px!important}.checkout-package .package-plans{margin-top:16px}.checkout-package .package-plans button{min-height:56px}.catalogue-count{font-size:.95rem;color:#51465f;margin:16px 0}.service-group-label{font-weight:700}.back-to-top{z-index:900}
@media(max-width:900px){.hero-grid,.workshop-hero>.container,.manual-payment-layout{grid-template-columns:1fr!important}.bundle-grid,.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.topbar .nav{flex-wrap:wrap;gap:12px}.navlinks{max-height:70vh;overflow-y:auto}.container{max-width:100%}.hero-program h1{font-size:clamp(2rem,7vw,3.5rem)}}
@media(max-width:640px){.container{width:calc(100% - 28px)!important}.bundle-grid,.featured-grid,.package-areas,.profile-grid,.workshop-feature-grid{grid-template-columns:1fr!important}.hero-program,.hero-card{padding:24px!important;min-width:0}.hero-side-title h2{font-size:1.5rem!important}.bundle-controls,.catalogue-toolbar{flex-direction:column;align-items:stretch!important;gap:16px}.bundle-controls label,.catalogue-toolbar label{width:100%;min-width:0!important}.goal-filters{display:flex;flex-wrap:wrap;gap:8px}.plan-presets{flex-wrap:wrap}.service-finder{padding:20px!important;grid-template-columns:1fr!important}.floating-plan-cart{right:14px!important;bottom:14px!important;min-width:0!important}.back-to-top{right:14px!important;bottom:14px!important}.floating-plan-cart .cart-copy{display:block!important}.floating-plan-cart small{display:none}.floating-plan-cart strong{font-size:.875rem}.floating-plan-cart .cart-icon{display:none}.order-card{padding:20px!important}.hero-carousel-controls{gap:4px;flex-wrap:wrap}.hero-carousel-dots{gap:0!important}.trust-grid{grid-template-columns:1fr 1fr}.topbar .brand-copy small{font-size:.7rem}.topbar .header-cta{font-size:.875rem;max-width:100%}input,select,textarea{font-size:1rem!important}input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:44px}.service-reference .service-meta{grid-template-columns:1fr}.workshop-feature-card{min-width:0}.workshop-feature-card p{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

.booking-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.booking-choice-grid>a{border:1px solid #d8cfed;border-radius:18px;background:#fff;padding:22px;color:#352346}.booking-choice-grid h2{font-size:1.15rem;line-height:1.4}.booking-choice-grid p{font-size:1rem;line-height:1.65;color:#51465f}.booking-choices h1{font-size:clamp(2rem,5vw,3rem)}@media(max-width:1000px){.booking-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.booking-choice-grid{grid-template-columns:1fr}}

.workshop-full-details{margin:16px 0}.workshop-full-details summary{cursor:pointer;color:#62428b;font-weight:700;padding:10px 0}.workshop-full-details div{font-size:1rem;line-height:1.7;padding:12px 0}.workshop-status{font-size:.875rem!important}.workshop-link{min-height:44px;display:inline-flex;align-items:center}.issue-report-dialog{overflow:auto}.issue-report-trigger{min-height:44px}.booking-auth-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}.hero-carousel-pause{font-size:.875rem}.alert{font-size:1rem;line-height:1.6}

.page-title{font-family:Lora,serif;font-size:clamp(2rem,4vw,3.35rem);line-height:1.2;margin:12px 0 18px}.trust-grid span{font-size:.875rem!important;line-height:1.6}.nav-group>button{min-height:44px}.menu-toggle{min-height:44px!important}.topbar .brand-copy small{font-size:.75rem!important;letter-spacing:.06em!important}.topbar .brand-copy strong{font-size:1rem!important}.topbar .brand img{width:42px!important;height:42px!important}.dropdown a{font-size:.95rem!important}.dropdown small{font-size:.875rem!important}.nav-group.open .dropdown{display:grid!important}.hero-carousel-slide{min-width:100%;overflow-wrap:anywhere}.workshop-placeholder button{font-size:1rem}.issue-report-trigger{z-index:890}
.page-back-bar{grid-column:1/-1;width:100%;box-sizing:border-box;padding:12px clamp(16px,4vw,48px);margin:0;background:#faf8f5;text-align:left}.page-back-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;box-sizing:border-box;padding:10px 16px;border:1px solid #d8d0e5;border-radius:12px;background:#fff;color:#62428b;font:700 .85rem/1.5 Montserrat,Arial,sans-serif;text-decoration:none;white-space:normal;overflow-wrap:anywhere;gap:8px}.page-back-link:hover{background:#f4eef8}.page-back-link:focus-visible{outline:3px solid #9f7aea;outline-offset:3px}.workshop-back.page-back-link{color:#62428b}.record-back.page-back-link{justify-self:start}@media(max-width:520px){.page-back-bar{padding:10px 16px}.page-back-link{font-size:.8rem}}

/* Compact, contextual back navigation near the page heading. */
.page-back-bar{padding:4px 0 10px;background:transparent;width:auto}.page-back-link{justify-content:flex-start;padding:8px 4px;border:0;border-radius:8px;background:transparent;font-size:.82rem;min-height:44px}.workshop-back.page-back-link{color:inherit}.page-back-link:hover{background:#ede6fa;color:#62428b}.page-back-link:focus-visible{outline:3px solid #9f7aea;outline-offset:3px}.focus-nav .page-back-link{margin:0}.page-back-bar:first-child:last-child{width:100%}@media(max-width:520px){.page-back-bar{padding:4px 0 8px}.page-back-link{font-size:.8rem}}

.page-back-bar .page-back-link{color:inherit}.page-back-bar .page-back-link:hover{color:#62428b}

/* Source: back-to-top.css */
.back-to-top{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:55;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:#62428b;color:#fff;box-shadow:0 8px 22px rgba(53,35,70,.22);font:700 27px/1 Montserrat,Arial,sans-serif;cursor:pointer;transition:transform .18s ease,background .18s ease}
.back-to-top[hidden]{display:none}
.back-to-top:hover{background:#31208c;transform:translateY(-3px)}
.back-to-top:focus-visible{outline:3px solid #e9cf72;outline-offset:3px}
@media(max-width:600px){.back-to-top{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:44px;height:44px;font-size:25px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}.back-to-top:hover{transform:none}}

/* Source: account-notifications.css */
.account-notification-sidebar{position:fixed;right:1rem;top:45%;z-index:40}.account-notification-sidebar button{background:#62428b;color:#fff;border:0;border-radius:1rem;padding:1rem;box-shadow:0 6px 24px #10143830;font:700 14px Montserrat,sans-serif;cursor:pointer}#notificationCount:not(:empty){background:#fff;color:#352073;border-radius:999px;padding:.2rem .45rem;margin-left:.35rem}.notification-panel{position:fixed;right:1rem;top:5rem;bottom:1rem;width:min(420px,calc(100vw - 2rem));overflow:auto;background:white;border:1px solid #ddd6f0;box-shadow:0 10px 50px #10143830;border-radius:20px;padding:1.25rem;z-index:60}.notification-panel[hidden]{display:none}.notification-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.notification-heading h2{font-size:1.4rem}.notification-panel button,.event-links button,.event-links a{padding:.65rem .85rem;border:1px solid #ddd6f0;border-radius:10px;background:#fff;color:#352073;font:600 14px Montserrat,sans-serif;cursor:pointer;text-decoration:none}.account-notification{padding:1rem 0;border-bottom:1px solid #eee;overflow-wrap:anywhere}.account-notification.unread{border-left:4px solid #62428b;padding-left:.8rem}.account-notification h3{font-size:1rem}.account-workshops{padding:1.5rem;background:#fff;border:1px solid #ddd6f0;border-radius:20px;margin:1.5rem 0}.account-workshop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1rem}.account-event{padding:1rem;border:1px solid #ddd6f0;border-radius:14px;overflow-wrap:anywhere}.account-event h3{font-size:1.1rem}.event-links{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}.event-state{font-size:14px;font-weight:700;color:#62428b}.account-notification-sidebar button:focus-visible,.notification-panel button:focus-visible{outline:3px solid #a16a0a;outline-offset:3px}@media(max-width:700px){.account-notification-sidebar{top:auto;bottom:1rem;right:1rem}.notification-panel{top:1rem;bottom:5rem}.workshop-registration-row{display:flex!important;flex-direction:column;align-items:stretch!important}.workshop-registration-actions{display:flex;flex-wrap:wrap;gap:.5rem}.workshop-admin-card{min-width:0}.workshop-admin-actions{flex-wrap:wrap}.account-workshops{padding:1rem}}

.header-notification{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;padding:0;border:1px solid #ddd6f0;border-radius:50%;background:#fff;color:#62428b;cursor:pointer}.header-notification #notificationCount:not(:empty){position:absolute;right:-5px;top:-5px;background:#62428b;color:white;margin:0;font-size:12px;padding:2px 5px;min-width:18px}.topbar .header-user{gap:10px;margin-right:12px}.topbar .nav{column-gap:14px}.topbar .navlinks{gap:12px}.header-notification:focus-visible{outline:3px solid #a16a0a;outline-offset:3px}@media(max-width:1500px){.topbar .header-user{justify-content:flex-start;flex-wrap:wrap;gap:14px;margin-right:0}.header-signout{margin-left:auto}}
/* Keep notification controls clear of sticky mobile navigation. */
.notification-panel{z-index:1100}
@media(max-width:900px){
 .topbar .navlinks .header-user{display:grid!important;grid-template-columns:minmax(0,1fr) 44px auto;align-items:center;gap:8px;padding-inline:0;width:100%;white-space:normal}
 .topbar .navlinks .header-welcome{width:auto;min-width:0;white-space:normal;overflow-wrap:anywhere;display:flex;align-items:center;line-height:1.4;font-size:14px}
 .topbar .navlinks .header-notification{width:44px;height:44px;min-height:44px;margin:0}
 .topbar .navlinks .header-signout{width:auto!important;min-height:44px;margin:0;padding:8px 10px;font-size:14px}
 .notification-panel{top:max(12px,env(safe-area-inset-top));right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:16px;overscroll-behavior:contain}
 .notification-panel button,.event-links a,.event-links button{min-height:44px;display:inline-flex;align-items:center}
 .account-workshops,.account-event{min-width:0;max-width:100%}
}
@media(max-width:360px){.topbar .navlinks .header-user{grid-template-columns:minmax(0,1fr) 44px}.topbar .navlinks .header-signout{grid-column:1/-1;justify-self:start}}

.notification-panel .notification-action{display:inline-flex;margin:12px 12px 0 0;padding:9px 12px;min-height:44px;box-sizing:border-box;align-items:center;border:1px solid #e5ddeb;border-radius:10px;background:#f4eef8;color:#62428b;font-weight:700}

/* Inbox layout: fixed controls and an independently scrolling list. */
body .notification-panel.notification-inbox{display:flex;flex-direction:column;gap:14px;overflow:hidden;padding:20px;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 96px);box-sizing:border-box;background:#faf8f5;color:#352346}
body .notification-panel.notification-inbox[hidden]{display:none}
.notification-inbox .notification-heading{flex:0 0 auto;align-items:flex-start;gap:12px;flex-wrap:nowrap}
.notification-inbox .notification-heading h2{margin:0;font-size:1.4rem;line-height:1.3}
.notification-inbox .notification-summary{margin:6px 0 0;color:#65556d;font-size:.85rem;line-height:1.5}
.notification-inbox .notification-toolbar{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 auto}
body .notification-inbox button{font:600 .82rem/1.4 Montserrat,Arial,sans-serif;min-height:44px;padding:10px 12px;white-space:normal}
.notification-inbox #closeNotifications{flex-shrink:0}
.notification-inbox button:disabled{opacity:.55;cursor:default}
.notification-inbox #notificationMessage{flex:0 0 auto;margin:0;font-size:.85rem;line-height:1.5;color:#65556d}
.notification-inbox #notificationMessage:empty{display:none}
.notification-inbox #notificationList{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px;scrollbar-gutter:stable}
body .notification-inbox .account-notification{padding:16px;margin:0 0 12px;border:1px solid #e5ddeb;border-radius:14px;background:#fff;min-width:0;overflow-wrap:anywhere}
body .notification-inbox .account-notification.unread{border-left:4px solid #795793;background:#fff}
.notification-inbox .account-notification:last-child{margin-bottom:0}
.notification-inbox .account-notification h3{margin:0 0 8px;font-size:1rem;line-height:1.45;color:#352346}
.notification-inbox .account-notification p{margin:0 0 12px;font-size:.9rem;line-height:1.65;color:#51445b}
.notification-unread-label{display:inline-block;margin:0 0 8px;padding:3px 8px;border-radius:999px;background:#f4eef8;color:#62428b;font:700 .7rem/1.5 Montserrat,Arial,sans-serif}
.notification-meta{display:block;font:500 .75rem/1.6 Montserrat,Arial,sans-serif;color:#65556d}
.notification-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}
.notification-actions:empty{display:none}
body .notification-inbox .notification-action{margin:0;padding:10px 12px;min-height:44px;max-width:100%;font:700 .82rem/1.4 Montserrat,Arial,sans-serif;text-decoration:none;background:#f4eef8;color:#49334f}
.notification-inbox .notification-action:hover{background:#eae0f0}
.notification-inbox .notification-empty{padding:18px;background:#fff;border:1px solid #e5ddeb;border-radius:14px;line-height:1.7;margin:0}
@media(max-width:900px){body .notification-panel.notification-inbox{top:max(12px,env(safe-area-inset-top));bottom:max(12px,env(safe-area-inset-bottom));right:12px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:16px}}
@media(max-width:360px){.notification-inbox .notification-actions>*{width:100%;justify-content:center}.notification-inbox .notification-toolbar>*{flex:1 1 120px}}

/* Source: website-upgrades.css */
/* Common spacing and interaction contracts for the expanded Intellecta site. */
:root{--intellecta-ink:#171538;--intellecta-purple:#62428b;--intellecta-line:#e6def2;--intellecta-radius:20px;--intellecta-focus:#6943cc}
[hidden]{display:none!important}.topbar .nav-group[hidden]{display:none!important}
.topbar .navlinks a[aria-current="page"],.topbar .current-group>button{color:#62428b;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.home-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px}.home-routes a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border:1px solid rgba(255,255,255,.35);border-radius:12px;font-size:.85rem;line-height:1.4;color:inherit;overflow-wrap:anywhere}.home-routes a:hover{background:rgba(255,255,255,.12)}
body.home-page .home-directory .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.home-directory .directory-card{height:auto;min-width:0}.home-workshop-showcase{align-items:start}.home-workshop-showcase>div{min-width:0;overflow-wrap:anywhere}
.workspace-shortcuts{display:flex;flex-wrap:wrap;gap:8px;margin:20px auto;max-width:1200px;padding:0 20px;box-sizing:border-box}.workspace-shortcuts a{display:flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid var(--intellecta-line);border-radius:999px;background:#fff;color:var(--intellecta-purple);font-size:.85rem;font-weight:700}
.today-focus{padding:24px;border:1px solid var(--intellecta-line);border-radius:var(--intellecta-radius);background:#f8f5fd;margin:20px 0}.today-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.today-cards article{min-width:0;padding:20px;background:#fff;border-radius:16px}.today-cards h3{margin:0 0 10px}.today-cards p{line-height:1.65}.today-cards a{display:inline-flex;align-items:center;min-height:44px;white-space:normal;overflow-wrap:anywhere}
.workspace-fold{margin:18px 0;border:1px solid var(--intellecta-line);border-radius:18px;background:#fff;min-width:0}.workspace-fold>summary{padding:18px 22px;cursor:pointer;font-weight:800;min-height:44px;box-sizing:border-box;line-height:1.5}.workspace-fold>section{margin:0;border:0;box-shadow:none}.dashboard .grid>.workspace-fold{min-width:0}.dashboard .grid>.workspace-fold:has(>.wide){grid-column:1/-1}
.admin-priorities{padding:22px;background:#f4effb;border:1px solid var(--intellecta-line);border-radius:20px;margin-bottom:22px}.admin-priorities h2{font-size:1.2rem;margin:0 0 16px}.admin-priorities>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-priorities button{padding:14px;background:#fff;border:1px solid var(--intellecta-line);border-radius:12px;text-align:left;color:var(--intellecta-ink);font:inherit;cursor:pointer;line-height:1.5;min-height:48px}.admin-priorities strong{display:block}.admin-tabs{flex-wrap:wrap}.admin-tabs button{min-height:44px;white-space:normal}
.process-steps{list-style:none;padding:0;counter-reset:step;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.process-steps li{counter-increment:step;padding:20px;border:1px solid var(--intellecta-line);border-radius:18px;background:#fff;min-width:0}.process-steps li:before{content:counter(step);display:block;color:var(--intellecta-purple);font-weight:800;margin-bottom:12px}.process-steps p{line-height:1.65}
.directory-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin:20px 0}.directory-controls label{display:grid;gap:8px;font-size:.85rem;font-weight:700}.directory-controls input,.directory-controls select{width:100%;min-width:0;box-sizing:border-box;padding:12px;font:inherit;border:1px solid #d6cbe7;border-radius:12px;min-height:48px;background:#fff;color:var(--intellecta-ink)}
.lab-catalogue{margin:24px 0;padding:24px;border:1px solid var(--intellecta-line);border-radius:24px;background:#faf8f5;scroll-margin-top:100px}.lab-catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.lab-catalogue-card{padding:20px;background:#fff;border:1px solid var(--intellecta-line);border-radius:16px;min-width:0;display:flex;flex-direction:column;gap:10px}.lab-catalogue-card h3{font-size:1.1rem;margin:0}.lab-catalogue-card p{margin:0;line-height:1.6}.lab-catalogue-card small{color:#675a78;line-height:1.6}.lab-catalogue-card a{margin-top:auto;display:flex;align-items:center;min-height:44px;color:var(--intellecta-purple);font-weight:700}.lab-catalogue-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.lab-catalogue-actions button{min-height:44px;padding:10px 18px;background:#62428b;color:#fff;border:0;border-radius:12px;font:inherit;cursor:pointer}
.planned-subjects{margin:22px 0;padding:18px;border:1px solid var(--intellecta-line);border-radius:18px}.planned-subjects>summary{min-height:44px;font-weight:800;cursor:pointer}.planned-subjects .subject{margin-top:12px}
.workshop-directory-controls{max-width:100%}.workshop-archive{margin-top:28px;scroll-margin-top:100px}.workshop-archive>summary{min-height:48px;padding:16px;background:#f4effb;border-radius:14px;cursor:pointer;font-weight:800}.workshop-archive-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:18px}.workshop-archive-list article{padding:22px;border:1px solid var(--intellecta-line);border-radius:18px;background:#fff;min-width:0}.workshop-filter-empty{grid-column:1/-1;padding:20px}.workshop-state-note{padding:12px;border-radius:12px;background:#f5f0fb;line-height:1.6}
.cloud-draft-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.cloud-draft-controls button{min-height:44px;padding:10px 14px;border:1px solid #cec1e5;border-radius:12px;background:#fff;color:#62428b;font:inherit;cursor:pointer}.cloud-draft-status{line-height:1.6;font-size:.9rem}.usage-preferences{padding:18px;margin:24px auto;border:1px solid var(--intellecta-line);border-radius:16px;max-width:1100px;box-sizing:border-box;background:#faf8f5}.usage-preferences summary{cursor:pointer;min-height:44px;font-weight:700}.usage-preferences label{display:flex;align-items:flex-start;gap:10px;padding:12px 0;line-height:1.6}.usage-preferences input{width:20px;height:20px;flex:0 0 20px}.usage-preferences button{min-height:44px;padding:10px 16px;font:inherit}.usage-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.usage-stats article{padding:20px;border-radius:16px;background:#f4effb}.usage-stats strong{display:block;font-size:1.8rem;margin-top:10px}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--intellecta-focus);outline-offset:3px}
@media(max-width:900px){.lab-catalogue-grid,.today-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-priorities>div,.process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-controls{grid-template-columns:1fr 1fr}.directory-controls>label:first-child{grid-column:1/-1}.usage-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body.home-page .home-directory .cards,.today-cards,.lab-catalogue-grid,.workshop-archive-list,.process-steps,.directory-controls,.usage-stats{grid-template-columns:minmax(0,1fr)}.directory-controls>label:first-child{grid-column:auto}.today-focus,.lab-catalogue{padding:18px}.workspace-shortcuts{padding:0;gap:8px}.workspace-shortcuts a{flex:1 1 auto;justify-content:center}.parent-hero+.workspace-shortcuts{padding:0 20px}.admin-priorities{padding:16px}.admin-priorities>div{grid-template-columns:1fr}.home-routes a{font-size:.8rem}.process-steps{gap:12px}.usage-preferences{margin:20px 12px}.notification-panel{max-width:calc(100vw - 24px);max-height:calc(100dvh - 100px);overflow:auto}.floating-plan-cart{max-width:calc(100vw - 90px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
