/*
Theme Name: Painite Blogs Editorial Child
Template: popularfx
Version: 3.0
*/

:root{
  --pb-bg:#faf7fc;
  --pb-surface:#ffffff;
  --pb-surface-2:#f4eef8;
  --pb-text:#221a2b;
  --pb-text-soft:#6d6178;
  --pb-line:#eadff1;

  --pb-accent:#5f3b8c;     /* deep amethyst */
  --pb-accent-2:#d7aeed;   /* logo lilac */
  --pb-accent-3:#f0c7eb;   /* soft blush-lilac */

  --pb-dark:#24162f;
  --pb-dark-2:#342048;

  --pb-radius:24px;
  --pb-radius-sm:18px;
  --pb-shadow:0 18px 50px rgba(45,23,65,.09);
  --pb-shadow-soft:0 8px 24px rgba(45,23,65,.06);
  --pb-max:1240px;
}

/* hide parent theme header/footer on homepage */
.home .site-header,
.home .main-header-bar-wrap,
.home footer.site-footer,
.home .ast-footer-overlay,
.home .footer-wrapper,
.home #colophon,
.home .main-footer-bar,
.home .below-footer-wrap{
  display:none !important;
}

.pb-homepage,
.pb-homepage *{box-sizing:border-box}

.pb-homepage{
  background:linear-gradient(180deg,#fcfafe 0%,#f8f4fb 100%);
  color:var(--pb-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  padding:0 0 60px;
}

.pb-wrap{
  width:min(var(--pb-max),calc(100% - 40px));
  margin:0 auto;
}

.pb-section{padding:72px 0}

.pb-eyebrow{
  display:inline-block;
  font-size:12px;
  letter-spacing:.16em;
  font-weight:700;
  text-transform:uppercase;
  color:var(--pb-accent);
  margin-bottom:18px;
}
.pb-eyebrow-light{color:#dcc6ef}

.pb-title{
  font-size:clamp(34px,4vw,64px);
  line-height:1.02;
  letter-spacing:-.045em;
  margin:0 0 20px;
  max-width:11ch;
}

.pb-subtitle,.pb-section-lead,.pb-card-text,.pb-topic-text,.pb-latest-excerpt{
  color:var(--pb-text-soft);
  line-height:1.75;
}
.pb-subtitle{font-size:18px;max-width:60ch}
.pb-section-title{
  font-size:clamp(28px,2.5vw,42px);
  line-height:1.08;
  letter-spacing:-.035em;
  margin:0 0 14px;
}
.pb-section-lead{font-size:17px;max-width:60ch;margin:0 0 32px}

.pb-btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.pb-btn{
  min-height:50px;
  padding:0 20px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-weight:600;
  font-size:15px;
  border:1px solid transparent;
  transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, background .28s ease, color .28s ease;
}
.pb-btn-primary{
  background:linear-gradient(135deg,var(--pb-accent) 0%, #7b4bb4 100%);
  color:#fff;
  box-shadow:var(--pb-shadow-soft);
}
.pb-btn-primary:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 34px rgba(95,59,140,.24);
  color:#fff;
}
.pb-btn-secondary{
  background:rgba(255,255,255,.78);
  color:var(--pb-text);
  border-color:var(--pb-line);
}
.pb-btn-secondary:hover{
  transform:translateY(-3px);
  background:#fff;
  color:var(--pb-text);
}

/* header */
.pb-topbar{padding:18px 0 8px}
.pb-nav-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(234,223,241,.95);
  border-radius:999px;
  padding:12px 18px;
  box-shadow:var(--pb-shadow-soft);
  backdrop-filter:blur(10px);
}
.pb-brand{
  text-decoration:none;
  display:flex;
  align-items:center;
  gap:14px;
  min-width:280px;
}
.pb-brand-logo{
  width:44px;
  height:44px;
  object-fit:contain;
  border-radius:14px;
  flex-shrink:0;
}
.pb-brand-copy{
  display:flex;
  flex-direction:column;
}
.pb-brand-title{
  font-size:18px;
  font-weight:700;
  letter-spacing:-.03em;
  color:var(--pb-text);
}
.pb-brand-tag{
  font-size:12px;
  color:var(--pb-text-soft);
  margin-top:3px;
}

.pb-nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
  gap:14px 18px;
}
.pb-nav > a,
.pb-nav-toggle{
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  color:var(--pb-text-soft);
  background:none;
  border:none;
  cursor:pointer;
  padding:0;
  font-family:inherit;
}
.pb-nav > a:hover,
.pb-nav-toggle:hover{
  color:var(--pb-accent);
}

.pb-nav-dropdown{
  position:relative;
}
.pb-nav-menu{
  position:absolute;
  top:calc(100% + 14px);
  left:0;
  min-width:220px;
  background:#fff;
  border:1px solid var(--pb-line);
  border-radius:18px;
  padding:10px;
  box-shadow:0 18px 40px rgba(45,23,65,.12);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:all .25s ease;
  z-index:20;
}
.pb-nav-dropdown:hover .pb-nav-menu,
.pb-nav-dropdown:focus-within .pb-nav-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.pb-nav-menu a{
  display:block;
  padding:10px 12px;
  border-radius:12px;
  color:var(--pb-text-soft);
  text-decoration:none;
  font-size:14px;
  font-weight:600;
}
.pb-nav-menu a:hover{
  background:var(--pb-surface-2);
  color:var(--pb-accent);
}

/* hero */
.pb-hero{padding-top:28px}
.pb-hero-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:34px;
  align-items:stretch;
}
.pb-hero-copy{padding:34px 0 20px}
.pb-hero-visual{position:relative;min-height:580px}
.pb-hero-media{
  position:absolute;inset:0;
  border-radius:34px;
  overflow:hidden;
  border:1px solid var(--pb-line);
  background:linear-gradient(135deg,#f6edf9 0%,#fff 55%,#f1e7f8 100%);
  box-shadow:var(--pb-shadow);
}
.pb-hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .8s cubic-bezier(.2,.8,.2,1);
}
.pb-hero-media:hover img{transform:scale(1.04)}
.pb-hero-placeholder{
  width:100%;height:100%;padding:30px;display:flex;align-items:flex-end;
  background:
    radial-gradient(circle at 20% 18%, rgba(215,174,237,.24), transparent 28%),
    radial-gradient(circle at 78% 20%, rgba(95,59,140,.16), transparent 24%),
    linear-gradient(135deg,#f6edf9 0%,#fff 48%,#f1e7f8 100%);
}
.pb-hero-placeholder-note{
  max-width:240px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(234,223,241,.95);
  border-radius:18px;
  padding:14px 16px;
  font-size:13px;
  line-height:1.6;
  color:var(--pb-text-soft);
}
.pb-float-card{
  position:absolute;
  left:-26px;
  bottom:26px;
  width:min(360px,88%);
  background:rgba(255,255,255,.98);
  border:1px solid rgba(234,223,241,.95);
  border-radius:24px;
  padding:20px;
  box-shadow:0 26px 55px rgba(45,23,65,.14);
}
.pb-float-label,.pb-kicker,.pb-meta{
  display:inline-block;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--pb-accent);
  margin-bottom:10px;
}
.pb-float-title{margin:0 0 10px;font-size:22px;line-height:1.18;letter-spacing:-.03em}
.pb-float-title a,.pb-read-link,.pb-card-title-lg a,.pb-card-title-sm a,.pb-card-title-md a,.pb-latest-title a{
  text-decoration:none;
}
.pb-float-title a,.pb-card-title-lg a,.pb-card-title-sm a,.pb-card-title-md a,.pb-latest-title a{color:var(--pb-text)}
.pb-float-title a:hover,.pb-card-title-lg a:hover,.pb-card-title-sm a:hover,.pb-card-title-md a:hover,.pb-latest-title a:hover{color:var(--pb-accent)}
.pb-read-link{font-size:15px;font-weight:600;color:var(--pb-accent)}

