/**
 * Home page — galeri horizontal gaya commission.nyc.
 *
 * Spec: CLAUDE.md bagian 1. Halaman ini TIDAK scroll ke bawah — satu-satunya
 * scroll yang jalan ada di dalam .tk-home-gallery (ke SAMPING). Warna kanvas
 * (hitam/putih) TIDAK didefinisikan ulang di sini — halaman ini tidak dapat
 * body class woocommerce-page, jadi otomatis pakai token --tk-bg/--tk-fg
 * default dari style.css (hitam/putih), sudah disiapkan untuk ini sejak awal.
 *
 * Semua teks di sini duduk DI ATAS FOTO (bukan di atas kanvas halaman), jadi
 * warnanya pakai token --tk-overlay-* — token yang memang disediakan untuk
 * itu di style.css dan sengaja tidak ikut berubah kalau kanvas halaman
 * berubah terang/gelap.
 */

html.tk-home,
body.tk-home {
	overflow: hidden;
	height: 100%;
	margin: 0;
}

/* ---------- Logo melayang: SUDAH DIBUANG (7 Sep 2026) ----------
   Dulu `.tk-home-logo` melayang besar di tepi kiri layar Home (permintaan
   user 3 Sep). Sekarang logo ada di TENGAH NAVBAR di semua halaman
   (permintaan user 7 Sep) — gayanya ada di bagian "Logo navbar" di bawah.
   Blok lama sengaja tidak disisakan sebagai CSS mati. */

/* ---------- Top bar melayang ---------- */

.tk-home-topbar {
	top: 0;
	left: 0;
	right: 0;
	/* ⚠️ 96, bukan 21. Urutan lapisan yang HARUS dijaga di halaman ini:
	   pita dropdown Collections (95) < navbar (96) < overlay menu HP (97).
	   Navbar wajib di ATAS pita: pita itu `position: fixed` selebar layar
	   dan tingginya ikut jumlah koleksi — kalau lapisannya di bawah pita,
	   begitu ada kondisi apapun yang membuat pita mulai sedikit lebih atas
	   dari perhitungan (mis. tinggi header berubah, admin bar, zoom
	   browser), pita akan MENUTUPI menu navbar dan menu-nya seolah hilang.
	   Dilaporkan user 4 Sep 2026 ("malah ilang kalo di hover") — di
	   referensi commission.nyc menu navbar SELALU kelihatan waktu daftar
	   koleksinya terbuka, jadi lapisannya dikunci begini, bukan diandalkan
	   ke perhitungan posisi yang bisa meleset.
	   Angka 21 yang lama cuma untuk menang atas logo (20) — masih terjaga,
	   karena 96 juga di atas 20. */
	z-index: 96;
	display: flex;
	align-items: center;
	gap: 24px;

	/* ⚠️ Atas-bawah DIREVISI TIGA KALI (9 Sep 2026): 24px → 12px ("masih
	   kegedean") → **20px, angka final saat ini**. Angka ini baru BERARTI
	   apa adanya karena ruang kosong bawaan berkas logo sudah dipotong di
	   `.tk-home-topbar__logo-img` (lihat catatan panjang di sana) — tanpa
	   pemotongan itu, padding berapa pun angkanya akan selalu terlihat
	   lebih besar dari yang tertulis.

	   ⚠️ Kiri-kanan DISAMAKAN dengan jarak tepi HALAMAN (bukan angka bebas
	   20px seperti sebelumnya) — permintaan user: "padding kanan kiri
	   navbar sejajarin sama pagenya". Sumber kebenarannya SATU tempat:
	   `.grid-container.container` di style.css, yang jadi pembungkus semua
	   konten (breadcrumb, judul, grid produk) — **24px di desktop, 12px di
	   HP** (diperkecil dari 40px/16px, 10 Sep 2026 — lihat catatan di
	   style.css). Kalau jarak tepi halaman itu diubah, ubah juga di sini
	   supaya navbar tidak lagi sejajar. */
	padding: 20px 24px;

	/* SENGAJA TANPA transition — permintaan user 3 Sep 2026: "kalo di hover
	   ga langsung ke invert, bikin langsung invert aja". Warnanya harus
	   berbalik SAAT ITU JUGA begitu kursor masuk, bukan menyusul beberapa
	   milidetik kemudian. (Transisi konten seperti galeri/overlay tetap
	   kalem lewat --tk-duration — ini cuma pengecualian khusus untuk umpan
	   balik hover instan.) */
}

/* ---------- Dua varian navbar (satu markup) ----------
   Permintaan user 4 Sep 2026: navbar yang sama berlaku di SEMUA halaman.
   - `--overlay` (Home): melayang transparan di atas foto galeri.
   - `--solid` (halaman lain): bar putih solid + logo hitam, MENEMPEL saat
     halaman di-scroll. Sengaja `sticky` (ikut aliran halaman), bukan
     `fixed`: halaman-halaman itu isinya panjang, dan bar `fixed` akan
     menindih konten paling atas karena tidak menyisakan ruang untuk
     dirinya sendiri. */

.tk-home-topbar--overlay {
	position: fixed;
	color: var(--tk-overlay-fg);
	background: transparent;
}

.tk-home-topbar--solid {
	position: sticky;
	background: #ffffff;
	color: #000000;
	/* ⚠️ Warnanya DIHALUSKAN DUA KALI (9 Sep 2026, sesi yang sama):
	   rgba(0,0,0,0.12) (≈ #E0E0E0) → #EAEAEA → **#F2F2F2, angka final
	   saat ini**. Tiap kali diganti warna literal yang lebih terang,
	   bukan menurunkan opacity sebuah rgba — lebih mudah dibandingkan
	   "seberapa terang" antar revisi lewat angka hex langsung. */
	border-bottom: 1px solid #f2f2f2;
}

/* ---------- Logo navbar (TENGAH, semua halaman) ----------
   Permintaan user 7 Sep 2026. `flex: 0 0 auto` — zona kiri & kanan yang
   sama-sama `flex: 1` yang mendorongnya ke titik tengah layar. */
.tk-home-topbar__logo {
	display: block;
	flex: 0 0 auto;
	line-height: 0; /* Buang celah baris di bawah <img> supaya benar-benar rata tengah dengan teks menu di sebelahnya. */
}

