*{box-sizing:border-box}body{margin:0;color:#173653;background:#ffffff;font:16px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}h1,h2,h3{font-family:Georgia,serif;font-weight:500;line-height:1.12}h1{font-size:clamp(42px,5.5vw,76px);letter-spacing:-2px;margin:18px 0 25px;white-space:pre-line}h2{font-size:35px;margin:0 0 20px}h3{font-size:24px;margin:0 0 12px}p{margin:0 0 18px}.wrap{max-width:1180px;margin:auto;padding:0 32px}.review{background:#07346c;color:white;text-align:center;padding:9px 20px;font-size:12px;letter-spacing:.4px}.review a{margin-left:14px;text-decoration:underline}.utility{border-bottom:1px solid #eadfe5;font-size:12px;padding:9px 0;text-align:right}.utility a{margin-left:22px}.header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:22px;padding-bottom:22px}.logo{display:block;width:145px;height:174px;object-fit:contain}.header{background:#fff;padding-top:8px;padding-bottom:8px}.nav{flex-wrap:wrap;justify-content:flex-end;gap:18px}.footer-logo{display:block;width:145px;height:auto;margin:0 0 20px;mix-blend-mode:multiply}h1,h2,h3{color:#07346c}.cta h2{color:#fff}.btn:hover{background:#124985;text-decoration:none}.btn.light:hover{background:#ffda65}.btn.outline:hover{background:#f1f0eb}.theme-jump a:hover,.theme-preview a:hover{border-color:#e93378}.nav a:hover,.nav summary:hover{color:#a52058}.nav .btn:hover{color:#fff}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b91d59}@media(max-width:900px){.header{flex-direction:row!important;align-items:center!important}.nav{justify-content:flex-start}.logo{width:118px;height:142px}}@media(max-width:620px){.header{flex-direction:column!important;align-items:flex-start!important;padding-top:12px;padding-bottom:18px}.logo{width:105px;height:126px}.nav{gap:12px 16px}.nav .btn{padding:10px 16px}}.nav{display:flex;align-items:center;gap:22px;font-size:14px}.nav details{position:relative}.nav summary{cursor:pointer;list-style:none}.nav details>div{position:absolute;z-index:4;top:32px;left:-16px;background:white;box-shadow:0 10px 30px #0002;padding:18px;width:210px;border-radius:12px}.nav details>div a{display:block;padding:7px}.btn{display:inline-block;padding:13px 24px;border-radius:8px;background:#07346c;color:#fff;border:0;font-weight:bold;font-size:14px;cursor:pointer}.btn.light{background:#ffc51b;color:#173653}.btn.outline{background:transparent;border:1px solid #07346c;color:#07346c;margin-left:10px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;padding-top:55px;padding-bottom:70px;align-items:center}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:bold;color:#a52058}.intro{font-size:19px;max-width:520px}.visual{position:relative}.visual img{width:100%;height:480px;object-fit:cover;border-radius:120px 14px 120px 14px}.star{position:absolute;right:-16px;top:-35px;color:#ffc51b;font-size:96px;line-height:1;text-shadow:0 3px #fff}.photo-note{font-size:11px;color:#59677c;margin-top:10px;text-align:center}.section{padding:62px 0;border-top:1px solid #eee2e9}.section:nth-child(even){background:#f1f0eb}.lead{max-width:740px;font-size:17px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px}.card{background:white;border:1px solid #eadfe8;padding:28px;border-radius:16px}.card p{font-size:15px;margin-bottom:8px}.card a{font-size:13px;font-weight:bold;color:#07346c}.num{font-size:12px;letter-spacing:2px;color:#a52058;margin-bottom:16px}.cta{background:#07346c;color:#fff;padding:48px;border-radius:24px;display:flex;justify-content:space-between;align-items:center;gap:28px;margin:60px auto}.cta h2{font-size:32px;margin-bottom:10px}.cta p{margin:0;color:#edf2fb}.footer{padding:45px 0;background:#f1f0eb;font-size:13px}.footgrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:35px}.footer h3{font-size:19px}.copyright{border-top:1px solid #e3d5e0;margin-top:28px;padding-top:20px;font-size:11px}.guide{background:#fff7d9;border:1px solid #ebd99b;border-radius:12px;padding:20px;margin:35px auto}.guide summary{font-size:13px;font-weight:bold;cursor:pointer}.guide p{font-size:13px;margin:12px 0 0}.faq{padding:22px 0;border-bottom:1px solid #e3d5e0}.faq summary{font-weight:bold;cursor:pointer;font-size:17px}.faq p{padding-top:15px;max-width:850px}.form{max-width:820px;margin:auto;padding:36px;background:white;border:1px solid #e3d5e0;border-radius:20px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{font-size:13px;font-weight:bold}input,select,textarea{display:block;width:100%;border:1px solid #b6c3d5;border-radius:7px;background:#ffffff;padding:12px;margin-top:7px}.wide{grid-column:1/-1}.form small{display:block;margin:18px 0;font-size:12px}.status{color:#07346c;font-weight:bold;margin-top:18px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:25px 0}.gallery img{width:100%;height:230px;object-fit:cover;border-radius:16px}.pagelist{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.pagelist a{padding:18px;border:1px solid #e3d5e0;background:white;border-radius:10px}.table{width:100%;border-collapse:collapse;font-size:14px}.table td,.table th{border-bottom:1px solid #e3d5e0;padding:14px;text-align:left}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:15px;z-index:10}@media(max-width:900px){.header{align-items:flex-start;flex-direction:column}.nav{flex-wrap:wrap;gap:15px}.hero{gap:28px}.visual img{height:380px}.wrap{padding-left:22px;padding-right:22px}}@media(max-width:620px){.hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:35px}.visual img{height:290px;border-radius:70px 12px 70px 12px}.hero h1{font-size:45px}.cards,.footgrid,.formgrid{grid-template-columns:1fr}.wide{grid-column:auto}.section{padding:38px 0}h2{font-size:30px}.cta{margin:35px 20px;padding:28px;display:block}.cta .btn{margin-top:20px}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:160px}.pagelist{grid-template-columns:1fr 1fr}.utility{text-align:left}.form{padding:22px}.table{font-size:12px}.review{font-size:11px}.nav details>div{max-width:190px}.star{right:0}.btn.outline{margin-left:0;margin-top:10px}}
@media print{.review,.utility,.nav,.footer,.cta,.guide,.btn,.form{display:none}.hero{padding:20px 0}.hero h1{font-size:40px}.visual img{height:220px}.section{padding:22px 0;break-inside:avoid}.cards{gap:10px}.card{padding:16px}.wrap{padding:0 20px}.photo-note{display:none}}
.theme-intro{max-width:740px}.theme-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.theme-jump a{background:#fff;border:1px solid #e3d5e0;border-radius:25px;padding:8px 16px;font-size:13px}.theme-row{display:grid;grid-template-columns:340px 1fr;gap:70px;align-items:center}.theme-row img{width:100%;height:auto;aspect-ratio:1;display:block;object-fit:cover;border-radius:50%}.theme-row .num{margin-bottom:15px}.theme-row h2{font-size:40px}.theme-row p{font-size:18px;max-width:630px}.theme-section:nth-child(even){background:#f1f0eb}.theme-section:nth-child(odd){background:#fff}.theme-preview{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-top:28px}.theme-preview a{background:white;border:1px solid #eadfe8;border-radius:16px;overflow:hidden;padding:12px;text-align:center}.theme-preview img{display:block;width:100%;height:auto}.theme-preview span{font-size:13px;font-weight:bold;display:block;margin-top:8px}.compare-box{background:#fff7d9;border:1px solid #ebd99b;padding:22px;border-radius:15px;margin:24px 0}.program-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;padding:55px 32px;align-items:center}.program-art{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;transform:rotate(-3deg)}.program-art img{width:100%;border-radius:8px;background:white;padding:8px}.program-hero h1{font-size:clamp(38px,5vw,65px)}.theme-section{scroll-margin-top:24px}@media(max-width:900px){.theme-preview{grid-template-columns:repeat(3,1fr)}.theme-row{grid-template-columns:260px 1fr;gap:35px}}@media(max-width:620px){.theme-row,.program-hero{grid-template-columns:1fr}.theme-row{gap:25px}.theme-row img{max-width:340px;margin:auto}.theme-row h2{font-size:32px}.theme-preview{grid-template-columns:repeat(2,1fr);gap:12px}.program-art{max-width:430px;transform:none}.program-hero{padding-top:30px;padding-bottom:35px}}
.program-photo img{display:block;width:100%;height:auto;border-radius:8px}

/* Small theme images, five across in two rows */
.program-circle-heading{margin:26px 0 18px;font-size:24px}
.program-circle-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px 16px;max-width:800px}
.program-circle-grid a{display:flex;min-width:0;flex-direction:column;align-items:center;gap:8px;text-align:center;color:#07346c;font-size:12px;font-weight:600;line-height:1.35;border-radius:8px}
.program-circle-grid img{display:block;width:88px;max-width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #deddd5;transition:box-shadow .2s}
.program-circle-grid a:hover{text-decoration:none;color:#a52058}
.program-circle-grid a:hover img,.program-circle-grid a:focus-visible img{box-shadow:0 0 0 2px #a52058}
@media(max-width:620px){.program-circle-heading{font-size:22px}.program-circle-grid{gap:16px 8px}.program-circle-grid img{width:56px}.program-circle-grid a{font-size:10px;gap:7px}}
@media(prefers-reduced-motion:reduce){.program-circle-grid img{transition:none}}

/* Crop the original theme photographs to true circles at both sizes. */
.theme-image{width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden}
.theme-row .theme-image img{display:block;width:100%;height:100%;max-width:none;margin:0;aspect-ratio:auto;object-fit:cover;border-radius:0}
.program-circle-grid img{height:88px;object-fit:cover}
@media(max-width:620px){.theme-image{max-width:340px;margin-inline:auto}.program-circle-grid img{height:56px}}

/* Original theme photos on the home page. */
.theme-preview img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%}

.home-theme-image{width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden}
.theme-preview .home-theme-image img{width:100%;height:100%;object-fit:cover;aspect-ratio:auto}

.home-program-photo{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;margin-bottom:22px}

/* Matching program links in section 03 of Penrith. */
.penrith-program-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px}
.penrith-program-cards a{display:block;min-width:0;color:#07346c;font-weight:bold;font-size:15px;text-decoration:none}
.penrith-program-cards img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:12px;margin-bottom:14px}
.penrith-program-cards a:hover span{text-decoration:underline}
.penrith-program-cards a:focus-visible{outline:3px solid #a52058;outline-offset:5px;border-radius:12px}
@media(max-width:620px){.penrith-program-cards{gap:14px}.penrith-program-cards a{font-size:13px}}

/* Equal, clipped image frames for program cards on every screen size. */
.program-card-image{display:block;position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:12px;margin-bottom:16px}
.program-card-image img,.penrith-program-cards .program-card-image img{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;object-fit:cover;object-position:center;border-radius:0;aspect-ratio:auto}
.program-card-image.graduation img,.penrith-program-cards .program-card-image.graduation img{transform:scale(1.16);transform-origin:30% 40%;object-position:30% 40%}
@media(max-width:620px){.program-card-image{margin-bottom:12px}}

/* Direct contact links */
.card .bsk-contact-link { font: inherit; color: inherit; overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 3px; }
.card .bsk-contact-link:hover { color: #a52c61; }
