@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-regular.ttf');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-bold.ttf');font-weight:600 800;font-display:swap}:root{--navy:#192b41;--gold:#c6975c;--paper:#f6f4ef;--line:#d9dddf;--muted:#64717c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--navy);font:15px/1.7 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a.btn{cursor:pointer;border:1px solid var(--navy);background:var(--navy);color:white;padding:12px 18px;font-weight:600;display:inline-block}button.secondary,a.secondary{background:transparent;color:var(--navy)}button:disabled{opacity:.5;cursor:wait}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.wrap{width:min(1240px,calc(100% - 56px));margin:auto}header{border-bottom:1px solid var(--line);background:var(--paper)}.nav{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0}.logo{width:220px;max-width:100%}nav{display:flex;gap:25px;align-items:center;font-size:13px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:2px;font-weight:700;color:#8f6739}h1,h2,h3{line-height:1.2;letter-spacing:-1px}h1{font-size:clamp(36px,4.6vw,64px);margin:20px 0}h2{font-size:32px}h3{font-size:23px}p{margin:0 0 18px}.intro{max-width:680px;color:var(--muted);font-size:18px}.hero{padding:65px 0 45px}.gold{color:#a77b46}.buyer-bar{display:flex;gap:20px;justify-content:space-between;align-items:center;border-block:1px solid var(--line);padding:15px 0;font-size:13px}.buyer-bar button{padding:8px 12px;font-size:12px}.catalog-layout{display:grid;grid-template-columns:240px 1fr;gap:45px;padding:35px 0 80px}.filter-box{border-bottom:1px solid var(--line);padding:0 0 23px;margin-bottom:23px}label{display:block;font-weight:600;margin:0 0 18px;font-size:13px}input,select,textarea{background:white;color:var(--navy);border:1px solid #bfc7ce;padding:11px;width:100%;display:block;margin-top:6px;border-radius:0}textarea{min-height:110px;resize:vertical}label small,.help{font-size:11px;color:var(--muted);display:block;font-weight:400;margin-top:6px}.results-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.results-top select{width:220px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.course-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}.course-card img{width:100%;height:220px;object-fit:contain;background:#e9e9e3}.cover-empty{height:220px;background:linear-gradient(135deg,#192b41,#324c66);display:flex;align-items:center;padding:30px;color:#e4c398;font-size:25px;font-weight:600}.card-copy{padding:25px;display:flex;flex-direction:column;flex:1}.card-copy h3{margin:12px 0}.card-copy p{font-size:13px;color:var(--muted)}.tags{font-size:11px;color:#64717c;display:flex;gap:12px;flex-wrap:wrap}.price{font-weight:700;font-size:25px;margin-top:auto;padding-top:25px}.price small{font-weight:400;display:block;font-size:11px;color:var(--muted)}.card-copy a.btn{margin-top:18px;text-align:center}.empty{padding:60px 35px;background:white;border:1px solid var(--line);text-align:center;grid-column:1/-1}.empty h2{font-size:27px}.empty p{color:var(--muted)}.contact-link{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px}footer{background:var(--navy);color:white;padding:40px 0;font-size:11px}.foot{display:flex;justify-content:space-between;gap:25px;align-items:center}footer .logo{width:185px}footer p{margin:10px 0 0;color:#c9d0d6}.overlay{position:fixed;inset:0;background:#12223599;z-index:100;display:grid;place-items:center;padding:20px}.overlay[hidden]{display:none}.dialog{background:var(--paper);max-width:620px;padding:40px;border-top:4px solid var(--gold)}.dialog h2{font-size:30px}.dialog p{color:var(--muted)}.buyer-options{display:grid;grid-template-columns:1fr 1fr;gap:15px}.buyer-options button{text-align:left;padding:20px}.buyer-options small{display:block;font-weight:400;font-size:11px;margin-top:8px}.detail{padding:50px 0 85px}.breadcrumbs{font-size:11px;color:var(--muted);margin-bottom:30px}.detail-top{display:grid;grid-template-columns:1.4fr .75fr;gap:55px;align-items:start}.detail h1{font-size:48px}.enrol-box{padding:25px;background:#fff;border-top:3px solid var(--gold);position:sticky;top:25px}.enrol-box img{width:100%;height:220px;object-fit:contain}.enrol-box .price{margin-bottom:20px}.enrol-box a.btn{display:block;text-align:center}.facts{display:grid;grid-template-columns:repeat(2,1fr);margin:30px 0;border-top:1px solid var(--line)}.fact{padding:15px 10px 15px 0;border-bottom:1px solid var(--line)}.fact small{display:block;color:var(--muted)}.prose{max-width:780px}.prose h2{font-size:28px;margin-top:42px}.prose h3{margin-top:25px;font-size:22px}.gallery{display:flex;gap:15px;overflow:auto}.gallery img{width:260px;height:190px;object-fit:contain;background:white}.trainer{display:flex;gap:20px;margin:20px 0}.trainer img{width:90px;height:100px;object-fit:cover}.trainer strong{font-size:18px}.trainer p{color:var(--muted)}.admin-layout{display:grid;grid-template-columns:280px 1fr;gap:35px;padding:30px 0}.admin-list button{display:block;text-align:left;width:100%;margin-bottom:10px;background:white;color:var(--navy)}.admin-list small{display:block;color:var(--muted);font-size:10px}.admin-list button.active{border-left:4px solid var(--gold)}.admin-editor{min-width:0}.fieldgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.admin-editor details{border:1px solid var(--line);padding:20px;margin:18px 0;background:#fff}.admin-editor summary{font-size:18px;font-weight:700;cursor:pointer;margin-bottom:15px}.wide{grid-column:1/-1}.save-actions{position:sticky;bottom:0;background:var(--paper);padding:15px 0;border-top:1px solid var(--line);display:flex;gap:10px;flex-wrap:wrap}.message{padding:15px;margin-bottom:15px;background:#e7eee8}.message.error{background:#f6e4df}.row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}.image-preview{max-width:240px;height:150px;object-fit:contain;background:#eee}.trainer-form{border-block:1px solid var(--line);padding:20px 0;margin:20px 0}.draft-tag{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.preview-frame{width:100%;height:80vh;border:0}.admin-preview{position:fixed;inset:3vh 3vw;background:white;z-index:200;padding:15px;border:1px solid var(--line);box-shadow:0 0 0 100vmax #0007}.admin-preview[hidden]{display:none}.admin-preview button{margin-bottom:12px}@media(max-width:800px){.catalog-layout,.detail-top,.admin-layout{grid-template-columns:1fr;gap:25px}.grid{grid-template-columns:1fr 1fr}.filters{display:grid;grid-template-columns:1fr 1fr;gap:15px}.filters h2,.filters button{grid-column:1/-1}.filter-box{margin:0}.detail h1{font-size:38px}.enrol-box{position:static}.nav{flex-wrap:wrap}.foot{align-items:flex-start;flex-direction:column}.logo{width:190px}.admin-list{max-height:300px;overflow:auto}}@media(max-width:520px){.wrap{width:calc(100% - 32px)}.grid,.fieldgrid,.buyer-options{grid-template-columns:1fr}.dialog{padding:25px}.buyer-bar{align-items:flex-start;flex-direction:column;gap:10px}.filters{grid-template-columns:1fr 1fr}.results-top{align-items:flex-start;flex-direction:column}.hero{padding-top:40px}nav{gap:15px;font-size:11px}.detail h1{font-size:34px}}
[hidden]{display:none!important}.full{grid-column:1/-1}.admin-layout{display:grid;grid-template-columns:240px 1fr;gap:32px;margin-bottom:80px}.admin-list>button{width:100%;margin-bottom:18px}.course-list-item{display:block;width:100%;text-align:left;margin:8px 0;padding:16px!important}.course-list-item small{display:block;margin-top:7px}.course-list-item[aria-current]{border-color:#c6975c;background:#eee5d6}.fieldgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:24px 0}.fieldgrid label{display:block}.fieldgrid input,.fieldgrid textarea,.fieldgrid select{display:block;width:100%;margin-top:8px}.fieldgrid small{display:block;font-weight:400;color:#69717a;margin-top:8px}.fieldgrid textarea{resize:vertical}.admin-editor details{border-top:1px solid #d5d5d0;padding:22px 0}.admin-editor summary{font-size:20px;cursor:pointer;font-weight:650}.save-actions{position:sticky;bottom:0;background:#f6f4ef;padding:18px 0;display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid #d5d5d0}.save-actions small{width:100%}.trainer-edit{padding:20px;border:1px solid #d5d5d0;margin-bottom:15px}.trainer-edit label{margin-bottom:15px}.admin-thumb{max-height:180px;max-width:100%;object-fit:contain}.message:not(:empty){background:#e3ecdf;padding:18px;margin-bottom:24px}.message.error{background:#f8ded8}@media(max-width:800px){.admin-layout{grid-template-columns:1fr}.fieldgrid{grid-template-columns:1fr}}

@media(max-width:800px){.nav{flex-wrap:wrap}nav{flex-wrap:wrap;gap:12px}.foot{flex-wrap:wrap}}
.course-share{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border-top:1px solid #dcd8cf;margin-top:22px;padding-top:18px}.course-share>span:first-child{flex-basis:100%;font-size:13px;font-weight:600;margin-bottom:2px}.course-share .course-share-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:10px;margin:0;border:1px solid #d0cdc5;border-radius:50%;background:transparent;color:#192b41;cursor:pointer;text-decoration:none}.course-share-button svg{width:20px;height:20px}.course-share .course-share-button:hover{background:#192b41;color:#fff;border-color:#192b41}.course-share .course-share-button:focus-visible{outline:2px solid #c6975c;outline-offset:3px}.course-share-status{flex-basis:100%;font-size:12px;min-height:1.5em}.course-share-fallback{width:100%;font-size:12px}

/* Compact course cards: full-width 16:9 cover, reduced type and spacing. */
.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),340px));gap:20px}.course-card{width:100%;max-width:340px}.course-card>a:first-child{display:block;line-height:0;overflow:hidden}.course-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:transparent}.cover-empty{height:auto;min-height:165px;aspect-ratio:16/9;font-size:21px;padding:20px}.card-copy{padding:18px}.card-copy h3{font-size:20px;line-height:1.25;margin:10px 0}.card-copy p{font-size:12px;line-height:1.6;margin-bottom:14px}.card-copy .tags{gap:6px 10px;font-size:10px}.card-copy .price{font-size:23px;padding-top:18px}.card-copy a.btn{padding:10px 14px;font-size:13px;margin-top:14px}.enrol-box img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;max-height:none}@media(max-width:520px){.grid{grid-template-columns:minmax(0,340px)}}

