/* Landing page hikrona.com (desain v1). */
.lp { background: #fff; color: var(--ink); font-size: 16px; line-height: 1.6; overflow-x: hidden; }
.lp a { text-decoration: none; }
.lp .lp-in { max-width: 1280px; margin: 0 auto; padding: 0 24px; }
.lp-hero { position: relative; width: 100%; aspect-ratio: 3 / 2; min-height: 680px; max-height: 960px; display: flex; flex-direction: column; color: #fff; overflow: hidden; background: var(--ink); }
.lp-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lp-hero .shade1 { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,20,48,.86) 0%, rgba(4,20,48,.62) 38%, rgba(4,20,48,.12) 72%, rgba(4,20,48,0) 100%); }
.lp-hero .shade2 { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(4,20,48,.55) 0%, rgba(4,20,48,0) 22%, rgba(4,20,48,0) 70%, rgba(4,20,48,.55) 100%); }
.lp-nav { position: relative; z-index: 2; max-width: 1280px; margin: 0 auto; width: 100%; padding: 20px 24px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; }
.lp-brand { display: flex; align-items: center; gap: 10px; color: #fff; }
.lp-brand .logo { width: 40px; height: 40px; border-radius: 11px; outline: 2px solid rgba(255,255,255,.25); }
.lp-brand strong { font-size: 21px; font-weight: 800; letter-spacing: -0.02em; }
.lp-links { display: flex; flex-wrap: wrap; gap: 4px 26px; font-size: 15px; font-weight: 600; }
.lp-links a { color: #fff; padding: 10px 0; }
.lp-links a:hover { color: var(--mint); }
.lp-cta { display: flex; gap: 10px; flex-wrap: wrap; }
.pill { height: 44px; padding: 0 18px; border-radius: 999px; font-weight: 700; font-size: 14px; display: inline-flex; align-items: center; gap: 10px; white-space: nowrap; }
.pill.line { border: 1.5px solid rgba(255,255,255,.6); color: #fff; }
.pill.line:hover { background: rgba(255,255,255,.1); color: #fff; }
.pill.white { background: #fff; color: var(--blue); }
.pill.white:hover { color: var(--blue-d); background: #F2F6FD; }
.pill.green { background: var(--green); color: var(--green-ink); font-weight: 800; }
.pill.green:hover { background: var(--green-d); color: var(--green-ink); }
.pill.lg { height: 56px; padding: 0 28px; font-size: 16px; }
.lp-hero-body { position: relative; z-index: 1; flex: 1; width: 100%; max-width: 1280px; margin: 0 auto; padding: 56px 24px 64px; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 40px; }
.lp-hero-copy { flex: 1 1 520px; min-width: 0; max-width: 700px; display: flex; flex-direction: column; gap: 24px; align-self: center; }
.lp-tag { align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; background: rgba(255,255,255,.15); font-weight: 700; font-size: 13px; padding: 7px 14px; border-radius: 999px; border: 1px solid rgba(255,255,255,.25); }
.lp-hero h1 { margin: 0; font-size: clamp(44px, 6.2vw, 88px); line-height: 1; font-weight: 800; letter-spacing: -0.035em; text-shadow: 0 2px 24px rgba(0,0,0,.25); }
.lp-hero h1 span { color: var(--mint); }
.lp-hero p.lead { font-size: 19px; max-width: 560px; color: #E6ECF5; }
.lp-ticks { display: flex; flex-wrap: wrap; gap: 10px 22px; color: #E6ECF5; font-size: 14px; font-weight: 600; }
.lp-ticks span { display: flex; align-items: center; gap: 8px; }
.lp-ticks .ic { color: var(--mint); }
.lp-toasts { flex: 0 1 280px; display: flex; flex-direction: column; gap: 10px; color: var(--ink); }
.toast { background: rgba(255,255,255,.95); border-radius: 18px; padding: 12px 14px; box-shadow: 0 18px 40px rgba(0,0,0,.25); display: flex; gap: 10px; align-items: center; }
.toast .ti { width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; flex: none; }
.toast strong { font-size: 14px; display: block; line-height: 1.3; }
.toast small { color: var(--muted); font-size: 12px; display: block; line-height: 1.3; }
.toast.blue { background: var(--blue); color: #fff; justify-content: space-between; font-size: 14px; font-weight: 700; }
.lp-strip { background: var(--ink); color: #fff; }
.lp .lp-strip .lp-in { padding-top: 20px; padding-bottom: 20px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 28px; font-weight: 700; font-size: 15px; }
.lp-strip i { color: var(--green); font-style: normal; }
.lp .eyebrow { font-size: 13px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--blue); }
.lp .eyebrow.mint { color: #9FE6C2; }
.lp h2 { margin: 0; font-size: clamp(34px, 4vw, 54px); line-height: 1.05; font-weight: 800; letter-spacing: -0.03em; }
.lp-why { max-width: 1100px; margin: 0 auto; padding: 110px 24px 90px; text-align: center; display: flex; flex-direction: column; gap: 18px; align-items: center; }
.lp-why p { font-size: clamp(30px, 3.8vw, 52px); line-height: 1.15; font-weight: 800; letter-spacing: -0.03em; }
.lp-why p span { color: var(--muted); }
.lp .lp-feat { padding-bottom: 110px; display: flex; flex-direction: column; gap: 32px; }
.lp-feat-h { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 20px; }
.lp-feat-h h2 { max-width: 620px; }
.lp-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.lp-tabs button { height: 44px; padding: 0 18px; border-radius: 999px; cursor: pointer; font: 700 14px var(--font); background: #fff; color: var(--ink-2); border: 1.5px solid var(--line-2); }
.lp-tabs button[aria-selected=true] { background: var(--ink); color: #fff; border-color: var(--ink); }
.lp-feat-body { display: flex; flex-wrap: wrap; gap: 24px; align-items: stretch; }
.lp-feat-main { flex: 1 1 380px; min-width: 0; background: var(--blue); color: #fff; border-radius: 28px; padding: 36px; display: flex; flex-direction: column; justify-content: space-between; gap: 28px; min-height: 380px; }
.lp-feat-main h3 { margin: 0; font-size: 34px; line-height: 1.1; font-weight: 800; letter-spacing: -0.02em; }
.lp-feat-main p { opacity: .9; font-size: 17px; }
.lp-feat-main .pill { align-self: flex-start; height: 48px; padding: 0 22px; }
.lp-feat-items { flex: 1.4 1 480px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.lp-fi { background: var(--soft); border-radius: 22px; padding: 22px; display: flex; flex-direction: column; gap: 10px; }
.lp-fi .ti { width: 44px; height: 44px; border-radius: 13px; background: #fff; display: grid; place-items: center; color: var(--blue); }
.lp-fi strong { font-size: 18px; letter-spacing: -0.01em; }
.lp-fi span { color: var(--ink-3); font-size: 15px; }
.lp-wali { padding: 0 24px 110px; }
.lp-wali .box { max-width: 1280px; margin: 0 auto; position: relative; border-radius: 36px; overflow: hidden; min-height: 560px; display: flex; align-items: flex-end; }
.lp-wali .box > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 35%; }
.lp-wali .shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,30,72,0) 30%, rgba(0,30,72,.82) 100%); }
.lp-wali .in { position: relative; padding: clamp(28px, 5vw, 56px); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 28px; width: 100%; color: #fff; }
.lp-wali .copy { flex: 1 1 420px; display: flex; flex-direction: column; gap: 14px; max-width: 620px; }
.lp-wali .copy p { font-size: 18px; opacity: .92; }
.lp-wali .cards { flex: 0 1 320px; display: flex; flex-direction: column; gap: 10px; }
.lp-wali .c { background: rgba(255,255,255,.9); color: var(--ink); border-radius: 16px; padding: 12px 14px; display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.lp-wali .c strong { font-size: 14px; display: block; line-height: 1.3; }
.lp-wali .c small { color: var(--muted); font-size: 12px; display: block; line-height: 1.3; }
.lp-wali .c .b { background: var(--blue); color: #fff; font-size: 12px; font-weight: 700; padding: 6px 12px; border-radius: 999px; }
.lp-wali .c .b.g { background: var(--green); color: var(--green-ink); font-weight: 800; }
.lp .lp-el { padding-bottom: 110px; display: flex; flex-wrap: wrap; gap: 56px; align-items: center; }
.lp-el .pic { flex: 1 1 380px; min-width: 0; position: relative; }
.lp-el .pic img { width: 100%; height: 600px; object-fit: cover; border-radius: 36px; display: block; }
.lp-el .pic .float { position: absolute; right: 18px; top: 18px; background: #fff; border-radius: 16px; padding: 10px 14px; box-shadow: 0 14px 30px rgba(14,26,43,.14); display: flex; flex-direction: column; line-height: 1.35; }
.lp-el .pic .float small:first-child { font-size: 11px; font-weight: 800; letter-spacing: .08em; color: var(--blue); }
.lp-el .pic .float strong { font-size: 14px; }
.lp-el .pic .float small:last-child { color: var(--muted); font-size: 12px; }
.lp-el .copy { flex: 1 1 440px; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.lp-el .copy h2 { font-size: clamp(32px, 3.8vw, 50px); line-height: 1.06; }
.lp-steps { display: flex; flex-direction: column; border-top: 1px solid var(--line); }
.lp-steps > div { display: flex; gap: 18px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.lp-steps b.n { font-weight: 800; color: var(--blue); font-size: 15px; width: 32px; flex: none; }
.lp-steps strong { font-size: 19px; display: block; }
.lp-steps span { color: var(--ink-3); }
.lp-roles { background: var(--soft); padding: 110px 24px; }
.lp-roles .in { max-width: 1280px; margin: 0 auto; display: flex; flex-direction: column; gap: 36px; }
.lp-roles .head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; }
.lp-roles .head h2 { max-width: 640px; }
.lp-roles .head p { color: var(--ink-3); max-width: 420px; }
.lp-roles .cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.lp-role { background: #fff; border-radius: 28px; overflow: hidden; display: flex; flex-direction: column; }
.lp-role img { width: 100%; height: 280px; object-fit: cover; display: block; }
.lp-role .b { padding: 24px; display: flex; flex-direction: column; gap: 10px; }
.lp-role .tag { align-self: flex-start; font-size: 12px; font-weight: 800; padding: 4px 12px; border-radius: 999px; }
.lp-role strong { font-size: 22px; letter-spacing: -0.01em; line-height: 1.3; }
.lp-role span.d { color: var(--ink-3); }
.lp-role.admin { background: var(--blue); color: #fff; justify-content: space-between; padding: 28px; gap: 24px; min-height: 420px; }
.lp-role.admin .logo { width: 56px; height: 56px; border-radius: 16px; outline: 2px solid rgba(255,255,255,.25); }
.lp-role.admin .tag { background: rgba(255,255,255,.15); color: #fff; }
.lp-role.admin strong { font-size: 26px; line-height: 1.15; letter-spacing: -0.02em; }
.lp-role.admin span.d { color: #fff; opacity: .9; }
.lp-role.admin .pill { align-self: flex-start; height: 46px; padding: 0 20px; }
.lp .lp-how { padding-top: 110px; padding-bottom: 110px; display: flex; flex-direction: column; gap: 40px; }
.lp-how .cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.lp-how .c { border: 1.5px solid var(--line); border-radius: 26px; padding: 28px; display: flex; flex-direction: column; gap: 14px; }
.lp-how .c b.n { width: 52px; height: 52px; border-radius: 50%; background: var(--blue); color: #fff; display: grid; place-items: center; font-weight: 800; font-size: 20px; }
.lp-how .c b.n.g { background: var(--green); color: var(--green-ink); }
.lp-how .c strong { font-size: 21px; }
.lp-how .c span { color: var(--ink-3); }
.lp-contact { padding: 0 24px 80px; }
.lp-contact .box { max-width: 1280px; margin: 0 auto; background: var(--blue); color: #fff; border-radius: 36px; padding: clamp(36px, 6vw, 80px); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 32px; position: relative; overflow: hidden; }
.lp-contact .circle { position: absolute; right: -80px; top: -80px; width: 320px; height: 320px; border-radius: 50%; background: rgba(255,255,255,.06); }
.lp-contact .copy { flex: 1 1 460px; display: flex; flex-direction: column; gap: 14px; position: relative; }
.lp-contact .copy h2 { font-size: clamp(32px, 4.2vw, 56px); }
.lp-contact .copy p { font-size: 18px; opacity: .92; max-width: 520px; }
.lp-contact .acts { display: flex; flex-direction: column; gap: 10px; position: relative; flex: 0 1 300px; }
.lp-contact .acts a { height: 54px; border-radius: 999px; font-weight: 800; display: grid; place-items: center; }
.lp-contact .acts a.w { background: #fff; color: var(--blue); }
.lp-contact .acts a.l { border: 1.5px solid rgba(255,255,255,.5); color: #fff; font-weight: 700; }
.lp-contact form { display: flex; gap: 8px; background: rgba(255,255,255,.12); padding: 6px; border-radius: 999px; }
.lp-contact form input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; color: #fff; padding: 0 14px; font-weight: 600; }
.lp-contact form input::placeholder { color: rgba(255,255,255,.75); }
.lp-contact form button { height: 42px; padding: 0 18px; border-radius: 999px; border: 0; background: #fff; color: var(--blue); font-weight: 800; cursor: pointer; }
.lp-contact .err { color: #FFD1CC; }
.lp-foot { border-top: 1px solid #E9EEF5; }
.lp .lp-foot .lp-in { padding-top: 48px; padding-bottom: 48px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 32px; color: var(--ink-3); font-size: 15px; }
.lp-foot .brand { display: flex; flex-direction: column; gap: 10px; max-width: 320px; }
.lp-foot .brand > div { display: flex; align-items: center; gap: 10px; }
.lp-foot .brand .logo { width: 34px; height: 34px; border-radius: 10px; }
.lp-foot .brand strong { font-size: 19px; color: var(--ink); font-weight: 800; }
.lp-foot .col { display: flex; flex-direction: column; gap: 6px; }
.lp-foot .col strong { color: var(--ink); }
.lp-foot .col a { color: var(--ink-3); }
.lp-foot .col a:hover { color: var(--blue); }
.lp .lp-copy { padding-bottom: 32px; font-size: 13px; color: var(--muted); }
@media (max-width: 760px) {
    .lp-hero { aspect-ratio: auto; min-height: 100svh; }
    .lp-links { display: none; }
    .lp-hero-body { padding-top: 24px; }
    .lp-el .pic img { height: 380px; }
    .lp-wali .box { min-height: 520px; }
}
