/* ============================================================
   Avelle blog — Framer-language styles for the existing
   blog index (blg-*) and article (article-*) markup.
   Loads after ../framer.css.
   ============================================================ */
.container{max-width:1120px;margin:0 auto;padding:0 1.5rem}
.highlight{background:linear-gradient(120deg,var(--purple),var(--purple-deep));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.section-label{display:inline-flex;align-items:center;gap:.55rem;padding:6px 16px;border-radius:100px;
  background-image:var(--glass);box-shadow:var(--glass-shadow);font-size:.85rem;font-weight:500;color:var(--ink)}
.section-label::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--purple-deep);
  box-shadow:0 0 0 4px rgba(43,24,166,.14)}

/* ===== Index: hero ===== */
.blg-hero{position:relative;padding:2.5rem 0 1rem;overflow:hidden}
.blg-hero__inner{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:end}
.blg-hero__eyebrow{display:inline-flex;align-items:center;gap:.55rem;padding:6px 16px;border-radius:100px;
  background-image:var(--glass);box-shadow:var(--glass-shadow);font-size:.85rem;font-weight:500;color:var(--ink);
  margin-bottom:1.2rem}
.blg-hero h1{font-family:'Satoshi',sans-serif;font-weight:500;font-size:clamp(2.6rem,5.4vw,4.2rem);
  line-height:1.06;letter-spacing:-.035em;color:var(--ink)}
