
:root{--primary:#1e40af;--accent:#f59e0b;--dark:#0f172a;--gray:#64748b;--light:#f8fafc;--white:#ffffff;--border:#e2e8f0;--radius:16px;--shadow-sm:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.06);--shadow:0 4px 20px rgba(0,0,0,.06),0 1px 3px rgba(0,0,0,.04);--shadow-lg:0 12px 40px rgba(0,0,0,.1),0 4px 12px rgba(0,0,0,.05);--shadow-xl:0 20px 60px rgba(0,0,0,.12),0 8px 20px rgba(0,0,0,.06)}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--dark);background:var(--light);line-height:1.7;font-size:16px;transition:font-size .3s ease;overflow-x:hidden}
body.font-large{font-size:18px}body.font-xlarge{font-size:20px}
body.high-contrast{background:#000!important;color:#ff0!important}
body.high-contrast .topbar,body.high-contrast footer{background:#111!important}
body.high-contrast header,body.high-contrast .svc-card,body.high-contrast .req-card,body.high-contrast .contact-card,body.high-contrast .news-card,body.high-contrast .vm-card,body.high-contrast .faq-item,body.high-contrast .stats-bar,body.high-contrast .stat-card,body.high-contrast .dl-card,body.high-contrast .antrian-cta,body.high-contrast .sp-table{background:#111!important;color:#ff0!important;border-color:#ff0!important}
body.high-contrast a,body.high-contrast .stat-num,body.high-contrast .section-head .tag,body.high-contrast .stat-big{color:#ff0!important}
body.high-contrast p,body.high-contrast li,body.high-contrast .faq-a,body.high-contrast td{color:#ccc!important}
img{max-width:100%;height:auto;display:block}a{color:var(--primary);text-decoration:none;transition:color .25s ease}a:hover{color:var(--accent)}
.container{max-width:1200px;margin:0 auto;padding:0 24px}

/* === TOP BAR === */
.topbar{background:linear-gradient(90deg,var(--dark),color-mix(in srgb,var(--dark) 85%,var(--primary)));color:rgba(255,255,255,.7);font-size:.78rem;padding:8px 0;letter-spacing:.2px}
.topbar .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}
.topbar a{color:rgba(255,255,255,.75);transition:color .2s}.topbar a:hover{color:#fff}
.topbar-contact{display:flex;gap:20px;align-items:center}

/* === ACCESSIBILITY === */
.a11y-bar{background:linear-gradient(90deg,#e2e8f0,#f1f5f9);padding:5px 0;font-size:.75rem}
.a11y-bar .container{display:flex;justify-content:flex-end;gap:6px;align-items:center}
.a11y-btn{background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:3px 12px;cursor:pointer;font-size:.75rem;font-weight:700;transition:all .2s ease;color:var(--dark)}
.a11y-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-1px)}
.a11y-label{color:var(--gray);margin-right:6px;font-weight:500}

/* === HEADER === */
header{background:rgba(255,255,255,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(226,232,240,.5)}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 0;gap:16px;position:relative}
.logo-area{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--dark);flex-shrink:0;transition:opacity .2s}
.logo-area:hover{opacity:.85}.logo-area svg{width:54px;height:54px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}
.logo-text h1{font-size:.92rem;font-weight:800;color:var(--primary);line-height:1.2;letter-spacing:.3px}
.logo-text p{font-size:.7rem;color:var(--gray);font-weight:400;margin-top:1px}
nav{display:flex;align-items:center;gap:3px;flex-wrap:wrap}
nav a{padding:9px 16px;border-radius:10px;font-size:.84rem;font-weight:600;color:var(--dark);transition:all .25s ease;white-space:nowrap;position:relative}
nav a:hover{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary)}
nav a.active{background:var(--primary);color:#fff;box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 30%,transparent)}
.hamburger{display:none;background:none;border:2px solid var(--border);cursor:pointer;padding:8px 10px;border-radius:10px;transition:all .2s}
.hamburger:hover{border-color:var(--primary)}.hamburger span{display:block;width:20px;height:2px;background:var(--dark);margin:4px 0;transition:.3s;border-radius:2px}

/* === BREADCRUMB === */
.breadcrumb{padding:16px 0;font-size:.82rem;color:var(--gray);border-bottom:1px solid var(--border)}
.breadcrumb a{color:var(--gray);font-weight:500}.breadcrumb a:hover{color:var(--primary)}.breadcrumb span{margin:0 8px;opacity:.5}

/* === HERO === */
.hero{position:relative;min-height:560px;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0}.hero-bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.95)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 95%,black) 0%,color-mix(in srgb,var(--primary) 70%,transparent) 55%,rgba(0,0,0,.2) 100%)}
.hero-content{position:relative;z-index:2;color:#fff;max-width:660px;padding:70px 0}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);padding:8px 20px;border-radius:50px;font-size:.82rem;font-weight:500;margin-bottom:20px;animation:fadeInDown .6s ease}
.hero-badge::before{content:"";width:8px;height:8px;background:#4ade80;border-radius:50%;animation:pulse 2s infinite;box-shadow:0 0 8px rgba(74,222,128,.5)}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}
@keyframes fadeInDown{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.hero h2{font-size:2.9rem;font-weight:800;line-height:1.1;margin-bottom:16px;text-shadow:0 2px 12px rgba(0,0,0,.15);animation:fadeInUp .7s ease .1s both;letter-spacing:-.5px}
.hero p{font-size:1.1rem;opacity:.9;margin-bottom:30px;line-height:1.8;animation:fadeInUp .7s ease .2s both}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;animation:fadeInUp .7s ease .3s both}

/* === BUTTONS === */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:var(--radius);font-size:.9rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;text-decoration:none;letter-spacing:.2px}
.btn-white{background:#fff;color:var(--primary);box-shadow:var(--shadow)}.btn-white:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);color:var(--primary)}
.btn-outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3);backdrop-filter:blur(4px)}.btn-outline:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.6);color:#fff;transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 80%,var(--accent)));color:#fff;box-shadow:0 4px 15px color-mix(in srgb,var(--primary) 25%,transparent)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px color-mix(in srgb,var(--primary) 35%,transparent);color:#fff}
.btn-secondary{background:#fff;color:var(--dark);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}

/* === STATS BAR === */
.stats-bar{background:#fff;margin-top:-40px;position:relative;z-index:10;border-radius:var(--radius);box-shadow:var(--shadow-lg);display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.stat-item{padding:28px 20px;text-align:center;border-right:1px solid var(--border);transition:background .2s}.stat-item:last-child{border-right:none}
.stat-item:hover{background:color-mix(in srgb,var(--primary) 3%,transparent)}
.stat-num{font-size:1.8rem;font-weight:800;color:var(--primary);line-height:1;margin-bottom:4px;letter-spacing:-.5px}
.stat-label{font-size:.78rem;color:var(--gray);font-weight:500;text-transform:uppercase;letter-spacing:.5px}

/* === SECTIONS === */
.section{padding:80px 0}
.section-head{text-align:center;margin-bottom:48px}
.section-head .tag{display:inline-block;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,transparent),color-mix(in srgb,var(--primary) 5%,transparent));color:var(--primary);padding:6px 18px;border-radius:50px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--primary) 15%,transparent)}
.section-head h2{font-size:2rem;font-weight:800;color:var(--dark);margin-bottom:12px;letter-spacing:-.3px}
.section-head p{color:var(--gray);max-width:580px;margin:0 auto;font-size:.95rem;line-height:1.7}

