/* Arslan Site Templates — frontend styles v1.0.0 */

:root{
  --ast-primary:#1a73e8;
  --ast-secondary:#0f172a;
  --ast-accent:#f59e0b;
  --ast-hfont:'Inter',system-ui,sans-serif;
  --ast-bfont:'Inter',system-ui,sans-serif;
  --ast-width:1100px;
  --ast-radius:12px;
  --ast-muted:#64748b;
  --ast-border:#e2e8f0;
  --ast-bg-soft:#f8fafc;
}

/* ---------- Layout ---------- */
.ast-wrap{max-width:var(--ast-width);margin:0 auto;padding:0 20px;}
.ast-page{font-family:var(--ast-bfont);color:#1e293b;line-height:1.75;}
.ast-page h1,.ast-page h2,.ast-page h3,.ast-page h4{font-family:var(--ast-hfont);line-height:1.25;color:var(--ast-secondary);}
.ast-narrow{max-width:800px;margin:40px auto;}
.ast-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;padding:40px 20px;}
.ast-main{min-width:0;}
.ast-section-title{text-align:center;margin:48px 0 24px;font-size:1.9rem;}
.ast-hint{background:var(--ast-bg-soft);border:1px dashed var(--ast-border);border-radius:var(--ast-radius);padding:12px 16px;color:var(--ast-muted);font-size:.9rem;}