/* ⚠️ RUANG KOSONG BAWAAN BERKAS LOGO DIPOTONG DI SINI (9 Sep 2026).
   Diukur langsung dari kedua berkas PNG (logo-black & logo-white, dua-duanya
   1200×600 dan bounds-nya IDENTIK): tulisan "takkan" cuma menempati baris
   156–425, jadi **26% tinggi berkas kosong di atas dan 29% di bawah** —
   totalnya 55% ruang transparan yang ikut terhitung sebagai tinggi elemen.
   Itulah kenapa navbar terasa jauh lebih tinggi daripada angka padding-nya:
   padding 20px + ±12px transparan = ±32px jarak yang benar-benar terlihat,
   dan user melaporkannya sebagai "padding atas bawah terlalu besar".

   Perbaikannya BUKAN menambah/mengurangi padding sampai kelihatan pas
   (angkanya akan jadi ganjil dan tidak ada yang tahu kenapa), tapi membuat
   kotak elemennya SAMA DENGAN tulisannya: tinggi dipatok setinggi ink lalu
   `object-fit: cover` memotong pita transparan atas & bawah. Setelah ini,
   angka padding di `.tk-home-topbar` berarti apa adanya.

   Angkanya: lebar 90px → tinggi alami 45px; ink 45% × 45 ≈ 20,3px. Dipakai
   21px (sedikit lebih longgar supaya tidak ada risiko tulisannya terpotong
   walau pembulatan browser berbeda), dengan titik potong di 48% — pusat ink
   berada di 48,4% tinggi berkas, bukan persis di tengah.

   ⚠️ KALAU BERKAS LOGO DIGANTI: cek ulang ruang transparannya. Kalau logo
   baru sudah rapat (tanpa pita kosong), CABUT `height`/`object-fit`/
   `object-position` di sini dan kembalikan ke `height: auto` — kalau tidak,
   logo baru itu justru akan terpotong. */
/* ⚠️ DIKECILKAN 10 Sep 2026 (revisi user: "logonya tolong dikecilin
   sedikit") — dari 90×21 ke 78×18. `height` DIHITUNG ULANG mengikuti
   rumus yang sama seperti komentar di atas (bukan angka bebas): lebar
   78px → tinggi alami 39px (rasio 2:1) → ink 45%×39 ≈ 17,55px → dibulatkan
   ke atas jadi 18px (margin aman yang sama seperti sebelumnya). Kalau
   nanti dikecilkan/dibesarkan lagi, hitung ulang tingginya pakai rumus
   ini juga — jangan cuma ubah lebar & biarkan tinggi apa adanya, nanti
   framing crop-nya geser dari ink tulisannya. */
.tk-home-topbar__logo-img {
	width: 78px; /* Logo 1200×600 (rasio 2:1). Cukup terbaca tanpa mendominasi baris menu 14px. */
	height: 18px;
	object-fit: cover;
	object-position: center 48%;
	display: block;
}

.tk-home-topbar__logo:hover {
	text-decoration: none; /* Aturan a:hover global memberi underline — di logo (gambar) itu cuma jadi garis nyasar. */
	opacity: 0.85;
}

/* ⚠️ DUA versi logo dicetak, CSS memilih yang tampil — lihat alasan
   lengkapnya di functions.php. Ringkasnya: navbar Home transparan di atas
   foto gelap butuh logo PUTIH, tapi begitu dropdown dibuka navbar itu
   berubah jadi PUTIH dan logo putih akan lenyap (bug yang sama persis
   sudah pernah terjadi pada tulisan "Collections", 4 Sep 2026).

   Default = halaman non-Home (bar putih) → logo hitam. */
.tk-home-topbar__logo-img--light {
	display: none;
}

.tk-home-topbar--overlay .tk-home-topbar__logo-img--light {
	display: block;
}

.tk-home-topbar--overlay .tk-home-topbar__logo-img--dark {
	display: none;
}

/* ...KECUALI saat pita dropdown membuat navbar Home jadi putih — di situ
   logo harus balik hitam. Ditaruh SESUDAHNYA supaya menang atas aturan di
   atas. Pemicunya sama persis dengan yang memutihkan latar navbar. */
.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) .tk-home-topbar__logo-img--light,
body.tk-collections-open .tk-home-topbar--overlay .tk-home-topbar__logo-img--light,
body.tk-search-open .tk-home-topbar--overlay .tk-home-topbar__logo-img--light {
	display: none;
}

.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) .tk-home-topbar__logo-img--dark,
body.tk-collections-open .tk-home-topbar--overlay .tk-home-topbar__logo-img--dark,
body.tk-search-open .tk-home-topbar--overlay .tk-home-topbar__logo-img--dark {
	display: block;
}

/* ---------- Inversi putih: HANYA saat ITEM menunya di-hover ----------
   ⚠️ Permintaan user 4 Sep 2026: "navbarnya jadi putih kalo misalkan di
   hover aja menunya jangan areanya". Sebelumnya pemicunya
   `.tk-home-topbar:hover` — seluruh area bar, termasuk ruang kosong
   panjang di antara menu kiri dan Cart di kanan, jadi bar berkedip putih
   cuma karena kursor lewat di strip paling atas layar.
   Sekarang pakai `:has()`: bar berubah hanya kalau ada <a>/<button> DI
   DALAMNYA yang sedang di-hover. Berlaku untuk semua tombol/link navbar
   (menu, mata uang, Cart, Menu) — sesuai permintaan sebelumnya.
   Cuma varian overlay yang punya inversi ini; varian solid memang sudah
   putih sejak awal, tidak ada yang perlu dibalik.
   ⚠️ `body.tk-collections-open` TETAP dipertahankan: selagi pita dropdown
   terbuka, bar harus tetap putih walau kursor sudah pindah turun ke daftar
   koleksi — kalau tidak, bar balik transparan dan pita putih di bawahnya
   terlihat menggantung tanpa sambungan. */
/* ⚠️ Diubah 5 Sep 2026 atas permintaan user: latar putih HANYA muncul
   kalau yang di-hover adalah menu YANG PUNYA ANAKAN (pembungkusnya
   `.tk-collections-dropdown`) — menu biasa cukup efek underline-nya
   sendiri, navbar tidak ikut berubah. Sebelumnya pemicunya `a:hover,
   button:hover` mana saja, jadi hover "Shop"/"About" pun memutihkan bar. */
/* ⚠️ `body.tk-search-open` ditambahkan 7 Sep 2026: panel search juga
   berupa pita PUTIH di bawah navbar, jadi navbar-nya harus ikut putih —
   kalau tidak, pita putihnya terlihat menggantung tanpa sambungan, persis
   masalah yang sama sudah ditangani untuk dropdown. */
.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ),
body.tk-collections-open .tk-home-topbar--overlay,
body.tk-search-open .tk-home-topbar--overlay {
	background: #ffffff;
	color: #000000;
}

/* ⚠️ Warna anak-anaknya ditulis EKSPLISIT, tidak mengandalkan `inherit`.
   Bug 4 Sep 2026: "Collections" hilang total di bar putih (putih-di-atas-
   putih) karena rantai inherit-nya putus di pembungkus dropdown, sementara
   Shop/Campaigns/About baik-baik saja. Menulis langsung ke semua <a> &
   <button> membuat tidak ada lagi yang bergantung pada rantai itu. */
.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) a,
.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) button,
body.tk-collections-open .tk-home-topbar--overlay a,
body.tk-collections-open .tk-home-topbar--overlay button,
body.tk-search-open .tk-home-topbar--overlay a,
body.tk-search-open .tk-home-topbar--overlay button {
	color: #000000;
}

/* Varian solid: teksnya memang hitam sejak awal. */
.tk-home-topbar--solid a,
.tk-home-topbar--solid button {
	color: #000000;
}

/* Link "belum aktif" pakai putih-redup di atas foto — di bar putih itu tak
   terbaca, jadi redupnya diganti versi hitam. */
.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) .tk-home-link--soon,
body.tk-collections-open .tk-home-topbar--overlay .tk-home-link--soon,
.tk-home-topbar--solid .tk-home-link--soon {
	color: rgba(0, 0, 0, 0.55);
}