/* cards */
.pb-featured-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:26px;
}
.pb-featured-main,.pb-featured-mini,.pb-topic-card,.pb-value-card,.pb-latest-card{
  background:var(--pb-surface);
  border:1px solid var(--pb-line);
  box-shadow:var(--pb-shadow-soft);
  border-radius:26px;
  overflow:hidden;
}
.pb-featured-main-image,.pb-featured-mini-thumb,.pb-latest-thumb{
  overflow:hidden;
  border-radius:26px 26px 0 0;
  background:linear-gradient(135deg,#f6edf9 0%,#fff 100%);
}
.pb-featured-main-image{aspect-ratio:16/10}
.pb-featured-mini-thumb{aspect-ratio:4/3}
.pb-featured-main-image img,.pb-featured-mini-thumb img,.pb-latest-thumb img,.pb-about-media img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .8s cubic-bezier(.2,.8,.2,1);
}
.pb-featured-main:hover img,.pb-featured-mini:hover img,.pb-latest-card:hover img,.pb-about-unified:hover .pb-about-media img{
  transform:scale(1.05);
}
.pb-featured-main,.pb-featured-mini,.pb-topic-card,.pb-value-card,.pb-latest-card,.pb-about-unified{
  transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, border-color .28s ease;
}
.pb-featured-main:hover,.pb-featured-mini:hover,.pb-topic-card:hover,.pb-value-card:hover,.pb-latest-card:hover,.pb-about-unified:hover{
  transform:translateY(-6px);
  box-shadow:0 22px 50px rgba(45,23,65,.12);
  border-color:#dcc9ea;
}
.pb-featured-main-body,.pb-featured-mini-body,.pb-latest-body{padding:24px}
.pb-featured-side{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pb-card-title-lg{margin:0 0 14px;font-size:clamp(24px,2vw,34px);line-height:1.1;letter-spacing:-.03em}
.pb-card-title-sm{margin:0 0 10px;font-size:18px;line-height:1.22;letter-spacing:-.03em}
.pb-card-title-md{margin:0 0 10px;font-size:20px;line-height:1.18;letter-spacing:-.03em}

/* topics */
.pb-topic-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.pb-topic-card{padding:22px;min-height:220px}
.pb-topic-icon{
  width:50px;height:50px;border-radius:16px;
  background:linear-gradient(135deg,var(--pb-surface-2) 0%, #f9f5fc 100%);
  color:var(--pb-accent);
  display:inline-flex;align-items:center;justify-content:center;
  margin-bottom:18px;
}
.pb-topic-icon svg{width:24px;height:24px}
.pb-topic-text{margin:0}

/* value */
.pb-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pb-value-card{padding:26px}
.pb-value-number{
  width:40px;height:40px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--pb-surface-2);
  color:var(--pb-accent);
  font-size:14px;font-weight:700;margin-bottom:16px;
}

/* unified about */
.pb-about-unified{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:0;
  overflow:hidden;
  border-radius:32px;
  background:linear-gradient(135deg,var(--pb-dark) 0%,var(--pb-dark-2) 100%);
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 20px 50px rgba(45,23,65,.18);
}
.pb-about-content{
  padding:52px;
  color:#fff;
}
.pb-about-content .pb-section-title{color:#fff;max-width:12ch}
.pb-about-content .pb-section-lead{color:rgba(255,255,255,.78)}
.pb-about-content .pb-btn-secondary{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.14);
  color:#fff;
}
.pb-about-content .pb-btn-secondary:hover{background:rgba(255,255,255,.14)}
.pb-about-media{
  min-height:100%;
  position:relative;
}
.pb-about-media img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.pb-about-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:12px;
}
.pb-about-pills span{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  padding:10px 12px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
}

