@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--purple:#6a0dad;--ink:#271336;--muted:#675e70;--line:#e8e2eb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #df9e24;outline-offset:5px}.skip{position:fixed;top:-80px;z-index:100;background:white;padding:12px}.skip:focus{top:0}header{height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 5%;background:#fff;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;font-family:'Playfair Display',Georgia,serif;font-size:25px;line-height:1.2}.brand img{border-radius:50%;object-fit:contain}.brand small{display:block;font:600 11px 'DM Sans',sans-serif;letter-spacing:2.4px;margin-top:7px;color:var(--purple)}nav{display:flex;gap:28px;font-size:14px}nav a:hover{color:var(--purple)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--purple);color:white;border:0;padding:16px 26px;border-radius:50px;font-weight:600;font-size:14px;cursor:pointer;transition:transform .2s,background .2s}.button:hover{background:#4f0984;transform:translateY(-2px)}.button span{font-size:20px}.button.small{padding:11px 22px}.button.white{background:white;color:var(--purple)}.menu{display:none}.hero{position:relative;min-height:740px;height:calc(100svh - 94px);max-height:1000px;isolation:isolate;overflow:hidden;color:#fff}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,29,40,.74),rgba(17,35,46,.18) 65%),linear-gradient(0deg,rgba(14,26,29,.65),transparent 40%);z-index:-2}.hero-copy{padding:70px 7% 160px;max-width:820px}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:700;color:var(--purple);margin-bottom:22px}.eyebrow.light{color:white}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(56px,6vw,88px);line-height:1.07;letter-spacing:-2px;margin-bottom:24px}h1 em{color:#ffdf83}h1 em,h2 em{font-weight:400}h2{font-size:clamp(38px,4vw,58px);line-height:1.14;letter-spacing:-1.5px;margin-bottom:25px}h2 em{color:var(--purple)}.hero-copy p{font-size:18px;line-height:1.6;margin-bottom:30px}.hero-label{position:absolute;right:6%;bottom:165px;font:italic 24px/1.4 'Playfair Display',Georgia,serif;text-align:right}.hero-bottom{position:absolute;bottom:0;display:grid;grid-template-columns:repeat(3,1fr) 1.3fr;width:100%;padding:0 6%;border-top:1px solid #ffffff45;align-items:center;min-height:98px;font-size:12px;letter-spacing:2px}.hero-bottom span{padding:20px 0}.hero-bottom a{font-size:14px;letter-spacing:0;text-align:right}.section{padding:100px 7%;scroll-margin-top:0}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:45px}.section-top p{max-width:310px;color:var(--muted)}.section-top h2{margin:0}.programmes{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.photo{height:340px;position:relative;overflow:hidden;border-radius:20px;margin-bottom:24px;background:#eee}.photo img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.photo:hover img{transform:scale(1.04)}.photo span{position:absolute;bottom:16px;left:16px;background:white;color:var(--ink);padding:7px 13px;border-radius:24px;font-size:12px;letter-spacing:1px}.programmes article:nth-child(1) .photo{border-bottom:5px solid #efa328}.programmes article:nth-child(2) .photo{border-bottom:5px solid #3c998d}.programmes article:nth-child(3) .photo{border-bottom:5px solid var(--purple)}h3{font-size:29px;line-height:1.25;margin-bottom:12px}.programmes p,.about p,.admissions p{color:var(--muted);max-width:480px}.caption{font-size:12px;color:var(--muted);margin:25px 0 0}.about{background:#f7f4fa;display:grid;grid-template-columns:1fr 1fr;gap:9%}.values article{display:flex;gap:24px;border-bottom:1px solid #ded6e5;padding:22px 0}.values article:first-child{padding-top:0}.values article>span{font-size:13px;color:var(--purple);padding-top:6px}.values h3{font-size:27px}.values p{margin-bottom:0}.campus{text-align:center;border-bottom:1px solid var(--line)}.campus p{color:var(--muted)}.text-link{display:inline-block;margin-top:10px;border-bottom:1px solid var(--purple);padding-bottom:6px;color:var(--purple);font-weight:600}.admissions{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact{display:block;font-size:25px;margin-top:30px;color:var(--purple)}.email{display:block;margin-top:6px}form{background:#f7f4fa;padding:36px;border-radius:22px;border-top:4px solid var(--purple)}form h3{margin-bottom:26px}label{display:block;font-size:14px;font-weight:500;margin-top:20px}label span{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:0;border-bottom:1px solid #cfc4d7;background:transparent;color:var(--ink);padding:12px 0;border-radius:0}input:focus,select:focus,textarea:focus{outline:0;border-bottom:2px solid var(--purple)}textarea{resize:vertical}form .button{width:100%;margin-top:28px}.form-note{font-size:12px;margin:12px 0 0}footer{background:#261235;color:#fff;padding:48px 7%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}footer .brand{display:block}footer .brand small{color:#e6cdf9}footer p{font-size:13px;margin:0}footer div{display:flex;gap:20px;font-size:13px}footer>small{width:100%;border-top:1px solid #ffffff25;padding-top:22px;color:#d2c5dc;font-size:12px}@media(min-width:1500px){.section{padding-left:max(7%,calc((100vw - 1280px)/2));padding-right:max(7%,calc((100vw - 1280px)/2))}}@media(max-width:1000px){nav{gap:16px}header{gap:15px;padding:0 4%}.brand{font-size:22px}.hero{min-height:700px}.hero-label{display:none}.photo{height:290px}.section{padding:75px 6%}.admissions{gap:6%}}@media(max-width:760px){header{height:80px}.brand{font-size:21px}.brand img{width:38px;height:38px}.brand small{font-size:10px}header>.button{display:none}.menu{display:block;background:white;color:var(--purple);border:1px solid var(--line);border-radius:30px;padding:8px 16px}nav{display:none;position:absolute;top:80px;left:0;right:0;padding:20px 6%;background:white;box-shadow:0 10px 15px #0001;flex-direction:column}nav.open{display:flex}.hero{min-height:680px;height:calc(100svh - 80px)}.hero-copy{padding:65px 7% 150px}h1{font-size:58px}.hero-image{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#14252abf,#17273133),linear-gradient(0deg,#14251c99,transparent)}.hero-bottom{grid-template-columns:repeat(3,1fr);font-size:10px;letter-spacing:1px;min-height:85px;padding:12px 7%}.hero-bottom a{grid-column:1/-1;text-align:left;font-size:13px}.hero-bottom span{padding:5px 0}.section-top{display:block}.section-top p{max-width:none;margin-top:22px}.programmes{grid-template-columns:1fr;gap:32px}.photo{height:380px}.about,.admissions{grid-template-columns:1fr;gap:40px}.section{padding:65px 7%}form{padding:26px}footer{align-items:flex-start;flex-direction:column;gap:22px}footer div{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Campus photography with gentle interactive depth. */
.hero{height:auto;min-height:0;max-height:none;display:flex;flex-direction:column;background:white;overflow:hidden}.hero-image{position:relative;inset:auto;width:100%;height:auto;object-fit:contain;z-index:0;order:0;transform:translate3d(var(--photo-x,0px),var(--photo-y,0px),0) scale(1.015);transition:transform .5s ease-out;will-change:transform}.hero-shade{display:none}.hero-copy{order:1;max-width:none;width:100%;padding:40px 7%;color:var(--ink);display:grid;grid-template-columns:1.25fr 1fr;column-gap:7%;background:white;z-index:1}.hero-copy .eyebrow{color:var(--purple);grid-column:1/-1;margin-bottom:14px}.hero-copy h1{font-size:clamp(40px,4.5vw,64px);grid-row:2/4;margin-bottom:0;line-height:1.1}.hero-copy h1 br{display:none}.hero-copy h1 em{color:var(--purple)}.hero-copy p{font-size:17px;color:var(--muted);margin-bottom:18px}.hero-copy .white{justify-self:start;background:var(--purple);color:white}.hero-bottom{order:2;position:relative;background:#f7f4fa;color:var(--ink);border:0;min-height:75px}.hero-label{display:none}.enhanced-label{order:0;position:relative;margin-top:-29px;margin-right:15px;align-self:flex-end;font-size:10px;z-index:2;padding:3px 9px;background:#ffffffd9;color:var(--ink);border-radius:4px}.hero-bottom a{color:var(--purple)}@media(max-width:760px){.hero-copy{display:block;padding:32px 7%}.hero-copy h1{font-size:43px;margin-bottom:20px}.hero-image{transform:none;will-change:auto}.hero-bottom{min-height:90px}.enhanced-label{font-size:9px}}@media(prefers-reduced-motion:reduce){.hero-image{transform:none!important;transition:none;will-change:auto}}