/* === GRIDS === */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* === SERVICE CARDS === */
.svc-card{background:#fff;border-radius:var(--radius);padding:32px 24px;text-align:center;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:all .35s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}
.svc-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent));transform:scaleX(0);transition:transform .35s ease;transform-origin:left}
.svc-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl);border-color:transparent}
.svc-card:hover::before{transform:scaleX(1)}
.svc-icon{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;transition:transform .3s ease}
.svc-card:hover .svc-icon{transform:scale(1.1)}
.svc-card h3{font-size:1rem;font-weight:700;margin-bottom:8px;color:var(--dark)}.svc-card p{font-size:.85rem;color:var(--gray);line-height:1.6}

/* === INFO BAND === */
.info-band{background:linear-gradient(135deg,var(--primary) 0%,color-mix(in srgb,var(--primary) 70%,var(--accent)) 100%);color:#fff;position:relative;overflow:hidden}
.info-band::before{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%);pointer-events:none}
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.info-grid h2{font-size:2rem;font-weight:800;margin-bottom:16px;letter-spacing:-.3px}
.info-grid>div>p{opacity:.88;margin-bottom:24px;line-height:1.85;font-size:1.02rem}
.info-list{list-style:none}.info-list li{display:flex;align-items:center;gap:12px;padding:10px 0;font-weight:500;font-size:.95rem}
.info-list li::before{content:"\2713";background:rgba(255,255,255,.15);width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;backdrop-filter:blur(4px)}
.info-img{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-xl);position:relative}
.info-img::after{content:"";position:absolute;inset:0;border-radius:var(--radius);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.info-img img{width:100%;height:360px;object-fit:cover;display:block;transition:transform .6s ease}
.info-img:hover img{transform:scale(1.03)}

/* === REQUIREMENT CARDS === */
.req-card{background:#fff;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:all .3s ease}
.req-card:hover{box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--primary) 20%,transparent)}
.req-card h3{font-size:1.05rem;font-weight:700;color:var(--primary);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.req-card ul{list-style:none}.req-card ul li{padding:8px 0 8px 24px;position:relative;font-size:.88rem;color:#555;border-bottom:1px solid #f5f5f5;transition:color .2s}
.req-card ul li:last-child{border-bottom:none}
.req-card ul li::before{content:"\25B8";position:absolute;left:2px;color:var(--primary);font-weight:bold;font-size:.7rem}
.req-card ul li:hover{color:var(--dark)}
.req-card p{font-size:.9rem;color:#555;margin-bottom:12px;line-height:1.7}

/* === CONTACT CARDS === */
.contact-card{background:#fff;border-radius:var(--radius);padding:32px;text-align:center;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:all .35s cubic-bezier(.4,0,.2,1)}
.contact-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:transparent}
.contact-icon{font-size:36px;margin-bottom:12px;display:block}.contact-card h3{font-size:1.05rem;font-weight:700;margin-bottom:8px}
.contact-card p{font-size:.88rem;color:var(--gray);line-height:1.65}

/* === NEWS CARDS === */
.news-card{background:#fff;border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:all .3s ease;position:relative;overflow:hidden}
.news-card::after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent));transform:scaleX(0);transition:transform .3s ease;transform-origin:left}
.news-card:hover{border-color:color-mix(in srgb,var(--primary) 25%,transparent);box-shadow:var(--shadow);transform:translateY(-2px)}
.news-card:hover::after{transform:scaleX(1)}
.news-date{font-size:.75rem;color:var(--gray);margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.news-card h3{font-size:1rem;font-weight:700;margin-bottom:8px;line-height:1.4;color:var(--dark)}.news-card p{font-size:.86rem;color:var(--gray);line-height:1.6}

/* === FAQ === */
.faq-item{background:#fff;border-radius:var(--radius);margin-bottom:12px;border:1px solid var(--border);overflow:hidden;transition:all .3s ease}
.faq-item:hover{border-color:color-mix(in srgb,var(--primary) 20%,transparent)}
.faq-item.open{border-color:var(--primary);box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 10%,transparent)}
.faq-q{padding:20px 24px;font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.95rem;transition:background .2s}
.faq-q:hover{background:color-mix(in srgb,var(--primary) 3%,transparent)}
.faq-q::after{content:"+";font-size:1.4rem;color:var(--primary);transition:transform .3s ease;font-weight:300;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--primary) 8%,transparent);flex-shrink:0}
.faq-item.open .faq-q::after{content:"\2212";transform:rotate(180deg)}
.faq-a{padding:0 24px 20px;font-size:.9rem;color:var(--gray);line-height:1.75;display:none}
.faq-item.open .faq-a{display:block;animation:fadeInUp .3s ease}

