:root{--bg:#050706;--bg2:#090d0c;--panel:#0d1211;--panel2:#111817;--text:#f7fffd;--muted:#97aaa5;--teal:#14b8a6;--teal2:#2dd4bf;--line:#1d2d2a;--danger:#ff6b6b;--shadow:0 30px 80px rgba(0,0,0,.42);--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Roboto,Arial,sans-serif;line-height:1.6;overflow-x:hidden}body::selection{background:var(--teal);color:#032c27}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.container{width:min(1180px,calc(100% - 36px));margin:auto}.section-pad{padding:88px 0}.section-dark{background:linear-gradient(180deg,rgba(20,184,166,.03),rgba(255,255,255,0));border-block:1px solid rgba(255,255,255,.04)}.ambient{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:-1;opacity:.18}.ambient-a{width:420px;height:420px;background:var(--teal);top:-160px;right:-110px}.ambient-b{width:320px;height:320px;background:#0f766e;bottom:10%;left:-180px}.site-header{position:sticky;top:0;z-index:50;background:rgba(5,7,6,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.05);transition:.3s}.site-header.scrolled{background:rgba(5,7,6,.92);box-shadow:0 12px 40px #0006}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:22px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand img{width:46px;height:46px;border-radius:14px;object-fit:contain;background:#fff;padding:4px;box-shadow:0 0 0 1px #ffffff17}.brand span{display:grid;line-height:1.15}.brand strong{font-size:14px;letter-spacing:.08em}.brand small{font-size:10px;color:var(--muted);margin-top:4px}.main-nav{display:flex;align-items:center;gap:6px}.main-nav a{padding:10px 13px;border-radius:11px;color:#c6d2cf;font-size:14px;font-weight:700;transition:.25s}.main-nav a:hover,.main-nav a.active{color:white;background:#ffffff09;transform:translateY(-1px)}.main-nav a.active{box-shadow:inset 0 -2px var(--teal)}.main-nav .nav-login{background:var(--teal);color:#04120f;margin-left:8px}.main-nav .nav-login:hover{background:var(--teal2);color:#02100d;box-shadow:0 10px 30px #14b8a633}.nav-toggle{display:none;background:#ffffff08;border:1px solid var(--line);color:#fff;border-radius:12px;width:44px;height:44px;place-items:center}.icon{display:inline-block;vertical-align:middle;flex:0 0 auto}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.2em;color:var(--teal);text-transform:uppercase}.pulse-dot{display:inline-block;width:7px;height:7px;background:var(--teal);border-radius:50%;margin-right:8px;box-shadow:0 0 0 0 rgba(20,184,166,.5);animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(20,184,166,.5)}70%{box-shadow:0 0 0 11px rgba(20,184,166,0)}100%{box-shadow:0 0 0 0 rgba(20,184,166,0)}}.hero{padding-top:74px;min-height:720px;display:flex;align-items:center}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:72px;align-items:center}.hero-copy h1,.page-hero h1,.profile-copy h1{font-size:clamp(54px,8vw,96px);line-height:.93;letter-spacing:-.065em;margin:18px 0 24px;max-width:800px}.hero-copy h1{background:linear-gradient(135deg,#fff 25%,#b9ffef 70%,var(--teal));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lead{font-size:18px;color:#b8c6c2;max-width:640px}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:13px;padding:12px 17px;border:1px solid transparent;font-weight:850;cursor:pointer;transition:transform .25s,box-shadow .25s,background .25s,border-color .25s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--teal);color:#04120f;box-shadow:0 12px 30px #14b8a622}.btn-primary:hover{background:var(--teal2);box-shadow:0 18px 40px #14b8a63b}.btn-ghost{border-color:var(--line);background:#ffffff05;color:#fff}.btn-ghost:hover{border-color:#14b8a655;background:#14b8a60d}.btn-block{width:100%}.hero-mini{display:flex;gap:28px;margin-top:34px;color:var(--muted);font-size:13px}.hero-mini span{display:grid}.hero-mini strong{color:#fff;font-size:15px}.hero-visual{position:relative;min-height:520px;border-radius:32px;overflow:hidden;border:1px solid #ffffff10;background:#0b100f;box-shadow:var(--shadow);transform-style:preserve-3d}.hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.72));pointer-events:none}.hero-visual img{width:100%;height:100%;min-height:520px;object-fit:cover;transition:transform .5s}.hero-visual:hover img{transform:scale(1.035)}.hero-ring{position:absolute;width:260px;height:260px;border:1px solid #14b8a655;border-radius:50%;right:-70px;top:-70px;z-index:2;box-shadow:0 0 0 30px #14b8a608,0 0 0 60px #14b8a604}.hero-float{position:absolute;left:22px;bottom:22px;z-index:3;background:rgba(7,10,9,.78);backdrop-filter:blur(12px);border:1px solid #ffffff15;border-radius:14px;padding:11px 14px;font-size:12px;letter-spacing:.12em}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.section-head h2,.ranking-copy h2,.narrow h2{font-size:clamp(31px,4vw,52px);letter-spacing:-.04em;line-height:1.05;margin:8px 0 0}.text-link{display:inline-flex;gap:8px;align-items:center;color:#c5d2cf;font-weight:800}.text-link:hover{color:var(--teal)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{background:linear-gradient(180deg,#0f1513,#0a0e0d);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 16px 50px rgba(0,0,0,.18);transition:border-color .25s,box-shadow .25s,transform .25s;transform-style:preserve-3d}.product-card:hover{border-color:#14b8a64b;box-shadow:0 28px 70px rgba(0,0,0,.38),0 0 0 1px #14b8a611}.product-media{position:relative;aspect-ratio:16/10;display:block;overflow:hidden;background:#101514}.product-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s,filter .45s}.product-card:hover .product-media img{transform:scale(1.05);filter:saturate(1.08)}.badge,.discount-badge{position:absolute;top:13px;left:13px;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;background:#07100eaa;backdrop-filter:blur(10px);border:1px solid #ffffff16}.discount-badge{left:auto;right:13px;background:var(--teal);color:#04120f;border:0}.product-body{padding:19px}.product-body h3{font-size:19px;line-height:1.25;margin:0 0 11px}.product-body p{color:var(--muted);font-size:13px;margin:13px 0}.price-row{display:flex;align-items:baseline;gap:9px;margin-bottom:13px}.price-row strong{font-size:18px;color:#ccfff7}.old-price{color:#6f807c;text-decoration:line-through;font-size:13px}.product-meta{display:grid;gap:7px;color:#aab9b5;font-size:12px}.product-meta span{display:flex;align-items:center;gap:7px}.product-meta .icon{color:var(--teal)}.product-btn{width:100%;margin-top:17px}.comedians-row{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.comedian-mini{text-align:center;padding:18px 10px;border-radius:20px;transition:.25s}.comedian-mini:hover{background:#ffffff05;transform:translateY(-4px)}.avatar-ring{width:124px;height:124px;border-radius:50%;padding:4px;margin:0 auto 13px;background:linear-gradient(145deg,var(--teal),#123d37,#fff)}.avatar-ring img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:4px solid var(--bg)}.comedian-mini strong{display:block;font-size:14px}.social-icons{display:flex;align-items:center;gap:8px}.social-icons a{width:36px;height:36px;border:1px solid var(--line);background:#ffffff04;border-radius:10px;display:grid;place-items:center;color:#c4d0cd;transition:.22s}.social-icons a:hover{color:#03110e;background:var(--teal);border-color:var(--teal);transform:translateY(-2px) rotate(-2deg)}.mini-social{justify-content:center;margin-top:9px;gap:5px}.mini-social a{width:28px;height:28px;border-radius:8px}.ranking-section{background:radial-gradient(circle at 15% 40%,#0d3b34 0,transparent 34%),#070a09;border-top:1px solid #ffffff06}.ranking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.ranking-copy p{color:var(--muted);max-width:430px}.ranking-list{display:grid;gap:10px}.rank-row{display:grid;grid-template-columns:54px 54px minmax(0,1fr) 160px;gap:15px;align-items:center;background:#0c1110;border:1px solid var(--line);border-radius:17px;padding:11px 15px;transition:.25s}.rank-row:hover{transform:translateX(7px);border-color:#14b8a650;background:#101715}.rank-row img{width:48px;height:48px;border-radius:50%;object-fit:cover}.rank-number{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;font-weight:950;background:#141b19}.rank-row div{display:grid}.rank-row small{color:var(--muted)}.rank-meter{height:6px;background:#1c2724;border-radius:999px;overflow:hidden}.rank-meter i{display:block;height:100%;background:var(--teal);border-radius:inherit}.rank-1{border-color:#d9b44a55;background:linear-gradient(90deg,#2d2510,#0c1110 34%)}.rank-1 .rank-number{background:#d9b44a;color:#171104}.rank-2{border-color:#b9c2c955}.rank-2 .rank-number{background:#b9c2c9;color:#101315}.rank-3{border-color:#b4743f55}.rank-3 .rank-number{background:#b4743f;color:#160b03}.page-hero{padding:105px 0 50px;background:radial-gradient(circle at 80% 10%,#0c3d36 0,transparent 33%);border-bottom:1px solid #ffffff06}.page-hero h1{font-size:clamp(46px,7vw,78px);margin-bottom:15px}.page-hero p{color:var(--muted);font-size:17px;max-width:700px}.search-box{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center;background:#0b100f;border:1px solid var(--line);border-radius:16px;padding:7px 7px 7px 15px;margin-bottom:28px}.search-box>span{color:var(--teal)}.search-box input{background:transparent;border:0;outline:none;color:#fff;min-width:0;padding:10px}.empty-card{border:1px dashed #29413c;background:#0b100f;border-radius:18px;padding:34px;color:var(--muted);text-align:center}.comedian-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.comedian-card{background:#0c1110;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.25s;transform-style:preserve-3d}.comedian-card:hover{transform:translateY(-5px);border-color:#14b8a655;box-shadow:0 25px 60px #0007}.comedian-photo{aspect-ratio:4/4.6;overflow:hidden}.comedian-photo img{width:100%;height:100%;object-fit:cover;transition:.45s}.comedian-card:hover img{transform:scale(1.04)}.comedian-info{padding:17px}.comedian-info h3{margin:0 0 4px}.comedian-info p{margin:0;color:var(--muted);font-size:13px}.card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:18px;color:var(--teal);font-size:12px;font-weight:850}.profile-grid{display:grid;grid-template-columns:380px 1fr;gap:70px;align-items:center}.profile-photo{position:relative}.profile-photo-inner{aspect-ratio:4/5;border-radius:30px;padding:5px;background:linear-gradient(145deg,var(--teal),#12453e,#ffffff55);box-shadow:var(--shadow)}.profile-photo-inner img{width:100%;height:100%;object-fit:cover;border-radius:26px;border:5px solid #050706}.profile-stat{position:absolute;right:-15px;bottom:20px;background:#0f1715e8;border:1px solid #2d4842;border-radius:15px;padding:10px 16px;display:grid;box-shadow:0 15px 40px #0008}.profile-stat strong{font-size:24px;color:var(--teal)}.profile-copy h1{font-size:clamp(48px,7vw,84px)}.profile-copy>.social-icons{margin-top:26px}.skill-list{display:flex;gap:8px;flex-wrap:wrap}.skill-list span{padding:8px 11px;border-radius:999px;background:#14b8a612;border:1px solid #14b8a62e;color:#cffff8;font-size:12px;font-weight:750}.narrow{max-width:850px}.about-box{background:#0c1110;border:1px solid var(--line);border-radius:20px;padding:24px}.about-box p{color:#bbc9c5;font-size:16px;white-space:normal}.about-box .social-icons{margin-top:20px}.login-section{min-height:70vh;display:flex;align-items:center}.login-card{max-width:900px;margin:auto;display:grid;grid-template-columns:1fr 1fr;background:#0b100f;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.login-copy{padding:52px;background:radial-gradient(circle at 0 0,#14584d 0,transparent 55%),#0c1311}.login-copy h1{font-size:44px;line-height:1.04;letter-spacing:-.04em}.login-copy p{color:var(--muted)}.form-card{padding:42px;display:grid;gap:17px}.form-card label{display:grid;gap:7px;font-weight:750;font-size:13px}.form-card input{width:100%;background:#050807;border:1px solid var(--line);border-radius:12px;color:#fff;padding:12px 13px;outline:none}.form-card input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #14b8a61c}.password-wrap{display:flex;position:relative}.password-wrap input{padding-right:46px}.password-wrap button{position:absolute;right:5px;top:5px;bottom:5px;width:38px;border:0;background:transparent;color:#a7b6b2;cursor:pointer}.alert{padding:12px 14px;border-radius:11px;font-size:13px}.alert.error{background:#40191a;border:1px solid #7e2d30;color:#ffd5d6}.site-footer{border-top:1px solid #ffffff07;background:#030504;padding:50px 0 28px}.support-strip{padding-bottom:38px;border-bottom:1px solid #ffffff07}.support-logos{display:flex;flex-wrap:wrap;align-items:center;gap:26px;margin-top:20px}.support-logo{height:55px;max-width:150px;display:grid;place-items:center;opacity:.72;transition:.28s}.support-logo img{max-height:50px;max-width:140px;filter:grayscale(1) contrast(.9);transition:.28s}.support-logo:hover{opacity:1;transform:translateY(-3px)}.support-logo:hover img{filter:grayscale(0) contrast(1)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:28px}.footer-brand{display:grid}.footer-brand span{color:#687873;font-size:12px;margin-top:4px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.75,.2,1)}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1050px){.product-grid{grid-template-columns:repeat(2,1fr)}.comedians-row{grid-template-columns:repeat(4,1fr)}.comedian-grid{grid-template-columns:repeat(3,1fr)}.hero-grid{gap:38px}.ranking-layout{gap:35px}.profile-grid{grid-template-columns:320px 1fr;gap:45px}}
@media(max-width:800px){.container{width:min(100% - 26px,1180px)}.section-pad{padding:62px 0}.nav-toggle{display:grid}.main-nav{position:absolute;top:70px;left:13px;right:13px;background:#0a0f0eea;backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:18px;padding:10px;display:none;flex-direction:column;align-items:stretch;box-shadow:0 25px 60px #0009}.main-nav.open{display:flex}.main-nav .nav-login{margin-left:0;text-align:center}.brand small{display:none}.hero{padding-top:42px;min-height:auto}.hero-grid,.profile-grid,.ranking-layout,.login-card{grid-template-columns:1fr}.hero-grid{gap:30px}.hero-copy h1{font-size:clamp(48px,15vw,76px)}.hero-visual,.hero-visual img{min-height:390px}.hero-visual{order:-1}.hero-mini{gap:18px}.comedians-row{grid-template-columns:repeat(3,1fr)}.comedian-grid{grid-template-columns:repeat(2,1fr)}.ranking-layout{gap:30px}.rank-row{grid-template-columns:42px 48px 1fr}.rank-meter{display:none}.profile-photo{max-width:410px;margin:auto;width:100%}.profile-stat{right:10px}.login-copy,.form-card{padding:28px}.page-hero{padding-top:75px}.footer-bottom{align-items:flex-start;flex-direction:column}.support-logos{gap:18px}.search-box{grid-template-columns:25px 1fr}.search-box .btn{grid-column:1/-1}}
@media(max-width:560px){.section-head{align-items:flex-start;flex-direction:column}.product-grid,.comedian-grid{grid-template-columns:1fr}.comedians-row{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:10px;margin-right:-13px}.comedian-mini{min-width:150px;scroll-snap-align:start}.avatar-ring{width:110px;height:110px}.hero-visual,.hero-visual img{min-height:340px}.hero-copy h1{font-size:48px}.hero-actions .btn{width:100%}.hero-mini{display:grid;grid-template-columns:1fr 1fr}.rank-row{padding:10px;gap:9px}.rank-row img{width:44px;height:44px}.rank-number{width:33px;height:33px}.profile-copy h1{font-size:48px}.site-footer{padding-top:38px}.support-logo{height:44px;max-width:115px}.support-logo img{max-height:40px;max-width:110px}}

button:disabled,.btn:disabled{opacity:.62;cursor:not-allowed;transform:none!important}

/* =========================================================
   STANDUPINDO PALU v2 — Premium responsive layer
   ========================================================= */
:root{
  --bg:#030504;--bg-soft:#070a09;--panel-glass:rgba(12,17,16,.82);--teal-glow:rgba(20,184,166,.22);
  --shadow-lg:0 36px 100px rgba(0,0,0,.48);--shadow-teal:0 18px 60px rgba(20,184,166,.13);
  --ease:cubic-bezier(.2,.75,.2,1)
}
body{background:
 radial-gradient(circle at 82% -8%,rgba(20,184,166,.09),transparent 28%),
 radial-gradient(circle at 10% 30%,rgba(20,184,166,.035),transparent 23%),var(--bg)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-3;opacity:.23;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent 78%)}
.scroll-progress{position:fixed;z-index:1000;top:0;left:0;width:100%;height:2px;background:transparent}.scroll-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),#72f7e8);box-shadow:0 0 16px var(--teal)}
.cursor-glow{position:fixed;width:340px;height:340px;border-radius:50%;pointer-events:none;z-index:-1;background:radial-gradient(circle,rgba(20,184,166,.08),transparent 67%);transform:translate(-50%,-50%);opacity:0;transition:opacity .3s}
.ambient-c{width:260px;height:260px;background:#2dd4bf;top:46%;right:-180px;opacity:.08}

/* Header */
.site-header{height:auto;background:linear-gradient(180deg,rgba(3,5,4,.9),rgba(3,5,4,.66));border-bottom:1px solid rgba(255,255,255,.055)}
.site-header::after{content:"";position:absolute;left:50%;bottom:-1px;width:min(1180px,calc(100% - 36px));height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(20,184,166,.2),transparent)}
.nav-wrap{min-height:82px}.brand{gap:13px}.brand-logo{position:relative;display:grid;place-items:center}.brand-logo::after{content:"";position:absolute;inset:-5px;border-radius:18px;border:1px solid rgba(20,184,166,.16);opacity:0;transform:scale(.9);transition:.25s}.brand:hover .brand-logo::after{opacity:1;transform:scale(1)}.brand-logo img{width:47px;height:47px;border-radius:15px}.brand-copy strong{font-size:13px;letter-spacing:.13em}.brand-copy small{font-size:9px;letter-spacing:.03em}.main-nav{padding:5px;border:1px solid rgba(255,255,255,.045);background:rgba(255,255,255,.018);border-radius:16px}.main-nav a{position:relative}.main-nav a:not(.nav-login)::after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:1px;background:var(--teal);transform:scaleX(0);transition:.24s}.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}.main-nav a.active{box-shadow:none;background:#ffffff06}.main-nav .nav-login{display:flex;align-items:center;gap:7px;padding-inline:15px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 10px 30px rgba(20,184,166,.12)}
.nav-toggle{position:relative;display:none;align-content:center;justify-content:center;gap:4px}.nav-toggle span{display:block;width:19px;height:1.5px;background:#fff;border-radius:99px;transition:.25s}.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}.nav-backdrop{position:fixed;inset:0;z-index:44;background:rgba(0,0,0,.58);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:.25s}.nav-backdrop.show{opacity:1;pointer-events:auto}

/* Shared premium surfaces */
.section-pad{padding:104px 0}.section-dark{background:linear-gradient(180deg,rgba(255,255,255,.015),rgba(20,184,166,.018),rgba(255,255,255,.008));position:relative}.section-dark::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 72% 20%,rgba(20,184,166,.055),transparent 30%)}
.eyebrow{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.23em}.section-head{margin-bottom:34px}.section-head>div>p{color:var(--muted);max-width:640px;margin:12px 0 0}.head-links{display:flex;gap:18px}.text-link{position:relative}.text-link::after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:1px;background:var(--teal);transform:scaleX(0);transform-origin:right;transition:transform .28s var(--ease)}.text-link:hover::after{transform:scaleX(1);transform-origin:left}
.btn{position:relative;isolation:isolate;overflow:hidden}.btn::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.22) 45%,transparent 75%);transform:translateX(-120%);transition:transform .55s}.btn:hover::before{transform:translateX(120%)}.btn-lg{padding:14px 20px;border-radius:15px}.btn-primary{box-shadow:0 12px 38px rgba(20,184,166,.18),inset 0 1px rgba(255,255,255,.24)}.btn-ghost{backdrop-filter:blur(12px)}
.empty-card{display:grid;justify-items:center;gap:12px;padding:48px 28px;background:linear-gradient(180deg,#0b100f,#080b0a)}.empty-card strong{font-size:20px;color:#fff}.empty-card span{color:var(--muted)}

/* Hero */
.hero{padding-top:74px;min-height:780px;position:relative}.hero::before{content:"";position:absolute;left:7%;top:7%;width:180px;height:180px;border:1px solid rgba(20,184,166,.06);border-radius:50%;box-shadow:0 0 0 38px rgba(20,184,166,.018),0 0 0 76px rgba(20,184,166,.01)}.hero-grid{gap:76px}.hero-copy h1{font-size:clamp(58px,8.5vw,108px);max-width:760px;text-shadow:0 24px 80px rgba(20,184,166,.08)}.hero-lead{font-size:19px;line-height:1.78;max-width:680px}.hero-actions{margin-top:34px}.hero-mini{display:grid;grid-template-columns:repeat(3,max-content);gap:0;margin-top:42px}.hero-mini>a,.hero-mini>span{padding:0 26px;border-left:1px solid rgba(255,255,255,.09)}.hero-mini>a:first-child,.hero-mini>span:first-child{padding-left:0;border-left:0}.hero-mini strong{font-size:20px;color:#fff}.hero-mini span span,.hero-mini a span{font-size:11px;color:var(--muted)}.hero-mini a:hover strong{color:var(--teal)}
.hero-visual{min-height:560px;border-radius:34px;border-color:rgba(255,255,255,.1);box-shadow:var(--shadow-lg),0 0 0 1px rgba(20,184,166,.03)}.hero-visual::before{content:"";position:absolute;inset:1px;border-radius:33px;z-index:2;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}.hero-visual img{min-height:560px}.hero-ring{width:290px;height:290px}.hero-ring-2{width:120px;height:120px;left:-46px;right:auto;top:auto;bottom:100px;opacity:.6}.hero-float{left:24px;bottom:24px;padding:12px 15px;border-radius:15px}.hero-corner-card{position:absolute;right:22px;top:22px;z-index:4;display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid rgba(255,255,255,.13);background:rgba(3,7,6,.7);backdrop-filter:blur(16px);border-radius:15px;box-shadow:0 14px 40px rgba(0,0,0,.25)}.hero-corner-card>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:var(--teal);background:rgba(20,184,166,.12)}.hero-corner-card div{display:grid}.hero-corner-card small{color:var(--muted);font-size:9px}.hero-corner-card strong{font-size:11px}

/* Product cards */
.product-grid{gap:24px}.product-card{position:relative;border-radius:24px;background:linear-gradient(155deg,rgba(16,23,21,.98),rgba(7,11,10,.98));border-color:rgba(255,255,255,.075);box-shadow:0 16px 48px rgba(0,0,0,.18);will-change:transform}.product-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(130deg,rgba(255,255,255,.06),transparent 32%);opacity:.5}.product-card:hover{box-shadow:0 28px 80px rgba(0,0,0,.45),0 15px 60px rgba(20,184,166,.08)}.product-media{aspect-ratio:16/10.2}.product-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.42));pointer-events:none}.product-card:hover .product-media img{transform:scale(1.065)}.badge,.discount-badge{z-index:2}.media-open{position:absolute;z-index:3;right:14px;bottom:14px;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(4,8,7,.7);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(12px);transform:translateY(8px);opacity:0;transition:.28s}.product-card:hover .media-open{transform:none;opacity:1}.product-body{padding:20px}.product-title-link{display:block}.product-title-link h3{transition:.2s}.product-title-link:hover h3{color:#9efff1}.product-meta a,.product-meta span{color:#aab9b5}.product-meta a{display:flex;align-items:center;gap:7px;transition:.2s}.product-meta a:hover{color:var(--teal)}.product-actions{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:18px}.product-actions .product-btn{margin-top:0}.product-actions .btn{min-width:0}.price-row strong{font-size:20px}

/* Comedians */
.comedians-row{gap:16px}.comedian-mini{position:relative;padding:20px 11px;border:1px solid transparent}.comedian-mini::before{content:"";position:absolute;inset:0;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent);border:1px solid rgba(255,255,255,.045);opacity:0;transition:.25s}.comedian-mini:hover::before{opacity:1}.comedian-mini>*{position:relative}.avatar-ring{width:128px;height:128px;box-shadow:0 14px 34px rgba(0,0,0,.3)}.comedian-mini:hover .avatar-ring{box-shadow:0 16px 46px rgba(20,184,166,.12)}

