/* Klub Panahan — archery-brown theme */
:root {
  --clr-bg:        #f5f0e8;
  --clr-surface:   #fffdf8;
  --clr-brown:     #6b3a1f;
  --clr-brown-dark:#4a2510;
  --clr-amber:     #c8872a;
  --clr-amber-lt:  #e8b86d;
  --clr-gold:      #d4a843;
  --clr-text:      #2e1a0e;
  --clr-text-muted:#7a5c42;
  --clr-border:    #d6c4a8;
  --clr-white:     #ffffff;
  --radius:        8px;
  --shadow:        0 2px 12px rgba(107,58,31,.15);
  --shadow-lg:     0 6px 28px rgba(107,58,31,.22);
  --font:          -apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--clr-bg);color:var(--clr-text);font-size:16px;line-height:1.65}
img{max-width:100%;display:block}
a{color:var(--clr-brown);text-decoration:none}
a:hover{color:var(--clr-amber)}
ul{list-style:none}

/* ── Demo Bar ── */
.demo-bar{background:var(--clr-brown-dark);color:#fff;text-align:center;padding:.45rem 1rem;font-size:.78rem;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem .9rem;position:sticky;top:0;z-index:1000}
.demo-bar span{opacity:.85}
.demo-bar a{color:var(--clr-amber-lt);font-weight:600;text-decoration:underline;white-space:nowrap}
.demo-bar a:hover{color:#fff}

/* ── Navigation ── */
nav{background:var(--clr-brown);box-shadow:var(--shadow)}
.nav-container{max-width:1100px;margin:0 auto;padding:.7rem 1.2rem;display:flex;align-items:center;justify-content:space-between}
.nav-logo{display:flex;align-items:center;gap:.6rem;color:#fff;font-weight:700;font-size:1.05rem;letter-spacing:.02em}
.nav-logo svg{flex-shrink:0}
.nav-links{display:flex;gap:1.5rem}
.nav-links a{color:rgba(255,255,255,.88);font-size:.9rem;font-weight:500;padding:.2rem 0;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}
.nav-links a:hover,.nav-links a.active{color:#fff;border-color:var(--clr-amber-lt)}

/* Mobile menu – checkbox hack */
.nav-toggle{display:none}
.nav-toggle-label{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:.3rem}
.nav-toggle-label span{display:block;width:24px;height:2px;background:#fff;border-radius:2px;transition:.3s}
@media(max-width:720px){
  .nav-toggle-label{display:flex}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--clr-brown-dark);flex-direction:column;gap:0;padding:.5rem 0}
  .nav-links a{padding:.75rem 1.4rem;border-bottom:1px solid rgba(255,255,255,.08)}
  .nav-toggle:checked ~ .nav-container .nav-links{display:flex}
  nav{position:relative}
}

/* ── Hero ── */
.hero{background:linear-gradient(145deg,var(--clr-brown-dark) 0%,var(--clr-brown) 55%,#8b4a25 100%);color:#fff;padding:4rem 1.2rem 3rem;text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(255,255,255,.02) 0px,rgba(255,255,255,.02) 1px,transparent 1px,transparent 20px)}
.hero-icon{margin:0 auto 1.2rem;opacity:.92}
.hero h1{font-size:clamp(1.8rem,5vw,2.8rem);font-weight:800;line-height:1.2;margin-bottom:.7rem;letter-spacing:-.01em}
.hero h1 span{color:var(--clr-amber-lt)}
.hero p{font-size:1.05rem;opacity:.88;max-width:560px;margin:0 auto 1.8rem}
.btn{display:inline-block;padding:.7rem 1.6rem;border-radius:var(--radius);font-weight:700;font-size:.95rem;cursor:pointer;transition:transform .15s,box-shadow .15s}
.btn-primary{background:var(--clr-amber);color:#fff;box-shadow:0 3px 10px rgba(200,135,42,.4)}
.btn-primary:hover{background:var(--clr-gold);color:#fff;transform:translateY(-2px);box-shadow:0 6px 18px rgba(200,135,42,.45)}
.btn-outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.6)}
.btn-outline:hover{background:rgba(255,255,255,.12);color:#fff;transform:translateY(-2px)}
.hero-btns{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap}

/* ── Section ── */
section{padding:3rem 1.2rem}
.container{max-width:1100px;margin:0 auto}
.section-label{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-amber);margin-bottom:.4rem}
.section-title{font-size:clamp(1.4rem,3.5vw,2rem);font-weight:800;color:var(--clr-brown-dark);margin-bottom:.5rem}
.section-sub{color:var(--clr-text-muted);max-width:580px;margin-bottom:2rem}
.section-center{text-align:center}
.section-center .section-sub{margin-left:auto;margin-right:auto}

/* ── Cards ── */
.cards{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.card-icon{background:linear-gradient(135deg,var(--clr-brown) 0%,var(--clr-amber) 100%);padding:1.5rem;display:flex;justify-content:center;align-items:center}
.card-body{padding:1.2rem}
.card-body h3{font-size:1.05rem;font-weight:700;margin-bottom:.4rem;color:var(--clr-brown-dark)}
.card-body p{font-size:.88rem;color:var(--clr-text-muted);line-height:1.55}

/* ── Stats ── */
.stats-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.stat-box{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:1.4rem 1rem;text-align:center;box-shadow:var(--shadow)}
.stat-box .num{font-size:2rem;font-weight:800;color:var(--clr-brown);line-height:1}
.stat-box .lbl{font-size:.8rem;color:var(--clr-text-muted);margin-top:.3rem}

/* ── Program / Schedule Table ── */
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:.88rem}
th{background:var(--clr-brown);color:#fff;padding:.65rem .9rem;text-align:left;font-weight:600}
td{padding:.6rem .9rem;border-bottom:1px solid var(--clr-border)}
tr:nth-child(even) td{background:rgba(107,58,31,.04)}
tr:hover td{background:rgba(200,135,42,.07)}

/* ── Timeline ── */
.timeline{position:relative;padding-left:2rem}
.timeline::before{content:'';position:absolute;left:.6rem;top:0;bottom:0;width:2px;background:var(--clr-border)}
.tl-item{position:relative;margin-bottom:1.8rem}
.tl-dot{position:absolute;left:-1.55rem;top:.25rem;width:14px;height:14px;border-radius:50%;background:var(--clr-amber);border:3px solid var(--clr-brown-dark)}
.tl-item h4{font-weight:700;color:var(--clr-brown-dark);margin-bottom:.2rem}
.tl-item p{font-size:.88rem;color:var(--clr-text-muted)}

/* ── Pelatih / Profil ── */
.coaches{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.coach-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:1.5rem;text-align:center;box-shadow:var(--shadow)}
.coach-avatar{width:80px;height:80px;border-radius:50%;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--clr-brown),var(--clr-amber))}
.coach-card h3{font-weight:700;color:var(--clr-brown-dark);margin-bottom:.2rem}
.coach-card .role{font-size:.8rem;font-weight:600;color:var(--clr-amber);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.4rem}
.coach-card p{font-size:.83rem;color:var(--clr-text-muted)}

/* ── Gallery placeholder ── */
.gallery{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.gal-item{border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;font-size:.78rem;color:rgba(255,255,255,.8);font-weight:600;letter-spacing:.04em}

/* ── Form ── */
.form-grid{display:grid;gap:1rem;grid-template-columns:1fr 1fr}
@media(max-width:600px){.form-grid{grid-template-columns:1fr}}
.form-group{display:flex;flex-direction:column;gap:.35rem}
.form-group.full{grid-column:1/-1}
label{font-size:.85rem;font-weight:600;color:var(--clr-brown-dark)}
input,select,textarea{border:1.5px solid var(--clr-border);border-radius:var(--radius);padding:.6rem .85rem;font-family:var(--font);font-size:.9rem;background:var(--clr-surface);color:var(--clr-text);transition:border-color .2s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--clr-amber)}
textarea{min-height:100px;resize:vertical}
.form-note{font-size:.78rem;color:var(--clr-text-muted)}

/* ── Info boxes ── */
.info-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.info-box{background:var(--clr-surface);border-left:4px solid var(--clr-amber);border-radius:0 var(--radius) var(--radius) 0;padding:1.1rem 1.2rem;box-shadow:var(--shadow)}
.info-box h4{font-size:.9rem;font-weight:700;color:var(--clr-brown-dark);margin-bottom:.3rem;display:flex;align-items:center;gap:.4rem}
.info-box p,.info-box li{font-size:.85rem;color:var(--clr-text-muted)}
.info-box ul{padding-left:1.1rem;list-style:disc}

/* ── Badge / tag ── */
.badge{display:inline-block;padding:.2rem .6rem;border-radius:99px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.badge-brown{background:var(--clr-brown);color:#fff}
.badge-amber{background:var(--clr-amber);color:#fff}
.badge-gold{background:var(--clr-gold);color:#fff}

/* ── CTA Banner ── */
.cta-banner{background:linear-gradient(120deg,var(--clr-brown-dark),var(--clr-brown));color:#fff;border-radius:var(--radius);padding:2.5rem 1.5rem;text-align:center;margin:2rem 0}
.cta-banner h2{font-size:clamp(1.2rem,3vw,1.8rem);margin-bottom:.6rem}
.cta-banner p{opacity:.85;margin-bottom:1.4rem}

/* ── Footer ── */
footer{background:var(--clr-brown-dark);color:rgba(255,255,255,.8);padding:2.5rem 1.2rem 1.2rem}
.footer-grid{max-width:1100px;margin:0 auto;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:1.5rem}
.footer-col h4{color:#fff;font-weight:700;margin-bottom:.7rem;font-size:.95rem}
.footer-col p,.footer-col li{font-size:.83rem;line-height:1.7}
.footer-col a{color:rgba(255,255,255,.75)}
.footer-col a:hover{color:var(--clr-amber-lt)}
.footer-bottom{max-width:1100px;margin:0 auto;border-top:1px solid rgba(255,255,255,.12);padding-top:1rem;font-size:.78rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.4rem;opacity:.65}

/* ── Utilities ── */
.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}
.mb-2{margin-bottom:1rem}
.text-amber{color:var(--clr-amber)}
.bg-light{background:rgba(107,58,31,.05);border-radius:var(--radius);padding:1.5rem}
.divider{border:none;border-top:1px solid var(--clr-border);margin:2rem 0}