/* ---------- Header bawaan GeneratePress dimatikan ----------
   Navbar kita menggantikannya di semua halaman. `display: none` (bukan
   visibility/opacity) supaya benar-benar tidak memakan ruang. Ini lapis
   kedua — lapis pertamanya `remove_action()` di functions.php. */
.site-header {
	display: none;
}

/* ---------- Layout tiga zona (acuan tonybianco.com) ----------
   logo KIRI — menu TENGAH — utilitas KANAN. Diukur langsung di TB
   (5 Sep 2026): blok menunya 406–863px di viewport 1280px, titik tengah
   634 ≈ tengah layar 640 — jadi menunya memang di tengah VIEWPORT.

   ⚠️ Ditengahkan dengan TIGA ZONA FLEX (kiri & kanan sama-sama `flex: 1`),
   BUKAN `position: absolute` + `transform: translateX(-50%)`. Cara
   transform sempat dipakai dan TERNYATA BUG (diverifikasi 5 Sep 2026 lewat
   pengukuran): elemen ber-`transform` menjadi containing block bagi
   keturunannya yang `position: fixed`, jadi pita dropdown yang seharusnya
   selebar layar menyusut jadi kotak kecil selebar menu — terukur 272px
   dari 1280px. Cara flex ini menghasilkan hasil visual yang sama tanpa
   efek samping itu. */
/* Zona kiri (logo di halaman non-Home, kosong di Home) & zona kanan
   (utilitas) sama-sama `flex: 1` — itu yang memaksa zona tengah (menu)
   duduk tepat di titik tengah layar, berapapun lebar logo. */
.tk-home-topbar__lead {
	flex: 1 1 0;
	display: flex;
	align-items: center;
	min-width: 0;
}

.tk-home-topbar__nav {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 20px;

	/* ⚠️ HURUF KAPITAL SEMUA — permintaan user 9 Sep 2026 ("semua menu
	   navbar jadi all capital letter"). Dipasang sebagai `text-transform`,
	   BUKAN dengan mengubah judul menunya di wp-admin: klien tetap menulis
	   "New Arrivals" seperti biasa di Appearance → Menus, tampilannya saja
	   yang dikapitalkan. Kalau kelak tidak jadi kapital, cukup cabut satu
	   baris ini — tidak perlu mengedit menu satu per satu.
	   Overlay menu HP sudah kapital sejak 8 Sep lewat aturannya sendiri
	   (`.tk-home-menu`), jadi sekarang keduanya konsisten. */
	text-transform: uppercase;
}

/* ⚠️ `<button>` TIDAK MEWARISI `text-transform` dari induknya — stylesheet
   bawaan browser menyetelnya langsung di elemen itu, dan "nilai yang
   disetel langsung" selalu menang atas pewarisan, berapa pun spesifisitas
   induknya. Kuirk yang SAMA sudah pernah ditemukan di overlay menu HP
   (8 Sep 2026). Tanpa baris ini, trigger "Shoes" tetap huruf kecil
   sementara link di sebelahnya kapital. */
.tk-home-topbar__nav button {
	text-transform: uppercase;
}

.tk-home-topbar__actions {
	flex: 1 1 0; /* Kembar dengan __lead — inilah yang menengahkan menu (lihat catatan di atas). */
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 20px;
	min-width: 0;
}

.tk-home-topbar__cart,
.tk-home-topbar__menu,
.tk-home-topbar__search,
.tk-home-topbar__wishlist,
.tk-home-topbar__account {
	background: none;
	border: none;
	padding: 0;
	color: inherit;
	font: inherit;
	cursor: pointer;
}

/* ---------- Ikon utilitas (search / wishlist / akun / cart) ----------
   SVG-nya inline dengan `stroke: currentColor` (lihat takkan_icon() di
   functions.php) — jadi warnanya ikut warna teks navbar secara otomatis,
   termasuk saat navbar Home membalik dari putih ke hitam. Tidak ada satu
   pun aturan warna khusus untuk ikon di sini, dan memang tidak perlu. */
.tk-home-topbar__search,
.tk-home-topbar__wishlist,
.tk-home-topbar__account,
.tk-home-topbar__cart {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0; /* Buang celah baris di bawah <svg> supaya ikon benar-benar rata tengah dengan teks "USD" di sebelahnya. */
}

.tk-icon {
	width: 20px;
	height: 20px;
	display: block;
}

/* Angka keranjang: ANGKA POLOS di sebelah ikon, tanpa bulatan berwarna.
   Acuannya tonybianco.com (diperiksa langsung: cart-nya juga menampilkan
   angka polos), dan lebih cocok dengan aturan tipografi situs ini —
   satu ukuran teks, monokrom, tanpa dekorasi (lihat CLAUDE.md).

   ⚠️ Versi pertama memakai bulatan ber-`background: currentColor` dan ITU
   BUG (ditemukan lewat pengukuran 7 Sep 2026: warna teks DAN latarnya
   sama-sama terbaca `rgb(0,0,0)` — angka hitam di atas bulatan hitam,
   tidak terbaca sama sekali). Sebabnya `currentColor` merujuk ke `color`
   ELEMEN ITU SENDIRI, yang justru baru saja ditimpa di aturan di
   bawahnya — bukan ke warna navbar seperti yang dikira.
   Angka polos menghapus seluruh kelas masalah ini: warnanya ikut teks
   navbar lewat pewarisan biasa, jadi otomatis benar di bar gelap maupun
   putih tanpa satu pun aturan warna tambahan. */
.tk-home-topbar__cart-count {
	margin-left: 2px;
	font-size: inherit;
	line-height: 1;
}

/* ⚠️ `background: none` wajib ditulis eksplisit di :hover DAN :focus.
   GeneratePress mencetak <style> inline di <head> berisi
   `button:hover, ... button:focus { background: <warna> }` (dari setelan
   warna Customizer) — tanpa override ini tombol "Menu"/"Cart"/dsb di
   navbar dapat kotak ABU-ABU saat disentuh. Dilaporkan user 4 Sep 2026
   (soal tombol "Collections", tapi penyebabnya sama untuk semua tombol
   navbar, jadi diperbaiki sekaligus di sini). */
.tk-home-topbar a:hover,
.tk-home-topbar button:hover {
	background: none;
	opacity: 0.7;
}

/* ⚠️ DIPISAH dari rule `:hover` di atas 8 Sep 2026 — revisi user: "ilangin
   focus state di navbar deh". `opacity: 0.7` yang dulu SATU rule dengan
   `:hover` ikut kepicu oleh `button:focus` — di perangkat sentuh,
   `:focus` MENEMPEL setelah tombol disentuh sampai pengunjung menyentuh
   elemen lain (kuirk yang sama sudah berkali-kali ditemukan di proyek
   ini: trigger "Shoes" 8 Sep pagi, trigger Collections 4 Sep). Akibatnya
   tombol "Menu"/Search/Wishlist/Cart jadi REDUP TERUS-MENERUS begitu
   disentuh, bukan cuma sekilas seperti umpan balik hover mouse yang
   wajar. `background: none` TETAP dipertahankan di :focus (masih perlu
   untuk kuirk kotak abu-abu GeneratePress di atas) — HANYA `opacity`-nya
   yang dicabut dari jalur :focus. */