.blg-hero__accent{background:linear-gradient(120deg,var(--purple),var(--purple-deep));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.blg-hero__desc p{font-size:.98rem;line-height:1.7;color:rgba(28,22,41,.62);margin-bottom:.9rem}
.blg-hero__desc strong{color:var(--ink)}
.blg-hero__canvas{display:none}

/* ===== Index: stats ===== */
.blg-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.15rem;margin-top:2.4rem}
.blg-stats__item{padding:1.4rem 1.2rem;border-radius:22px;text-align:center;
  background:linear-gradient(180deg,#FFFFFF,#F9FAFE);border:1px solid rgba(82,78,240,.22);
  box-shadow:0 10px 28px -14px rgba(43,24,166,.18),var(--glass-shadow)}
.blg-stats__num{display:block;font-family:'Satoshi',sans-serif;font-weight:700;font-size:2rem;
  letter-spacing:-.02em;background:linear-gradient(120deg,var(--purple),var(--purple-deep));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.blg-stats__label{font-size:.82rem;font-weight:600;color:rgba(28,22,41,.55)}
.blg-stats__footnote{grid-column:1/-1;text-align:center;font-size:.8rem;color:rgba(28,22,41,.45);margin-top:.4rem}

/* ===== Index: editor's pick ===== */
.blg-pick{margin-top:3rem}
.blg-pick__card{display:grid;grid-template-columns:1.1fr 1fr;gap:0;border-radius:26px;overflow:hidden;
  text-decoration:none;background:linear-gradient(180deg,#FFFFFF,#F9FAFE);
  border:1px solid rgba(82,78,240,.22);
  box-shadow:0 24px 60px -20px rgba(43,24,166,.28),var(--glass-shadow);
  transition:transform .25s,box-shadow .25s}
.blg-pick__card:hover{transform:translateY(-4px);box-shadow:0 30px 70px -20px rgba(43,24,166,.35)}
.blg-pick__img{position:relative}
.blg-pick__img img{width:100%;height:100%;object-fit:cover;display:block}
.blg-pick__badge{position:absolute;top:14px;left:14px;z-index:2;padding:5px 14px;border-radius:100px;
  font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;
  background:linear-gradient(150deg,var(--purple),var(--purple-deep));box-shadow:0 6px 16px rgba(43,24,166,.4)}
.blg-pick__body{padding:2.2rem 2.2rem 2rem;display:flex;flex-direction:column;gap:.9rem}
.blg-pick__meta{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;color:rgba(28,22,41,.55)}
.blg-pick__cat{color:var(--purple-deep)}
.blg-pick__body h2{font-family:'Satoshi',sans-serif;font-weight:700;font-size:clamp(1.4rem,2.4vw,1.9rem);
  letter-spacing:-.02em;line-height:1.2;color:var(--ink)}
.blg-pick__body>p{font-size:.95rem;line-height:1.65;color:rgba(28,22,41,.62)}
.blg-pick__author{display:flex;align-items:center;gap:.6rem;font-size:.85rem;font-weight:600;color:var(--ink)}
.blg-pick__avatar,.blg-card__avatar{width:30px;height:30px;border-radius:50%;flex:none;display:grid;place-items:center;
  font-size:.68rem;font-weight:700;color:#fff;background:linear-gradient(150deg,var(--purple),var(--purple-deep))}
.blg-pick__cta{margin-top:auto;font-size:.9rem;font-weight:600;color:var(--purple-deep)}

/* ===== Index: posts grid + sidebar ===== */
.blg-posts{margin-top:3.5rem}
.blg-posts__head h2{font-family:'Satoshi',sans-serif;font-weight:500;font-size:clamp(1.8rem,3.4vw,2.5rem);
  letter-spacing:-.03em;color:var(--ink);margin-bottom:1.6rem}
.blg-posts__layout{display:grid;grid-template-columns:1fr 300px;gap:2rem;align-items:start}
.blg-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.15rem}
.blg-card{display:flex;flex-direction:column;border-radius:22px;overflow:hidden;text-decoration:none;
  background:linear-gradient(180deg,#FFFFFF,#F9FAFE);border:1px solid rgba(82,78,240,.22);
  box-shadow:0 10px 28px -14px rgba(43,24,166,.18),var(--glass-shadow);
  transition:transform .25s,box-shadow .25s}
.blg-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -14px rgba(43,24,166,.25)}
.blg-card__img{aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid rgba(82,78,240,.14)}
.blg-card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.blg-card:hover .blg-card__img img{transform:scale(1.04)}
.blg-card__body{display:flex;flex-direction:column;gap:.6rem;padding:1.2rem 1.3rem 1.3rem;flex:1}
.blg-card__meta{display:flex;justify-content:space-between;font-size:.74rem;font-weight:600}
.blg-card__cat{color:var(--purple-deep)}
.blg-card__date{color:rgba(28,22,41,.45)}
.blg-card__body h3{font-family:'Satoshi',sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:-.01em;
  line-height:1.3;color:var(--ink)}
.blg-card__body>p{font-size:.86rem;line-height:1.55;color:rgba(28,22,41,.6)}
.blg-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.6rem}
.blg-card__author{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;color:rgba(28,22,41,.65)}
.blg-card__read{font-size:.74rem;font-weight:600;color:rgba(28,22,41,.45)}
.blg-card__read::after{content:" min read"}

.blg-sidebar{display:flex;flex-direction:column;gap:1.15rem;position:sticky;top:1.5rem}
.blg-sidebar__widget{padding:1.4rem 1.4rem 1.5rem;border-radius:22px;
  background:linear-gradient(180deg,#FFFFFF,#F9FAFE);border:1px solid rgba(82,78,240,.22);
  box-shadow:0 10px 28px -14px rgba(43,24,166,.18),var(--glass-shadow)}
.blg-sidebar__label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;
  color:var(--purple-deep);margin-bottom:.8rem}
.blg-sidebar__widget h3{font-family:'Satoshi',sans-serif;font-weight:700;font-size:1.1rem;color:var(--ink);margin-bottom:.5rem}
.blg-sidebar__widget p{font-size:.85rem;line-height:1.6;color:rgba(28,22,41,.6)}
.blg-sidebar__cats{display:flex;flex-wrap:wrap;gap:.4rem}
.blg-sidebar__cat{padding:5px 12px;border-radius:100px;font-size:.78rem;font-weight:600;color:rgba(28,22,41,.65);
  background:rgba(82,78,240,.06);box-shadow:inset 0 0 0 1px rgba(82,78,240,.15)}
.blg-sidebar__cat--active{color:#fff;background:linear-gradient(150deg,var(--purple),var(--purple-deep));box-shadow:none}
.blg-sidebar__form{display:flex;flex-direction:column;gap:.5rem;margin-top:.9rem}
.blg-sidebar__form input{padding:.7rem .9rem;border-radius:12px;border:1px solid rgba(82,78,240,.22);
  background:rgba(255,255,255,.85);font-family:inherit;font-size:.86rem;color:var(--ink)}
.blg-sidebar__form input:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 3px rgba(82,78,240,.15)}
.blg-sidebar__form button,.blg-sidebar__btn{display:inline-flex;align-items:center;justify-content:center;
  padding:.7rem 1rem;border-radius:100px;border:none;cursor:pointer;text-decoration:none;
  font-family:inherit;font-size:.86rem;font-weight:600;color:#fff;
  background:linear-gradient(303deg,#F4F5FB -197%,var(--purple-deep) 100%);
  box-shadow:0 8px 18px -4px rgba(43,24,166,.4);transition:transform .18s}
.blg-sidebar__form button:hover,.blg-sidebar__btn:hover{transform:translateY(-1px)}
.blg-sidebar__btn{margin-top:.9rem}

/* ===== Index: bottom CTA ===== */
.blg-bottom-cta{position:relative;overflow:hidden;border-radius:34px;margin:4rem auto;padding:4rem 2rem;
  text-align:center;color:#fff;
  background:radial-gradient(80% 120% at 50% -20%, rgba(150,177,255,.55), rgba(150,177,255,0) 60%),
    linear-gradient(145deg,#2B18A6 0%,#524EF0 100%);
  box-shadow:0 30px 70px -20px rgba(43,24,166,.5)}
.blg-bottom-cta h2{font-family:'Satoshi',sans-serif;font-weight:500;font-size:clamp(1.9rem,4vw,2.9rem);
  letter-spacing:-.03em;line-height:1.12;margin-bottom:1rem}
.blg-bottom-cta h2 .highlight{background:none;-webkit-text-fill-color:currentColor;color:#CDC6FF}
.blg-bottom-cta p{max-width:560px;margin:0 auto 1.8rem;font-size:1rem;line-height:1.6;color:rgba(255,255,255,.78)}
.blg-bottom-cta .btn,.blg-bottom-cta a{display:inline-flex;align-items:center;gap:.6rem;padding:13px 28px;
  border-radius:100px;text-decoration:none;font-size:.98rem;font-weight:600;color:var(--purple-deep);background:#fff;
  box-shadow:0 12px 30px -8px rgba(0,0,0,.35);transition:transform .18s}
.blg-bottom-cta a:hover{transform:translateY(-2px)}

/* ===== Article pages ===== */
.blog-hero{padding:2.6rem 0 1.6rem;text-align:center}
.breadcrumb{display:flex;justify-content:center;gap:.5rem;font-size:.8rem;font-weight:500;
  color:rgba(28,22,41,.5);margin-bottom:1.4rem}
.breadcrumb a{color:rgba(28,22,41,.6);text-decoration:none}
.breadcrumb a:hover{color:var(--purple-deep)}
.blog-hero h1{font-family:'Satoshi',sans-serif;font-weight:500;font-size:clamp(2rem,4.6vw,3.4rem);
  line-height:1.12;letter-spacing:-.03em;color:var(--ink);max-width:880px;margin:1.2rem auto 0}
.hero-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 1.4rem;margin-top:1.4rem;
  font-size:.84rem;font-weight:500;color:rgba(28,22,41,.55)}
.hero-meta span{display:inline-flex;align-items:center;gap:.4rem}
.hero-meta svg{color:var(--purple)}
.author-link{color:var(--purple-deep);text-decoration:none;font-weight:600}
.blog-hero-image{max-width:960px;margin:1.6rem auto 0;padding:0 1.5rem}
.blog-hero-image img{width:100%;border-radius:24px;display:block;
  border:1px solid rgba(82,78,240,.2);box-shadow:0 24px 55px -20px rgba(43,24,166,.3)}

.article-layout{max-width:780px;margin:0 auto;padding:2.5rem 1.5rem 4rem}
.article-content{font-size:1rem;line-height:1.8;color:rgba(28,22,41,.75)}
.article-content h2{font-family:'Satoshi',sans-serif;font-weight:700;font-size:clamp(1.5rem,2.6vw,1.9rem);
  letter-spacing:-.02em;line-height:1.25;color:var(--ink);margin:2.6rem 0 1rem}
.article-content h3{font-family:'Satoshi',sans-serif;font-weight:700;font-size:1.22rem;letter-spacing:-.01em;
  color:var(--ink);margin:2rem 0 .8rem}
.article-content h4{font-family:'Satoshi',sans-serif;font-weight:700;font-size:1.05rem;color:var(--ink);margin:1.6rem 0 .6rem}
.article-content p{margin-bottom:1.1rem}
.article-content strong{color:var(--ink)}
.article-content a{color:var(--purple-deep);font-weight:600}
.article-content ul,.article-content ol{margin:0 0 1.2rem 1.4rem}
.article-content li{margin-bottom:.45rem}
.article-content img{max-width:100%;border-radius:18px}
.article-content table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-size:.9rem}
.article-content th,.article-content td{padding:.7rem .8rem;text-align:left;border-bottom:1px solid rgba(82,78,240,.15)}
.article-content th{font-family:'Satoshi',sans-serif;color:var(--ink);background:rgba(82,78,240,.06)}
.article-figure,.article-image{margin:1.6rem 0}
.article-figure img,.article-image img{width:100%;border-radius:18px;border:1px solid rgba(82,78,240,.18)}
.article-figure figcaption{font-size:.8rem;color:rgba(28,22,41,.5);margin-top:.5rem;text-align:center}

.tldr-box,.article-tldr{padding:1.2rem 1.4rem;border-radius:16px;margin-bottom:2rem;font-size:.95rem;line-height:1.65;
  color:rgba(28,22,41,.75);background:rgba(82,78,240,.07);
  box-shadow:inset 0 0 0 1px rgba(82,78,240,.2)}
.tldr-box strong,.article-tldr strong{display:block;font-family:'Satoshi',sans-serif;font-size:.78rem;
  letter-spacing:.08em;text-transform:uppercase;color:var(--purple-deep);margin-bottom:.4rem}

.expert-quote{margin:2rem 0;padding:1.4rem 1.6rem;border-radius:0 18px 18px 0;
  border-left:4px solid var(--purple);background:linear-gradient(180deg,#FFFFFF,#F9FAFE);
  box-shadow:var(--glass-shadow)}
.expert-quote p{font-family:'Satoshi',sans-serif;font-size:1.08rem;line-height:1.55;color:var(--ink);margin-bottom:.6rem}
.expert-quote cite{font-style:normal;font-size:.82rem;color:rgba(28,22,41,.55)}

.time-saved{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:100px;
  font-size:.85rem;font-weight:600;color:#0E7A4C;background:rgba(34,181,115,.12);margin-bottom:1rem}

/* article FAQ (button accordion, .active toggled by JS) */
.article-faq{margin-top:3rem}
.article-faq .faq-list{margin-top:1.2rem}
.faq-item{border-radius:16px;background:linear-gradient(180deg,#FFFFFF,#F9FAFE);
  border:1px solid rgba(82,78,240,.22);box-shadow:var(--glass-shadow);margin-bottom:.7rem;overflow:hidden}
.faq-question{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%;
  padding:1.05rem 1.3rem;border:none;background:transparent;cursor:pointer;text-align:left;
  font-family:'Satoshi',sans-serif;font-weight:700;font-size:1rem;color:var(--ink)}
.faq-question::after{content:"+";font-size:1.3rem;font-weight:500;color:var(--purple-deep);transition:rotate .25s}
.faq-item.active .faq-question::after{rotate:45deg}
.faq-answer{display:none;padding:0 1.3rem 1.1rem}
.faq-item.active .faq-answer{display:block}
.faq-answer p{font-size:.93rem;line-height:1.65;color:rgba(28,22,41,.65);margin:0 0 .6rem}

/* article CTA + author + related */
.article-cta{margin:3rem 0;padding:2.6rem 2rem;border-radius:26px;text-align:center;color:#fff;
  background:radial-gradient(80% 120% at 50% -20%, rgba(150,177,255,.55), rgba(150,177,255,0) 60%),
    linear-gradient(145deg,#2B18A6 0%,#524EF0 100%);
  box-shadow:0 24px 60px -20px rgba(43,24,166,.45)}
.article-cta h3{font-family:'Satoshi',sans-serif;font-weight:500;font-size:clamp(1.5rem,3vw,2rem);
  letter-spacing:-.02em;line-height:1.2;margin-bottom:.8rem}
.article-cta h3 .highlight{background:none;-webkit-text-fill-color:currentColor;color:#CDC6FF}
.article-cta p{color:rgba(255,255,255,.8);font-size:.95rem;margin-bottom:1.4rem}
.article-cta a{display:inline-flex;padding:12px 26px;border-radius:100px;text-decoration:none;
  font-size:.95rem;font-weight:600;color:var(--purple-deep);background:#fff;
  box-shadow:0 12px 30px -8px rgba(0,0,0,.3);transition:transform .18s}
.article-cta a:hover{transform:translateY(-2px)}

.author-box{display:flex;gap:1.2rem;align-items:flex-start;padding:1.5rem;border-radius:22px;margin-top:2.5rem;
  background:linear-gradient(180deg,#FFFFFF,#F9FAFE);border:1px solid rgba(82,78,240,.22);box-shadow:var(--glass-shadow)}
.author-box img,.author-avatar{width:76px;height:76px;border-radius:50%;object-fit:cover;flex:none;
  border:2px solid rgba(82,78,240,.3)}
.author-box-info h4{font-family:'Satoshi',sans-serif;font-weight:700;font-size:1.1rem;color:var(--ink)}
.author-role{font-size:.8rem;font-weight:600;color:var(--purple-deep);margin:.15rem 0 .5rem}
.author-box-info p{font-size:.88rem;line-height:1.6;color:rgba(28,22,41,.62);margin-bottom:.5rem}
.author-box-info a{font-size:.86rem;font-weight:600;color:var(--purple-deep);text-decoration:none}

.related-articles{margin-top:2.5rem}
.related-articles h3{font-family:'Satoshi',sans-serif;font-weight:700;font-size:1.3rem;color:var(--ink);margin-bottom:1rem}
.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.related-card{display:block;padding:1.2rem 1.3rem;border-radius:18px;text-decoration:none;
  background:linear-gradient(180deg,#FFFFFF,#F9FAFE);border:1px solid rgba(82,78,240,.22);
  box-shadow:var(--glass-shadow);transition:transform .2s,box-shadow .25s}
.related-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px -12px rgba(43,24,166,.28)}
.related-card h4{font-family:'Satoshi',sans-serif;font-weight:700;font-size:.98rem;line-height:1.35;
  color:var(--ink);margin-bottom:.4rem}
.related-card p{font-size:.82rem;line-height:1.5;color:rgba(28,22,41,.6)}

/* ===== Responsive ===== */
@media (max-width:980px){
  .blg-hero__inner{grid-template-columns:1fr;gap:1.4rem}
  .blg-stats{grid-template-columns:repeat(2,1fr)}
  .blg-pick__card{grid-template-columns:1fr}
  .blg-posts__layout{grid-template-columns:1fr}
  .blg-sidebar{position:static}
}
@media (max-width:560px){
  .blg-grid,.related-grid{grid-template-columns:1fr}
  .blg-stats{grid-template-columns:1fr}
  .author-box{flex-direction:column}
}

/* ============================================================
   Legacy token shim — the six long-form review articles carry
   their own inline component CSS written against the old palette.
   Mapping the old names onto Framer values re-skins them without
   rewriting each article's styles.
   ============================================================ */
:root{
  --primary:var(--purple);
  --primary-deep:var(--purple-deep);
  --primary-glow:rgba(82,78,240,.08);
  --primary-glow-strong:rgba(82,78,240,.18);
  --gradient-primary:linear-gradient(135deg,var(--purple),var(--purple-deep));
  --gradient-card:linear-gradient(145deg,rgba(82,78,240,.06),rgba(43,24,166,.02));
  --glass-border:rgba(82,78,240,.14);
  --bg-deep:#F4F5FB;
  --bg-surface:#F3F4FA;
  --bg-card:#FFFFFF;
  --border:rgba(82,78,240,.16);
  --text-primary:var(--ink);
  --text-body:rgba(28,22,41,.66);
  --text-muted:rgba(28,22,41,.5);
  --success:#0E7A4C;
  --warning:#B45309;
  --radius-sm:8px;
  --radius-md:12px;
  --radius-lg:18px;
  --radius-full:9999px;
  --ease-premium:cubic-bezier(.22,1,.36,1);
  --transition-fast:.2s var(--ease-premium);
}