/* Ranking */
.ranking-section{background:radial-gradient(circle at 15% 36%,rgba(20,184,166,.13),transparent 32%),linear-gradient(180deg,#050807,#030504)}.ranking-copy{position:sticky;top:132px}.ranking-copy .btn{margin-top:22px}.ranking-list{gap:12px}.rank-row{padding:13px 16px;border-radius:18px;border-color:rgba(255,255,255,.07);background:linear-gradient(90deg,#0d1211,#090d0c)}.rank-row:hover{transform:translateX(8px) scale(1.008)}.rank-row img{box-shadow:0 6px 18px rgba(0,0,0,.3)}.rank-number{box-shadow:inset 0 1px rgba(255,255,255,.08)}.rank-meter{height:5px;background:#17221f}.rank-meter i{background:linear-gradient(90deg,#0f766e,var(--teal),#5eead4);box-shadow:0 0 15px rgba(20,184,166,.35)}.rank-1{box-shadow:inset 0 0 0 1px rgba(217,180,74,.04),0 12px 40px rgba(217,180,74,.04)}

/* Page hero and lists */
.page-hero{padding:120px 0 66px;background:radial-gradient(circle at 82% 0,rgba(20,184,166,.13),transparent 33%)}.page-hero::after{content:"";display:block;position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(20,184,166,.25),transparent)}.page-hero{position:relative}.page-hero h1{font-size:clamp(48px,7.4vw,84px)}.search-box{position:relative;max-width:820px;margin:0 auto 34px;background:rgba(10,15,14,.92);backdrop-filter:blur(14px);border-color:rgba(255,255,255,.08);box-shadow:0 18px 48px rgba(0,0,0,.22)}.search-box:focus-within{border-color:rgba(20,184,166,.6);box-shadow:0 18px 48px rgba(0,0,0,.28),0 0 0 4px rgba(20,184,166,.08)}
.comedian-grid{gap:22px}.comedian-card{border-radius:24px;border-color:rgba(255,255,255,.07);background:linear-gradient(180deg,#0d1211,#080b0a)}.comedian-card:hover{box-shadow:0 26px 70px rgba(0,0,0,.44),0 10px 40px rgba(20,184,166,.06)}.comedian-info{padding:18px}.card-foot{padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}

/* Profile */
.profile-hero{background:radial-gradient(circle at 80% 12%,rgba(20,184,166,.08),transparent 32%)}.profile-photo-inner{border-radius:34px;box-shadow:var(--shadow-lg)}.profile-photo-inner img{border-radius:29px}.profile-stat{backdrop-filter:blur(18px);box-shadow:0 18px 50px rgba(0,0,0,.35)}.skill-list span{transition:.2s}.skill-list span:hover{transform:translateY(-2px);background:#14b8a61d}.about-box{border-radius:24px;background:linear-gradient(145deg,#0d1211,#080b0a);border-color:rgba(255,255,255,.07);box-shadow:0 22px 60px rgba(0,0,0,.16)}

/* Product detail */
.product-detail-hero{padding-top:92px;background:radial-gradient(circle at 90% 5%,rgba(20,184,166,.09),transparent 32%)}.product-detail-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:68px;align-items:center}.product-detail-media{position:relative;aspect-ratio:16/11;border-radius:32px;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-lg);background:#0c1110}.product-detail-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 54%,rgba(0,0,0,.34));pointer-events:none}.product-detail-media img{width:100%;height:100%;object-fit:cover}.product-detail-badge{top:18px;left:18px}.product-detail-media .discount-badge{top:18px;right:18px}.product-detail-copy h1{font-size:clamp(42px,5.4vw,72px);line-height:1.02;letter-spacing:-.055em;margin:13px 0 19px}.back-link{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;margin-bottom:20px}.back-link .icon{transform:rotate(180deg)}.back-link:hover{color:var(--teal)}.detail-price{display:flex;align-items:baseline;gap:12px;margin-bottom:26px}.detail-price strong{font-size:30px;color:#cffff7}.detail-price .old-price{font-size:15px}.detail-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0 0 26px}.detail-meta-card{display:flex;align-items:center;gap:12px;min-height:76px;padding:12px;border-radius:16px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);transition:.24s}.detail-meta-card.clickable:hover{border-color:rgba(20,184,166,.4);transform:translateY(-2px);background:rgba(20,184,166,.055)}.detail-meta-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:var(--teal);background:rgba(20,184,166,.1);flex:0 0 auto}.detail-meta-card div{display:grid}.detail-meta-card small{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.detail-meta-card strong{font-size:12px;margin-top:3px}.detail-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.about-box h2{font-size:clamp(28px,4vw,44px);letter-spacing:-.04em;margin:9px 0 18px}.owner-card{display:flex;gap:14px;padding:18px;border:1px solid rgba(255,255,255,.07);border-radius:22px;background:linear-gradient(145deg,#0d1211,#080b0a);position:sticky;top:110px}.owner-card img{width:74px;height:74px;border-radius:20px;object-fit:cover}.owner-card div{min-width:0}.owner-card small{color:var(--teal);font-size:9px;letter-spacing:.09em;text-transform:uppercase}.owner-card h3{margin:4px 0 5px;font-size:15px}.owner-card p{font-size:11px!important;line-height:1.5!important;margin:0 0 10px!important;color:var(--muted)!important}

/* Login */
.login-section{min-height:calc(100vh - 82px);padding-block:74px}.login-card{border-radius:32px;border-color:rgba(255,255,255,.09);box-shadow:var(--shadow-lg);background:linear-gradient(145deg,#0c1110,#070a09)}.login-copy{position:relative;overflow:hidden}.login-copy::after{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(20,184,166,.16);border-radius:50%;right:-80px;bottom:-80px;box-shadow:0 0 0 35px rgba(20,184,166,.03),0 0 0 70px rgba(20,184,166,.016)}.form-card input{min-height:46px}.form-card input:focus{box-shadow:0 0 0 4px rgba(20,184,166,.08)}

/* Footer */
.site-footer{padding:72px 0 32px;background:linear-gradient(180deg,#040706,#020302)}.footer-cta{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;padding:34px;border:1px solid rgba(255,255,255,.075);border-radius:28px;background:radial-gradient(circle at 0 0,rgba(20,184,166,.12),transparent 40%),linear-gradient(145deg,#0c1210,#080b0a);box-shadow:0 26px 80px rgba(0,0,0,.28);margin-bottom:48px}.footer-cta h2{font-size:clamp(28px,4vw,48px);max-width:720px;line-height:1.06;letter-spacing:-.045em;margin:10px 0}.footer-cta p{max-width:650px;color:var(--muted);margin:0}.footer-cta .btn{flex:0 0 auto}.section-kicker{display:flex;align-items:center;gap:14px;color:var(--teal);font-size:10px;letter-spacing:.18em;font-weight:900}.section-kicker i{height:1px;flex:1;background:linear-gradient(90deg,rgba(20,184,166,.35),transparent)}.support-logos{margin-top:24px}.support-logo{padding:8px;border-radius:14px;border:1px solid transparent}.support-logo:hover{border-color:rgba(255,255,255,.07);background:rgba(255,255,255,.025)}.footer-brand-name{font-weight:900;letter-spacing:.06em}.footer-bottom{padding-top:32px}.mobile-dock{display:none}

/* Reveal/interaction refinements */
.reveal{transform:translateY(28px);transition:opacity .72s ease,transform .72s var(--ease)}.reveal.visible{transform:none}.reveal:nth-child(2){transition-delay:.045s}.reveal:nth-child(3){transition-delay:.09s}.reveal:nth-child(4){transition-delay:.135s}
@media (hover:hover) and (pointer:fine){.magnetic{will-change:transform}.cursor-glow.active{opacity:1}}

/* Tablet */
@media(max-width:1050px){
  .hero-grid{gap:42px}.hero-copy h1{font-size:clamp(54px,9vw,86px)}.hero-mini>a,.hero-mini>span{padding-inline:18px}
  .product-detail-grid{gap:38px}.detail-content-grid{grid-template-columns:minmax(0,1fr) 290px}
}

/* Mobile/tablet navigation */
@media(max-width:800px){
  body{padding-bottom:78px}.cursor-glow{display:none}.section-pad{padding:72px 0}.container{width:min(100% - 28px,1180px)}
  .site-header{background:rgba(3,5,4,.9)}.nav-wrap{min-height:72px}.brand-logo img{width:43px;height:43px}.brand-copy strong{font-size:12px}.nav-toggle{display:grid}
  .main-nav{position:fixed;top:84px;left:14px;right:14px;z-index:50;display:flex;flex-direction:column;align-items:stretch;padding:12px;border-radius:22px;background:rgba(7,11,10,.97);border:1px solid rgba(255,255,255,.1);box-shadow:0 28px 80px rgba(0,0,0,.58);transform:translateY(-14px) scale(.98);opacity:0;visibility:hidden;transition:.25s var(--ease)}
  .main-nav.open{transform:none;opacity:1;visibility:visible}.main-nav a{padding:13px 14px}.main-nav a:not(.nav-login)::after{display:none}.main-nav .nav-login{margin:4px 0 0;justify-content:center}
  .hero{padding-top:34px;min-height:0}.hero-grid{gap:30px}.hero-visual{order:-1;min-height:430px}.hero-visual img{min-height:430px}.hero-copy h1{font-size:clamp(50px,15vw,76px)}.hero-lead{font-size:16px;line-height:1.7}.hero-mini{grid-template-columns:repeat(3,1fr);width:100%}.hero-mini>a,.hero-mini>span{padding:0 13px}.hero-mini strong{font-size:18px}.hero-corner-card{right:14px;top:14px}.hero-float{left:14px;bottom:14px}.hero-ring{width:220px;height:220px}
  .section-head{align-items:flex-start}.section-head p{font-size:13px}.ranking-copy{position:static}.ranking-layout{gap:36px}
  .product-detail-grid,.detail-content-grid{grid-template-columns:1fr}.product-detail-hero{padding-top:48px}.product-detail-media{aspect-ratio:16/11}.product-detail-copy h1{font-size:46px}.owner-card{position:static}.detail-content-grid{gap:18px}
  .footer-cta{align-items:flex-start;flex-direction:column;padding:26px}.footer-cta .btn{width:100%}.site-footer{padding-top:54px}
  .mobile-dock{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:10px;right:10px;bottom:max(9px,env(safe-area-inset-bottom));z-index:80;padding:7px;border:1px solid rgba(255,255,255,.1);border-radius:19px;background:rgba(7,11,10,.94);backdrop-filter:blur(20px);box-shadow:0 18px 60px rgba(0,0,0,.48)}.mobile-dock a{display:grid;justify-items:center;gap:3px;padding:7px 2px;border-radius:12px;color:#71827e;font-size:9px;font-weight:800;transition:.2s}.mobile-dock a .icon{width:18px;height:18px}.mobile-dock a.active,.mobile-dock a:hover{color:#dffffa;background:rgba(20,184,166,.1)}.mobile-dock a.active .icon{color:var(--teal)}
}

/* Small mobile — priority */
@media(max-width:560px){
  .container{width:min(100% - 22px,1180px)}.section-pad{padding:60px 0}.site-header::after{width:calc(100% - 22px)}.brand-copy small{display:none}.nav-wrap{min-height:66px}.brand-logo img{width:39px;height:39px;border-radius:12px}.nav-toggle{width:41px;height:41px}
  .hero{padding-top:18px}.hero-grid{gap:25px}.hero-visual{min-height:338px;border-radius:24px}.hero-visual img{min-height:338px}.hero-corner-card{max-width:185px;padding:8px 9px}.hero-corner-card>span{width:30px;height:30px}.hero-corner-card small{font-size:8px}.hero-corner-card strong{font-size:9px}.hero-float{font-size:9px;padding:9px 10px}.hero-copy h1{font-size:clamp(47px,15vw,64px);margin:13px 0 18px}.hero-lead{font-size:15px}.hero-actions{display:grid;grid-template-columns:1fr;margin-top:24px}.hero-actions .btn{width:100%}.hero-mini{margin-top:30px}.hero-mini>a,.hero-mini>span{padding:0 9px}.hero-mini strong{font-size:16px}.hero-mini span span,.hero-mini a span{font-size:9px}.hero-ring{width:170px;height:170px}.hero-ring-2{display:none}
  .section-head{gap:16px;margin-bottom:24px}.section-head h2,.ranking-copy h2,.narrow h2{font-size:34px}.head-links{width:100%;justify-content:space-between}.product-grid{gap:16px}.product-card{border-radius:20px}.product-body{padding:16px}.product-actions{grid-template-columns:92px 1fr}.product-actions .btn{padding-inline:11px;font-size:12px}.media-open{opacity:1;transform:none;width:34px;height:34px}
  .comedians-row{margin-right:-11px}.comedian-mini{min-width:144px;padding:15px 8px}.avatar-ring{width:102px;height:102px}
  .rank-row{grid-template-columns:34px 44px minmax(0,1fr);padding:10px}.rank-row:hover{transform:none}.rank-number{width:31px;height:31px}.rank-row strong{font-size:12px}.rank-row small{font-size:10px}
  .page-hero{padding:78px 0 42px}.page-hero h1{font-size:45px}.page-hero p{font-size:14px}.search-box{margin-bottom:22px}
  .profile-copy h1{font-size:44px}.profile-photo-inner{border-radius:25px}.profile-photo-inner img{border-radius:20px}.profile-stat{bottom:12px}
  .product-detail-hero{padding-top:30px}.product-detail-grid{gap:28px}.product-detail-media{border-radius:23px}.product-detail-copy h1{font-size:40px;margin-bottom:14px}.detail-price strong{font-size:26px}.detail-meta-grid{grid-template-columns:1fr}.detail-meta-card{min-height:68px}.product-detail-copy>.btn{width:100%}.about-box{padding:20px}.owner-card{border-radius:18px}.owner-card img{width:64px;height:64px;border-radius:17px}
  .login-section{padding:34px 0}.login-card{border-radius:24px}.login-copy,.form-card{padding:24px}.login-copy h1{font-size:36px}
  .footer-cta{padding:22px;border-radius:22px}.footer-cta h2{font-size:30px}.support-logos{gap:12px}.footer-bottom{padding-bottom:8px}.mobile-dock{left:7px;right:7px;border-radius:17px}.mobile-dock a{font-size:8.5px}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition-duration:.001ms!important}.reveal{opacity:1!important;transform:none!important}}
.comedian-profile-link{display:block}.comedian-profile-link:hover strong{color:var(--teal)}
.loading-dot{width:12px;height:12px;border-radius:50%;display:inline-block;border:2px solid currentColor;border-right-color:transparent;animation:spinLoad .7s linear infinite}@keyframes spinLoad{to{transform:rotate(360deg)}}


/* ===== REVISI v2.1 — Roboto, skala proporsional, spacing compact, hero landscape ===== */
body{font-family:Roboto,Arial,sans-serif;line-height:1.55}.section-pad{padding:66px 0}.container{width:min(1160px,calc(100% - 32px))}.eyebrow{font-size:10px;letter-spacing:.16em}.hero{padding-top:52px}.hero-grid{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:44px;align-items:center}.hero-copy h1{font-size:clamp(40px,5.2vw,58px);line-height:1.01;letter-spacing:-.045em;margin:12px 0 17px;max-width:660px}.hero-lead{font-size:15px;line-height:1.65;max-width:620px}.hero-actions{margin-top:24px}.hero-mini{margin-top:27px}.hero-visual{min-height:0;aspect-ratio:16/9;border-radius:26px}.hero-visual img{min-height:0;height:100%;object-fit:cover}.hero-ring{width:210px;height:210px}.section-head{margin-bottom:22px}.section-head h2,.ranking-copy h2,.narrow h2{font-size:clamp(26px,3.2vw,38px);line-height:1.08;letter-spacing:-.035em}.section-head p{margin-top:7px}.page-hero{padding:72px 0 38px}.page-hero h1{font-size:clamp(34px,5vw,50px);line-height:1.04;letter-spacing:-.04em}.page-hero p{font-size:15px}.product-detail-hero{padding-top:66px}.product-detail-grid{gap:44px}.product-detail-copy h1{font-size:clamp(32px,4.3vw,48px);line-height:1.04;letter-spacing:-.04em}.login-copy h1{font-size:36px}.ranking-layout{gap:46px}.product-grid{gap:18px}.comedians-row{gap:12px}.site-footer{padding:38px 0 25px}.support-strip{padding-bottom:26px}.support-logos{margin-top:16px;gap:20px}.footer-bottom{padding-top:24px}.footer-brand-name{font-size:14px}.profile-hero{padding:62px 0 58px}.profile-grid{grid-template-columns:300px minmax(0,1fr);gap:38px;align-items:center}.profile-photo-inner{aspect-ratio:4/5;border-radius:25px}.profile-photo-inner img{border-radius:21px}.profile-copy h1{font-size:clamp(34px,4.7vw,50px);line-height:1.03;letter-spacing:-.04em;margin:9px 0 13px}.profile-copy>.social-icons{margin-top:16px}.profile-about{margin-top:22px;padding-top:19px;border-top:1px solid rgba(255,255,255,.07);max-width:720px}.profile-about p{margin:8px 0 0;color:#bbc9c5;font-size:14px;line-height:1.72}.profile-products{padding-top:54px}.profile-stat{right:-10px;bottom:15px;padding:8px 13px}.profile-stat strong{font-size:20px}.skill-list span{padding:7px 10px;font-size:11px}
@media(max-width:1050px){.hero-copy h1{font-size:clamp(38px,5.5vw,52px)}.hero-grid{gap:34px}}
@media(max-width:800px){body{padding-bottom:78px}.section-pad{padding:54px 0}.hero{padding-top:24px}.hero-grid{gap:26px}.hero-visual{order:-1;aspect-ratio:16/9;min-height:0;border-radius:22px}.hero-visual img{min-height:0}.hero-copy h1{font-size:clamp(36px,9vw,48px);margin:10px 0 15px}.hero-lead{font-size:14px}.page-hero{padding:58px 0 32px}.page-hero h1{font-size:40px}.product-detail-copy h1{font-size:38px}.profile-grid{grid-template-columns:240px 1fr;gap:28px}.profile-copy h1{font-size:38px}.site-footer{padding-top:34px}}
@media(max-width:620px){.container{width:min(100% - 22px,1160px)}.section-pad{padding:46px 0}.hero{padding-top:16px}.hero-grid{gap:22px}.hero-visual{aspect-ratio:16/10;border-radius:20px}.hero-copy h1{font-size:38px}.hero-actions{margin-top:20px}.hero-mini{margin-top:23px}.section-head{margin-bottom:18px}.section-head h2,.ranking-copy h2,.narrow h2{font-size:29px}.page-hero h1{font-size:34px}.product-detail-copy h1{font-size:34px}.login-copy h1{font-size:31px}.profile-hero{padding:42px 0}.profile-grid{grid-template-columns:1fr;gap:22px;align-items:start}.profile-photo{max-width:230px;margin:0 auto;width:100%}.profile-copy{text-align:left}.profile-copy h1{font-size:34px;margin-bottom:12px}.profile-copy>.social-icons{justify-content:flex-start}.profile-about{margin-top:19px;padding-top:17px}.profile-about p{font-size:13px}.profile-products{padding-top:42px}.support-logos{gap:14px}.footer-bottom{gap:16px}}
@media(max-width:420px){.hero-copy h1{font-size:34px}.section-head h2,.ranking-copy h2,.narrow h2{font-size:27px}.page-hero h1{font-size:31px}.profile-copy h1{font-size:31px}}

/* ===== REVISI v2.2 — Open Sans, ukuran lebih proporsional, spacing rapat, produk tanpa detail ===== */
body{font-family:'Open Sans',Arial,sans-serif;font-size:14px;line-height:1.5}
h1,h2,h3,h4,h5,h6,.brand strong,.footer-brand-name{font-family:'Open Sans',Arial,sans-serif;font-weight:800}
.container{width:min(1140px,calc(100% - 30px))}
.section-pad{padding:44px 0}
.nav-wrap{min-height:70px}
.brand img{width:42px;height:42px;border-radius:12px}.brand strong{font-size:13px;letter-spacing:.07em}.brand small{font-size:9px}.main-nav a{font-size:13px;padding:9px 12px}
.hero.section-pad{padding:30px 0 38px;min-height:0;display:block}
.hero-grid{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:30px;align-items:center}
.hero-copy h1{font-size:clamp(36px,4.2vw,48px);line-height:1.04;letter-spacing:-.035em;margin:10px 0 14px;max-width:560px}
.hero-lead{font-size:14px;line-height:1.6;max-width:580px;margin:0}
.hero-actions{margin-top:18px;gap:9px}.btn{padding:10px 15px;font-size:13px;border-radius:11px}.btn-lg{padding:11px 17px;border-radius:12px}
.hero-mini{margin-top:20px;gap:20px;font-size:11px}.hero-mini strong{font-size:14px}
.hero-visual{aspect-ratio:16/9;min-height:0;border-radius:22px}.hero-visual img{height:100%;min-height:0;object-fit:cover}
.hero-corner-card{right:14px;top:14px;padding:8px 10px;border-radius:12px}.hero-corner-card>span{width:30px;height:30px}.hero-corner-card small{font-size:8px}.hero-corner-card strong{font-size:10px}.hero-float{left:14px;bottom:14px;padding:9px 11px;font-size:9px;border-radius:11px}.hero-ring{width:170px;height:170px}.hero-ring-2{width:90px;height:90px}
.eyebrow{font-size:9px;letter-spacing:.14em}.section-head{margin-bottom:17px;gap:14px}.section-head h2,.ranking-copy h2,.narrow h2{font-size:clamp(23px,2.7vw,32px);line-height:1.12;letter-spacing:-.025em;margin-top:5px}.section-head p,.ranking-copy p{font-size:12.5px;line-height:1.6;margin-top:5px}
.head-links{gap:14px}.text-link{font-size:12px}.product-grid{gap:14px}.product-card{border-radius:18px}.product-body{padding:15px}.product-body h3{font-size:16px;line-height:1.3;margin:0 0 8px}.product-body p{font-size:12px;line-height:1.55;margin:9px 0}.price-row{margin-bottom:10px;gap:7px}.price-row strong{font-size:16px}.old-price{font-size:11px}.product-meta{gap:5px;font-size:11px}.product-meta svg{width:14px;height:14px}
.product-media{width:100%;aspect-ratio:1/1;border:0;padding:0;margin:0;display:block;overflow:hidden;background:#090d0c;cursor:zoom-in;color:inherit;text-align:left}.product-media img{width:100%;height:100%;object-fit:contain;padding:8px;transform:none!important}.product-media::after{display:none}.product-card:hover .product-media img{transform:none!important;filter:none}.badge,.discount-badge{top:10px;padding:6px 8px;font-size:8.5px}.badge{left:10px}.discount-badge{right:10px}.finished-badge{position:absolute;left:10px;bottom:10px;z-index:3;padding:6px 9px;border-radius:999px;background:#9f2424;color:#fff;font-size:8.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 24px rgba(159,36,36,.25)}
.product-actions{display:block;margin-top:12px;position:relative;z-index:5}.product-actions .btn{width:100%;margin:0;min-height:39px}.product-btn{margin-top:0}.btn-finished{background:#b4232c!important;color:#fff!important;border-color:#d63b45!important;box-shadow:none!important;cursor:not-allowed}.btn-disabled{background:#151b19!important;color:#72817d!important;border-color:#27332f!important;cursor:not-allowed;box-shadow:none!important}.event-finished{border-color:#3a2a2c;background:linear-gradient(180deg,#111,#090909)}.event-finished .product-media img{filter:grayscale(1)!important;opacity:.72}.event-finished .product-body>h3,.event-finished .price-row,.event-finished .product-meta,.event-finished .product-body>p{filter:grayscale(1);opacity:.62}.event-finished:hover{border-color:#653236;box-shadow:0 20px 54px rgba(0,0,0,.32)}
.comedians-row{gap:9px}.comedian-mini{padding:13px 8px;border-radius:16px}.avatar-ring{width:104px;height:104px;margin-bottom:9px}.comedian-mini strong{font-size:12.5px}.mini-social{margin-top:7px}.mini-social a{width:26px;height:26px}.ranking-layout{gap:28px;grid-template-columns:.78fr 1.22fr}.ranking-list{gap:8px}.rank-row{grid-template-columns:44px 44px minmax(0,1fr) 130px;gap:11px;padding:9px 12px;border-radius:14px}.rank-row img{width:42px;height:42px}.rank-number{width:32px;height:32px;font-size:12px}.rank-row strong{font-size:12.5px}.rank-row small{font-size:10px}.rank-meter{height:5px}
.page-hero{padding:48px 0 26px}.page-hero h1{font-size:clamp(30px,4vw,40px);line-height:1.08;margin:8px 0 9px}.page-hero p{font-size:13px}.search-box{margin-bottom:18px;padding:5px 5px 5px 12px;border-radius:13px}.search-box input{padding:9px}.search-box .btn{padding:9px 14px}
.profile-hero{padding:38px 0}.profile-grid{grid-template-columns:250px minmax(0,1fr);gap:28px}.profile-photo-inner{border-radius:21px}.profile-photo-inner img{border-radius:17px}.profile-copy h1{font-size:clamp(30px,4vw,40px);line-height:1.08;margin:7px 0 10px}.profile-copy>.social-icons{margin-top:12px}.profile-about{margin-top:14px;padding-top:14px}.profile-about p{font-size:12.5px;line-height:1.62;margin-top:6px}.profile-products{padding-top:36px}.profile-stat{right:-7px;bottom:12px;padding:7px 11px;font-size:10px}.profile-stat strong{font-size:17px}.skill-list{gap:6px}.skill-list span{padding:6px 9px;font-size:10px}
.site-footer{padding:28px 0 20px}.support-strip{padding-bottom:20px}.support-logos{margin-top:12px;gap:14px}.support-logo{height:46px;max-width:125px}.support-logo img{max-height:42px;max-width:118px}.footer-bottom{padding-top:18px}.footer-brand-name{font-size:12.5px}.footer-brand span{font-size:10px}
.footer-cta{display:none!important}
.image-viewer{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}.image-viewer.open{opacity:1;visibility:visible}.image-viewer-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(0,0,0,.86);backdrop-filter:blur(10px);cursor:zoom-out}.image-viewer-dialog{position:relative;z-index:2;margin:0;max-width:min(92vw,980px);max-height:88vh;display:grid;gap:10px;justify-items:center}.image-viewer-dialog img{max-width:100%;max-height:80vh;width:auto;height:auto;object-fit:contain;border-radius:16px;background:#070908;box-shadow:0 30px 100px rgba(0,0,0,.55)}.image-viewer-dialog figcaption{font-size:12px;color:#d1dcda;text-align:center}.image-viewer-close{position:fixed;right:20px;top:18px;z-index:3;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:#0d1211;color:#fff;font-size:26px;line-height:1;cursor:pointer}
.login-copy h1{font-size:30px}.login-copy,.form-card{padding:34px}

@media(max-width:1050px){.hero-grid{gap:24px}.hero-copy h1{font-size:42px}.profile-grid{grid-template-columns:230px 1fr;gap:24px}}
@media(max-width:800px){
  body{font-size:13.5px;padding-bottom:76px}.container{width:min(100% - 24px,1140px)}.section-pad{padding:36px 0}.nav-wrap{min-height:64px}.brand img{width:38px;height:38px}.main-nav{top:72px}
  .hero.section-pad{padding:18px 0 30px}.hero-grid{gap:18px}.hero-visual{order:-1;aspect-ratio:16/9;border-radius:18px}.hero-copy h1{font-size:34px;margin:7px 0 10px}.hero-lead{font-size:13px;line-height:1.55}.hero-actions{margin-top:15px}.hero-mini{margin-top:17px;gap:0;justify-content:space-between}.hero-mini>a,.hero-mini>span{padding:0 9px}.hero-mini strong{font-size:13px}.hero-corner-card{right:10px;top:10px}.hero-float{left:10px;bottom:10px}
  .section-head h2,.ranking-copy h2,.narrow h2{font-size:27px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ranking-layout{grid-template-columns:1fr;gap:18px}.rank-row{grid-template-columns:36px 40px minmax(0,1fr);gap:9px}.rank-meter{display:none}
  .profile-hero{padding:30px 0}.profile-grid{grid-template-columns:210px 1fr;gap:20px}.profile-copy h1{font-size:32px}.page-hero{padding:38px 0 22px}.page-hero h1{font-size:32px}
  .site-footer{padding-top:24px}.image-viewer{padding:16px}.image-viewer-close{right:12px;top:12px;width:38px;height:38px}
}
@media(max-width:620px){
  .container{width:min(100% - 20px,1140px)}.section-pad{padding:30px 0}.hero.section-pad{padding:12px 0 26px}.hero-grid{gap:15px}.hero-visual{aspect-ratio:16/9;border-radius:16px}.hero-copy h1{font-size:31px;margin:6px 0 9px}.hero-lead{font-size:12.5px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.hero-actions .btn{width:100%;padding:10px 11px;font-size:12px}.hero-mini{margin-top:15px}.hero-mini span span,.hero-mini a span{font-size:8.5px}.hero-ring{width:130px;height:130px}.hero-ring-2{display:none}
  .section-head{margin-bottom:14px}.section-head h2,.ranking-copy h2,.narrow h2{font-size:24px}.section-head p,.ranking-copy p{font-size:11.5px}.head-links{width:auto;gap:10px}.text-link{font-size:11px}
  .product-grid{grid-template-columns:1fr;gap:12px}.product-card{max-width:100%;border-radius:16px}.product-body{padding:13px}.product-body h3{font-size:15px}.product-media img{padding:6px}.product-actions{margin-top:10px}.product-actions .btn{min-height:38px;font-size:12px}
  .comedians-row{gap:7px}.comedian-mini{min-width:126px;padding:11px 6px}.avatar-ring{width:90px;height:90px}.ranking-layout{gap:14px}.rank-row{padding:8px 9px}
  .page-hero{padding:30px 0 18px}.page-hero h1{font-size:28px}.page-hero p{font-size:12px}.search-box{margin-bottom:14px}
  .profile-hero{padding:26px 0}.profile-grid{grid-template-columns:1fr;gap:16px}.profile-photo{max-width:190px}.profile-copy h1{font-size:29px}.profile-about{margin-top:12px;padding-top:12px}.profile-products{padding-top:28px}
  .site-footer{padding:22px 0 18px}.support-strip{padding-bottom:16px}.support-logos{gap:10px}.footer-bottom{padding-top:15px;gap:12px}
  .login-copy,.form-card{padding:22px}.login-copy h1{font-size:27px}
}
@media(max-width:420px){.hero-copy h1{font-size:28px}.hero-actions{grid-template-columns:1fr}.section-head h2,.ranking-copy h2,.narrow h2{font-size:22px}.page-hero h1{font-size:26px}.profile-copy h1{font-size:27px}}
.btn-finished:hover,.btn-disabled:hover{transform:none!important;box-shadow:none!important}


/* ===== REVISI v2.3 — Hero simpel, mobile image-first, event selesai, tanpa bottom dock ===== */
.hero.section-pad{padding:34px 0 42px;min-height:0;display:block}
.hero-grid{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:34px;align-items:center}
.hero-copy{max-width:590px}
.hero-copy h1{font-size:clamp(36px,4.6vw,54px);line-height:1.02;letter-spacing:-.035em;margin:10px 0 14px}
.hero-lead{font-size:14px;line-height:1.65;max-width:560px;margin:0;color:#aebdb9}
.hero-actions{margin-top:19px;gap:9px}
.hero-actions .btn{min-width:120px;padding:10px 17px;font-size:13px;border-radius:11px}
.hero-mini{display:none!important}
.hero-visual{aspect-ratio:16/9;min-height:0;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:#0a0e0d;box-shadow:0 18px 55px rgba(0,0,0,.32);overflow:hidden;transform:none!important}
.hero-visual::after,.hero-ring,.hero-ring-2,.hero-float,.hero-corner-card{display:none!important}
.hero-visual img{width:100%;height:100%;min-height:0;object-fit:cover;transition:transform .4s ease}
.hero-visual:hover img{transform:scale(1.018)}

/* Produk: foto hanya untuk popup, tanpa panah/detail. */
.product-media{cursor:zoom-in}
.product-actions .icon,.product-card .detail-btn,.product-card .media-open{display:none!important}
.product-actions{grid-template-columns:1fr!important}
.product-actions .btn{width:100%}

/* Event yang waktunya telah lewat: visual nonaktif, tombol merah tetap menonjol. */
.event-finished{border-color:#34292a!important;background:linear-gradient(180deg,#0e0f0f,#080909)!important}
.event-finished .product-media img{filter:grayscale(1) brightness(.66)!important;opacity:.78!important}
.event-finished .product-media .badge,.event-finished .product-media .discount-badge{filter:grayscale(1)!important;opacity:.62!important}
.event-finished .product-body>h3,.event-finished .price-row,.event-finished .product-meta,.event-finished .product-body>p{filter:grayscale(1)!important;opacity:.56!important}
.event-finished .btn-finished{background:#c92f38!important;border-color:#e14a53!important;color:#fff!important;opacity:1!important;filter:none!important;cursor:not-allowed!important;box-shadow:0 8px 24px rgba(201,47,56,.17)!important}

/* Detail komika: tanpa badge jumlah Open Mic pada foto. */
.profile-stat{display:none!important}
.profile-photo{position:relative}

/* Bottom navigation dihapus. Hapus juga ruang ekstra peninggalan versi lama. */
.mobile-dock{display:none!important}
body{padding-bottom:0!important}

@media(max-width:1050px){
  .hero-grid{grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);gap:26px}
  .hero-copy h1{font-size:42px}
}
@media(max-width:800px){
  body{padding-bottom:0!important}
  .hero.section-pad{padding:16px 0 30px}
  .hero-grid{grid-template-columns:1fr!important;gap:17px}
  .hero-visual{order:-1!important;width:100%;aspect-ratio:16/9;border-radius:17px}
  .hero-copy{max-width:none}
  .hero-copy h1{font-size:clamp(30px,8.3vw,39px);margin:7px 0 9px;line-height:1.05}
  .hero-lead{font-size:12.5px;line-height:1.58}
  .hero-actions{margin-top:14px;gap:8px}
  .hero-actions .btn{min-width:0;padding:9px 14px;font-size:12px}
}
@media(max-width:520px){
  .hero.section-pad{padding:10px 0 25px}
  .hero-grid{gap:14px}
  .hero-visual{border-radius:15px}
  .hero-copy h1{font-size:29px;letter-spacing:-.025em}
  .hero-actions{display:flex;grid-template-columns:none;flex-wrap:wrap}
  .hero-actions .btn{width:auto;min-width:105px}
}


/* ===== REVISI v2.4 — kartu produk final ===== */
/* Link/tombol Detail versi lama tidak boleh tampil lagi. */
.product-card .detail-btn,
.product-card .btn-detail,
.product-card [data-product-detail],
.product-card .product-detail-link{display:none!important}

/* Foto produk adalah trigger preview saja. */
.product-card .product-media{cursor:zoom-in!important}
.product-card .product-media::after,
.product-card .product-media .media-open,
.product-card .product-media .arrow,
.product-card .product-media .icon-arrow{display:none!important}

/* Event selesai (>24 jam setelah waktu event): foto benar-benar hitam-putih. */
.product-card.event-finished .product-media img{
  filter:grayscale(1) saturate(0) brightness(.72)!important;
  opacity:.82!important;
}
.product-card.event-finished .product-media:hover img{
  filter:grayscale(1) saturate(0) brightness(.76)!important;
  transform:none!important;
}
.product-card.event-finished .btn-finished{
  background:#c62828!important;
  border-color:#e04646!important;
  color:#fff!important;
  pointer-events:none!important;
  cursor:not-allowed!important;
}

/* ===== REVISI v2.5 — event selesai: foto tetap terlihat, hanya grayscale ===== */
/* Jangan redupkan / transparankan foto event selesai. Pertahankan gambar 100% terlihat. */
.product-card.event-finished .product-media img,
.product-card.event-finished .product-media:hover img,
.event-finished .product-media img,
.event-finished .product-media:hover img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  filter:grayscale(100%)!important;
  -webkit-filter:grayscale(100%)!important;
  mix-blend-mode:normal!important;
  transform:none!important;
}

/* Badge tetap terbaca normal di atas foto grayscale. */
.product-card.event-finished .product-media .badge,
.product-card.event-finished .product-media .discount-badge,
.product-card.event-finished .product-media .finished-badge{
  opacity:1!important;
  filter:none!important;
  -webkit-filter:none!important;
}


/* ===== REVISI v2.6 — perbaikan foto produk legacy ===== */
/* Jangan pernah sembunyikan link lama yang membungkus foto/nama produk. */
.product-card a.product-media[href*="product.php"],
.product-card a.product-title-link[href*="product.php"]{
  display:block!important;
}

/* Media produk harus selalu memiliki ruang dan gambar harus selalu terlihat. */
.product-card .product-media{
  position:relative!important;
  display:block!important;
  width:100%!important;
  aspect-ratio:1 / 1!important;
  min-height:1px!important;
  overflow:hidden!important;
  background:#090d0c!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  cursor:zoom-in!important;
}
.product-card .product-media img{
  display:block!important;
  visibility:visible!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:8px!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

/* Event selesai: FOTO SAJA hitam-putih, tanpa redup/transparan. */
.product-card.event-finished .product-media img,
.product-card.event-finished .product-media:hover img,
.event-finished .product-media img,
.event-finished .product-media:hover img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  filter:grayscale(100%)!important;
  -webkit-filter:grayscale(100%)!important;
  mix-blend-mode:normal!important;
  transform:none!important;
}
/* Teks card tetap normal dan jelas. */
.event-finished .product-body>h3,
.event-finished .price-row,
.event-finished .product-meta,
.event-finished .product-body>p{
  filter:none!important;
  opacity:1!important;
}
/* Tombol event selesai selalu merah, walaupun markup server masih versi lama. */
.event-finished .product-actions .btn,
.event-finished .product-btn,
.product-card.event-finished .btn-finished{
  background:#c62828!important;
  border-color:#e04747!important;
  color:#fff!important;
  opacity:1!important;
  filter:none!important;
  pointer-events:none!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
}


/* ===== REVISI v2.7 — status Event Selesai berbasis tanggal + jam ===== */
/* Foto event tetap normal. Status selesai ditandai lewat badge + teks + CTA merah. */
.product-card.event-finished .product-media img,
.product-card.event-finished .product-media:hover img,
.event-finished .product-media img,
.event-finished .product-media:hover img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  filter:none!important;
  -webkit-filter:none!important;
  mix-blend-mode:normal!important;
  transform:none!important;
}
.product-card.event-finished .product-media .badge,
.product-card.event-finished .product-media .discount-badge,
.product-card.event-finished .product-media .finished-badge{
  filter:none!important;
  -webkit-filter:none!important;
  opacity:1!important;
}
.product-card.event-finished{
  border-color:rgba(220,56,66,.34)!important;
  background:linear-gradient(180deg,#0d1211,#090c0b)!important;
}
.finished-badge{
  position:absolute!important;
  left:10px!important;
  bottom:10px!important;
  z-index:4!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:27px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:#c92f38!important;
  border:1px solid rgba(255,255,255,.15)!important;
  color:#fff!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  box-shadow:0 8px 22px rgba(201,47,56,.26)!important;
}
.event-status-note{
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:9px;
  color:#ff858c;
  font-size:11px;
  font-weight:700;
}
.event-status-dot{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#e23b45;
  box-shadow:0 0 0 4px rgba(226,59,69,.12);
}
.product-card.event-finished .btn-finished,
.event-finished .product-actions .btn,
.event-finished .product-btn{
  background:#c92f38!important;
  border-color:#e14a53!important;
  color:#fff!important;
  opacity:1!important;
  filter:none!important;
  pointer-events:none!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
}


/* ===== REVISI v2.8 — EVENT SELESAI FINAL: server + browser ===== */
/* Event yang tanggal-jamnya sudah lewat harus terlihat jelas sebagai event selesai. */
.product-card.event-finished .product-media img,
.product-card.event-finished .product-media:hover img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  filter:grayscale(100%)!important;
  -webkit-filter:grayscale(100%)!important;
  transform:none!important;
}
.product-card.event-finished .finished-badge{
  display:inline-flex!important;
  background:#d62828!important;
  border-color:rgba(255,255,255,.22)!important;
  color:#fff!important;
}
.product-card.event-finished .event-status-note{
  display:flex!important;
  color:#ff7d85!important;
}
.product-card.event-finished .product-actions .btn-finished{
  display:flex!important;
  width:100%!important;
  justify-content:center!important;
  align-items:center!important;
  background:#d62828!important;
  border-color:#ef5058!important;
  color:#fff!important;
  pointer-events:none!important;
  cursor:not-allowed!important;
  text-decoration:none!important;
}
/* Jangan biarkan tombol CTA aktif tersisa pada event selesai. */
.product-card.event-finished .product-actions a{pointer-events:none!important}


/* ===== REVISI v2.9 — alignment Home + Hero ===== */
/* Header: hanya logo + nama aplikasi, tanpa subtitle/title kedua. */
.brand-copy{display:flex!important;align-items:center!important;min-height:42px!important}
.brand-copy strong{display:block!important;margin:0!important;line-height:1.15!important}
.brand-copy small{display:none!important}

/* Hero: title kecil mengambil Title Aplikasi dari pengaturan. */
.hero-app-title{display:block;max-width:100%;line-height:1.35}

/* Section Event & Digital Download dibuat bersih, sederhana, dan terpusat. */
.section-head-centered{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  text-align:center!important;
  margin-bottom:22px!important;
}
.section-head-centered h2{
  margin:0!important;
  text-align:center!important;
}
.head-links-centered{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:22px!important;
}
.head-links-centered .text-link{
  position:relative;
  padding:3px 2px 7px;
  text-align:center;
}
.head-links-centered .text-link::after{
  content:"";
  position:absolute;
  left:50%;bottom:0;
  width:0;height:2px;
  border-radius:999px;
  background:var(--teal);
  transform:translateX(-50%);
  transition:width .22s ease;
}
.head-links-centered .text-link:hover::after{width:100%}

/* Semua grid produk rata tengah. Satu atau dua card tidak lagi menempel di kiri. */
.product-grid{
  grid-template-columns:repeat(auto-fit,minmax(270px,340px))!important;
  justify-content:center!important;
  align-items:start!important;
  width:100%!important;
}
.product-card{
  width:100%!important;
  max-width:340px!important;
  justify-self:center!important;
}

/* Mobile Hero: gambar di atas, seluruh copy dan tombol rata tengah. */
@media(max-width:800px){
  .hero-copy{
    text-align:center!important;
    margin-inline:auto!important;
  }
  .hero-copy .eyebrow,
  .hero-copy h1,
  .hero-lead{
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  .hero-actions{
    justify-content:center!important;
    align-items:center!important;
  }
  .hero-visual{
    margin-inline:auto!important;
  }
  .section-head-centered{margin-bottom:18px!important;gap:8px!important}
  .head-links-centered{gap:18px!important}
}
@media(max-width:620px){
  .hero-copy{padding-inline:4px}
  .hero-app-title{font-size:9px!important;letter-spacing:.12em!important}
  .hero-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:8px!important;
  }
  .hero-actions .btn{
    width:auto!important;
    min-width:112px!important;
  }
  .product-grid{grid-template-columns:minmax(0,340px)!important}
  .product-card{max-width:340px!important}
}


/* ===== REVISI v3.0 — HERO PREMIUM RESPONSIVE ===== */
/* Hero sengaja dibuat compact: tidak mengambil satu layar penuh dan tetap nyaman di mobile. */
.hero-v30{
  min-height:0!important;
  padding:28px 0 34px!important;
  display:block!important;
  position:relative;
}
.hero-v30 .hero-shell{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);
  gap:34px;
  align-items:center;
  overflow:hidden;
  padding:22px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:26px;
  background:
    radial-gradient(circle at 8% 0%,rgba(20,184,166,.11),transparent 30%),
    radial-gradient(circle at 100% 100%,rgba(20,184,166,.055),transparent 26%),
    linear-gradient(145deg,rgba(13,19,17,.92),rgba(7,10,9,.96));
  box-shadow:0 28px 80px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.025);
}
.hero-v30 .hero-shell::before{
  content:"";
  position:absolute;
  top:0;
  left:7%;
  width:120px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--teal),transparent);
  opacity:.9;
}
.hero-v30 .hero-shell::after{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  border-radius:50%;
  left:-135px;
  bottom:-150px;
  border:1px solid rgba(20,184,166,.11);
  box-shadow:0 0 0 34px rgba(20,184,166,.018),0 0 0 68px rgba(20,184,166,.01);
  pointer-events:none;
}
.hero-v30 .hero-copy{
  position:relative;
  z-index:2;
  padding:18px 8px 18px 18px;
  max-width:540px;
}
.hero-v30 .hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  max-width:100%;
  color:#9ceade;
  font-size:10.5px;
  line-height:1.35;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.hero-v30 .hero-kicker-dot{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:var(--teal);
  box-shadow:0 0 0 5px rgba(20,184,166,.09),0 0 18px rgba(20,184,166,.32);
}
.hero-v30 .hero-copy h1{
  margin:13px 0 15px!important;
  max-width:620px!important;
  font-size:clamp(38px,4.5vw,58px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
  font-weight:800!important;
  color:#f7fffd!important;
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
  text-wrap:balance;
}
.hero-v30 .hero-lead{
  margin:0!important;
  max-width:520px!important;
  color:#aebdb9!important;
  font-size:14px!important;
  line-height:1.72!important;
  font-weight:400!important;
}
.hero-v30 .hero-actions{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:9px!important;
  margin-top:22px!important;
}
.hero-v30 .hero-btn{
  min-width:112px;
  min-height:43px;
  padding:10px 17px!important;
  border-radius:12px!important;
  font-size:13px!important;
  font-weight:800!important;
}
.hero-v30 .btn-primary{
  box-shadow:0 11px 26px rgba(20,184,166,.16)!important;
}
.hero-v30 .hero-visual{
  position:relative!important;
  z-index:1;
  width:100%!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
.hero-v30 .hero-visual::before,
.hero-v30 .hero-visual::after{display:none!important}
.hero-v30 .hero-image-frame{
  position:relative;
  overflow:hidden;
  width:100%;
  aspect-ratio:16/9;
  border:1px solid rgba(255,255,255,.09);
  border-radius:20px;
  background:#0a0e0d;
  box-shadow:0 18px 52px rgba(0,0,0,.3);
}
.hero-v30 .hero-image-frame::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,0) 68%,rgba(0,0,0,.14));
}
.hero-v30 .hero-image-frame img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  object-fit:cover!important;
  object-position:center!important;
  transform:none!important;
  transition:transform .5s ease,filter .5s ease!important;
}
.hero-v30 .hero-image-accent{
  position:absolute;
  z-index:3;
  right:13px;
  top:13px;
  width:42px;
  height:4px;
  border-radius:99px;
  background:var(--teal);
  box-shadow:0 0 22px rgba(20,184,166,.35);
}
@media (hover:hover) and (pointer:fine){
  .hero-v30 .hero-shell:hover .hero-image-frame img{transform:scale(1.018)!important}
  .hero-v30 .hero-shell:hover{border-color:rgba(20,184,166,.18)}
}

@media(max-width:980px){
  .hero-v30{padding:22px 0 30px!important}
  .hero-v30 .hero-shell{grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);gap:24px;padding:18px}
  .hero-v30 .hero-copy{padding:14px 4px 14px 10px}
  .hero-v30 .hero-copy h1{font-size:clamp(34px,4.9vw,48px)!important}
  .hero-v30 .hero-lead{font-size:13px!important;line-height:1.65!important}
}

@media(max-width:760px){
  .hero-v30{padding:14px 0 24px!important}
  .hero-v30 .container{width:min(100% - 22px,680px)!important}
  .hero-v30 .hero-shell{
    grid-template-columns:1fr!important;
    gap:0!important;
    padding:9px!important;
    border-radius:21px!important;
    background:linear-gradient(180deg,rgba(12,18,16,.96),rgba(7,10,9,.98));
  }
  .hero-v30 .hero-shell::after{display:none}
  .hero-v30 .hero-visual{
    order:-1!important;
    margin:0!important;
  }
  .hero-v30 .hero-image-frame{
    aspect-ratio:16/9!important;
    border-radius:15px!important;
    box-shadow:0 14px 34px rgba(0,0,0,.24)!important;
  }
  .hero-v30 .hero-image-accent{right:10px;top:10px;width:32px;height:3px}
  .hero-v30 .hero-copy{
    max-width:590px!important;
    margin:0 auto!important;
    padding:19px 12px 15px!important;
    text-align:center!important;
  }
  .hero-v30 .hero-kicker{
    justify-content:center!important;
    font-size:9px!important;
    letter-spacing:.115em!important;
  }
  .hero-v30 .hero-copy h1{
    margin:9px auto 11px!important;
    max-width:520px!important;
    font-size:clamp(28px,8.2vw,38px)!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
    text-align:center!important;
  }
  .hero-v30 .hero-lead{
    max-width:520px!important;
    margin-inline:auto!important;
    font-size:12.5px!important;
    line-height:1.62!important;
    text-align:center!important;
  }
  .hero-v30 .hero-actions{
    justify-content:center!important;
    margin-top:16px!important;
    gap:8px!important;
  }
  .hero-v30 .hero-btn{
    width:auto!important;
    min-width:108px!important;
    min-height:40px!important;
    padding:9px 15px!important;
    font-size:12px!important;
  }
}

@media(max-width:430px){
  .hero-v30{padding:10px 0 20px!important}
  .hero-v30 .container{width:calc(100% - 16px)!important}
  .hero-v30 .hero-shell{padding:7px!important;border-radius:18px!important}
  .hero-v30 .hero-image-frame{border-radius:13px!important}
  .hero-v30 .hero-copy{padding:17px 10px 13px!important}
  .hero-v30 .hero-kicker{font-size:8.5px!important;letter-spacing:.1em!important}
  .hero-v30 .hero-kicker-dot{width:6px;height:6px;flex-basis:6px;box-shadow:0 0 0 4px rgba(20,184,166,.08)}
  .hero-v30 .hero-copy h1{font-size:clamp(26px,8.6vw,34px)!important;margin:8px auto 10px!important}
  .hero-v30 .hero-lead{font-size:12px!important;line-height:1.58!important}
  .hero-v30 .hero-actions{margin-top:14px!important}
  .hero-v30 .hero-btn{min-width:104px!important;padding:9px 13px!important}
}

@media(prefers-reduced-motion:reduce){
  .hero-v30 .hero-image-frame img{transition:none!important}
}


/* ===== REVISI v3.1 — MOBILE HERO: TEKS DI ATAS, FOTO DI BAWAH ===== */
@media(max-width:760px){
  .hero-v30 .hero-shell{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  .hero-v30 .hero-copy{
    order:1!important;
    padding:17px 12px 16px!important;
    text-align:center!important;
  }
  .hero-v30 .hero-visual{
    order:2!important;
    margin:0!important;
    padding:0!important;
  }
  .hero-v30 .hero-image-frame{
    width:100%!important;
    aspect-ratio:16/9!important;
    margin:0!important;
  }
}
@media(max-width:430px){
  .hero-v30 .hero-copy{padding:15px 10px 14px!important}
  .hero-v30 .hero-actions{margin-bottom:1px!important}
}

/* ===== REVISI v3.2 — HOME SECTION HEADINGS + HERO TANPA CTA ===== */
/* Hero dibuat lebih bersih tanpa tombol CTA. */
.hero-v30 .hero-actions{display:none!important}
.hero-v30 .hero-copy{padding-bottom:18px!important}

/* Judul section premium: gradasi tosca + garis pendek pemisah. */
.section-title-premium{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:11px;
  margin:0 0 26px;
}
.section-title-premium h2{
  margin:0!important;
  font-family:'Open Sans',Arial,sans-serif;
  font-size:clamp(24px,3vw,34px)!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
  background:linear-gradient(90deg,#8ff5e9 0%,#14b8a6 48%,#5eead4 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
}
.section-title-line{
  display:block;
  width:58px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(20,184,166,0),#14b8a6,rgba(94,234,212,.3));
  box-shadow:0 0 18px rgba(20,184,166,.22);
}

/* Komika: baris card benar-benar terpusat walau jumlah sedikit. */
.comedians-row{
  justify-content:center!important;
  margin-inline:auto!important;
}
.comedian-mini{scroll-snap-align:center}

/* Ranking disederhanakan sesuai copy baru. */
.ranking-copy .eyebrow{display:none!important}
.ranking-copy h2{margin-top:0!important}

@media(max-width:760px){
  .section-title-premium{gap:9px;margin-bottom:20px}
  .section-title-premium h2{font-size:clamp(22px,6.2vw,29px)!important}
  .section-title-line{width:50px;height:3px}
  .hero-v30 .hero-copy{padding-bottom:14px!important}
}
@media(max-width:430px){
  .section-title-premium{margin-bottom:18px}
  .section-title-premium h2{font-size:23px!important}
  .section-title-line{width:46px;height:2.5px}
}

/* ===== REVISI v3.4 — HEADER MOBILE FIXED + REGISTRASI MANDIRI ===== */
.main-nav .nav-register{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-left:2px;
  border:1px solid rgba(20,184,166,.22);
  background:rgba(20,184,166,.055);
  color:#cffff8;
}
.main-nav .nav-register:hover,
.main-nav .nav-register.active{
  color:#effffc;
  border-color:rgba(20,184,166,.45);
  background:rgba(20,184,166,.1);
}

/* Form registrasi publik */
.compact-page-hero{padding-bottom:30px}
.registration-head{text-align:center}
.registration-head h1{margin-inline:auto;max-width:780px}
.registration-head p{margin-inline:auto}
.registration-section{padding-top:38px}
.registration-shell{max-width:960px}
.registration-card{
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(13,19,17,.98),rgba(6,9,8,.99));
  box-shadow:0 28px 80px rgba(0,0,0,.24);
}
.registration-card-head{padding:21px 23px;border-bottom:1px solid rgba(255,255,255,.06)}
.registration-card-head h2{margin:0 0 4px;font-size:20px}
.registration-card-head p{margin:0;color:var(--muted);font-size:12px}
.public-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:23px}
.public-field{display:grid;gap:7px;min-width:0}
.public-field.full{grid-column:1/-1}
.public-field label{font-size:11px;font-weight:800;color:#dce9e5}
.public-field input,.public-field textarea{
  width:100%;min-height:44px;padding:11px 13px;border:1px solid rgba(255,255,255,.09);border-radius:12px;
  outline:0;background:#050807;color:#fff;transition:.2s
}
.public-field textarea{min-height:125px;resize:vertical}
.public-field input:focus,.public-field textarea:focus{border-color:rgba(20,184,166,.7);box-shadow:0 0 0 4px rgba(20,184,166,.075)}
.public-field small{font-size:10px;color:var(--muted)}
.public-photo-field{justify-items:start}
.register-preview{width:112px;height:112px;object-fit:cover;border-radius:50%;border:4px solid #0d1512;box-shadow:0 0 0 1px rgba(20,184,166,.26),0 14px 34px rgba(0,0,0,.28);margin-bottom:3px}
.public-submit{justify-items:end;padding-top:5px}
.public-submit .btn{min-width:180px}
.registration-alert{margin:18px 23px 0}
.registration-success{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;margin-bottom:16px;padding:17px 18px;border:1px solid rgba(20,184,166,.25);border-radius:18px;background:rgba(20,184,166,.065)}
.registration-success-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:var(--teal);color:#02110e;font-size:20px;font-weight:900}
.registration-success h2{margin:0 0 3px;font-size:17px}.registration-success p{margin:0;color:var(--muted);font-size:11px}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:800px){
  /* Header benar-benar menempel pada viewport ketika menu dibuka/halaman digulir. */
  body{padding-top:72px!important;padding-bottom:0!important}
  .site-header{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:100!important;background:rgba(4,7,6,.96)!important;backdrop-filter:blur(20px)!important}
  .nav-wrap{min-height:72px!important}
  .main-nav{top:78px!important;left:12px!important;right:12px!important;z-index:110!important;max-height:calc(100dvh - 92px)!important;overflow-y:auto!important;overscroll-behavior:contain}
  .nav-backdrop{z-index:90!important}
  .main-nav .nav-login{order:10;margin-top:5px!important}
  .main-nav .nav-register{order:11;margin:0!important;margin-top:2px!important;width:100%}
  .registration-head{padding-inline:8px}
  .public-form-grid{grid-template-columns:1fr;padding:18px;gap:13px}
  .public-field.full{grid-column:1}
  .public-submit{justify-items:stretch}.public-submit .btn{width:100%}
  .registration-card-head{padding:18px}
  .registration-success{grid-template-columns:auto 1fr}.registration-success .btn{grid-column:1/-1;width:100%}
}
@media(max-width:560px){
  body{padding-top:66px!important}
  .site-header .nav-wrap{min-height:66px!important}
  .main-nav{top:72px!important;max-height:calc(100dvh - 82px)!important;border-radius:18px!important}
  .compact-page-hero{padding-top:24px!important}
  .registration-section{padding-top:24px}
  .registration-card{border-radius:18px}
  .registration-card-head{padding:16px}
  .public-form-grid{padding:16px}
  .register-preview{width:96px;height:96px}
}


/* ===== REVISI v3.7 — CARD KOMIKA PREMIUM + URUTAN PROFIL TERPOPULER ===== */
.comedians-page-hero{text-align:center;padding-bottom:34px}
.comedians-page-hero .container{max-width:760px}
.comedians-page-hero h1{margin-left:auto;margin-right:auto}
.comedians-page-hero p{margin-left:auto;margin-right:auto}
.comedians-directory-section{padding-top:40px}
.comedians-search{max-width:760px;margin-left:auto;margin-right:auto;margin-bottom:30px}

.comedian-grid-premium{
  width:100%;
  max-width:1080px;
  margin-inline:auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  align-items:stretch;
}
.comedian-card-premium{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.075);
  background:linear-gradient(160deg,rgba(15,22,20,.98),rgba(7,10,9,.99));
  box-shadow:0 18px 44px rgba(0,0,0,.24);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.comedian-card-premium:hover{
  transform:translateY(-5px);
  border-color:rgba(20,184,166,.34);
  box-shadow:0 28px 64px rgba(0,0,0,.38),0 0 0 1px rgba(20,184,166,.06);
}
.comedian-card-photo{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:4/4.55;
  overflow:hidden;
  background:#0a0e0d;
}
.comedian-card-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  transform:scale(1.001);
  transition:transform .48s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}
.comedian-card-premium:hover .comedian-card-photo img{transform:scale(1.035)}
.comedian-photo-shade{
  position:absolute;
  inset:auto 0 0;
  height:34%;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(5,8,7,.72));
}
.comedian-card-content{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:18px;
}
.comedian-card-name h2{
  margin:0;
  font-family:'Open Sans',Arial,sans-serif;
  font-size:17px;
  line-height:1.28;
  font-weight:800;
  letter-spacing:-.02em;
}
.comedian-card-name h2 a{transition:color .2s ease}
.comedian-card-name h2 a:hover{color:#69e6d6}
.comedian-skill-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:11px;
  min-height:27px;
}
.comedian-skill-tags span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:5px 9px;
  border:1px solid rgba(20,184,166,.2);
  border-radius:999px;
  background:rgba(20,184,166,.075);
  color:#c8f9f1;
  font-size:9.5px;
  line-height:1;
  font-weight:700;
}
.comedian-card-socials{
  min-height:34px;
  margin-top:15px;
  gap:6px;
  flex-wrap:wrap;
}
.comedian-card-socials a{
  width:31px;
  height:31px;
  border-radius:9px;
  border-color:rgba(255,255,255,.085);
  background:rgba(255,255,255,.025);
}
.comedian-card-socials .icon{width:15px;height:15px}
.comedian-profile-button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  min-height:43px;
  margin-top:auto;
  padding:10px 13px;
  border:1px solid rgba(20,184,166,.28);
  border-radius:12px;
  background:linear-gradient(90deg,rgba(20,184,166,.11),rgba(20,184,166,.045));
  color:#d9fffa;
  font-size:11px;
  font-weight:800;
  transition:background .23s ease,border-color .23s ease,transform .23s ease,color .23s ease;
}
.comedian-card-socials + .comedian-profile-button{margin-top:16px}
.comedian-profile-button:hover{
  transform:translateY(-1px);
  border-color:rgba(20,184,166,.62);
  background:#14b8a6;
  color:#02110e;
}
.comedian-profile-button .icon{transition:transform .23s ease}
.comedian-profile-button:hover .icon{transform:translateX(3px)}

@media(max-width:930px){
  .comedian-grid-premium{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}
}
@media(max-width:620px){
  .comedians-page-hero{padding-top:30px!important;padding-bottom:24px!important}
  .comedians-page-hero .eyebrow{font-size:9px}
  .comedians-page-hero h1{font-size:31px!important;margin-top:6px!important;margin-bottom:8px!important}
  .comedians-page-hero p{font-size:12px!important;line-height:1.55;max-width:330px}
  .comedians-directory-section{padding-top:28px!important}
  .comedians-search{margin-bottom:22px}
  .comedian-grid-premium{grid-template-columns:1fr;max-width:390px;gap:16px}
  .comedian-card-premium{border-radius:18px}
  .comedian-card-photo{aspect-ratio:4/4.15}
  .comedian-card-content{padding:15px}
  .comedian-card-name h2{font-size:16px}
  .comedian-skill-tags{margin-top:9px;gap:5px}
  .comedian-skill-tags span{font-size:9px;padding:5px 8px}
  .comedian-card-socials{margin-top:12px}
  .comedian-profile-button{min-height:41px;margin-top:14px!important}
}
@media(max-width:380px){
  .comedian-grid-premium{max-width:100%}
  .comedian-card-photo{aspect-ratio:1/1.02}
}


/* ===== REVISI v3.8 — HOME KOMIKA TERPOPULER + MOBILE 3-CARD SLIDER + UKURAN CARD SERAGAM ===== */

/* Direktori Komika: lebar card diseragamkan dengan card produk (maks. 340px). */
.comedian-grid-premium{
  grid-template-columns:repeat(auto-fit,minmax(270px,340px))!important;
  justify-content:center!important;
  align-items:start!important;
  max-width:1080px!important;
  gap:20px!important;
}
.comedian-card-premium{
  width:100%!important;
  max-width:340px!important;
  justify-self:center!important;
}
.comedian-card-photo{
  aspect-ratio:1/1!important;
}
.comedian-card-photo img{
  object-position:center 18%!important;
}

/* Home desktop/tablet tetap rapi dan terpusat. */
.comedians-home-slider{
  width:100%;
  margin-inline:auto!important;
}

/* Mobile: 3 card komika terlihat sekaligus dan bisa digeser horizontal. */
@media(max-width:620px){
  .comedians-home-slider{
    display:grid!important;
    grid-template-columns:none!important;
    grid-auto-flow:column!important;
    grid-auto-columns:calc((100% - 14px) / 3)!important;
    justify-content:start!important;
    align-items:start!important;
    gap:7px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scroll-padding-inline:0!important;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:4px 0 10px!important;
    margin:0!important;
  }
  .comedians-home-slider::-webkit-scrollbar{display:none}
  .comedians-home-slider .comedian-mini{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding:9px 3px!important;
    border-radius:14px!important;
    scroll-snap-align:start;
    scroll-snap-stop:normal;
  }
  .comedians-home-slider .avatar-ring{
    width:clamp(64px,19vw,78px)!important;
    height:clamp(64px,19vw,78px)!important;
    margin-bottom:7px!important;
    padding:3px!important;
  }
  .comedians-home-slider .avatar-ring img{
    border-width:3px!important;
  }
  .comedians-home-slider .comedian-mini strong{
    font-size:10.5px!important;
    line-height:1.28!important;
    min-height:27px;
    display:flex!important;
    align-items:flex-start;
    justify-content:center;
    text-align:center;
  }
  .comedians-home-slider .mini-social{
    display:flex!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    gap:3px!important;
    margin-top:6px!important;
  }
  .comedians-home-slider .mini-social a{
    width:21px!important;
    height:21px!important;
    border-radius:6px!important;
  }
  .comedians-home-slider .mini-social .icon{
    width:11px!important;
    height:11px!important;
  }

  /* Direktori Komika mobile mengikuti ukuran card produk, tidak selebar layar penuh. */
  .comedian-grid-premium{
    grid-template-columns:minmax(0,340px)!important;
    max-width:340px!important;
    gap:14px!important;
  }
  .comedian-card-premium{
    max-width:340px!important;
    border-radius:16px!important;
  }
  .comedian-card-photo{
    aspect-ratio:1/1!important;
  }
}

@media(max-width:360px){
  .comedians-home-slider{
    grid-auto-columns:calc((100% - 12px) / 3)!important;
    gap:6px!important;
  }
  .comedians-home-slider .avatar-ring{
    width:60px!important;
    height:60px!important;
  }
  .comedians-home-slider .comedian-mini strong{
    font-size:9.8px!important;
  }
  .comedians-home-slider .mini-social a{
    width:19px!important;
    height:19px!important;
  }
}

/* ===== REVISI v3.9 — PAGE HERO EVENT / DIGITAL DOWNLOAD / KOMIKA RATA TENGAH ===== */
body[data-page="events"] .page-hero,
body[data-page="downloads"] .page-hero,
body[data-page="comedians"] .page-hero{
  background:
    radial-gradient(circle at 50% 0%,rgba(20,184,166,.16) 0,rgba(20,184,166,.055) 28%,transparent 58%),
    linear-gradient(180deg,rgba(255,255,255,.008),transparent);
}
body[data-page="events"] .page-hero .container,
body[data-page="downloads"] .page-hero .container,
body[data-page="comedians"] .page-hero .container{
  max-width:880px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
body[data-page="events"] .page-hero .eyebrow,
body[data-page="downloads"] .page-hero .eyebrow,
body[data-page="comedians"] .page-hero .eyebrow{
  margin:0 0 6px;
  text-align:center;
}
body[data-page="events"] .page-hero h1,
body[data-page="downloads"] .page-hero h1,
body[data-page="comedians"] .page-hero h1{
  width:100%;
  max-width:860px;
  margin:8px auto 10px;
  text-align:center;
}
body[data-page="events"] .page-hero h1::after,
body[data-page="downloads"] .page-hero h1::after,
body[data-page="comedians"] .page-hero h1::after{
  content:"";
  display:block;
  width:58px;
  height:2px;
  margin:14px auto 0;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#2dd4bf 25%,#14b8a6 75%,transparent);
  box-shadow:0 0 18px rgba(20,184,166,.34);
}
body[data-page="events"] .page-hero p,
body[data-page="downloads"] .page-hero p,
body[data-page="comedians"] .page-hero p{
  max-width:680px;
  margin:0 auto;
  text-align:center;
}

@media(max-width:620px){
  body[data-page="events"] .page-hero,
  body[data-page="downloads"] .page-hero,
  body[data-page="comedians"] .page-hero{
    padding-top:28px!important;
    padding-bottom:22px!important;
  }
  body[data-page="events"] .page-hero h1,
  body[data-page="downloads"] .page-hero h1,
  body[data-page="comedians"] .page-hero h1{
    margin-top:6px!important;
    margin-bottom:9px!important;
  }
  body[data-page="events"] .page-hero h1::after,
  body[data-page="downloads"] .page-hero h1::after,
  body[data-page="comedians"] .page-hero h1::after{
    width:46px;
    margin-top:11px;
  }
  body[data-page="events"] .page-hero p,
  body[data-page="downloads"] .page-hero p,
  body[data-page="comedians"] .page-hero p{
    max-width:360px;
    line-height:1.55;
  }
}

/* ===== REVISI v4.0 — HERO SOCIAL MEDIA ===== */
.hero-v30 .hero-social-wrap{
  margin:0 0 14px;
  display:flex;
  align-items:center;
}
.hero-v30 .hero-social-icons{
  display:flex;
  align-items:center;
  gap:8px;
}
.hero-v30 .hero-social-icons a{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:#d8f8f3;
  border:1px solid rgba(20,184,166,.19);
  background:linear-gradient(145deg,rgba(20,184,166,.10),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 22px rgba(0,0,0,.12);
  transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;
}
.hero-v30 .hero-social-icons a:hover{
  transform:translateY(-2px);
  color:#06110f;
  border-color:rgba(94,234,212,.75);
  background:linear-gradient(135deg,#5eead4,#14b8a6);
  box-shadow:0 10px 24px rgba(20,184,166,.20);
}
.hero-v30 .hero-social-icons .icon{width:17px;height:17px}
@media(max-width:760px){
  .hero-v30 .hero-social-wrap{justify-content:center;margin:0 0 12px}
  .hero-v30 .hero-social-icons{justify-content:center;gap:7px}
  .hero-v30 .hero-social-icons a{width:34px;height:34px;border-radius:10px}
}
@media(max-width:430px){
  .hero-v30 .hero-social-icons a{width:32px;height:32px}
  .hero-v30 .hero-social-icons .icon{width:15px;height:15px}
}

/* ===== REVISI v4.2 — indikator swipe Komika Kami di mobile ===== */
.comedians-slider-wrap{position:relative;width:100%}
.comedian-scroll-ui{display:none}

@media(max-width:620px){
  .comedians-slider-wrap{
    width:100%;
    margin-inline:auto;
  }
  .comedians-home-slider{
    padding-bottom:8px!important;
  }
  .comedian-scroll-ui{
    display:flex;
    width:min(260px,78vw);
    margin:10px auto 0;
    flex-direction:column;
    align-items:center;
    gap:8px;
    user-select:none;
    pointer-events:none;
  }
  .comedian-scroll-caption{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    color:rgba(232,246,243,.56);
    font-size:10px;
    font-weight:700;
    letter-spacing:.035em;
    line-height:1;
    white-space:nowrap;
  }
  .comedian-scroll-caption>span:first-child{
    color:#74e8dc;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:9px;
  }
  .comedian-scroll-caption i{
    position:relative;
    display:block;
    width:24px;
    height:1px;
    background:linear-gradient(90deg,rgba(20,184,166,.18),rgba(20,184,166,.9));
  }
  .comedian-scroll-caption i::after{
    content:"";
    position:absolute;
    right:0;
    top:50%;
    width:5px;
    height:5px;
    border-top:1.5px solid #2dd4bf;
    border-right:1.5px solid #2dd4bf;
    transform:translateY(-50%) rotate(45deg);
  }
  .comedian-scroll-track{
    position:relative;
    width:100%;
    height:5px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,.065);
    border:1px solid rgba(255,255,255,.035);
    box-shadow:inset 0 1px 2px rgba(0,0,0,.35),0 0 0 1px rgba(20,184,166,.015);
  }
  .comedian-scroll-track>span{
    position:absolute;
    left:0;
    top:0;
    height:100%;
    width:34%;
    border-radius:inherit;
    background:linear-gradient(90deg,#0f8f83,#2dd4bf 70%,#67e8f9);
    box-shadow:0 0 12px rgba(20,184,166,.34);
    transform:translate3d(0,0,0);
    will-change:transform,width;
    transition:width .18s ease,box-shadow .18s ease;
  }
  .comedians-slider-wrap.is-scrolling .comedian-scroll-track>span{
    box-shadow:0 0 16px rgba(45,212,191,.55);
  }
}

@media(max-width:380px){
  .comedian-scroll-ui{width:min(235px,82vw)}
  .comedian-scroll-caption{font-size:9.5px;gap:6px}
}

/* ===== REVISI v4.3 — GRID 4 KOLOM + PAGINATION + CAROUSEL KOMIKA 5 CARD ===== */

/* Product grids: desktop 4 kolom. Home 16 item/page, katalog 24 item/page diatur PHP. */
.product-grid.product-grid-home,
.product-grid.product-grid-catalog{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  justify-content:center!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:none!important;
}
.product-grid-home .product-card,
.product-grid-catalog .product-card{
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
}
.product-grid-home .product-body,
.product-grid-catalog .product-body{
  display:flex!important;
  flex-direction:column!important;
  flex:1!important;
}
.product-grid-home .product-actions,
.product-grid-catalog .product-actions{margin-top:auto!important;padding-top:14px}

/* Katalog Komika: desktop 4 kolom, ukuran selaras dengan kartu produk. */
.comedian-grid-premium.comedian-grid-catalog{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  max-width:none!important;
  width:100%!important;
  justify-content:center!important;
  align-items:stretch!important;
}
.comedian-grid-catalog .comedian-card-premium{
  width:100%!important;
  max-width:none!important;
  height:100%!important;
}

/* Pagination premium — mengikuti referensi struktur, tetap tema hitam/tosca. */
.premium-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:9px;
  margin:34px auto 0;
  padding:4px 0;
}
.pagination-pages{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap}
.pagination-btn,
.pagination-number{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 15px;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.09);
  background:linear-gradient(180deg,rgba(17,24,22,.95),rgba(9,13,12,.95));
  color:#d8e6e2;
  font-size:13px;
  font-weight:750;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;
}
.pagination-number{min-width:42px;padding:0 11px}
a.pagination-btn:hover,
a.pagination-number:hover{
  transform:translateY(-2px);
  color:#f6fffd;
  border-color:rgba(45,212,191,.38);
  background:rgba(20,184,166,.10);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
.pagination-number.is-active{
  color:#04120f;
  border-color:#2dd4bf;
  background:linear-gradient(135deg,#2dd4bf,#14b8a6);
  box-shadow:0 9px 25px rgba(20,184,166,.22);
}
.pagination-btn.is-disabled{
  opacity:.35;
  cursor:not-allowed;
  pointer-events:none;
}
.pagination-ellipsis{
  min-width:28px;
  text-align:center;
  color:#71827d;
  font-size:12px;
  letter-spacing:.08em;
}

/* Home Komika: carousel premium. Desktop menampilkan 5 card per slide. */
.home-comedian-carousel{
  position:relative;
  width:100%;
  padding:2px 54px 34px;
  --home-carousel-gap:22px;
}
.home-comedian-viewport{
  width:100%;
  overflow:hidden;
  padding:6px 2px 10px;
}
.home-comedian-track{
  display:flex;
  align-items:flex-start;
  gap:var(--home-carousel-gap);
  width:max-content;
  will-change:transform;
  transition:transform .48s cubic-bezier(.22,.74,.24,1);
}
.home-comedian-card{
  flex:0 0 auto;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  padding:12px 7px 10px;
  border-radius:19px;
  transition:transform .24s ease,background .24s ease,box-shadow .24s ease;
}
.home-comedian-card:hover{
  transform:translateY(-4px);
  background:linear-gradient(180deg,rgba(20,184,166,.055),rgba(255,255,255,.012));
  box-shadow:0 16px 38px rgba(0,0,0,.15);
}
.home-comedian-profile{display:flex;flex-direction:column;align-items:center;min-width:0;width:100%}
.home-comedian-avatar{
  width:132px;
  height:132px;
  border-radius:50%;
  padding:4px;
  margin:0 auto 12px;
  background:linear-gradient(145deg,#2dd4bf,rgba(255,255,255,.17),#0f766e);
  box-shadow:0 14px 34px rgba(0,0,0,.26),0 0 0 1px rgba(45,212,191,.08);
}
.home-comedian-avatar img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center 18%;
  border-radius:50%;
  border:3px solid #07100e;
}
.home-comedian-profile strong{
  display:block;
  width:100%;
  color:#f7fffd;
  font-size:14px;
  line-height:1.35;
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.home-comedian-social{
  display:flex!important;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:5px!important;
  margin-top:9px!important;
}
.home-comedian-social a{
  width:28px!important;
  height:28px!important;
  border-radius:8px!important;
}
.home-comedian-social .icon{width:13px!important;height:13px!important}

.home-carousel-arrow{
  position:absolute;
  top:50%;
  z-index:4;
  width:42px;
  height:42px;
  margin-top:-32px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.10);
  border-radius:50%;
  color:#e8fffb;
  background:rgba(9,14,13,.92);
  box-shadow:0 13px 32px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.045);
  cursor:pointer;
  backdrop-filter:blur(12px);
  transition:.22s ease;
}
.home-carousel-arrow span{font-size:29px;line-height:1;transform:translateY(-1px)}
.home-carousel-arrow.is-prev{left:2px}
.home-carousel-arrow.is-next{right:2px}
.home-carousel-arrow:hover:not(:disabled){
  color:#04120f;
  border-color:#2dd4bf;
  background:linear-gradient(135deg,#2dd4bf,#14b8a6);
  transform:scale(1.06);
  box-shadow:0 12px 30px rgba(20,184,166,.22);
}
.home-carousel-arrow:disabled{opacity:.28;cursor:not-allowed}
.home-comedian-dots{
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:14px;
}
.home-comedian-dot{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.20);
  cursor:pointer;
  transition:width .22s ease,background .22s ease,box-shadow .22s ease;
}
.home-comedian-dot:hover{background:rgba(45,212,191,.55)}
.home-comedian-dot.is-active{
  width:22px;
  background:linear-gradient(90deg,#14b8a6,#5eead4);
  box-shadow:0 0 13px rgba(20,184,166,.34);
}

@media(max-width:1050px){
  .product-grid.product-grid-home,
  .product-grid.product-grid-catalog,
  .comedian-grid-premium.comedian-grid-catalog{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .home-comedian-carousel{--home-carousel-gap:16px;padding-inline:48px}
  .home-comedian-avatar{width:118px;height:118px}
}
@media(max-width:820px){
  .product-grid.product-grid-home,
  .product-grid.product-grid-catalog,
  .comedian-grid-premium.comedian-grid-catalog{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .premium-pagination{margin-top:28px;gap:7px}
}
@media(max-width:620px){
  .product-grid.product-grid-home,
  .product-grid.product-grid-catalog,
  .comedian-grid-premium.comedian-grid-catalog{
    grid-template-columns:1fr!important;
    width:min(100%,340px)!important;
    margin-inline:auto!important;
  }
  .product-grid-home .product-card,
  .product-grid-catalog .product-card,
  .comedian-grid-catalog .comedian-card-premium{max-width:340px!important;margin-inline:auto!important}

  .premium-pagination{
    flex-wrap:nowrap;
    width:100%;
    overflow-x:auto;
    justify-content:flex-start;
    padding:5px 2px 8px;
    scrollbar-width:none;
  }
  .premium-pagination::-webkit-scrollbar{display:none}
  .pagination-pages{flex-wrap:nowrap}
  .pagination-btn{min-height:39px;padding:0 12px;font-size:11px;white-space:nowrap}
  .pagination-number{min-width:39px;min-height:39px;font-size:12px}

  /* Mobile tetap 3 komika per slide agar nyaman disentuh, dengan Next + dot. */
  .home-comedian-carousel{padding:2px 34px 32px;--home-carousel-gap:7px}
  .home-carousel-arrow{width:31px;height:31px;margin-top:-27px}
  .home-carousel-arrow span{font-size:22px}
  .home-carousel-arrow.is-prev{left:-2px}
  .home-carousel-arrow.is-next{right:-2px}
  .home-comedian-card{padding:8px 2px;border-radius:13px}
  .home-comedian-avatar{width:clamp(62px,19vw,78px);height:clamp(62px,19vw,78px);padding:3px;margin-bottom:7px}
  .home-comedian-profile strong{font-size:10.5px;line-height:1.28}
  .home-comedian-social{gap:3px!important;margin-top:6px!important}
  .home-comedian-social a{width:21px!important;height:21px!important;border-radius:6px!important}
  .home-comedian-social .icon{width:11px!important;height:11px!important}
  .home-comedian-dot{width:7px;height:7px}
  .home-comedian-dot.is-active{width:19px}
}

/* ===== REVISI v4.5 — Komika Home: halaman tetap, tidak ada card terpotong ===== */
.home-comedian-carousel{
  --home-carousel-gap:22px;
  position:relative;
  width:100%;
  padding:4px 56px 38px;
}
.home-comedian-viewport{
  width:100%;
  overflow:hidden!important;
  padding:6px 0 10px;
}
.home-comedian-track{
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:var(--home-carousel-gap);
  align-items:start;
  transform:none!important;
  transition:none!important;
  will-change:auto!important;
}
.home-comedian-card{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  flex:none!important;
}
.home-comedian-card[hidden]{display:none!important}
.home-comedian-track.is-entering .home-comedian-card:not([hidden]){
  animation:homeComedianPageIn .26s ease both;
}
@keyframes homeComedianPageIn{
  from{opacity:0;transform:translateY(7px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
.home-comedian-dots[hidden]{display:none!important}
.home-comedian-dots{
  z-index:6;
  pointer-events:auto;
}
.home-comedian-dot{
  appearance:none;
  -webkit-appearance:none;
  display:block;
  flex:0 0 auto;
}
.home-carousel-arrow{
  z-index:7;
  pointer-events:auto;
}
.home-carousel-arrow:not(:disabled){cursor:pointer}

@media(max-width:900px){
  .home-comedian-track{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:620px){
  .home-comedian-carousel{padding:3px 36px 36px;--home-carousel-gap:7px}
  .home-comedian-track{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ===== REVISI v4.8 — PRODUCT CARD CENTER + EVENT SELESAI NON-INTERAKTIF ===== */
/*
 * Flex-wrap dipakai supaya baris terakhir yang hanya berisi 1–3 card tetap
 * berada di tengah, bukan menempel ke sisi kiri seperti grid 4 kolom biasa.
 */
.product-grid.product-grid-home,
.product-grid.product-grid-catalog{
  --product-grid-gap:18px;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:var(--product-grid-gap)!important;
  width:100%!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.product-grid-home .product-card,
.product-grid-catalog .product-card{
  flex:0 1 calc((100% - (var(--product-grid-gap) * 3)) / 4)!important;
  width:calc((100% - (var(--product-grid-gap) * 3)) / 4)!important;
  max-width:calc((100% - (var(--product-grid-gap) * 3)) / 4)!important;
  min-width:0!important;
  margin:0!important;
}

/* Event selesai: tidak ada elemen produk yang bisa diklik. */
.product-card.event-finished .product-media,
.product-card.event-finished .product-media-static,
.product-card.event-finished .product-body h3,
.product-card.event-finished .product-title-link,
.product-card.event-finished .product-body h3 a{
  cursor:default!important;
  pointer-events:none!important;
}
.product-card.event-finished .product-media-static{
  user-select:none!important;
}

@media(max-width:1050px){
  .product-grid-home .product-card,
  .product-grid-catalog .product-card{
    flex-basis:calc((100% - (var(--product-grid-gap) * 2)) / 3)!important;
    width:calc((100% - (var(--product-grid-gap) * 2)) / 3)!important;
    max-width:calc((100% - (var(--product-grid-gap) * 2)) / 3)!important;
  }
}
@media(max-width:820px){
  .product-grid.product-grid-home,
  .product-grid.product-grid-catalog{--product-grid-gap:14px}
  .product-grid-home .product-card,
  .product-grid-catalog .product-card{
    flex-basis:calc((100% - var(--product-grid-gap)) / 2)!important;
    width:calc((100% - var(--product-grid-gap)) / 2)!important;
    max-width:calc((100% - var(--product-grid-gap)) / 2)!important;
  }
}
@media(max-width:620px){
  .product-grid.product-grid-home,
  .product-grid.product-grid-catalog{
    width:100%!important;
    justify-content:center!important;
  }
  .product-grid-home .product-card,
  .product-grid-catalog .product-card{
    flex:0 1 min(100%,340px)!important;
    width:min(100%,340px)!important;
    max-width:340px!important;
  }
}


/* ===== REVISI v4.9 — hapus tombol Detail produk secara permanen ===== */
/* Mendukung URL detail lama (product.php) dan clean URL baru (/produk/ID). */
/* v5.0: sembunyikan hanya tombol Detail internal yang eksplisit.
 * Jangan menyembunyikan CTA dari data Produk, walaupun link tujuan kebetulan berada di domain sendiri. */
.product-card a.detail-btn:not([data-product-cta]),
.product-card a.btn-detail:not([data-product-cta]),
.product-card a[data-product-detail]:not([data-product-cta]),
.product-card a.product-detail-link:not([data-product-cta]){
  display:none!important;
}

/* CTA Produk harus selalu menerima klik selama Event belum selesai. */
.product-card:not(.event-finished) .product-actions a[data-product-cta],
.product-card:not(.event-finished) .product-actions a.product-btn{
  pointer-events:auto!important;
  cursor:pointer!important;
  position:relative;
  z-index:3;
}

/* ===== REVISI v5.1 — PROFIL KOMIKA: 4x2 + PAGINATION + RATA KIRI ===== */
.profile-products .profile-products-head{
  justify-content:flex-start!important;
  text-align:left!important;
}
.profile-products .product-grid-profile{
  justify-content:flex-start!important;
  align-items:stretch!important;
}
.profile-products .product-grid-profile .product-card{
  margin-left:0!important;
  margin-right:0!important;
}
.profile-products .premium-pagination{
  justify-content:center!important;
}
@media(max-width:620px){
  .profile-products .product-grid-profile{
    width:100%!important;
    justify-content:flex-start!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .profile-products .product-grid-profile .product-card{
    margin-left:0!important;
    margin-right:auto!important;
  }
}

/* ===== REVISI v5.3 — PROFIL KOMIKA: JUDUL + CARD RATA TENGAH ===== */
.profile-products .profile-products-head{
  width:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  margin-bottom:24px!important;
}
.profile-products .profile-products-head > div{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
.profile-products .profile-products-head .eyebrow{
  text-align:center!important;
}
.profile-products .profile-products-head h2{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  position:relative;
  padding-bottom:14px;
}
.profile-products .profile-products-head h2::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width:54px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(20,184,166,.18),#14b8a6,#5eead4,rgba(20,184,166,.18));
  box-shadow:0 0 18px rgba(20,184,166,.24);
}
.profile-products .product-grid-profile{
  width:100%!important;
  justify-content:center!important;
  align-items:stretch!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.profile-products .product-grid-profile .product-card{
  margin-left:0!important;
  margin-right:0!important;
}
.profile-products .premium-pagination{
  justify-content:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

@media(max-width:620px){
  .profile-products{
    padding-top:30px!important;
  }
  .profile-products .profile-products-head{
    margin-bottom:18px!important;
  }
  .profile-products .profile-products-head h2{
    font-size:24px!important;
    line-height:1.18!important;
    padding-bottom:12px;
  }
  .profile-products .profile-products-head h2::after{
    width:46px;
    height:2.5px;
  }
  .profile-products .product-grid-profile{
    justify-content:center!important;
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .profile-products .product-grid-profile .product-card{
    width:min(100%,340px)!important;
    max-width:340px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