/* ⚠️ `color: inherit` DITAMBAHKAN 9 Sep 2026 — ditemukan lewat kasus
   serupa di ikon kartu PLP (lihat plp.css): GeneratePress mencetak
   `button:focus{color:#ffffff;background-color:#3f4047}` — dulu cuma
   `background`-nya ditimpa di sini, `color`-nya TIDAK. Di navbar VARIAN
   PUTIH (`--solid`, dipakai di semua halaman non-Home), itu berarti ikon
   Cart/Menu/dll yang pakai `stroke="currentColor"` bisa jadi PUTIH di
   atas navbar PUTIH begitu tombolnya fokus (mis. setelah drawer/panel
   yang dibukanya ditutup dan fokus kembali ke tombol pemicu) — tak
   terlihat, persis gejala "icon hilang" yang dilaporkan user di kartu
   PLP. `inherit` (bukan warna literal) sengaja dipakai supaya BENAR di
   kedua varian sekaligus: putih di varian `--overlay` (Home, sudah
   memang seharusnya putih), hitam di varian `--solid` (halaman lain). */
.tk-home-topbar button:focus {
	background: none;
	color: inherit;
}

/* WP admin bar (fixed, 32px) menutupi top bar kita kalau kita sendiri sedang
   login pas testing. Pengunjung asli tidak pernah lihat admin bar, tapi ini
   murah dibenarkan supaya screenshot testing kita sendiri tidak salah kira
   ada bug. */
body.admin-bar .tk-home-topbar {
	top: 32px;
}

/* Tombol "Menu" HANYA untuk HP. Permintaan user 3 Sep 2026: di desktop menu
   langsung tampil di navbar (lihat .tk-home-topbar__nav), tidak disembunyikan
   di balik tombol. */
.tk-home-topbar__menu {
	display: none;
	/* ⚠️ HURUF KAPITAL — revisi user 10 Sep 2026 ("text Menu tolong dibuat
	   huruf kapital juga"). `<button>` TIDAK MEWARISI `text-transform` dari
	   induknya (kuirk yang sama sudah didokumentasikan untuk
	   `.tk-home-topbar__nav button` di atas — stylesheet bawaan browser
	   menyetelnya langsung di elemen `<button>`, menang atas pewarisan).
	   Tombol ini SIBLING dari `.tk-home-topbar__nav` (bukan turunannya),
	   jadi butuh baris sendiri, tidak ikut kebagian dari rule nav di atas. */
	text-transform: uppercase;
}

@media (max-width: 767px) {
	/* Jarak tepi kiri-kanan ikut turun ke 12px di sini — SAMA PERSIS
	   breakpoint & angka yang dipakai `.grid-container.container` di
	   style.css untuk jarak tepi halaman (diperkecil dari 16px, 10 Sep
	   2026). Atas-bawah (12px) tidak berubah di breakpoint manapun. */
	.tk-home-topbar {
		padding-left: 12px;
		padding-right: 12px;
	}

	.tk-home-topbar__nav {
		display: none;
	}

	.tk-home-topbar__menu {
		display: block;
	}

	/* ⚠️ Di HP tombol mata uang DISEMBUNYIKAN DARI NAVBAR.
	   Bug diukur 7 Sep 2026 di 375px: dengan 4 elemen (mata uang + 3 ikon)
	   isi zona kanan MELUAP keluar batas zonanya dan menimpa logo di
	   tengah sejauh 33px — tombol "JPY" mulai di x=200 padahal logo baru
	   berakhir di x=233. Menyembunyikannya aman karena trigger yang sama
	   SUDAH diduplikat di dalam overlay menu HP (.tk-home-menu__region) —
	   duplikat itu memang dibuat persis untuk alasan ini, jadi pengunjung
	   HP tetap bisa ganti region.

	   ⚠️ Catatan cara mengukurnya: memeriksa lebar ZONA-nya saja TIDAK
	   cukup — zona kanan tetap terbaca 99px & "tidak tumpang tindih",
	   padahal anak-anaknya sudah meluap keluar. Yang harus diukur elemen
	   anaknya. */
	.tk-home-topbar__region {
		display: none;
	}

	/* Ikon akun juga TIDAK tampil di navbar HP (revisi user 13 Okt 2026): akun masuk ke drawer menu — item
	   "Account" sudah ada di bagian bawah overlay (menu footer `takkan_footer`, lihat
	   takkan_render_footer_menu_items('menu')). Desktop tidak berubah. */
	.tk-home-topbar__account {
		display: none;
	}

	/* Sisa ruangnya sempit — rapatkan jarak & kecilkan logo supaya tiga
	   ikon + logo muat tanpa berdesakan. */
	.tk-home-topbar {
		gap: 12px;
	}

	.tk-home-topbar__actions {
		gap: 14px;
	}

	/* Ikut mengecil proporsional dengan basis desktop di atas (rasio 0,8×
	   dipertahankan sama seperti sebelum 10 Sep 2026: 72/90 = 78/97,5 ≈
	   0,8 → 78×0,8 = 62,4, dibulatkan ke 62px). Tinggi mewarisi 18px dari
	   aturan dasar di atas — TIDAK di-override di sini, sama seperti pola
	   sebelumnya. */
	.tk-home-topbar__logo-img {
		width: 62px;
	}

	/* Di HP navbar overlay tidak ikut berubah putih: tidak ada kursor yang
	   bisa "melayang" di layar sentuh, dan tanpa ini bar-nya akan nyangkut
	   putih setelah disentuh sekali (browser sentuh mempertahankan status
	   :hover sampai pengguna menyentuh tempat lain).
	   ⚠️ Varian solid TIDAK dikecualikan di sini — dia memang putih di semua
	   ukuran layar, bukan hasil hover. */
	.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) {
		background: transparent;
		color: var(--tk-overlay-fg);
	}

	.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) a,
	.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) button {
		color: var(--tk-overlay-fg);
	}

	.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) .tk-home-link--soon {
		color: var(--tk-overlay-fg-muted);
	}
}

/* ---------- Link yang belum aktif ----------
   Dicetak sebagai <span>, bukan <a> (lihat takkan_home_render_link() di
   page-home.php) — jadi memang bukan link, bukan cuma link yang diredupkan.
   Halaman tujuannya belum ada / masih draft; aktifkan dengan mengisi `url`
   di array PHP-nya. */
.tk-home-link--soon {
	color: var(--tk-overlay-fg-muted);
	cursor: default;
}

/* ---------- Galeri horizontal ---------- */

/* ⚠️ Bug ditemukan & diverifikasi 3 Sep 2026: `scroll-snap-type` di sumbu X
   (baik `mandatory` MAUPUN `proximity`, sudah dites dua-duanya) melawan
   perubahan `scrollLeft` lewat JS — dites dengan set langsung, dites lagi
   dengan puluhan event wheel beruntun, tetap balik ke 0. Karena galeri ini
   SEKARANG jalan sendiri terus-menerus (autoplay, lihat home.js) yang juga
   menggerakkan scrollLeft, snap makin tidak mungkin dipakai. Sengaja TIDAK
   dipakai — efek "nempel pas per foto" jauh lebih murah dikorbankan daripada
   gerak galerinya sendiri mati total. */
