/*
Theme Name: PERCASI Jawa Barat
Theme URI: https://percasi-jabar.or.id/
Author: PERCASI Jawa Barat
Description: Tema WordPress modern, profesional, responsive untuk PERCASI Jawa Barat. Menggunakan menu WordPress, halaman, posting, kategori, featured image, Custom Logo, dan Customizer.
Version: 1.0.1
Text Domain: percasi-jabar
*/

:root{--navy:#07111f;--navy2:#0d1c2f;--red:#d71920;--gold:#d5a84b;--cream:#f7f4ed;--muted:#667085;--line:#e8e5de;--white:#fff;--shadow:0 18px 60px rgba(7,17,31,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",Arial,sans-serif;color:var(--navy);background:#fff;line-height:1.7}a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(7,17,31,.07)}.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--navy);color:#fff;border-radius:12px;font-size:24px;box-shadow:inset 0 0 0 2px var(--gold)}.brand-text b{font-family:"Plus Jakarta Sans",Arial,sans-serif;display:block;letter-spacing:.06em;font-size:17px}.brand-text small{display:block;color:var(--red);font-weight:800;font-size:9px;letter-spacing:.16em}.custom-logo{max-height:58px;width:auto}
.main-nav ul{display:flex;align-items:center;gap:25px;list-style:none;margin:0;padding:0}.main-nav li{margin:0}.main-nav a{font-size:14px;font-weight:600;opacity:.78}.main-nav a:hover,.main-nav .current-menu-item>a{opacity:1;color:var(--red)}.main-nav .menu-cta>a{background:var(--navy);color:#fff!important;padding:11px 16px;border-radius:10px;opacity:1}.nav-toggle{display:none;border:0;background:none;font-size:24px;cursor:pointer}
.hero{background:radial-gradient(circle at 78% 25%,rgba(213,168,75,.20),transparent 26%),linear-gradient(135deg,#f8f5ee 0%,#fff 65%);overflow:hidden}.hero-grid{min-height:700px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px}.eyebrow{display:inline-block;font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--red);margin-bottom:17px}.hero h1,.page-hero h1{font-family:"Plus Jakarta Sans",Arial,sans-serif;font-size:clamp(42px,6vw,76px);line-height:1.05;letter-spacing:-.05em;margin:0 0 24px;max-width:700px}.hero h1 span,.page-hero h1 span{color:var(--red)}.hero-copy>p{max-width:610px;font-size:18px;color:#586273}.hero-actions{display:flex;gap:12px;margin:30px 0 34px}.btn{display:inline-flex;align-items:center;gap:18px;padding:14px 20px;border-radius:11px;font-weight:700;font-size:14px}.btn-primary{background:var(--red);color:#fff;box-shadow:0 10px 25px rgba(215,25,32,.18)}.btn-ghost{border:1px solid #d9d7d0}.hero-meta{display:flex;gap:30px}.hero-meta div{padding-right:30px;border-right:1px solid #ddd9d0}.hero-meta div:last-child{border:0}.hero-meta strong{display:block;font:800 25px "Plus Jakarta Sans",Arial}.hero-meta span{font-size:11px;color:var(--muted)}
.hero-board{position:relative;min-height:480px;display:grid;place-items:center}.board-glow{position:absolute;width:390px;height:390px;border-radius:50%;background:rgba(213,168,75,.18);filter:blur(10px)}.chess-board{width:min(430px,80vw);aspect-ratio:1;background:repeating-conic-gradient(#eee7d8 0 25%,#132238 0 50%) 0/25% 25%;transform:rotate(-4deg);border:13px solid #fff;box-shadow:0 30px 80px rgba(7,17,31,.24);position:relative}.pieces{position:absolute;inset:7%;display:flex;flex-direction:column;justify-content:space-between;text-align:center;color:#fff;font-size:clamp(22px,4vw,38px);line-height:2.35;text-shadow:0 2px 2px rgba(0,0,0,.5);letter-spacing:7px}.floating-stat{position:absolute;right:0;bottom:35px;background:#fff;padding:16px 20px;border-radius:12px;box-shadow:var(--shadow)}.floating-stat span{display:block;font-size:9px;color:var(--red);font-weight:800;letter-spacing:.15em}.floating-stat b{font-size:11px}
.ticker{background:var(--navy);color:#fff}.ticker-inner{min-height:56px;display:flex;align-items:center;gap:20px;font-size:13px}.ticker-label{background:var(--red);padding:5px 9px;border-radius:5px;font-size:9px;font-weight:800;letter-spacing:.1em}.ticker-inner div{flex:1;color:#d9e0e8}.ticker-inner a{color:#f0c65c;font-weight:700}
.section{padding:105px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px}.section h2,.contact h2{font:800 clamp(32px,4vw,52px)/1.1 "Plus Jakarta Sans",Arial;letter-spacing:-.04em;margin:0}.about p{color:#5f6978;margin-top:0;font-size:16px}.about p+p{margin-top:18px}
.programs{background:var(--cream)}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:40px}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.program-card{background:#fff;padding:27px;border:1px solid var(--line);min-height:270px;position:relative;transition:.25s}.program-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.program-card .num{font-size:11px;color:var(--muted);font-weight:700}.program-card .icon{font-size:34px;margin:34px 0 16px}.program-card h3{font:700 19px "Plus Jakarta Sans",Arial;margin:0 0 8px}.program-card p{font-size:13px;color:var(--muted);margin:0}
.dark-section{background:var(--navy);color:#fff}.achievement{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.achievement p{color:#aeb8c5;max-width:570px}.text-link{font-weight:800;color:var(--red);font-size:13px}.dark-section .text-link{color:#e6ba55}.achievement-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.achievement-cards div{min-height:160px;border:1px solid rgba(255,255,255,.1);padding:22px;display:flex;flex-direction:column;justify-content:end}.achievement-cards strong{font:800 43px "Plus Jakarta Sans",Arial;color:#f0c65c}.achievement-cards span{color:#9eabb9;font-size:12px}
.news-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}.news-feature,.news-card,.archive-card{border:1px solid var(--line);background:#fff;overflow:hidden}.news-image{height:205px;position:relative;background-size:cover;background-position:center;background-image:linear-gradient(135deg,#10243b,#b8892e)}.news-feature .news-image{height:300px}.news-image img{width:100%;height:100%;object-fit:cover}.news-image span{position:absolute;left:16px;bottom:16px;background:var(--red);color:#fff;padding:5px 9px;border-radius:4px;font-size:9px;font-weight:800;letter-spacing:.1em}.news-body{padding:22px}.news-body small{font-size:9px;font-weight:800;letter-spacing:.12em;color:var(--red)}.news-body h3{font:700 19px/1.35 "Plus Jakarta Sans",Arial;margin:9px 0}.news-body p{font-size:13px;color:var(--muted);margin:0 0 17px}.news-body a{font-size:12px;font-weight:800;color:var(--navy)}
.contact{background:#f8f6f1}.contact-box{background:#fff;padding:55px 60px;border:1px solid var(--line);display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.contact-info p{color:var(--muted);margin-top:0}
.footer{background:#050d17;color:#fff;padding:65px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer p,.footer a{color:#8f9baa;font-size:13px;display:block;margin:7px 0}.footer h4{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:5px 0 18px;color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding-top:18px;color:#6f7b88;font-size:11px}
.page-hero{background:linear-gradient(135deg,var(--navy),#102942);color:#fff;padding:110px 0 95px}.page-hero p{max-width:620px;color:#b7c1cd;font-size:17px}.news-archive{padding-top:70px}.filter-row{display:flex;justify-content:space-between;gap:20px;margin-bottom:35px}.categories{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:#fff;padding:9px 15px;border-radius:8px;font:600 12px "DM Sans";cursor:pointer}.filter.active,.filter:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.search-box{border:1px solid var(--line);display:flex;align-items:center;padding:0 12px;border-radius:8px;min-width:230px;color:#8a93a0}.search-box input{border:0;outline:0;padding:10px;width:100%;font:14px "DM Sans"}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.archive-card{transition:.2s}.archive-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.empty-state{text-align:center;padding:70px;color:var(--muted)}
.article-hero{background:var(--cream);padding:80px 0 65px}.article-wrap{max-width:950px}.back-link{display:inline-block;font-size:12px;font-weight:800;margin-bottom:40px;color:var(--red)}.article-hero h1{font:800 clamp(38px,5.5vw,66px)/1.08 "Plus Jakarta Sans",Arial;letter-spacing:-.045em;max-width:980px;margin:0 0 20px}.lead{font-size:18px;color:#657080;max-width:760px}.article-meta{display:flex;gap:10px;font-size:12px;color:#7a8491;margin-top:25px}.article-content{padding:70px 0}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 280px;gap:65px;justify-content:center}.article-cover{height:430px;background:#10243b;margin-bottom:40px;overflow:hidden}.article-cover img{width:100%;height:100%;object-fit:cover}.article-layout article p{font-size:17px;color:#4f5967}.article-layout blockquote{margin:35px 0;padding:25px 28px;border-left:4px solid var(--red);background:#f7f4ed;font:700 21px/1.5 "Plus Jakarta Sans",Arial;color:var(--navy)}.aside-box{border:1px solid var(--line);padding:23px;position:sticky;top:100px}.aside-box>a{display:block;padding:16px 0;border-bottom:1px solid var(--line);font-weight:700;font-size:13px}.aside-box small{display:block;color:var(--red);font-size:9px;margin-top:6px}.share-row{border-top:1px solid var(--line);margin-top:45px;padding-top:20px;display:flex;align-items:center;gap:15px;font-size:12px;font-weight:700}.share-row button{border:1px solid var(--line);background:#fff;padding:8px 12px;border-radius:7px;cursor:pointer}
.content-page{padding:80px 0}.content-page .entry-content{max-width:850px;margin:auto}.entry-content h1,.entry-content h2,.entry-content h3{font-family:"Plus Jakarta Sans",Arial}.entry-content img{max-width:100%;height:auto}.pagination{margin-top:45px}.pagination .nav-links{display:flex;gap:8px}.pagination a,.pagination span{padding:9px 13px;border:1px solid var(--line);border-radius:7px}
@media(max-width:900px){.main-nav ul{gap:14px}.hero-grid,.split,.achievement,.contact-box{grid-template-columns:1fr;gap:45px}.hero-grid{padding-top:70px;padding-bottom:70px}.hero-board{min-height:390px}.program-grid{grid-template-columns:1fr 1fr}.news-grid{grid-template-columns:1fr 1fr}.news-feature{grid-column:span 2}.archive-grid{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:1fr}.aside-box{position:static}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.container{width:min(100% - 28px,1160px)}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px;box-shadow:0 15px 35px rgba(0,0,0,.1)}.main-nav.open{display:block}.main-nav ul{display:block}.main-nav li a{display:block;padding:9px}.hero h1,.page-hero h1{font-size:43px}.hero-meta{gap:14px}.hero-meta div{padding-right:14px}.hero-board{min-height:330px}.chess-board{width:300px}.floating-stat{right:5px;bottom:10px}.section{padding:75px 0}.program-grid,.news-grid,.archive-grid{grid-template-columns:1fr}.news-feature{grid-column:auto}.news-feature .news-image{height:230px}.filter-row{flex-direction:column}.search-box{min-width:0}.contact-box{padding:35px 25px}.footer-grid{grid-template-columns:1fr}.article-cover{height:270px}.article-layout article p{font-size:16px}}
