:root{color:#173c36;background:#f4f7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0;background:#f4f7f4}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid #e27d4f;outline-offset:4px}.site-shell{min-height:100vh;overflow:hidden}.skip-link{position:absolute;z-index:10;top:0;left:1rem;padding:.75rem 1rem;color:#fff;background:#173c36;transform:translateY(-150%);transition:transform .16s ease}.skip-link:focus{transform:translateY(1rem)}.site-header,.hero-section,.highlights-section,.access-section,.site-footer{width:min(100% - 2rem,1160px);margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:1rem;border-bottom:1px solid #dce7df}.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none}.brand-mark{display:grid;width:2.35rem;height:2.35rem;place-items:center;color:#f4f7f4;background:#e27d4f;border-radius:.55rem .55rem .55rem .15rem;font-size:.68rem;font-weight:800;letter-spacing:.06em}.brand-name{color:#173c36;font-size:.95rem;letter-spacing:-.02em}.brand-name strong{font-weight:750}.primary-nav{display:flex;gap:clamp(1rem,3vw,2.5rem);margin-left:auto;margin-right:clamp(0rem,2vw,1.5rem)}.primary-nav a,.header-action,.text-link{font-size:.78rem;font-weight:650;text-decoration:none}.primary-nav a{color:#52716a}.primary-nav a:hover,.primary-nav a:focus-visible,.text-link:hover,.text-link:focus-visible{color:#e27d4f}.header-action{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem .95rem;color:#173c36;border:1px solid #b9cec4;border-radius:999px}.header-action span,.button span,.text-link span{font-size:1rem;line-height:0}.hero-section{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:center;min-height:570px;gap:3rem;padding-block:4rem 5rem}.hero-copy{max-width:590px}.eyebrow{display:flex;align-items:center;gap:.55rem;margin:0 0 1.4rem;color:#e27d4f;font-size:.72rem;font-weight:800;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}.eyebrow-dot{width:.45rem;height:.45rem;background:currentColor;border-radius:50%}h1,h2,h3,p{margin-top:0}h1,h2{color:#173c36;font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.055em}h1{max-width:650px;margin-bottom:1.5rem;font-size:clamp(3.6rem,8vw,7rem);line-height:.9}h1 em{color:#e27d4f;font-style:italic}.hero-description{max-width:430px;margin-bottom:2.1rem;color:#52716a;font-size:1.02rem;line-height:1.75}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.4rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:3rem;padding:.8rem 1.2rem;border-radius:999px;font-size:.82rem;font-weight:750;text-decoration:none}.button-primary{color:#f4f7f4;background:#173c36}.button-primary:hover,.button-primary:focus-visible{background:#285d51}.button-light{color:#173c36;background:#f4f7f4}.text-link{display:inline-flex;align-items:center;gap:.4rem;color:#52716a}.hero-art{position:relative;min-height:380px;isolation:isolate}.hero-art:before{position:absolute;inset:12% 4% 4% 10%;z-index:-1;background:#dfece3;border-radius:50% 50% 46% 54%;content:"";transform:rotate(-8deg)}.art-orbit{position:absolute;border:1px solid #a9c6b8;border-radius:50%;transform:rotate(-30deg)}.art-orbit-one{inset:19% 9% 16% 10%}.art-orbit-two{inset:8% 20% 24% 1%;transform:rotate(49deg)}.art-center{position:absolute;inset:19% 15% 20% 14%}.art-line{position:absolute;width:66%;height:1px;background:#6d9987;transform-origin:left center}.art-line-one{top:47%;left:21%;transform:rotate(-28deg)}.art-line-two{top:49%;left:22%;transform:rotate(32deg)}.art-dot,.art-core{position:absolute;display:block;border-radius:50%}.art-dot{width:1.2rem;height:1.2rem;background:#e27d4f;box-shadow:0 0 0 .45rem #f4c4a8}.art-dot-one{top:10%;left:20%}.art-dot-two{top:43%;right:6%}.art-dot-three{bottom:14%;left:15%}.art-dot-four{right:24%;bottom:4%;width:.8rem;height:.8rem;background:#173c36;box-shadow:none}.art-core{top:38%;left:43%;width:5rem;height:5rem;background:#173c36;border:.8rem solid #b9d4c5;box-shadow:0 0 0 .55rem #edf4ee}.art-caption{position:absolute;right:6%;bottom:1%;margin:0;color:#52716a;font-family:Georgia,Times New Roman,serif;font-size:.95rem;font-style:italic;line-height:1.2;text-align:right}.highlights-section{padding-block:1rem 6rem}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.25rem;border-top:1px solid #dce7df;padding-top:1.3rem}.section-heading .eyebrow{margin-bottom:0}h2{margin-bottom:0;font-size:clamp(2.2rem,5vw,4rem);line-height:.95}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.highlight-card{min-height:190px;padding:1.35rem;background:#fff;border:1px solid #e0eae2;border-radius:.8rem}.card-number{display:block;margin-bottom:2.2rem;color:#e27d4f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;font-weight:700}h3{margin-bottom:.55rem;color:#173c36;font-size:1rem;letter-spacing:-.02em}.highlight-card p{margin-bottom:0;color:#66837a;font-size:.82rem;line-height:1.55}.access-section{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:2rem;margin-bottom:5rem;padding:2.2rem clamp(1.3rem,5vw,4rem);color:#f4f7f4;background:#e27d4f;border-radius:1rem}.access-section .eyebrow,.access-section h2{color:#f4f7f4}.access-section .eyebrow{margin-bottom:.8rem}.access-section h2{font-size:clamp(2rem,4vw,3.1rem)}.access-section>p{max-width:250px;margin-bottom:0;color:#fff0e9;font-size:.88rem;line-height:1.6}.site-footer{display:flex;justify-content:space-between;gap:1rem;padding-block:1.25rem 2rem;color:#66837a;border-top:1px solid #dce7df;font-size:.75rem}.site-footer span:first-child{color:#173c36;font-weight:750}.not-found{display:grid;width:min(100% - 2rem,640px);min-height:70vh;margin-inline:auto;align-content:center;justify-items:start}.not-found h1{font-size:clamp(3rem,8vw,5.5rem)}.not-found p:not(.eyebrow){color:#52716a;line-height:1.6}.login-page{display:grid;min-height:100vh;padding:2rem 1rem;place-items:center;background:#e8f0e9}.login-panel{width:min(100%,510px);padding:clamp(2rem,7vw,4.5rem);background:#fff;border:1px solid #dce7df;border-radius:1.2rem;box-shadow:0 1.5rem 4rem #173c3614}.login-brand{margin-bottom:4rem}.login-panel h1{margin-bottom:1rem;font-size:clamp(3.2rem,8vw,5.5rem)}.login-description{max-width:320px;margin-bottom:2rem;color:#66837a;line-height:1.65}.login-form{display:grid;gap:.6rem}.login-form label{margin-top:.6rem;color:#173c36;font-size:.78rem;font-weight:750}.login-form input{width:100%;min-height:3.1rem;padding:.75rem .9rem;color:#173c36;background:#f4f7f4;border:1px solid #cbdcd1;border-radius:.45rem;font:inherit}.login-form input:focus{border-color:#e27d4f;outline:3px solid rgb(226 125 79 / 22%)}.login-submit{width:100%;margin-top:1rem;border:0;cursor:pointer;font:inherit}.login-submit:disabled{cursor:wait;opacity:.7}.form-error{margin:.7rem 0 0;padding:.75rem;color:#9b3c27;background:#fff0e9;border-radius:.4rem;font-size:.8rem;line-height:1.45}.back-link{display:inline-block;margin-top:1.7rem;color:#52716a;font-size:.78rem;font-weight:650;text-decoration:none}.back-link:hover,.back-link:focus-visible{color:#e27d4f}.private-shell{display:grid;grid-template-columns:minmax(220px,280px) 1fr;min-height:100vh;background:#f4f7f4}.private-sidebar{display:flex;flex-direction:column;padding:2rem clamp(1.25rem,4vw,2.5rem);color:#dcebe2;background:#173c36}.private-sidebar .brand-name{color:#f4f7f4}.private-sidebar .brand-name strong{color:#fff}.sidebar-label{margin:3rem 0 .8rem;color:#91b4a4;font-size:.67rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.private-nav{display:grid;gap:.3rem}.private-nav-link{display:flex;align-items:center;gap:.7rem;padding:.75rem .8rem;color:#b8d0c3;border-radius:.4rem;font-size:.82rem;font-weight:650;text-decoration:none}.private-nav-link:hover,.private-nav-link:focus-visible,.private-nav-link.active{color:#173c36;background:#f4f7f4}.nav-marker{width:.4rem;height:.4rem;background:currentColor;border-radius:50%}.logout-button{display:flex;align-items:center;gap:.5rem;width:max-content;margin-top:auto;padding:.65rem 0;color:#f0c0a8;background:transparent;border:0;cursor:pointer;font:inherit;font-size:.78rem;font-weight:700}.private-main{min-width:0}.private-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:96px;padding:1rem clamp(1.25rem,5vw,4rem);border-bottom:1px solid #dce7df}.private-header .eyebrow{margin:0 0 .25rem}.private-role{margin:0;color:#173c36;font-size:.82rem;font-weight:750}.profile-chip{display:flex;align-items:center;gap:.6rem;color:#52716a;font-size:.75rem;font-weight:650}.profile-avatar{display:grid;width:2rem;height:2rem;place-items:center;color:#f4f7f4;background:#e27d4f;border-radius:50%;font-size:.75rem;font-weight:800}.private-content{width:min(100% - 2rem,980px);margin-inline:auto;padding-block:clamp(3rem,8vw,6rem)}.private-content h1{margin-bottom:1rem;font-size:clamp(3.5rem,8vw,6.5rem)}.private-intro{max-width:440px;margin-bottom:3rem;color:#66837a;line-height:1.7}.private-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.private-card{min-height:0;padding:1.5rem;background:#fff;border:1px solid #dce7df;border-radius:.8rem}.private-card-accent{background:#fff0e9;border-color:#f0c0a8}.private-card h2{margin-bottom:.6rem;color:#173c36;font-family:inherit;font-size:1rem;font-weight:750;letter-spacing:-.02em}.private-card p{max-width:300px;margin-bottom:0;color:#66837a;font-size:.84rem;line-height:1.6}.academics-page h1,.availability-page h1{font-size:clamp(2.6rem,7vw,4.8rem)}.form-notice,.loading-message{color:#276b51;font-size:.84rem;font-weight:700}.academic-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.academic-column,.academic-card,.availability-form{min-width:0}.academic-column{display:grid;align-content:start;gap:1rem}.academic-card{min-height:0}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.card-heading h2{margin:0;color:#173c36;font-size:1.1rem}.card-heading .eyebrow{margin-bottom:.35rem}.card-count{display:grid;width:2rem;height:2rem;place-items:center;color:#276b51;background:#e6f1e9;border-radius:50%;font-size:.75rem;font-weight:800}.compact-form,.form-stack{display:grid;gap:.65rem}.form-stack{gap:1.25rem}.compact-form label,.availability-form>label,.availability-row label{color:#52716a;font-size:.74rem;font-weight:750}.compact-form input,.compact-form select,.availability-form select,.availability-row input,.availability-row select{box-sizing:border-box;width:100%;min-width:0;padding:.7rem .75rem;color:#173c36;background:#f8fbf8;border:1px solid #c8d9ce;border-radius:.45rem;font:inherit;font-size:.82rem}.compact-form input:focus-visible,.compact-form select:focus-visible,.availability-form select:focus-visible,.availability-row input:focus-visible,.availability-row select:focus-visible{outline:3px solid #f0c0a8;outline-offset:1px;border-color:#e27d4f}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.form-grid>div,.availability-row>div{min-width:0}.form-grid>div{display:grid;gap:.65rem}.form-divider{padding-top:1.25rem;border-top:1px solid #dce7df}.field-help{max-width:none!important;margin:.25rem 0 0;color:#66837a;font-size:.74rem!important;line-height:1.5!important}.selection-summary{max-width:none!important;margin:.35rem 0 0;padding:.7rem .8rem;color:#276b51!important;background:#eaf4ec;border-left:3px solid #72a784;border-radius:.35rem;font-size:.78rem!important}.empty-state{max-width:none!important;padding:1rem;color:#52716a!important;background:#f8fbf8;border:1px dashed #b9cec4;border-radius:.55rem}.student-session-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0 2rem}.student-session-section{margin-top:2.4rem}.student-session-section>.card-heading{margin-bottom:1rem}.student-session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.student-session-card{display:grid;align-content:start;gap:.8rem}.student-session-card .card-heading{margin-bottom:0}.student-session-card h3{margin:0;color:#173c36;font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:400;letter-spacing:-.03em;text-transform:capitalize}.student-session-time{margin:0!important;color:#276b51!important;font-size:1rem!important;font-weight:800;font-variant-numeric:tabular-nums}.student-session-details{display:grid;gap:.65rem;margin:0}.student-session-details div{display:grid;gap:.15rem}.student-session-details dt{color:#66837a;font-size:.68rem;font-weight:750;text-transform:uppercase}.student-session-details dd{margin:0;color:#173c36;font-size:.82rem;line-height:1.4}.session-blocked-message{max-width:none!important;margin:0!important;padding:.7rem .8rem;color:#8e3f25!important;background:#fff0e9;border-radius:.4rem;font-size:.76rem!important}.session-blocked-message strong{font-size:.68rem;letter-spacing:.04em}.resource-list{display:grid;gap:.55rem;margin:1.5rem 0 0;padding:0;list-style:none}.resource-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.7rem;border-top:1px solid #dce7df}.resource-list li>span:first-child{display:grid;min-width:0;gap:.2rem}.resource-list small{color:#66837a;font-size:.7rem}.resource-actions,.availability-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem}.status-pill{padding:.25rem .45rem;border-radius:999px;font-size:.65rem;font-weight:800}.status-draft{color:#7b5b18;background:#fff4ce}.status-active{color:#276b51;background:#e6f1e9}.status-closed{color:#66837a;background:#eef2ef}.text-button{padding:.2rem 0;color:#b85e38;background:transparent;border:0;cursor:pointer;font:inherit;font-size:.72rem;font-weight:750}.text-button:hover,.text-button:focus-visible{color:#8e3f25;text-decoration:underline}.availability-page{max-width:820px}.availability-form{display:grid;gap:.75rem}.availability-list{display:grid;gap:.75rem;margin:.75rem 0}.availability-row{display:grid;grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(0,1fr)) auto;align-items:end;gap:.65rem;padding:.8rem;background:#f8fbf8;border:1px solid #dce7df;border-radius:.55rem}.availability-row>div{display:grid;gap:.4rem}.availability-actions{justify-content:space-between;margin-top:.5rem}.documents-page h1{font-size:clamp(2.6rem,7vw,4.8rem)}.document-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.document-toolbar label,.review-actions label,.document-card>label{color:#52716a;font-size:.74rem;font-weight:750}.document-toolbar select,.review-actions input,.document-card textarea{min-width:0;padding:.7rem .75rem;color:#173c36;background:#f8fbf8;border:1px solid #c8d9ce;border-radius:.45rem;font:inherit;font-size:.82rem}.document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.document-card{min-height:0}.document-card h2{max-width:22rem;margin:0;color:#173c36;font-family:inherit;font-size:1.1rem;font-weight:750;letter-spacing:-.02em}.document-card .compact-form{margin-top:1rem}.document-card .button{border:0;cursor:pointer;font:inherit;font-size:.75rem}.document-note,.document-meta{color:#52716a;font-size:.8rem;line-height:1.55}.document-meta{margin-bottom:1rem}.review-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;margin-bottom:1rem}.document-card textarea{width:100%;resize:vertical}.document-card>label{display:block;margin-bottom:.4rem}.document-status-missing,.document-status-expired{color:#8e3f25;background:#fff0e9}.document-status-pending_review{color:#7b5b18;background:#fff4ce}.document-status-approved{color:#276b51;background:#e6f1e9}.document-status-rejected{color:#9b3c27;background:#fff0e9}@media(max-width:720px){.document-grid{grid-template-columns:1fr}.review-actions{align-items:stretch;flex-direction:column}.review-actions input,.review-actions .button{width:100%}}@media(max-width:720px){.site-header{min-height:72px}.private-shell{display:block}.private-sidebar{padding:1rem}.sidebar-label{margin-top:2rem}.private-nav{display:grid;overflow:visible}.private-nav-link{width:100%}.logout-button{margin-top:1.2rem}.private-header{align-items:flex-start;flex-direction:column;padding-block:1.5rem}.private-card-grid,.academic-layout{grid-template-columns:1fr}.availability-row{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-row .text-button{justify-self:start}.primary-nav{display:none}.header-action{padding:.6rem .75rem;font-size:.7rem}.hero-section{display:block;min-height:auto;padding-block:4rem 3rem}h1{font-size:clamp(3.8rem,19vw,6rem)}.hero-art{min-height:290px;margin-top:2rem}.highlights-section{padding-bottom:4rem}.section-heading{display:block}.section-heading .eyebrow{margin-bottom:1rem}.highlight-grid,.access-section{grid-template-columns:1fr}.highlight-card{min-height:auto}.card-number{margin-bottom:1.4rem}.access-section{align-items:start;gap:1.25rem;margin-bottom:3rem}.access-section>p{max-width:100%}}@media(max-width:480px){.form-grid,.availability-row{grid-template-columns:1fr}.resource-list li{align-items:flex-start;flex-direction:column}.availability-actions{align-items:stretch;flex-direction:column}.availability-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.admin-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem;margin:2rem 0 1rem}.admin-stat{min-height:7rem}.admin-stat strong{display:block;margin-top:.7rem;color:#276b51;font-size:2.2rem;letter-spacing:-.05em}.admin-content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-content-grid h2{margin:0;font-family:inherit;font-size:1.25rem}.admin-alert-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0;padding:0;list-style:none}.admin-alert-list li{padding:.4rem .55rem;color:#8e3f25;background:#fff0e9;border-radius:.35rem;font-size:.72rem;font-weight:750}@media(max-width:900px){.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-content-grid{grid-template-columns:1fr}}.public-booking-shell{min-height:100vh;padding:1.5rem clamp(1rem,4vw,4rem) 4rem;color:#173c36;background:#f5f8f3}.public-booking-header{display:flex;align-items:center;justify-content:space-between;max-width:76rem;margin:0 auto}.public-booking-page{max-width:46rem;margin:8vh auto 0}.public-booking-page h1{max-width:35rem;margin-bottom:1rem}.public-booking-page h2{margin-bottom:1.5rem;color:#173c36;font-family:inherit;font-size:clamp(1.7rem,4vw,2.5rem)}.public-booking-intro,.booking-summary{color:#52716a;line-height:1.65}.booking-search-form,.booking-form-panel,.booking-result{display:grid;gap:.7rem;max-width:36rem;margin-top:2.2rem;padding:clamp(1.2rem,4vw,2rem);background:#fff;border:1px solid #d8e4d9;border-radius:1rem;box-shadow:0 1.2rem 3rem #264a3a14}.booking-search-form label,.booking-form-panel label{margin-top:.35rem;color:#52716a;font-size:.78rem;font-weight:750}.booking-search-form input,.booking-search-form select,.booking-form-panel input{width:100%;min-height:2.8rem;padding:.7rem .75rem;color:#173c36;background:#f8fbf8;border:1px solid #c8d9ce;border-radius:.45rem;font:inherit}.booking-search-form .button,.booking-form-panel .button{margin-top:.8rem}.booking-slot-list{display:grid;gap:.75rem;max-width:36rem;margin:1rem 0 0;padding:0;list-style:none}.booking-slot-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:#fff;border:1px solid #d8e4d9;border-radius:.8rem}.booking-slot-list strong,.booking-slot-list span{display:block}.booking-slot-list span{margin-top:.3rem;color:#52716a;font-size:.78rem}.booking-slot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;max-width:46rem;margin:1.2rem 0 0}.booking-slot-card{display:grid;min-width:0;gap:.45rem;padding:1.1rem;color:#173c36;text-align:left;background:#fff;border:1px solid #c8d9ce;border-radius:.8rem;box-shadow:0 .8rem 2rem #264a3a0f;cursor:pointer;font:inherit;touch-action:manipulation;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.booking-slot-card:hover{border-color:#72a784;box-shadow:0 1rem 2.3rem #264a3a1f;transform:translateY(-2px)}.booking-slot-card-time{color:#e27d4f;font-size:1.55rem;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.booking-slot-card strong{color:#173c36;font-size:.86rem;text-transform:capitalize}.booking-slot-card>span:not(.booking-slot-card-time):not(.booking-slot-card-action),.booking-slot-card small{overflow-wrap:anywhere;color:#52716a;font-size:.76rem;line-height:1.45}.booking-slot-card-action{margin-top:.35rem;color:#276b51;font-size:.76rem;font-weight:800}.booking-consent{display:flex;align-items:flex-start;gap:.6rem;color:#52716a;font-weight:500!important;line-height:1.5}.booking-consent input{width:auto;min-height:1rem;margin-top:.2rem}.booking-result strong{overflow-wrap:anywhere;color:#276b51;letter-spacing:.04em}@media(max-width:480px){.public-booking-shell{padding-inline:.9rem}.public-booking-header .text-link{font-size:.72rem}.public-booking-page{margin-top:3rem}.student-session-toolbar{align-items:stretch;flex-direction:column}.student-session-toolbar .button{width:100%}.student-session-grid,.booking-slot-grid{grid-template-columns:1fr}.booking-slot-list li{align-items:stretch;flex-direction:column}.booking-slot-list .button{width:100%}}.journey-panel{width:calc(100% - 2rem);max-width:1080px;margin:1.4rem auto 0;padding:1.25rem 1.4rem;background:#eaf2ec;border:1px solid #d4e3d8;border-radius:.85rem}.journey-panel-heading{display:grid;grid-template-columns:minmax(0,.8fr) minmax(260px,1fr);align-items:end;gap:1.5rem}.journey-panel .eyebrow{margin-bottom:.45rem}.journey-panel h2{margin:0;color:#173c36;font-family:inherit;font-size:1.35rem;font-weight:800;letter-spacing:-.03em}.journey-panel-description{max-width:38rem;margin:0;color:#52716a;font-size:.8rem;line-height:1.55}.journey-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.7rem;margin:1.2rem 0 0;padding:0;list-style:none}.journey-step{min-width:0}.journey-step-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;min-height:4.5rem;padding:.75rem;color:#52716a;background:#fff;border:1px solid #dce7df;border-radius:.55rem;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.journey-step-link:hover,.journey-step-link:focus-visible{color:#173c36;background:#f8fbf8;border-color:#a9c6b8;transform:translateY(-1px)}.journey-step.current .journey-step-link{color:#173c36;background:#fff9f6;border-color:#e27d4f}.journey-step-number{display:grid;width:1.8rem;height:1.8rem;place-items:center;color:#276b51;background:#dcebe2;border-radius:50%;font-size:.72rem;font-weight:800}.journey-step.current .journey-step-number{color:#fff;background:#e27d4f}.journey-step-copy{display:grid;min-width:0;gap:.2rem}.journey-step-copy strong{overflow:hidden;color:inherit;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.journey-step-copy small{overflow:hidden;color:#66837a;font-size:.68rem;line-height:1.4;text-overflow:ellipsis}.journey-step.current .journey-step-copy small{color:#b85e38;font-weight:750}.journey-step-arrow{color:#b85e38;font-size:1rem;line-height:1}.private-content{width:calc(100% - 2rem);max-width:1080px;padding-block:clamp(2.25rem,5vw,4rem)}.private-content h1{max-width:760px;margin-bottom:.85rem;font-size:clamp(2.7rem,5vw,4.6rem);line-height:.98;text-wrap:balance}.private-intro{max-width:600px;margin-bottom:2rem;line-height:1.6;text-wrap:pretty}.role-start-page{max-width:860px}.next-action{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2rem;padding:1.35rem 1.5rem;color:#f4f7f4;background:#173c36;border-radius:.8rem}.next-action>div{max-width:560px}.next-action .eyebrow{margin-bottom:.45rem;color:#f0c0a8}.next-action h2{margin-bottom:.5rem;color:#fff;font-family:inherit;font-size:1.3rem;font-weight:800;letter-spacing:-.025em}.next-action p:not(.eyebrow){max-width:480px;margin-bottom:0;color:#dcebe2;font-size:.84rem;line-height:1.55}.next-action .button-primary{flex:0 0 auto;color:#173c36;background:#f4f7f4}.next-action .button-primary:hover,.next-action .button-primary:focus-visible{color:#173c36;background:#fff}.role-start-follow-up{max-width:600px;margin-top:2rem;padding-top:1.35rem;border-top:1px solid #dce7df}.role-start-follow-up .eyebrow{margin-bottom:.45rem}.role-start-follow-up h2{margin-bottom:.5rem;font-family:inherit;font-size:1.25rem;font-weight:800;letter-spacing:-.025em}.role-start-follow-up p:not(.eyebrow){max-width:480px;margin-bottom:.9rem;color:#66837a;font-size:.84rem;line-height:1.6}.journey-detail-heading,.audit-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-top:2.25rem;padding-top:1.35rem;border-top:1px solid #dce7df}.journey-detail-heading h2,.audit-page-heading h2{margin:0;color:#173c36;font-family:inherit;font-size:1.35rem;font-weight:800;letter-spacing:-.03em}.journey-detail-heading>p{max-width:32rem;margin:0;color:#66837a;font-size:.82rem;line-height:1.55}.journey-detail-list{display:grid;max-width:860px;margin:1rem 0 0;padding:0;list-style:none;border-top:1px solid #dce7df}.journey-detail-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid #dce7df}.journey-detail-number{display:grid;width:2rem;height:2rem;place-items:center;color:#fff;background:#276b51;border-radius:50%;font-size:.75rem;font-weight:800}.journey-detail-copy{min-width:0}.journey-detail-copy .eyebrow{margin-bottom:.25rem}.journey-detail-copy h3{margin:0 0 .3rem;color:#173c36;font-family:inherit;font-size:1rem;font-weight:800}.journey-detail-copy p:not(.eyebrow){margin:0;color:#66837a;font-size:.82rem;line-height:1.55}.journey-detail-current{color:#66837a;font-size:.73rem;font-weight:700;white-space:nowrap}.audit-events-card{max-width:860px;margin-top:1rem}.audit-events-card>.field-help{max-width:none;margin-bottom:1rem}.audit-page-heading .text-link{flex:0 0 auto}@media(max-width:720px){.journey-panel{margin-top:1rem;padding:1rem}.journey-panel-heading{display:block}.journey-panel-description{margin-top:.7rem}.journey-steps{display:grid;grid-template-columns:1fr;overflow:visible;margin-top:1rem;padding-bottom:0}.journey-step{flex:initial}.journey-detail-heading,.audit-page-heading{align-items:flex-start;flex-direction:column;gap:.7rem}.journey-detail-item{grid-template-columns:auto minmax(0,1fr);align-items:start}.journey-detail-item .text-link,.journey-detail-current{grid-column:2}.journey-detail-item .text-link{justify-self:start}.next-action{align-items:stretch;flex-direction:column;gap:1.1rem}.next-action .button-primary{align-self:flex-start}}@media(max-width:480px){.private-content,.journey-panel{width:calc(100% - 1.25rem)}.next-action .button-primary{width:100%}}
