/* U.N.I Klinik Sikamat - /booking (SOP NORA palette) */
@font-face{font-family:"Poppins";src:url("fonts/poppins-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Poppins";src:url("fonts/poppins-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Poppins";src:url("fonts/poppins-600.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Poppins";src:url("fonts/poppins-700.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Poppins";src:url("fonts/poppins-800.woff2") format("woff2");font-weight:800;font-display:swap}

:root{
	--navy:#0D2340;--navy-2:#163259;--navy-3:#23426F;
	--orange:#FF6A00;--orange-d:#E05C00;--orange-soft:#FFF1E6;
	--pink:#D9467A;--pink-soft:#FDEAF1;
	--wa:#1FAF54;--wa-d:#178C43;
	--bg:#F4F6FA;--card:#FFFFFF;--ink:#0D2340;--muted:#55657D;--line:#E2E7EF;
	--r:18px;--r-sm:12px;
	--shadow:0 1px 2px rgba(13,35,64,.06),0 8px 24px rgba(13,35,64,.08);
	--wrap:1120px;
	--font:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}

/* Self-owned document reset (kept at 0 specificity) */
:where(.uks-booking) *,:where(.uks-booking) *::before,:where(.uks-booking) *::after{box-sizing:border-box}
:where(.uks-booking) :where(h1,h2,h3,p,ul,ol,figure){margin:0;padding:0}
:where(.uks-booking) :where(ul,ol){list-style:none}
:where(.uks-booking) :where(button,input,select,textarea){font:inherit;color:inherit}
:where(.uks-booking) img{max-width:100%;display:block}

body.uks-booking{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.uks-booking.bk-lock{overflow:hidden}
.uks-booking a{color:inherit}
.bk-wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}

/* Top bar */
.bk-top{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.admin-bar .bk-top{top:32px}
@media (max-width:782px){.admin-bar .bk-top{top:46px}}
.bk-top__in{display:flex;align-items:center;justify-content:space-between;height:64px}
.bk-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:15px;letter-spacing:.02em;color:var(--navy)}
.bk-brand img{width:40px;height:40px;border-radius:10px;object-fit:cover}
.bk-top__call{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:var(--navy);color:#fff!important;text-decoration:none;font-weight:600;font-size:14px}
.bk-top__call svg{width:16px;height:16px;fill:currentColor}
@media (max-width:420px){.bk-brand span{font-size:13px}.bk-top__call span{display:none}.bk-top__call{padding:10px}}

/* Hero: photo-to-navy gradient (NORA design DNA) */
.bk-hero{position:relative;color:#fff;background:
	linear-gradient(100deg,var(--navy) 0%,var(--navy) 42%,rgba(13,35,64,.82) 62%,rgba(13,35,64,.25) 100%),
	var(--hero) right 15% center/cover no-repeat,var(--navy);overflow:hidden}
.bk-hero::after{content:"";position:absolute;inset:auto 0 0 0;height:90px;background:linear-gradient(transparent,rgba(13,35,64,.55));pointer-events:none}
.bk-hero__in{position:relative;z-index:1;padding:64px 20px 72px;max-width:var(--wrap)}
.bk-hero__in>*{max-width:600px}
.bk-eyebrow{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#FFB27A;margin-bottom:14px}
.bk-hero h1{font-size:clamp(30px,5.4vw,50px);line-height:1.12;font-weight:800;letter-spacing:-.01em}
.bk-hero h1 span{color:var(--orange)}
.bk-hero__lead{margin-top:16px;font-size:clamp(16px,2vw,18px);color:#D5DEEB}
.bk-trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.bk-trust li{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:14px;font-weight:500}
.bk-trust svg{width:16px;height:16px;fill:#FFB27A}
.bk-hero__cta{margin-top:28px}
@media (max-width:720px){
	.bk-hero{background:
		linear-gradient(180deg,rgba(13,35,64,.35) 0%,rgba(13,35,64,.85) 45%,var(--navy) 70%),
		var(--hero) center 20%/cover no-repeat,var(--navy)}
	.bk-hero__in{padding:200px 20px 48px}
}

/* Buttons */
.bk-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;border:0;font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}
.bk-btn:active{transform:translateY(1px)}
.bk-btn--primary{background:var(--orange);color:#fff!important;box-shadow:0 8px 20px rgba(255,106,0,.32)}
.bk-btn--primary:hover{background:var(--orange-d)}
.bk-btn--wa{background:var(--wa);color:#fff!important;box-shadow:0 8px 20px rgba(31,175,84,.3)}
.bk-btn--wa:hover{background:var(--wa-d)}
.bk-btn--block{width:100%}
.bk-btn[disabled]{opacity:.6;cursor:wait}
.bk-btn svg{width:22px;height:22px;fill:currentColor}

/* Steps */
.bk-steps{background:#fff;border-bottom:1px solid var(--line)}
.bk-steps ol{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:18px 0}
.bk-steps li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--muted)}
.bk-steps b{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;font-size:14px}
@media (max-width:640px){.bk-steps li{flex-direction:column;text-align:center;gap:6px;font-size:12.5px;line-height:1.3}}

/* Categories */
.bk-cats{padding:56px 0 64px}
.bk-cats h2,.bk-info h2{font-size:clamp(24px,3.4vw,32px);font-weight:700;line-height:1.2}
.bk-sub{margin-top:8px;color:var(--muted)}
.bk-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:28px}
@media (max-width:760px){.bk-grid{grid-template-columns:1fr}}

.bk-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:24px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.bk-card:hover{transform:translateY(-2px);border-color:#C9D3E1;box-shadow:0 2px 4px rgba(13,35,64,.06),0 16px 36px rgba(13,35,64,.12)}
.bk-card:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.bk-card__head{display:flex;align-items:flex-start;gap:14px}
.bk-card__icon{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--navy);color:#fff}
.bk-card__icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bk-card__kicker{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--orange-d)}
.bk-card h3{font-size:19px;line-height:1.3;font-weight:700;margin-top:2px}
.bk-card__desc{color:var(--muted);font-size:15px}
.bk-chips{display:flex;flex-wrap:wrap;gap:6px}
.bk-chips span{padding:5px 11px;border-radius:999px;background:var(--bg);border:1px solid var(--line);font-size:13px;font-weight:500;color:var(--navy-3)}
.bk-card__go{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px dashed var(--line);font-weight:600;color:var(--navy)}
.bk-card__go i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--orange);color:#fff;font-style:normal;transition:transform .18s ease}
.bk-card:hover .bk-card__go i{transform:translateX(3px)}

/* Featured Pinktober card */
.bk-card--feature{grid-column:1/-1;background:linear-gradient(120deg,#fff 0%,#fff 55%,var(--pink-soft) 100%);border-color:#F4C6D7}
.bk-card--feature .bk-card__icon{background:var(--pink)}
.bk-card--feature .bk-card__kicker{color:var(--pink)}
.bk-card--feature .bk-card__go i{background:var(--pink)}
.bk-badge{position:absolute;top:-11px;right:20px;padding:5px 12px;border-radius:999px;background:var(--pink);color:#fff;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 6px 14px rgba(217,70,122,.3)}
@media (min-width:761px){.bk-card--feature{flex-direction:row;align-items:center;gap:28px}.bk-card--feature .bk-card__main{flex:1;display:flex;flex-direction:column;gap:14px}.bk-card--feature .bk-card__go{margin:0;border:0;padding:0;flex-direction:column;gap:8px;min-width:150px}}

/* Info */
.bk-info{background:#fff;border-top:1px solid var(--line);padding:56px 0}
.bk-info__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.bk-info h2{font-size:20px;margin-bottom:10px}
.bk-info p{color:var(--muted)}
.bk-info a{color:var(--navy);font-weight:600}
.bk-link{display:inline-block;margin-top:10px;color:var(--orange-d)!important;text-decoration:none}
.bk-hours span{font-weight:600;color:var(--ink)}
.bk-hours__list{margin-top:8px}
.bk-hours__list li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--muted)}
.bk-hours__list b{color:var(--ink);font-weight:600}
@media (max-width:820px){.bk-info__grid{grid-template-columns:1fr;gap:28px}}

.bk-foot{background:var(--navy);color:#9FB0C8;font-size:13px;padding:22px 0 90px;text-align:center}

/* Floating WhatsApp */
.bk-fab{position:fixed;right:18px;bottom:18px;z-index:50;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--wa);color:#fff;box-shadow:0 10px 24px rgba(31,175,84,.4)}
.bk-fab svg{width:30px;height:30px;fill:currentColor}

/* Modal / bottom sheet */
.bk-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}
.bk-modal[hidden]{display:none}
.bk-modal__scrim{position:absolute;inset:0;background:rgba(9,22,42,.62);animation:bkFade .2s ease}
.bk-modal__panel{position:relative;width:100%;max-width:560px;max-height:calc(100dvh - 40px);overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.35);animation:bkUp .26s cubic-bezier(.2,.8,.2,1)}
.bk-modal__x{position:absolute;top:12px;right:12px;z-index:2;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#fff;font-size:26px;line-height:1;cursor:pointer}
.bk-modal__x:hover{background:rgba(255,255,255,.3)}
.bk-modal__x.is-dark{background:var(--bg);color:var(--navy)}
@media (max-width:640px){
	.bk-modal{padding:0;align-items:flex-end}
	.bk-modal__panel{max-width:none;max-height:94dvh;border-radius:22px 22px 0 0}
}
@keyframes bkFade{from{opacity:0}}
@keyframes bkUp{from{opacity:0;transform:translateY(24px)}}

.bk-mhead{padding:26px 24px 22px;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);color:#fff}
.bk-mhead.is-pink{background:linear-gradient(135deg,var(--navy) 0%,#3A2550 70%,#7A2E57 100%)}
.bk-mhead small{display:block;font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#FFB27A;margin-bottom:6px}
.bk-mhead h3{font-size:21px;line-height:1.3;font-weight:700;padding-right:36px}
.bk-mhead p{margin-top:6px;font-size:14px;color:#C9D4E4}

.bk-form{padding:22px 24px 26px;display:grid;gap:16px}
.bk-fs{border:0;margin:0;padding:0;min-width:0}
.bk-label,.bk-fs legend{display:block;font-size:14px;font-weight:600;margin-bottom:8px;color:var(--ink)}
.bk-label em,.bk-fs legend em{font-style:normal;color:var(--orange-d)}
.bk-opts{display:grid;gap:8px}
.bk-opt{position:relative;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--r-sm);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}
.bk-opt input{position:absolute;opacity:0;pointer-events:none}
.bk-opt__dot{flex:none;width:20px;height:20px;border-radius:50%;border:2px solid #B7C2D3;transition:all .15s ease}
.bk-opt__txt{font-size:15px;font-weight:500;line-height:1.35}
.bk-opt__txt small{display:block;font-size:13px;font-weight:400;color:var(--muted)}
.bk-opt:has(input:checked){border-color:var(--orange);background:var(--orange-soft)}
.bk-opt:has(input:checked) .bk-opt__dot{border-color:var(--orange);box-shadow:inset 0 0 0 4px #fff;background:var(--orange)}
.bk-opt:has(input:focus-visible){outline:3px solid rgba(255,106,0,.35);outline-offset:2px}

.bk-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:420px){.bk-row{grid-template-columns:1fr}}
.bk-input{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:#fff;font-size:16px;transition:border-color .15s ease,box-shadow .15s ease}
textarea.bk-input{min-height:84px;resize:vertical}
.bk-input:focus{outline:0;border-color:var(--navy-3);box-shadow:0 0 0 4px rgba(35,66,111,.12)}
.bk-input.is-bad{border-color:#D23B3B}
.bk-seg{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.bk-seg .bk-opt{flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px}
.bk-seg .bk-opt__dot{display:none}
.bk-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bk-err{display:none;padding:10px 14px;border-radius:var(--r-sm);background:#FDECEC;color:#A42727;font-size:14px}
.bk-err.is-on{display:block}
.bk-fine{font-size:12.5px;color:var(--muted);text-align:center}

/* Success state */
.bk-done{padding:34px 24px 28px;text-align:center}
.bk-done__tick{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 16px;border-radius:50%;background:#E6F7EC;color:var(--wa)}
.bk-done__tick svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.bk-done h3{font-size:22px;font-weight:700;line-height:1.3}
.bk-done p{margin-top:8px;color:var(--muted)}
.bk-sum{margin:18px 0 20px;padding:14px 16px;border-radius:var(--r-sm);background:var(--bg);text-align:left;font-size:14px}
.bk-sum div{display:flex;justify-content:space-between;gap:14px;padding:4px 0}
.bk-sum span{color:var(--muted)}
.bk-sum b{font-weight:600;text-align:right}
.bk-count{margin-top:12px;font-size:13px;color:var(--muted)}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ===== v1.1: avatar photos on category cards ===== */
.bk-card{padding:0}
.bk-card__body{display:flex;flex-direction:column;gap:14px;padding:20px 22px 22px;flex:1}
.bk-card__media{position:relative;display:block;aspect-ratio:16/9;border-radius:var(--r) var(--r) 0 0;overflow:hidden;background:var(--navy)}
.bk-card__media img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:transform .5s ease}
.bk-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,35,64,0) 55%,rgba(13,35,64,.45) 100%)}
.bk-card:hover .bk-card__media img{transform:scale(1.04)}
.bk-badge{z-index:2}
@media (min-width:761px){
	.bk-card--feature{flex-direction:row;align-items:stretch;gap:0}
	.bk-card--feature .bk-card__media{flex:0 0 46%;aspect-ratio:auto;min-height:300px;border-radius:var(--r) 0 0 var(--r)}
	.bk-card--feature .bk-card__media::after{background:linear-gradient(90deg,rgba(13,35,64,0) 60%,rgba(253,234,241,.6) 100%)}
	.bk-card--feature .bk-card__body{padding:30px 32px;justify-content:center}
	.bk-card--feature .bk-card__main{flex:0 0 auto}
	.bk-card--feature .bk-card__go{margin-top:10px;padding-top:16px;border-top:1px dashed var(--line);flex-direction:row;gap:0;min-width:0}
}

/* Modal header: photo-to-navy gradient */
.bk-mhead.has-img{min-height:168px;padding-top:34px;background:linear-gradient(90deg,var(--navy) 0%,rgba(13,35,64,.93) 48%,rgba(13,35,64,.3) 100%),var(--mimg) right 20%/cover no-repeat,var(--navy)}
.bk-mhead.is-pink.has-img{background:linear-gradient(90deg,#1B1E44 0%,rgba(58,37,80,.92) 48%,rgba(122,46,87,.3) 100%),var(--mimg) right 20%/cover no-repeat,var(--navy)}
.bk-mhead.has-img>*{max-width:68%}
@media (max-width:420px){.bk-mhead.has-img>*{max-width:78%}}

/* ===== v1.2: Pinktober price highlight ===== */
.bk-price{position:relative;display:flex;flex-direction:column;gap:4px;padding:16px 18px 14px;border-radius:16px;background:linear-gradient(135deg,#fff 0%,var(--pink-soft) 100%);border:2px solid var(--pink);box-shadow:0 10px 24px rgba(217,70,122,.16)}
.bk-price__best{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;margin-top:-30px;margin-bottom:4px;padding:5px 12px;border-radius:999px;background:linear-gradient(135deg,#FFC93C,#FF9F1C);color:var(--navy);font-size:12.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 6px 14px rgba(255,159,28,.35)}
.bk-price__row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bk-price__amt{font-size:clamp(40px,6vw,52px);line-height:1;font-weight:800;letter-spacing:-.02em;color:var(--pink)}
.bk-price__save{padding:5px 11px;border-radius:999px;background:var(--pink);color:#fff;font-size:13px;font-weight:700}
.bk-price__lbl{font-size:14px;font-weight:600;color:var(--navy)}
.bk-card--feature .bk-card__body{gap:16px}
.bk-card--feature .bk-chips{margin-bottom:10px}

/* Best package option in form */
.bk-opt--best{padding-top:20px;border-color:var(--pink);background:var(--pink-soft)}
.bk-opt--best:has(input:checked){border-color:var(--pink);background:var(--pink-soft)}
.bk-opt--best:has(input:checked) .bk-opt__dot{border-color:var(--pink);background:var(--pink)}
.bk-opt__best{position:absolute;top:-10px;left:12px;padding:3px 10px;border-radius:999px;background:linear-gradient(135deg,#FFC93C,#FF9F1C);color:var(--navy);font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.bk-opt__price{margin-left:auto;padding-left:10px;font-size:22px;font-weight:800;color:var(--pink);white-space:nowrap}
.bk-opts{padding-top:6px}

/* ===== v1.3: prices on every package ===== */
.bk-opt__price{display:flex;flex-direction:column;align-items:flex-end;gap:0;margin-left:auto;padding-left:10px;text-align:right;line-height:1.15;white-space:nowrap;font-size:inherit;color:inherit}
.bk-opt__price b{font-size:17px;font-weight:800;color:var(--navy)}
.bk-opt__price s{font-size:13px;font-weight:500;color:var(--muted)}
.bk-opt__price em{font-style:normal;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--pink)}
.bk-opt--best .bk-opt__price b{font-size:24px;color:var(--pink)}
.bk-opt:has(input:checked) .bk-opt__price b{color:var(--orange-d)}
.bk-opt--best:has(input:checked) .bk-opt__price b{color:var(--pink)}
.bk-price__was{font-size:20px;font-weight:600;color:var(--muted);text-decoration-thickness:2px}
.bk-price__promo{order:0;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--pink)}
@media (max-width:380px){.bk-opt__price b{font-size:15px}.bk-opt--best .bk-opt__price b{font-size:21px}}

/* ===== v1.4: hero with campaign poster ===== */
.bk-hero{background:radial-gradient(120% 90% at 85% 10%,#1E3D6B 0%,rgba(30,61,107,0) 60%),linear-gradient(160deg,var(--navy) 0%,#0A1B33 100%)}
.bk-hero::after{display:none}
.bk-hero__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:48px;padding:56px 20px 64px}
.bk-hero__in>*{max-width:none}
.bk-hero__copy{order:1;max-width:560px}
.bk-hero__media{order:2;justify-self:end;width:100%;max-width:520px}
.bk-hero__img{display:block;width:100%;height:auto;aspect-ratio:1/1;border-radius:22px;box-shadow:0 30px 60px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.08)}
@media (max-width:860px){
	.bk-hero{background:linear-gradient(180deg,#0A1B33 0%,var(--navy) 100%)}
	.bk-hero__in{grid-template-columns:1fr;gap:26px;padding:18px 16px 40px}
	.bk-hero__media{order:0;justify-self:center;max-width:560px}
	.bk-hero__img{border-radius:18px}
}

.bk-seg__note{margin:8px 0 0;font-size:12.5px;color:var(--muted);line-height:1.5}
.bk-hours__note{margin-top:10px;font-size:13px;color:var(--muted);line-height:1.55}