.tk-home-gallery {
	display: flex;
	width: 100vw;
	height: 100vh;
	height: 100dvh; /* Progressive enhancement: browser yang paham dvh pakai ini, sisanya jatuh ke vh di atas. Menghindari galeri "lompat" tinggi tiap address bar HP muncul/hilang. */
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none; /* Firefox */
	/* ⚠️ Ditambahkan 8 Sep 2026 bersamaan dengan geser vertikal-jadi-
	   horizontal di home.js: tanpa ini browser mencoba mengenali gesture
	   sentuhnya SENDIRI (pan/scroll bawaan) sebelum `preventDefault()` di
	   JS sempat berlaku — dua mekanisme scroll berebut elemen yang sama
	   itulah yang terasa "macet-macet" (dilaporkan user). `touch-action:
	   none` memberi tahu browser dari awal: jangan proses gesture apapun
	   di sini sama sekali, biar JS yang pegang kendali penuh. */
	touch-action: none;
}

/* ⚠️ DITAMBAHKAN 11 Sep 2026 — foto hero sekarang BERBEDA untuk desktop &
   mobile (permintaan user, acuan designbyomo.com), jadi `page-home.php`
   mencetak DUA `.tk-home-gallery` (satu per varian) — tapi cuma SATU yang
   boleh benar-benar tampil di satu waktu, kalau tidak keduanya akan
   sama-sama `height:100vh` dan bertumpuk MEMANJANGKAN halaman jadi 2 layar
   (merusak desain "tidak ada scroll vertikal sama sekali").
   Breakpoint SAMA PERSIS dengan yang dipakai di seluruh situs (767px) —
   default (desktop-ke-atas) sembunyikan set Mobile, dibalik di HP.
   `display:none` di sini JUGA berarti browser TIDAK PERNAH memuat foto
   set yang sedang disembunyikan (fotonya dicetak `data-src`, bukan `src`
   — lihat home.js `activateGallery()` — jadi tidak ada foto yang sudah
   ter-request lalu disembunyikan sia-sia; keduanya bekerja sama). */
.tk-home-gallery--mobile {
	display: none;
}

@media (max-width: 767px) {
	.tk-home-gallery--desktop {
		display: none;
	}

	.tk-home-gallery--mobile {
		display: flex;
	}
}

/* Bar scroll bawaan browser disembunyikan — di atas foto full-screen dia cuma
   jadi garis nyasar. Scroll-nya sendiri (jari/roda mouse) tetap jalan penuh. */
.tk-home-gallery::-webkit-scrollbar {
	display: none;
}

/* ⚠️ DIUBAH 8 Sep 2026 — sebelumnya tiap slide dipatok `width: 100vw` dan
   foto di dalamnya `object-fit: cover`, jadi foto SELALU dipotong penuh
   supaya mengisi satu layar tanpa celah (gaya commission.nyc). Dilaporkan
   user: di desktop foto jadi "nge-stretch banget" — foto potret yang
   ditarik memenuhi layar lebar berarti di-zoom berat, dan bagian atas/
   bawahnya kepotong habis.

   Sekarang: TINGGINYA yang dipatok penuh layar, LEBARNYA mengikuti rasio
   asli foto (`width: auto` pada <img>, tinggi 100%). Foto apa pun yang
   diupload klien SELALU tampil UTUH, di ukuran layar manapun — tanpa
   perlu tahu resolusinya lebih dulu (makanya user minta "sekali upload
   keliatan semua di semua design"). Foto potret jadi slide sempit, foto
   lanskap jadi slide lebar — bukan dipatok 100vw.

   Konsekuensinya (dipilih user secara eksplisit, bukan default): TIDAK
   ada ruang kosong/letterbox di sisi kiri-kanan foto yang tidak sepenuh
   lebar layar — slide berikutnya langsung menyambung di situ, bukan
   diisi latar belakang. Beda dengan pola pilihan lain (latar hitam polos,
   atau foto sama di-blur sebagai latar) yang SENGAJA tidak dipilih. */
/* ⚠️ DIROMBAK 13 Sep 2026 — revisi user: "di desktop sama di mobile masih
   belum keliatan full satu layar satu foto". Dari 8 Sep sampai sebelum ini,
   slide-nya TINGGI penuh tapi LEBAR ikut rasio asli foto (`width:auto`) —
   sengaja supaya foto tidak pernah dipotong sama sekali, tapi konsekuensinya
   (sudah didokumentasikan & sempat diterima 8 Sep): foto yang rasionya beda
   dari layar bikin ujung slide SEBELAH ikut nyempil di pinggir, jadi tidak
   pernah benar-benar "1 layar = 1 foto".
   Sekarang, karena hero desktop & mobile SUDAH punya set foto TERPISAH
   (11 Sep 2026) — klien bisa upload foto yang proporsinya memang dibuat
   untuk device itu (disarankan 1920×1080 desktop, 1080×1920 HP, lihat
   CLAUDE.md) — pemotongan otomatis (`object-fit:cover`) tidak akan
   se-ekstrem dulu (waktu foto yang SAMA dipakai paksa untuk desktop &
   mobile sekaligus, itu yang bikin dulu terlihat "nge-stretch").
   Slide sekarang DIPATOK PERSIS 100vw × 100vh/dvh (bukan lagi mengikuti
   rasio foto) — INILAH yang menjamin "1 layar = 1 foto" beneran, di
   ukuran layar apapun (laptop, monitor lebar, HP macam-macam rasio) —
   angka pixel foto yang pas SAJA tidak cukup, karena rasio layar
   pengunjung tidak akan pernah 100% seragam. */
.tk-home-gallery__slide {
	flex: 0 0 100vw;
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	margin: 0;
}

.tk-home-gallery__slide img {
	/* `object-fit: cover` memenuhi kotak 100vw×100vh persis, memotong
	   sedikit kelebihannya (bukan menggepengkan — rasio foto tetap utuh,
	   cuma bagian tepinya yang tidak ikut kelihatan kalau rasio foto beda
	   dari rasio layar). */
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ---------- Footer bar (desktop) ----------
   Di HP link-link ini pindah ke dalam overlay menu, jadi tidak hilang. */

.tk-home-footerbar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 20;
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 20px;
	color: var(--tk-overlay-fg-muted);
	pointer-events: none;
	text-transform: uppercase; /* 25 Sep 2026 (klien): Track Order / Info / Account dst. kapital semua. */
}

.tk-home-footerbar a,
.tk-home-footerbar .tk-home-link--soon {
	pointer-events: auto;
}

.tk-home-footerbar a {
	color: var(--tk-overlay-fg-muted);
}

.tk-home-footerbar a:hover {
	color: var(--tk-overlay-fg);
}

.tk-home-footerbar__copyright {
	margin-left: auto;
	text-transform: none; /* 25 Sep 2026 (klien): copyright TIDAK kapital, cuma menu di kirinya. */
}

@media (max-width: 767px) {
	.tk-home-footerbar {
		display: none;
	}
}

