/* Homepage compositions consume the shared PGS tokens; other pages are untouched. */
.pgs-homepage{--home-max:1280px;--home-gutter:64px}
.pgs-homepage .home-section{padding:88px var(--home-gutter);margin:0 auto;max-width:calc(var(--home-max) + 2 * var(--home-gutter));content-visibility:visible}
.pgs-homepage main p,.pgs-homepage .big-number-text{font-size:16px;line-height:1.85}
.pgs-homepage main h2{font-size:clamp(36px,4vw,56px);max-width:940px;margin:0 0 32px}
.pgs-homepage main h3{font-size:24px}
.pgs-homepage .home-section .container-xxl{padding:0;max-width:none}
.pgs-homepage .home-section .mt-80,.pgs-homepage .home-section .mb-80{margin:0}
.pgs-homepage .pgs-offscreen-card{content-visibility:visible;contain-intrinsic-size:none}
.pgs-homepage .row{--bs-gutter-x:0}
.pgs-homepage .pgs-btn-big,.pgs-homepage .pgs-btn-med,.pgs-homepage .btn-header{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:15px 22px;border:1px solid var(--pgs-blue);border-radius:4px;background:var(--pgs-blue);color:white;font:600 14px/1.4 var(--font-body);text-decoration:none}
.pgs-homepage .pgs-btn-big img,.pgs-homepage .pgs-btn-med img{width:20px;height:20px;object-fit:contain}
.pgs-homepage .pgs-btn-big-brochure{background:transparent;color:var(--pgs-blue)}
.pgs-homepage .home-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;background:var(--pgs-cream);padding-top:64px;padding-bottom:64px;gap:42px;max-width:none}
.pgs-homepage .home-hero>.banner-border{padding:0;margin:0;background:none;position:static;z-index:auto}
.pgs-homepage .home-hero .container-xxl{padding:0;max-width:620px;margin-left:auto}
.pgs-homepage .home-hero .banner-border .row{display:block;margin:0}
.pgs-homepage .home-hero .banner-border [class*=col]{width:100%;padding:0}
.pgs-homepage .home-hero h1{font-size:clamp(2.875rem,5.8vw,5.125rem);line-height:1.05;margin:0 0 34px;letter-spacing:-.05em}
.pgs-homepage .home-hero h1 sup{font-size:.5em;top:-.65em}
.pgs-homepage .home-hero h1 span{color:var(--pgs-blue)}
.pgs-homepage .home-hero .list-small-blue{padding:0;list-style:none;margin:0 0 30px}
.pgs-homepage .home-hero .list-small-blue li{font-size:16px;line-height:1.6;padding:8px 0;border:0;margin:0!important}
.pgs-homepage .home-hero .list-small-blue li:after{content:none}
.pgs-homepage .home-hero .list-small-blue li:before{content:'+';display:inline-block;color:var(--pgs-focus);margin-right:12px}
.pgs-homepage .home-hero .col-auto{display:inline-block;width:auto!important;margin:0 12px 12px 0!important}
.pgs-homepage #main-banner{width:100%;height:auto;max-width:650px;align-self:center;padding:0;margin:0;background:var(--pgs-surface);border:1px solid var(--pgs-line);border-radius:4px;overflow:hidden}
.pgs-homepage #main-banner .carousel-inner,.pgs-homepage #main-banner .carousel-item{display:block;position:static;float:none;transform:none}
.pgs-homepage #main-banner .carousel-inner{height:auto;overflow:visible}
.pgs-homepage #main-banner .carousel-item{height:auto;max-height:none}
.pgs-homepage #main-banner img{display:block;width:100%;height:auto;object-fit:contain}
.pgs-homepage #home-benefits{max-width:none;background:var(--pgs-blue);color:white}
.pgs-homepage #home-benefits>h2,.pgs-homepage .home-benefit-grid{max-width:1280px;margin-left:auto;margin-right:auto}
.pgs-homepage #home-benefits h2{color:white!important;margin-bottom:44px}
.pgs-homepage .home-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.pgs-homepage .home-benefit{display:flex;flex-direction:column;align-items:stretch;gap:20px;border-top:1px solid #ffffff45;padding-top:24px}
.pgs-homepage .home-benefit .big-number{color:var(--pgs-ice);font:600 38px/1 var(--font-display);padding:0}
.pgs-homepage .home-benefit .big-number-text{padding:0;color:#ecf4fc;flex:1}
.pgs-homepage .home-benefit img{width:100%;height:auto;object-fit:contain;align-self:end;margin-top:12px}
.pgs-homepage .home-qualifications>.row{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.pgs-homepage .home-qualifications [class*=col]{width:auto;padding:0;min-width:0}
.pgs-homepage .home-qualifications h2{margin-bottom:28px}
.pgs-homepage .home-qualifications p{color:var(--pgs-muted);margin-bottom:20px}
.pgs-homepage .home-qualifications img{width:100%;height:auto}
.pgs-homepage #home-pathways{background:var(--pgs-surface);max-width:none}
.pgs-homepage #home-pathways>.container-xxl{max-width:1280px;margin:auto}
.pgs-homepage #home-pathways .row:first-child{margin:0!important}
.pgs-homepage #home-pathways .star-text{font-size:14px;color:var(--pgs-blue);padding:0}
.pgs-homepage #home-pathways .star{width:28px;height:28px}
.pgs-homepage #home-pathways .star-div{padding:10px;gap:14px;align-items:center}
.pgs-homepage #home-pathways .row.justify-content-evenly{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:20px 0!important}
.pgs-homepage #home-pathways .row.justify-content-evenly>[class*=col]{width:auto;padding:0}
.pgs-homepage #home-pathways .row.justify-content-between{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:34px 0 0!important}
.pgs-homepage #home-pathways .row.justify-content-between>[id]{display:block!important;width:auto;margin:0!important;padding:0;min-width:0}
.pgs-homepage [id^=pathwaysImg] img{display:block;width:100%;height:auto}
.pgs-homepage #pathwaysImg1{order:1}.pgs-homepage #pathwaysImg2{order:2}.pgs-homepage #pathwaysImg3{order:3}
.pgs-homepage #pathways1{order:4}.pgs-homepage #pathways2{order:5}.pgs-homepage #pathways3{order:6}
.pgs-homepage #home-pathways .col-1{grid-column:span 1;width:auto;order:7}
.pgs-homepage #home-pathways h2{font-size:28px;margin:0 0 18px}
.pgs-homepage #home-pathways p{font-size:16px;color:var(--pgs-muted)}
.pgs-homepage #prevArrow,.pgs-homepage #nextArrow{display:inline-grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--pgs-line);border-radius:4px;background:white}
.pgs-homepage #prevArrow img{transform:rotate(180deg)}
.pgs-homepage #home-pathways .home-pathway-controls{grid-column:1/-1;order:7;display:flex;justify-content:center;align-items:center;gap:12px;margin:0;padding:0}
.pgs-homepage #home-pathways .home-pathway-controls>.col-1{flex:0 0 auto;width:auto;padding:0}
.pgs-homepage #home-pathways .home-pathway-controls a{width:44px;height:44px;padding:10px}
.pgs-homepage #home-pathways .home-pathway-controls img{display:block;width:12px;height:22px;object-fit:contain}
.pgs-homepage .home-timeline>.row{margin:0!important}
.pgs-homepage .home-timeline>.row:nth-of-type(2){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;counter-reset:steps;margin:40px 0!important}
.pgs-homepage .home-timeline>.row:nth-of-type(2)>div{width:auto;padding:24px 0 0;border-top:1px solid var(--pgs-line)}
.pgs-homepage .home-timeline .pathway-step{font-size:22px;line-height:1.35;margin-bottom:18px}
.pgs-homepage .home-timeline .pathway-step:before{counter-increment:steps;content:'0' counter(steps);display:block;font:500 12px var(--font-body);color:var(--pgs-focus);margin-bottom:20px}
.pgs-homepage .home-timeline p{font-size:16px;color:var(--pgs-muted)}
.pgs-homepage .home-timeline .rounded-4{border-radius:4px!important}
.pgs-homepage .home-partners{padding-top:88px}
.pgs-homepage .home-partners h2{font-size:40px}
.pgs-homepage .home-partners p{max-width:850px;color:var(--pgs-muted)}
.pgs-homepage .home-logo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px;list-style:none;padding:35px 0;margin:0;border-top:1px solid var(--pgs-line);border-bottom:1px solid var(--pgs-line)}
.pgs-homepage .home-logo{display:grid;place-items:center;padding:0;min-width:0}
.pgs-homepage .home-logo img{width:100%;max-width:180px;height:80px;object-fit:contain}
.pgs-homepage #programmes{background:var(--pgs-surface);max-width:none}
.pgs-homepage #programmes>h2,.pgs-homepage #programmes>p,.pgs-homepage .home-course-grid{max-width:1280px;margin-left:auto;margin-right:auto}
.pgs-homepage #programmes>p{color:var(--pgs-muted);margin-bottom:40px}
.pgs-homepage .home-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.pgs-homepage .home-course-card{display:flex;flex-direction:column;background:white;border:1px solid var(--pgs-line);min-width:0}
.pgs-homepage .home-course-card>img{display:block;width:100%;height:auto;aspect-ratio:1.425;object-fit:contain;background:var(--pgs-cream)}
.pgs-homepage .home-course-copy{display:flex;flex-direction:column;align-items:start;flex:1;padding:26px}
.pgs-homepage .home-course-copy h3{font-size:23px;line-height:1.35;margin:0 0 16px}
.pgs-homepage .home-course-copy p{font-size:16px;color:var(--pgs-muted);margin:0 0 24px}
.pgs-homepage .home-course-copy a{margin-top:auto;font-size:.875rem;min-height:44px}
.pgs-homepage #home-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.pgs-homepage .home-faq-list{min-width:0}
.pgs-homepage .home-faq-list details{border-bottom:1px solid var(--pgs-line)}
.pgs-homepage .home-faq-list details:first-child{border-top:1px solid var(--pgs-line)}
.pgs-homepage .home-faq-list summary{position:relative;list-style:none;font-size:16px;font-weight:550;padding:24px 32px 24px 0;min-height:56px;line-height:1.65}
.pgs-homepage .home-faq-list summary::-webkit-details-marker{display:none}
.pgs-homepage .home-faq-list summary:after{content:'+';position:absolute;right:5px;top:22px;font-size:22px}
.pgs-homepage .home-faq-list details[open] summary:after{content:'−'}
.pgs-homepage .home-faq-list details>div{font-size:16px;line-height:1.85;padding:0 0 24px;color:var(--pgs-muted)}
.pgs-homepage #home-campus{background:var(--pgs-cream);max-width:none}
.pgs-homepage #home-campus>h2,.pgs-homepage .home-video-button,.pgs-homepage .home-video-fallback{max-width:1280px;margin-left:auto;margin-right:auto}
.pgs-homepage #home-campus h2{color:var(--pgs-blue)!important;margin-bottom:36px}
.pgs-homepage .home-video-button{display:block;position:relative;width:100%;padding:0;border:0;background:var(--pgs-blue);border-radius:4px;overflow:hidden}
.pgs-homepage .home-video-button img{display:block;width:100%;height:auto;cursor:pointer;object-fit:contain}
.pgs-homepage .home-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:72px;height:72px;background:var(--pgs-blue);color:white;border:1px solid #ffffff90;border-radius:50%;font-size:24px}
.pgs-homepage .home-video-fallback{display:block;width:fit-content;text-decoration:underline;text-underline-offset:5px;padding:16px 0;font-size:14px}
.pgs-homepage #home-closing{max-width:none;text-align:center;background:var(--pgs-blue);color:white;padding-top:80px;padding-bottom:80px}
.pgs-homepage #home-closing h2{color:white!important;max-width:850px;margin:0 auto 32px!important}
.pgs-homepage #home-closing .pgs-btn-med{background:var(--pgs-ice);color:var(--pgs-blue)}
.pgs-homepage .home-footer{background:#002c64;color:#dceafa;padding:65px var(--home-gutter) 25px}
.pgs-homepage .home-footer>.container-xxl{max-width:1280px;padding:0}
.pgs-homepage .home-footer .row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1.5fr;gap:25px;margin:0}
.pgs-homepage .home-footer [class*=col]{width:auto;min-width:0;padding:0;margin:0!important}
.pgs-homepage .home-footer h2{font:600 14px/1.5 var(--font-body);color:white;margin:0 0 20px;letter-spacing:0}
.pgs-homepage .home-footer p,.pgs-homepage .home-footer li,.pgs-homepage .home-footer a{font-size:.875rem;line-height:1.9;color:#dceafa}
.pgs-homepage .home-footer ul{list-style:none;padding:0}
.pgs-homepage .home-footer li{margin-bottom:10px}
.pgs-homepage .home-footer>.container-xxl:first-child .col-md-2:first-child>img{background:white;width:140px!important;padding:12px;object-fit:contain}
.pgs-homepage .home-footer .social-icons{display:flex;flex-wrap:wrap;gap:14px}
.pgs-homepage .home-footer .social-icons img{width:22px!important;max-height:24px}
.pgs-homepage .home-footer a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere}
.pgs-homepage .home-footer .social-icons a{justify-content:center;min-width:44px}
.pgs-homepage .mobile-menu-icon{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
.pgs-homepage .home-footer>.container-xxl:last-child .row{display:block;font-size:12px}
.pgs-homepage .modal{color:var(--pgs-blue)}
.pgs-homepage .modal-content{border-radius:4px;border:1px solid var(--pgs-line)}
.pgs-homepage .modal-header{padding:24px;border-bottom:1px solid var(--pgs-line)}
.pgs-homepage .modal-body{padding:24px}
.pgs-homepage .modal h2{font-size:30px}
.pgs-homepage .modal .form-floating>.form-control,.pgs-homepage .modal .form-floating>.form-select{height:64px;min-height:64px;padding:26px 14px 10px;border:1px solid #9db0bf;border-radius:4px;font-size:16px}
.pgs-homepage .modal .form-floating>label{font-size:14px;padding:17px 14px}
.pgs-homepage .modal .form-check-label{font-size:14px;line-height:1.8}
.pgs-homepage .modal .form-check-input{width:20px;height:20px;margin-top:3px}
.pgs-homepage .modal .btn-close{min-width:44px;min-height:44px;padding:8px;opacity:1;background-size:14px}
.pgs-homepage #youtubePlayer iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.pgs-homepage .home-video-dialog{width:min(1050px,calc(100vw - 32px));max-width:1050px;max-height:90dvh;padding:0;border:1px solid var(--pgs-line);border-radius:4px;color:var(--pgs-blue);overflow:auto}
.pgs-homepage .home-video-dialog:not([open]){display:none}
.pgs-homepage .home-video-dialog::backdrop{background:rgba(0,25,55,.76)}
.pgs-homepage .home-video-dialog .modal-dialog{margin:0;max-width:none;pointer-events:auto}
.pgs-homepage .home-video-dialog .modal-content{border:0}
.pgs-homepage .home-video-dialog h5{font:600 20px var(--font-body);margin:0}
.pgs-homepage .home-video-dialog .modal-header{display:flex;justify-content:space-between;align-items:center}
.pgs-homepage:not(.home-enhanced) .modal{display:block;position:static;height:auto;overflow:visible;opacity:1}
.pgs-homepage:not(.home-enhanced) .modal-dialog{max-width:800px;transform:none;margin:30px auto}
@media(max-width:1100px){.pgs-homepage{--home-gutter:40px}.pgs-homepage .main-menu{gap:18px}.pgs-homepage .home-hero{gap:28px}.pgs-homepage .home-hero h1{font-size:3.5625rem}.pgs-homepage .home-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pgs-homepage .home-footer .row{grid-template-columns:repeat(3,minmax(0,1fr))}.pgs-homepage .home-benefit-grid{gap:22px}.pgs-homepage .home-qualifications>.row{gap:35px}.pgs-homepage .home-timeline>.row:nth-of-type(2){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991px){.pgs-homepage .home-hero h1{font-size:3.125rem}}
@media(max-width:800px){.pgs-homepage{--home-gutter:24px}.pgs-homepage .home-section{padding-top:56px;padding-bottom:56px}.pgs-homepage .home-hero{grid-template-columns:1fr;gap:30px}.pgs-homepage .home-hero .container-xxl{margin:0;max-width:none}.pgs-homepage .home-hero h1{font-size:clamp(2.625rem,7.5vw,3.875rem)}.pgs-homepage .home-hero .mt-5{margin-top:20px!important}.pgs-homepage #main-banner{max-width:none}.pgs-homepage .home-benefit-grid{grid-template-columns:1fr;gap:34px}.pgs-homepage .home-benefit{display:grid;grid-template-columns:60px 1fr;gap:20px}.pgs-homepage .home-benefit img{grid-column:2}.pgs-homepage .home-qualifications>.row{grid-template-columns:1fr}.pgs-homepage .home-course-grid{grid-template-columns:1fr}.pgs-homepage #home-pathways .row.justify-content-evenly{grid-template-columns:1fr;gap:8px}.pgs-homepage #home-pathways .row.justify-content-between{grid-template-columns:1fr;gap:22px}.pgs-homepage #pathwaysImg1{order:1}.pgs-homepage #pathways1{order:2}.pgs-homepage #pathwaysImg2{order:3}.pgs-homepage #pathways2{order:4}.pgs-homepage #pathwaysImg3{order:5}.pgs-homepage #pathways3{order:6}.pgs-homepage #home-pathways .col-1{order:7}.pgs-homepage .home-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.pgs-homepage .home-logo img{height:70px}.pgs-homepage #home-faq{grid-template-columns:1fr;gap:10px}.pgs-homepage .home-footer{padding:48px 24px 24px}.pgs-homepage .home-footer .row{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.pgs-homepage .home-footer .row>div:last-child{grid-column:1/-1}.pgs-homepage .home-footer p,.pgs-homepage .home-footer a,.pgs-homepage .home-footer li{font-size:14px}.pgs-homepage .modal-body,.pgs-homepage .modal-header{padding:20px}}
@media(max-width:450px){.pgs-homepage .home-timeline>.row:nth-of-type(2){grid-template-columns:1fr}.pgs-homepage .home-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pgs-homepage .home-benefit{grid-template-columns:1fr;gap:16px}.pgs-homepage .home-benefit img{grid-column:1}.pgs-homepage .home-course-copy{padding:22px}.pgs-homepage .home-course-copy h3{font-size:22px}.pgs-homepage .home-play{width:56px;height:56px;font-size:20px}.pgs-homepage .home-hero .col-auto{display:block;margin-right:0!important}.pgs-homepage .home-hero .pgs-btn-big{width:100%}}

/* Align full-width surfaces with the inset sections, including wide monitors. */
.pgs-homepage .home-hero,.pgs-homepage #home-benefits,.pgs-homepage #home-pathways,.pgs-homepage #programmes,.pgs-homepage #home-campus,.pgs-homepage #home-closing,.pgs-homepage .home-footer{padding-inline:max(var(--home-gutter),calc((100% - var(--home-max))/2))}
.pgs-homepage .home-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.pgs-homepage #home-pathways .row.pathways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0!important}
.pgs-homepage #home-pathways .row.pathways>.col-auto{width:auto;min-width:0;margin:0!important;padding:0}
.pgs-homepage #home-pathways .pathways a>div{gap:12px}
.pgs-homepage #home-pathways .pathways a>div>div:first-child{flex-shrink:0}
.pgs-homepage .home-timeline>.row:nth-of-type(2)>div{margin-bottom:0!important}
.pgs-homepage .home-timeline>.row:nth-of-type(2)>div>p:last-child,.pgs-homepage .home-qualifications p:last-child,.pgs-homepage #home-pathways [id^=pathways]>p:last-child{margin-bottom:0}
.pgs-homepage .home-footer ul{margin-bottom:0}
.pgs-homepage .home-footer li:last-child{margin-bottom:0}
@media(max-width:800px){
  .pgs-homepage .home-hero{grid-template-columns:minmax(0,1fr)}
  .pgs-homepage #home-pathways .row.pathways{grid-template-columns:minmax(0,1fr);gap:16px}
  .pgs-homepage .home-qualifications .row>div{margin-top:0!important}
  .pgs-homepage .home-footer>.container-xxl:first-child>.row>div:first-child{grid-column:1/-1}
}

.pgs-homepage .home-hero h1{letter-spacing:-.035em;overflow-wrap:normal}

/* Keep the campus artwork and copy on one responsive content grid. */
.pgs-homepage .home-hero{position:relative;isolation:isolate;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;padding:56px max(var(--home-gutter),calc((100% - var(--home-max))/2));align-items:center;background:#fff}
.pgs-homepage .home-hero::before{content:none}
.pgs-homepage .home-hero>.banner-border,.pgs-homepage .home-hero .container-xxl{min-width:0;width:100%;max-width:none;margin:0;padding:0}
.pgs-homepage .home-hero h1{font-size:clamp(44px,4.8vw,68px);line-height:1.06;margin-bottom:28px;letter-spacing:-.035em}
.pgs-homepage .home-hero .mt-5{margin-top:0!important}
.pgs-homepage .home-hero .list-small-blue{margin-bottom:28px}
.pgs-homepage .home-hero .banner-border .row .row{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.pgs-homepage .home-hero .col-auto{display:block;margin:0!important}
.pgs-homepage #main-banner{align-self:center;justify-self:stretch;width:100%;max-width:none;min-width:0;min-height:0;border:0;border-radius:0;background:transparent;overflow:hidden}
.pgs-homepage #main-banner :is(.carousel-inner,.carousel-item){height:auto;min-height:0}
.pgs-homepage #main-banner picture{display:block;position:relative;width:100%;aspect-ratio:1.15;overflow:hidden}
/* Frame the building rather than the large white margins in the source. */
.pgs-homepage #main-banner img{display:block;position:absolute;left:-45%;top:50%;width:190%!important;max-width:none;height:auto!important;transform:translateY(-32%);opacity:1}
@media(max-width:991px){.pgs-homepage .home-hero{gap:24px}.pgs-homepage .home-hero h1{font-size:clamp(40px,5vw,52px)}}
@media(max-width:800px){
 .pgs-homepage .home-hero{grid-template-columns:minmax(0,1fr);padding:36px 24px;gap:20px}
 .pgs-homepage .home-hero h1{max-width:640px;font-size:clamp(40px,7vw,56px)}
 .pgs-homepage #main-banner{max-width:560px;justify-self:center}
 .pgs-homepage .home-hero .col-auto{flex:0 1 auto}
 .pgs-homepage .home-hero .pgs-btn-big{width:auto}
}
@media(max-width:380px){.pgs-homepage .home-hero .col-auto{width:100%!important;flex-basis:100%}.pgs-homepage .home-hero .pgs-btn-big{width:100%}}
