/* WEBSITE MASTER - lapisan tema dan komponen global */
:root {
  --master-hero-image: url("assets/hero-tkit-alummah.jpeg");
}

/* Hero memakai gambar dari konfigurasi sekolah. */
.hero-bg {
  background-image: var(--master-hero-image) !important;
}

/* Penanda halaman template master. */
.master-template-hero {
  min-height: 46vh;
  display: flex;
  align-items: end;
  padding: calc(var(--header-height) + 72px) 0 76px;
  background: var(--green-dark);
  color: #fff;
}
.master-template-hero h1 {
  max-width: 900px;
  margin: 12px 0 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(2.7rem, 6vw, 5.8rem);
  line-height: .98;
}
.master-template-section { padding: 84px 0; }
.master-template-grid {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: clamp(32px, 7vw, 100px);
  align-items: start;
}
.master-template-label {
  font-size: .76rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--green);
  font-weight: 700;
}
.master-template-copy h2 {
  margin: 0 0 22px;
  font-family: "Playfair Display", serif;
  font-size: clamp(2rem, 4vw, 3.7rem);
  line-height: 1.05;
}
.master-template-copy p {
  max-width: 760px;
  line-height: 1.9;
  color: #4a5b56;
}
@media (max-width: 760px) {
  .master-template-grid { grid-template-columns: 1fr; }
  .master-template-section { padding: 62px 0; }
}

/* ==========================================================
   WEBSITE MASTER v2 - BERANDA MODULAR
   Styles yang sebelumnya menempel di index.html dipindah ke sini.
   ========================================================== */
.home-agenda-section{
  padding:92px 0 84px;
  background:#fff;
}
.home-agenda-section .agenda-list-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.home-news-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
}
.home-news-card__image{
  aspect-ratio:4/3 !important;
}
.home-news-card__body{
  padding:22px 22px 24px !important;
}
.home-news-card__meta{
  margin-bottom:12px !important;
  font-size:.68rem !important;
}
.home-news-card h3{
  margin:0 0 10px !important;
  font-size:1.35rem !important;
  line-height:1.25 !important;
}
.home-news-card__body > p{
  margin:0 0 17px !important;
  font-size:.84rem !important;
  line-height:1.65 !important;
  -webkit-line-clamp:3 !important;
}
.home-news-card__link{
  font-size:.69rem !important;
}
@media(max-width:900px){
  .home-agenda-section .agenda-list-grid,
  .home-news-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:600px){
  .home-agenda-section{
    padding:68px 0 70px;
  }
  .home-agenda-section .agenda-list-grid,
  .home-news-grid{
    grid-template-columns:1fr !important;
  }
}


