/* Reference-led native blocks. No image of a whole page is used as layout. */
.als-shell { width:min(var(--als-width),calc(100% - var(--als-gutter)*2)); margin-inline:auto; }
.als-front-content > * { margin-block:0; }
.als-front-content { background:var(--als-paper); }
.als-front-content :where(h1,h2,h3,h4) { font-family:var(--als-serif); color:var(--als-ink); letter-spacing:-.035em; }
.als-front-content :where(p,figure,.wp-block-columns) { margin-block-start:0; }
.als-front-content .wp-block-columns { margin-block-end:0; }
.als-front-content p { line-height:1.65; }
.als-front-content a { text-underline-offset:.22em; }
.als-button,.als-front-content .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:46px; padding:12px 20px; border:1px solid var(--als-primary); border-radius:var(--als-radius); background:var(--als-primary); color:#fff; font:600 13px/1.5 var(--als-sans); text-decoration:none; }
.als-button:hover,.als-front-content .wp-block-button__link:hover { color:#fff; background:var(--als-hover); border-color:var(--als-hover); }
.als-front-content .is-style-outline .wp-block-button__link { color:var(--als-deep); background:transparent; }
.als-front-content .is-style-outline .wp-block-button__link:hover { background:var(--als-soft); }
.als-front-content .wp-block-buttons { gap:12px; }
.als-eyebrow { margin:0 0 12px; font:700 12px/1.5 var(--als-sans); letter-spacing:.065em; text-transform:uppercase; color:var(--als-gold-ink); }
.als-hero { overflow:hidden; background:var(--als-paper); }
.als-hero-columns { gap:0; min-height:550px; max-width:1600px; margin-inline:auto; }
.als-hero-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:38px 18px 38px max(var(--als-gutter),calc((100vw - var(--als-width))/2)); position:relative; z-index:1; }
.als-hero h1 { margin:0 0 18px; max-width:10ch; font-size:clamp(44px,4.3vw,64px); font-weight:700; line-height:1.02; letter-spacing:-.04em; }
.als-hero .als-lead { max-width:32ch; margin:0 0 24px; color:var(--als-ink); font-size:16px; line-height:1.55; }
.als-hero-copy .wp-block-buttons { margin:0; flex-wrap:wrap; }
.als-hero-media { position:relative; align-self:stretch; background:var(--als-gold); mask:url(images/hero-mask.svg) 0 0/100% 100% no-repeat; }
.als-hero-photo { margin:0; position:absolute; inset:0 0 0 5px; mask:url(images/hero-mask.svg) 0 0/100% 100% no-repeat; }
.als-hero-photo img { width:100%; height:100%; object-fit:cover; object-position:60% center; }
.als-hero-photo figcaption,.als-about-photo figcaption { position:absolute; right:12px; bottom:12px; max-width:calc(100% - 24px); margin:0; padding:4px 9px; background:#063f32; color:#fff; font:10px/1.5 var(--als-sans); border-radius:3px; }
.als-notice { background:var(--als-deep); color:#fff; }
.als-notice-inner { display:flex; align-items:center; gap:30px; min-height:56px; }
.als-notice-inner p { margin:0; }
.als-notice-label { flex-shrink:0; padding-right:30px; border-right:1px solid #708e80; font:600 21px/1.3 var(--als-serif); }
.als-notice-label::before { content:'♧'; margin-right:14px; color:var(--als-gold); font:500 27px/1 var(--als-sans); }
.als-notice a { color:#fff; font-size:14px; text-decoration:none; }
.als-notice a:hover { text-decoration:underline; }
.als-notice .wp-block-post-template { padding:0; margin:0; list-style:none; }
.als-notice .wp-block-post-title { margin:0; font:400 14px/1.5 var(--als-sans); }
.als-section { padding-block:var(--als-space); }
.als-section h2 { margin:0 0 28px; font-size:clamp(28px,2.9vw,40px); font-weight:700; line-height:1.17; }
.als-centered { text-align:center; }
.als-section-symbol { display:flex; align-items:center; justify-content:center; gap:18px; margin:0 0 14px; font:26px/1 var(--als-serif); color:var(--als-gold-ink); }
.als-section-symbol::before,.als-section-symbol::after { content:''; width:70px; height:1px; background:var(--als-gold); }
.als-units { padding-block:32px 38px; }
.als-unit-grid { gap:20px; }
.als-unit { position:relative; padding:22px 18px 20px 88px; min-height:130px; background:var(--als-white); border:1px solid var(--als-rule); border-radius:var(--als-radius); box-shadow:0 2px 8px rgb(18 54 36 / 3%); }
.als-unit::before { position:absolute; left:23px; top:30px; content:''; width:44px; height:44px; background:var(--unit-color,var(--als-primary)); mask:url(images/book.svg) center/contain no-repeat; }
.als-unit-0 { --unit-color:#2563a0; }.als-unit-1 { --unit-color:#0f827c; }.als-unit-2 { --unit-color:#54852b; }
.als-unit h3 { margin:0 0 5px; font-size:32px; line-height:1.1; }
.als-unit p { margin:0 0 6px; font-size:12px; line-height:1.5; }
.als-text-link { font-size:14px; font-weight:600; }
.als-text-link a { color:var(--als-primary); text-decoration:none; }
.als-text-link a:hover { text-decoration:underline; }
.als-text-link span { display:inline-block; margin-left:8px; }
.als-about { padding-block:0 30px; }
.als-about .wp-block-columns { gap:56px; }
.als-about-photo { position:relative; margin:0; border-start-end-radius:86px; overflow:hidden; }
.als-about-photo img { width:100%; aspect-ratio:1.8; object-fit:cover; object-position:left 60%; }
.als-about-photo figcaption { right:8px; bottom:8px; }
.als-about-copy { position:relative; padding-left:28px; }
.als-about-copy::before { content:''; position:absolute; left:0; top:5px; height:80px; width:3px; background:var(--als-gold); }
.als-about-copy .als-eyebrow { margin-bottom:8px; }
.als-about-copy h2 { margin-bottom:14px; }
.als-about-copy p:not(.als-eyebrow) { max-width:49ch; margin-bottom:16px; font-size:14px; line-height:1.65; }
.als-news { padding-block:24px 44px; }
.als-news-grid .wp-block-post-template { grid-template-columns:1.35fr 1fr 1fr; gap:24px; padding:0; }
.als-news-grid .wp-block-post-template > li { margin:0; min-width:0; }
.als-story { height:100%; padding-bottom:20px; border:1px solid var(--als-rule); border-radius:var(--als-radius); background:var(--als-white); overflow:hidden; }
.als-story > :not(.wp-block-post-featured-image) { margin-inline:20px; }
.als-story .wp-block-post-featured-image { margin:0 0 18px; }
.als-story .wp-block-post-featured-image img { aspect-ratio:1.8; object-fit:cover; }
.als-story:not(:has(.wp-block-post-featured-image))::before { content:'Ilustrasi · bukan dokumentasi kegiatan'; display:flex; align-items:end; box-sizing:border-box; padding:9px 12px; width:100%; aspect-ratio:1.8; background:linear-gradient(0deg,#063f32,transparent 60%),url(images/study.webp) center/cover; color:#fff; font:10px/1.4 var(--als-sans); margin-bottom:18px; }
.als-news-grid .wp-block-post-template > li:nth-child(2) .als-story:not(:has(.wp-block-post-featured-image))::before { background-image:linear-gradient(0deg,#063f32,transparent 60%),url(images/courtyard.webp); }
.als-news-grid .wp-block-post-template > li:nth-child(3) .als-story:not(:has(.wp-block-post-featured-image))::before { background-position:center,85% center; background-image:linear-gradient(0deg,#063f32,transparent 60%),url(images/courtyard.webp); }
.als-post-date { margin-block:0 8px; color:var(--als-muted); font:500 11px/1.4 var(--als-sans); }
.als-story h3 { font-size:24px; line-height:1.17; margin-block:0 12px; }
.als-story .wp-block-post-title a { color:var(--als-ink); text-decoration:none; }
.als-story .wp-block-post-title a:hover { text-decoration:underline; }
.als-story .wp-block-post-excerpt { font-size:13px; line-height:1.65; }
.als-story .wp-block-post-excerpt__excerpt { margin-block:0 14px; }
.als-story .wp-block-post-excerpt__more-text { margin-block:0; }
.als-story .wp-block-post-excerpt__more-link { font-size:12px; font-weight:600; color:var(--als-primary); text-decoration:none; }
.als-news-more { margin:22px 0 0; text-align:right; }
.als-ppdb { padding-block:32px; background:var(--als-deep); color:#fff; position:relative; overflow:hidden; }
.als-ppdb::before { content:''; position:absolute; left:-35px; top:5px; width:160px; height:160px; border:20px double #416c56; border-radius:80px 80px 0 0; transform:rotate(45deg); opacity:.45; pointer-events:none; }
.als-ppdb-inner { position:relative; display:flex; align-items:center; gap:30px; justify-content:space-between; padding-left:36px; }
.als-ppdb h2 { font-size:clamp(28px,3vw,39px); line-height:1.15; color:#fff; margin:0 0 8px; }
.als-ppdb p { margin:0; font-size:13px; }
.als-ppdb .wp-block-buttons { flex-shrink:0; margin:0; }
.als-front-content .als-gold-button .wp-block-button__link { background:var(--als-gold); border-color:var(--als-gold); color:#123127; }
.als-front-content .als-gold-button .wp-block-button__link:hover { background:#ebc75d; border-color:#ebc75d; }
@media(min-width:1600px) { .als-hero-copy { padding-left:100px; } }
@media(max-width:1100px) and (min-width:782px) {
 .als-hero-columns { min-height:500px; }.als-hero h1 { font-size:48px; }
 .als-hero-copy { padding-left:var(--als-gutter); }.als-hero .als-lead { font-size:14px; }
 .als-unit { padding-left:66px; padding-right:12px; }.als-unit::before { left:16px; width:34px; height:34px; }
 .als-unit h3 { font-size:27px; }.als-about .wp-block-columns { gap:30px; }
}
@media(max-width:781px) {
 .als-hero-columns { min-height:0; flex-wrap:wrap; }
 .als-hero-copy { flex-basis:100% !important; padding:32px var(--als-gutter); }
 .als-hero h1 { max-width:14ch; font-size:clamp(40px,7.2vw,54px); line-height:1.03; }
 .als-hero .als-lead { max-width:45ch; font-size:15px; }
 .als-hero-media { flex-basis:100% !important; min-height:310px; mask:none; border-top:3px solid var(--als-gold); }
 .als-hero-photo { inset:0; mask:none; }.als-hero-photo img { object-position:70% center; }
 .als-unit-grid { gap:12px; }.als-unit { min-height:108px; }
 .als-about .wp-block-columns { gap:28px; }.als-about-copy { padding-left:20px; }
 .als-news-grid .wp-block-post-template { grid-template-columns:1fr 1fr; gap:18px; }
 .als-news-grid .wp-block-post-template > li:first-child { grid-column:1/-1; }
 .als-ppdb-inner { flex-direction:column; align-items:flex-start; gap:22px; padding-left:0; }
 .als-notice-inner { gap:18px; }.als-notice-label { padding-right:18px; font-size:19px; }
}
@media(max-width:480px) {
 .als-hero h1 { font-size:42px; max-width:11ch; }
 .als-hero-copy .wp-block-buttons { width:100%; }.als-hero-copy .wp-block-button { width:100%; }
 .als-hero-copy .wp-block-button__link { width:100%; }.als-hero-media { min-height:230px; }
 .als-notice-inner { display:block; padding-block:15px; }.als-notice-label { border:0; margin-bottom:6px !important; }
 .als-notice a { font-size:13px; }.als-news-grid .wp-block-post-template { grid-template-columns:1fr; }
 .als-news-grid .wp-block-post-template > li:first-child { grid-column:auto; }.als-about-photo { border-start-end-radius:56px; }
 .als-ppdb .wp-block-buttons,.als-ppdb .wp-block-button,.als-ppdb .wp-block-button__link { width:100%; }
}
@media(prefers-reduced-motion:reduce) { .alula-school *, .alula-school *::before,.alula-school *::after { scroll-behavior:auto; transition:none; } }

.als-hero-photo { background:var(--als-paper); }
.als-hero-photo img,.als-about-photo img { mix-blend-mode:multiply; }

.als-unit-1::before { mask-image:url(images/graduation.svg); }
.als-section-symbol { font-size:0; height:26px; position:relative; }
.als-section-symbol::before { margin-right:24px; }.als-section-symbol::after { margin-left:24px; }
.als-section-symbol { background:url(images/book.svg) center/25px no-repeat; }
.als-notice-label::before { content:''; display:inline-block; width:26px; height:26px; vertical-align:middle; background:var(--als-gold); mask:url(images/megaphone.svg) center/contain no-repeat; }

@media(min-width:700px) and (max-width:781px) {
 .als-hero-columns.wp-block-columns { display:grid !important; grid-template-columns:44% 56%; min-height:520px; }
 .als-hero-copy { padding:30px 18px 30px var(--als-gutter); }.als-hero h1 { font-size:42px; max-width:10ch; }
 .als-hero .als-lead { font-size:14px; }.als-hero-media { min-height:0; border-top:0; mask:url(images/hero-mask.svg) 0 0/100% 100% no-repeat; }
 .als-hero-photo { inset:0 0 0 4px; mask:url(images/hero-mask.svg) 0 0/100% 100% no-repeat; }
 .als-unit-grid.wp-block-columns { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
 .als-unit { padding:18px 12px 18px 56px; min-height:132px; }.als-unit::before { left:14px; top:24px; width:30px; height:30px; }.als-unit h3 { font-size:25px; }
 .als-about .wp-block-columns { display:grid !important; grid-template-columns:1fr 1fr; align-items:center; gap:24px; }.als-about-copy h2 { font-size:30px; }
}

.als-school-features { padding-block:24px 40px; }.als-school-card { padding:24px; border:1px solid var(--als-rule); background:var(--als-white); border-radius:var(--als-radius); }.als-school-card h3 { font-size:25px; }.als-school-card p { font-size:14px; }
