/* Tiket — boarding pass: huruf kapital tegak, sobekan berlubang, barcode, warna maskapai */
.fam-tiket { --card: color-mix(in oklab, var(--bg) 60%, #fff); --sec-y: clamp(48px, 6vw, 96px); }
.fam-tiket .display, .fam-tiket .h1, .fam-tiket .h2 { text-transform: uppercase; line-height: 1; }
.fam-tiket .display { font-size: clamp(2.4rem, 1.2rem + 5vw, 5.6rem); }
.fam-tiket .h2 { font-size: clamp(1.8rem, 1.1rem + 2.8vw, 3.4rem); }
.fam-tiket .display em, .fam-tiket .h2 em, .fam-tiket .h1 em { font-style: normal; color: var(--primary-text); }
.fam-tiket .eyebrow { letter-spacing: .2em; }
.fam-tiket .eyebrow::before { content: "✈"; }
.fam-tiket .btn { text-transform: uppercase; letter-spacing: .06em; font-family: var(--font-head), sans-serif; font-weight: 600; }
/* header seperti potongan tiket */
.fam-tiket .hdr { background: var(--primary); color: var(--on-primary); border-bottom: 2px dashed color-mix(in oklab, var(--on-primary) 45%, transparent); }
.fam-tiket .hdr .icon-btn { border-color: color-mix(in oklab, var(--on-primary) 40%, transparent); }
.fam-tiket .brand__mark { background: var(--on-primary); color: var(--primary); border-radius: 4px; }
.fam-tiket .brand__name { font-family: var(--font-head), sans-serif; text-transform: uppercase; letter-spacing: .04em; }
.fam-tiket .nav__a { color: color-mix(in oklab, var(--on-primary) 82%, transparent); text-transform: uppercase; font-size: .86rem; letter-spacing: .08em; }
.fam-tiket .nav__a:hover { background: color-mix(in oklab, var(--on-primary) 12%, transparent); color: var(--on-primary); }
.fam-tiket .nav__a.is-active { color: var(--on-primary); }
.fam-tiket .nav__a.is-active::after { background: var(--on-primary); }
.fam-tiket .hdr__cta { --btn-bg: var(--on-primary); --btn-ink: var(--primary); }
.fam-tiket .hdr .mnav { background: var(--primary); --line: color-mix(in oklab, var(--on-primary) 22%, transparent); }
.fam-tiket .feat, .fam-tiket .tcard, .fam-tiket .step, .fam-tiket .cinfo, .fam-tiket .fstrip__i { position: relative; border: 0; border-left: 6px solid var(--primary); border-radius: 8px; background: var(--card); box-shadow: var(--shadow); }
.fam-tiket .step__n { border-radius: 6px; font-family: var(--font-head), sans-serif; }
.fam-tiket .tcard { border-left-color: var(--accent); }
.fam-tiket .about-banner { background: var(--card); border: 2px dashed var(--line-strong); }
.fam-tiket .crail__img { border-radius: 10px; }
.fam-tiket .faq__i { border-bottom-style: dashed; }
.fam-tiket .cta { border-radius: 14px; }
.fam-tiket .ftr--band .ftr__cta { border-style: dashed; }