/* ================= AKADEMIK KBIT-TKIT AL-UMMAH ================= */
.academic-page { background: #fbf8f2; }
.academic-hero { padding: 82px 0 72px; background: #f1e9dc; }
.academic-hero-grid, .academic-intro, .academic-cards-head, .academic-cards-grid, .academic-list-head, .academic-list, .academic-closing { max-width: 1180px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
.academic-hero-grid { display:grid; grid-template-columns: 1.05fr .95fr; gap:60px; align-items:end; }
.academic-hero h1 { margin:8px 0 0; font-family:"Playfair Display",serif; font-size:clamp(48px,7vw,92px); line-height:.95; color:#4a3326; }
.academic-hero-intro { font-size:20px; line-height:1.7; color:#5d5148; max-width:560px; margin:0; }
.academic-intro-section { padding:78px 0; background:#fff; }
.academic-intro { display:grid; grid-template-columns:220px 1fr; gap:70px; }
.academic-intro-label span { display:block; font-size:42px; color:#b18463; font-family:"Playfair Display",serif; }
.academic-intro-label p { margin:8px 0; text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:700; color:#806a59; }
.academic-intro-copy { max-width:780px; }
.academic-intro-copy p { color:#62584f; line-height:1.85; }
.academic-intro-copy .academic-lead { font-family:"Playfair Display",serif; font-size:30px; line-height:1.3; color:#47362c; margin-top:0; }
.academic-cards-section { padding:76px 0; }
.academic-cards-head { margin-bottom:34px; }
.academic-cards-head h2, .academic-list-head h2 { font-family:"Playfair Display",serif; color:#49362b; font-size:42px; margin:5px 0 0; }
.academic-cards-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.academic-card { background:#fff; padding:34px 30px 38px; border:1px solid #e8dfd2; min-height:240px; }
.academic-card span { color:#ad7d5c; font-size:13px; font-weight:700; letter-spacing:.08em; }
.academic-card h3 { font-family:"Playfair Display",serif; font-size:29px; color:#49362b; margin:18px 0 12px; }
.academic-card p, .academic-list-item p { color:#675c53; line-height:1.75; margin:0; }
.academic-list-section { padding:76px 0; background:#eee5d7; }
.academic-list-head { margin-bottom:30px; }
.academic-list { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:#d9ccbc; }
.academic-list-item { background:#f7f1e8; padding:28px; display:grid; grid-template-columns:54px 1fr; gap:18px; }
.academic-list-item > span { font-family:"Playfair Display",serif; color:#a97957; font-size:22px; }
.academic-list-item h3 { margin:0 0 8px; color:#49362b; font-size:21px; }
.academic-closing-section { padding:90px 0; background:#49362b; color:#fff; }
.academic-closing { text-align:center; }
.academic-closing .section-kicker { color:#dbc4aa; }
.academic-closing blockquote { max-width:900px; margin:18px auto 0; font-family:"Playfair Display",serif; font-size:clamp(28px,4vw,48px); line-height:1.25; }
@media(max-width:800px){ .academic-hero-grid,.academic-intro{grid-template-columns:1fr;gap:28px}.academic-cards-grid{grid-template-columns:1fr}.academic-list{grid-template-columns:1fr}.academic-hero{padding:58px 0}.academic-intro-section,.academic-cards-section,.academic-list-section{padding:56px 0}.academic-cards-head h2,.academic-list-head h2{font-size:34px}.academic-intro-copy .academic-lead{font-size:25px} }


/* ================= BERANDA KBIT-TKIT - PALET KUNING / CREAM / COKLAT ================= */
.hero-overlay {
  background:
    linear-gradient(90deg, rgba(78,52,46,.90) 0%, rgba(78,52,46,.72) 43%, rgba(78,52,46,.24) 76%, rgba(0,0,0,.06) 100%),
    linear-gradient(0deg, rgba(62,48,40,.58) 0%, rgba(62,48,40,0) 35%);
}
.hero .eyebrow { color: #f3cf63; }
.hero h1 span { color: #f5d45f; }
.hero .btn-primary { background: #f4d35e; color: #4e342e; }
.hero .btn-primary:hover { background: #ffe89a; }
.hero-bottom { background: rgba(78,52,46,.48); border-top-color: rgba(244,211,94,.35); }
.hero-value span { color: #f3cf63 !important; }
.hero-value strong { color: #fff !important; }
.hero-value small { color: rgba(255,255,255,.78) !important; }

.program-highlights-section { padding: 92px 0; background: #fbf6ea; }
.program-highlights-head { display:grid; grid-template-columns: 1.05fr .95fr; gap:60px; align-items:end; margin-bottom:38px; }
.program-highlights-head h2 { margin:6px 0 0; font-family:"Playfair Display",serif; font-size:clamp(2.3rem,4.5vw,4.2rem); line-height:1.02; color:#4e342e; }
.program-highlights-head > p { margin:0; max-width:600px; color:#66574d; line-height:1.8; font-size:1.02rem; }
.full-day-banner { display:grid; grid-template-columns:.7fr 1.3fr; gap:30px; align-items:center; padding:28px 32px; margin-bottom:20px; background:#f0d26b; border:1px solid #dfbd43; }
.full-day-banner span { display:block; margin-bottom:8px; color:#6d4b1d; font-size:.68rem; font-weight:800; letter-spacing:.15em; }
.full-day-banner h3 { margin:0; color:#4e342e; font-family:"Playfair Display",serif; font-size:1.8rem; }
.full-day-banner p { margin:0; color:#5c4b3f; line-height:1.75; }
.program-highlights-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.program-highlight-card { min-height:260px; padding:30px; display:grid; grid-template-columns:48px 1fr; gap:18px; border:1px solid rgba(78,52,46,.12); }
.program-highlight-number { font-family:"Playfair Display",serif; font-size:1.35rem; color:#8d6b34; }
.program-highlight-card h3 { margin:0 0 12px; font-family:"Playfair Display",serif; font-size:1.65rem; color:#4e342e; }
.program-highlight-card p { margin:0; color:#5f5148; line-height:1.75; }
.program-highlight-gold { background:#f8df80; }
.program-highlight-cream { background:#fffdf8; }
.program-highlight-orange { background:#f4dfcf; }
.program-highlight-brown { background:#ead8c6; }
@media(max-width:800px){
  .program-highlights-head,.full-day-banner { grid-template-columns:1fr; gap:20px; }
  .program-highlights-section { padding:68px 0; }
  .program-highlights-grid { grid-template-columns:1fr; }
}

/* FOTO PADA KARTU AKADEMIK & KESISWAAN */
.academic-card { padding: 0; overflow: hidden; }
.academic-card-photo { margin: 0; aspect-ratio: 16/9; overflow: hidden; background: #efe4d5; }
.academic-card-photo img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .45s ease; }
.academic-card:hover .academic-card-photo img { transform:scale(1.04); }
.academic-card-copy { padding: 28px 30px 34px; }
.academic-list-item { padding: 0; overflow:hidden; }
.academic-list-photo { margin:0; width:180px; min-height:150px; overflow:hidden; }
.academic-list-photo img { width:100%; height:100%; min-height:150px; object-fit:cover; display:block; }
.academic-list-item { grid-template-columns:180px 1fr; }
.academic-list-item > div { padding:28px; }
.academic-list-item > div > span { display:block; font-family:"Playfair Display",serif; color:#a97957; font-size:22px; margin-bottom:8px; }
@media(max-width:800px){ .academic-list-item{grid-template-columns:1fr}.academic-list-photo{width:100%;min-height:190px}.academic-list-photo img{min-height:190px} }
.gallery-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.gallery-media-card{margin:0;background:#fff;border:1px solid rgba(78,52,46,.1);overflow:hidden}.gallery-media-card img,.gallery-media-card video{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-media-card figcaption{padding:10px 12px;color:#66574d;font-size:.78rem;line-height:1.4}@media(max-width:720px){.gallery-media-grid{grid-template-columns:1fr}}

/* REVISI 2026 — layout foto akademik mengikuti pola Profil */
.academic-features-section{padding:96px 0 110px;background:#fffdf8}
.academic-features-head{max-width:860px;margin-bottom:44px}
.academic-features-head h2{margin:6px 0 0;font-family:"Playfair Display",serif;font-size:clamp(2.2rem,4vw,4rem);line-height:1.05;color:#4e342e}
.academic-features-list{display:grid;gap:28px}
.academic-feature-row{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:stretch;min-height:330px;background:#f8f2e8;border:1px solid rgba(78,52,46,.10);overflow:hidden}
.academic-feature-row-reverse{grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr)}
.academic-feature-row-reverse .academic-feature-photo{order:2}
.academic-feature-row-reverse .academic-feature-copy{order:1}
.academic-feature-photo{margin:0;min-height:330px;overflow:hidden;background:#eadcc9}
.academic-feature-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .6s ease}
.academic-feature-row:hover .academic-feature-photo img{transform:scale(1.025)}
.academic-feature-copy{padding:46px 48px;display:flex;flex-direction:column;justify-content:center}
.academic-feature-copy>span{display:block;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#a46f31;margin-bottom:12px}
.academic-feature-copy h3{margin:0 0 16px;font-family:"Playfair Display",serif;color:#4e342e;font-size:clamp(1.75rem,3vw,3rem);line-height:1.08}
.academic-feature-copy p{margin:0;color:#66574d;line-height:1.85;font-size:1rem}
@media(max-width:800px){.academic-features-section{padding:72px 0 82px}.academic-feature-row,.academic-feature-row-reverse{grid-template-columns:1fr}.academic-feature-row-reverse .academic-feature-photo,.academic-feature-row-reverse .academic-feature-copy{order:initial}.academic-feature-photo{min-height:230px}.academic-feature-copy{padding:30px 26px}}

/* REVISI 2026 — SPMB modern */
.spmb-modern-hero{position:relative;overflow:hidden;padding:82px 0 70px;background:linear-gradient(135deg,#fffdf8 0%,#f7ead9 62%,#f1d17a 140%)}
.spmb-modern-hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-120px;bottom:-190px;background:rgba(244,183,69,.22)}
.spmb-modern-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.76fr);gap:64px;align-items:center}
.spmb-badge{display:inline-flex;padding:8px 13px;border-radius:999px;background:#4e342e;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
.spmb-modern-hero-copy h1{margin:6px 0 20px;max-width:760px;font-family:"Playfair Display",serif;color:#4e342e;font-size:clamp(2.8rem,5.2vw,5.6rem);line-height:1.01;letter-spacing:-.045em}
.spmb-modern-hero-copy h1 em{font-style:normal;color:#b87927}
.spmb-modern-lead{max-width:650px;color:#65564c;line-height:1.8;font-size:1.03rem}
.spmb-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.spmb-primary-btn{display:inline-flex;gap:18px;align-items:center;padding:15px 20px;background:#4e342e;color:#fff;text-decoration:none;font-weight:800;border-radius:4px;box-shadow:0 12px 24px rgba(78,52,46,.14)}
.spmb-primary-btn span,.spmb-text-btn span{font-size:1.1rem}
.spmb-text-btn{display:inline-flex;gap:10px;align-items:center;padding:15px 4px;color:#4e342e;text-decoration:none;font-weight:800}
.spmb-mini-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:650px;margin-top:48px;padding-top:22px;border-top:1px solid rgba(78,52,46,.14)}
.spmb-mini-facts div{display:flex;flex-direction:column;gap:4px}.spmb-mini-facts strong{font-family:"Playfair Display",serif;font-size:1.45rem;color:#4e342e}.spmb-mini-facts span{font-size:.72rem;color:#75665b;line-height:1.4}
.spmb-modern-hero-visual{position:relative}.spmb-image-frame{position:relative;padding:10px;background:#fff;box-shadow:0 24px 55px rgba(78,52,46,.16);transform:rotate(1.2deg)}.spmb-image-frame:before{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.8);z-index:1;pointer-events:none}.spmb-image-frame img{width:100%;aspect-ratio:4/3;display:block;object-fit:cover}.spmb-floating-note{position:absolute;left:-30px;bottom:-24px;display:flex;align-items:center;gap:13px;padding:15px 18px;background:#fff;color:#4e342e;box-shadow:0 14px 32px rgba(78,52,46,.14);max-width:280px}.spmb-floating-note>span{font-family:"Playfair Display",serif;font-size:1.3rem;color:#c18732}.spmb-floating-note strong,.spmb-floating-note small{display:block}.spmb-floating-note small{margin-top:3px;color:#76665b;font-size:.72rem}
.spmb-program-modern{padding:96px 0;background:#fff}
.spmb-section-heading{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);gap:60px;align-items:end;margin-bottom:42px}.spmb-section-heading h2{margin:5px 0 0;font-family:"Playfair Display",serif;color:#4e342e;font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.05}.spmb-section-heading>p{margin:0;color:#66574d;line-height:1.8}
.spmb-program-modern-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.spmb-modern-card{position:relative;padding:34px 30px 36px;min-height:300px;background:#f8f2e8;border:1px solid rgba(78,52,46,.08)}.spmb-modern-card:nth-child(3){background:#f7e3d2}.spmb-modern-card.spmb-card-featured{background:#f3d56f}.spmb-card-number{font-family:"Playfair Display",serif;color:#9a6b32;font-size:1.15rem;margin-bottom:30px}.spmb-modern-card>span{font-size:.68rem;letter-spacing:.13em;font-weight:800;color:#765a3b}.spmb-modern-card h3{margin:10px 0 8px;font-family:"Playfair Display",serif;color:#4e342e;font-size:1.75rem}.spmb-modern-card>strong{display:block;color:#9c6824;margin-bottom:16px}.spmb-modern-card p{margin:0;color:#66574d;line-height:1.78}.spmb-choice-note{display:flex;gap:18px;align-items:flex-start;margin-top:22px;padding:18px 20px;background:#fff8e7;border-left:4px solid #d8a43a}.spmb-choice-note span{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#8e672d;white-space:nowrap}.spmb-choice-note p{margin:0;color:#65564c;line-height:1.65}
.spmb-quota-modern{padding:100px 0 112px;background:#fbf6ea}.spmb-quota-heading{margin-bottom:36px}.spmb-quota-modern-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.spmb-quota-modern-card{padding:28px;background:#fff;border:1px solid rgba(78,52,46,.09);box-shadow:0 16px 36px rgba(78,52,46,.07)}.spmb-quota-modern-card.quota-card-gold{background:#fffdf5}.spmb-quota-modern-card.quota-card-orange{background:#fff8f0}.quota-top{display:flex;justify-content:space-between;align-items:center;color:#8d6732;font-size:.7rem;font-weight:800;letter-spacing:.12em}.quota-top b{font-family:"Playfair Display",serif;font-size:1.1rem;color:#c28b31}.spmb-quota-modern-card h3{margin:16px 0 18px;font-family:"Playfair Display",serif;color:#4e342e;font-size:1.6rem}.quota-big{display:flex;align-items:baseline;gap:8px;padding-bottom:16px;border-bottom:1px solid rgba(78,52,46,.1)}.quota-big strong{font-family:"Playfair Display",serif;font-size:3.7rem;line-height:1;color:#4e342e}.quota-big span{color:#7a6a5f;font-size:.75rem}.quota-stat{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(78,52,46,.08);color:#6e6057;font-size:.82rem}.quota-stat b{color:#4e342e}.quota-left b{color:#b67628;font-size:1.05rem}.quota-bar{height:6px;margin:18px 0 9px;background:#eee3d5;overflow:hidden;border-radius:99px}.quota-bar i{display:block;height:100%;background:#d19a35;border-radius:99px}.spmb-quota-modern-card small{color:#82736a;font-size:.72rem}
.spmb-values-modern{padding:96px 0;background:#fff}.spmb-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.spmb-values-grid article{padding:32px;background:#f8f2e8;min-height:240px}.spmb-values-grid article:nth-child(2){background:#f5df88}.spmb-values-grid article:nth-child(3){background:#f5e1d1}.spmb-values-grid span{font-family:"Playfair Display",serif;color:#a8752d}.spmb-values-grid h3{margin:18px 0 10px;font-family:"Playfair Display",serif;color:#4e342e;font-size:1.65rem}.spmb-values-grid p{margin:0;color:#66574d;line-height:1.75}
.spmb-modern-cta{padding:0 0 110px;background:#fff}.spmb-cta-panel{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:48px;background:#4e342e;color:#fff;overflow:hidden;position:relative}.spmb-cta-panel:after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-100px;top:-110px}.spmb-cta-panel .section-kicker{color:#f1ce68}.spmb-cta-panel h2{margin:6px 0 12px;font-family:"Playfair Display",serif;font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.05}.spmb-cta-panel p:not(.section-kicker){max-width:720px;margin:0;color:rgba(255,255,255,.78);line-height:1.75}.spmb-cta-panel a{position:relative;z-index:1;display:inline-flex;gap:16px;align-items:center;white-space:nowrap;padding:15px 20px;background:#f1cf67;color:#4e342e;text-decoration:none;font-weight:800}

/* Ekstrakurikuler — kembali ke palet brand Al-Ummah, bukan hijau lama */
.extracurricular-page{background:#fffdf8}.extracurricular-hero{background:#fbf2df}.extracurricular-hero h1{color:#4e342e}.extracurricular-hero-intro{color:#66574d}.extracurricular-index p,.extracurricular-lead{color:#4e342e}.extracurricular-intro-copy>p:not(.extracurricular-lead){color:#66574d}.extracurricular-feature-light{background:#fffdf8}.extracurricular-feature-dark{background:#4e342e}.extracurricular-feature-accent{background:#f4dfb7}.extracurricular-copy h2{color:#4e342e}.extracurricular-copy>p:not(.section-kicker){color:#66574d}.extracurricular-feature-dark .extracurricular-copy>p:not(.section-kicker){color:rgba(255,255,255,.78)}.extracurricular-feature-dark .section-kicker{color:#f1cf67}.extracurricular-closing-section{background:#fbf2df}.extracurricular-closing blockquote{color:#4e342e}.extracurricular-closing>p:last-child{color:#66574d}
@media(max-width:900px){.spmb-modern-hero-grid,.spmb-section-heading{grid-template-columns:1fr;gap:34px}.spmb-program-modern-grid,.spmb-quota-modern-grid,.spmb-values-grid{grid-template-columns:1fr}.spmb-modern-hero{padding-top:62px}.spmb-floating-note{left:15px}.spmb-mini-facts{max-width:none}.spmb-cta-panel{flex-direction:column;align-items:flex-start}.spmb-modern-hero-visual{max-width:720px;width:100%;margin:0 auto}}
@media(max-width:560px){.spmb-mini-facts{grid-template-columns:1fr 1fr}.spmb-mini-facts div:last-child{grid-column:1/-1}.spmb-floating-note{position:relative;left:auto;bottom:auto;margin-top:-8px;width:calc(100% - 20px);margin-left:10px}.spmb-modern-card{min-height:0}.spmb-choice-note{flex-direction:column;gap:7px}}