/* === ABOUT === */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.about-text h2{font-size:1.9rem;font-weight:800;margin-bottom:16px;color:var(--dark);letter-spacing:-.3px}
.about-text p{color:#555;margin-bottom:16px;line-height:1.85;font-size:.95rem}
.vm-card{background:#fff;border-radius:var(--radius);padding:28px;border-left:4px solid var(--primary);box-shadow:var(--shadow-sm);margin-bottom:16px;transition:all .3s ease}
.vm-card:hover{box-shadow:var(--shadow);transform:translateX(4px)}
.vm-card h3{color:var(--primary);font-size:1.08rem;margin-bottom:10px;font-weight:700}
.vm-card p,.vm-card ol{font-size:.9rem;color:#555;line-height:1.75}.vm-card ol{padding-left:20px}
.vm-card ol li{margin-bottom:6px}

/* === PAGE HERO === */
.page-hero{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 70%,var(--accent)));color:#fff;padding:52px 0;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;top:-50%;right:-25%;width:50%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 70%);pointer-events:none}
.page-hero::after{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.page-hero .container{position:relative;z-index:1}.page-hero h2{font-size:2.3rem;font-weight:800;margin-bottom:10px;letter-spacing:-.3px}
.page-hero p{opacity:.85;font-size:1.05rem;max-width:600px;line-height:1.7}

/* === BADGES === */
.badge-time{display:inline-flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary);padding:5px 14px;border-radius:50px;font-size:.8rem;font-weight:600}
.badge-free{display:inline-flex;align-items:center;gap:6px;background:#dcfce7;color:#16a34a;padding:5px 14px;border-radius:50px;font-size:.8rem;font-weight:600}

/* === NOTE BOX === */
.note-box{margin-top:36px;background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fbbf24;border-radius:var(--radius);padding:22px 26px;position:relative;overflow:hidden}
.note-box::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:#f59e0b}
.note-box p{font-size:.9rem;color:#92400e;line-height:1.7}

/* === STEPS === */
.steps-container{position:relative;max-width:720px;margin:0 auto}
.step-item{display:flex;gap:24px;margin-bottom:36px;position:relative}
.step-num{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 75%,var(--accent)));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.15rem;flex-shrink:0;position:relative;z-index:1;box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 25%,transparent)}
.step-item:not(:last-child) .step-num::after{content:"";position:absolute;top:52px;left:50%;transform:translateX(-50%);width:2px;height:calc(100% + 20px);background:linear-gradient(180deg,var(--primary),var(--border))}
.step-body{padding-top:10px;flex:1}.step-body h3{font-size:1.05rem;font-weight:700;margin-bottom:6px;color:var(--dark)}.step-body p{font-size:.88rem;color:var(--gray);line-height:1.65}

/* === TABLE === */
.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius);box-shadow:var(--shadow)}
.sp-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:var(--radius);overflow:hidden;min-width:600px}
.sp-table th{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 80%,var(--accent)));color:#fff;padding:16px 18px;text-align:left;font-size:.84rem;font-weight:600;letter-spacing:.3px}
.sp-table td{padding:14px 18px;border-bottom:1px solid var(--border);font-size:.87rem;color:#555}
.sp-table tr:last-child td{border-bottom:none}.sp-table tbody tr{transition:background .2s}.sp-table tbody tr:hover td{background:color-mix(in srgb,var(--primary) 3%,transparent)}

/* === MAKLUMAT === */
.maklumat-box{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 70%,var(--accent)));color:#fff;border-radius:var(--radius);padding:48px 40px;text-align:center;position:relative;overflow:hidden;box-shadow:var(--shadow-lg)}
.maklumat-box::before{content:"";position:absolute;top:-40px;right:-40px;width:150px;height:150px;border:3px solid rgba(255,255,255,.08);border-radius:50%}
.maklumat-box::after{content:"";position:absolute;bottom:-30px;left:-30px;width:100px;height:100px;border:3px solid rgba(255,255,255,.05);border-radius:50%}
.maklumat-box h3{font-size:1.4rem;font-weight:800;margin-bottom:18px;position:relative}.maklumat-box p{font-size:.95rem;opacity:.92;line-height:1.85;max-width:700px;margin:0 auto;position:relative}