/* ---------- Menu overlay (HP) ---------- */

/* ⚠️ DIUBAH 8 Sep 2026 — dulu overlay ini MUNCUL DI TEMPAT (fade lewat
   opacity 0→1). Permintaan user: "open menunya di mobile slide in dari
   kiri ya". Sekarang dia MELUNCUR dari luar layar sisi kiri, pola drawer
   yang sama seperti cart drawer (lihat cart-drawer.css) — cuma arahnya
   dari kiri, bukan kanan, dan lebarnya penuh layar (bukan panel sempit)
   karena overlay ini memang dirancang menutupi seluruh layar, bukan
   menyisakan konten di baliknya yang perlu diredupkan lewat backdrop
   terpisah seperti cart drawer. */
/* ⚠️ DIUBAH 8 Sep 2026 — revisi user: menu overlay HP ini tadinya ikut
   token overlay GELAP bersama (`--tk-overlay*` di style.css, dipakai
   bersama region picker & dropdown desktop). Sekarang overlay INI SAJA
   dibuat TERANG (putih 85% transparan, teks abu gelap #2A2A2A) — DENGAN
   CARA MENIMPA ULANG custom property `--tk-overlay*` di scope elemen ini
   sendiri, BUKAN mengubah definisi global di style.css.
   Kenapa begini: seluruh isi overlay (search input, trigger USD, dropdown
   "Shoes" + kolomnya, link footer) sudah lebih dulu ditulis pakai
   `var(--tk-overlay-fg)` dkk — kalau custom property-nya ditimpa ulang DI
   SINI, semua keturunannya otomatis ikut berubah warna tanpa perlu
   menyalin-ulang aturan warna satu per satu. Region picker & dropdown
   desktop (band-style, bukan keturunan `.tk-home-menu`) TIDAK ikut
   berubah — masih gelap seperti sebelumnya, sesuai keputusan lama bagian
   itu SENGAJA selalu gelap. */
/* Kunci scroll halaman di belakang overlay menu HP saat terbuka (home.js memasang class ke <html>). */
html.tk-menu-open {
	overflow: hidden;
}

.tk-home-menu {
	--tk-overlay:           rgba(255, 255, 255, 0.9);
	/* ⚠️ DITAMBAHKAN 14 Sep 2026 — versi PADAT dari warna overlay di atas,
	   khusus untuk panel yang BERTUMPUK DI ATAS overlay ini (sub-panel
	   "Shoes" yang geser dari kanan). Memakai `--tk-overlay` untuk panel itu
	   TIDAK bisa: dua lapis rgba 0.9 tetap meneruskan 10% dari yang di
	   belakangnya, dan yang di belakangnya adalah TEKS MENU ini sendiri —
	   terbukti terbaca jelas ("TRACK ORDER", "INFO", "ACCOUNT") waktu dicek
	   lewat screenshot. Dibuat token, bukan `#ffffff` ditulis langsung di
	   collections-menu.css, supaya kalau tema overlay kelak dibalik jadi
	   gelap kedua warnanya berubah dari SATU tempat yang sama. */
	--tk-overlay-solid:     #ffffff;
	--tk-overlay-fg:        #2a2a2a;
	--tk-overlay-fg-muted:  rgba(42, 42, 42, 0.55);
	--tk-overlay-line:      rgba(42, 42, 42, 0.18);

	position: fixed;
	inset: 0;
	/* 97 — harus di ATAS navbar (96), yang sekarang di atas pita Collections
	   (95). Overlay ini memang sengaja menutupi navbar sepenuhnya saat
	   terbuka (itu sebabnya trigger region & Collections diduplikat di
	   dalamnya). Dulu 30; dinaikkan bersamaan waktu navbar dinaikkan ke 96,
	   supaya urutan lapisannya tetap sama seperti sebelumnya. */
	z-index: 97;
	background: var(--tk-overlay);
	color: var(--tk-overlay-fg);
	/* Semua teks di dalam menu ini (judul menu & judul halaman) dibuat
	   KAPITAL — permintaan user 8 Sep 2026. Dikecualikan lagi khusus untuk
	   `.tk-home-menu__copyright` di bawah (baris "© 2026 Takkan" sengaja
	   dibiarkan huruf normal, bukan "judul"). */
	text-transform: uppercase;
	transform: translateX(-100%);
	pointer-events: none;
	transition: transform var(--tk-duration) var(--tk-ease);
	display: flex;
	flex-direction: column;
	padding: 20px;
	box-sizing: border-box;
	overflow-y: auto;
	overscroll-behavior: contain; /* Gulir di dalam menu tidak merambat ke halaman di belakangnya. */
	/* ⚠️ WAJIB, DITAMBAHKAN 14 Sep 2026 — ini penyebab bug "panelnya gabisa
	   kebuka" yang dilaporkan user dari HP asli. Sub-panel "Shoes" diparkir
	   di `translateX(100%)` saat tertutup, dan itu MEMPERLEBAR area scroll
	   elemen ini jadi dua kali lebar layar (terukur: clientWidth 375 vs
	   scrollWidth 750). Karena `overflow-y: auto` membuat `overflow-x` yang
	   `visible` ikut dihitung sebagai `auto`, menu ini diam-diam jadi BISA
	   DIGESER KE SAMPING — sapuan jari yang sedikit menyerong menggeser menu
	   ke area kosong di kanan, dan panel yang terbuka (di sisi kiri) jadi
	   tidak kelihatan sama sekali. Di mouse/desktop nyaris mustahil kejadian,
	   itu sebabnya lolos dari pengujian dan cuma muncul di perangkat sentuh.
	   ⚠️ Jangan dihapus selama masih ada anak ber-`transform` yang diparkir
	   di luar batas kanan. */
	overflow-x: hidden;
}

/* ⚠️ DITAMBAHKAN 8 Sep 2026 — `text-transform: uppercase` di atas TIDAK
   otomatis diwarisi elemen `<button>`/`<input>` (trigger "Shoes", trigger
   mata uang "USD", kolom & tombol search) — diverifikasi lewat pengukuran
   `getComputedStyle`, semuanya terbaca `text-transform: none` walau
   ancestor-nya sudah `uppercase`. Ini kuirk browser standar: stylesheet
   bawaan browser (UA stylesheet) memberi elemen form (`button`, `input`,
   `select`) nilai `text-transform: none` LANGSUNG pada elemen itu sendiri
   — bukan "tidak diatur" — jadi warisan dari induk tidak pernah dipakai
   sama sekali untuk elemen-elemen ini, berapa pun tegasnya aturan di
   induknya. Ditimpa eksplisit di sini untuk SEMUA form control di dalam
   menu ini sekaligus, supaya tidak ketinggalan kalau nanti ada tombol
   baru ditambahkan. */
.tk-home-menu button,
.tk-home-menu input {
	text-transform: uppercase;
}

.tk-home-menu.is-open {
	transform: translateX(0);
	pointer-events: auto;
}

.tk-home-menu__header {
	display: flex;
	justify-content: flex-end;
}

.tk-home-menu__close {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	color: inherit;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}

.tk-home-menu__close:hover {
	background: none; /* Menimpa button:hover generik GeneratePress — kuirk yang sama seperti tombol tutup cart drawer. */
	opacity: 0.7;
}

