/* AVETRIX — pencahayaan ruangan (v13): panel lampu langit-langit, berkas cahaya & bayangan, lantai kayu mengilap, lampu dinding, plakat logo */
.desk .wl{background:
 linear-gradient(transparent calc(100% - calc(3.4*var(--vh))),#fbfaf7 calc(100% - calc(3.4*var(--vh))),#dedbd3 calc(100% - calc(1.2*var(--vh))),#b9b5ab 100%),
 linear-gradient(112deg,#3a4a5a1c 0 14%,#ffffffd9 24% 31%,#3a4a5a12 40% 52%,#ffffff8c 60% 64%,#3a4a5a1c 74%) var(--bx) 0/calc(60*var(--vw)) 100% repeat-x,
 linear-gradient(#f6f5f1,#e3e1db 62%,#c9c7c0);box-shadow:inset 0 0 calc(14*var(--vh)) #1d2a3629}
.desk .fl{background:
 linear-gradient(#ffffff80,transparent 38%,#1d10043d),
 linear-gradient(112deg,#2a1a0a3d 0 14%,#fff4d68c 24% 31%,#2a1a0a2e 40% 52%,#fff4d65c 60% 64%,#2a1a0a3d 74%) var(--bx) 0/calc(60*var(--vw)) 100% repeat-x,
 linear-gradient(90deg,#0000001f 0 2px,transparent 2px) var(--bx) 0/66px 100%,
 linear-gradient(90deg,#dcbb92 0 64px,#c9a478 64px) var(--bx) 0/132px 100%;box-shadow:inset 0 calc(-6*var(--vh)) calc(10*var(--vh)) calc(-4*var(--vh)) #1d100459}
.desk .cl{background:
 linear-gradient(90deg,transparent 0 12%,#fff 12% 40%,transparent 40%) var(--bx) 0/calc(26*var(--vw)) 100%,
 linear-gradient(#cfcdc7,#e6e4df);box-shadow:inset 0 0 calc(8*var(--vh)) #1d2a3640,inset 0 calc(-3*var(--vh)) calc(6*var(--vh)) calc(-2*var(--vh)) #fff}
.desk .seg>i.wd{transform:translateZ(calc(var(--z)*-1 + 2px));pointer-events:none}
.desk .seg>i.lg{left:calc(5*var(--vw));top:calc(3.5*var(--vh));width:calc(3.8*var(--vw));aspect-ratio:1;background:#fff;border:calc(.45*var(--vw)) solid #f7f6f2;border-radius:3px;box-shadow:calc(.5*var(--vw)) calc(1.2*var(--vw)) calc(1.6*var(--vw)) #0b142640,0 0 0 1px #0b14261a}
.desk .seg>i.lg img{display:block;width:100%;height:100%;object-fit:contain;padding:10%}
.desk .seg>i.sx{left:var(--sx,60%);top:calc(6.5*var(--vh));width:calc(2.2*var(--vh));height:calc(5*var(--vh));background:linear-gradient(90deg,#4a4f55,#1d2024 60%,#33373c);clip-path:polygon(18% 0,82% 0,100% 100%,0 100%)}
.desk .seg>i.sx:before{content:"";position:absolute;left:50%;top:calc(-2*var(--vh));width:calc(16*var(--vh));height:calc(16*var(--vh));margin-left:calc(-8*var(--vh));background:radial-gradient(closest-side,#fff3cfd9,#fff3cf40 55%,transparent);clip-path:none;z-index:-1}
.desk .seg>i.sx:after{content:"";position:absolute;left:50%;top:100%;width:calc(10*var(--vh));height:calc(22*var(--vh));margin-left:calc(-5*var(--vh));background:linear-gradient(#fff0c066,transparent);clip-path:polygon(34% 0,66% 0,100% 100%,0 100%)}
.fr{box-shadow:calc(.7*var(--vw)) calc(2.2*var(--vh)) calc(3.4*var(--vh)) #0b142638,0 calc(.4*var(--vh)) calc(.8*var(--vh)) #0b14261f}
.mob #bk{filter:contrast(1.08)}

/* ===== v13.1: menyatu tanpa garis, atap tetap terlihat, pedestal solid ===== */
.desk header.s{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
/* berkas cahaya: repeating gradient dengan periode = 0.927 x lebar ubin (calc(60*var(--vw))) => ubin menyambung tanpa seam */
.desk .wl{box-shadow:none;background:
 linear-gradient(transparent calc(100% - calc(3.4*var(--vh))),#fbfaf7 calc(100% - calc(3.4*var(--vh))),#dedbd3 calc(100% - calc(1.2*var(--vh))),#b9b5ab 100%),
 repeating-linear-gradient(112deg,#3a4a5a1c 0,#3a4a5a1c calc(5*var(--vw)),#ffffffd9 calc(12*var(--vw)),#ffffffd9 calc(16*var(--vw)),#3a4a5a12 calc(23*var(--vw)),#3a4a5a12 calc(30*var(--vw)),#ffffff8c calc(35*var(--vw)),#ffffff8c calc(37*var(--vw)),#3a4a5a1c calc(43*var(--vw)),#3a4a5a1c calc(55.6*var(--vw))) var(--bx) 0/calc(60*var(--vw)) 100% repeat-x,
 linear-gradient(#f6f5f1,#e3e1db 62%,#c9c7c0)}
.desk .fl{box-shadow:none;background:
 linear-gradient(#ffffff80,transparent 38%,#1d10043d),
 repeating-linear-gradient(112deg,#2a1a0a3d 0,#2a1a0a3d calc(5*var(--vw)),#fff4d68c calc(12*var(--vw)),#fff4d68c calc(16*var(--vw)),#2a1a0a2e calc(23*var(--vw)),#2a1a0a2e calc(30*var(--vw)),#fff4d65c calc(35*var(--vw)),#fff4d65c calc(37*var(--vw)),#2a1a0a3d calc(43*var(--vw)),#2a1a0a3d calc(55.6*var(--vw))) var(--bx) 0/calc(60*var(--vw)) 100% repeat-x,
 linear-gradient(90deg,#0000001f 0 2px,transparent 2px) var(--bx) 0/66px 100%,
 linear-gradient(90deg,#dcbb92 0 64px,#c9a478 64px) var(--bx) 0/132px 100%}
.desk .cl{box-shadow:none;background:
 linear-gradient(90deg,transparent 0 12%,#fff 12% 40%,transparent 40%) var(--bx) 0/calc(26*var(--vw)) 100%,
 linear-gradient(#cfcdc7,#e6e4df)}
/* plakat logo: kecil, di pojok atas, tidak menimpa teks */
.desk .seg>i.lg{left:calc(2.5*var(--vw));top:calc(1*var(--vh));width:calc(2.8*var(--vw));border-width:calc(.3*var(--vw))}
/* lampu dinding: badan logam + kerucut cahaya (tanpa clip-path agar cahaya tidak terpotong) */
.desk .seg>i.sx{clip-path:none;top:calc(7*var(--vh));width:calc(2.4*var(--vh));height:calc(4.6*var(--vh));border-radius:calc(.4*var(--vh)) calc(.4*var(--vh)) calc(1.4*var(--vh)) calc(1.4*var(--vh));background:linear-gradient(90deg,#5b6068,#1f2226 55%,#3a3e44);box-shadow:0 calc(.6*var(--vh)) calc(1*var(--vh)) #0b142659}
.desk .seg>i.sx:after{clip-path:polygon(30% 0,70% 0,100% 100%,0 100%);background:linear-gradient(#fff0c08c,transparent)}
/* pedestal logo: kotak solid, tiap sisi beda terang + bayangan lantai */
.desk .pl{left:80%;width:calc(20*var(--vh));height:calc(25*var(--vh));background:linear-gradient(#f4f4f7,#dddde3 72%,#c7c7cf);box-shadow:inset 0 0 0 1px #0000001a,inset 0 calc(-3*var(--vh)) calc(3*var(--vh)) calc(-2*var(--vh)) #0000003d}
.desk .pl:before{height:calc(20*var(--vh));top:calc(-20*var(--vh));background:linear-gradient(#fff,#efeff3);box-shadow:inset 0 0 0 1px #00000014}
.desk .pl:after{width:calc(20*var(--vh));background:linear-gradient(90deg,#aeafb9,#cbccd4);box-shadow:inset 0 0 0 1px #0000001a}
.desk .pl em{left:-45%;right:-70%;bottom:calc(-4.5*var(--vh));height:calc(10*var(--vh));background:radial-gradient(closest-side,#0b142680,#0b142638 60%,transparent)}

/* ===== v13.2: berkas cahaya presisi dengan panel atap =====
   Atap: panel pada x = 12%..40% dari ubin calc(26*var(--vw))  => calc(3.12*var(--vw))..10.4vw (lebar calc(7.28*var(--vw))).
   Tembok & lantai memakai ubin calc(26*var(--vw)) yang sama (anchor --bx sama), sudut 112deg:
   titik awal berkas di tepi atas tembok = calc(3.12*var(--vw))..10.4vw  (t = x*sin112 = calc(2.89*var(--vw))..9.64vw),
   periode gradien = calc(26*var(--vw))*sin112 = calc(24.1*var(--vw))  => ubin menyambung sempurna.
   Di lantai, berkas disambung dari dasar tembok: geser kiri 0.405 x tinggi tembok (calc(100*var(--vh))) = calc(40.5*var(--vh)). */
.desk .wl{background:
 linear-gradient(transparent calc(100% - calc(3.4*var(--vh))),#fbfaf7 calc(100% - calc(3.4*var(--vh))),#dedbd3 calc(100% - calc(1.2*var(--vh))),#b9b5ab 100%),
 repeating-linear-gradient(112deg,#2a3a4a30 0,#2a3a4a30 calc(1.9*var(--vw)),#fffffff2 calc(3.9*var(--vw)),#fffffff2 calc(8.6*var(--vw)),#2a3a4a30 calc(10.7*var(--vw)),#2a3a4a30 calc(24.1*var(--vw))) var(--bx) 0/calc(26*var(--vw)) 100% repeat-x,
 linear-gradient(#f2f1ed,#dcdad4 62%,#c4c2bb)}
.desk .fl{background:
 linear-gradient(#ffffff73,transparent 38%,#1d10043d),
 repeating-linear-gradient(112deg,#2a1a0a52 0,#2a1a0a52 calc(1.9*var(--vw)),#fff4d6cc calc(3.9*var(--vw)),#fff4d6cc calc(8.6*var(--vw)),#2a1a0a52 calc(10.7*var(--vw)),#2a1a0a52 calc(24.1*var(--vw))) calc(var(--bx) - calc(40.5*var(--vh))) 0/calc(26*var(--vw)) 100% repeat-x,
 linear-gradient(90deg,#0000001f 0 2px,transparent 2px) var(--bx) 0/66px 100%,
 linear-gradient(90deg,#dcbb92 0 64px,#c9a478 64px) var(--bx) 0/132px 100%}

/* ===== v13.3: cahaya lembut ala Gapsy + dinding samping ruangan dalam ===== */
.desk .wl{background:
 linear-gradient(transparent calc(100% - calc(3.4*var(--vh))),#f3f1ec calc(100% - calc(3.4*var(--vh))),#d2cfc8 calc(100% - calc(1.2*var(--vh))),#a9a59b 100%),
 repeating-linear-gradient(112deg,#fff0 0,#fff0 calc(1*var(--vw)),#ffffff33 calc(1.9*var(--vw)),#ffffff80 calc(2.9*var(--vw)),#ffffffbf calc(3.9*var(--vw)),#ffffffd9 calc(4.8*var(--vw)),#ffffffd9 calc(7.7*var(--vw)),#ffffffbf calc(8.7*var(--vw)),#ffffff80 calc(9.7*var(--vw)),#ffffff33 calc(10.6*var(--vw)),#fff0 calc(11.5*var(--vw)),#fff0 calc(24.1*var(--vw))) var(--bx) 0/calc(26*var(--vw)) 100% repeat-x,
 linear-gradient(#d9d7d2,#cbc9c3 55%,#b0aea8)}
.desk .fl{background:
 linear-gradient(#ffffff59,transparent 36%,#1d10042e),
 repeating-linear-gradient(112deg,#fff4d600 0,#fff4d600 calc(1*var(--vw)),#fff4d633 calc(1.9*var(--vw)),#fff4d680 calc(2.9*var(--vw)),#fff4d6b3 calc(3.9*var(--vw)),#fff4d6cc calc(4.8*var(--vw)),#fff4d6cc calc(7.7*var(--vw)),#fff4d6b3 calc(8.7*var(--vw)),#fff4d680 calc(9.7*var(--vw)),#fff4d633 calc(10.6*var(--vw)),#fff4d600 calc(11.5*var(--vw)),#fff4d600 calc(24.1*var(--vw))) calc(var(--bx) - calc(40.5*var(--vh))) 0/calc(26*var(--vw)) 100% repeat-x,
 linear-gradient(#2a1a0a33,#2a1a0a33),
 linear-gradient(90deg,#0000001a 0 2px,transparent 2px) var(--bx) 0/66px 100%,
 linear-gradient(90deg,#dcbb92 0 64px,#c9a478 64px) var(--bx) 0/132px 100%}
.desk .cl{background:
 linear-gradient(90deg,transparent 0 11.2%,#cfcac2 11.2% 12%,#fff 12% 39.4%,#e3dfd8 39.4% 40%,transparent 40%) var(--bx) 0/calc(26*var(--vw)) 100%,
 linear-gradient(#b6b1a9,#d0ccc5)}
.desk .seg>i.sl{background:linear-gradient(90deg,#d6d4cf,#bebcb6)}
.desk .seg>i.sr{background:linear-gradient(270deg,#d6d4cf,#bebcb6)}
.sl .pc,.sr .pc{position:absolute;top:26%;left:30%;width:calc(10*var(--vh));height:calc(14*var(--vh));background:#fff;border:calc(.8*var(--vh)) solid #2a2d31;box-shadow:inset 0 0 0 calc(.6*var(--vh)) #f4f3ef,calc(.4*var(--vh)) calc(.8*var(--vh)) calc(1.6*var(--vh)) #0b142666;display:grid;place-items:center;pointer-events:none}
.sl .pc img,.sr .pc img{width:68%}

/* ===== v14.1: dinding berbingkai (molding) seperti galeri ===== */
.desk .seg>.wl{box-shadow:inset 0 0 0 calc(1.5*var(--vh)) #fbfaf6,inset 0 0 0 calc(1.9*var(--vh)) #c4c0b4,inset 0 0 calc(10*var(--vh)) #1d2a3626}
.desk .gap>.wl{box-shadow:inset 0 0 calc(8*var(--vh)) #1d2a3622}

/* ===== v14.8: HP = layar laptop virtual, diperbesar (zoom) tanpa mengubah rasio bentuk =====
   vp.js menghitung layar virtual 1216x760 (16:10) dan faktor skala --S supaya TINGGI ruangan pas dengan layar HP.
   Semua satuan di dalam .stage (vw/vh) mengikuti layar virtual itu; header/menu/dialog tetap memakai layar asli. */
:root{--vw:1vw;--vh:1vh}
:root,.stage{--d:calc(38*var(--vh));--d2:calc(70*var(--vh))}
html.vp{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html.vp,html.vp body{overflow-x:hidden;max-width:100vw}
.vp .stage{--vw:var(--svw);--vh:var(--svh);inset:auto;left:0;top:0;right:auto;bottom:auto;width:var(--DW);height:var(--DH);transform:scale(var(--S));transform-origin:0 0;perspective-origin:calc(var(--VW)/2) 45%}
.phone .brand span,.phone .jump,.phone .hint{display:none}
.phone .live .t{display:none}
.phone .hr{gap:6px}.phone .hr .btn{padding:0 14px;height:44px}.phone #mb{width:44px}
.phone:after{content:"Swipe ke atas untuk menjelajah";position:fixed;left:0;right:0;bottom:calc(22px + env(safe-area-inset-bottom,0px));text-align:center;font:600 15px var(--B,system-ui,sans-serif);color:#393c3a;z-index:40;pointer-events:none;transition:opacity .4s}
.phone.moved:after{opacity:0}

/* ===== v14.9: rapi & bersih ===== */
html{scrollbar-width:none}html::-webkit-scrollbar{width:0;height:0}  /* scroll tetap jalan; bar bawaan disembunyikan (progress emas sudah ada di atas) */
.cnt img{margin-bottom:calc(3.2*var(--vh))}                             /* logo tidak menempel ke judul */