/* === FIXED ELEMENTS === */
.zi-badge{position:fixed;bottom:90px;right:20px;z-index:998;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#059669,#10b981);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(5,150,105,.35);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none}
.zi-badge:hover{transform:scale(1.1) translateY(-2px);box-shadow:0 8px 30px rgba(5,150,105,.45);color:#fff}
.zi-badge svg{width:24px;height:24px;margin-bottom:2px}.zi-badge span{font-size:.48rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;line-height:1}
.back-top{position:fixed;bottom:20px;right:20px;z-index:999;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 80%,var(--accent)));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(0,0,0,.2);cursor:pointer;opacity:0;visibility:hidden;transition:all .35s cubic-bezier(.4,0,.2,1);border:none;font-size:1.3rem}
.back-top.visible{opacity:1;visibility:visible}.back-top:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(0,0,0,.25)}

/* === COOKIE BANNER === */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(90deg,var(--dark),color-mix(in srgb,var(--dark) 90%,var(--primary)));color:rgba(255,255,255,.85);padding:18px 24px;z-index:9999;display:none;font-size:.85rem;backdrop-filter:blur(8px);border-top:1px solid rgba(255,255,255,.05)}
.cookie-banner.show{display:block;animation:fadeInUp .4s ease}
.cookie-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.cookie-inner p{flex:1;min-width:200px;line-height:1.6}
.cookie-accept{background:linear-gradient(135deg,var(--accent),#d97706);color:#fff;border:none;padding:10px 24px;border-radius:10px;font-weight:700;cursor:pointer;font-size:.85rem;transition:all .2s;box-shadow:0 2px 8px rgba(245,158,11,.3)}
.cookie-accept:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(245,158,11,.4)}

/* === PRINT === */
.print-btn{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--primary);border:2px solid var(--primary);padding:11px 22px;border-radius:var(--radius);font-weight:600;cursor:pointer;font-size:.88rem;transition:all .25s ease}
.print-btn:hover{background:var(--primary);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 25%,transparent)}
@media print{.topbar,.a11y-bar,header,footer,.breadcrumb,.back-top,.zi-badge,.cookie-banner,.print-btn,.btn,.hero-btns,.crosslinks,.footer-network{display:none!important}.hero{min-height:auto!important;padding:20px 0!important}.section{padding:24px 0!important}}