/* ⚠️ RIWAYAT 8 Sep 2026 — dua percobaan sebelumnya "menaikkan blok menu"
   dengan TETAP pakai `justify-content: center` + akal-akalan padding
   atas/bawah tidak sama (16px/72px, lalu 0px/140px) — keduanya cuma
   PENDEKATAN, bukan angka pasti, dan masih dirasa "kurang atas". Revisi
   TERAKHIR user: "40px dari atas aja jaraknya" — permintaan yang PRESISI
   (jarak pasti, bukan "agak naik"), jadi caranya diganti total: bukan lagi
   menengahkan lalu menggeser sedikit, tapi taruh blok mulai TEPAT 40px
   dari atas (`justify-content: flex-start` + `padding-top: 40px`). Lebih
   sederhana & lebih gampang disetel presisi kalau nanti direvisi lagi —
   ubah satu angka `padding-top` ini saja. */
.tk-home-menu__nav {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 16px;
	padding: 40px 0 0;
}

/* ---------- Search bar overlay menu HP ----------
   Ditambahkan 8 Sep 2026: "diatas garis bagian bawah masukin search bar"
   — garis yang dimaksud persis `border-top` di `.tk-home-menu__footer`
   di bawah ini, jadi form ini SENGAJA ditaruh sebagai elemen SEBELUM
   footer (bukan di dalamnya) supaya otomatis muncul tepat di atas garis
   itu tanpa border tambahan. */
/* ⚠️ DIUBAH 8 Sep 2026 (revisi lanjutan) — garis bawahnya dulu cuma
   ditempel di `<input>`-nya sendiri, jadi berhenti SEBELUM ikon kaca
   pembesar (tidak "fill container"). Permintaan user: "panjangnya sampai
   bawah icon ya jadi fill container" — garis dipindah ke WRAPPER ini
   (`.tk-home-menu__search`, membungkus input MAUPUN tombol ikon),
   supaya otomatis selebar penuh baris, bukan cuma selebar input.
   Padding bawah yang dulu ada di sini (24px, jarak ke elemen berikutnya)
   dipindah jadi `margin-bottom` — supaya garisnya nempel PERSIS di bawah
   baris input/ikon, dan jarak ke footer tetap sama seperti sebelumnya. */
.tk-home-menu__search {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 8px 0;
	margin-bottom: 24px;
	/* Ketebalan diturunkan dari 2px ke 1px — revisi user: "ketebalannya di
	   tipisin sedikit". */
	border-bottom: 1px solid var(--tk-overlay-fg);
}

/* ⚠️ Selector ditulis PANJANG (`.tk-home-menu input.tk-...`), bukan cuma
   nama class-nya — pelajaran dari bug search panel desktop 7 Sep 2026:
   GeneratePress memberi gaya lewat `input[type="search"]` (kotak
   abu-abu + border), dan selector satu-class kalah spesifisitas
   melawannya. Di sini datanya lebih parah kalau lolos: kotak abu-abu
   terang di atas overlay GELAP akan sangat mencolok. */
.tk-home-menu input.tk-home-menu__search-input {
	flex: 1 1 auto;
	min-width: 0;
	background: none;
	border: none;
	box-shadow: none;
	border-radius: 0;
	padding: 8px 0;
	color: inherit;
	font: inherit;
}

.tk-home-menu input.tk-home-menu__search-input::placeholder {
	color: var(--tk-overlay-fg-muted);
}

.tk-home-menu input.tk-home-menu__search-input:focus {
	outline: none;
}

.tk-home-menu__search-submit {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	color: inherit;
	cursor: pointer;
}

/* Kuirk GeneratePress yang sama seperti tombol-tombol lain di navbar. */
.tk-home-menu__search-submit:hover,
.tk-home-menu__search-submit:focus {
	background: none;
	opacity: 0.7;
}

/* ⚠️ Garis pembatas (`border-top`) di sini SUDAH DIHAPUS 8 Sep 2026 (sore)
   — revisi user: "divider dibawah dihapus aja". Sempat dinaikkan
   ketegasannya pagi harinya (lihat riwayat commit) supaya beda dari garis
   search, tapi keputusan sorenya garis ini dibuang total; garis search
   sendiri yang sekarang dipertegas (lihat `.tk-home-menu
   input.tk-home-menu__search-input` di atas) jadi tidak perlu lagi
   pembatas seksi terpisah. */
.tk-home-menu__footer {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	padding-top: 20px;
}

.tk-home-menu__copyright {
	margin-top: 8px;
	color: var(--tk-overlay-fg-muted);
	/* Baris hak cipta BUKAN "judul menu"/"judul halaman" — dikecualikan
	   dari `text-transform: uppercase` di `.tk-home-menu` supaya tetap
	   "© 2026 Takkan", bukan "© 2026 TAKKAN". */
	text-transform: none;
}

/* =========================================================================
   UNDERLINE ANIMASI (acuan tonybianco.com)
   -------------------------------------------------------------------------
   Permintaan user 5 Sep 2026: "kalo di hover underlinenya bergerak dari
   kiri ke kanan aja kaya tonybianco.com".

   Teknik diambil dari pemeriksaan langsung elemen mereka (bukan tebakan):
   `::after` setinggi 1px selebar teks, `transform: scaleX(0)` →
   `scaleX(1)`, `transform-origin` di KIRI (itu yang bikin tumbuhnya dari
   kiri ke kanan, bukan melebar dari tengah), transisi 0.25s dengan easing
   `cubic-bezier(0.104, 0.204, 0.492, 1)` — angka easing persis milik
   mereka.

   ⚠️ `text-decoration` global (`a:hover` di style.css) DIMATIKAN di dalam
   navbar — kalau tidak, akan ada DUA garis: garis bawaan browser yang
   muncul seketika, plus garis animasi ini.
   ========================================================================= */

.tk-home-topbar__nav a,
.tk-home-topbar__nav button,
.tk-home-topbar__region {
	position: relative;
	text-decoration: none;
}

.tk-home-topbar__nav a:hover,
.tk-home-topbar__nav button:hover,
button.tk-home-topbar__region:hover {
	text-decoration: none; /* Menimpa aturan a:hover global di style.css. */
	opacity: 1;            /* Menimpa peredupan lama — sekarang umpan baliknya underline, bukan pudar.
	                          Selector Cart/USD SENGAJA ditulis "a.tk-home-topbar__cart" /
	                          "button.tk-home-topbar__region" (bukan cuma nama class-nya)
	                          — supaya spesifisitasnya menyamai fallback lama
	                          `.tk-home-topbar a:hover` di atas. Tanpa elemen tipe
	                          ini, fallback itu MENANG walau ditulis lebih dulu
	                          (bug ditemukan 6 Sep 2026: Cart/USD tetap abu-abu
	                          redup saat di-hover, diukur opacity efektifnya
	                          0.7 bukan 1). */
}

.tk-home-topbar__nav a::after,
.tk-home-topbar__nav button::after,
.tk-home-topbar__region::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -2px;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.25s cubic-bezier(0.104, 0.204, 0.492, 1);
}

