/* Bold, code-native editorial graphics for the academy. */
header{border-bottom:2px solid #303b5b}.brand{font-weight:700}.brandmark{font-size:38px}
.hero{padding-top:70px;padding-bottom:80px;gap:5%;overflow:hidden;isolation:isolate}
.hero:after{content:'IPA';position:absolute;left:1%;top:8px;font-size:clamp(140px,25vw,380px);font-weight:900;letter-spacing:-.08em;line-height:1;color:transparent;-webkit-text-stroke:1px #b292ff15;pointer-events:none;z-index:-1}
h1{font-weight:800;letter-spacing:-3.7px;font-size:clamp(44px,4.9vw,75px)}
h1 em{background:var(--mint);color:#0b1024;-webkit-text-fill-color:#0b1024;background-clip:initial;-webkit-background-clip:initial;box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 6px 3px;line-height:1.25}
.hero-copy .eyebrow{background:#252440;border:1px solid #6d5a94;width:fit-content;padding:8px 11px;transform:rotate(-2deg)}
.learning-board{transform:rotate(2deg);border:2px solid #c4a6ff;background:#151d35;box-shadow:12px 13px 0 #7050af;border-radius:4px;padding:25px 27px}
.board-top{border-bottom:1px solid #50506f;padding-bottom:14px}.board-logo{font-size:20px;font-weight:900;letter-spacing:-1px}
.poster-stage{position:relative;height:203px;margin:5px 0 13px;overflow:hidden}
.poster-stage h2{position:absolute;top:38px;left:0;margin:0;max-width:50%;font-weight:800;font-size:35px;line-height:1.05;z-index:1;letter-spacing:-1.5px}
.poster-art{position:absolute;right:-45px;top:-3px;height:218px;width:75%;overflow:visible}
.board-grid{gap:10px}.board-grid a{min-height:116px;border-radius:0;font-weight:700;font-size:18px;padding:14px;box-shadow:none}.board-grid a:nth-child(1){border-radius:0 22px 0 0}.board-grid a:nth-child(2){border-radius:22px 0 0 0}.board-grid a:nth-child(3){border-radius:0 0 22px 0}.board-grid a:nth-child(4){border-radius:0 0 0 22px}.board-icon{font-size:25px}.arrow{font-size:27px;right:14px;bottom:13px}.board-bottom{margin-top:18px;font-weight:700}
.ribbon{background:var(--lime);color:#172325;border-color:var(--lime);padding-top:19px;padding-bottom:19px;position:relative;font-weight:800;font-size:15px;letter-spacing:-.3px}.ribbon>span:first-child{color:#172325;font-weight:700}.ribbon>span:not(:first-child):before{content:'✳';color:#173039;margin-right:12px;font-size:20px;vertical-align:middle}
.section h2{font-weight:700;letter-spacing:-1.7px}.section-heading{position:relative}.section-heading:after{content:'01';position:absolute;top:-35px;right:0;font-size:125px;font-weight:900;line-height:1;letter-spacing:-10px;color:transparent;-webkit-text-stroke:1px #b292ff24;pointer-events:none}.section-heading>p{position:relative;z-index:1}
.course-card{border-radius:0;border-top-width:5px;position:relative;overflow:hidden;background:#171e36}.course-card:hover{box-shadow:7px 7px 0 #7050af;transform:translate(-3px,-3px)}
.card-top{height:100px;align-items:flex-start;position:relative;margin-bottom:15px}.card-top>span:last-child{font-size:44px;font-weight:800;line-height:1;letter-spacing:-3px;color:#a99ac5}.course-icon{width:65px;height:65px;font-size:35px;border-radius:0;transform:rotate(-8deg);border-width:2px;background:#c6afff;color:#152039;position:relative;z-index:1}
.course-card:nth-child(2) .course-icon{background:var(--mint);color:#152039;transform:rotate(8deg);border-radius:50%}.course-card:nth-child(3) .course-icon{background:#8cceff;color:#152039;transform:rotate(-8deg);border-radius:5px}.course-card:nth-child(4) .course-icon{background:var(--lime);color:#152039;transform:rotate(8deg);border-radius:50% 50% 0 50%}
.card-top:after{content:'';width:88px;height:88px;position:absolute;left:26px;top:8px;border:1px solid #756790;border-radius:50%;transform:rotate(-25deg) scaleY(.65)}
.course-card:nth-child(2) .card-top:after{border-color:#69f5d05c;left:18px;transform:rotate(30deg) scaleY(.65)}.course-card:nth-child(3) .card-top:after{border-color:#8cceff77;border-radius:0;transform:rotate(20deg)}.course-card:nth-child(4) .card-top:after{border-color:#d3fd835c;transform:rotate(-35deg) scaleY(.65)}
.course-card h3{font-weight:700}.course-button{font-size:13px}.course-button>span:last-child{font-size:25px}
.funding{border-radius:0;border:2px solid #8870ae;background:linear-gradient(115deg,#33234f,#222045 55%,#103d41)}
.funding:before{width:370px;height:370px;right:-110px;top:-230px;border:2px solid #69f5d02e;box-shadow:0 0 0 28px #69f5d00b,0 0 0 56px #b292ff0f,0 0 0 84px #b292ff08}
.funding-stamp{border:2px solid #bfa3f8;background:#bfa3f8;color:#141b36;padding:20px;transform:rotate(-4deg);box-shadow:7px 7px 0 #776199}.funding-stamp>span:first-child{color:#141b36;font-size:53px;font-weight:900}.funding-stamp>span:nth-child(2){color:#252440;font-weight:700}.stamp-arrow{color:#141b36;right:14px;top:12px;font-size:46px}
.steps>div>span{font-size:29px;font-weight:800;letter-spacing:-1.5px;line-height:1.1}.steps h3{font-weight:700}.steps>div{border-bottom-width:2px}
.about{position:relative;overflow:hidden}.about:before{content:'↗';font-size:260px;font-weight:900;line-height:1;position:absolute;right:25px;bottom:-65px;color:#69f5d008;pointer-events:none}
.faq-list summary{font-weight:600}.faq-list summary:after{font-size:26px;line-height:1}
.enquiry{position:relative;isolation:isolate;overflow:hidden}.enquiry:before{content:'';width:460px;height:460px;border:1px solid #b292ff24;position:absolute;bottom:-360px;left:20px;transform:rotate(30deg);box-shadow:0 0 0 25px #b292ff09,0 0 0 50px #b292ff06;z-index:-1}
form{border-radius:0;border-top:4px solid var(--mint)}.button{border-radius:2px;font-weight:700}dialog{border-radius:2px}
html[lang=zh-Hans] h1{font-weight:800;line-height:1.35}html[lang=zh-Hans] .poster-stage h2{font-size:32px}
@media(max-width:1050px){h1{letter-spacing:-2.5px}.poster-stage{height:190px}.poster-stage h2{font-size:30px;top:45px}.poster-art{right:-45px;width:78%;height:200px}.learning-board{padding:22px}.ribbon{font-size:12px}.ribbon>span:not(:first-child):before{font-size:17px;margin-right:7px}}
@media(max-width:720px){.hero{padding-top:45px;padding-bottom:58px;gap:45px}.hero:after{font-size:220px;top:10px}.hero h1{font-size:49px;letter-spacing:-2px}.learning-board{transform:rotate(0deg);box-shadow:8px 9px 0 #7050af;padding:25px}.poster-stage{height:198px}.poster-stage h2{font-size:34px;top:47px}.poster-art{height:210px;right:-38px}.board-grid a{min-height:119px}.ribbon{font-size:10px;gap:7px}.ribbon>span:first-child{font-size:11px}.ribbon>span:not(:first-child):before{font-size:12px;margin-right:4px}.card-top{height:90px}.card-top>span:last-child{font-size:34px}.course-icon{width:51px;height:51px;font-size:29px}.card-top:after{height:68px;width:68px;left:14px;top:9px}.course-card:nth-child(2) .card-top:after{left:10px}.section-heading:after{font-size:100px;top:-10px;right:-8px}.funding-stamp{max-width:300px;margin-left:4px}.funding-stamp>span:first-child{font-size:45px}.stamp-arrow{top:14px}.about:before{font-size:200px}.section h2{letter-spacing:-1px}}
@media(max-width:370px){.hero h1{font-size:42px}.poster-stage h2{font-size:29px}.poster-art{right:-40px}}