/* === GALLERY === */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.gallery-item{border-radius:var(--radius);overflow:hidden;position:relative;aspect-ratio:4/3;cursor:pointer;box-shadow:var(--shadow-sm)}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.gallery-item:hover img{transform:scale(1.08)}
.gallery-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;padding:24px 18px 14px;font-size:.85rem;font-weight:500;transform:translateY(100%);transition:transform .35s ease}
.gallery-item:hover .gallery-caption{transform:translateY(0)}

/* === DOWNLOAD CARD === */
.dl-card{background:#fff;border-radius:var(--radius);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);transition:all .25s ease;gap:12px}
.dl-card:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-2px)}
.dl-info h4{font-size:.9rem;font-weight:700;margin-bottom:3px;color:var(--dark)}.dl-info p{font-size:.78rem;color:var(--gray)}
.dl-badge{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,transparent),color-mix(in srgb,var(--primary) 5%,transparent));color:var(--primary);padding:7px 16px;border-radius:10px;font-size:.78rem;font-weight:700;white-space:nowrap;border:1px solid color-mix(in srgb,var(--primary) 15%,transparent)}

/* === ANTRIAN CTA === */
.antrian-cta{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 4%,#fff),color-mix(in srgb,var(--accent) 4%,#fff));border:2px dashed color-mix(in srgb,var(--primary) 30%,transparent);border-radius:var(--radius);padding:40px;text-align:center;transition:all .3s ease}
.antrian-cta:hover{border-color:var(--primary);box-shadow:var(--shadow)}
.antrian-cta h3{font-size:1.3rem;font-weight:800;color:var(--primary);margin-bottom:10px}
.antrian-cta p{color:var(--gray);margin-bottom:20px;font-size:.95rem;max-width:480px;margin-left:auto;margin-right:auto}

/* === STAT CARD === */
.stat-card{background:#fff;border-radius:var(--radius);padding:28px;text-align:center;border:1px solid var(--border);transition:all .3s ease;position:relative;overflow:hidden}
.stat-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent));opacity:0;transition:opacity .3s}
.stat-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.stat-card:hover::before{opacity:1}
.stat-card .stat-big{font-size:2.2rem;font-weight:800;color:var(--primary);margin-bottom:6px;letter-spacing:-.5px}
.stat-card .stat-desc{font-size:.8rem;color:var(--gray);font-weight:500;text-transform:uppercase;letter-spacing:.5px}

