/* CMS section settings are applied after the established university styles. */
.sms-home .home-community .home-news-card,
.sms-home .home-community .home-news-card.is-featured{grid-template-columns:74px minmax(0,1fr);min-height:0;align-items:start}
.sms-home .home-community .home-news-date{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;gap:2px;min-height:106px;padding:10px 4px;background:#edf3f0;color:var(--home-navy);text-align:center;text-transform:uppercase;font:700 11px/1.1 'Segoe UI',Arial,sans-serif;letter-spacing:.12em}
.sms-home .home-community .home-news-date strong{font:600 30px/1 Georgia,serif;letter-spacing:0}
.sms-home .home-community .home-news-card-copy{display:flex;flex-direction:column;gap:8px;min-width:0;padding:14px}
.sms-home .home-community .home-news-summary{display:block;color:#4b5f68;font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.sms-home .home-community .home-news-card-copy>strong{margin:0;overflow-wrap:anywhere}
.sms-home .home-community .home-vc-quote{white-space:pre-line;overflow:visible;display:block;max-height:none;line-height:1.65}
.sms-home .home-community .home-vc-panel .home-vc-photo{height:auto!important;min-height:0;aspect-ratio:16/10}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-square,
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-circle,
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-rounded-square{aspect-ratio:1/1}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-portrait{aspect-ratio:3/4}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-landscape{aspect-ratio:16/9}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-circle,
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-circle img{border-radius:50%}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-square,
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-square img{border-radius:0}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-rounded-square,
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-shape-rounded-square img{border-radius:18px}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-frame-none{padding:0;border:0;box-shadow:none}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-frame-thin{padding:2px;border-width:1px}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-frame-decorative{padding:7px;border:3px double var(--home-gold)}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-size-small{max-width:180px;align-self:center}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-size-medium{max-width:340px;align-self:center}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-size-large{max-width:100%}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-position-center{align-self:center}
.sms-home .home-community .home-vc-panel .home-vc-photo.vc-fit-contain img{object-fit:contain!important;background:#f5f0e5}
.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-left),
.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-right){display:grid!important;grid-template-columns:minmax(180px,32%) minmax(0,1fr);gap:12px 26px;align-items:start}
.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-right){grid-template-columns:minmax(0,1fr) minmax(180px,32%)}
.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-left) .home-vc-photo{grid-column:1;grid-row:1/5}
.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-right) .home-vc-photo{grid-column:2;grid-row:1/5}
.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-right)>:not(.home-vc-photo){grid-column:1}
.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-left)>:not(.home-vc-photo){grid-column:2}
.sms-home .programme-grid,.sms-home .faculty-grid,.sms-home .event-list,.sms-home .home-editorial .editorial-grid{min-width:0}
.sms-home .programme-grid>*,.sms-home .faculty-grid>*,.sms-home .event-list>*,.sms-home .home-editorial .editorial-grid>*{min-width:0}
@media(max-width:979px){.sms-home .home-community .home-news-card,.sms-home .home-community .home-news-card.is-featured{grid-template-columns:74px minmax(0,1fr)}}
@media(max-width:650px){.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-left),.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-right){display:flex!important;flex-direction:column}.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-left)>:not(.home-vc-photo),.sms-home .home-community-grid[style*="--community-columns:1"] .home-vc-panel:has(.vc-position-right)>:not(.home-vc-photo){grid-column:auto}.sms-home .home-community .home-news-card-copy{padding:11px}}
.sms-home-popup-open{overflow:hidden}
.sms-home-popup-overlay[hidden]{display:none!important}
.sms-home-popup-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:rgba(5,20,36,var(--popup-overlay-opacity,.6));backdrop-filter:blur(5px)}
.sms-home-popup-overlay.popup-position-top{align-items:start;padding-top:min(8vh,70px)}
.sms-home-popup{position:relative;display:grid;grid-template-columns:minmax(0,1fr);width:min(100%,var(--popup-width,700px));max-height:calc(100dvh - 40px);overflow:auto;background:#fff;border:0;border-radius:12px;box-shadow:0 30px 80px #03101ac0;color:#102c43;--popup-image-height:420px;--popup-image-column:50%}
.sms-home-popup.popup-width-narrow{--popup-width:480px}.sms-home-popup.popup-width-wide{--popup-width:980px}
.sms-home-popup.popup-image-size-small{--popup-image-height:240px;--popup-image-column:38%}
.sms-home-popup.popup-image-size-medium{--popup-image-height:340px;--popup-image-column:48%}
.sms-home-popup.popup-image-size-large{--popup-image-height:520px;--popup-image-column:58%}
.sms-home-popup.popup-image-size-full{--popup-image-height:calc(100dvh - 150px);--popup-image-column:66%}
.sms-home-popup.popup-image-left,.sms-home-popup.popup-image-right{grid-template-columns:minmax(0,var(--popup-image-column)) minmax(0,1fr)}
.sms-home-popup.popup-image-right{grid-template-columns:minmax(0,1fr) minmax(0,var(--popup-image-column))}
.sms-home-popup.popup-image-right .sms-home-popup-media{grid-column:2;grid-row:1}.sms-home-popup.popup-image-right .sms-home-popup-content{grid-column:1;grid-row:1}
.sms-home-popup-media{margin:0;min-width:0;min-height:0;height:min(var(--popup-image-height),70dvh);overflow:hidden;background:#fff}
.sms-home-popup-media img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.sms-home-popup.popup-fit-cover .sms-home-popup-media img{object-fit:cover}
.sms-home-popup.popup-image-top.popup-ratio-landscape .sms-home-popup-media{aspect-ratio:16/9;height:auto;max-height:var(--popup-image-height)}
.sms-home-popup.popup-image-top.popup-ratio-square .sms-home-popup-media{aspect-ratio:1;height:auto;max-height:var(--popup-image-height)}
.sms-home-popup.popup-image-top.popup-ratio-portrait .sms-home-popup-media{aspect-ratio:4/5;height:auto;max-height:var(--popup-image-height)}
.sms-home-popup.popup-image-left .sms-home-popup-media,.sms-home-popup.popup-image-right .sms-home-popup-media{height:auto;min-height:min(var(--popup-image-height),70dvh);max-height:none}
.sms-home-popup.popup-image-background .sms-home-popup-media{position:absolute;inset:0;width:100%;height:100%;max-height:none;opacity:.14;pointer-events:none}
.sms-home-popup-content{position:relative;min-width:0;align-self:center;padding:clamp(18px,2.4vw,28px)}
.sms-home-popup-eyebrow{margin:0 0 9px;color:#977328;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800}
.sms-home-popup h2{margin:0 38px 8px 0;color:#102c43;font:600 clamp(21px,2.5vw,30px)/1.15 Georgia,serif;overflow-wrap:anywhere}
.sms-home-popup-message{margin:0;white-space:pre-line;overflow-wrap:anywhere;color:#385065;font-size:14px;line-height:1.55}
.sms-home-popup-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.sms-home-popup-actions a{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border-radius:5px;font-size:12px;font-weight:800;text-decoration:none}
.sms-home-popup-primary{background:#076447;color:#fff}.sms-home-popup-secondary{border:1px solid #aebfca;color:#102c43}
.sms-home-popup-close{position:absolute;top:10px;right:10px;z-index:3;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:#fff;color:#102c43;font-size:26px;line-height:1;cursor:pointer;box-shadow:0 3px 14px #0f2d6b35}
.sms-home-popup-close:focus-visible,.sms-home-popup a:focus-visible{outline:3px solid #d4b673;outline-offset:3px}
@media(max-width:650px){.sms-home-popup-overlay{padding:10px}.sms-home-popup{width:100%;max-height:calc(100dvh - 20px);display:flex;flex-direction:column;border-radius:9px}.sms-home-popup.popup-image-left,.sms-home-popup.popup-image-right{display:flex;flex-direction:column}.sms-home-popup-media,.sms-home-popup.popup-image-left .sms-home-popup-media,.sms-home-popup.popup-image-right .sms-home-popup-media{height:min(var(--popup-image-height),52dvh);min-height:0;max-height:52dvh;flex:none}.sms-home-popup-content{padding:18px 20px 20px}.sms-home-popup h2{margin-right:36px}}
@media(prefers-reduced-motion:no-preference){.sms-home-popup{animation:sms-popup-enter .28s ease-out both}@keyframes sms-popup-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}
.sms-home-popup-overlay:has(.popup-no-content){background:rgba(25,30,118,var(--popup-overlay-opacity,.6))}
.sms-home-popup.popup-layout-image_only,.sms-home-popup.popup-no-content{display:block;width:max-content;max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}
.sms-home-popup.popup-layout-image_only .sms-home-popup-media,.sms-home-popup.popup-no-content .sms-home-popup-media{display:block;width:max-content;max-width:100%;height:auto;max-height:none;aspect-ratio:auto;overflow:visible;background:transparent}
.sms-home-popup.popup-layout-image_only .sms-home-popup-image-link,.sms-home-popup.popup-no-content .sms-home-popup-image-link{display:block;width:max-content;max-width:100%;cursor:pointer}
.sms-home-popup.popup-layout-image_only .sms-home-popup-media img,.sms-home-popup.popup-no-content .sms-home-popup-media img{display:block;width:auto;height:auto;max-width:min(92vw,1100px);max-height:calc(100dvh - 64px);object-fit:contain;border:0;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.28)}
.sms-home-popup.popup-layout-image_only.popup-image-size-small .sms-home-popup-media img,.sms-home-popup.popup-no-content.popup-image-size-small .sms-home-popup-media img{max-width:min(92vw,500px)}
.sms-home-popup.popup-layout-image_only.popup-image-size-medium .sms-home-popup-media img,.sms-home-popup.popup-no-content.popup-image-size-medium .sms-home-popup-media img{max-width:min(92vw,760px)}
.sms-home-popup.popup-layout-image_only.popup-image-size-full .sms-home-popup-media img,.sms-home-popup.popup-no-content.popup-image-size-full .sms-home-popup-media img{max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px)}
.sms-home-popup.popup-layout-image_only .sms-home-popup-close,.sms-home-popup.popup-no-content .sms-home-popup-close{top:-16px;right:-16px;z-index:4}
.sms-home-popup.popup-layout-image_only.popup-has-content .sms-home-popup-content{max-width:min(92vw,1100px);margin-top:8px;background:#fff;border-radius:6px}
@media(max-width:650px){.sms-home-popup.popup-layout-image_only,.sms-home-popup.popup-no-content{display:block;width:max-content;max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);border-radius:0}.sms-home-popup.popup-layout-image_only .sms-home-popup-media,.sms-home-popup.popup-no-content .sms-home-popup-media{width:max-content;height:auto;max-height:none}.sms-home-popup.popup-layout-image_only .sms-home-popup-media img,.sms-home-popup.popup-no-content .sms-home-popup-media img{max-width:calc(100vw - 28px);max-height:calc(100dvh - 48px)}.sms-home-popup.popup-layout-image_only .sms-home-popup-close,.sms-home-popup.popup-no-content .sms-home-popup-close{top:-12px;right:-8px}}
.sms-home .hero-programmes.hero-programmes-compact>.sms-shell{gap:8px;padding-block:12px 14px}.sms-home .hero-programmes.hero-programmes-auto>.sms-shell{gap:10px;padding-block:14px}.sms-home .hero-programmes.hero-programmes-tall>.sms-shell{gap:25px;padding-block:33px 37px}.sms-home .home-notices.ticker-height-compact>.sms-shell{padding-block:11px}.sms-home .home-notices.ticker-height-auto>.sms-shell{padding-block:14px}.sms-home .home-notices.ticker-height-tall>.sms-shell{padding-block:29px}.sms-home .home-notices.ticker-text-small{font-size:.86rem}.sms-home .home-notices.ticker-text-large{font-size:1.12rem}.sms-home .home-notices.ticker-bg-green{background:#0c5b48}.sms-home .home-notices.ticker-bg-light{background:#edf3f1;color:#123047}.sms-home .home-notices.ticker-bg-light a{color:#0b5c4b}.sms-home .home-notices.ticker-align-center .announcement-primary{justify-content:center;text-align:center}
@media(max-width:600px){.sms-home .hero-programmes.hero-programmes-tall>.sms-shell{gap:12px;padding-block:20px}.sms-home .home-notices.ticker-height-tall>.sms-shell{padding-block:18px}}
.sms-home .event-card.event-featured{border:2px solid #bc9854;box-shadow:0 15px 34px #0b2a4a1f}.sms-home .event-card.event-layout-minimal .event-card-media{min-height:90px;max-height:90px}.sms-home .event-card.event-layout-minimal .event-card-media>img{display:none}.sms-home .event-card.event-layout-minimal .event-card-copy{padding-block:18px}.sms-home .event-card.event-layout-image .event-card-media{min-height:240px}.sms-home .event-card.event-layout-featured .event-card-copy>strong{font-size:clamp(1.3rem,2vw,1.7rem)}
.sms-home .home-column-card.card-style-featured,.sms-home .home-column-card.card-style-highlight{border-top-color:#bc9854;background:#f8f5ee}.sms-home .home-column-card.card-style-minimal{border-top:0;background:transparent;box-shadow:none}.sms-home .home-column-card.card-style-announcement{background:#0c324e;color:#fff}.sms-home .home-column-card.card-style-announcement h3,.sms-home .home-column-card.card-style-announcement p{color:#fff}.sms-home .home-column-card.card-style-profile .home-column-card-image{max-width:160px;max-height:160px;margin:22px auto 0;border-radius:50%}.sms-home .home-column-card.card-align-center{text-align:center}.sms-home .home-column-card.card-align-right{text-align:right}.sms-home .home-column-card.card-border-none{border:0}.sms-home .home-column-card.card-border-gold{border:1px solid #bc9854;border-top:3px solid #bc9854}.sms-home .home-column-card.card-shadow-none{box-shadow:none}.sms-home .home-column-card.card-shadow-raised{box-shadow:0 18px 40px #102c432b}.sms-home .home-column-card.card-radius-small{border-radius:7px}.sms-home .home-column-card.card-radius-rounded{border-radius:16px}.sms-home .home-column-card.image-fit-contain .home-column-card-image{object-fit:contain}.sms-home .home-column-card.image-shape-circle .home-column-card-image{width:min(78%,220px);aspect-ratio:1;border-radius:50%;margin:20px auto 0}.sms-home .home-column-card.image-shape-square .home-column-card-image{aspect-ratio:1}.sms-home .home-column-card.image-shape-rounded .home-column-card-image{border-radius:12px}.sms-home .home-column-card.image-shape-portrait .home-column-card-image{aspect-ratio:4/5}.sms-home .home-column-card.image-shape-landscape .home-column-card-image{aspect-ratio:16/9}.sms-home .home-column-card.image-position-left,.sms-home .home-column-card.image-position-right{flex-direction:row;align-items:stretch}.sms-home .home-column-card.image-position-right{flex-direction:row-reverse}.sms-home .home-column-card:is(.image-position-left,.image-position-right) .home-column-card-image{width:38%;height:auto;aspect-ratio:auto;flex:none}.sms-home .home-column-card.image-position-background{position:relative;min-height:260px}.sms-home .home-column-card.image-position-background .home-column-card-image{position:absolute;inset:0;width:100%;height:100%;z-index:0}.sms-home .home-column-card.image-position-background:has(.home-column-card-image)::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,#071c36e8,#071c3655)}.sms-home .home-column-card.image-position-background:has(.home-column-card-image) .home-column-card-copy{position:relative;z-index:2;align-self:end}.sms-home .home-column-card.image-position-background:has(.home-column-card-image) :is(h3,p,a){color:#fff}.sms-home .home-column-card-subtitle{display:block;margin-top:7px;color:#6b7582}.sms-home .home-column-card.button-style-solid .home-text-link,.sms-home .home-column-card.button-style-outline .home-text-link{padding:9px 13px;margin-right:7px;border:1px solid currentColor}.sms-home .home-column-card.button-style-solid .home-text-link{background:#0a6049;border-color:#0a6049;color:#fff}.sms-home .home-column-card.card-hover-lift,.sms-home .home-column-card.card-hover-tilt{transition:transform .25s ease,box-shadow .25s ease}@media(hover:hover) and (prefers-reduced-motion:no-preference){.sms-home .home-column-card.card-hover-lift:hover{transform:translateY(-5px)}.sms-home .home-column-card.card-hover-tilt:hover{transform:perspective(700px) rotateX(2deg) rotateY(-2deg)}}@media(max-width:650px){.sms-home .home-column-card:is(.image-position-left,.image-position-right){flex-direction:column}.sms-home .home-column-card:is(.image-position-left,.image-position-right) .home-column-card-image{width:100%;height:auto;aspect-ratio:16/9}}
@media(max-width:700px){body.home-page .brandrow .sms-nav-toggle{display:inline-flex!important;position:fixed!important;top:14px!important;right:14px!important;z-index:1100!important;width:46px;height:46px;background:#102c43!important;color:#fff!important;border:1px solid #d4b673!important}body.home-page .brandrow .menu.is-open{display:flex!important;position:fixed!important;top:66px;left:10px;right:10px;width:auto;max-height:calc(100dvh - 76px);overflow-y:auto;z-index:1099;background:#fff;color:#102c43;padding:14px;box-shadow:0 16px 36px #071b3d4d}}
.sms-home .programme-card{min-width:0;overflow:hidden}.sms-home .programme-card-image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:15px}.sms-home .programme-featured{border-top:3px solid #d4b673}.sms-home .programme-featured-badge{display:inline-block;margin-top:12px;padding:5px 8px;background:#d4b673;color:#112d43;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.sms-home .programme-faculty{font-size:12px;opacity:.8}
/* Linked record cards use homepage-only presentation; detail pages retain their own media. */
.sms-home :is(.home-news-card,.event-card,.programme-card).record-card-style-featured,
.sms-home :is(.home-news-card,.event-card,.programme-card).record-card-style-highlight {
    border-color: #bc9854;
    box-shadow: 0 14px 34px rgba(16,44,67,.12);
}
.sms-home :is(.home-news-card,.event-card,.programme-card).record-card-style-minimal {
    background: transparent;
    box-shadow: none;
}
.sms-home :is(.home-news-card,.event-card,.programme-card).record-card-align-center { text-align: center; }
.sms-home :is(.home-news-card,.event-card,.programme-card).record-card-align-right { text-align: right; }
.sms-home :is(.home-news-card,.event-card,.programme-card).record-image-shape-circle img,
.sms-home .programme-card-image.record-image-shape-circle { border-radius: 50%; aspect-ratio: 1; object-fit: cover; }
.sms-home :is(.home-news-card,.event-card,.programme-card).record-image-shape-rounded img,
.sms-home .programme-card-image.record-image-shape-rounded { border-radius: 12px; }
.sms-home :is(.home-news-card,.event-card,.programme-card).record-image-shape-square img,
.sms-home .programme-card-image.record-image-shape-square { aspect-ratio: 1; }
.sms-home :is(.home-news-card,.event-card,.programme-card).record-image-shape-portrait img,
.sms-home .programme-card-image.record-image-shape-portrait { aspect-ratio: 4 / 5; }
.sms-home :is(.home-news-card,.event-card,.programme-card).record-image-fit-contain img,
.sms-home .programme-card-image.record-image-fit-contain { object-fit: contain; }
.sms-home .home-news-card:has(.home-news-card-image) { grid-template-columns: 100px minmax(0,1fr); }
.sms-home .home-news-card-image { grid-column: 1; grid-row: 1; width: 100%; height: 100%; min-height: 86px; object-fit: cover; }
.sms-home .home-news-card:has(.home-news-card-image) .home-news-date { grid-column: 1; grid-row: 2; min-height: 72px; }
.sms-home .home-news-card:has(.home-news-card-image) .home-news-card-copy { grid-column: 2; grid-row: 1 / span 2; }
.sms-home .home-news-card-image.record-image-shape-circle { aspect-ratio: 1; height: auto; border-radius: 50%; }
.sms-home .home-news-card-image.record-image-shape-rounded { border-radius: 12px; }
.sms-home .home-news-card-image.record-image-shape-square { aspect-ratio: 1; height: auto; }
.sms-home .home-news-card-image.record-image-shape-portrait { aspect-ratio: 4 / 5; height: auto; }
.sms-home .home-news-card-image.record-image-fit-contain { object-fit: contain; }
.sms-home .event-card-media.is-hidden { display: none; }
.sms-home .event-card.record-image-position-left,
.sms-home .event-card.record-image-position-right { flex-direction: row; align-items: stretch; }
.sms-home .event-card.record-image-position-right { flex-direction: row-reverse; }
.sms-home .event-card:is(.record-image-position-left,.record-image-position-right) .event-card-media { width: 36%; flex: none; }
.sms-home .programme-card.record-image-position-left .programme-card-image { float: left; width: 38%; margin: 0 16px 12px 0; }
.sms-home .programme-card.record-image-position-right .programme-card-image { float: right; width: 38%; margin: 0 0 12px 16px; }
.sms-home .faculty-feature.record-card-style-highlight { border-color: #bc9854; box-shadow: 0 16px 36px rgba(16,44,67,.14); }
.sms-home .faculty-feature.record-card-style-minimal { background: transparent; box-shadow: none; }
.sms-home .faculty-feature.record-card-align-center { text-align: center; }
.sms-home .faculty-feature.record-card-align-right { text-align: right; }
.sms-home .faculty-feature.record-image-shape-circle > img { border-radius: 50%; aspect-ratio: 1; object-fit: cover; }
.sms-home .faculty-feature.record-image-shape-rounded > img { border-radius: 12px; }
.sms-home .faculty-feature.record-image-shape-square > img { aspect-ratio: 1; }
.sms-home .faculty-feature.record-image-shape-portrait > img { aspect-ratio: 4 / 5; }
.sms-home .faculty-feature.record-image-fit-contain > img { object-fit: contain; }
.sms-home .home-column-card-icon { display: inline-grid; place-items: center; width: 38px; height: 38px; margin-bottom: 10px; border: 1px solid rgba(188,152,84,.55); border-radius: 8px; color: var(--home-green); font-size: 20px; }
@media (max-width: 650px) {
    .sms-home .event-card:is(.record-image-position-left,.record-image-position-right) { flex-direction: column; }
    .sms-home .event-card:is(.record-image-position-left,.record-image-position-right) .event-card-media { width: 100%; }
    .sms-home .programme-card:is(.record-image-position-left,.record-image-position-right) .programme-card-image { float: none; width: 100%; margin: 0 0 15px; }
}
@media (max-width: 480px) {
    .sms-home .home-news-card:has(.home-news-card-image) { display: grid; grid-template-columns: 80px minmax(0,1fr); }
}

/* Academic programme catalogue: section layout and card presentation come from the CMS. */
.sms-home .home-programmes .programme-grid {
    display: grid;
    grid-template-columns: repeat(var(--section-columns, 3), minmax(0, 1fr));
    align-items: stretch;
    gap: clamp(14px, 1.8vw, 24px);
    border: 0;
    background: transparent;
}
.sms-home .home-programmes .programme-card {
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding: clamp(22px, 2vw, 30px);
    border: 1px solid #d8e2dd;
    border-top: 3px solid var(--home-green, #076447);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 9px 26px #102c430b;
}
.sms-home .home-programmes .programme-card h3 {
    margin: 18px 0 9px;
    font-size: clamp(1.2rem, 1.45vw, 1.55rem);
    line-height: 1.32;
    letter-spacing: -.02em;
    overflow-wrap: anywhere;
}
.sms-home .home-programmes .programme-card > p {
    margin: 0 0 16px;
    line-height: 1.6;
}
.sms-home .home-programmes .programme-top {
    color: var(--home-green, #076447);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
}
.sms-home .home-programmes .programme-top span:last-child {
    color: #a68341;
    font-family: Georgia, serif;
    font-size: 22px;
    font-weight: 400;
    letter-spacing: 0;
}
.sms-home .home-programmes .programme-bottom {
    flex-wrap: wrap;
    align-items: end;
    gap: 12px;
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid #e3eae6;
}
.sms-home .home-programmes .programme-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 12px;
    color: #536975;
}
.sms-home .home-programmes .programme-facts small {
    font-size: 11px;
    line-height: 1.4;
}
.sms-home .home-programmes .programme-bottom a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--home-green, #076447);
    font-size: 12px;
    text-decoration: none;
}
.sms-home .home-programmes .programme-bottom a:hover,
.sms-home .home-programmes .programme-bottom a:focus-visible { text-decoration: underline; }
.sms-home .home-programmes .programme-featured-badge { align-self: flex-start; }
.sms-home .home-programmes.programme-layout-feature .programme-card:first-child { grid-column: span min(2, var(--section-columns, 3)); }
.sms-home .home-programmes.programme-layout-feature .programme-card:first-child h3 { font-size: clamp(1.45rem, 1.9vw, 2rem); }
.sms-home .home-programmes.programme-layout-list .programme-grid { grid-template-columns: minmax(0, 1fr); }
.sms-home .home-programmes.programme-layout-list .programme-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 4px 24px; }
.sms-home .home-programmes.programme-layout-list .programme-card-image,
.sms-home .home-programmes.programme-layout-list .programme-card > p,
.sms-home .home-programmes.programme-layout-list .programme-card h3 { grid-column: 1; }
.sms-home .home-programmes.programme-layout-list .programme-card h3 { margin: 3px 0; }
.sms-home .home-programmes.programme-layout-list .programme-bottom { grid-column: 2; grid-row: 1 / span 4; display: grid; justify-items: end; border: 0; padding: 0; }
.sms-home .home-programmes.programme-layout-list .programme-card-image { max-width: 260px; }
@media (max-width: 900px) {
    .sms-home .home-programmes .programme-grid { grid-template-columns: repeat(min(var(--section-columns, 3), 2), minmax(0, 1fr)); }
    .sms-home .home-programmes.programme-layout-feature .programme-card:first-child { grid-column: span min(2, var(--section-columns, 3)); }
}
@media (max-width: 620px) {
    .sms-home .home-programmes .programme-grid { grid-template-columns: minmax(0, 1fr); }
    .sms-home .home-programmes.programme-layout-feature .programme-card:first-child { grid-column: auto; }
    .sms-home .home-programmes.programme-layout-list .programme-card { display: flex; align-items: stretch; }
    .sms-home .home-programmes.programme-layout-list .programme-bottom { display: flex; justify-items: auto; border-top: 1px solid #e3eae6; padding-top: 16px; }
}
