/* Full photographic covers and explicit text colours for dark components. */
.campus-design{--ink:#182f35;--green:#225b57;--muted:#556d73;--orange:#905832;--line:#dce6e6}
.campus-design .site-header{position:absolute;inset:0 0 auto;height:106px;max-width:1360px;margin:auto;padding:0 60px;background:transparent;border:0;z-index:30;gap:24px}
.campus-design .brand{background:transparent;border-radius:0;padding:0;gap:18px;color:#fff;box-shadow:none}
.campus-design .brand-college{display:block!important;color:#fff;border-color:#ffffff45}.campus-design .brand-college small{color:#dce7ea}
.campus-design .brand .logo-window img{filter:url(#cover-brand-transparent) drop-shadow(0 0 .7px #fffffff0) drop-shadow(0 0 2px #ffffff80);mix-blend-mode:normal}
.campus-design .desktop-nav{color:#fff;font-size:14px;gap:24px}.campus-design .desktop-nav a[aria-current]{color:#fff}.campus-design .desktop-nav a:after{background:#c7ded8;height:2px}
.campus-design .header-enquire{background:#e4f1ed;color:#183a3c;border:1px solid #e4f1ed;box-shadow:none;font-weight:700}.campus-design .header-enquire:hover{background:#fff;border-color:#fff}
.campus-design .menu-toggle{border-color:#ffffff7a;background:#09242c55}.campus-design .menu-toggle span{background:#fff}
.campus-design #menu{top:85px;background:#fff;color:#19353d;border-radius:16px;border:1px solid #dce6e6;box-shadow:0 18px 48px #061e3340}.campus-design .menu-nav a{color:#19353d}.campus-design .menu-nav a[aria-current]{color:#225b57}
.campus-design .hero,.campus-design.page-overview .hero{display:flex;align-items:center;min-height:780px;padding:0;background:#0f2a30;color:#fff}
.campus-design .hero .slides{position:absolute;inset:0;width:100%;height:100%;border-radius:0;background:#17343d;pointer-events:none;z-index:0}
.campus-design .hero .slide{z-index:0}.campus-design .hero .slide img{width:100%;height:100%;object-fit:cover;object-position:center}
.campus-design .hero-shade{display:block;position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(7,24,30,.9) 0%,rgba(8,27,34,.74) 42%,rgba(8,27,34,.2) 100%),linear-gradient(0deg,rgba(8,27,34,.85),transparent 43%),linear-gradient(180deg,rgba(8,27,34,.65),transparent 30%)}
.campus-design .hero .hero-content,.campus-design .hero-overview .hero-content{position:relative;z-index:2;display:block;width:100%;max-width:1360px;padding:168px 60px 116px;margin:auto}
.campus-design .hero-copy{width:68%;max-width:850px}.campus-design .hero .eyebrow{color:#e2eee9;font-size:14px;letter-spacing:.04em}
.campus-design .hero h1,.campus-design .hero:not(.hero-overview) h1{color:#fff;font-size:clamp(56px,6.25vw,92px);line-height:1.06;letter-spacing:-.055em;font-weight:700;margin:24px 0 22px}
.campus-design .hero h1 .hero-topic{color:#dcebe5;font-size:28px;line-height:1.4;margin-top:20px;font-weight:400;letter-spacing:-.025em}
.campus-design .hero-description{font-size:18px;line-height:1.8;color:#e9f1f3;max-width:620px;margin:0 0 28px}
.campus-design .hero-actions{gap:14px;flex-wrap:wrap}.campus-design .hero-actions .cream{background:#e4f1ed;color:#12353b;border-color:#e4f1ed;min-height:50px;padding:14px 21px}.campus-design .hero-actions .cream:hover{background:#fff;border-color:#fff}
.campus-design .hero-link{color:#fff;background:#0b2e394d;border:1px solid #ffffff90;min-height:50px;padding:14px 21px}.campus-design .hero-link:hover{background:#ffffff20;border-color:#fff}
.campus-design .hero-facts{grid-template-columns:repeat(3,minmax(0,1fr));max-width:790px;border:0;border-top:1px solid #ffffff45;border-radius:0;background:none;backdrop-filter:none;margin-top:34px;padding-top:25px;gap:26px;overflow:visible}
.campus-design .hero-facts>div,.campus-design .hero-facts>div:first-child,.campus-design .hero-facts>div:last-child{border:0;padding:0;min-width:0;display:block}
.campus-design .hero-facts strong{color:#fff;font-size:27px;line-height:1.35;white-space:normal;min-height:0}.campus-design .hero-facts span{color:#edf4f5;font-size:14px;line-height:1.7;margin:9px 0 5px}.campus-design .hero-facts small{color:#d1e0e4;font-size:13px;line-height:1.65}
.campus-design .image-caption{top:auto;bottom:27px;left:max(60px,calc((100% - 1240px)/2));right:320px;max-width:450px;max-height:none;background:#102e39c7;color:#eef6f5;font-size:13px;line-height:1.65;padding:9px 14px;border-radius:8px;z-index:3}
.campus-design .slide-controls{top:auto;bottom:23px;right:max(60px,calc((100% - 1240px)/2));z-index:3;background:#102e39c7;padding:9px 12px;border-radius:30px}.campus-design .hero .slide-controls .slide-dots{display:flex}.campus-design .hero .slide-controls .slide-prev,.campus-design .hero .slide-controls .slide-next,.campus-design .hero .slide-controls .slide-pause{width:44px;height:44px}.campus-design .hero.is-playing .slide-dot[aria-pressed=true] span:after{background:#b7dbce}
.campus-design .section-nav{border-bottom:1px solid #dce6e6;box-shadow:none}.campus-design .section-nav a[aria-current]{color:#225b57;border-color:#225b57}
.campus-design .button.dark{background:#225b57;color:#fff}.campus-design .button.dark:hover{background:#173e3c}.campus-design .button.cream:not(.hero-actions .cream){background:#e4f1ed;color:#16373b}
.campus-design .fit-columns>div{background:#eff6f5}.campus-design .fit-columns>div:last-child{background:#fbf3ed}.campus-design .course-comparison,.campus-design .profile-fees{background:#eff6f5}
.campus-design .date-feature>div:first-child,.campus-design .planner-output{background:#183b43}.campus-design .date-feature>div:first-child{color:#edf5f7}
.campus-design .date-feature>div:first-child h3 em{color:#cae5da}
.campus-design .compare-add{color:#225b57;background:#eff6f5;border-color:#c9ddda}.campus-design .compare-add[aria-pressed=true]{background:#225b57;color:#fff;border-color:#225b57}
.campus-design .budget-toggle label:has(input:checked){background:#225b57;color:#fff}.campus-design .budget-toggle input{accent-color:#225b57}
.campus-design .mobile-action button{background:#225b57;color:#fff}.campus-design .reading-progress{background:#468d82}
/* A dark tool has one explicit colour context. Inputs retain dark text. */
.tool-section .tool-form label,.tool-section .tool-form legend,.tool-section .tool-body .fields label{font-size:15px;line-height:1.8}
.tool-section{--ink:#f4f8fa;--muted:#d0e0e5;--line:#56747d;color:#f4f8fa;background:#183b43}
.tool-section .tool-intro h2,.tool-section .tool-intro h3,.tool-section .tool-intro .section-article,.tool-section .tool-intro .section-article p,.tool-section .tool-intro>p,.tool-section .tool-intro .tool-limit{color:#edf5f7}
.tool-section .tool-form label,.tool-section .tool-form legend,.tool-section .tool-form .check,.tool-section .tool-result,.tool-section .tool-result p,.tool-section .tool-result strong,.tool-section .tool-result small,.tool-section .tool-result dt,.tool-section .tool-result dd,.tool-section .cost-lines{color:#edf5f7}
.tool-section .tool-intro .eyebrow,.tool-section .fine{color:#d0e0e5}
.tool-section .tool-form input,.tool-section .tool-form select,.tool-section .tool-form option{color:#17323c;background:#fff;border-color:#aec8cc;caret-color:#17323c}
.tool-section .tool-form input::placeholder{color:#586f7a;opacity:1}.tool-section .tool-form input:focus,.tool-section .tool-form select:focus{border-color:#85c9b4;outline-color:#85c9b4}
.tool-section .tool-form .check input{accent-color:#8dc5b6}.tool-section .button.dark,.tool-section .button.cream{background:#e4f1ed;color:#15353b;border-color:#e4f1ed}.tool-section .button.dark:hover,.tool-section .button.cream:hover{background:#fff;border-color:#fff}
.tool-section .tool-result{border-color:#688791}.tool-section .tool-result a,.tool-section .text-link{color:#edf5f7;border-color:#9fbdc5}
.planner-output{--ink:#f4f8fa;--muted:#d0e0e5;color:#f4f8fa}.planner-output .plan-total,.planner-output .plan-year,.planner-output .plan-payment,.planner-output .plan-breakdown dt,.planner-output .plan-breakdown dd,.planner-output p,.planner-output .eyebrow{color:#edf5f7}
@media(max-width:1180px) and (min-width:901px){.campus-design .site-header{padding:0 36px}.campus-design .desktop-nav{gap:21px}.campus-design .hero .hero-content{padding-left:40px;padding-right:40px}.campus-design .hero-copy{width:75%}.campus-design .hero h1,.campus-design .hero:not(.hero-overview) h1{font-size:72px}.campus-design .image-caption{left:40px;right:290px;max-width:400px}.campus-design .slide-controls{right:40px}.campus-design .hero .slide-controls .slide-dots{display:flex}}
@media(max-width:900px){.campus-design .site-header{height:88px;padding:0 28px;gap:16px}.campus-design .brand{padding:0;border-radius:0}.campus-design #menu{top:76px}.campus-design .hero,.campus-design.page-overview .hero{min-height:770px;padding:0;display:block}.campus-design .hero .slides{position:absolute;inset:0;width:100%;height:100%;border-radius:0}.campus-design .hero .hero-content,.campus-design .hero-overview .hero-content{padding:150px 28px 110px;width:100%;max-width:none}.campus-design .hero-copy{width:100%;max-width:720px}.campus-design .hero h1,.campus-design .hero:not(.hero-overview) h1{font-size:64px}.campus-design .hero h1 .hero-topic{font-size:27px}.campus-design .hero-description{font-size:18px}.campus-design .image-caption{left:28px;right:235px;bottom:29px;top:auto;max-width:480px}.campus-design .slide-controls{right:28px;bottom:24px;top:auto}.campus-design .hero .slide-controls .slide-dots{display:none}.campus-design .hero-shade{background:linear-gradient(90deg,rgba(8,25,32,.89),rgba(8,25,32,.45)),linear-gradient(0deg,rgba(8,25,32,.9),transparent 80%),linear-gradient(180deg,rgba(8,25,32,.45),transparent 35%)}}
@media(max-width:700px){.campus-design .site-header{height:84px;padding:0 18px;gap:10px}.campus-design .brand{padding:0;gap:6px;flex-direction:column;align-items:flex-start}
.campus-design .brand-college{font-size:12px!important;line-height:1.35;border:0;padding:0!important;font-weight:600}.campus-design .brand-college small{display:none}.campus-design .logo-window{--logo-width:128px}.campus-design .header-enquire{font-size:13px;padding:11px 12px;min-height:44px}.campus-design .menu-toggle{width:42px;height:44px;flex-shrink:0}.campus-design #menu{top:72px;border-radius:13px}.campus-design .hero,.campus-design.page-overview .hero{min-height:750px;padding:0}.campus-design .hero .hero-content,.campus-design .hero-overview .hero-content{padding:133px 22px 100px}.campus-design .hero h1,.campus-design .hero:not(.hero-overview) h1{font-size:43px;line-height:1.12;margin:18px 0 20px}.campus-design .hero h1 .hero-topic{font-size:23px;line-height:1.45;margin-top:15px}.campus-design .hero .eyebrow{font-size:13px;letter-spacing:0}.campus-design .hero-description{font-size:16px;line-height:1.85;margin-bottom:25px}.campus-design .hero-actions{gap:12px}.campus-design .hero-actions .button,.campus-design .hero-actions .hero-link{flex:1 1 100%;min-height:49px;padding:13px 17px;font-size:14px;justify-content:center}.campus-design .hero-facts{margin-top:28px;padding-top:23px;gap:15px}.campus-design .hero-facts strong{font-size:21px;line-height:1.4;min-height:0}.campus-design .hero-facts span{font-size:13px;line-height:1.75;margin:7px 0 5px}.campus-design .hero-facts small{font-size:12px;line-height:1.75}.campus-design .image-caption{top:auto;left:22px;right:193px;bottom:22px;max-width:230px;font-size:12px;line-height:1.55;padding:9px 11px}.campus-design .slide-controls{top:auto;bottom:22px;right:22px;padding:6px;gap:6px}.campus-design .hero .slide-controls .slide-prev,.campus-design .hero .slide-controls .slide-next,.campus-design .hero .slide-controls .slide-pause{width:44px;height:44px}.campus-design .hero .slide-controls .slide-dots{display:none}.campus-design .hero-shade{background:linear-gradient(0deg,rgba(7,23,30,.96) 0%,rgba(7,23,30,.85) 58%,rgba(7,23,30,.45) 100%),linear-gradient(90deg,rgba(7,23,30,.3),transparent 100%)}.campus-design .section-nav{padding-left:22px;padding-right:22px}}
@media(max-width:360px){.campus-design .site-header{padding:0 12px;gap:8px}.campus-design .brand{padding:0}.campus-design .logo-window{--logo-width:108px}.campus-design .header-enquire{font-size:12px;padding:11px 10px}.campus-design .hero .hero-content{padding-left:19px;padding-right:19px}.campus-design .hero h1,.campus-design .hero:not(.hero-overview) h1{font-size:39px}.campus-design .hero h1 .hero-topic{font-size:22px}.campus-design .hero-facts{gap:12px}.campus-design .hero-facts strong{font-size:19px}.campus-design .image-caption{left:19px;right:187px;max-width:160px}.campus-design .slide-controls{right:19px}}
@media(prefers-reduced-motion:reduce){.campus-design .hero .slide,.campus-design .hero .slide img{transition:none;animation:none}}