/* === SOCIAL === */
.social-links{display:flex;gap:10px;margin-top:14px}
.social-links a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;transition:all .25s ease;border:1px solid rgba(255,255,255,.08)}
.social-links a:hover{background:rgba(255,255,255,.2);transform:translateY(-2px);border-color:rgba(255,255,255,.15)}
.social-links svg{width:18px;height:18px;fill:rgba(255,255,255,.7)}

/* === FOOTER === */
footer{background:linear-gradient(180deg,var(--dark),color-mix(in srgb,var(--dark) 90%,#000));color:rgba(255,255,255,.6);padding:60px 0 0;position:relative}
footer::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent),var(--primary))}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px}
.footer-brand h3{color:#fff;font-size:1.2rem;margin-bottom:12px;font-weight:700}.footer-brand p{font-size:.85rem;line-height:1.7}
.footer-links h4{color:#fff;font-size:.9rem;margin-bottom:16px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:.82rem}
.footer-links a{display:block;color:rgba(255,255,255,.5);font-size:.85rem;padding:4px 0;transition:all .2s}.footer-links a:hover{color:#fff;padding-left:4px}
.footer-network{border-top:1px solid rgba(255,255,255,.06);padding:18px 0;text-align:center}
.footer-network a{color:rgba(255,255,255,.45);font-size:.84rem;font-weight:500;transition:color .2s}.footer-network a:hover{color:var(--accent)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding:20px 0;text-align:center;font-size:.8rem;color:rgba(255,255,255,.4)}

/* === CROSSLINKS === */
.crosslinks{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-top:1px solid var(--border);padding:56px 0}
.crosslinks .section-head{margin-bottom:40px}
.crosslinks-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px}
.crosslinks-province{background:#fff;border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:all .3s ease}
.crosslinks-province:hover{box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--primary) 20%,transparent)}
.crosslinks-province h4{font-size:.95rem;font-weight:700;color:var(--primary);margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid color-mix(in srgb,var(--primary) 15%,transparent);display:flex;align-items:center;gap:8px}
.crosslinks-province h4::before{content:"";width:4px;height:16px;background:linear-gradient(180deg,var(--primary),var(--accent));border-radius:2px}
.crosslinks-items{display:flex;flex-wrap:wrap;gap:6px 8px}
.crosslinks-items a{display:inline-block;padding:5px 12px;border-radius:8px;font-size:.75rem;font-weight:500;color:var(--gray);background:color-mix(in srgb,var(--primary) 3%,#fff);border:1px solid color-mix(in srgb,var(--primary) 10%,transparent);transition:all .2s ease;white-space:nowrap}
.crosslinks-items a:hover{color:var(--primary);border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,#fff);transform:translateY(-1px);box-shadow:0 2px 6px rgba(0,0,0,.06)}
.crosslinks-items a.current{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 85%,var(--accent)));color:#fff;border-color:transparent;font-weight:700;pointer-events:none;box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 30%,transparent)}

/* === ANIMATIONS === */
.fade-up{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1)}
.fade-up.visible{opacity:1;transform:translateY(0)}

/* === RESPONSIVE === */
@media(max-width:1024px){
.grid-3{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}
.info-grid{gap:32px}.hero h2{font-size:2.4rem}
}
@media(max-width:768px){
.hamburger{display:flex;flex-direction:column;justify-content:center}
nav{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-direction:column;padding:16px;box-shadow:var(--shadow-lg);z-index:999;border-bottom:1px solid var(--border);gap:4px}
nav.open{display:flex;animation:fadeInDown .3s ease}
nav a{padding:12px 16px;border-radius:10px;font-size:.92rem;width:100%;text-align:left}
.hero h2{font-size:1.85rem;letter-spacing:-.3px}.hero{min-height:420px}.hero-content{padding:48px 0}
.stats-bar{grid-template-columns:repeat(2,1fr);margin-top:-28px}
.info-grid,.about-grid{grid-template-columns:1fr;gap:24px}
.footer-grid{grid-template-columns:1fr 1fr;gap:24px}
.grid-2{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr}
.topbar .container{flex-direction:column;text-align:center;gap:2px}
.topbar-contact{justify-content:center}
.page-hero h2{font-size:1.7rem}.page-hero{padding:36px 0}
.section{padding:56px 0}.section-head{margin-bottom:32px}.section-head h2{font-size:1.6rem}
.sp-table{min-width:500px}
.zi-badge{width:58px;height:58px;bottom:80px;right:14px}.zi-badge svg{width:20px;height:20px}.zi-badge span{font-size:.42rem}
.maklumat-box{padding:32px 24px}.info-img img{height:260px}
.about-text h2{font-size:1.5rem}
.gallery-caption{transform:translateY(0)}
.crosslinks-wrapper{grid-template-columns:1fr;gap:20px}
.crosslinks{padding:44px 0}
.logo-text h1{font-size:.82rem}.logo-text p{font-size:.65rem}
.logo-area svg{width:44px;height:44px}
.step-item{gap:16px}.step-num{width:42px;height:42px;font-size:1rem}
}
@media(max-width:480px){
.stats-bar{grid-template-columns:1fr;border-radius:12px}.stat-item{border-right:none;border-bottom:1px solid var(--border);padding:20px 16px}.stat-item:last-child{border-bottom:none}
.footer-grid{grid-template-columns:1fr;gap:20px}
.hero-btns{flex-direction:column;width:100%}.hero-btns .btn{justify-content:center;width:100%}
.hero h2{font-size:1.5rem}.hero{min-height:380px}
.container{padding:0 16px}.section{padding:44px 0}
.grid-4{grid-template-columns:1fr}
.antrian-cta{padding:28px 20px}
.cookie-inner{flex-direction:column;text-align:center}
.crosslinks-province{padding:18px}
.crosslinks-items a{font-size:.72rem;padding:4px 10px}
.page-hero h2{font-size:1.4rem}
.section-head h2{font-size:1.35rem}
.hero-content{padding:36px 0}
.logo-text h1{font-size:.78rem}.logo-area svg{width:40px;height:40px}
.breadcrumb{font-size:.75rem;padding:12px 0}
.gallery-grid{grid-template-columns:1fr}
.sp-table{min-width:420px}
}
