/* AHN Homepage Styles — scoped to .ahn-homepage to avoid Divi conflicts */
/* Version: 1.0.0 */

/* Variables (global, safe — unique names) */
:root{
  --ahn-hp-ink:#13201B; --ahn-hp-emerald:#0E3B32; --ahn-hp-emerald2:#092620; --ahn-hp-teal:#1C6F5C;
  --ahn-hp-gold:#C9A24B; --ahn-hp-gold-soft:#E6CD8A; --ahn-hp-cream:#F6F1E6; --ahn-hp-cream2:#FCF9F1;
  --ahn-hp-card:#FFFFFF; --ahn-hp-text:#262219; --ahn-hp-muted:#6E6555; --ahn-hp-line:#E7DECC;
  --ahn-hp-maxw:1180px;
}

.ahn-homepage{
  color:var(--ahn-hp-text);
  font-family:'Hanken Grotesk',system-ui,sans-serif; font-size:17px; line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
.ahn-homepage *{box-sizing:border-box}
.ahn-homepage h1,.ahn-homepage h2,.ahn-homepage h3{font-family:'Fraunces',serif; font-weight:600; line-height:1.1; margin:0; letter-spacing:-.01em; border:none; padding:0}
.ahn-homepage a{color:inherit; text-decoration:none}
.ahn-homepage .wrap{max-width:var(--ahn-hp-maxw); margin:0 auto; padding:0 28px}
.ahn-homepage .eyebrow{font-family:'Hanken Grotesk'; font-weight:600; font-size:12.5px; letter-spacing:.22em; text-transform:uppercase}
.ahn-homepage .btn{display:inline-block; font-weight:600; font-size:15px; padding:14px 26px; border-radius:999px; cursor:pointer; transition:.25s; border:1.5px solid transparent}
.ahn-homepage .btn-gold{background:var(--ahn-hp-gold); color:#2A2008}
.ahn-homepage .btn-gold:hover{background:var(--ahn-hp-gold-soft); transform:translateY(-2px)}
.ahn-homepage .btn-ghost{border-color:rgba(255,255,255,.32); color:#fff}
.ahn-homepage .btn-ghost:hover{border-color:var(--ahn-hp-gold-soft); color:var(--ahn-hp-gold-soft)}
.ahn-homepage .btn-emerald{background:var(--ahn-hp-emerald); color:#fff}
.ahn-homepage .btn-emerald:hover{background:var(--ahn-hp-teal); transform:translateY(-2px)}

.ahn-homepage .geo{display:none !important}

/* hero */
.ahn-homepage .top{position:relative; background:radial-gradient(120% 140% at 80% -10%, #14503F 0%, var(--ahn-hp-emerald) 42%, var(--ahn-hp-emerald2) 100%); color:#EFEDE3; overflow:hidden}
.ahn-homepage .hero{position:relative; z-index:2; padding:78px 0 90px}
.ahn-homepage .hero .eyebrow{color:var(--ahn-hp-gold-soft); margin-bottom:22px; display:flex; align-items:center; gap:12px}
.ahn-homepage .hero .eyebrow .dari{font-family:'Vazirmatn'; font-size:15px; letter-spacing:0; text-transform:none; color:var(--ahn-hp-gold-soft)}
.ahn-homepage .hero h1{font-size:clamp(40px,6vw,72px); color:#fff !important; max-width:16ch; font-weight:600}
.ahn-homepage .hero h1 em{font-style:italic; color:var(--ahn-hp-gold-soft); font-weight:500}
.ahn-homepage .hero p.lede{font-size:19px; line-height:1.65; color:#CBD8D1; max-width:58ch; margin:26px 0 36px}
.ahn-homepage .hero .cta-row{display:flex; gap:14px; flex-wrap:wrap}
.ahn-homepage .trust-strip{position:relative; z-index:2; border-top:1px solid rgba(255,255,255,.12); margin-top:50px}
.ahn-homepage .trust-strip .wrap{display:flex; flex-wrap:wrap; gap:14px 40px; padding-top:26px; padding-bottom:30px}
.ahn-homepage .trust-strip .item{display:flex; align-items:center; gap:11px; font-size:14.5px; color:#CBD8D1; font-weight:500}
.ahn-homepage .trust-strip .item svg{color:var(--ahn-hp-gold-soft); flex:none}

/* generic section */
.ahn-homepage section{padding:88px 0; position:relative}
.ahn-homepage .section-head{max-width:62ch}
.ahn-homepage .section-head .eyebrow{color:var(--ahn-hp-teal); margin-bottom:16px}
.ahn-homepage .section-head h2{font-size:clamp(30px,4vw,44px); color:var(--ahn-hp-ink)}
.ahn-homepage .section-head p{color:var(--ahn-hp-muted); font-size:18px; margin:18px 0 0}

/* intro */
.ahn-homepage .intro{background:var(--ahn-hp-cream2); border-top:1px solid var(--ahn-hp-line); border-bottom:1px solid var(--ahn-hp-line)}
.ahn-homepage .intro .grid{display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:center}
.ahn-homepage .intro p{color:#3C382E; font-size:18px}
.ahn-homepage .intro .pull{background:var(--ahn-hp-emerald); color:#F1EFE4; border-radius:20px; padding:38px 36px; position:relative; overflow:hidden}
.ahn-homepage .intro .pull h3{font-size:25px; color:#fff; margin-bottom:14px}
.ahn-homepage .intro .pull p{color:#CDD8D1; font-size:16.5px; position:relative}
.ahn-homepage .intro .pull .tag{display:inline-block; margin-top:18px; font-size:13px; font-weight:600; letter-spacing:.04em; color:var(--ahn-hp-gold-soft); border:1px solid rgba(230,205,138,.4); padding:6px 14px; border-radius:999px}

/* cards */
.ahn-homepage .cards{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:54px}
.ahn-homepage .card{background:var(--ahn-hp-card); border:1px solid var(--ahn-hp-line); border-radius:20px; padding:34px 30px; transition:.3s}
.ahn-homepage .card:hover{transform:translateY(-6px); box-shadow:0 24px 50px -28px rgba(14,59,50,.4); border-color:var(--ahn-hp-gold)}
.ahn-homepage .card .ico{width:54px; height:54px; display:grid; place-items:center; border-radius:14px; background:linear-gradient(140deg,#14503F,#0E3B32); color:var(--ahn-hp-gold-soft); margin-bottom:22px}
.ahn-homepage .card .ar{font-family:'Vazirmatn'; color:var(--ahn-hp-teal); font-size:15px; font-weight:500; margin-bottom:4px}
.ahn-homepage .card h3{font-size:23px; color:var(--ahn-hp-ink); margin-bottom:10px}
.ahn-homepage .card p{color:var(--ahn-hp-muted); font-size:16px; margin:0}
.ahn-homepage .card .label{display:block; margin-top:18px; font-size:12.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--ahn-hp-teal)}

/* how it works */
.ahn-homepage .how{background:var(--ahn-hp-emerald); color:#EEF2EF; position:relative; overflow:hidden}
.ahn-homepage .how .section-head .eyebrow{color:var(--ahn-hp-gold-soft)}
.ahn-homepage .how .section-head h2{color:#fff}
.ahn-homepage .how .section-head p{color:#BCCBC4}
.ahn-homepage .steps{display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:56px; position:relative}
.ahn-homepage .step-item{position:relative; padding-top:30px}
.ahn-homepage .step-item .n{font-family:'Fraunces'; font-size:15px; font-weight:700; color:var(--ahn-hp-emerald); background:var(--ahn-hp-gold-soft); width:38px; height:38px; border-radius:50%; display:grid; place-items:center; margin-bottom:18px}
.ahn-homepage .step-item h3{font-size:19px; color:#fff; margin-bottom:8px}
.ahn-homepage .step-item p{font-size:15px; color:#B9C8C1; margin:0}
.ahn-homepage .step-item::before{content:""; position:absolute; top:48px; left:46px; right:-22px; height:1px; background:linear-gradient(90deg,rgba(230,205,138,.5),rgba(230,205,138,.08))}
.ahn-homepage .step-item:last-child::before{display:none}

/* difference */
.ahn-homepage .diff .grid{display:grid; grid-template-columns:1fr 1fr; gap:26px; margin-top:50px}
.ahn-homepage .compare{border:1px solid var(--ahn-hp-line); border-radius:20px; padding:34px 32px; background:var(--ahn-hp-card)}
.ahn-homepage .compare.bad{background:#FBF7EF}
.ahn-homepage .compare.good{background:var(--ahn-hp-emerald); color:#EFF2EF; border-color:var(--ahn-hp-emerald)}
.ahn-homepage .compare h3{font-size:21px; margin-bottom:18px; display:flex; align-items:center; gap:10px}
.ahn-homepage .compare.bad h3{color:var(--ahn-hp-muted)}
.ahn-homepage .compare.good h3{color:#fff}
.ahn-homepage .compare ul{list-style:none; margin:0; padding:0}
.ahn-homepage .compare li{display:flex; gap:12px; padding:11px 0; font-size:16px; border-top:1px solid var(--ahn-hp-line)}
.ahn-homepage .compare.good li{border-color:rgba(255,255,255,.13); color:#D2DCD6}
.ahn-homepage .compare li:first-child{border-top:none}
.ahn-homepage .compare li svg{flex:none; margin-top:3px}
.ahn-homepage .compare.bad li svg{color:#B98C8C}
.ahn-homepage .compare.good li svg{color:var(--ahn-hp-gold-soft)}

/* who */
.ahn-homepage .who{background:var(--ahn-hp-cream2); border-top:1px solid var(--ahn-hp-line)}
.ahn-homepage .who .grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:50px}
.ahn-homepage .who .item{padding:28px; border-left:2px solid var(--ahn-hp-gold); background:var(--ahn-hp-card); border-radius:0 16px 16px 0}
.ahn-homepage .who .item h3{font-size:19px; color:var(--ahn-hp-ink); margin-bottom:8px}
.ahn-homepage .who .item p{color:var(--ahn-hp-muted); font-size:15.5px; margin:0}

/* trust pillars */
.ahn-homepage .trust .pillars{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:50px}
.ahn-homepage .pillar{text-align:center; padding:36px 26px; border:1px solid var(--ahn-hp-line); border-radius:20px; background:var(--ahn-hp-card)}
.ahn-homepage .pillar .ico{width:64px; height:64px; margin:0 auto 20px; display:grid; place-items:center; border-radius:50%; background:#F3EEDF; color:var(--ahn-hp-teal)}
.ahn-homepage .pillar h3{font-size:21px; color:var(--ahn-hp-ink); margin-bottom:10px}
.ahn-homepage .pillar p{color:var(--ahn-hp-muted); font-size:15.5px; margin:0}

/* voices */
.ahn-homepage .voices{background:var(--ahn-hp-emerald2); color:#EAEFEC; position:relative; overflow:hidden}
.ahn-homepage .voices .section-head .eyebrow{color:var(--ahn-hp-gold-soft)}
.ahn-homepage .voices .section-head h2{color:#fff}
.ahn-homepage .vgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:50px}
.ahn-homepage .quote{background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); border-radius:20px; padding:30px}
.ahn-homepage .quote .mark{font-family:'Fraunces'; font-size:48px; line-height:.6; color:var(--ahn-hp-gold-soft); display:block; height:26px}
.ahn-homepage .quote p{font-size:16.5px; color:#DCE4DF; font-style:italic; font-family:'Fraunces'; font-weight:400}
.ahn-homepage .quote .attr{margin-top:18px; font-size:14px; color:#9FB3AA; font-style:normal; font-family:'Hanken Grotesk'; font-weight:600}

/* faq */
.ahn-homepage .faq .list{margin-top:46px; max-width:860px}
.ahn-homepage .qa{border-bottom:1px solid var(--ahn-hp-line)}
.ahn-homepage .qa button{width:100%; text-align:left; background:none; border:none; padding:24px 0; font-family:'Fraunces'; font-size:21px; font-weight:600; color:var(--ahn-hp-ink); cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:20px}
.ahn-homepage .qa button .pm{flex:none; width:30px; height:30px; border:1.5px solid var(--ahn-hp-gold); border-radius:50%; display:grid; place-items:center; color:var(--ahn-hp-teal); transition:.3s}
.ahn-homepage .qa[open] button .pm{background:var(--ahn-hp-gold); color:#fff; transform:rotate(45deg)}
.ahn-homepage .qa .ans{padding:0 0 26px; color:var(--ahn-hp-muted); font-size:16.5px; max-width:72ch}
.ahn-homepage .qa .ans strong{color:var(--ahn-hp-text)}

/* topics hub */
.ahn-homepage .topics{background:var(--ahn-hp-cream2); border-top:1px solid var(--ahn-hp-line)}
.ahn-homepage .topics .tgrid{display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:44px}
.ahn-homepage .topic-link{display:block; padding:22px 26px; border-left:3px solid var(--ahn-hp-gold); background:var(--ahn-hp-card); border-radius:0 14px 14px 0; transition:.2s; text-decoration:none}
.ahn-homepage .topic-link:hover{transform:translateX(4px); border-left-color:var(--ahn-hp-teal)}
.ahn-homepage .topic-link h3{font-size:17px; color:var(--ahn-hp-ink); margin-bottom:4px; font-weight:600}
.ahn-homepage .topic-link p{color:var(--ahn-hp-muted); font-size:14.5px; margin:0}
.ahn-homepage .topic-link.hub-pending{opacity:.55; pointer-events:none}
.ahn-homepage .topic-link.hub-pending h3::after{content:" \2014  coming soon"; font-family:'Hanken Grotesk'; font-weight:400; font-size:12.5px; color:var(--ahn-hp-muted); letter-spacing:0}

/* cta band */
.ahn-homepage .band{background:radial-gradient(120% 160% at 20% 0%, #14503F, var(--ahn-hp-emerald) 55%, var(--ahn-hp-emerald2)); color:#fff; text-align:center; position:relative; overflow:hidden}
.ahn-homepage .band h2{font-size:clamp(30px,4.5vw,48px); color:#fff; max-width:18ch; margin:0 auto}
.ahn-homepage .band p{color:#C5D3CC; font-size:19px; max-width:52ch; margin:22px auto 34px}

/* homepage footer */
.ahn-homepage > footer{background:var(--ahn-hp-ink); color:#A9B5AF; font-size:14.5px}
.ahn-homepage > footer .grid{display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:40px; padding:70px 0 40px}
.ahn-homepage > footer .logo img{height:42px; margin-bottom:18px}
.ahn-homepage > footer .logo .fallback{font-family:'Fraunces'; font-weight:600; font-size:20px; color:#fff; display:none}
.ahn-homepage > footer p.blurb{max-width:34ch; line-height:1.6}
.ahn-homepage > footer h4{font-family:'Hanken Grotesk'; font-size:12.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--ahn-hp-gold-soft); margin:0 0 16px}
.ahn-homepage > footer ul{list-style:none; margin:0; padding:0}
.ahn-homepage > footer li{padding:6px 0}
.ahn-homepage > footer li a:hover{color:#fff}
.ahn-homepage > footer .bottom{border-top:1px solid rgba(255,255,255,.1); padding:22px 0; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; font-size:13px; color:#7E8C85}
.ahn-homepage .disclaimer{background:#0C1612; color:#73807A; font-size:12.5px; line-height:1.6}
.ahn-homepage .disclaimer .wrap{padding:22px 28px}

/* reveal animations */
.ahn-homepage .reveal{opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease}
.ahn-homepage .reveal.in{opacity:1; transform:none}
.ahn-homepage .hero .eyebrow,.ahn-homepage .hero h1,.ahn-homepage .hero p.lede,.ahn-homepage .hero .cta-row{opacity:0; transform:translateY(20px); animation:ahn-rise .9s forwards}
.ahn-homepage .hero h1{animation-delay:.12s}
.ahn-homepage .hero p.lede{animation-delay:.24s}
.ahn-homepage .hero .cta-row{animation-delay:.36s}
@keyframes ahn-rise{to{opacity:1; transform:none}}

@media(max-width:920px){
  .ahn-homepage .intro .grid,.ahn-homepage .diff .grid{grid-template-columns:1fr; gap:34px}
  .ahn-homepage .cards,.ahn-homepage .steps,.ahn-homepage .who .grid,.ahn-homepage .trust .pillars,.ahn-homepage .vgrid,.ahn-homepage .topics .tgrid{grid-template-columns:1fr 1fr}
  .ahn-homepage .step-item::before{display:none}
  .ahn-homepage > footer .grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .ahn-homepage .cards,.ahn-homepage .steps,.ahn-homepage .who .grid,.ahn-homepage .trust .pillars,.ahn-homepage .vgrid,.ahn-homepage .topics .tgrid,.ahn-homepage > footer .grid{grid-template-columns:1fr}
  .ahn-homepage section{padding:64px 0}
  .ahn-homepage .hero{padding:50px 0 70px}
}