.tk-home-topbar__nav a:hover::after,
.tk-home-topbar__nav a:focus-visible::after,
.tk-home-topbar__nav button:hover::after,
.tk-home-topbar__nav button:focus-visible::after,
.tk-home-topbar__region:hover::after,
.tk-home-topbar__region:focus-visible::after {
	transform: scaleX(1);
}

/* Dropdown yang sedang TERBUKA garisnya tetap penuh, bukan cuma saat
   di-hover — penanda "ini yang lagi kamu buka".
   ⚠️ Selector-nya `> a`, BUKAN LAGI `> button` (diubah 13 Sep 2026) —
   sejak label ("Shoes" dst) dipecah jadi `<a>` link navigasi terpisah
   dari tombol chevron (lihat functions.php), garis yang perlu "tetap
   penuh saat terbuka" itu milik LABEL-nya (anak `<a>` langsung dari
   wrapper), bukan lagi tombolnya. */
.tk-home-topbar__nav .tk-collections-dropdown.is-open > a::after {
	transform: scaleX(1);
}

/* ⚠️ DITAMBAHKAN 13 Sep 2026 — tombol chevron kecil (`.tk-collections-
   dropdown__toggle`) SECARA TIDAK SENGAJA ikut kena aturan underline
   bersama di atas (dia tetap `<button>` di dalam `.tk-home-topbar__nav`,
   selector `.tk-home-topbar__nav button::after` menyasarnya juga) —
   hasilnya garis kecil nyasar muncul di bawah ikon chevron sendiri saat
   di-hover/fokus, terpisah dari garis label "Shoes" di sebelahnya.
   `content: none` menghapus pseudo-element itu SAMA SEKALI khusus untuk
   tombol ini, tanpa menyentuh mekanisme bersama itu sendiri. */
.tk-home-topbar__nav .tk-collections-dropdown__toggle::after {
	content: none;
}

/* ⚠️ Tombol mata uang IKUT dapat underline — DIKOREKSI 5 Sep 2026.
   Awalnya sengaja dikecualikan atas permintaan user ("di button usd tidak
   ada underline kalo di hover"), lalu user mengirim gambar acuan yang
   justru memperlihatkan tombol mata uang ("ID / $") DENGAN underline saat
   di-hover. Ditanyakan ulang ke user, dan dia memilih ikut gambar acuan —
   jadi mata uang & Cart sekarang diperlakukan sama seperti item menu lain. */

/* ⚠️ Warna teks saat HOVER wajib ditulis eksplisit per varian.
   Bug ditemukan & diukur 5 Sep 2026: di Home (navbar transparan di atas
   foto gelap), meng-hover "Shop" membuat teksnya jadi rgb(34,34,34) —
   hampir hitam, praktis tidak terlihat. Sumbernya <style> inline
   GeneratePress yang memasang warna untuk `a:hover` (kuirk yang sama
   seperti background abu-abu pada `button:hover` sebelumnya). Aturan kita
   sebelumnya cuma mengatur `text-decoration`/`opacity` di hover, tidak
   warnanya, jadi milik mereka yang menang.
   Referensi user (gambar 2) memang menuntut teks & garis tetap PUTIH di
   navbar gelap. */
.tk-home-topbar--overlay .tk-home-topbar__nav a:hover,
.tk-home-topbar--overlay .tk-home-topbar__nav a:focus,
.tk-home-topbar--overlay .tk-home-topbar__nav button:hover,
.tk-home-topbar--overlay .tk-home-topbar__nav button:focus,
.tk-home-topbar--overlay .tk-home-topbar__cart:hover,
.tk-home-topbar--overlay .tk-home-topbar__cart:focus,
.tk-home-topbar--overlay .tk-home-topbar__region:hover,
.tk-home-topbar--overlay .tk-home-topbar__region:focus {
	color: var(--tk-overlay-fg);
}

/* ...KECUALI saat pita dropdown membuat navbar jadi putih — di situ
   teksnya justru harus hitam (kondisi gambar 1). Aturan ini ditaruh
   SESUDAHNYA supaya menang atas aturan putih di atas. */
.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) .tk-home-topbar__nav a:hover,
.tk-home-topbar--overlay:has( .tk-collections-dropdown:hover ) .tk-home-topbar__nav button:hover,
body.tk-collections-open .tk-home-topbar--overlay .tk-home-topbar__nav a:hover,
body.tk-collections-open .tk-home-topbar--overlay .tk-home-topbar__nav button:hover {
	color: #000000;
}

/* Varian solid (halaman non-Home): barnya memang putih, teks selalu hitam. */
.tk-home-topbar--solid .tk-home-topbar__nav a:hover,
.tk-home-topbar--solid .tk-home-topbar__nav a:focus,
.tk-home-topbar--solid .tk-home-topbar__nav button:hover,
.tk-home-topbar--solid .tk-home-topbar__nav button:focus,
.tk-home-topbar--solid .tk-home-topbar__cart:hover,
.tk-home-topbar--solid .tk-home-topbar__cart:focus,
.tk-home-topbar--solid .tk-home-topbar__region:hover,
.tk-home-topbar--solid .tk-home-topbar__region:focus {
	color: #000000;
}

/* =========================================================================
   Accordion "Info" di overlay menu HP (2 Okt 2026)
   -------------------------------------------------------------------------
   Dicetak Takkan_Footer_Nav_Walker (functions.php) untuk item menu footer
   yang punya anakan. Hanya ada di overlay HP; bar bawah Home desktop
   mencetak "Info" sebagai link biasa. Panel mengembang pola grid 0fr→1fr
   (animasi tinggi tanpa angka tetap); `visibility` dijeda supaya link di
   panel tertutup tidak bisa di-Tab dan tidak ikut dianimasikan bersama
   tinggi. Jarak ke link pertama lewat margin ANAK (bukan padding wadah
   ber-overflow:hidden — padding tidak ikut menciut saat tertutup). */
.tk-info-menu {
	align-self: stretch;
}

.tk-home-menu .tk-info-menu__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

/* GeneratePress: button:hover/focus menimpa color + background (inline). */
.tk-home-menu .tk-info-menu__toggle:hover,
.tk-home-menu .tk-info-menu__toggle:focus {
	background: none;
	color: inherit;
}

.tk-info-menu__chevron {
	width: 16px;
	height: 16px;
	flex: none;
	transition: transform var(--tk-duration) var(--tk-ease);
}

.tk-info-menu.is-open .tk-info-menu__chevron {
	transform: rotate(180deg);
}

.tk-info-menu__panel {
	display: grid;
	grid-template-rows: 0fr;
	visibility: hidden;
	transition: grid-template-rows var(--tk-duration) var(--tk-ease), visibility 0s linear var(--tk-duration);
}

.tk-info-menu.is-open .tk-info-menu__panel {
	grid-template-rows: 1fr;
	visibility: visible;
	transition-delay: 0s;
}

.tk-info-menu__inner {
	min-height: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
}

.tk-info-menu__inner > a:first-child {
	margin-top: 12px;
}

/* Anak menu "Info" menjorok ke kanan supaya jelas bahwa itu turunan "Info" (revisi user 14 Okt 2026). */
.tk-info-menu__inner {
	padding-left: 16px;
}
