.form-status{font-size:12px;line-height:1.7;color:#775338;margin:15px 0}.form-status:empty{display:none}.account-course{margin:28px 0 35px}.account-course .course-card{grid-template-columns:1fr;min-height:0}.account-course .course-card h3{margin-top:0}.student-loading{padding:35px 0}.account-course .document-row:last-child{border-bottom:0}.account-course .detail-facts{margin:0}.payment-review{padding:15px 18px;background:#eee6d8;margin:16px 0}.basket-sync-note{font-size:11px;margin:14px 0;color:var(--muted)}.unavailable-action{font-size:11px;line-height:1.8;margin-top:20px}.workspace-content{min-width:0}.detail-facts dd{overflow-wrap:anywhere}#connection-status{max-width:800px;margin:25px auto;padding:20px}.settings-group input{max-width:100%}.settings-group .row strong{overflow-wrap:anywhere}.receipt-link{min-height:44px}.signed-out{padding:20px 0}.course-session{display:block;margin:6px 0}.empty-state .button{margin-top:12px}

.social-signin{margin:24px 0}.social-buttons{display:grid;gap:10px}.social-button{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid #aaa79f;border-radius:0;background:#fff;color:#232320;padding:12px 18px;font:inherit;font-size:14px;cursor:pointer}.social-button svg{width:20px;height:20px;flex-shrink:0}.social-button.apple{color:#fff;background:#111;border-color:#111}.social-button:hover{border-color:#232320}.social-button:focus-visible{outline:2px solid #806c51;outline-offset:4px}.social-button:disabled{opacity:.6;cursor:wait}.auth-divider{display:flex;align-items:center;gap:14px;margin:22px 0 4px;color:var(--muted);font-size:11px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#d6d3ca;flex:1}.social-signin[hidden],.social-button[hidden]{display:none}

.account-loading{max-width:1180px;min-height:55vh;margin:0 auto;padding:64px 40px}.account-loading #connection-status{margin:18px 0 0;padding:0;font-size:13px;color:var(--muted)}.loading-rule{display:block;width:56px;height:1px;background:var(--line)}.account-loading .text-button{margin-top:18px}.icon-button:disabled{cursor:wait;opacity:.65}@media(max-width:650px){.account-loading{padding:44px 22px;min-height:65vh}}

.new-student-overview .dashboard-intro{max-width:600px}.new-student-saved{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#ece8df;padding:24px 26px;margin:28px 0 30px}.new-student-saved h2{font-size:30px;margin:5px 0 8px}.new-student-saved p:not(.eyebrow){font-size:12px;line-height:1.7;max-width:510px}.new-student-saved .field-help{font-size:10px!important;margin:8px 0 0}.new-student-saved .button{flex-shrink:0;white-space:nowrap}.new-student-explore{margin:30px 0 0}.new-student-explore .section-top{margin:0 0 18px}.new-student-explore .section-top h2{font-size:30px}.new-student-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.new-student-path{display:flex;flex-direction:column;text-decoration:none;border:1px solid var(--line);min-width:0;background:transparent}.new-student-path>img{width:100%;height:145px;object-fit:cover;display:block}.new-student-path:last-child>img{object-position:50% 28%}.new-student-path>div{padding:18px 17px 20px;display:flex;flex-direction:column;flex:1}.new-student-path .eyebrow{font-size:8px;letter-spacing:.8px}.new-student-path h3{font-size:29px;line-height:1.05;margin:10px 0}.new-student-path .path-description{font-size:11px;line-height:1.75;margin:0 0 20px}.path-action{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;border-top:1px solid var(--line);padding-top:12px;margin-top:auto}.path-action>span{font-size:18px}.new-student-path:hover{border-color:#8c887d}.new-student-help{border-top:1px solid var(--line);padding-top:18px;margin-top:27px;font-size:11px;line-height:1.8;color:var(--muted)}@media(max-width:900px){.new-student-paths{gap:12px}.new-student-path>div{padding:15px 12px}.new-student-path h3{font-size:25px}.new-student-saved{display:block}.new-student-saved .button{margin-top:17px}}@media(max-width:650px){.new-student-saved{padding:20px;margin:25px 0}.new-student-saved h2{font-size:28px}.new-student-saved .button{width:100%}.new-student-paths{grid-template-columns:1fr;gap:14px}.new-student-path{display:grid;grid-template-columns:90px minmax(0,1fr)}.new-student-path>img{height:100%;min-height:160px}.new-student-path>div{padding:16px}.new-student-path h3{font-size:27px;margin:9px 0}.new-student-path .path-description{margin-bottom:13px}.new-student-explore .section-top h2{font-size:28px}.new-student-explore{margin-top:26px}.new-student-help{margin-top:23px;font-size:10px}}

.sidebar-logout{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:44px;margin-top:18px;color:var(--ink);font-size:13px;text-decoration:none}.sidebar-logout svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0}.sidebar-logout:hover{text-decoration:underline;text-underline-offset:5px}.sidebar-logout:focus-visible{outline:2px solid #806c51;outline-offset:4px}@media(max-width:650px){.sidebar-logout{margin:0 22px;padding:12px 0;font-size:12px;border-bottom:1px solid var(--line)}}

.saved-basket-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:20px}

.profile-form .optional-label{color:var(--muted);font-size:11px}.profile-form .field-help{font-size:11px;margin:8px 0 0}.profile-form>.button{margin-top:14px}.profile-form select{max-width:100%}.profile-form button:disabled{opacity:.6;cursor:wait}

.case-label{display:block;font-size:12px;margin:22px 0 8px}.case-guide{margin-top:28px;border-top:1px solid var(--line);padding-top:25px}.case-guide h2,.case-study-card h2{font-size:31px;margin-bottom:15px}.case-guide p{font-size:13px;line-height:1.9;margin-bottom:20px}.case-status{display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;margin:25px 0}.case-study-card{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.case-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.case-upload{border:1px solid var(--line);padding:17px;min-width:0}.case-upload label{font-size:12px;display:block}.case-file-state{font-size:10px;margin:7px 0;color:var(--muted)}.case-upload input{font-size:11px;padding:9px;min-height:44px;max-width:100%}.case-upload .text-button{margin-top:10px}.case-confirm{display:flex;align-items:start;gap:12px;font-size:12px;line-height:1.8;margin-top:26px}.case-confirm input{width:20px;min-height:20px;margin:4px 0;flex-shrink:0}.case-actions{display:flex;gap:20px;flex-wrap:wrap;margin:26px 0}.case-feedback p{white-space:pre-wrap}#student-case-content .field-help{font-size:11px;line-height:1.8}#student-case-content [disabled]{opacity:.6}#case-study-form>input{max-width:560px}#case-course{font-size:14px}@media(max-width:650px){.case-upload-grid{grid-template-columns:1fr}.case-status{gap:10px}.case-guide h2,.case-study-card h2{font-size:28px}.case-actions .button{width:100%}.case-upload input{font-size:16px}}

.case-study-card>summary{display:flex;justify-content:space-between;gap:20px;align-items:center;cursor:pointer;min-height:48px;font:30px var(--serif);padding:4px 0 15px;list-style:none}.case-study-card>summary::-webkit-details-marker{display:none}.case-study-card>summary small{font:11px var(--sans);color:var(--muted)}.case-study-card>summary:after{content:"+";font:25px var(--sans)}.case-study-card[open]>summary:after{content:"−"}.case-study-card>summary:focus-visible{outline:2px solid #806c51;outline-offset:4px}

.saved-course-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:14px}.saved-course-actions .text-link,.saved-course-actions .text-button{margin:0}

.preparation-sections{margin-top:28px}.preparation-block{border-top:1px solid var(--line);padding:28px 0}.preparation-block h2{font:34px/1.12 var(--serif);margin:10px 0 19px}.preparation-block>p:not(.eyebrow){font-size:13px;line-height:1.85;max-width:740px}.preparation-list{padding-left:20px;margin:14px 0 20px;max-width:740px}.preparation-list li{font-size:13px;line-height:1.85;margin:9px 0;padding-left:4px}.preparation-links{display:flex;flex-wrap:wrap;gap:16px 28px}.preparation-pending{background:#ece8df;padding:22px 24px;margin-top:22px}.preparation-pending h3,.preparation-products h3{font:25px/1.2 var(--serif);margin:0 0 12px}.preparation-pending p,.preparation-products p{font-size:12px;line-height:1.8;margin:9px 0 16px}.preparation-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:25px 0}.preparation-products article{border:1px solid var(--line);padding:22px;min-width:0}.preparation-links .text-link,.preparation-pending .text-link,.preparation-products .text-link{margin:0;min-height:44px;display:inline-flex;align-items:center;gap:5px}#preparation-course{width:100%;max-width:100%;font-size:13px;white-space:nowrap;text-overflow:ellipsis}.preparation-block .text-link:focus-visible{outline:2px solid #806c51;outline-offset:5px}@media(max-width:650px){.preparation-block{padding:25px 0}.preparation-block h2{font-size:31px}.preparation-products{grid-template-columns:1fr}.preparation-pending{padding:20px}.preparation-list li,.preparation-block>p:not(.eyebrow){font-size:12px}.preparation-links{align-items:flex-start;flex-direction:column;gap:12px}}
.preparation-sections .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(min-width:651px){.sidebar{padding-top:0}.sidebar>.eyebrow{display:flex;align-items:center;min-height:32px;margin:0;line-height:1.7}.sidebar nav{margin-top:28px}.workspace-top{align-items:center;min-height:32px;margin:0 0 28px}.workspace-top>.eyebrow{margin:0;line-height:1.7}}
.message-history{display:grid;gap:18px;margin:24px 0 36px}.student-message{padding:22px;border:1px solid #d6d3c9;max-width:88%;background:#fff}.student-message.message-own{margin-left:auto;background:#efede5}.student-message header{display:flex;gap:18px;flex-wrap:wrap;align-items:baseline;font-size:13px}.student-message time{color:#6a695f;font-size:11px}.student-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:0;line-height:1.8}.message-compose textarea{display:block;width:100%;box-sizing:border-box;padding:16px;background:transparent;border:1px solid #b6b3a8;color:inherit;font:inherit;line-height:1.7;margin-top:12px;resize:vertical}.message-toolbar{display:flex;justify-content:flex-end}.message-unread{font-size:10px;line-height:1.4;border:1px solid currentColor;border-radius:20px;padding:1px 6px}.message-unread[hidden]{display:none!important}@media(max-width:600px){.student-message{max-width:100%;padding:17px}.student-message header{gap:10px}}

.student-payment-controls{margin-top:28px}.student-payment-controls h2{font-size:29px;margin:12px 0 20px}.payment-card-summary{font-size:13px;line-height:1.8}.payment-management-actions{display:flex;gap:16px;flex-wrap:wrap;margin:22px 0}.student-payment-dialog{margin:auto;width:calc(100% - 32px);max-width:570px;max-height:90vh;overflow:auto;border:1px solid #c8c4b8;background:#f7f5f0;color:#252622;padding:30px;font:14px/1.8 Arial,sans-serif}.student-payment-dialog::backdrop{background:rgba(25,27,23,.55)}.student-payment-dialog-head{display:flex;align-items:start;justify-content:space-between;gap:20px}.student-payment-dialog h2{font:30px/1.25 Georgia,serif;margin:0 0 20px}.student-payment-dialog p{margin:15px 0}.student-payment-dialog .field-help{font-size:12px;line-height:1.8}.student-payment-dialog label{display:block;font-size:12px;margin:18px 0 8px}.student-payment-dialog input:not([type=checkbox]){display:block;width:100%;box-sizing:border-box;padding:14px;background:#fff;border:1px solid #c8c4b8;color:inherit;font:14px Arial,sans-serif}.student-payment-dialog .case-confirm{display:flex;align-items:start;gap:12px;line-height:1.8;margin:22px 0}.student-payment-dialog .case-confirm input{width:20px;height:20px;flex-shrink:0;margin-top:4px}.student-payment-dialog .button{display:inline-flex;align-items:center;justify-content:center;padding:15px 20px;border:1px solid #252622;background:transparent;color:inherit;text-decoration:none;cursor:pointer}.student-payment-dialog .button.dark{background:#252622;color:#f7f5f0}.student-payment-dialog .full{display:flex;width:100%;box-sizing:border-box}.student-payment-dialog .text-button{background:none;color:inherit;border:0;padding:4px;cursor:pointer;}.student-payment-dialog :focus-visible{outline:2px solid #756b50;outline-offset:4px}.student-payment-dialog [disabled]{opacity:.5;cursor:default}.student-square-card{margin:24px 0;min-height:90px}.student-payment-dialog .form-status{color:#6d4437;white-space:normal}@media(max-width:650px){.payment-management-actions{display:grid;gap:12px}.payment-management-actions .button{width:100%;box-sizing:border-box}.student-payment-dialog{padding:22px}.student-payment-dialog h2{font-size:27px}.student-payment-dialog input:not([type=checkbox]){font-size:16px}}

/* Stable student-portal loading and restrained motion. */
html{scroll-behavior:auto;scrollbar-gutter:stable}
body{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
body>.header,body>footer{flex-shrink:0}
body>footer{width:100%}
#main{flex:1;min-height:55svh}
.account-loading{width:100%;flex:1;min-height:55svh}
#connection-status{min-height:24px}
#member-content{min-height:420px}
.student-loading{min-height:420px}
#member-content[aria-busy=true]{cursor:progress}
.account-menu:not([hidden]),dialog[open]{animation:student-soft-reveal 160ms ease-out}
.button,.icon-button,.text-button,.sidebar nav a{transition:background-color 150ms ease,color 150ms ease,border-color 150ms ease}
@keyframes student-soft-reveal{from{opacity:0}to{opacity:1}}
@media(max-width:650px){body>footer{width:calc(100% - 44px)}.logo{flex-shrink:0}.sidebar nav{min-height:52px}.workspace-top{min-height:30px;align-items:center}.workspace-top>.eyebrow{margin:0}.workspace-top .text-button{min-height:30px}}
@media(prefers-reduced-motion:reduce){.account-menu:not([hidden]),dialog[open]{animation:none}.button,.icon-button,.text-button,.sidebar nav a{transition:none}}

@media(max-width:650px){.auth input,.simple-auth input,.profile-form input,.profile-form select,.message-compose textarea{font-size:16px}}

.course-session .session-date,.course-session .session-time{display:block}.course-session .session-time{margin-top:4px}.course-session+.course-session{margin-top:16px}.training-preparation-list{margin:20px 0 0;padding-left:20px;font-size:13px;line-height:1.7}.training-preparation-list li+li{margin-top:14px}
.zoom-session .session-local-time{display:block;margin-top:12px;font-size:13px;line-height:1.7;color:#252622}.session-local-time strong{font-weight:500}.zoom-session .session-timezone-note{display:block;font-size:11px;line-height:1.7;color:#66665f;margin-top:3px}.session-calendar{display:block;margin-top:8px}.session-calendar .text-button{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:4px 0;text-decoration:underline;text-underline-offset:4px;font-size:13px}.session-calendar .text-button:focus-visible{outline:2px solid #756b50;outline-offset:4px}.zoom-session+.zoom-session{margin-top:24px;padding-top:20px;border-top:1px solid #d6d3c9}

.prep-grid p,.training-preparation-list{font-family:inherit;font-size:13px;font-weight:400;line-height:1.7;color:#252622}
@media(max-width:650px){.prep-grid p,.training-preparation-list{font-size:12px}}

.student-benefits-prompt{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #d6d3c9;border-bottom:1px solid #d6d3c9;padding:26px 0;margin:30px 0}.student-benefits-prompt h2{font-size:26px;margin:8px 0}.student-benefits-prompt p{font-size:13px;margin:8px 0}.student-benefits-prompt .eyebrow{font-size:10px}.student-benefits-prompt .button{flex-shrink:0}.student-discount-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}.student-discount-card{padding:28px;border:1px solid #d6d3c9;min-width:0;display:flex;flex-direction:column}.student-discount-card>.eyebrow{font-size:10px;line-height:1.6;margin:0 0 14px}.student-discount-card h2{font-size:34px;margin:0 0 14px}.student-discount-card .discount-description{font-size:13px;line-height:1.7;min-height:44px;margin:0 0 22px}.discount-code{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px;background:#ece9e0;margin:0 0 22px;flex-wrap:wrap}.discount-code small{display:block;font-size:10px;margin-bottom:6px;color:#66665f}.discount-code strong{font-family:inherit;font-size:15px;font-weight:500;letter-spacing:.06em;overflow-wrap:anywhere}.discount-code .text-button{text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.discount-shop-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto}.discount-shop-links .button{display:inline-flex;align-items:center;gap:10px;padding:13px 17px}.discount-shop-links svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5}.discount-fallback{margin-top:22px;border-top:1px solid #d6d3c9;padding-top:18px}.discount-fallback summary{font-size:12px;cursor:pointer;line-height:1.7}.discount-fallback p{font-size:12px;line-height:1.7;margin:15px 0}.discount-fallback .discount-code{padding:13px;margin:0}.student-discount-card .discount-note{font-size:12px;line-height:1.7;margin:18px 0 0}.discount-terms{margin:28px 0;font-size:12px;line-height:1.8}
@media(max-width:800px){.student-discount-grid{grid-template-columns:1fr}.student-benefits-prompt{align-items:flex-start;flex-direction:column}}@media(max-width:650px){.student-discount-card{padding:23px}.student-discount-card h2{font-size:32px}.student-discount-grid{gap:18px}.discount-code{padding:16px}.discount-shop-links{display:grid}.discount-shop-links .button{justify-content:space-between}}

/* Shared charcoal actions throughout the student workspace. */
.workspace .button{background:#252622;color:#f7f5f0;border-color:#252622}.workspace .button:hover,.workspace .button:active{background:#3b3c36;border-color:#3b3c36;color:#fff}.workspace .button:focus-visible{outline:2px solid #756b50;outline-offset:4px}.discount-code .text-button{display:inline-flex;justify-content:center;align-items:center;padding:9px 12px;background:#252622;color:#f7f5f0;border:1px solid #252622;text-decoration:none;min-height:36px}.discount-code .text-button:hover,.discount-code .text-button:active{background:#3b3c36;border-color:#3b3c36;color:#fff}.discount-fallback h3{font-family:inherit;font-size:12px;font-weight:500;line-height:1.7;margin:0 0 12px}.sidebar-help .text-button{padding:9px 12px;margin-left:-12px;border:1px solid transparent;transition:background-color 150ms ease,color 150ms ease,border-color 150ms ease}.sidebar-help .text-button:hover,.sidebar-help .text-button:focus-visible,.sidebar-help .text-button:active{background:#252622;border-color:#252622;color:#f7f5f0}.account-course>a.button[href^="mailto:"]:hover,.account-course>a.button[href^="mailto:"]:focus-visible,.account-course>a.button[href^="mailto:"]:active{background:#252622;border-color:#252622;color:#f7f5f0}

/* Consistent editorial card rows keep every code and shop action aligned. */
.student-discount-card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-rows:58px 54px 100px 108px 112px auto;align-content:start}
.student-discount-card>.discount-brand-mark{position:absolute;z-index:-1;right:28px;top:25px;width:33.333%;height:58px;object-fit:contain;object-position:right center;opacity:.3;filter:grayscale(1);pointer-events:none;user-select:none}
.student-discount-card>.eyebrow{min-height:44px;padding-right:40%;display:flex;align-items:center;align-self:start;margin:0}
.student-discount-card h2{align-self:start;margin:0}
.student-discount-card .discount-description{min-height:0;margin:0;align-self:start}
.student-discount-card>.discount-code{flex-wrap:nowrap;align-self:start;min-height:88px;box-sizing:border-box;margin:0;gap:10px}
.student-discount-card>.discount-code>span{min-width:0}
.student-discount-card>.discount-code small{line-height:1.4;min-height:28px}
.student-discount-card>.discount-code .text-button{flex-shrink:0;padding:9px 10px;}
.student-discount-card>.discount-code strong{font-size:14px;letter-spacing:.025em}
.student-discount-card>.discount-shop-links{display:flex;flex-direction:column;align-items:stretch;align-self:start;gap:10px;margin:0}
.student-discount-card .discount-shop-links .button{justify-content:space-between;margin:0;min-height:46px;box-sizing:border-box}
.student-discount-card .discount-card-notes{border-top:1px solid #d6d3c9;padding-top:15px}
.student-discount-card .discount-card-notes .discount-note{margin:0 0 12px}
@media(max-width:650px){.student-discount-card>.discount-brand-mark{right:23px;top:22px}.student-discount-card{grid-template-rows:58px 50px 90px 108px auto auto}.student-discount-card>.discount-shop-links{margin-bottom:20px}}

.student-discount-card>.discount-brand-mark[src$="gellifique.png"]{filter:brightness(0)}

/* Align the artwork edge, accounting for each original asset's clear margin. */
.student-discount-card{--discount-logo-inset:28px}
.student-discount-card>.discount-brand-mark{right:calc(var(--discount-logo-inset) - var(--discount-logo-clear-edge,0%));top:54px;height:auto;transform:translateY(-50%)}
.student-discount-card>.discount-brand-mark[src$="onail.png"]{--discount-logo-clear-edge:3.3333%}
.student-discount-card>.discount-brand-mark[src$="tafs.png"]{--discount-logo-clear-edge:5%}
.student-discount-card>.discount-brand-mark[src$="gellifique.png"]{--discount-logo-clear-edge:.6337%}
.student-discount-card>.discount-brand-mark[src$="staleks-classic.svg"]{--discount-logo-clear-edge:.2049%}
@media(max-width:650px){.student-discount-card{--discount-logo-inset:23px}.student-discount-card>.discount-brand-mark{top:51px}}

.kit-region{margin:28px 0}.kit-region [role=group]{display:flex;gap:12px;flex-wrap:wrap}.kit-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:25px 0 32px}.kit-categories .button{text-align:left;padding:17px;justify-content:flex-start}.kit-category-content{border-top:1px solid #d6d3c9;padding-top:30px}.kit-category-content h3{font-size:32px}.kit-item{padding:25px 0;border-bottom:1px solid #d6d3c9}.kit-item h4{font:600 19px/1.5 var(--sans);margin:0 0 10px}.kit-item .text-link{display:inline-block;margin:12px 0}.kit-item .field-help{font-size:14px}.kit-item p{margin:8px 0}.kit-categories .dark{background:#252622;color:#f7f5f0}@media(max-width:700px){.kit-categories{grid-template-columns:1fr 1fr}.kit-categories .button{padding:13px}.kit-region .button{}}@media(max-width:390px){.kit-categories{grid-template-columns:1fr}}
.kit-region label{display:block;margin-top:20px}.kit-region select{font:inherit;font-size:15px;max-width:100%;padding:15px 18px;border:1px solid #b7b3aa;background:transparent;color:inherit}.kit-category-content,.kit-region{scroll-margin-top:140px}
.kit-categories .button[aria-pressed=false],.kit-region .button[aria-pressed=false]{background:transparent;color:#252622;border:1px solid #c9c6bc}.kit-categories .button[aria-pressed=true],.kit-region .button[aria-pressed=true]{background:#252622;color:#f7f5f0;border:1px solid #252622}

/* Compact linked Square invoices: one amount and status per payment. */
.payment-course{margin:28px 0 32px}.payment-course>h2{font:500 19px/1.4 var(--sans);margin:0 0 18px}.linked-square-payments .eyebrow{margin:0 0 6px}.linked-invoice-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px 20px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.linked-invoice-copy strong,.linked-invoice-amount strong{font:500 14px/1.5 var(--sans)}.linked-invoice-copy p,.linked-invoice-status{font:12px/1.5 var(--sans);color:var(--muted)}.linked-invoice-copy p{margin:3px 0 0}.linked-invoice-amount{text-align:right;display:grid;gap:3px}.linked-invoice-row .button{min-height:38px;padding:9px 14px;gap:12px;margin:0}.linked-invoice-note{grid-column:1/-1;font:12px/1.6 var(--sans);color:var(--muted);max-width:540px}.linked-invoice-history{margin:16px 0 0;border-bottom:1px solid var(--line)}.linked-invoice-history summary{cursor:pointer;padding:12px 0;font:13px/1.6 var(--sans)}.linked-invoice-history summary span{color:var(--muted);margin-left:7px}.linked-invoice-history .linked-invoice-row:last-child{border-bottom:0}.linked-square-payments>.field-help{margin-top:12px}@media(max-width:600px){.payment-course>h2{font-size:17px}.linked-invoice-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 0}.linked-invoice-row .button{grid-column:1/-1;justify-self:start}.linked-invoice-copy strong,.linked-invoice-amount strong{font-size:13px}}

.payment-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;margin:24px 0 32px;background:#eeece4;border-left:3px solid #716c5d}.payment-summary.has-overdue{background:#f1e7df;border-left-color:#8b684c}.payment-summary.is-paid{background:#e9ece3;border-left-color:#657052}.payment-summary h2{font:500 25px/1.3 var(--sans);margin:6px 0 8px}.payment-summary p:not(.eyebrow){font-size:12px;line-height:1.7}.payment-summary .button{flex-shrink:0;min-height:42px;}.payment-course{scroll-margin-top:130px}.payment-course .row{padding:12px 0}.payment-course .lined{padding-top:16px;margin-top:12px}.payment-course .lined>h3{font:500 15px/1.5 var(--sans);margin:0 0 10px}.course-payment-balance{font-size:13px}@media(max-width:600px){.payment-summary{display:block;padding:18px}.payment-summary h2{font-size:22px}.payment-summary .button{margin-top:14px}}

/* Completed courses remain available without crowding the overview. */
.past-courses{margin-top:48px;padding-top:28px;border-top:1px solid #d5d1c7}
.past-course{border-bottom:1px solid #d5d1c7}
.past-course>summary{cursor:pointer;padding:22px 26px 22px 0;font-size:17px;line-height:1.45}
.past-course>summary small{display:block;margin-top:7px;font-size:13px;color:#69685f}
.past-course-body{padding:0 0 26px}.past-course-body .actions{display:flex;gap:20px;flex-wrap:wrap}
.past-course-body .course-session{margin-bottom:14px}

/* Partner benefits replace detailed instalments on Overview only. */
.two-column>.overview-benefits{margin:0;padding:26px 0 0;border-bottom:0;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:20px}.two-column>.overview-benefits .eyebrow{margin-top:0}.two-column>.overview-benefits .button{max-width:100%}

/* Course-grouped payment records and optional full schedule. */
.tidy-payment-records{margin-top:34px}.tidy-payment-records>h2{font-size:30px;margin-bottom:10px}.payment-course-records{border-bottom:1px solid #d5d1c7}.payment-course-records>summary,.remaining-payment-schedule>summary{cursor:pointer;padding:22px 26px 22px 0;font-size:17px;line-height:1.5}.payment-course-records>summary small,.remaining-payment-schedule>summary small{display:block;font-size:12px;color:#69685f;margin-top:6px}.payment-record{padding:22px 0;border-top:1px solid #e1ded5;display:flex;justify-content:space-between;align-items:center;gap:20px}.record-line{display:flex;gap:15px;align-items:baseline}.record-line strong{font-size:20px}.record-line span,.payment-record p{font-size:13px}.payment-record p{margin:5px 0}.payment-record .record-detail{font-size:12px;color:#69685f}.record-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.record-actions .button{padding:12px 16px}.remaining-payment-schedule{margin-top:26px;border-top:1px solid #d5d1c7;border-bottom:1px solid #d5d1c7}.remaining-payment-schedule .quiet-note{padding-bottom:15px}@media(max-width:650px){.payment-record{align-items:flex-start;flex-direction:column;gap:12px}.record-actions{justify-content:flex-start}.payment-course-records>summary{font-size:16px}}

.course-join-action{margin:20px 0 0}

.detail-facts .course-join-action{margin:0}

.account-course .training-preparation-action{margin:24px 0 0}

/* One shared action style across all student courses, tabs and dialogs. */
body :is(.button,.text-button,.text-link,.social-button),body .workspace :is(.button,.text-button,.text-link){font:400 12px/1.5 var(--sans);text-align:left;justify-content:flex-start;letter-spacing:normal}
body :is(.button,.text-button,.text-link,.social-button)>span{font:inherit}
body .button{gap:18px;max-width:100%;white-space:normal}
.action-arrow{display:inline-block;width:14px;height:14px;flex:0 0 14px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;vertical-align:-2px}
.button .action-arrow{width:14px;height:14px;margin-left:auto}
.text-link .action-arrow,.text-button .action-arrow{margin-left:5px}
.path-action .action-arrow{vertical-align:middle}

/* A single vertical rhythm for actions, with compact gaps inside button groups. */
:root{--student-action-space:24px;--student-action-group-space:12px}
.workspace :is(p,h2,h3,h4,ul,ol):has(+.button,+.text-link,+.text-button,+p>.button,+.actions,+.preparation-links,+.case-actions,+.payment-management-actions){margin-bottom:0}
.workspace :is(p,h2,h3,h4,ul,ol)+:is(.button,.text-link,.text-button),
.workspace p:has(>.button:only-child),
.workspace :is(.training-preparation-action,.preparation-links,.case-actions,.payment-management-actions,.saved-course-actions,.saved-basket-actions){margin-top:var(--student-action-space)}
.workspace .detail-facts dd>p.course-join-action{margin:0}
.workspace .detail-facts dd>p.course-join-action+.course-join-action{margin-top:var(--student-action-group-space)}
.workspace :is(.actions,.preparation-links,.case-actions,.payment-management-actions,.saved-course-actions,.saved-basket-actions,.record-actions,.discount-shop-links),
.student-payment-dialog .dialog-actions{gap:var(--student-action-group-space)}
.workspace :is(.actions,.preparation-links,.case-actions,.payment-management-actions,.saved-course-actions,.saved-basket-actions,.record-actions)>.button{margin:0}
.workspace .kit-region p:has(+[role=group]){margin-bottom:0}
.workspace .kit-region [role=group]{margin-top:var(--student-action-space)}
.workspace .kit-categories{gap:var(--student-action-group-space);margin-top:var(--student-action-space)}
.workspace .two-column>.overview-benefits{gap:var(--student-action-space)}
.workspace .overview-benefits>div>p:last-child{margin-bottom:0}
.workspace :is(.empty-state,.new-student-saved) .button,
.auth form>.button,.simple-auth form>.button,.profile-form>.button,
.case-upload .text-button,.saved-basket>.button,.sidebar-help .text-button{margin-top:var(--student-action-space)}
.auth form>:has(+.button),.simple-auth form>:has(+.button),.profile-form>:has(+.button){margin-bottom:0}
@media(max-width:650px){
 .workspace :is(.document-row,.payment-record){gap:var(--student-action-space)}
 .workspace .payment-summary>.button{margin-top:var(--student-action-space)}
 .workspace .student-benefits-prompt{gap:var(--student-action-space)}
}

.workspace .message-compose>.field-help:has(+.form-status:empty){margin-bottom:0}
.workspace .message-compose>.form-status:empty+.button{margin-top:var(--student-action-space)}

/* Matching primary action dimensions in every student tab and payment dialog. */
:root :is(.workspace,.student-payment-dialog) .button{min-height:48px;padding:13px 22px}
:root .student-payment-dialog .button{background:#252622;border-color:#252622;color:#f7f5f0}

.studio-visit{margin-top:32px}
.course-followup{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}
.studio-visit p+p,.course-followup p+p{margin-top:12px}

/* Keep the desktop learning paths in equal frames with deliberate subject crops. */
@media(min-width:651px){.new-student-path>img{height:auto;aspect-ratio:3/2;object-fit:cover;object-position:50% 50%;flex:none}.new-student-path:last-child>img{object-position:50% 20%}}

/* Password guidance stays compact, with text as well as colour. */
.password-strength{margin:12px 0 0;--strength-colour:#d6d3c9;--strength-width:0%}.password-strength-track{height:4px;background:#dedbd2;overflow:hidden}.password-strength-track>span{display:block;height:100%;width:var(--strength-width);background:var(--strength-colour);transition:width .18s ease,background-color .18s ease}.password-strength-copy{display:flex;justify-content:space-between;flex-wrap:wrap;gap:3px 16px;margin-top:7px;font:400 11px/1.6 var(--sans);color:var(--muted)}.password-strength-label{font-weight:500}.password-strength[data-score="1"]{--strength-width:25%;--strength-colour:#a35342}.password-strength[data-score="2"]{--strength-width:50%;--strength-colour:#997531}.password-strength[data-score="3"]{--strength-width:75%;--strength-colour:#7b8050}.password-strength[data-score="4"]{--strength-width:100%;--strength-colour:#4b765c}dialog .password-strength-copy{font-size:11px}@media(prefers-reduced-motion:reduce){.password-strength-track>span{transition:none}}

.case-study-card>summary .case-study-progress.is-complete{color:#3e5740;font-weight:600}.case-completion-total{font-size:12px;line-height:1.8;margin:22px 0}.case-submission-confirmation{margin:25px 0;padding:24px;border:1px solid #b7c3b2;background:#f0f3ec}.case-submission-confirmation h2{font:28px/1.25 var(--serif);margin:0 0 16px}.case-submission-confirmation p{font-size:13px;line-height:1.8;margin:12px 0}@media(max-width:650px){.case-study-card>summary .case-study-progress{max-width:45%;text-align:right;line-height:1.6}.case-submission-confirmation{padding:20px}}