/* ---------- Header / navbar ---------- */
.ast-site-header{background:#fff;border-bottom:1px solid var(--ast-border);z-index:50;}
.ast-site-header.ast-sticky{position:sticky;top:0;}
.ast-site-header.ast-scrolled{box-shadow:0 4px 18px rgba(0,0,0,.08);}
.ast-header-inner{display:flex;align-items:center;gap:24px;padding:14px 20px;}
.ast-brand{flex-shrink:0;}
.ast-brand .custom-logo{max-height:48px;width:auto;}
.ast-logo-text{font-family:var(--ast-hfont);font-weight:800;font-size:1.35rem;color:var(--ast-secondary);text-decoration:none;}
.ast-nav{margin-left:auto;}
.ast-menu{display:flex;gap:4px;list-style:none;margin:0;padding:0;}
.ast-menu a{display:block;padding:10px 14px;color:#334155;text-decoration:none;font-weight:500;border-radius:8px;}
.ast-menu a:hover{background:var(--ast-bg-soft);color:var(--ast-primary);}
.ast-menu-toggle{display:none;background:none;border:1px solid var(--ast-border);border-radius:8px;font-size:1.3rem;padding:6px 12px;cursor:pointer;}
.ast-header-cta{white-space:nowrap;}

/* ---------- Footer ---------- */
.ast-site-footer{background:var(--ast-secondary);color:#cbd5e1;margin-top:60px;}
.ast-footer-inner{display:grid;grid-template-columns:1fr auto;gap:24px;padding:44px 20px 28px;align-items:start;}
.ast-footer-brand .ast-logo-text{color:#fff;}
.ast-footer-brand .custom-logo{max-height:44px;width:auto;}
.ast-tagline{color:#94a3b8;font-size:.9rem;margin:8px 0 0;}
.ast-menu-footer{flex-direction:column;gap:2px;}
.ast-menu-footer a{color:#cbd5e1;padding:6px 0;}
.ast-menu-footer a:hover{color:#fff;background:none;}
.ast-copy{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;margin:8px 0 0;font-size:.85rem;color:#94a3b8;}

#ast-top{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border:none;border-radius:50%;background:var(--ast-primary);color:#fff;font-size:1.3rem;cursor:pointer;display:none;box-shadow:0 6px 20px rgba(0,0,0,.2);z-index:60;}
#ast-top.ast-show{display:block;}

/* ---------- Hero ---------- */
.ast-hero{background:linear-gradient(135deg,var(--ast-secondary),#1e3a5f);color:#fff;padding:72px 0;text-align:center;}
.ast-hero-sm{padding:52px 0;}
.ast-hero-saas{background:linear-gradient(135deg,var(--ast-primary),#6d28d9);}
.ast-hero h1{color:#fff;font-size:2.6rem;margin:.4em 0;}
.ast-hero-sm h1{font-size:2rem;}
.ast-kicker{text-transform:uppercase;letter-spacing:2px;font-size:.8rem;color:var(--ast-accent);font-weight:700;margin:0;}
.ast-hero-sub{color:#dbe4f0;font-size:1.1rem;max-width:640px;margin:0 auto 1.4em;}
.ast-hero-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

/* ---------- Trust bar ---------- */
.ast-trustbar{background:var(--ast-bg-soft);border-bottom:1px solid var(--ast-border);}
.ast-trustbar-inner{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;padding:14px 20px;font-weight:600;color:var(--ast-secondary);font-size:.95rem;}

/* ---------- Buttons ---------- */
.ast-btn{display:inline-block;padding:12px 26px;border-radius:10px;font-weight:700;text-decoration:none;border:2px solid transparent;cursor:pointer;font-family:var(--ast-hfont);}
.ast-btn-lg{padding:14px 34px;font-size:1.05rem;}
.ast-btn-primary{background:var(--ast-primary);color:#fff;}
.ast-btn-primary:hover{filter:brightness(.92);color:#fff;}
.ast-btn-accent{background:var(--ast-accent);color:#1e293b;}
.ast-btn-accent:hover{filter:brightness(.95);color:#1e293b;}
.ast-btn-outline{border-color:#fff;color:#fff;background:transparent;}
.ast-btn-outline:hover{background:rgba(255,255,255,.15);color:#fff;}
.ast-btn-wrap{margin:1.4em 0;}

/* ---------- Auto-arranged content ---------- */
.ast-arranged{font-size:1.05rem;}
.ast-meta{color:var(--ast-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:1px;margin:0 0 12px;}
.ast-body h2{font-size:1.7rem;margin:2em 0 .6em;padding-top:.4em;}
.ast-body h3{font-size:1.35rem;margin:1.8em 0 .5em;}
.ast-body p{margin:0 0 1.2em;}
.ast-body ul,.ast-body ol{margin:0 0 1.2em;padding-left:1.5em;}
.ast-body li{margin-bottom:.45em;}
.ast-body blockquote{border-left:4px solid var(--ast-primary);background:var(--ast-bg-soft);margin:1.5em 0;padding:1em 1.4em;border-radius:0 var(--ast-radius) var(--ast-radius) 0;}
.ast-body img{max-width:100%;height:auto;border-radius:var(--ast-radius);}
.ast-body figure{margin:1.5em 0;}
.ast-body table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:1.5em 0;}
.ast-body th,.ast-body td{border:1px solid var(--ast-border);padding:10px 14px;text-align:left;}
.ast-body th{background:var(--ast-bg-soft);}
.ast-body iframe,.ast-body video{max-width:100%;}
.ast-body a{color:var(--ast-primary);}

/* Table of contents */
.ast-toc{background:var(--ast-bg-soft);border:1px solid var(--ast-border);border-radius:var(--ast-radius);padding:18px 22px;margin:0 0 2em;}
.ast-toc-title{font-family:var(--ast-hfont);font-weight:700;margin:0 0 10px;font-size:1.05rem;}
.ast-toc ul{list-style:none;margin:0;padding:0;columns:2;column-gap:32px;}
.ast-toc li{margin-bottom:6px;break-inside:avoid;}
.ast-toc li.ast-toc-sub{padding-left:14px;font-size:.92em;}
.ast-toc a{color:#334155;text-decoration:none;}
.ast-toc a:hover{color:var(--ast-primary);text-decoration:underline;}

/* ---------- Shortcode blocks ---------- */
.ast-box{border-radius:var(--ast-radius);padding:18px 22px;margin:1.5em 0;border:1px solid var(--ast-border);}
.ast-box-title{font-weight:700;font-family:var(--ast-hfont);margin:0 0 8px;}
.ast-box-info{background:#eff6ff;border-color:#bfdbfe;}
.ast-box-success{background:#f0fdf4;border-color:#bbf7d0;}
.ast-box-warning{background:#fffbeb;border-color:#fde68a;}

.ast-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin:1.5em 0;}
.ast-col{background:#fff;border:1px solid var(--ast-border);border-radius:var(--ast-radius);padding:20px;}

.ast-pros-cons{border:1px solid var(--ast-border);border-radius:var(--ast-radius);overflow:hidden;margin:1.8em 0;}
.ast-pc-title{margin:0;padding:14px 20px;background:var(--ast-bg-soft);font-size:1.15rem;}
.ast-pc-cols{display:grid;grid-template-columns:1fr 1fr;}
.ast-pros,.ast-cons{padding:16px 20px;}
.ast-pros p,.ast-cons p{font-weight:700;margin:0 0 8px;}
.ast-pros{background:#f0fdf4;}
.ast-cons{background:#fef2f2;}
.ast-pros ul,.ast-cons ul{margin:0;padding-left:1.2em;}
.ast-pros li::marker{content:"✔ ";}
.ast-cons li::marker{content:"✖ ";}

.ast-faq{margin:1.8em 0;display:grid;gap:12px;}
.ast-faq-item{border:1px solid var(--ast-border);border-radius:var(--ast-radius);background:#fff;}
.ast-faq-item summary{cursor:pointer;padding:14px 18px;font-weight:600;font-family:var(--ast-hfont);list-style:none;}
.ast-faq-item summary::-webkit-details-marker{display:none;}
.ast-faq-item summary::after{content:"+";float:right;color:var(--ast-primary);font-weight:800;}
.ast-faq-item[open] summary::after{content:"–";}
.ast-faq-item div{padding:0 18px 16px;color:#475569;}

.ast-cta{background:linear-gradient(135deg,var(--ast-secondary),#1e3a5f);color:#fff;border-radius:16px;padding:36px 28px;text-align:center;margin:2.5em 0;}
.ast-cta-title{font-family:var(--ast-hfont);font-size:1.5rem;font-weight:700;margin:0 0 16px;}

.ast-areas{list-style:none;margin:1em 0;padding:0;display:flex;flex-wrap:wrap;gap:10px;}
.ast-areas li{background:var(--ast-bg-soft);border:1px solid var(--ast-border);border-radius:999px;padding:8px 18px;font-size:.92rem;}

.ast-pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin:2em 0;}
.ast-plan{border:1px solid var(--ast-border);border-radius:16px;padding:28px 24px;text-align:center;background:#fff;}
.ast-plan-featured{border:2px solid var(--ast-primary);box-shadow:0 12px 32px rgba(26,115,232,.15);transform:scale(1.03);}
.ast-plan-name{font-family:var(--ast-hfont);font-weight:700;font-size:1.1rem;margin:0;}
.ast-plan-price{font-size:2.2rem;font-weight:800;color:var(--ast-secondary);margin:.3em 0;}
.ast-plan-price span{font-size:1rem;color:var(--ast-muted);font-weight:400;}
.ast-plan-feats{list-style:none;margin:0 0 20px;padding:0;text-align:left;}
.ast-plan-feats li{padding:8px 0;border-bottom:1px solid var(--ast-border);}
.ast-plan-feats li::before{content:"✓ ";color:var(--ast-primary);font-weight:700;}

/* ---------- Cards / grids ---------- */
.ast-cards{display:grid;gap:22px;margin:36px 0;}
.ast-cards-3{grid-template-columns:repeat(3,1fr);}
.ast-card{background:#fff;border:1px solid var(--ast-border);border-radius:var(--ast-radius);padding:22px;text-decoration:none;color:inherit;display:block;transition:transform .15s,box-shadow .15s;}
a.ast-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.1);}
.ast-card img{border-radius:8px;margin-bottom:12px;width:100%;}
.ast-card-title{font-family:var(--ast-hfont);font-weight:700;font-size:1.1rem;margin:0 0 6px;color:var(--ast-secondary);}
.ast-card-text{color:var(--ast-muted);font-size:.93rem;margin:0;}
.ast-card-ph{background:linear-gradient(135deg,var(--ast-bg-soft),#e2e8f0);aspect-ratio:16/10;border-radius:8px;margin-bottom:12px;}

/* ---------- Sidebar widgets ---------- */
.ast-side{display:grid;gap:24px;align-content:start;}
.ast-widget{background:var(--ast-bg-soft);border:1px solid var(--ast-border);border-radius:var(--ast-radius);padding:20px;}
.ast-widget-title{font-family:var(--ast-hfont);font-weight:700;margin:0 0 12px;font-size:1.05rem;}
.ast-widget-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.ast-widget-list a{color:#334155;text-decoration:none;font-size:.93rem;}
.ast-widget-list a:hover{color:var(--ast-primary);}
.ast-widget-cta{background:linear-gradient(135deg,var(--ast-secondary),#1e3a5f);color:#fff;border:none;}
.ast-widget-cta .ast-widget-title{color:#fff;}
.ast-widget-cta p{color:#dbe4f0;}
.ast-side-phone a{font-size:1.4rem;font-weight:800;color:var(--ast-accent);text-decoration:none;}

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .ast-layout{grid-template-columns:1fr;}
  .ast-cards-3{grid-template-columns:repeat(2,1fr);}
  .ast-toc ul{columns:1;}
}
@media (max-width:640px){
  .ast-hero h1{font-size:1.9rem;}
  .ast-cards-3,.ast-pc-cols{grid-template-columns:1fr;}
  .ast-menu{display:none;position:absolute;top:100%;right:16px;background:#fff;border:1px solid var(--ast-border);border-radius:var(--ast-radius);box-shadow:0 12px 28px rgba(0,0,0,.12);flex-direction:column;min-width:220px;padding:8px;z-index:70;}
  .ast-nav{position:relative;}
  .ast-nav.ast-open .ast-menu{display:flex;}
  .ast-menu-toggle{display:block;}
  .ast-header-cta{display:none;}
  .ast-footer-inner{grid-template-columns:1fr;}
}
