/* Huruf — tipografi poster: huruf kondensasi raksasa, huruf garis, hitam-putih + satu warna */
.fam-huruf { --card: var(--bg); --shadow: none; --sec-y: clamp(52px, 7vw, 110px); }
.fam-huruf .display, .fam-huruf .h1, .fam-huruf .h2 { text-transform: uppercase; line-height: .92; }
.fam-huruf .h2 { font-size: clamp(2.4rem, 1.2rem + 5vw, 6rem); }
.fam-huruf .h2 em, .fam-huruf .h1 em { font-style: normal; color: transparent; -webkit-text-stroke: 2px var(--ink); }
.fam-huruf .eyebrow { color: var(--ink); letter-spacing: .2em; }
.fam-huruf .eyebrow::before { content: ""; width: 26px; height: 2px; background: var(--primary); }
.fam-huruf .btn { border-radius: 0; text-transform: uppercase; letter-spacing: .06em; font-weight: 800; }
.fam-huruf .btn--primary { --btn-bg: var(--ink); --btn-ink: var(--bg); }
.fam-huruf .btn--primary:hover { background: var(--primary); color: var(--on-primary); }
.fam-huruf .btn--ghost { border: 2px solid var(--ink); }
.fam-huruf .hdr { background: var(--bg); border-bottom: 2px solid var(--ink); }
.fam-huruf .hdr.is-scrolled { border-bottom-color: var(--ink); }
.fam-huruf .brand__mark { display: none; }
.fam-huruf .brand__name { font-family: var(--font-head), sans-serif; text-transform: uppercase; font-size: 1.6rem; letter-spacing: .01em; }
.fam-huruf .menu-btn { border: 2px solid var(--ink); border-radius: 0; }
.fam-huruf .menu-btn__t { letter-spacing: .14em; font-weight: 800; }
.fam-huruf .marquee { border-block: 2px solid var(--ink); background: var(--primary); color: var(--on-primary); padding-block: 6px; }
.fam-huruf .marquee__item { font-family: var(--font-head), sans-serif; font-size: clamp(1.8rem, 1.2rem + 3vw, 3.6rem); text-transform: uppercase; font-weight: 400; }
.fam-huruf .pindex { border-top: 2px solid var(--ink); }
.fam-huruf .pidx { border-bottom: 1px solid var(--ink); }
.fam-huruf .pidx__name { font-family: var(--font-head), sans-serif; font-size: clamp(1.5rem, 1rem + 2.4vw, 3rem); text-transform: uppercase; line-height: 1; }
.fam-huruf .pidx__n { font-family: var(--font-head), sans-serif; font-size: 1.4rem; }
.fam-huruf .pidx:hover .pidx__name { color: var(--primary-text); }
.fam-huruf .feat, .fam-huruf .tcard, .fam-huruf .step, .fam-huruf .cinfo { border: 0; border-top: 2px solid var(--ink); border-radius: 0; background: transparent; padding-inline: 0; }
.fam-huruf .feat__t { font-family: var(--font-head), sans-serif; text-transform: uppercase; font-size: 1.5rem; font-weight: 400; }
.fam-huruf .fnum__n { font-weight: 400; }
.fam-huruf .about-banner { background: var(--ink); color: var(--bg); --muted: color-mix(in oklab, var(--bg) 70%, var(--ink)); border-radius: 0; }
.fam-huruf .about-banner .prose { color: var(--muted); }
.fam-huruf .about-banner .checks .ic, .fam-huruf .about-banner .link-arrow { color: var(--bg); }
.fam-huruf .about-banner .h2 em { -webkit-text-stroke-color: var(--bg); }
.fam-huruf .tquote__q { font-family: var(--font-head), sans-serif; text-transform: uppercase; font-weight: 400; line-height: 1.05; font-size: clamp(1.8rem, 1.2rem + 2.6vw, 3.4rem); }
.fam-huruf .faq__q { font-family: var(--font-head), sans-serif; font-size: 1.3rem; text-transform: uppercase; font-weight: 400; }
.fam-huruf .cta, .fam-huruf .about__img, .fam-huruf .gitem, .fam-huruf .cat, .fam-huruf .map, .fam-huruf .pd__main { border-radius: 0; }
.fam-huruf .cta .h2 { font-size: clamp(2.4rem, 1.4rem + 4.4vw, 5.6rem); }
.fam-huruf .gitem img { filter: grayscale(1); transition: filter .4s ease; }
.fam-huruf .gitem:hover img { filter: none; }
.fam-huruf .ftr { background: var(--bg); border-top: 2px solid var(--ink); }
.fam-huruf .ftr__word { text-transform: uppercase; color: var(--ink); }
.fam-huruf { --wf: .45; }
.fam-huruf .input, .fam-huruf .select, .fam-huruf .textarea, .fam-huruf .chip { border-radius: 0; border-color: var(--ink); }
.fam-huruf .wa-float { border-radius: 0; }
