/*
 Theme Name:  Astra Child – Famahoy v8
 Template:    astra
 Version:     1.4.0
 Text Domain: famahoy-astra-child
*/

:root{
  --fh-brand:#111827;
  --fh-accent:#ef4444;
  --fh-muted:#6b7280;
  --fh-card:#f8fafc;
  --fh-radius:18px;
}
html{scroll-behavior:smooth;}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial; color:var(--fh-brand);}

/* Header */
.fh-header{position:sticky; top:0; z-index:1000; background:#fff; border-bottom:1px solid #eee;}
.fh-container{max-width:1200px; margin:0 auto; padding:0 16px;}
.fh-row{display:flex; align-items:center; gap:16px; padding:12px 0;}
.fh-logo{font-weight:900; text-decoration:none; color:var(--fh-brand); font-size:24px;}
.fh-logo span{color:var(--fh-accent);}
.fh-nav ul{display:flex; gap:18px; margin:0; padding:0; list-style:none;}
.fh-nav a{display:block; padding:8px 10px; text-decoration:none; color:var(--fh-brand); font-weight:700; border-radius:10px;}
.fh-nav a:hover{background:#f3f4f6;}
.fh-search{margin-left:auto;}
.fh-search input{border:1px solid #e5e7eb; border-radius:999px; padding:8px 12px; min-width:210px;}

/* Ticker */
.fh-ticker{border-top:1px solid #eee; border-bottom:1px solid #eee; background:#fff;}
.fh-ticker .inner{display:flex; gap:18px; overflow:auto; white-space:nowrap; padding:8px 0;}
.fh-ticker a{color:var(--fh-brand); text-decoration:none; font-weight:700;}
.fh-pill{display:inline-block; background:#fee2e2; color:#991b1b; padding:4px 10px; border-radius:999px; font-size:12px; font-weight:800;}

/* Hero */
.fh-hero{margin:16px 0 8px;}
.fh-hero-card{position:relative; border-radius:22px; overflow:hidden; min-height:360px; background:#000;}
.fh-hero-card img{width:100%; height:100%; object-fit:cover; display:block; opacity:.95;}
.fh-hero-card .overlay{position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.55) 70%);}
.fh-hero-card .content{position:absolute; left:18px; right:18px; bottom:18px; color:#fff;}
.fh-hero-card .eyebrow{display:inline-block; padding:6px 10px; background:rgba(255,255,255,.18); backdrop-filter:blur(6px); border-radius:999px; font-size:12px; font-weight:800;}
.fh-hero-card h2{margin:10px 0 6px; font-size:28px; line-height:1.2; font-weight:900;}
.fh-hero-dots{display:flex; gap:8px; justify-content:center; margin:8px 0;}
.fh-hero-dot{width:10px; height:10px; border-radius:999px; background:#e5e7eb; opacity:.8;}
.fh-hero-dot.active{background:var(--fh-accent); opacity:1;}

/* Stories */
.fh-section{margin:18px 0;}
.fh-section h2{font-size:20px; margin:0 0 12px;}
.fh-stories{display:grid; grid-auto-flow:column; grid-auto-columns:minmax(160px,1fr); gap:12px; overflow-x:auto; padding-bottom:4px;}
.fh-story{border-radius:16px; overflow:hidden; background:#000; color:#fff; position:relative;}
.fh-story img{width:100%; height:230px; object-fit:cover; display:block;}
.fh-story .title{position:absolute; left:8px; right:8px; bottom:8px; font-weight:800; text-shadow:0 1px 3px rgba(0,0,0,.5);}
.fh-progress{position:absolute; left:8px; right:8px; top:8px; height:3px; background:rgba(255,255,255,.35); border-radius:999px; overflow:hidden;}
.fh-progress span{display:block; height:100%; width:0; background:#fff; border-radius:999px;}

/* Rails */
.fh-rail{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px;}
.fh-card{background:#fff; border:1px solid #eee; border-radius:16px; overflow:hidden;}
.fh-card img{width:100%; height:200px; object-fit:cover; display:block;}
.fh-card .p{padding:12px;}
.fh-title{font-weight:900; line-height:1.25; margin:2px 0 0; font-size:18px;}
.fh-title a{text-decoration:none; color:var(--fh-brand);}
.fh-meta{font-size:12px; color:var(--fh-muted);}

/* Footer */
.fh-footer{background:#0f172a; color:#e5e7eb; margin-top:26px;}
.fh-footer .inner{max-width:1200px; margin:0 auto; padding:18px 16px;}
.fh-footmenu{display:flex; justify-content:center; gap:16px; flex-wrap:wrap; list-style:none; margin:0; padding:0;}
.fh-footmenu a{color:#e5e7eb; text-decoration:none;}
.fh-copy{opacity:.85; text-align:center; font-size:14px; padding:8px 0 4px; border-top:1px solid rgba(255,255,255,.08);}

/* Simple Page Template */
.page-simple{max-width:800px; margin:0 auto; padding:16px;}
.page-simple h1{font-size:30px; margin:8px 0 12px; font-weight:900;}
.page-simple h2{font-size:20px; margin:18px 0 8px; font-weight:800;}
.page-simple p{font-size:17px; line-height:1.7; margin:12px 0;}
.page-simple ul, .page-simple ol{padding-left:18px;}
.page-simple a{color:#111827; text-decoration:underline; text-decoration-color:#ef4444;}

/* Contact Form (no plugin) */
.fh-contact{max-width:720px; margin:0 auto; padding:16px; background:#fff; border:1px solid #eee; border-radius:14px;}
.fh-contact label{display:block; font-weight:700; margin:10px 0 6px;}
.fh-input, .fh-textarea{width:100%; border:1px solid #e5e7eb; border-radius:12px; padding:10px 12px; font-size:16px;}
.fh-textarea{min-height:140px; resize:vertical;}
.fh-btn{background:#111827; color:#fff; border:none; border-radius:999px; padding:10px 16px; font-weight:800; cursor:pointer;}
.fh-btn:hover{opacity:.9;}

/* Archive grid */
.archive .fh-rail{grid-template-columns:repeat(3,minmax(0,1fr));}
@media (max-width: 980px){
  .fh-rail{grid-template-columns:repeat(2,minmax(0,1fr));}
  .archive .fh-rail{grid-template-columns:repeat(2,minmax(0,1fr));}
  .fh-hero-card{min-height:300px;}
  .fh-hero-card h2{font-size:22px;}
}
@media (max-width: 640px){
  .fh-nav{display:none;}
  .fh-hero-card{min-height:260px;}
  .fh-hero-card h2{font-size:20px;}
  .fh-card img{height:180px;}
  .archive .fh-rail{grid-template-columns:1fr;}
}