/* Shared institutional navigation and compact, accessible mobile catalog. */
.site-chrome .nav{padding:16px 0;gap:20px;flex-wrap:wrap}.site-chrome a.logo{display:block;width:190px;line-height:0}.site-chrome .logo img{width:100%;height:auto}.site-chrome nav{flex-wrap:wrap;gap:12px 18px;font-size:12px}.site-chrome .menu{display:none}.site-chrome .portal{border:1px solid var(--line);border-radius:8px;padding:8px 12px}.site-footer{background:var(--navy);color:#fff;padding:38px 0 22px}.site-footer .logo{display:block;width:190px}.site-footer .logo img{width:100%;height:auto}.footer-top{display:flex;justify-content:space-between;gap:30px}.footer-top p{font-size:12px;margin-top:18px}.site-footer nav{flex-wrap:wrap}.footer-bottom{border-top:1px solid #ffffff30;margin-top:25px;padding-top:18px;display:flex;flex-wrap:wrap;gap:12px;font-size:11px}.legal-links{width:min(1240px,calc(100% - 56px));margin:18px auto 0;font-size:12px;gap:20px}.legal-links a{text-decoration:underline}.catalog-filters>summary{display:none}.catalog-filters .filters{position:static}.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),306px));gap:18px}.course-card{max-width:306px;border-radius:12px;overflow:hidden}.card-copy{padding:16px}.card-copy h3{font-size:19px}.card-copy .price{font-size:22px}.course-date{font-size:13px;font-weight:700;color:var(--navy);background:#eee5d6;border-radius:7px;padding:8px 10px;margin-bottom:14px;line-height:1.4}.enrol-box,.dialog,.fact,.empty{border-radius:12px}input,select,textarea,button,a.btn{border-radius:8px}button,a.btn{min-height:44px}.enrol-box{padding:22px}.buyer-bar button{min-height:44px}.enrol-box img{border-radius:8px}.shop-fields small{display:block;line-height:1.5;margin-top:6px}
@media(max-width:1100px){.site-chrome .nav{flex-wrap:wrap}.site-chrome .menu{display:block;margin-left:auto;background:transparent;color:var(--navy);padding:8px 12px}.site-chrome nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}.site-chrome nav.is-open{display:flex}.site-chrome nav a{padding:10px 8px;min-height:44px;border-top:1px solid var(--line)}.site-chrome .portal{margin-top:8px}.site-chrome .nav{gap:10px}}
@media(max-width:800px){.site-chrome .nav{padding:12px 0}.site-chrome a.logo{width:165px}.catalog-layout{gap:22px;padding-top:22px}.catalog-filters{border:1px solid var(--line);border-radius:10px;padding:12px}.catalog-filters>summary{display:list-item;font-weight:700;cursor:pointer;min-height:32px}.catalog-filters .filters{padding-top:15px}.catalog-filters h2{display:none}.grid{justify-content:center;justify-items:center}.catalog-layout>div{min-width:0}.hero{padding:32px 0 24px}.hero h1{font-size:34px}.intro{font-size:16px}.buyer-bar{gap:10px;padding:12px 0}.detail-top{grid-template-columns:minmax(0,1fr)}.footer-top{flex-direction:column}.site-footer nav{gap:12px 18px;font-size:12px}.footer-bottom{line-height:1.7}.site-footer .legal-links{width:calc(100% - 32px)}.trainer{flex-wrap:wrap}.detail h1{font-size:32px}}
@media(max-width:520px){.grid{grid-template-columns:minmax(0,306px)}.buyer-bar{flex-direction:row;align-items:center}.buyer-bar button{max-width:50%;font-size:11px}.dialog{padding:22px}.facts{grid-template-columns:minmax(0,1fr)}.filters{grid-template-columns:1fr}.site-footer .footer-links{align-items:flex-start;flex-direction:column}.results-top select{width:100%}input,select,textarea{font-size:16px}.detail h1{overflow-wrap:anywhere}}

.course-card>a:first-of-type{display:block;line-height:0;overflow:hidden}.enrol-box>.course-date{margin-top:14px}

.course-date{padding:0;background:transparent;border:0;border-radius:0;font-weight:400;color:var(--muted);font-size:13px}.card-copy .tags .course-timing{background:transparent;border:0;padding:0;font:inherit;color:inherit}

/* Equal-height course cards with stable metadata and action alignment. */
#course-grid{align-items:stretch}#course-grid .course-card{display:flex;flex-direction:column;height:100%}#course-grid .course-card>a:first-of-type,#course-grid .cover-empty{flex-shrink:0}#course-grid .card-copy{display:flex;flex-direction:column;flex:1;min-height:0}#course-grid .card-copy h3{min-height:2.5em}#course-grid .card-copy>p{min-height:3.2em}#course-grid .card-copy .tags{margin-top:auto;min-height:3.5em;align-content:flex-start}#course-grid .card-copy>a.btn{display:flex;justify-content:center;align-items:center;width:100%;min-height:44px;margin-top:16px;flex-shrink:0}@media(max-width:520px){#course-grid .card-copy h3,#course-grid .card-copy>p{min-height:0}}