/* latest */
.pb-latest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pb-latest-title{margin:0 0 12px;font-size:22px;line-height:1.18;letter-spacing:-.03em}

/* footer two tone */
.pb-footer-shell{
  background:var(--pb-surface);
  border:1px solid var(--pb-line);
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--pb-shadow-soft);
}
.pb-footer-topbar{
  background:linear-gradient(135deg,var(--pb-accent) 0%, #7b4bb4 100%);
  color:#fff;
  padding:14px 22px;
  font-size:14px;
  font-weight:600;
  letter-spacing:.02em;
}
.pb-footer-main{
  padding:34px;
}
.pb-footer-top{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr .8fr;
  gap:28px;
}
.pb-footer-brand h3{margin:0 0 8px;font-size:24px;letter-spacing:-.03em}
.pb-footer-brand p{margin:0;color:var(--pb-text-soft);line-height:1.75;max-width:36ch}
.pb-footer-col h4{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin:0 0 14px;
}
.pb-footer-col ul{list-style:none;margin:0;padding:0}
.pb-footer-col li{margin-bottom:10px}
.pb-footer-col a{text-decoration:none;color:var(--pb-text-soft)}
.pb-footer-col a:hover{color:var(--pb-accent)}
.pb-footer-bottom{
  margin-top:28px;
  padding-top:18px;
  border-top:1px solid var(--pb-line);
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  color:var(--pb-text-soft);
  font-size:14px;
}

/* mobile */
@media (max-width:1180px){
  .pb-topic-grid{grid-template-columns:repeat(3,1fr)}
  .pb-latest-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:980px){
  .pb-nav-shell{border-radius:28px;flex-direction:column;align-items:flex-start}
  .pb-nav{justify-content:flex-start}
  .pb-hero-grid,.pb-featured-grid,.pb-about-unified,.pb-footer-top{grid-template-columns:1fr}
  .pb-hero-visual{min-height:420px}
  .pb-float-card{left:18px;right:18px;width:auto;bottom:18px}
  .pb-featured-side,.pb-value-grid,.pb-topic-grid{grid-template-columns:repeat(2,1fr)}
  .pb-about-content{padding:34px 26px}
  .pb-about-media{min-height:320px}
}
@media (max-width:680px){
  .pb-wrap{width:min(var(--pb-max),calc(100% - 22px))}
  .pb-section{padding:48px 0}
  .pb-topbar{padding:12px 0 4px}
  .pb-nav-shell{padding:14px 14px 16px;border-radius:24px}
  .pb-nav{gap:10px 14px}
  .pb-nav > a,.pb-nav-toggle{font-size:13px}
  .pb-nav-menu{
    left:0;
    right:auto;
    min-width:210px;
  }
  .pb-title{font-size:clamp(30px,10vw,44px);max-width:none}
  .pb-subtitle{font-size:16px}
  .pb-btn-row{flex-direction:column}
  .pb-btn{width:100%}
  .pb-hero-visual{min-height:340px}
  .pb-featured-side,.pb-topic-grid,.pb-value-grid,.pb-latest-grid{grid-template-columns:1fr}
  .pb-topic-card{min-height:auto}
  .pb-footer-main{padding:24px}
  .pb-footer-bottom{flex-direction:column}
}