/* Koran — surat kabar: kertas krem, serif tebal, garis ganda, foto hitam-putih */
.fam-koran { --card: var(--bg); --shadow: none; --sec-y: clamp(44px, 6vw, 88px); }
.fam-koran .display, .fam-koran .h1, .fam-koran .h2 { font-weight: 800; }
.fam-koran .display em, .fam-koran .h1 em, .fam-koran .h2 em { font-style: italic; color: var(--primary-text); }
.fam-koran .eyebrow { color: var(--primary-text); letter-spacing: .14em; font-weight: 700; }
.fam-koran .eyebrow::after { content: ""; width: 28px; height: 1px; background: currentColor; }
.fam-koran .lead { color: color-mix(in oklab, var(--ink) 74%, var(--bg)); }
.fam-koran .btn { border-radius: 0; font-weight: 700; letter-spacing: .02em; }
.fam-koran .btn--primary { --btn-bg: var(--ink); --btn-ink: var(--bg); }
.fam-koran .btn--primary:hover { background: var(--primary); color: var(--on-primary); }
.fam-koran .btn--ghost { border-color: var(--ink); }
.fam-koran .icon-btn { border-radius: 0; border-color: var(--ink); }

/* Header masthead */
.fam-koran .hdr { background: var(--bg); -webkit-backdrop-filter: none; backdrop-filter: none; }
.fam-koran .hdr.is-scrolled { border-bottom-color: var(--ink); }
.fam-koran .brand__name { font-family: var(--font-head), serif; font-weight: 900; letter-spacing: -.03em; }
.fam-koran .mast { background: var(--bg); }
.fam-koran .mnav__a { font-family: var(--font-head), serif; font-weight: 700; font-size: 1.2rem; }

/* Section seperti halaman-halaman koran */
.fam-koran main > .sec + .sec::before { content: ""; position: absolute; top: 0; left: max(var(--gutter), calc((100% - var(--wrap)) / 2)); right: max(var(--gutter), calc((100% - var(--wrap)) / 2)); border-top: 1px solid var(--ink); }
.fam-koran .sec-head .h2 { padding-bottom: .5rem; border-bottom: 1px solid var(--ink); }
.fam-koran .sec-head--split { border-bottom: 1px solid var(--ink); padding-bottom: 12px; }
.fam-koran .sec-head--split .h2 { border-bottom: 0; padding-bottom: 0; }
.fam-koran .feat, .fam-koran .tcard, .fam-koran .step, .fam-koran .cinfo { border: 0; border-top: 3px solid var(--ink); border-radius: 0; background: transparent; padding-inline: 0; }
.fam-koran .feat__ic { border-radius: 0; background: transparent; color: var(--primary-text); width: auto; height: auto; justify-content: start; }
.fam-koran .fnum { border-top-width: 3px; }
.fam-koran .fnum__n { font-style: italic; }
.fam-koran .about__img img, .fam-koran .feats-split__img img, .fam-koran .cat img, .fam-koran .gitem img, .fam-koran .ahero__img img { filter: grayscale(.85) contrast(1.05); transition: filter .5s ease; }
.fam-koran .gitem:hover img, .fam-koran .cat:hover img { filter: none; }
.fam-koran .about__img, .fam-koran .feats-split__img, .fam-koran .cat, .fam-koran .gitem, .fam-koran .map, .fam-koran .about-banner, .fam-koran .ahero__img, .fam-koran .pd__main, .fam-koran .pd__thumb { border-radius: 0; }
.fam-koran .about__text .prose p:first-child::first-letter { float: left; padding: .05em .1em 0 0; color: var(--primary-text); font-family: var(--font-head), serif; font-weight: 800; font-size: 3.4em; line-height: .8; }
.fam-koran .tquote__q { font-style: italic; font-weight: 600; }
.fam-koran .tquote__q::before { content: "“"; display: block; color: var(--primary-text); font-size: 3em; line-height: .6; }
.fam-koran .stats { border-radius: 0; border-color: var(--ink); background: var(--ink); }
.fam-koran .stat__v { font-style: italic; }
.fam-koran .faq { border-top: 3px solid var(--ink); }
.fam-koran .faq__q { font-family: var(--font-head), serif; font-weight: 700; font-size: 1.12rem; }
.fam-koran .cta { border-radius: 0; background: var(--ink); color: var(--bg); }
.fam-koran .cta::after { background: linear-gradient(100deg, rgb(0 0 0 / .85), rgb(0 0 0 / .45)); }
.fam-koran .cta__bg img { filter: grayscale(1); }
.fam-koran .badge { border-radius: 0; }
.fam-koran .chip { border-radius: 0; border-color: var(--ink); }
.fam-koran .chip.is-active { background: var(--ink); color: var(--bg); }
.fam-koran .input, .fam-koran .select, .fam-koran .textarea, .fam-koran .qty, .fam-koran .opt__v span { border-radius: 0; border-color: var(--ink); }
.fam-koran .prow { border-bottom-style: dotted; }
.fam-koran .prow__img { border-radius: 0; filter: grayscale(.7); }
.fam-koran .avatar { border-radius: 0; background: var(--ink); color: var(--bg); }
.fam-koran .socials a { border-radius: 0; border-color: var(--ink); }
.fam-koran .wa-float { border-radius: 0; }
.fam-koran .sheet, .fam-koran .drawer { border-radius: 0; }
