/* Brand shapes sit behind editable Gutenberg content, never over controls. */
.p-hero { position: relative; isolation: isolate; overflow: hidden; }
.p-hero > * { position: relative; z-index: 1; }
.p-hero::before {
  content: '';
  position: absolute;
  width: min(35vw, 470px);
  height: min(28vw, 370px);
  right: -8%;
  top: 7%;
  background: #3c88f8;
  opacity: .075;
  -webkit-mask: url('pulsia-mark.svg') center / contain no-repeat;
  mask: url('pulsia-mark.svg') center / contain no-repeat;
  pointer-events: none;
  animation: p-depth-float 12s ease-in-out infinite;
}
.p-hero::after {
  content: '';
  position: absolute;
  width: 400px;
  height: 330px;
  left: -90px;
  bottom: 0;
  background-image: radial-gradient(#8db7ef 1.2px, transparent 1.2px);
  background-size: 18px 18px;
  opacity: .28;
  -webkit-mask-image: radial-gradient(ellipse, #000 8%, transparent 69%);
  mask-image: radial-gradient(ellipse, #000 8%, transparent 69%);
  pointer-events: none;
}
.p-hero-grid::before {
  content: '';
  position: absolute;
  z-index: -1;
  width: 380px;
  height: 380px;
  top: 2%;
  left: 3%;
  border: 1px solid #dceaff;
  border-radius: 50%;
  box-shadow: 0 0 0 38px #e9f2ff55, 0 0 0 87px #eef5ff66;
  pointer-events: none;
  animation: p-depth-breathe 9s ease-in-out infinite;
}
.p-article-card { box-sizing: border-box; padding: 0 24px 25px; }
.p-article-card > .p-article-visual { box-sizing: border-box; width: calc(100% + 48px); margin: 0 -24px !important; }
.p-article-card > :not(.p-article-visual) { margin-inline: 0 !important; }
.p-article-card > p:last-child { margin-bottom: 0; }
.p-features, .p-insights, .p-steps, .p-channels, .p-stories, .p-articles,
.ps-page-hero, .ps-features-directory, .ps-wp-steps, .ps-knowledge-types,
.ps-pricing-main, .ps-contact-main { isolation: isolate; overflow: hidden; }

.p-features > *, .p-insights > *, .p-steps > *, .p-channels > *,
.p-stories > *, .p-articles > *, .ps-page-hero > *,
.ps-features-directory > *, .ps-wp-steps > *, .ps-knowledge-types > *,
.ps-pricing-main > *, .ps-contact-main > * { position: relative; z-index: 1; }

.p-features::before, .p-steps::before, .ps-page-hero::before,
.ps-features-directory::before, .ps-knowledge-types::before {
  content: '';
  position: absolute;
  width: 390px;
  height: 290px;
  background: #3c88f8;
  opacity: .045;
  -webkit-mask: url('pulsia-mark.svg') center / contain no-repeat;
  mask: url('pulsia-mark.svg') center / contain no-repeat;
  pointer-events: none;
  animation: p-depth-float 11s ease-in-out infinite;
}
.p-features::before { left: -115px; bottom: 6%; }
.p-steps::before { right: -95px; top: 12%; opacity: .055; animation-delay: -4s; }
.ps-page-hero::before { left: -110px; top: 12%; opacity: .042; animation-delay: -3s; }
.ps-features-directory::before { left: -95px; bottom: 10%; }
.ps-knowledge-types::before { right: -90px; top: 12%; animation-delay: -5s; }

.p-features::after, .p-channels::before, .p-articles::before,
.ps-page-hero::after, .ps-pricing-main::before, .ps-contact-main::before {
  content: '';
  position: absolute;
  width: 310px;
  height: 260px;
  background-image: radial-gradient(#82a9e8 1px, transparent 1px);
  background-size: 17px 17px;
  opacity: .2;
  -webkit-mask-image: radial-gradient(ellipse, #000 16%, transparent 72%);
  mask-image: radial-gradient(ellipse, #000 16%, transparent 72%);
  pointer-events: none;
}
.p-features::after { right: -60px; top: 3%; }
.p-channels::before { right: -70px; top: 22%; }
.p-articles::before { left: -65px; top: 8%; }
.ps-page-hero::after { right: -80px; bottom: 3%; }
.ps-pricing-main::before { left: -65px; top: 9%; }
.ps-contact-main::before { right: -60px; top: 12%; }

.p-insights::before, .p-stories::before, .ps-wp-steps::before {
  content: '';
  position: absolute;
  width: 260px;
  height: 260px;
  border: 1px solid #dbe9fc;
  border-radius: 50%;
  box-shadow: 0 0 0 35px #eaf3ff38, 0 0 0 85px #eaf3ff1c;
  pointer-events: none;
  animation: p-depth-breathe 8s ease-in-out infinite;
}
.p-insights::before { right: -140px; top: 8%; }
.p-stories::before { left: -140px; bottom: 7%; animation-delay: -3s; }
.ps-wp-steps::before { right: -140px; bottom: 4%; animation-delay: -5s; }

/* A product-led section, using the real panel's source / inbox / widget model. */
.p-panel-tour {
  padding: 105px 24px 104px;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background:
    radial-gradient(ellipse 43% 43% at 85% 12%, #1e59af5c, transparent 74%),
    radial-gradient(ellipse 32% 37% at 7% 86%, #0d8fbc42, transparent 75%),
    linear-gradient(125deg, #08172f, #0e2344 58%, #07172f);
}
.p-panel-tour::before {
  content: '';
  position: absolute;
  z-index: 0;
  inset: 0;
  background-image: linear-gradient(#ffffff0b 1px, transparent 1px), linear-gradient(90deg, #ffffff0b 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 32%, #000 70%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 32%, #000 70%, transparent 100%);
  pointer-events: none;
}
.p-panel-tour::after {
  content: '';
  position: absolute;
  z-index: 0;
  width: 520px;
  height: 370px;
  left: -210px;
  top: -130px;
  background: #65a8ff;
  opacity: .085;
  -webkit-mask: url('pulsia-mark.svg') center / contain no-repeat;
  mask: url('pulsia-mark.svg') center / contain no-repeat;
  animation: p-depth-float 13s ease-in-out infinite;
  pointer-events: none;
}
.p-panel-tour > * { position: relative; z-index: 1; }
.p-tour-eyebrow { width: fit-content; margin: 0 auto 16px !important; padding: 7px 14px; border: 1px solid #7eb4ff55; border-radius: 999px; background: #ffffff0c; color: #9dccff; font-size: 11px; font-weight: 750; }
.p-tour-title { max-width: 760px; margin: 0 auto 17px; color: #fff; font-size: clamp(33px, 3.4vw, 49px); font-weight: 850; line-height: 1.35; letter-spacing: -.05em; }
.p-tour-title span { color: #8ebcff; }
.p-tour-description { max-width: 650px; margin: 0 auto 46px; color: #b7c8e1; font-size: 14px; line-height: 2.15; }
.p-tour-grid { max-width: 1180px; gap: 17px !important; margin: 0 auto !important; align-items: stretch !important; }
.p-tour-grid > .wp-block-column { min-width: 0; display: flex; }
.p-tour-card { box-sizing: border-box; width: 100%; min-height: 347px; padding: 21px; border: 1px solid #dbe7fa; border-radius: 17px; background: #fff; color: #1a2e4e; box-shadow: 0 24px 55px #030d2170; transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease; }
.p-tour-grid > .wp-block-column:nth-child(2) .p-tour-card { transform: translateY(-11px); }
.p-tour-grid > .wp-block-column:nth-child(2) .p-tour-card:hover { transform: translateY(-16px); }
.p-tour-card:hover { transform: translateY(-5px); box-shadow: 0 30px 65px #030d2190; }
.p-tour-card-head { align-items: center !important; gap: 8px !important; margin-bottom: 4px; }
.p-tour-card-head h3 { margin: 0; color: #172d50; font-size: 17px; font-weight: 820; }
.p-tour-card-head p { margin: 0; color: #7c91ad; font-size: 10px; }
.p-tour-card-hint { margin: 0 0 20px; color: #8b9bb0; font-size: 10px; line-height: 1.8; }
.p-tour-source-list, .p-tour-thread-list { display: grid; gap: 8px; }
.p-tour-source { display: flex; align-items: center !important; flex-wrap: nowrap !important; gap: 9px !important; padding: 11px 10px; border: 1px solid #edf2f9; border-radius: 10px; background: #fbfdff; }
.p-tour-source-icon { display: grid; place-items: center; flex: none; width: 31px; height: 31px; margin: 0; border-radius: 8px; background: #e7f1ff; color: #2877dc; font-size: 15px; font-weight: 900; }
.p-tour-source-icon--mint { background: #e4f8f3; color: #18a188; }
.p-tour-source-icon--gold { background: #fff3dc; color: #bd8432; }
.p-tour-source-copy { min-width: 0; flex: 1; }
.p-tour-source-copy h4 { margin: 0 0 2px; color: #263b5a; font-size: 11px; font-weight: 780; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.p-tour-source-copy p { margin: 0; color: #91a0b4; font-size: 9px; }
.p-tour-ready { flex: none; margin: 0; color: #139475; font-size: 9px; font-weight: 750; }
.p-tour-ready::before { content: '●'; padding-left: 4px; font-size: 7px; }
.p-tour-live-count { padding: 5px 8px; border-radius: 6px; background: #fff4e5; color: #a46a18 !important; font-size: 9px !important; }
.p-tour-thread { padding: 13px 14px; border: 1px solid #edf1f8; border-radius: 10px; background: #fff; }
.p-tour-thread--active { border-color: #cfe1ff; background: #f6faff; }
.p-tour-thread-top { align-items: center !important; gap: 6px !important; }
.p-tour-thread-top p { margin: 0; color: #a0aec0; font-size: 9px; }
.p-tour-thread-top .p-tour-thread-name { color: #243e60; font-size: 11px; font-weight: 800; }
.p-tour-thread--active .p-tour-thread-name { color: #176fe0; }
.p-tour-thread-preview { margin: 7px 0 9px; color: #657995; font-size: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.p-tour-thread-meta { width: fit-content; margin: 0; padding: 4px 7px; border-radius: 6px; background: #fff1dd; color: #a66b18; font-size: 9px; font-weight: 750; }
.p-tour-thread-meta--open { background: #e9f2ff; color: #2476d7; }
.p-tour-thread-meta span { color: #8fa0b7; font-weight: 500; }
.p-tour-widget-mini { overflow: hidden; height: 222px; border: 1px solid #dce7f6; border-radius: 12px; background: #f5f8fd; box-shadow: 0 8px 18px #193b650d; }
.p-tour-widget-top { display: flex; justify-content: space-between; gap: 6px; margin: 0; padding: 12px 13px; background: #1877ff; color: #fff; font-size: 10px; font-weight: 800; }
.p-tour-widget-top span { opacity: .85; font-size: 8px; font-weight: 500; }
.p-tour-widget-bubble { width: fit-content; max-width: 75%; margin: 16px 13px 10px; padding: 8px 10px; border: 1px solid #e1e8f2; border-radius: 10px 10px 10px 4px; background: #fff; color: #354b67; font-size: 10px; }
.p-tour-widget-chip { width: fit-content; margin: 0 13px; padding: 6px 10px; border: 1px solid #d5e4f8; border-radius: 999px; background: #fff; color: #53709a; font-size: 9px; }
.p-tour-widget-input { display: flex; justify-content: space-between; align-items: center; margin: 32px 12px 0; padding: 8px 10px; border: 1px solid #e0e8f3; border-radius: 9px; background: #fff; color: #a1aec0; font-size: 9px; }
.p-tour-widget-input span { display: grid; place-items: center; width: 21px; height: 21px; border-radius: 50%; background: #1877ff; color: #fff; font-size: 12px; }
.p-tour-links { max-width: 1180px; margin: 37px auto 0 !important; gap: 24px !important; }
.p-tour-links > .wp-block-column { padding: 0 8px; border-right: 1px solid #ffffff2b; }
.p-tour-links > .wp-block-column:first-child { border-right: 0; }
.p-tour-links p:first-child { margin: 0 0 8px; color: #78b4ff; font-size: 10px; font-weight: 750; }
.p-tour-links h3 { margin: 0 0 7px; color: #fff; font-size: 16px; font-weight: 800; }
.p-tour-links p:last-child { max-width: 320px; margin: 0; color: #a7bbd8; font-size: 11px; line-height: 2; }
.p-tour-links a { color: #a6ceff; font-weight: 750; white-space: nowrap; }
.p-tour-links a:hover { color: #fff; }

@keyframes p-depth-float { 0%,100% { translate: 0 0; } 50% { translate: 12px -11px; } }
@keyframes p-depth-breathe { 0%,100% { opacity: .45; scale: 1; } 50% { opacity: .85; scale: 1.04; } }
@media (max-width: 900px) { .p-tour-grid { flex-wrap: wrap !important; } .p-tour-grid > .wp-block-column { min-width: 46%; flex-basis: 46% !important; } .p-tour-grid > .wp-block-column:nth-child(2) .p-tour-card, .p-tour-grid > .wp-block-column:nth-child(2) .p-tour-card:hover { transform: none; } .p-tour-card { min-height: 320px; } }
@media (max-width: 700px) { .p-panel-tour { padding: 74px 20px 80px; } .p-tour-title { font-size: 33px; } .p-tour-description { font-size: 12px; } .p-tour-grid > .wp-block-column { min-width: 100%; flex-basis: 100% !important; } .p-tour-card { min-height: 0; } .p-tour-links { display: flex; flex-direction: column; gap: 20px !important; } .p-tour-links > .wp-block-column { width: 100%; padding: 0 0 0 14px; } .p-hero::before { width: 210px; height: 170px; right: -65px; top: 6%; opacity: .06; } .p-hero::after { width: 230px; height: 200px; left: -80px; bottom: 4%; opacity: .17; } .p-hero-grid::before { width: 220px; height: 220px; left: -75px; top: 38%; opacity: .45; } .p-features::before, .p-steps::before, .ps-page-hero::before { width: 245px; height: 185px; opacity: .035; } }
@media (prefers-reduced-motion: reduce) { .p-hero::before, .p-hero-grid::before, .p-features::before, .p-steps::before, .ps-page-hero::before, .ps-features-directory::before, .ps-knowledge-types::before, .p-insights::before, .p-stories::before, .ps-wp-steps::before, .p-panel-tour::after { animation: none; } .p-tour-card { transition: none; } .p-tour-card:hover { transform: none; } }
