@charset "UTF-8";

/* ============================================================
   BRAND TOKENS — INCONTERNAL — change colors/fonts here = whole site updates
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

:root{
  /* --- Deep space --- */
  --void:#06060e;
  --void-2:#0a0a16;
  --panel:#11101f;
  --panel-2:#16142a;
  --line:rgba(180,170,230,0.13);
  --line-soft:rgba(180,170,230,0.07);

  /* --- Nebula accents (from the logo) --- */
  --teal:#2dd4bf;
  --aqua:#5eead4;
  --violet:#a78bfa;
  --indigo:#7c6cf0;
  --amber:#f0a868;
  --coral:#ec7e5a;
  --magenta:#d96cc0;

  /* --- Text --- */
  --star:#f3f1ff;
  --mist:rgba(238,235,255,0.66);
  --mist-2:rgba(238,235,255,0.42);

  /* --- Brand gradient sweep --- */
  --sweep:linear-gradient(115deg, var(--teal) 0%, var(--aqua) 22%, var(--violet) 55%, var(--coral) 88%, var(--amber) 100%);
  --sweep-2:linear-gradient(120deg, var(--teal) 0%, var(--violet) 50%, var(--coral) 82%, var(--amber) 100%);

  /* --- Type --- */
  --font-display:'Cinzel', serif;
  --font-serif:'Cormorant Garamond', serif;
  --font-body:'Outfit', system-ui, sans-serif;

  --maxw:1200px;
  --radius:22px;
  --radius-lg:30px;
  --ease:cubic-bezier(.2,.7,.2,1);

  /* --- derived tokens used across components (palette-driven, single source) --- */
  --teal-dark:#14b8a6;                 /* CTA / button hover */
  --btn-text:#06060e;                  /* ink on bright button */
  --grad:var(--sweep);                 /* headline iridescent accent */
  --grad-btn:var(--sweep-2);           /* primary button fill */
  --grad-soft:linear-gradient(135deg, rgba(45,212,191,.22), rgba(124,108,240,.14));
  --r-md:var(--radius);
  --r-lg:var(--radius-lg);
  --r-pill:500px;
  --shadow-2:0 30px 70px rgba(0,0,0,.45);
  --glow:0 14px 40px rgba(45,212,191,.42);
  --glow-soft:0 0 0 1px var(--line-soft), 0 24px 60px rgba(45,212,191,.16);
  --space-section:40px;
  --gap:28px;

  /* type scale */
  --fs-h1:clamp(40px,6vw,60px);
  --fs-h2:clamp(30px,4.2vw,50px);
  --fs-h3:clamp(22px,2.6vw,30px);
  --fs-h4:clamp(19px,2vw,23px);
  --fs-h5:17px;
  --fs-h6:14px;
  --fs-body:17px;
  --fs-small:14px;
  --fs-cap:12px;
}

@media all and (max-width:640px){
  :root{ --space-section:28px; --gap:18px; }
}

/* ============================================================
   BASE (scoped to Webware wrapper)
   ============================================================ */
html{ background:var(--void); }
body{ background:var(--void); }

.is-wrapper{ background:transparent; color:var(--star); font-family:var(--font-serif); position:relative; }
.is-wrapper *{ box-sizing:border-box; }
.is-wrapper>div{ background:transparent; }

.is-wrapper h1,.is-wrapper h2,.is-wrapper h3,.is-wrapper h4,.is-wrapper h5,.is-wrapper h6{
  font-family:var(--font-display); color:var(--star); text-wrap:balance; margin:0; line-height:1.12;
}
.is-wrapper p,.is-wrapper li{ font-family:var(--font-serif); color:var(--mist); margin:0; }
.is-wrapper img{ display:block; max-width:100%; }
.is-wrapper a{ color:inherit; text-decoration:none; }

/* section rhythm (added class, never touches locked wrappers) */
.inc-sec{ position:relative; overflow:hidden; }
.inc-sec .is-container{ padding-top:var(--space-section); padding-bottom:var(--space-section); }
.inc-sec--tight .is-container{ padding-top:calc(var(--space-section) * .55); padding-bottom:calc(var(--space-section) * .55); }
.inc-sec--tint::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(120% 100% at 50% 0%, rgba(45,212,191,.09), transparent 60%);
  pointer-events:none;
}

/* ============================================================
   COSMIC BACKGROUND (fixed, behind everything)
   ============================================================ */
.inc-cosmos-bg{
  position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(60% 50% at 18% 12%, rgba(45,212,191,.20), transparent 60%),
    radial-gradient(50% 45% at 85% 18%, rgba(56,189,248,.13), transparent 60%),
    radial-gradient(55% 50% at 80% 88%, rgba(232,121,249,.13), transparent 62%),
    radial-gradient(60% 60% at 20% 92%, rgba(20,184,166,.18), transparent 60%),
    var(--void);
}
#inc-starfield{
  position:fixed; inset:0; z-index:1; pointer-events:none; opacity:.9;
}
.is-wrapper, .inc-nav, .inc-footer, .inc-mobile-menu{ position:relative; z-index:2; }

/* ============================================================
   TYPOGRAPHY DESIGN SYSTEM
   ============================================================ */
.banner-main-heading{ font-size:var(--fs-h1); font-weight:600; line-height:1.02; letter-spacing:.01em; font-variant:small-caps; color:var(--star); }
.section-main-heading{ font-size:var(--fs-h2); font-weight:600; line-height:1.08; letter-spacing:.012em; font-variant:small-caps; color:var(--star); }
.section-sub-heading{ font-size:var(--fs-h3); font-weight:600; line-height:1.16; letter-spacing:.012em; font-variant:small-caps; color:var(--star); }
.content-heading{ font-size:var(--fs-h4); font-weight:600; line-height:1.22; letter-spacing:.01em; font-variant:small-caps; color:var(--star); }
.content-sub-heading{ font-size:var(--fs-h5); font-weight:600; line-height:1.3; color:var(--star); }
.small-heading{ font-family:var(--font-body); font-size:var(--fs-h6); font-weight:600; line-height:1.3; letter-spacing:.14em; text-transform:uppercase; color:var(--star); }

.section-description{ font-size:clamp(16px,1.4vw,19px); line-height:1.75; color:var(--mist); }
.content-text{ font-size:var(--fs-body); line-height:1.7; color:var(--mist); }
.small-text{ font-size:var(--fs-small); line-height:1.6; color:var(--mist-2); }
.highlight-text{ color:var(--star); font-weight:600; }
.caption-text{ font-family:var(--font-body); font-size:var(--fs-cap); font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--teal); }

.inc-gradient{
  background:var(--grad); -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:transparent;
}

/* kicker / eyebrow */
.inc-kicker{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--font-body);
  font-size:var(--fs-cap); font-weight:600; letter-spacing:.22em; text-transform:uppercase;
  color:var(--teal); margin-bottom:18px;
}
.inc-kicker::before{
  content:""; width:26px; height:1px; background:linear-gradient(90deg, transparent, var(--aqua)); display:inline-block;
}
.inc-kicker.is-center{ justify-content:center; }

/* section head helper */
.inc-head{ max-width:90%; margin:0 auto; }
.inc-head.is-center{ margin-left:auto; margin-right:auto; text-align:center; }
.inc-head .section-description{ margin-top:18px; }

/* ============================================================
   BUTTONS — SINGLE GLOBAL HOVER ACROSS ALL TYPES
   ============================================================ */
.web-primary-btn,
.web-secondary-btn,
.web-text-btn,
.web-cta-link,
.is-wrapper button,
.is-wrapper input[type="button"],
.is-wrapper input[type="submit"],
.inc-nav .inc-btn{
  font-family:var(--font-body);
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  cursor:pointer; border:2px solid transparent; text-align:center; white-space:nowrap;
  font-weight:600; letter-spacing:.01em; line-height:1;
  -webkit-transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, background .28s ease, color .28s ease, border-color .28s ease, filter .28s ease;
  transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, background .28s ease, color .28s ease, border-color .28s ease, filter .28s ease;
}
/* the one shared hover behaviour */
.web-primary-btn:hover,
.web-secondary-btn:hover,
.web-text-btn:hover,
.web-cta-link:hover,
.is-wrapper button:hover,
.is-wrapper input[type="button"]:hover,
.is-wrapper input[type="submit"]:hover{
  transform:translateY(-3px);
  filter:brightness(1.06);
}
.web-primary-btn:focus-visible,
.web-secondary-btn:focus-visible,
.web-text-btn:focus-visible,
.web-cta-link:focus-visible{
  outline:2px solid var(--teal); outline-offset:3px;
}

.web-primary-btn{
  background:var(--grad-btn); color:var(--btn-text); padding:15px 30px; border-radius:var(--r-pill);
  box-shadow:var(--glow);
}
.web-primary-btn:hover{ box-shadow:0 20px 52px rgba(45,212,191,.55); }

.web-secondary-btn{
  background:var(--panel); color:var(--star); padding:14px 28px; border-radius:var(--r-pill);
  border:1.5px solid var(--line);
}
.web-secondary-btn:hover{ border-color:var(--teal); background:var(--panel-2); box-shadow:var(--glow-soft); }

.web-text-btn,
.web-cta-link{
  background:transparent; color:var(--star); padding:10px 4px; border:none; gap:8px;
}
.web-text-btn:hover,
.web-cta-link:hover{ color:var(--teal); box-shadow:none; }
.web-text-btn svg,
.web-cta-link svg{ width:18px; height:18px; transition:transform .28s ease; }
.web-text-btn:hover svg,
.web-cta-link:hover svg{ transform:translateX(4px); }

.inc-btn-lg{ padding:17px 36px; font-size:16px; }
.inc-btn-sm{ padding:11px 22px; font-size:14px; }

.inc-btn-row{ display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
.inc-btn-row.is-center{ justify-content:center; }

/* ============================================================
   SACRED-GEOMETRY DECORATION (signature)
   ============================================================ */
.inc-geo{ position:absolute; z-index:0; pointer-events:none; opacity:.5; }
.inc-geo svg{ width:100%; height:100%; fill:none; stroke:rgb(204 204 204 / 21%); stroke-width:.6; }
.inc-geo--big{ width:520px; height:520px; opacity:.16; }

/* ============================================================
   HEADER / NAV
   ============================================================ */
.inc-nav{
  position:sticky; top:0; z-index:60;
  backdrop-filter:saturate(140%) blur(14px); -webkit-backdrop-filter:saturate(140%) blur(14px);
  background:rgba(7,6,15,.62); border-bottom:1px solid var(--line-soft);
}
.inc-nav-inner{
  max-width:1200px; margin:0 auto; padding:16px 28px;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.inc-brand{ display:flex; align-items:center; gap:12px; }
.inc-brand-mark{ width:40px; height:40px; border-radius:10px; object-fit:cover; box-shadow:var(--glow-soft); }
.inc-brand-name{ font-family:var(--font-body); font-weight:600; letter-spacing:.18em; font-size:16px; color:var(--star); }

.inc-nav-links{ display:flex; align-items:center; gap:28px; }
.inc-nav-links>a,.inc-nav-item>a{
  font-family:var(--font-body);
  font-size:15px; font-weight:500; color:var(--mist);
  display:inline-flex; align-items:center; gap:6px; padding:8px 0;
  transition:color .25s ease;
}
.inc-nav-links>a:hover,.inc-nav-item>a:hover,.inc-nav-links>a.active{ color:var(--star); }
.inc-caret{ width:16px; height:16px; transition:transform .25s ease; }
.inc-nav-item{ position:relative; }
.inc-nav-item:hover .inc-caret{ transform:rotate(180deg); }

.inc-dropdown{
  position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(10px);
  min-width:320px; padding:14px; border-radius:var(--r-md);
  background:rgba(12,10,28,.92); border:1px solid var(--line-soft);
  box-shadow:var(--shadow-2); backdrop-filter:blur(16px);
  opacity:0; visibility:hidden; transition:all .26s ease; z-index:70;
}
.inc-nav-item:hover .inc-dropdown,.inc-nav-item.open .inc-dropdown{ opacity:1; visibility:visible; transform:translateX(-50%) translateY(8px); }
.inc-dropdown a{ display:flex; align-items:center; gap:14px; padding:12px 14px; border-radius:12px; transition:background .2s ease; }
.inc-dropdown a:hover{ background:var(--panel-2); }
.inc-di{ width:40px; height:40px; flex:0 0 40px; border-radius:11px; display:grid; place-items:center; background:var(--grad-soft); }
.inc-di svg{ width:20px; height:20px; fill:none; stroke:var(--teal); stroke-width:1.6; }
.inc-dt{ font-weight:600; font-size:14px; color:var(--star); }

.inc-nav-cta{ display:flex; align-items:center; gap:12px; }
.inc-nav-toggle{
  display:none; width:44px; height:44px; border-radius:12px; padding:0 !important;
  background:var(--panel); border:1px solid var(--line-soft);
}
.inc-nav-toggle svg{ width:22px; height:22px; stroke:var(--star); fill:none; }

.inc-mobile-menu{
  display:none; flex-direction:column; gap:4px; padding:14px 22px 26px;
  background:rgba(12,10,28,.96); border-bottom:1px solid var(--line-soft);
  position:sticky; top:73px; z-index:55;
}
.inc-mobile-menu.open{ display:flex; }
.inc-mobile-menu a{ padding:13px 6px; font-size:16px; color:var(--mist); border-bottom:1px solid var(--line-soft); }
.inc-mobile-menu a.sub{ padding-left:22px; font-size:14px; color:var(--mist-2); }
.inc-mobile-menu .web-primary-btn{ margin-top:16px; border-bottom:none; }

/* ============================================================
   HERO
   ============================================================ */
.inc-hero .is-boxes{ min-height:auto; }
.inc-hero-media{ position:relative; }
.inc-hero-img-d{ width:100%; height:auto; display:block; aspect-ratio:1600 / 900; object-fit:cover; }
.inc-hero-img-m{ width:100%; height:auto; display:none; aspect-ratio:800 / 1100; object-fit:cover; }
.inc-hero-scrim{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(7,6,15,.55) 0%, rgba(7,6,15,.22) 15%, rgba(7,6,15,.42) 48%, rgba(7,6,15,.92) 100%),
             linear-gradient(90deg, rgba(7,6,15,.78), transparent 62%);
}
.inc-hero .pos-ab-ban{ z-index:2; }
.inc-hero-content{
  margin-bottom:6vh;
  background:transparent;
  border:0px solid var(--line); border-radius:18px;
}
.inc-hero-lead{ margin-top:18px; max-width:560px; color:rgba(245,243,255,.82); }
.inc-hero-content .inc-btn-row{ margin-top:30px; }
/* hero text column: cap width + strip the platform banner padding (was 72px 10px 50px) */
.user-logged-out .inner-content-div{ max-width:670px; padding:0; }

/* hero panel entrance handled by AOS (data-aos="zoom-in-up") on live Webware */

/* ============================================================
   SCROLL REVEAL (progressive enhancement — visible without JS)
   ============================================================ */
.inc-js .inc-reveal{ opacity:0; transform:translateY(26px); }
.inc-js .inc-reveal.is-in{ opacity:1; transform:none; transition:opacity .75s ease, transform .75s cubic-bezier(.2,.8,.2,1); }
.inc-js .inc-reveal.d1.is-in{ transition-delay:.1s; }
.inc-js .inc-reveal.d2.is-in{ transition-delay:.2s; }
.inc-js .inc-reveal.d3.is-in{ transition-delay:.3s; }

/* ============================================================
   GUIDANCE
   ============================================================ */
.inc-guidance-sec .inc-geo{ top:-120px; right:-140px; width:460px; height:460px; opacity:.12; }
.inc-guidance-head .section-main-heading{ margin-top:6px; margin-bottom:28px; }
.inc-guidance-body .section-description{ margin-bottom:34px; }

.inc-points{ display:grid; grid-template-columns:repeat(2,1fr); column-gap:42px; row-gap:30px; margin-top:4px; }
.inc-gp{
  display:flex; gap:16px; align-items:flex-start;
}
.inc-gp-ico{
  flex:0 0 48px; width:48px; height:48px; border-radius:12px; display:grid; place-items:center;
  background:var(--grad-soft); border:1px solid var(--line);
  transition:border-color .3s ease, transform .3s ease, box-shadow .3s ease;
}
.inc-gp:hover .inc-gp-ico{ border-color:var(--teal); transform:translateY(-2px); box-shadow:var(--glow-soft); }
.inc-gp-ico svg{ width:22px; height:22px; fill:none; stroke:var(--teal); stroke-width:1.6; }
.inc-gp-t{ display:flex; flex-direction:column; gap:5px; font-family:var(--font-body); font-size:15px; line-height:1.5; color:var(--mist); }
.inc-gp-t b{ font-family:var(--font-body); color:var(--star); font-size:16px; font-weight:600; letter-spacing:.005em; }

/* ============================================================
   TRUST
   ============================================================ */
.inc-trust .section-description{ margin-left:auto; margin-right:auto; max-width:70ch; }
.inc-trust-logos{
  display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin-top:42px;
}
.inc-tl{
  display:inline-flex; align-items:center; gap:10px; padding:14px 22px; border-radius:var(--r-pill);
  background:var(--panel); border:1px solid var(--line-soft);
  font-family:var(--font-body); font-weight:500; font-size:15px; color:var(--mist);
  transition:transform .3s ease, border-color .3s ease, color .3s ease;
}
.inc-tl:hover{ transform:translateY(-3px); border-color:var(--teal); color:var(--star); }
.inc-tl svg{ width:20px; height:20px; fill:none; stroke:var(--teal); stroke-width:1.6; }

/* ============================================================
   FEATURE SPLIT (Reiki / Music / Meet)
   ============================================================ */
.inc-feature-media-cell{ padding:8px; }
.inc-feature-media{
  position:relative; border-radius:var(--r-lg); overflow:hidden;
  border:1px solid var(--line-soft); box-shadow:var(--shadow-2);
}
.inc-feature-media img{ width:100%; height:100%; min-height:340px; object-fit:cover; }
.inc-feature-media.is-portrait img{ aspect-ratio:4/5; }
.inc-feature-media .inc-media-tag{
  position:absolute; left:18px; bottom:18px; z-index:2;
  padding:9px 16px; border-radius:var(--r-pill);
  background:rgba(12,10,28,.78); border:1px solid var(--line);
  font-size:13px; font-weight:600; color:var(--star); backdrop-filter:blur(8px);
}
.inc-feature-body{ display:flex; flex-direction:column; justify-content:center; height:100%; padding:8px 6px; }
.inc-feature-body .section-main-heading{ margin-top:6px; }
.inc-feature-body .content-text,
.inc-feature-body .section-description{ margin-top:20px; }
.inc-feature-body .inc-btn-row{ margin-top:30px; }

/* ============================================================
   MERCH SLIDER
   ============================================================ */
.inc-merch-wrap{ position:relative; margin-top:42px; }
.inc-merch-track{
  display:flex; gap:var(--gap); overflow-x:auto; scroll-snap-type:x mandatory;
  scroll-behavior:smooth; padding:6px 2px 14px; -webkit-overflow-scrolling:touch;
  scrollbar-width:none; -ms-overflow-style:none;
}
.inc-merch-track::-webkit-scrollbar{ display:none; }
.inc-merch-card{
  flex:0 0 calc((100% - 2 * var(--gap)) / 3); scroll-snap-align:start; border-radius:var(--r-md); overflow:hidden;
  background:var(--panel); border:1px solid var(--line-soft);
  transition:transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.inc-merch-card:hover{ transform:translateY(-6px); border-color:var(--line); box-shadow:var(--glow-soft); }
.inc-merch-shot{ aspect-ratio:1/1; overflow:hidden; background:var(--void-2); }
.inc-merch-shot img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.inc-merch-card:hover .inc-merch-shot img{ transform:scale(1.06); }
.inc-merch-meta{ padding:18px 20px; }
.inc-merch-meta .nm{ font-family:var(--font-display); font-variant:small-caps; letter-spacing:.04em; font-weight:600; font-size:18px; color:var(--star); }
.inc-merch-meta .pr{ margin-top:6px; font-size:14px; color:var(--teal); font-weight:600; }

.inc-slider-arrow{
  position:absolute; top:38%; transform:translateY(-50%); z-index:5;
  width:48px; height:48px; border-radius:50%; padding:0 !important;
  background:rgba(12,10,28,.85); border:1px solid var(--line);
  display:grid; place-items:center;
}
.inc-slider-arrow svg{ width:20px; height:20px; stroke:var(--star); fill:none; }
.inc-slider-arrow.prev{ left:-10px; }
.inc-slider-arrow.next{ right:-10px; }
.inc-slider-arrow:disabled{ opacity:.3; cursor:default; transform:translateY(-50%); }
.inc-slider-dots{ display:flex; justify-content:center; gap:9px; margin-top:8px; }
.inc-slider-dots button{
  width:9px; height:9px; padding:0 !important; border-radius:50%;
  background:var(--line); border:none;
}
.inc-slider-dots button.active{ background:var(--grad); width:26px; border-radius:500px; }

/* Slider controls override the global CTA hover: the unified .is-wrapper button
   hover applies transform:translateY(-3px), which overrides the arrow's
   translateY(-50%) centering (arrow jumps) and lifts the dots. Re-assert correct
   transforms + restore arrow border/display (base .is-wrapper button out-specifies it). */
.is-wrapper .inc-slider-arrow{ display:grid; place-items:center; border:1px solid var(--line); }
.is-wrapper .inc-slider-arrow:hover{
  transform:translateY(-50%); filter:none;
  border-color:var(--teal); background:rgba(12,10,28,.96); box-shadow:var(--glow-soft);
}
.is-wrapper .inc-slider-arrow:hover svg{ stroke:var(--teal); }
.is-wrapper .inc-slider-arrow:disabled:hover{
  transform:translateY(-50%); border-color:var(--line);
  background:rgba(12,10,28,.85); box-shadow:none;
}
.is-wrapper .inc-slider-dots button:hover{ transform:none; filter:none; }

/* ============================================================
   REVIEWS
   ============================================================ */
.inc-review-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--gap); margin-top:46px; }
.inc-review{
  position:relative; padding:34px 30px 30px; border-radius:var(--r-lg);
  background:var(--panel); border:1px solid var(--line-soft); overflow:hidden;
  transition:transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.inc-review:hover{ transform:translateY(-6px); border-color:var(--line); box-shadow:var(--glow-soft); }
.inc-quote-mark{ position:absolute; top:6px; right:22px; font-family:var(--font-display); font-size:96px; line-height:1; color:var(--teal); opacity:.5; }
.inc-stars{ display:flex; gap:4px; margin-bottom:16px; }
.inc-stars svg{ width:18px; height:18px; fill:var(--amber); stroke:none; }
.inc-review p{ font-family:var(--font-serif); font-style:italic; color:var(--star); font-size:16px; line-height:1.7; }
.inc-reviewer{ display:flex; align-items:center; gap:14px; margin-top:24px; }
.inc-avatar{
  width:48px; height:48px; border-radius:50%; display:grid; place-items:center;
  background:var(--grad); color:var(--btn-text); font-family:var(--font-body); font-weight:600; font-size:16px;
}
.inc-reviewer .nm{ font-family:var(--font-body); font-weight:600; color:var(--star); font-size:15px; }
.inc-reviewer .role{ font-family:var(--font-body); font-size:13px; color:var(--mist); }

/* ============================================================
   NEWSLETTER
   ============================================================ */
.inc-news-band{
  position:relative; overflow:hidden; text-align:center;
  padding:72px 40px; border-radius:var(--r-lg);
  background:var(--grad-soft); border:1px solid var(--line);
}
.inc-news-band .inc-geo{ top:50%; left:50%; transform:translate(-50%,-50%); width:420px; height:420px; opacity:.14; }
.inc-news-band .section-main-heading{ position:relative; z-index:1; }
.inc-news-band p{ position:relative; z-index:1; max-width:62ch; margin:18px auto 0; color:var(--mist); }
.inc-news-form{ position:relative; z-index:1; display:flex; justify-content:center; margin-top:30px; }
.inc-news-ok{
  position:relative; z-index:1; margin-top:18px; font-size:14px; color:var(--teal);
  font-weight:600; display:none;
}
.inc-news-ok.show{ display:block; }

/* ============================================================
   FOOTER
   ============================================================ */
.inc-footer{
  position:relative; overflow:hidden; margin-top:40px;
  background:var(--void-2); border-top:1px solid var(--line-soft);
}
.inc-footer .inc-geo--big{ bottom:-220px; right:-160px; }
.inc-footer-inner{ max-width:1200px; margin:0 auto; padding:72px 28px 32px; position:relative; z-index:1; }
.inc-footer-grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr; gap:40px; }
.inc-footer-tag{ margin-top:14px; font-size:14px; color:var(--mist-2); font-style:italic; }
.inc-footer h4{ font-family:var(--font-body); font-size:14px; letter-spacing:.14em; text-transform:uppercase; color:var(--star); margin-bottom:18px; }
.inc-footer-links{ display:flex; flex-direction:column; gap:11px; }
.inc-footer-links a{ font-family:var(--font-body); font-size:15px; color:var(--mist); transition:color .25s ease; }
.inc-footer-links a:hover{ color:var(--teal); }
.inc-socials{ display:flex; gap:12px; margin-top:24px; }
.inc-socials a{
  width:42px; height:42px; border-radius:12px; display:grid; place-items:center;
  background:var(--panel); border:1px solid var(--line-soft); transition:all .28s ease;
}
.inc-socials a:hover{ transform:translateY(-3px); border-color:var(--teal); }
.inc-socials svg{ width:20px; height:20px; }
.inc-footer-bottom{
  display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px;
  margin-top:46px; padding-top:24px; border-top:1px solid var(--line-soft);
  font-size:13px; color:var(--mist-2);
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media all and (max-width:1024px){
  .inc-nav-links{ display:none; }
  .inc-nav-toggle{ display:grid; }
  .inc-points{ grid-template-columns:1fr; }
  .inc-review-grid{ grid-template-columns:1fr; }
  .inc-footer-grid{ grid-template-columns:1fr 1fr; }
}
/* ≤1023.5px — banner TEXT drops BELOW the image (overlay turns into normal flow) */
@media all and (max-width:1023.5px){
  .inc-hero .pos-ab-ban{
    position:relative !important; height:auto !important;
    top:auto; left:auto; right:auto; bottom:auto;
    align-items:flex-start !important;
    padding:34px 18px 6px !important;
  }
  .inc-hero-content,
  .inc-hero-lead{ max-width:none; }
  /* image stays bright; soft top veil (header legibility) + bottom fade (blend into the dark text area) */
  .inc-hero-scrim{
    background:linear-gradient(180deg, rgba(7,6,15,.45) 0%, rgba(7,6,15,.10) 22%, transparent 52%, rgba(7,6,15,.55) 100%);
  }
}
@media all and (max-width:640px){
  .inc-nav-inner{ padding:14px 18px; }
  .inc-nav-cta .web-primary-btn{ display:none; }
  .inc-mobile-menu{ top:69px; }
  .inc-hero-img-d{ display:none; }
  .inc-hero-img-m{ display:block; }
  .inc-hero-content{ padding:0 2px; margin-bottom:5vh; background:transparent; }
  .inc-footer-grid{ grid-template-columns:1fr; gap:34px; }
  .inc-news-band{ padding:54px 24px; }
  .inc-merch-card{ flex-basis:78%; }
  .inc-quote-mark{ font-size:72px; }
}

@media (prefers-reduced-motion:reduce){
  .is-wrapper *{ animation:none !important; transition:none !important; }
}

/* ============================================================
   HEADER LUXE (new-header-6) — cosmic glass edition
   Styles real platform classes only. No HTML changes.
   Locked grid wrappers untouched. Scoped to out-specify theme CSS.
   ============================================================ */

/* --- outer shell: glass + sweep accent --- */
.is-wrapper .is-header{ min-height:0; z-index:99; position:relative; width:100%; background:transparent; border:none; }
/* header section: transparent, white text, no border, auto height, dropdowns not clipped */
.is-wrapper div.is-section.is-header, .is-header{
  background-color:transparent;
  color:var(--star);
  border-bottom:0;
  height:auto;
  min-height:0;
  z-index:99;
  overflow:visible !important;
}
header#header.new-header-6{
  position:relative; width:100%; z-index:99;
  background:transparent;
  -webkit-backdrop-filter:none; backdrop-filter:none;
  border:none;
  transition:box-shadow .4s cubic-bezier(0.16,1,0.3,1), background .4s cubic-bezier(0.16,1,0.3,1);
}
header#header.new-header-6.is-stuck{
  background:rgba(6,6,14,.92);
  box-shadow:0 14px 40px rgba(0,0,0,.45);
  border-bottom:1px solid var(--line);
}
header#header.new-header-6 .header-grid{
  max-width:1280px; margin-left:auto; margin-right:auto;
  padding-top:14px; padding-bottom:14px;
}
/* strip any theme divider/border/shadow/bg so the floating bar is a clean overlay */
header#header.new-header-6 .header-grid,
header#header.new-header-6 .menu-container,
header#header.new-header-6 .menu-container nav,
header#header.new-header-6 .contact-section,
header#header.new-header-6 .with-nav,
header#header.new-header-6 .sticky-bg-color{
  background:transparent !important;
  border:0 !important; box-shadow:none !important;
}

/* --- logo --- */
header#header.new-header-6 .logo-container{ padding:0; margin:0; line-height:0; }
header#header.new-header-6 .logo-container a{ display:inline-block; }
header#header.new-header-6 .logo-container img{
  height:160px; width:auto; margin:0;
  filter:drop-shadow(0 2px 14px rgba(45,212,191,.22));
}

/* === DESKTOP (1024px and up) === */
@media screen and (min-width: 64em){

  /* contact strip (top tier) */
  header#header.new-header-6 .contact-section.menu{
    display:flex; align-items:center; gap:8px; list-style:none;
    margin:0 0 8px; padding:0 0 8px; justify-content:flex-end;
    border-bottom:1px solid var(--line-soft);
  }
  header#header.new-header-6 .contact-section.menu>li{ margin:0; }

  header#header.new-header-6 .menu a.head-contact-links{
    display:flex !important; align-items:center; gap:12px;
    padding:8px 16px !important; border-radius:12px;
    font-family:var(--font-body); font-size:13.5px; font-weight:600; letter-spacing:.05em;
    color:var(--mist); background:transparent; position:relative;
    transition:background .3s cubic-bezier(0.16,1,0.3,1), color .3s ease, transform .3s cubic-bezier(0.16,1,0.3,1);
  }
  header#header.new-header-6 .menu a.head-contact-links:hover{
    background:rgba(45,212,191,.07); color:var(--star); transform:translateY(-1px);
  }
  header#header.new-header-6 .menu a.head-contact-links .icon-part{
    width:38px; height:38px; min-width:38px; border-radius:50%;
    background:rgba(45,212,191,.12); border:1px solid var(--line); color:var(--teal);
    display:flex; align-items:center; justify-content:center; font-size:15px; padding:0;
    transition:background .3s cubic-bezier(0.16,1,0.3,1), color .3s ease, border-color .3s ease, transform .4s cubic-bezier(0.16,1,0.3,1);
  }
  header#header.new-header-6 .menu a.head-contact-links:hover .icon-part{
    background:var(--teal); border-color:var(--teal); color:var(--void);
    transform:rotate(-8deg) scale(1.08);
  }
  header#header.new-header-6 .menu a.head-contact-links .icon-part i{ color:inherit; font-size:15px; }

  /* divider before CTA */
  header#header.new-header-6 .contact-section.menu>li.padding-left-1{ padding-left:18px !important; position:relative; }
  header#header.new-header-6 .contact-section.menu>li.padding-left-1::before{
    content:""; position:absolute; left:4px; top:50%; transform:translateY(-50%);
    width:1px; height:30px; background:var(--line);
  }

  /* CTA — global primary look + identical global hover */
  header#header.new-header-6 .contact-section.menu .button{
    display:inline-flex !important; align-items:center; justify-content:center; gap:10px;
    background:var(--grad-btn) !important;
    font-family:var(--font-body) !important; font-size:13px !important; font-weight:600 !important;
    letter-spacing:.06em; line-height:1; text-transform:uppercase;
    padding:13px 26px !important; border-radius:var(--r-pill) !important; border:none !important;
    box-shadow:var(--glow); margin-bottom:0; position:relative;
    -webkit-transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, filter .28s ease !important;
    transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, filter .28s ease !important;
  }
  header#header.new-header-6 .contact-section.menu .button:hover{
    transform:translateY(-3px); filter:brightness(1.06);
    box-shadow:0 20px 52px rgba(45,212,191,.55) !important;
  }

  /* nav bar (bottom tier) */
  header#header.new-header-6 .menu-container{ border-top:none !important; margin-top:4px !important; padding-top:2px !important; }
  header#header.new-header-6 .menu-container nav{ display:flex; justify-content:flex-end; }
  header#header.new-header-6 .dropdown.menu.level-1{ gap:4px; align-items:center; }
  header#header.new-header-6 .dropdown.menu.level-1>li{ position:relative; }

  header#header.new-header-6 .dropdown.menu.level-1>li>a:not(.button){
    font-family:var(--font-body); font-size:13px; font-weight:500; letter-spacing:.12em;
    text-transform:uppercase; color:var(--mist); padding:15px 17px !important;
    position:relative; background:transparent;
    transition:color .3s cubic-bezier(0.16,1,0.3,1);
  }
  /* animated underline — ::before so chevron ::after stays free */
  header#header.new-header-6 .dropdown.menu.level-1>li>a:not(.button)::before{
    content:""; position:absolute; left:17px; right:17px; bottom:7px; height:1.5px;
    background:linear-gradient(90deg, var(--teal), var(--aqua));
    transform:scaleX(0); transform-origin:left center;
    transition:transform .45s cubic-bezier(0.16,1,0.3,1); pointer-events:none;
  }
  header#header.new-header-6 .dropdown.menu.level-1>li:hover>a:not(.button)::before,
  header#header.new-header-6 .dropdown.menu.level-1>li.active>a:not(.button)::before,
  header#header.new-header-6 .dropdown.menu.level-1>li.is-active>a:not(.button)::before{ transform:scaleX(1); }

  header#header.new-header-6 .dropdown.menu.level-1>li:hover>a:not(.button),
  header#header.new-header-6 .dropdown.menu.level-1>li.active>a:not(.button),
  header#header.new-header-6 .dropdown.menu.level-1>li.is-active>a:not(.button){
    color:var(--star); background:transparent !important;
  }
  header#header.new-header-6 .dropdown.menu.level-1>li:hover>a:not(.button) span,
  header#header.new-header-6 .dropdown.menu.level-1>li.active>a:not(.button) span,
  header#header.new-header-6 .dropdown.menu.level-1>li.is-active>a:not(.button) span{ color:var(--star); }

  /* submenu chevron — CSS-drawn, currentColor, rotates up on hover */
  header#header.new-header-6 .dropdown.menu.level-1>li.is-dropdown-submenu-parent>a:not(.button){ padding-right:32px !important; }
  header#header.new-header-6 .dropdown.menu>li.is-dropdown-submenu-parent>a::after{
    content:"" !important; display:block !important; position:absolute !important;
    left:auto !important; right:13px !important; top:50% !important; bottom:auto !important;
    width:7px !important; height:7px !important; margin:-5px 0 0 !important; padding:0 !important;
    background:transparent !important;
    border:0 !important;
    border-right:1.6px solid currentColor !important;
    border-bottom:1.6px solid currentColor !important;
    transform:rotate(45deg); opacity:.75;
    transition:transform .3s cubic-bezier(0.16,1,0.3,1);
    pointer-events:none; z-index:1;
  }
  header#header.new-header-6 .dropdown.menu>li.is-dropdown-submenu-parent:hover>a::after,
  header#header.new-header-6 .dropdown.menu>li.is-dropdown-submenu-parent.is-active>a::after{
    transform:rotate(-135deg) translate(-2px,-2px); opacity:1;
  }

  /* dropdown panel — solid cosmic card + fade/slide */
  header#header.new-header-6 .dropdown.menu li ul.submenu{
    background:var(--panel) !important; min-width:260px;
    padding:10px !important; border-radius:14px !important;
    border:1px solid var(--line) !important; box-shadow:var(--shadow-2);
    margin-top:6px; opacity:0; transform:translateY(-6px); pointer-events:none;
    transition:opacity .3s cubic-bezier(0.16,1,0.3,1), transform .3s cubic-bezier(0.16,1,0.3,1);
  }
  header#header.new-header-6 .dropdown.menu li.is-active>ul.submenu,
  header#header.new-header-6 .dropdown.menu li:hover>ul.submenu{
    opacity:1; transform:translateY(0); pointer-events:auto;
  }
  header#header.new-header-6 .dropdown.menu li ul.submenu li a:not(.button){
    font-family:var(--font-body); font-size:13.5px; font-weight:500; letter-spacing:.02em;
    text-transform:none; color:var(--mist); padding:11px 14px !important; border-radius:9px;
    position:relative; line-height:1.5;
    transition:color .25s ease, background .25s ease, padding-left .3s cubic-bezier(0.16,1,0.3,1);
  }
  header#header.new-header-6 .dropdown.menu li ul.submenu li a:not(.button):hover{
    color:var(--star) !important; background:rgba(45,212,191,.10) !important; padding-left:20px !important;
  }
  header#header.new-header-6 .dropdown.menu li ul.submenu li a:not(.button):hover span{ color:var(--star); }
  /* active page inside dropdown — teal dot + tint */
  header#header.new-header-6 .dropdown.menu li ul.submenu li.active>a:not(.button),
  header#header.new-header-6 .dropdown.menu li ul.submenu li.is-active>a:not(.button){
    color:var(--star) !important; background:rgba(45,212,191,.12) !important; padding-left:26px !important;
  }
  header#header.new-header-6 .dropdown.menu li ul.submenu li.active>a:not(.button)::before,
  header#header.new-header-6 .dropdown.menu li ul.submenu li.is-active>a:not(.button)::before{
    content:""; position:absolute; left:12px; top:50%; transform:translateY(-50%);
    width:5px; height:5px; border-radius:50%; background:var(--teal); pointer-events:none;
  }
}

/* === MOBILE / TABLET (≤1023.5px) === */
@media screen and (max-width: 63.9375em){

  header#header.new-header-6 .header-grid{
    position:relative;
    padding-top:12px !important; padding-bottom:12px !important;
    padding-left:16px !important; padding-right:16px !important;
  }
  /* centered logo */
  header#header.new-header-6 .logo-container{
    text-align:center !important; width:100%; flex:1 1 100%; margin:0 auto;
    padding-left:56px !important; padding-right:56px !important;
  }
  header#header.new-header-6 .logo-container img{ height:160px; display:inline-block; }

  /* hamburger — absolute right, vertically centered */
  header#header.new-header-6 .sidenav-container{
    position:absolute; right:14px; top:25%; transform:translateY(-50%); z-index:3;
    width:44px; height:44px; border-radius:12px;
    display:flex; align-items:center; justify-content:center; padding-top:0;
    background:rgba(255,255,255,.03); border:1px solid var(--line); color:var(--star);
    transition:background .3s cubic-bezier(0.16,1,0.3,1), border-color .3s ease;
  }
  header#header.new-header-6 .sidenav-container:hover,
  header#header.new-header-6 .sidenav-container:active{
    background:rgba(45,212,191,.12); border-color:var(--teal);
  }
  header#header.new-header-6 .sidenav-container a#sidenav-id{ display:inline-grid; place-items:center; width:100%; height:100%; }
  header#header.new-header-6 .sidenav-container i{ color:var(--star); font-size:19px; line-height:1; }

  /* bottom CTA strip — phone row + button row */
  header#header.new-header-6 .mobile-contact-button-section{
    padding:0; margin:0; line-height:normal; display:flex; justify-content:center; align-items:stretch;
    background:transparent; border-top:1px solid var(--line-soft);
  }
  header#header.new-header-6 .mobile-contact-button-section .head-contact-links{
    display:flex !important; align-items:center; justify-content:center; gap:12px;
    width:100%; padding:13px 20px !important;
    font-family:var(--font-body); font-size:14px; font-weight:600; letter-spacing:.04em;
    color:var(--star); background:transparent;
    transition:background .3s ease;
  }
  header#header.new-header-6 .mobile-contact-button-section .head-contact-links:hover,
  header#header.new-header-6 .mobile-contact-button-section .head-contact-links:active{
    background:rgba(45,212,191,.07);
  }
  header#header.new-header-6 .mobile-contact-button-section .head-contact-links .icon-part{
    width:36px; height:36px; min-width:36px; border-radius:50%; flex-shrink:0;
    background:rgba(45,212,191,.12); border:1px solid var(--line); color:var(--teal);
    display:flex; align-items:center; justify-content:center; padding:0; font-size:14px;
  }
  header#header.new-header-6 .mobile-contact-button-section .head-contact-links .icon-part i{ color:inherit; font-size:14px; }

  /* full-width CTA — global primary + identical hover */
  header#header.new-header-6 .mobile-contact-button-section .button{
    display:inline-flex !important; align-items:center; justify-content:center; gap:10px;
    width:100%; max-width:max-content; margin:10px 16px 14px !important;
    background:var(--grad-btn) !important; color:var(--btn-text) !important;
    font-family:var(--font-body) !important; font-size:13px !important; font-weight:600 !important;
    letter-spacing:.06em; line-height:1; text-transform:uppercase;
    padding:20.5px 30px !important; border-radius:var(--r-pill) !important; border:none !important;
    box-shadow:var(--glow);
    -webkit-transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, filter .28s ease !important;
    transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, filter .28s ease !important;
  }
  header#header.new-header-6 .mobile-contact-button-section .button:hover,
  header#header.new-header-6 .mobile-contact-button-section .button:focus{
    transform:translateY(-3px); filter:brightness(1.06);
    box-shadow:0 20px 52px rgba(45,212,191,.55) !important;
  }
}

/* small mobile refinements */
@media screen and (max-width: 39.9375em){
  header#header.new-header-6 .logo-container{ padding-left:50px !important; padding-right:50px !important; }
  header#header.new-header-6 .logo-container img{ height:160px; }
  header#header.new-header-6 .sidenav-container{ width:40px; height:40px; right:12px; }
  header#header.new-header-6 .sidenav-container i{ font-size:17px; }
}

/* ============================================================
   SIDENAV LUXE — mobile off-canvas drawer (cosmic)
   ============================================================ */
aside.sidenav{
  background:var(--panel) !important;
  box-shadow:-8px 0 40px rgba(0,0,0,.55);
  padding:0 !important;
}
aside.sidenav::before{
  content:""; display:block; height:3px;
  background:var(--sweep);
}
aside.sidenav .menu.accordion-menu{
  background:transparent !important; margin:0 !important; padding:0 !important; border:none !important;
}
aside.sidenav .menu.accordion-menu>li{
  background:transparent !important; margin:0 !important;
  border-bottom:1px solid var(--line-soft) !important;
}
aside.sidenav .menu.accordion-menu>li:last-child{ border-bottom:0 !important; }

aside.sidenav .menu.accordion-menu>li>a:not(.button){
  font-family:var(--font-body) !important; font-size:13px !important; font-weight:500 !important;
  letter-spacing:.14em !important; text-transform:uppercase;
  color:var(--mist) !important; background:transparent !important;
  padding:19px 28px 19px 30px !important; position:relative; display:block; line-height:1;
  transition:color .3s cubic-bezier(0.16,1,0.3,1), padding-left .3s cubic-bezier(0.16,1,0.3,1), background .3s ease;
}
aside.sidenav .menu.accordion-menu>li>a:not(.button) span{
  color:inherit !important; background:transparent !important; padding-left:0 !important;
}
/* animated left accent bar */
aside.sidenav .menu.accordion-menu>li>a:not(.button)::before{
  content:""; position:absolute; left:0; top:50%; width:3px; height:20px;
  background:linear-gradient(180deg, var(--teal), var(--aqua));
  transform:translateY(-50%) scaleY(0); transform-origin:center;
  transition:transform .35s cubic-bezier(0.16,1,0.3,1);
  border-radius:0 2px 2px 0; pointer-events:none;
}
aside.sidenav .menu.accordion-menu>li:hover>a:not(.button),
aside.sidenav .menu.accordion-menu>li.active>a:not(.button),
aside.sidenav .menu.accordion-menu>li.is-active>a:not(.button){
  color:var(--star) !important; background:rgba(45,212,191,.06) !important; padding-left:38px !important;
}
aside.sidenav .menu.accordion-menu>li:hover>a:not(.button) span,
aside.sidenav .menu.accordion-menu>li.active>a:not(.button) span,
aside.sidenav .menu.accordion-menu>li.is-active>a:not(.button) span{ color:var(--star) !important; }
aside.sidenav .menu.accordion-menu>li:hover>a:not(.button)::before,
aside.sidenav .menu.accordion-menu>li.active>a:not(.button)::before,
aside.sidenav .menu.accordion-menu>li.is-active>a:not(.button)::before{ transform:translateY(-50%) scaleY(1); }

/* accordion chevron — CSS-drawn currentColor */
aside.sidenav .menu.accordion-menu li.is-accordion-submenu-parent>a::after,
aside.sidenav .menu.accordion-menu li.has-submenu>a::after{
  content:"" !important; display:block !important; position:absolute !important;
  right:26px !important; left:auto !important; top:50% !important; bottom:auto !important;
  width:8px !important; height:8px !important; margin:-6px 0 0 !important; padding:0 !important;
  background:transparent !important; border:0 !important;
  border-right:1.6px solid currentColor !important; border-bottom:1.6px solid currentColor !important;
  transform:rotate(45deg); opacity:.75;
  transition:transform .3s cubic-bezier(0.16,1,0.3,1);
  pointer-events:none; z-index:1;
}
aside.sidenav .menu.accordion-menu li.is-accordion-submenu-parent:hover>a::after,
aside.sidenav .menu.accordion-menu li.is-accordion-submenu-parent.is-active>a::after,
aside.sidenav .menu.accordion-menu li.has-submenu.is-active>a::after,
aside.sidenav .menu.accordion-menu li.has-submenu[aria-expanded="true"]>a::after{
  transform:rotate(-135deg) translate(-2px,-2px); opacity:1;
}

/* nested submenu */
aside.sidenav .menu.accordion-menu .is-accordion-submenu,
aside.sidenav .menu.accordion-menu ul.submenu{
  background:rgba(0,0,0,.25) !important; padding:6px 0 !important; margin:0 !important;
  border-top:1px solid var(--line-soft); list-style:none;
}
aside.sidenav .menu.accordion-menu .is-accordion-submenu li,
aside.sidenav .menu.accordion-menu ul.submenu li{
  border-bottom:none !important; background:transparent !important;
}
aside.sidenav .menu.accordion-menu .is-accordion-submenu .is-submenu-item>a,
aside.sidenav .menu.accordion-menu ul.submenu li>a{
  font-family:var(--font-body) !important; font-size:12.5px !important; font-weight:400 !important;
  letter-spacing:.04em !important; text-transform:none !important;
  color:var(--mist-2) !important; background:transparent !important;
  padding:11px 28px 11px 46px !important; line-height:1.4;
  transition:color .3s cubic-bezier(0.16,1,0.3,1), padding-left .3s cubic-bezier(0.16,1,0.3,1);
}
aside.sidenav .menu.accordion-menu .is-accordion-submenu .is-submenu-item>a span.padding-left-1,
aside.sidenav .menu.accordion-menu ul.submenu li>a span{
  color:inherit !important; padding-left:0 !important; margin-left:0 !important;
}
aside.sidenav .menu.accordion-menu .is-accordion-submenu .is-submenu-item>a:hover,
aside.sidenav .menu.accordion-menu .is-accordion-submenu .is-submenu-item.active>a,
aside.sidenav .menu.accordion-menu ul.submenu li>a:hover,
aside.sidenav .menu.accordion-menu ul.submenu li.active>a{
  color:var(--aqua) !important; background:transparent !important; padding-left:52px !important;
}
aside.sidenav .menu.accordion-menu .is-accordion-submenu .is-submenu-item>a:hover span,
aside.sidenav .menu.accordion-menu .is-accordion-submenu .is-submenu-item.active>a span,
aside.sidenav .menu.accordion-menu ul.submenu li>a:hover span,
aside.sidenav .menu.accordion-menu ul.submenu li.active>a span{ color:var(--aqua) !important; }

/* ============================================================
   FOOTER LUXE — cosmic ending
   ============================================================ */
#footer{
  background:transparent;
  color:var(--mist);
  position:relative; padding:0 !important; overflow:hidden;
}
.is-footer, .is-wrapper div.is-section.is-footer{
  background-color:transparent;
  color:var(--star);
  clear:both;
}
/* top sweep hairline */
#footer::before{
  content:""; position:absolute; top:0; left:0; right:0; height:2px;
  background:var(--sweep); opacity:.85; z-index:2; pointer-events:none;
}
/* radial cosmic glow */
#footer::after{
  content:""; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:900px; height:100%;
  background:radial-gradient(ellipse at top, rgba(45,212,191,.07) 0%, rgba(124,108,240,.05) 35%, transparent 65%);
  pointer-events:none; z-index:0;
}
#footer hr{
  border:none !important; border-top:1px solid var(--line-soft) !important;
  margin:0 !important; background:transparent !important; height:1px;
}
#footer .footer2{ padding:64px 0 36px !important; position:relative; z-index:1; }
#footer .grid-x.footer2>.cell{ margin-bottom:32px; }
#footer .border-bottom-small{ border-bottom:none !important; }
#footer .column-container{ text-align:left; padding:0 12px; }

/* column headings — Cinzel + teal hairline */
#footer h4{
  font-family:var(--font-display); font-size:19px; font-weight:600; letter-spacing:.08em;
  text-transform:uppercase; color:var(--star);
  margin:0 0 22px !important; padding-bottom:14px; position:relative; line-height:1.3;
}
#footer h4::after{
  content:""; position:absolute; bottom:0; left:0; width:34px; height:1.5px;
  background:linear-gradient(90deg, var(--teal), var(--aqua)); border-radius:1px;
}

#footer .column-container ul.no-bullet,
#footer .footer2 ul.no-bullet{ list-style:none; margin:0; padding:0; }
#footer .footer2 ul li{ margin:0; padding:0; border:none; background:transparent; list-style:none; }

/* links column */
#footer .links-section ul li a{
  color:var(--mist); font-family:var(--font-body); font-size:14px; font-weight:400;
  letter-spacing:.02em; line-height:1.5; padding:7px 0; display:inline-block;
  text-decoration:none; position:relative;
  transition:color .3s cubic-bezier(0.16,1,0.3,1), padding-left .35s cubic-bezier(0.16,1,0.3,1);
}
#footer .links-section ul li a::before{
  content:"→"; position:absolute; left:-2px; top:50%; transform:translateY(-50%);
  opacity:0; color:var(--teal); font-size:13px;
  transition:opacity .3s cubic-bezier(0.16,1,0.3,1), left .35s cubic-bezier(0.16,1,0.3,1);
  pointer-events:none;
}
#footer .links-section ul li a:hover,
#footer .links-section ul li.active>a{ color:var(--aqua); padding-left:18px; }
#footer .links-section ul li a:hover::before,
#footer .links-section ul li.active>a::before{ opacity:1; left:0; }

/* social icons — natural, lift on hover */
#footer .media-section ul.social-media-icons{
  display:flex !important; flex-wrap:wrap; gap:14px; margin:0 !important; padding:0 !important;
  list-style:none; align-items:center;
}
#footer .media-section ul.social-media-icons li{
  margin:0 !important; padding:0 !important; background:none !important; border:none !important;
  box-shadow:none !important; list-style:none !important; display:inline-flex; line-height:1;
}
#footer .media-section ul.social-media-icons li::before,
#footer .media-section ul.social-media-icons li::after{ display:none !important; content:none !important; }
#footer .media-section ul.social-media-icons li a{
  display:inline-flex !important; align-items:center; justify-content:center;
  width:44px !important; height:44px !important; border-radius:50% !important;
  background:rgba(255,255,255,.03) !important; border:1px solid var(--line) !important;
  padding:0 !important; margin:0 !important; box-shadow:none !important;
  color:var(--mist) !important; text-decoration:none; line-height:0;
  transition:transform .35s cubic-bezier(0.16,1,0.3,1), border-color .3s ease, background .3s ease;
}
#footer .media-section ul.social-media-icons li a:hover,
#footer .media-section ul.social-media-icons li a:focus{
  transform:translateY(-3px); border-color:var(--teal) !important; background:rgba(45,212,191,.10) !important;
}
#footer .media-section ul.social-media-icons li a img{
  width:20px !important; height:20px !important; max-width:20px !important; max-height:20px !important;
  object-fit:contain; background:none !important; border:none !important; margin:0 !important; padding:0 !important;
  display:block !important; opacity:.9;
  transition:opacity .3s ease, transform .3s ease;
}
#footer .media-section ul.social-media-icons li a:hover img{ opacity:1; transform:scale(1.06); }
#footer .media-section ul.social-media-icons li a i,
#footer .media-section ul.social-media-icons li a svg{
  font-size:18px; color:var(--mist);
  transition:color .3s cubic-bezier(0.16,1,0.3,1);
}
#footer .media-section ul.social-media-icons li a:hover i,
#footer .media-section ul.social-media-icons li a:hover svg{ color:var(--teal); }

/* newsletter button — global secondary look + identical global hover */
#footer .newsletter-section .column-container span{ display:block; margin-top:6px; }
#footer .newsletter-section .button,
#footer .newsletter-section a.button{
  display:inline-flex !important; align-items:center; justify-content:center; gap:10px;
  background:var(--grad-btn) !important; color:var(--btn-text) !important;
  border:none !important; border-radius:var(--r-pill) !important;
  font-family:var(--font-body) !important; font-size:13px !important; font-weight:600 !important;
  letter-spacing:.06em; line-height:1; text-transform:uppercase;
  padding:21px 26px !important; margin:0 !important; box-shadow:var(--glow);
  text-decoration:none;
  -webkit-transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, background .28s ease, border-color .28s ease, filter .28s ease !important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, background .28s ease, border-color .28s ease, filter .28s ease !important;
}
#footer .newsletter-section .button:hover,
#footer .newsletter-section .button:focus{
  transform:translateY(-3px); filter:brightness(1.06);
  box-shadow:0 20px 52px rgba(45,212,191,.55) !important;
}

/* contact column */
#footer .contact-section a{ text-decoration:none; color:inherit; }
#footer .contact-section .actual-address,
#footer .contact-section .address-container{
  display:flex; align-items:flex-start; gap:14px;
  font-family:var(--font-serif); font-size:15px; font-weight:400; line-height:1.7;
  color:var(--mist); margin:0 0 16px; text-align:left; max-width:100%;
  transition:color .3s cubic-bezier(0.16,1,0.3,1);
}
#footer .contact-section .actual-address::before,
#footer .contact-section .address-container::before{
  content:""; display:block; flex-shrink:0; width:16px; height:18px; margin-top:4px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232dd4bf' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/><circle cx='12' cy='10' r='3'/></svg>");
  background-repeat:no-repeat; background-position:center; background-size:contain;
  transition:transform .4s cubic-bezier(0.16,1,0.3,1);
}
#footer .contact-section a:hover .actual-address,
#footer .contact-section a:hover .address-container{ color:var(--aqua); }
#footer .contact-section a:hover .actual-address::before,
#footer .contact-section a:hover .address-container::before{ transform:translateY(-3px); }

#footer .contact-section .contact-number,
#footer .contact-section .contact-email{
  display:flex; align-items:center; gap:12px; margin:8px 0; line-height:1;
}
#footer .contact-section .contact-number::before{
  content:""; display:block; flex-shrink:0; width:16px; height:16px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232dd4bf' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>");
  background-repeat:no-repeat; background-position:center; background-size:contain;
  transition:transform .4s cubic-bezier(0.16,1,0.3,1);
}
#footer .contact-section .contact-number:hover::before{ transform:rotate(-12deg) scale(1.1); }
#footer .contact-section .contact-email::before{
  content:""; display:block; flex-shrink:0; width:16px; height:13px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232dd4bf' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/><polyline points='22,6 12,13 2,6'/></svg>");
  background-repeat:no-repeat; background-position:center; background-size:contain;
  transition:transform .4s cubic-bezier(0.16,1,0.3,1);
}
#footer .contact-section .contact-email:hover::before{ transform:translateY(-2px) scale(1.05); }

#footer .contact-section a.footer-phone,
#footer .contact-section a.footer-email{
  font-family:var(--font-body); font-size:14px; font-weight:500;
  color:var(--star) !important; text-decoration:none; display:inline-block;
  padding:4px 0; position:relative;
  transition:color .3s cubic-bezier(0.16,1,0.3,1);
}
#footer .contact-section a.footer-phone::after,
#footer .contact-section a.footer-email::after{
  content:""; position:absolute; left:0; bottom:0; width:100%; height:1px;
  background:linear-gradient(90deg, var(--teal), var(--aqua));
  transform:scaleX(0); transform-origin:left center;
  transition:transform .4s cubic-bezier(0.16,1,0.3,1);
}
#footer .contact-section a.footer-phone:hover,
#footer .contact-section a.footer-email:hover{ color:var(--aqua) !important; }
#footer .contact-section a.footer-phone:hover::after,
#footer .contact-section a.footer-email:hover::after{ transform:scaleX(1); }

#footer .spacer.height-20{ height:20px; width:100%; }

/* copyright row */
#footer .copyright{
  font-family:var(--font-body); font-size:12.5px; font-weight:400; letter-spacing:.04em;
  color:var(--mist-2); margin:0 !important; line-height:1.6;
}
#footer .grid-x.footer2:has(.copyright){ padding:14px 0 !important; }
#footer .grid-x.footer2:has(.copyright)>.cell.padding-top-1{ padding-top:0 !important; padding-bottom:0 !important; }
#footer .grid-x.footer2:has(.copyright)>.cell{ margin-bottom:16px !important; margin-top:16px !important; }
#footer .copyright a{
  color:var(--mist); text-decoration:none; font-weight:500;
  transition:color .3s cubic-bezier(0.16,1,0.3,1);
}
#footer .copyright a:hover{ color:var(--aqua); }
#footer .copyright span#ps-copyrightyear-js{ color:var(--mist); }
#footer .copyright span.show-for-large{ color:var(--mist-2); margin:0 4px; }

/* footer mobile */
@media screen and (max-width: 63.9375em){
  #footer .footer2{ padding:48px 0 24px !important; }
  #footer .grid-x.footer2>.cell{ margin-bottom:36px; text-align:center; }
  #footer .grid-x.footer2:has(.copyright){ padding:12px 0 !important; }
  #footer .grid-x.footer2:has(.copyright)>.cell{ margin-bottom:0 !important; margin-top:0 !important; }
  #footer .column-container{ text-align:center; padding:0 16px; }
  #footer h4{ font-size:17px; margin-bottom:18px !important; }
  #footer h4::after{ left:50%; transform:translateX(-50%); }
  #footer .media-section ul.social-media-icons{ justify-content:center; }
  #footer .links-section ul li a:hover,
  #footer .links-section ul li.active>a{ padding-left:0; }
  #footer .links-section ul li a::before{ display:none; }
  #footer .contact-section .actual-address,
  #footer .contact-section .address-container,
  #footer .contact-section .contact-number,
  #footer .contact-section .contact-email{ justify-content:center; }
  #footer .contact-section a.footer-phone::after,
  #footer .contact-section a.footer-email::after{ left:50%; transform:translateX(-50%) scaleX(0); }
  #footer .contact-section a.footer-phone:hover::after,
  #footer .contact-section a.footer-email:hover::after{ transform:translateX(-50%) scaleX(1); }
}
@media screen and (max-width: 39.9375em){
  #footer .footer2{ padding:36px 0 20px !important; }
  #footer .grid-x.footer2>.cell{ margin-bottom:30px; }
  #footer h4{ font-size:16px; }
  #footer .copyright{ font-size:11.5px; padding:0 16px; }
}

/* reduced motion — header, drawer, footer */
@media (prefers-reduced-motion: reduce){
  header#header.new-header-6, header#header.new-header-6 *, header#header.new-header-6 *::before, header#header.new-header-6 *::after,
  aside.sidenav, aside.sidenav *, aside.sidenav *::before, aside.sidenav *::after,
  #footer *, #footer *::before, #footer *::after{
    transition:none !important; animation:none !important;
  }
}

/* ============================================================
   ABOUT PAGE COMPONENTS  (appended — tokens above are source of truth)
   ============================================================ */

/* --- check list (His Story pillars, Wellness outcomes) --- */
.inc-check-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:16px; }
.inc-cl{ display:flex; align-items:flex-start; gap:14px; font-family:var(--font-body); font-size:16px; line-height:1.5; color:var(--star); }
.inc-cl-ico{ flex:0 0 30px; width:30px; height:30px; border-radius:9px; display:grid; place-items:center; background:var(--grad-soft); border:1px solid var(--line); margin-top:1px; transition:transform .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease); }
.inc-cl:hover .inc-cl-ico{ transform:translateY(-2px); border-color:var(--teal); box-shadow:var(--glow-soft); }
.inc-cl-ico svg{ width:16px; height:16px; fill:none; stroke:var(--teal); stroke-width:2.2; }
.inc-check-list--2col{ display:grid; grid-template-columns:repeat(2,1fr); gap:18px 32px; }

/* His Story: story text + bordered pillars card */
.inc-story-body{ display:flex; flex-direction:column; justify-content:center; padding:8px 30px 8px 6px; }
.inc-story-body .content-text{ margin-top:20px; }
.inc-story-aside{ display:flex; align-items:center; }
.inc-pillars{ width:100%; background:var(--panel); border:1px solid var(--line); border-radius:var(--r-md); padding:32px 30px; box-shadow:var(--glow-soft); }

/* Wellness head/body */
.inc-wgc-head{ display:flex; flex-direction:column; justify-content:center; padding:8px 30px 8px 6px; }
.inc-wgc-head .section-description{ margin-top:18px; }
.inc-wgc-body{ display:flex; align-items:center; }

/* --- chip grid (disciplines, creative skills, creative content) --- */
.inc-chip-grid{ list-style:none; margin:26px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:12px; }
.inc-chip{ font-family:var(--font-body); font-size:14px; letter-spacing:.02em; color:var(--mist); background:var(--panel); border:1px solid var(--line); border-radius:var(--r-pill); padding:9px 18px; transition:transform .28s var(--ease), border-color .28s var(--ease), color .28s var(--ease), box-shadow .28s var(--ease); }
.inc-chip::before{ content:""; display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--grad); margin-right:9px; vertical-align:middle; }
.inc-chip:hover{ transform:translateY(-2px); border-color:var(--teal); color:var(--star); box-shadow:var(--glow-soft); }
.inc-chip-grid--lg .inc-chip{ font-size:15px; padding:11px 22px; }

/* --- achievement cards (OFSAA highlights) --- */
.inc-ach-row{ margin-top:16px; }
.inc-ach{ height:100%; background:var(--panel); border:1px solid var(--line); border-radius:var(--r-md); padding:28px 26px; display:flex; flex-direction:column; gap:16px; transition:transform .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease); }
.inc-ach:hover{ transform:translateY(-6px); border-color:var(--teal); box-shadow:var(--glow-soft); }
.inc-ach-ico{ width:48px; height:48px; border-radius:13px; display:grid; place-items:center; background:var(--grad-soft); border:1px solid var(--line); }
.inc-ach-ico svg{ width:24px; height:24px; fill:none; stroke:var(--teal); stroke-width:1.6; }
.inc-ach-t{ font-family:var(--font-body); font-size:16px; line-height:1.5; color:var(--star); margin:0; }

/* --- mission band (solid panel + subtle wash; distinct from news band) --- */
.inc-mission-band{ position:relative; overflow:hidden; text-align:center; background:var(--panel); border:1px solid var(--line); border-radius:var(--r-lg); padding:74px 40px; box-shadow:var(--glow-soft); }
.inc-mission-band::before{ content:""; position:absolute; inset:0; background:var(--grad-soft); opacity:.55; pointer-events:none; }
.inc-mission-band .inc-geo{ top:50%; left:50%; transform:translate(-50%,-50%); width:440px; height:440px; opacity:.12; }
.inc-mission-band .section-main-heading{ position:relative; z-index:1; }
.inc-mission-band .section-description{ position:relative; z-index:1; max-width:70ch; margin:20px auto 0; color:var(--mist); }

/* --- featured media: group heads + link cards --- */
.inc-media-grouphead{ display:flex; align-items:center; gap:12px; margin:40px 0 30px; font-family:var(--font-display); color:var(--star); }
.inc-mg-ico{ width:34px; height:34px; flex:0 0 34px; border-radius:10px; display:grid; place-items:center; background:var(--grad-soft); border:1px solid var(--line); }
.inc-mg-ico svg{ width:18px; height:18px; fill:none; stroke:var(--teal); stroke-width:1.6; }
.inc-media-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.inc-media-card{ display:block; background:var(--panel); border:1px solid var(--line); border-radius:var(--r-md); overflow:hidden; text-decoration:none; transition:transform .28s var(--ease), border-color .28s var(--ease), box-shadow .28s var(--ease); }
.inc-media-card:hover{ transform:translateY(-4px); border-color:var(--teal); box-shadow:var(--glow-soft); }
.inc-media-thumb{ position:relative; display:block; aspect-ratio:16/9; background:var(--grad-soft); overflow:hidden; cursor:pointer; }
.inc-media-thumb img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.inc-media-thumb::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(6,6,14,0) 38%, rgba(6,6,14,.55)); opacity:.85; transition:opacity .28s var(--ease); }
.inc-media-card:hover .inc-media-thumb::after{ opacity:.5; }
.inc-media-play{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:2; width:62px; height:62px; border-radius:50%; display:grid; place-items:center; background:var(--grad-btn); box-shadow:0 8px 26px rgba(0,0,0,.42); transition:transform .3s var(--ease), box-shadow .3s var(--ease); }
.inc-media-card:hover .inc-media-play{ transform:translate(-50%,-50%) scale(1.08); box-shadow:var(--glow); }
.inc-media-play svg{ width:24px; height:24px; fill:var(--btn-text); stroke:none; margin-left:3px; }
.inc-ml-t{ display:block; font-family:var(--font-body); font-size:15px; line-height:1.4; color:var(--star); padding:14px 16px; }

/* --- video lightbox (built by site.js) --- */
.inc-vmodal{ position:fixed; inset:0; z-index:100000; display:flex; align-items:center; justify-content:center; padding:24px; background:rgba(4,4,10,.86); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); opacity:0; visibility:hidden; transition:opacity .28s var(--ease), visibility .28s var(--ease); }
.inc-vmodal.is-open{ opacity:1; visibility:visible; }
.inc-vmodal-box{ position:relative; width:min(980px,100%); aspect-ratio:16/9; background:var(--void); border:1px solid var(--line); border-radius:var(--r-md); overflow:hidden; box-shadow:var(--shadow-2); transform:translateY(14px) scale(.98); transition:transform .3s var(--ease); }
.inc-vmodal.is-open .inc-vmodal-box{ transform:none; }
.inc-vmodal-box iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }
.inc-vmodal-close{ position:absolute; top:12px; right:12px; z-index:4; width:42px; height:42px; border-radius:50%; border:1px solid var(--line); background:rgba(17,16,31,.86); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); color:var(--star); display:grid; place-items:center; cursor:pointer; transition:transform .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease); }
.inc-vmodal-close:hover{ transform:scale(1.08); border-color:var(--teal); box-shadow:var(--glow-soft); }
.inc-vmodal-close svg{ width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
@media all and (max-width:640px){ .inc-vmodal{ padding:14px; } }

/* --- collaborate CTA band --- */
.inc-cta-band{ position:relative; overflow:hidden; display:flex; align-items:center; justify-content:space-between; gap:44px; flex-wrap:wrap; background:var(--panel); border:1px solid var(--line); border-radius:var(--r-lg); padding:56px 48px; box-shadow:var(--glow-soft); }
.inc-cta-band::before{ content:""; position:absolute; left:0; top:0; width:4px; height:100%; background:var(--grad); }
.inc-cta-band-text{ flex:1 1 520px; }
.inc-cta-band-text .section-description{ margin-top:16px; max-width:66ch; color:var(--mist); }
.inc-cta-band-action{ flex:0 0 auto; }

/* --- About responsive --- */
@media all and (max-width:1024px){
  .inc-story-body, .inc-wgc-head{ padding:8px 6px; }
  .inc-media-grid{ grid-template-columns:repeat(2,1fr); }
  .inc-cta-band{ padding:46px 36px; }
  .inc-mission-band{ padding:64px 34px; }
}
@media all and (max-width:640px){
  .inc-check-list--2col{ grid-template-columns:1fr; }
  .inc-media-grid{ grid-template-columns:1fr; }
  .inc-chip{ font-size:13px; padding:8px 15px; }
  .inc-chip-grid--lg .inc-chip{ font-size:14px; padding:9px 17px; }
  .inc-pillars{ padding:24px 20px; }
  .inc-mission-band{ padding:48px 22px; }
  .inc-cta-band{ padding:36px 22px; gap:26px; }
  .inc-media-grouphead{ margin:30px 0 20px; }
  .inc-ach-row{ margin-top:6px; }
}

/* ============================================================
   REIKI PAGE · BENEFIT CARDS  (icon + heading + text)
   ============================================================ */
.inc-benefit-cell{ padding:8px; }
.inc-benefit{
  height:100%;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--r-md);
  padding:36px 32px;
  transition:transform .4s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease);
}
.inc-benefit:hover{ transform:translateY(-4px); border-color:var(--teal); box-shadow:var(--glow-soft); }
.inc-benefit-ico{
  width:56px; height:56px; border-radius:15px;
  display:grid; place-items:center;
  background:var(--grad-soft); border:1px solid var(--line);
  margin-bottom:24px;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease);
}
.inc-benefit:hover .inc-benefit-ico{ transform:translateY(-2px); box-shadow:var(--glow-soft); }
.inc-benefit-ico svg{ width:26px; height:26px; fill:none; stroke:var(--teal); stroke-width:1.6; }
.inc-benefit .content-heading{ margin-bottom:12px; }

/* ============================================================
   REIKI PAGE · FAQ ACCORDION  (question toggles answer)
   graceful: collapse is gated behind .inc-js → visible without JS
   ============================================================ */
.inc-acc{ max-width:920px; margin:0 auto; display:flex; flex-direction:column; gap:16px; }
.inc-acc-item{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--r-md);
  overflow:hidden;
  transition:border-color .35s var(--ease), box-shadow .35s var(--ease);
}
.inc-acc-item.is-open{ border-color:var(--teal); box-shadow:var(--glow-soft); }
.inc-acc-h{ margin:0; }
.inc-acc-q{
  width:100%; display:flex; align-items:center; justify-content:space-between; gap:20px;
  text-align:left; background:transparent; border:0; cursor:pointer;
  padding:26px 30px;
  font-family:var(--font-display); color:var(--star);
  font-size:var(--fs-h5); font-weight:600; line-height:1.3; letter-spacing:.01em; font-variant:small-caps;
  transition:color .3s var(--ease);
}
.inc-acc-q:hover{ color:var(--teal); }
.inc-acc-ico{
  flex:0 0 auto; width:34px; height:34px; border-radius:10px;
  display:grid; place-items:center;
  border:1px solid var(--line); background:var(--grad-soft);
  transition:transform .4s var(--ease);
}
.inc-acc-ico svg{ width:16px; height:16px; fill:none; stroke:var(--teal); stroke-width:2; }
.inc-acc-item.is-open .inc-acc-ico{ transform:rotate(45deg); }
.inc-acc-a{ overflow:hidden; }
.inc-js .inc-acc-a{ max-height:0; transition:max-height .42s var(--ease); }
.inc-acc-a-inner{ padding:0 30px 28px; }

/* reiki: centered intro CTA + checklist spacing inside feature body */
.inc-head .inc-btn-row{ margin-top:30px; }
.inc-feature-body .inc-check-list{ margin-top:26px; }

@media all and (max-width:640px){
  .inc-benefit{ padding:28px 24px; }
  .inc-acc-q{ padding:22px 22px; }
  .inc-acc-a-inner{ padding:0 22px 24px; }
}

/* ============================================================
   BLOG · LISTING / INDEX PAGE  (.new-blog-page-type)
   Cosmic restyle over Webware platform defaults — tokens only.
   Layout untouched (platform grid) — we only skin it.
   ============================================================ */
.new-blog-page-type{ color:var(--mist); }
.new-blog-page-type .main-blog-widget{ padding:6px 0 var(--space-section); }
.new-blog-page-type h2,
.new-blog-page-type h3,
.new-blog-page-type h5{ font-family:var(--font-display); color:var(--star); }

/* ---- Search ---- */
.new-blog-page-type .blog-search-container{ margin:0 0 calc(var(--space-section) * .9); }
.new-blog-page-type .blog-search-container .position-relative{ max-width:640px; }
.new-blog-page-type .blog-search-container #search-input-blog{
  -webkit-appearance:none; appearance:none;
  height:60px; width:100%;
  margin:0 !important;
  padding:0 26px 0 56px !important;
  background:var(--panel);
  border:1px solid var(--line) !important;
  border-radius:var(--r-pill) !important;
  color:var(--star);
  font-family:var(--font-body); font-size:16px; letter-spacing:.01em;
  box-shadow:none;
  transition:border-color .35s var(--ease), box-shadow .35s var(--ease), background .35s var(--ease);
}
.new-blog-page-type .blog-search-container #search-input-blog::placeholder{ color:var(--mist-2); }
.new-blog-page-type .blog-search-container #search-input-blog:focus{
  outline:none;
  border-color:var(--teal) !important;
  background:var(--panel-2);
  box-shadow:0 0 0 4px rgba(45,212,191,.14), 0 18px 50px rgba(45,212,191,.16);
}
.new-blog-page-type .blog-search-container .blog-search-button{
  position:absolute; left:20px; top:50%; transform:translateY(-50%);
  width:22px; height:22px; padding:0 !important; background:transparent; border:0; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
}
.new-blog-page-type .blog-search-container .blog-search-button svg{ width:18px; height:18px; }
.new-blog-page-type .blog-search-container .blog-search-button svg path{ fill:var(--mist); transition:fill .3s var(--ease); }
.new-blog-page-type .blog-search-container .blog-search-button:hover svg path,
.new-blog-page-type .blog-search-container .position-relative:focus-within .blog-search-button svg path{ fill:var(--teal); }

/* ---- Section sub-headings (Categories) ---- */
.new-blog-page-type .filter-h2{
  position:relative;
  font-size:var(--fs-h5) !important; font-weight:600; letter-spacing:.06em;
  text-transform:uppercase; font-variant:small-caps;
  margin:0 0 22px; padding-bottom:14px;
  color:var(--star);
}
.new-blog-page-type .filter-h2::after{
  content:""; position:absolute; left:0; bottom:0;
  width:46px; height:2px; border-radius:2px; background:var(--grad);
}

/* ---- Category chips (sidebar + mobile share .ps-blog-category) ---- */
.new-blog-page-type .articles-filter-container{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--r-md);
  padding:30px 28px;
}
.new-blog-page-type .articles-filter-container.show-for-large{ position:sticky; top:96px; }
.new-blog-page-type .ps-blog-category{
  list-style:none; margin:0; padding:10px;
  display:flex; flex-wrap:wrap; gap:10px;
}
.new-blog-page-type .ps-blog-category li{ display:inline-block; margin:0; line-height:1; }
.new-blog-page-type .ps-blog-category li a{
  display:inline-block;
  padding:9px 18px !important;
  border:1px solid var(--line) !important;
  border-radius:var(--r-pill) !important;
  background:transparent !important;
  color:var(--mist) !important;
  font-family:var(--font-body) !important;
  font-size:13px !important; font-weight:500; letter-spacing:.02em; line-height:1.2 !important;
  text-transform:capitalize; white-space:nowrap;
  transition:color .3s var(--ease), border-color .3s var(--ease), background .3s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease);
}
.new-blog-page-type .ps-blog-category li a:hover{
  color:var(--star) !important;
  border-color:var(--teal) !important;
  background:rgba(45,212,191,.10) !important;
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(45,212,191,.16);
}
.new-blog-page-type .ps-blog-category li.active a,
.new-blog-page-type .ps-blog-category li.active a.button{
  color:var(--btn-text) !important;
  background:var(--grad-btn) !important;
  border-color:transparent !important;
  box-shadow:var(--glow);
}

/* ============================================================
   BLOG · ARTICLE CARDS  (editorial: media left, content right)
   ============================================================ */
.new-blog-page-type .blog-ul{
  list-style:none; margin:0; padding:0;
  display:flex; flex-direction:column; gap:var(--gap);
}
.new-blog-page-type .blog-li{ margin:0; }
.new-blog-page-type .blog-li .row{ max-width:none; margin:0; }
.new-blog-page-type .blog-article{
  position:relative; overflow:hidden;
  display:block; float:none; width:auto;
  padding:22px !important;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  box-shadow:var(--shadow-2);
  transition:transform .45s var(--ease), border-color .45s var(--ease), box-shadow .45s var(--ease);
}
.new-blog-page-type .blog-article:hover{
  transform:translateY(-6px);
  border-color:var(--teal);
  box-shadow:0 36px 80px rgba(0,0,0,.5), 0 0 0 1px rgba(45,212,191,.25), 0 22px 60px rgba(45,212,191,.18);
}

/* media */
.new-blog-page-type .ps-article-img{
  position:relative; float:left; width:46%; margin:0 30px 0 0;
  border-radius:var(--r-md); overflow:hidden; background:var(--void-2);
  border:1px solid var(--line);
}
.new-blog-page-type .ps-article-img::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(6,6,14,0) 55%, rgba(6,6,14,.45) 100%);
  opacity:.7; transition:opacity .45s var(--ease);
}
.new-blog-page-type .blog-article:hover .ps-article-img::after{ opacity:1; }
.new-blog-page-type .ps-article-img img{
  display:block; width:100%; height:auto; aspect-ratio:16/11; object-fit:cover; margin:0;
  transform:scale(1.001);
  transition:transform .6s var(--ease);
}
.new-blog-page-type .blog-article:hover .ps-article-img img{ transform:scale(1.06); }

/* category line */
.new-blog-page-type .article-category{
  margin:4px 0 14px; font-family:var(--font-body);
  font-size:12px; letter-spacing:.06em; line-height:1.7;
}
.new-blog-page-type .article-category .categories_text{
  color:var(--mist-2); text-transform:uppercase; letter-spacing:.12em; font-weight:600;
}
.new-blog-page-type .article-category a{
  color:var(--teal); text-transform:capitalize; transition:color .3s var(--ease);
}
.new-blog-page-type .article-category a:hover{ color:var(--aqua); }

/* title */
.new-blog-page-type .article-title{ margin:0 0 12px; }
.new-blog-page-type .article-title a{
  display:inline; font-family:var(--font-display); color:var(--star) !important;
  font-size:clamp(21px,2vw,27px) !important; font-weight:600; line-height:1.28; letter-spacing:.005em;
  text-wrap:balance; transition:color .3s var(--ease);
}
.new-blog-page-type .article-title a:hover{ color:var(--teal) !important; }

/* excerpt */
.new-blog-page-type .article-body{ margin:0 0 18px; }
.new-blog-page-type .article-body p{
  margin:0; color:var(--mist); font-family:var(--font-serif);
  font-size:18px; line-height:1.6;
}

/* read more */
.new-blog-page-type .blog-read-more{
  display:inline-flex; align-items:center; gap:9px;
  font-family:var(--font-body); font-weight:600; font-size:14px; letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--teal) !important; transition:gap .3s var(--ease), color .3s var(--ease);
}
.new-blog-page-type .blog-read-more::after{
  content:""; width:20px; height:9px; flex:0 0 auto;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M0 6h21M16 1l5 5-5 5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M0 6h21M16 1l5 5-5 5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  transition:transform .3s var(--ease);
}
.new-blog-page-type .blog-article:hover .blog-read-more{ gap:14px; color:var(--aqua) !important; }
.new-blog-page-type .blog-article:hover .blog-read-more::after{ transform:translateX(4px); }
.new-blog-page-type .blog-read-more .pb-0,
.new-blog-page-type .blog-li p.pb-0{ margin:0; }

/* ---- Pagination ---- */
.new-blog-page-type .ps-pagination-bar{ margin-top:calc(var(--space-section) * .9); }
.new-blog-page-type .ps-pagination-bar p{ display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin:0; }
.new-blog-page-type .ps-pagination-bar span{
  display:inline-block; margin:0 !important; border-radius:var(--r-md) !important;
  background:var(--panel) !important; border:1px solid var(--line) !important;
  color:var(--mist) !important; font-family:var(--font-body); font-weight:600; font-size:14px;
  transition:color .3s var(--ease), border-color .3s var(--ease), background .3s var(--ease);
}
.new-blog-page-type .ps-pagination-bar span a{ display:block; padding:11px 16px; color:inherit; }
.new-blog-page-type .ps-pagination-bar span.current{ padding:11px 16px; }
.new-blog-page-type .ps-pagination-bar span:hover{ border-color:var(--teal) !important; color:var(--star) !important; }
.new-blog-page-type .ps-pagination-bar span.current,
.new-blog-page-type .ps-pagination-bar span.next,
.new-blog-page-type .ps-pagination-bar span.prev{
  background:var(--grad-btn) !important; border-color:transparent !important; color:var(--btn-text) !important;
}

/* ---- Sidebar shell ---- */
.new-blog-page-type .blog-sidebar{ align-self:flex-start; }

/* ============================================================
   BLOG LISTING · RESPONSIVE
   ============================================================ */
@media all and (max-width:1023px){
  .new-blog-page-type .articles-filter-container.hide-for-large{ margin-bottom:var(--gap); }
  .new-blog-page-type .ps-article-img{ float:none; width:100%; margin:0 0 22px; }
  .new-blog-page-type .ps-article-img img{ aspect-ratio:16/9; }
  /* keep chips as chips on mobile (override platform borderless list) */
  .new-blog-page-type .articles-filter-container .ps-blog-category li{ width:auto; }
  .new-blog-page-type .articles-filter-container .ps-blog-category li a{
    width:auto; text-align:center; border-bottom:1px solid var(--line) !important;
  }
}
@media all and (max-width:640px){
  .new-blog-page-type .blog-article{ padding:16px !important; border-radius:var(--r-md); }
  .new-blog-page-type .articles-filter-container{ padding:24px 20px; }
  .new-blog-page-type .blog-search-container #search-input-blog{ height:54px; padding:0 20px 0 50px !important; }
}

/* ============================================================
   BLOG · SINGLE ARTICLE PAGE  (.article-page-type / .new-blog-template)
   Cosmic long-form restyle over Webware platform defaults.
   Scope = .article-page-type (unique to post page → no leak to listing).
   ============================================================ */
.article-page-type{ background:transparent !important; color:var(--mist); }
.article-page-type .color-black{ color:var(--mist); }
.article-page-type h1,
.article-page-type h2,
.article-page-type h3{ font-family:var(--font-display); color:var(--star); }

/* undo platform card box on the article wrapper → open editorial reading */
.article-page-type .blog-widget{ background:transparent; border:0; border-radius:0; box-shadow:none; overflow:visible; }
.article-page-type .inner-blog-widget{ padding:0; }
.article-page-type .blog-article-content{ min-width:0; }

/* ---- Hero image ---- */
.article-page-type .ps-article-img{
  position:relative; margin:0 0 38px; padding:0;
  border-radius:var(--r-lg); overflow:hidden;
  border:1px solid var(--line); box-shadow:var(--shadow-2);
}
.article-page-type .ps-article-img img{
  display:block; width:100%; height:auto; margin:0;
  aspect-ratio:16/9; object-fit:cover;
}

/* ---- Title (H1) ---- */
.article-page-type .article-title.widget-title{
  font-family:var(--font-display); color:var(--star) !important;
  font-size:clamp(30px,4.4vw,50px) !important; line-height:1.2 !important;
  letter-spacing:.01em; text-transform:none !important; font-weight:700;
  margin:0 0 22px !important; padding:0 !important; text-wrap:balance;
}
.article-page-type .article-title.widget-title a{ color:var(--star) !important; }
.article-page-type .blog-widget .widget-title::before,
.article-page-type .blog-widget .widget-title::after{ display:none !important; }

/* ---- Meta row (author + date) ---- */
.article-page-type .blog-author{ margin:0 0 16px; }
.article-page-type .lab-ul{
  display:flex; flex-wrap:wrap; align-items:center; gap:10px 24px;
  list-style:none; margin:0; padding:0;
}
.article-page-type .lab-ul li{
  display:inline-flex; align-items:center; gap:8px; margin:0;
  font-family:var(--font-body); font-size:14px; letter-spacing:.02em; color:var(--mist);
}
.article-page-type .lab-ul li svg{ width:17px; height:17px; flex:0 0 auto; fill:var(--teal); margin:0; }
.article-page-type .lab-ul .author_name,
.article-page-type .lab-ul .pubdate{ color:var(--mist); }

/* ---- Category line ---- */
.article-page-type .widget-category{
  display:flex; align-items:center; flex-wrap:wrap; gap:7px;
  margin:0 0 32px; padding-bottom:28px; border-bottom:1px solid var(--line);
  font-family:var(--font-body); font-size:13px; line-height:1.7; color:var(--mist);
}
.article-page-type .widget-category svg{ width:16px; height:16px; flex:0 0 auto; fill:var(--teal); margin:0 3px 0 0; vertical-align:middle; }
.article-page-type .widget-category .categories_text{ color:var(--mist-2); text-transform:uppercase; letter-spacing:.12em; font-weight:600; }
.article-page-type .blog-widget .widget-category span a{ color:var(--teal); transition:color .3s var(--ease); }
.article-page-type .blog-widget .widget-category span:hover a{ color:var(--aqua); }

/* ============================================================
   ARTICLE BODY · long-form typography (.article-body.rte)
   ============================================================ */
.article-page-type .article-body{
  font-family:var(--font-serif); color:var(--mist);
  font-size:19px; line-height:1.78;
}
.article-page-type .article-body p{ margin:0 0 22px; }
.article-page-type .article-body > p:first-of-type{ font-size:21px; line-height:1.72; color:rgba(238,235,255,.84); }
.article-page-type .article-body h2{
  font-family:var(--font-display); color:var(--star);
  font-size:clamp(25px,2.9vw,33px); line-height:1.3; letter-spacing:.01em;
  margin:50px 0 18px; text-wrap:balance;
}
.article-page-type .article-body h3{
  font-family:var(--font-display); color:var(--star);
  font-size:clamp(20px,2.2vw,24px); line-height:1.35;
  margin:36px 0 14px; text-wrap:balance;
}
.article-page-type .article-body h2 + h3{ margin-top:22px; }
.article-page-type .article-body strong{ color:var(--star); font-weight:600; }
.article-page-type .article-body em{ color:var(--mist); }
.article-page-type .article-body a{
  color:var(--teal); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px;
  transition:color .3s var(--ease);
}
.article-page-type .article-body a:hover{ color:var(--aqua); }
.article-page-type .article-body img{ max-width:100%; height:auto; border-radius:var(--r-md); margin:12px 0; border:1px solid var(--line); }

/* lists with gradient gem bullets */
.article-page-type .article-body ul{ list-style:none; margin:0 0 26px; padding:0; }
.article-page-type .article-body ul li{
  position:relative; padding-left:30px; margin:0 0 13px; line-height:1.66;
}
.article-page-type .article-body ul li::before{
  content:""; position:absolute; left:3px; top:.62em;
  width:9px; height:9px; border-radius:2px; background:var(--grad);
  transform:rotate(45deg); box-shadow:0 0 10px rgba(45,212,191,.45);
}
.article-page-type .article-body ol{ margin:0 0 26px; padding-left:22px; }
.article-page-type .article-body ol li{ margin:0 0 13px; line-height:1.66; }
.article-page-type .article-body ol li::marker{ color:var(--teal); font-family:var(--font-body); font-weight:600; }
.article-page-type .article-body blockquote{
  margin:30px 0; padding:6px 0 6px 26px; border-left:3px solid var(--teal);
  font-style:italic; font-size:21px; color:var(--star);
}

/* ---- Divider (platform hides hr → re-enable as cosmic line) ---- */
.article-page-type .blog-inner-text hr{
  display:block; height:1px; border:0; margin:40px 0;
  background:linear-gradient(90deg, transparent, var(--line) 18%, var(--line) 82%, transparent);
}

/* ---- Back-to-blog button ---- */
.article-page-type .back-to-blog{ margin:36px 0 0; }
.article-page-type .back-to-blog a.button{
  display:inline-block; padding:15px 32px;
  background:transparent; border:2px solid var(--line); border-radius:var(--r-pill);
  color:var(--star); font-family:var(--font-body); font-weight:600;
  font-size:14px; letter-spacing:.08em; text-transform:uppercase; cursor:pointer;
  transition:color .35s var(--ease), border-color .35s var(--ease), background .35s var(--ease), transform .35s var(--ease), box-shadow .35s var(--ease);
}
.article-page-type .back-to-blog a.button:hover{
  color:var(--teal); border-color:var(--teal); background:rgba(45,212,191,.10);
  transform:translateY(-3px); box-shadow:0 14px 34px rgba(45,212,191,.18);
}

/* ============================================================
   ARTICLE · SIDEBAR (Tags + Recent Posts)
   ============================================================ */
.article-page-type .blog-sidebar{ align-self:flex-start; }
.article-page-type .blog-sidebar-widget{
  background:var(--panel); border:1px solid var(--line); border-radius:var(--r-md);
  padding:28px 26px; margin-bottom:var(--gap); box-shadow:none;
}
.article-page-type .blog-sidebar-widget .blog-sidebar-h2{
  position:relative; font-family:var(--font-display); color:var(--star);
  font-size:var(--fs-h5) !important; line-height:1.3 !important; font-weight:600;
  text-transform:uppercase; font-variant:small-caps; letter-spacing:.06em;
  margin:0 0 22px !important; padding:0 0 14px !important;
}
.article-page-type .blog-sidebar-widget .blog-sidebar-h2::before{ background-color:var(--line); height:1px; }
.article-page-type .blog-sidebar-widget .blog-sidebar-h2::after{ background:var(--grad); width:46px; height:2px; }

/* tags → chips */
.article-page-type .ps-blog-tags{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:10px; }
.article-page-type .ps-blog-tags li{ margin:0; }
.article-page-type .ps-blog-tags li a{
  display:inline-block; padding:8px 16px; position:static;
  border:1px solid var(--line); border-radius:var(--r-pill);
  color:var(--mist); font-family:var(--font-body); font-size:13px; font-weight:500; letter-spacing:.02em;
  text-transform:capitalize; white-space:nowrap;
  transition:color .3s var(--ease), border-color .3s var(--ease), background .3s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease);
}
.article-page-type .ps-blog-tags li a::before{ display:none; }
.article-page-type .ps-blog-tags li a:hover{
  color:var(--star); border-color:var(--teal); background:rgba(45,212,191,.10);
  transform:translateY(-2px); box-shadow:0 10px 24px rgba(45,212,191,.16);
}

/* recent posts → clean link list */
.article-page-type .ps-blog-recent-posts{ list-style:none; margin:0; padding:0; }
.article-page-type .ps-blog-recent-posts li{ margin:0; padding:14px 0; border-bottom:1px solid var(--line-soft); }
.article-page-type .ps-blog-recent-posts li:first-child{ padding-top:0; }
.article-page-type .ps-blog-recent-posts li:last-child{ padding-bottom:0; border-bottom:0; }
.article-page-type .ps-blog-recent-posts li a{
  display:block; position:static; padding:0;
  font-family:var(--font-serif); font-size:17px; line-height:1.45; color:var(--mist);
  transition:color .3s var(--ease);
}
.article-page-type .ps-blog-recent-posts li a::before{ display:none; }
.article-page-type .ps-blog-recent-posts li a:hover{ color:var(--teal); }

/* ============================================================
   ARTICLE PAGE · RESPONSIVE
   ============================================================ */
@media all and (max-width:1023px){
  .article-page-type .blog-sidebar{ position:static; margin-top:var(--gap); }
  .article-page-type .ps-article-img img{ aspect-ratio:16/10; }
}
@media all and (max-width:640px){
  .article-page-type .article-body{ font-size:18px; }
  .article-page-type .article-body > p:first-of-type{ font-size:19px; }
  .article-page-type .blog-sidebar-widget{ padding:24px 20px; }
  .article-page-type .back-to-blog a.button{ display:block; text-align:center; }
}

/* ============================================================
   LEAD-MAGNET FORM  (#lead-magnet-form / .ww-form-container)
   Cosmic form card over Webware platform defaults — tokens only.
   (Platform form markup untouched — only skinned.)
   ============================================================ */
#lead-magnet-form{ color:var(--mist); }
#lead-magnet-form .ww-form-container{
  position:relative; max-width:560px; margin:0 auto; overflow:hidden;
  background:var(--panel); border:1px solid var(--line);
  border-radius:var(--r-lg); padding:clamp(28px,4vw,46px);
  box-shadow:var(--shadow-2);
}
#lead-magnet-form .ww-form-container::before{
  content:""; position:absolute; left:0; right:0; top:0; height:3px; background:var(--grad);
}
#lead-magnet-form form{ width:100%; margin:0; }

/* intro / heading text */
#lead-magnet-form form .section-main-heading{
  font-family:var(--font-display); color:var(--star);
  text-wrap:balance; margin:0; line-height:1.12;
  font-size:28px; text-align:center;
}
#lead-magnet-form form p{
  font-family:var(--font-serif); color:var(--mist);
  line-height:1.3; letter-spacing:.01em;
  text-align:center; text-wrap:balance; margin:0 0 28px;
}

/* field wraps */
#lead-magnet-form .first_name_wrap,
#lead-magnet-form .email_wrap{ margin:0 0 20px; text-align:left; }

/* labels */
#lead-magnet-form label{
  display:block; margin:0 0 9px;
  font-family:var(--font-body); font-size:13px; font-weight:600;
  letter-spacing:.08em; text-transform:uppercase; color:var(--mist);
}
#lead-magnet-form .required{ color:var(--coral); margin-left:4px; }

/* inputs (match platform selector depth → source-order win) */
#lead-magnet-form .ww-form-container input[type="text"],
#lead-magnet-form .ww-form-container input[type="email"]{
  -webkit-appearance:none; appearance:none;
  width:100%; height:54px; box-sizing:border-box; margin:0; box-shadow:none;
  padding:0 20px;
  background:var(--void-2); color:var(--star);
  border:1px solid var(--line); border-radius:var(--r-pill);
  font-family:var(--font-body); font-size:16px; letter-spacing:.01em;
  color-scheme:dark; caret-color:var(--teal);
  transition:border-color .35s var(--ease), box-shadow .35s var(--ease), background .35s var(--ease);
}
#lead-magnet-form .ww-form-container input[type="text"]::placeholder,
#lead-magnet-form .ww-form-container input[type="email"]::placeholder{ color:var(--mist-2); }
#lead-magnet-form .ww-form-container input[type="text"]:focus,
#lead-magnet-form .ww-form-container input[type="email"]:focus{
  outline:none; border-color:var(--teal); background:var(--panel-2);
  box-shadow:0 0 0 4px rgba(45,212,191,.14), 0 16px 44px rgba(45,212,191,.14);
}
/* keep dark look through browser autofill */
#lead-magnet-form input:-webkit-autofill,
#lead-magnet-form input:-webkit-autofill:hover,
#lead-magnet-form input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--star);
  -webkit-box-shadow:0 0 0 1000px var(--void-2) inset;
  caret-color:var(--star);
}

/* errors */
#lead-magnet-form .error,
#lead-magnet-form span.error{
  display:block; margin:7px 0 0 !important;
  font-family:var(--font-body); font-size:12.5px; letter-spacing:.02em; color:var(--coral);
}

/* recaptcha (invisible token here) — keep tidy + centered if a badge renders */
#lead-magnet-form .captcha_wrap{ margin:0; }
#lead-magnet-form .recaptcha-block{ display:flex; justify-content:center; }

/* submit */
#lead-magnet-form .submit_wrap{ margin-top:28px; }
#lead-magnet-form .submit_wrap input[type="submit"],
#lead-magnet-form input.button.input{
  -webkit-appearance:none; appearance:none;
  width:100%; cursor:pointer; margin:0;
  padding:17px 32px; border:0; border-radius:var(--r-pill);
  background:var(--grad-btn); color:var(--btn-text);
  font-family:var(--font-body); font-weight:700; font-size:15px;
  letter-spacing:.06em; text-transform:uppercase; line-height:1.2;
  box-shadow:var(--glow);
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), filter .35s var(--ease);
}
#lead-magnet-form .submit_wrap input[type="submit"]:hover,
#lead-magnet-form input.button.input:hover{
  transform:translateY(-3px); filter:brightness(1.05);
  box-shadow:0 22px 52px rgba(45,212,191,.42);
}
#lead-magnet-form .submit_wrap input[type="submit"]:active,
#lead-magnet-form input.button.input:active{ transform:translateY(-1px); }

@media all and (max-width:640px){
  #lead-magnet-form .ww-form-container{ padding:26px 20px; }
  #lead-magnet-form .submit_wrap input[type="submit"],
  #lead-magnet-form input.button.input{ padding:15px 28px; }
}

/* ============================================================
   POPUP CLOSE BUTTON  (.mfp-close — Magnific Popup)
   Cosmic glass icon-button. Overrides library defaults across
   inline / image / iframe popups → one consistent close.
   ============================================================ */
.mfp-close,
a.mfp-close,
.mfp-close-btn-in .mfp-close,
.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close{
  position:absolute; top:10px; right:10px; left:auto;
  width:46px; height:46px; line-height:46px;
  display:flex; align-items:center; justify-content:center;
  margin:0; padding:0;
  font-size:0; text-align:center; text-decoration:none;
  color:var(--star); opacity:1; cursor:pointer;
  background:rgba(10,10,22,.6);
  border:1px solid var(--line); border-radius:50%;
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  z-index:1046;
  transition:color .35s var(--ease), background .35s var(--ease), border-color .35s var(--ease), transform .45s var(--ease), box-shadow .35s var(--ease);
}
.mfp-close::before{
  content:""; display:block; width:16px; height:16px; flex:0 0 auto; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4l16 16M20 4L4 20' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4l16 16M20 4L4 20' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/contain;
}
.mfp-close:hover,
.mfp-close:focus{
  color:var(--teal);
  background:rgba(45,212,191,.14);
  border-color:var(--teal);
  opacity:1;
  transform:rotate(90deg) scale(1.06);
  box-shadow:0 14px 38px rgba(45,212,191,.32);
}
.mfp-close:active{ top:10px; transform:rotate(90deg) scale(.95); }
.mfp-close:focus-visible{ outline:2px solid var(--teal); outline-offset:3px; }

/* mobile image popup — keep it fixed (library) but cosmic + circular */
.mfp-img-mobile .mfp-close{
  position:fixed; top:12px; right:12px;
  width:44px; height:44px; line-height:44px;
  display:flex; align-items:center; justify-content:center;
  padding:0; font-size:0;
  color:var(--star); background:rgba(10,10,22,.72);
  border:1px solid var(--line); border-radius:50%;
}

/* ============================================================
   FIX · Blog/Article system pages ship with theme ".light-bg"
   (light background + dark text from the theme stylesheet).
   That made the cosmic light text invisible. Force cosmic dark
   so all article/blog text is readable. (CSS only — no markup.)
   ============================================================ */
main.light-bg.article-page-type,
main.light-bg.new-blog-page-type,
main.light-bg.generic-page-type.new-blog-template,
.article-page-type.light-bg,
.new-blog-page-type.light-bg{
  background:var(--void) !important;
}
/* base text safety: flip any theme dark-text the skin didn't recolor */
.article-page-type .blog-article-content,
.article-page-type .blog-inner-text,
.article-page-type .blog-sidebar,
.new-blog-page-type .blog-articles,
.new-blog-page-type .blog-sidebar{ color:var(--mist); }

/* ============================================================
   HARD FIX · Article text invisibility
   Theme ".light-bg / .rte" sets paragraph color DIRECTLY (dark),
   which beats container-level inheritance → dark-on-dark/invisible.
   Force cosmic colours directly on the text elements with !important.
   (CSS only — markup/content untouched.)
   ============================================================ */
#mainContent.light-bg,
main.light-bg.article-page-type,
.article-page-type.light-bg{ background:var(--void) !important; }

/* kill any white card/box behind the text */
.article-page-type .blog-widget,
.article-page-type .inner-blog-widget,
.article-page-type .blog-inner-text,
.article-page-type .article-body,
.article-page-type .blog-sidebar-widget{ background:transparent !important; }

/* force readable body text (direct, beats .light-bg p / .rte p) */
.article-page-type .blog-inner-text,
.article-page-type .article-body,
.article-page-type .article-body p,
.article-page-type .article-body li,
.article-page-type .article-body td{ color:var(--mist) !important; }
.article-page-type .article-body > p:first-of-type{ color:rgba(238,235,255,.88) !important; }
.article-page-type .article-body h2,
.article-page-type .article-body h3,
.article-page-type .article-body h4,
.article-page-type .article-body strong,
.article-page-type .article-body b{ color:var(--star) !important; }
.article-page-type .article-body a,
.article-page-type .article-body a:link{ color:var(--teal) !important; }
.article-page-type .article-body a:hover{ color:var(--aqua) !important; }

/* ============================================================
   HARD FIX 2 · transparent-fill / clip-text text
   color:!important canNOT override -webkit-text-fill-color.
   If the theme uses gradient/clip text, body stays transparent.
   Reset fill-color + clip + opacity/visibility on article text.
   ============================================================ */
.article-page-type .blog-inner-text,
.article-page-type .article-body,
.article-page-type .article-body p,
.article-page-type .article-body li,
.article-page-type .article-body td{
  -webkit-text-fill-color:var(--mist) !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  opacity:1 !important; visibility:visible !important;
}
.article-page-type .article-body > p:first-of-type{ -webkit-text-fill-color:rgba(238,235,255,.88) !important; }
.article-page-type .article-body h2,
.article-page-type .article-body h3,
.article-page-type .article-body h4,
.article-page-type .article-body strong,
.article-page-type .article-body b{ -webkit-text-fill-color:var(--star) !important; }
.article-page-type .article-body a,
.article-page-type .article-body a:link{ -webkit-text-fill-color:var(--teal) !important; }
.article-page-type .article-body a:hover{ -webkit-text-fill-color:var(--aqua) !important; }

/* ============================================================
   HARD FIX 3 · STACKING (the real cause)
   A theme overlay/background layer paints OVER the article content,
   hiding the (static) text. Lift the real content above it with
   position:relative + z-index. (Confirmed: position:relative fixes it.)
   ============================================================ */
.article-page-type .blog-article-content,
.article-page-type .blog-widget,
.article-page-type .inner-blog-widget,
.article-page-type .blog-inner-text,
.article-page-type .article-body,
.article-page-type .article-body p,
.article-page-type .article-body li,
.article-page-type .article-body td,
.article-page-type .article-body h2,
.article-page-type .article-body h3,
.article-page-type .article-body h4,
.article-page-type .article-body ul,
.article-page-type .article-body ol,
.article-page-type .article-body blockquote,
.article-page-type .article-body a,
.article-page-type .blog-sidebar,
.article-page-type .blog-sidebar-widget{
  position:relative;
  z-index:1;
}

/* ============================================================
   LOGIN / REGISTER FORM  (.new-website-login-form — platform markup)
   ============================================================ */
.new-website-login-form .ps-login-form-wrap{
  position:relative; max-width:520px; margin:0 auto;
  background:var(--panel); border:1px solid var(--line);
  border-radius:var(--r-lg); padding:clamp(28px,4vw,48px);
  box-shadow:var(--shadow-2); overflow:hidden;
}
.new-website-login-form .ps-login-form-wrap::before{
  content:""; position:absolute; left:0; right:0; top:0; height:4px;
  background:var(--grad-btn);
}
.new-website-login-form h4{
  font-family:var(--font-display); color:var(--star);
  font-size:clamp(26px,3.4vw,34px); font-weight:600; line-height:1.14;
  letter-spacing:.012em; text-align:center; text-wrap:balance; margin:0 0 26px;
}
.new-website-login-form form.settings{ margin:0; }
.new-website-login-form form.settings > div{ margin:0 0 18px; text-align:left; }
.new-website-login-form form.settings label{
  display:block; font-family:var(--font-body); color:var(--mist);
  font-size:14px; font-weight:600; letter-spacing:.04em;
  text-transform:uppercase; margin:0 0 8px;
}
.new-website-login-form form.settings label .error{ color:var(--coral); margin-left:4px; }
.new-website-login-form form.settings input[type="text"],
.new-website-login-form form.settings input[type="email"],
.new-website-login-form form.settings input[type="password"]{
  width:100%; height:54px; box-sizing:border-box; margin:0;
  font-family:var(--font-body); font-size:16px; color:var(--star);
  background:var(--void-2); border:1px solid var(--line);
  border-radius:var(--r-pill); padding:0 20px; box-shadow:none;
  transition:border-color .25s var(--ease), box-shadow .25s var(--ease);
}
.new-website-login-form form.settings input::placeholder{ color:var(--mist-2); }
.new-website-login-form form.settings input[type="text"]:focus,
.new-website-login-form form.settings input[type="email"]:focus,
.new-website-login-form form.settings input[type="password"]:focus{
  outline:none; border-color:var(--teal); box-shadow:0 0 0 3px rgba(45,212,191,.18);
}
.new-website-login-form input:-webkit-autofill,
.new-website-login-form input:-webkit-autofill:hover,
.new-website-login-form input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--star);
  -webkit-box-shadow:0 0 0 1000px var(--void-2) inset;
  caret-color:var(--star);
}
.new-website-login-form .password-container{ position:relative; }
.new-website-login-form .password-container input{ padding-right:48px; }
.new-website-login-form .toggle-password{
  position:absolute; top:50%; transform:translateY(-50%);
  color:var(--mist-2); cursor:pointer; font-size:15px;
  transition:color .2s var(--ease);
}
.new-website-login-form .toggle-password:hover{ color:var(--teal); }
.new-website-login-form .password-container + p{
  font-family:var(--font-body); color:var(--mist-2);
  font-size:12.5px; letter-spacing:.02em; margin:8px 0 0;
}
.new-website-login-form form.settings input[type="submit"].button{
  width:100% !important; height:54px !important; border-radius:var(--r-pill) !important;
  font-family:var(--font-body); font-weight:700; font-size:15px;
  letter-spacing:.06em; text-transform:uppercase;
  color:var(--btn-text); background:var(--grad-btn); border:none;
  cursor:pointer; margin:22px 0 0 !important; box-shadow:var(--glow);
  transition:transform .25s var(--ease), box-shadow .25s var(--ease), filter .25s var(--ease);
}
.new-website-login-form form.settings input[type="submit"].button:hover{
  transform:translateY(-2px); filter:brightness(1.06);
  box-shadow:var(--glow), var(--shadow-2);
}
.new-website-login-form form.settings input[type="submit"].button:active{ transform:translateY(-1px); }
.new-website-login-form .ps-login-form-wrap > p{
  font-family:var(--font-body); color:var(--mist);
  font-size:14px; text-align:center; margin:20px 0 0;
}
.new-website-login-form .ps-login-form-wrap > p a{
  color:var(--aqua); text-decoration:none;
  border-bottom:1px solid rgba(94,234,212,.4);
  transition:color .2s var(--ease), border-color .2s var(--ease);
}
.new-website-login-form .ps-login-form-wrap > p a:hover{ color:var(--teal); border-color:var(--teal); }
.new-website-login-form .ps-separator{
  width:100%; height:1px; border:none;
  background:linear-gradient(90deg,transparent,var(--line),transparent);
  margin:30px 0 22px;
}
.new-website-login-form .signup-container{ text-align:center; }
.new-website-login-form .signup-container > p{
  font-family:var(--font-body); color:var(--mist); font-size:14px; margin:0 0 14px;
}
.new-website-login-form .signup-container .button{
  width:auto !important; min-width:210px; height:52px !important;
  border-radius:var(--r-pill) !important;
  font-family:var(--font-body); font-weight:700; font-size:14px;
  letter-spacing:.06em; text-transform:uppercase;
  color:var(--star); background:transparent; border:1.5px solid var(--line);
  cursor:pointer; padding:0 28px;
  transition:border-color .25s var(--ease), color .25s var(--ease), background .25s var(--ease);
}
.new-website-login-form .signup-container .button:hover{
  border-color:var(--teal); color:var(--teal); background:rgba(45,212,191,.06);
}
@media all and (max-width:640px){
  .new-website-login-form .ps-login-form-wrap{ padding:26px 20px; }
  .new-website-login-form .signup-container .button{ width:100% !important; }
}

/* ============================================================
   NEWSLETTER SIGNUP FORM  (.ww-newsletter-registration — platform markup)
   ============================================================ */
.ww-newsletter-registration form{
  position:relative; box-sizing:border-box;
  background:var(--panel); border:1px solid var(--line);
  border-radius:var(--r-lg); padding:clamp(28px,4vw,46px);
  box-shadow:var(--shadow-2); overflow:hidden;
  font-family:var(--font-body); color:var(--mist); font-size:15px; line-height:1.5;
}
.ww-newsletter-registration form::before{
  content:""; position:absolute; left:0; right:0; top:0; height:4px; background:var(--grad-btn);
}
.ww-newsletter-registration form fieldset{ border:0 !important; padding:0 !important; margin:18px 0 0; min-width:0; }
.ww-newsletter-registration legend{
  display:block; width:100%; padding:0;
  font-family:var(--font-display); color:var(--star);
  font-size:clamp(20px,2.6vw,26px); font-weight:600; line-height:1.2;
  letter-spacing:.012em; margin:0 0 20px;
}
.ww-newsletter-registration .first_name_wrap,
.ww-newsletter-registration .last_name_wrap,
.ww-newsletter-registration .email_wrap{ margin:0 0 18px; text-align:left; width:100% !important; }
.ww-newsletter-registration .first_name_wrap label,
.ww-newsletter-registration .last_name_wrap label,
.ww-newsletter-registration .email_wrap label{
  display:block; font-family:var(--font-body); color:var(--mist);
  font-size:14px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; margin:0 0 8px;
}
.ww-newsletter-registration .required{ color:var(--coral); margin-left:4px; }
.ww-newsletter-registration input[type="text"],
.ww-newsletter-registration input[type="email"]{
  width:100% !important; height:54px !important; box-sizing:border-box; margin:0;
  font-family:var(--font-body); font-size:16px; color:var(--star);
  background:var(--void-2); border:1px solid var(--line);
  border-radius:var(--r-pill); padding:0 20px; box-shadow:none;
  transition:border-color .25s var(--ease), box-shadow .25s var(--ease);
}
.ww-newsletter-registration input[type="text"]::placeholder,
.ww-newsletter-registration input[type="email"]::placeholder{ color:var(--mist-2); }
.ww-newsletter-registration input[type="text"]:focus,
.ww-newsletter-registration input[type="email"]:focus{
  outline:none; border-color:var(--teal); box-shadow:0 0 0 3px rgba(45,212,191,.18);
}
.ww-newsletter-registration input:-webkit-autofill,
.ww-newsletter-registration input:-webkit-autofill:hover,
.ww-newsletter-registration input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--star);
  -webkit-box-shadow:0 0 0 1000px var(--void-2) inset; caret-color:var(--star);
}
.ww-newsletter-registration .checkbox_wrap{ margin:2px 0 0; }
.ww-newsletter-registration .checkbox_wrap > p{ margin:0; }
.ww-newsletter-registration .checkbox_wrap .float-left{ float:none; }
.ww-newsletter-registration .checkbox_wrap label{
  display:flex; align-items:flex-start; gap:10px; cursor:pointer; margin:0;
  font-family:var(--font-body); color:var(--mist); font-size:14px;
  font-weight:400; letter-spacing:0; text-transform:none;
}
.ww-newsletter-registration .checkbox_wrap input[type="checkbox"]{
  width:18px; height:18px; margin:1px 0 0; flex:0 0 auto;
  accent-color:var(--teal); cursor:pointer;
}
.ww-newsletter-registration .captcha_wrap{ margin:0; }
.ww-newsletter-registration .recaptcha-block{ display:flex; justify-content:center; }
.ww-newsletter-registration .submit_wrap{ margin-top:26px; }
.ww-newsletter-registration .submit_wrap label{ display:none; }
.ww-newsletter-registration input[type="submit"].button{
  width:100% !important; height:54px !important; border-radius:var(--r-pill) !important;
  font-family:var(--font-body); font-weight:700; font-size:15px;
  letter-spacing:.06em; text-transform:uppercase;
  color:var(--btn-text); background:var(--grad-btn); border:none;
  cursor:pointer; margin:0 !important; box-shadow:var(--glow);
  transition:transform .25s var(--ease), box-shadow .25s var(--ease), filter .25s var(--ease);
}
.ww-newsletter-registration input[type="submit"].button:hover{
  transform:translateY(-2px); filter:brightness(1.06); box-shadow:var(--glow), var(--shadow-2);
}
.ww-newsletter-registration input[type="submit"].button:active{ transform:translateY(-1px); }
.ww-newsletter-registration .error{
  display:block; color:var(--coral); font-family:var(--font-body);
  font-size:12.5px; letter-spacing:.02em; margin-top:6px;
}
@media all and (max-width:640px){
  .ww-newsletter-registration form{ padding:26px 20px; }
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
/* button arrows (primary/secondary) — render outline + slide on hover */
.web-primary-btn svg,
.web-secondary-btn svg{
  width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2;
  stroke-linecap:round; stroke-linejoin:round; transition:transform .28s ease;
}
.web-primary-btn:hover svg,
.web-secondary-btn:hover svg{ transform:translateX(4px); }

/* 2 · founder note — centered editorial statement */
.inc-founder{ max-width:880px; margin:0 auto; text-align:center; }
.inc-founder-rule{ display:block; width:54px; height:2px; border-radius:2px; background:var(--grad); margin:0 auto 30px; }
.inc-founder-lead{
  font-family:var(--font-serif); font-size:clamp(20px,2.4vw,27px); line-height:1.5;
  letter-spacing:.005em; color:var(--star); text-wrap:balance; margin:0;
}

/* 3 · start the conversation — glass CTA card */
.inc-talk-card{
  position:relative; overflow:hidden; max-width:880px; margin:0 auto; text-align:center;
  background:var(--panel); border:1px solid var(--line); border-radius:var(--r-lg);
  padding:clamp(34px,5vw,60px); box-shadow:var(--shadow-2);
}
.inc-talk-card::before{ content:""; position:absolute; left:0; right:0; top:0; height:4px; background:var(--grad-btn); }
.inc-talk-text{ margin:20px auto 0; max-width:680px; }
.inc-talk-card .inc-btn-row{ margin-top:32px; }

/* 4 · contact information — icon cards */
.inc-card-cell{ display:flex; }
.inc-contact-card{
  width:100%; text-align:center; background:var(--panel); border:1px solid var(--line);
  border-radius:var(--r-md); padding:40px 30px; box-shadow:var(--glow-soft);
  transition:transform .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease);
}
.inc-contact-card:hover{ transform:translateY(-6px); border-color:var(--teal); box-shadow:var(--shadow-2); }
.inc-contact-ico{
  display:inline-flex; align-items:center; justify-content:center; width:66px; height:66px;
  border-radius:50%; background:var(--grad); color:var(--btn-text); font-size:24px;
  margin-bottom:24px; box-shadow:var(--glow);
}
.inc-contact-card .content-heading{ margin:0 0 10px; }
.inc-contact-card .content-text{ margin:0; word-break:break-word; }
.inc-contact-link{ color:var(--mist); transition:color .25s var(--ease); }
.inc-contact-link:hover{ color:var(--teal); }

/* contact map */
.inc-map-cell{ margin-top:var(--gap); }
.inc-map{
  position:relative; width:100%; aspect-ratio:16 / 7; overflow:hidden;
  border:1px solid var(--line); border-radius:var(--r-lg); box-shadow:var(--shadow-2);
}
.inc-map::before{
  content:""; position:absolute; top:0; left:0; right:0; height:4px; z-index:2;
  background:var(--grad-btn);
}
.inc-map iframe{
  width:100%; height:100%; border:0; display:block;
  filter:invert(0.92) hue-rotate(180deg) brightness(0.95) contrast(0.9) saturate(0.85);
}

/* map section — "Cosmic Coordinates" (reusable, see inc-map-section.html) */
.inc-mapx-sec{ position:relative; }
.inc-mapx{ position:relative; }
.inc-mapx-ring{
  position:absolute; inset:-2px; z-index:0; pointer-events:none;
  border-radius:calc(var(--r-lg) + 3px);
  background:linear-gradient(120deg, var(--teal), var(--violet) 45%, var(--coral) 78%, var(--amber));
  background-size:300% 300%; opacity:.9;
  animation:inc-mapx-flow 9s linear infinite;
}
@keyframes inc-mapx-flow{
  0%{ background-position:0% 50%; }
  50%{ background-position:100% 50%; }
  100%{ background-position:0% 50%; }
}
.inc-mapx-frame{
  position:relative; z-index:1; overflow:hidden;
  aspect-ratio:16 / 8; border-radius:var(--r-lg);
  box-shadow:var(--shadow-2), inset 0 0 0 1px rgba(255,255,255,.05);
}
.inc-mapx-frame iframe{
  width:100%; height:100%; border:0; display:block;
  filter:invert(0.92) hue-rotate(180deg) brightness(0.95) contrast(0.9) saturate(0.82);
}
.inc-mapx-frame::after{
  content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
  background:
    radial-gradient(120% 85% at 50% 0%, transparent 52%, rgba(6,6,14,.32) 100%),
    linear-gradient(180deg, transparent 50%, rgba(6,6,14,.6) 100%);
}
.inc-mapx-corner{
  position:absolute; z-index:3; width:54px; height:54px; pointer-events:none;
  border:2px solid transparent;
}
.inc-mapx-corner--tl{
  top:16px; left:16px; border-top-color:var(--aqua); border-left-color:var(--aqua);
  border-top-left-radius:12px;
}
.inc-mapx-corner--br{
  bottom:16px; right:16px; border-bottom-color:var(--coral); border-right-color:var(--coral);
  border-bottom-right-radius:12px;
}
.inc-mapx-card{
  position:absolute; z-index:4; left:28px; bottom:28px;
  max-width:min(360px, calc(100% - 56px));
  padding:26px 28px;
  background:rgba(17,16,31,.72);
  -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
  border:1px solid var(--line); border-radius:var(--r-md); box-shadow:var(--shadow-2);
  transition:transform .45s var(--ease), border-color .45s var(--ease), box-shadow .45s var(--ease);
}
.inc-mapx-card::before{
  content:""; position:absolute; top:0; left:0; right:0; height:3px;
  border-radius:var(--r-md) var(--r-md) 0 0; background:var(--grad-btn);
}
.inc-mapx:hover .inc-mapx-card{
  transform:translateY(-5px); border-color:var(--teal); box-shadow:var(--glow);
}
.inc-mapx-pin{
  display:inline-flex; align-items:center; justify-content:center; width:50px; height:50px;
  border-radius:50%; background:var(--grad); color:var(--btn-text); font-size:21px;
  box-shadow:var(--glow); margin-bottom:18px;
}
.inc-mapx-addr{
  margin:0 0 16px; font-family:var(--font-body); color:var(--star);
  font-size:17px; line-height:1.55;
}
.inc-mapx-meta{ display:flex; flex-direction:column; gap:10px; }
.inc-mapx-link{
  display:inline-flex; align-items:center; gap:10px;
  color:var(--mist); font-size:15px; line-height:1.4; word-break:break-word;
  transition:color .25s var(--ease);
}
.inc-mapx-link i{ color:var(--teal); width:16px; text-align:center; flex:0 0 16px; }
.inc-mapx-link:hover{ color:var(--teal); }
@media all and (max-width:680px){
  .inc-mapx-frame{ aspect-ratio:auto; height:440px; }
  .inc-mapx-card{ left:14px; right:14px; bottom:14px; max-width:none; padding:22px 22px; }
  .inc-mapx-corner{ width:40px; height:40px; }
}
@media (prefers-reduced-motion:reduce){
  .inc-mapx-ring{ animation:none; }
}

/* 5 · service areas — split */
.inc-areas-list .inc-chip-grid{ margin-top:0; }

@media all and (max-width:1023.5px){
  .inc-areas-list{ margin-top:26px; }
}
@media all and (max-width:640px){
  .inc-contact-card{ padding:32px 22px; }
  .inc-talk-card{ padding:30px 22px; }
  .inc-founder-lead{ font-size:20px; }
  .inc-map{ aspect-ratio:auto; height:320px; }
}

/* ============================================================
   CONTACT — PLATFORM ENQUIRY FORM  (.ww-form-container-3)
   ============================================================ */
.ww-form-container-3{ width:100%; }

/* the <form> itself = one cohesive glass card */
.ww-form-container-3 form{
  position:relative; overflow:hidden; max-width:750px; margin:0 auto;
  font-family:var(--font-body); color:var(--mist);
  background:var(--panel); border:1px solid var(--line); border-radius:var(--r-lg);
  padding:56px; box-shadow:var(--shadow-2);
}
.ww-form-container-3 form::before{
  content:""; position:absolute; left:0; right:0; top:0; height:4px; background:var(--grad-btn);
}

/* intro card (Start The Conversation) nested inside the form -> strip its box, keep as centered header */
.ww-form-container-3 .inc-talk-card{
  position:static; max-width:none; margin:0 0 30px; padding:0;
  background:transparent; border:0; border-radius:0; box-shadow:none; overflow:visible;
}
.ww-form-container-3 .inc-talk-card::before{ display:none; }
.ww-form-container-3 .inc-talk-text{ margin-top:16px; }

/* fieldset reset + 2-col grid (first/last side-by-side, rest full width) */
.ww-form-container-3 .fieldset{
  border:0; margin:0; padding:0; min-width:0;
  display:grid; grid-template-columns:1fr 1fr; gap:18px;
}
.ww-form-container-3 .email_wrap,
.ww-form-container-3 .phone_wrap,
.ww-form-container-3 .field_33651_wrap{ grid-column:1 / -1; }

/* override platform global (.form-template-3 ... width:90%) → full-width wraps + form paragraphs */
.form-template-3 form fieldset>div,
.form-template-3 .ww-form-container-3 form>p{ width:100%; margin:0 auto; }

/* labels */
.ww-form-container-3 label{
  display:block; font-family:var(--font-body); font-size:13px; font-weight:600;
  letter-spacing:.13em; text-transform:uppercase; color:var(--star); margin-bottom:8px;
}
.ww-form-container-3 .required{ color:var(--coral); margin-left:3px; }

/* inputs + textarea */
.ww-form-container-3 .fieldset input[type="text"],
.ww-form-container-3 .fieldset input[type="email"],
.ww-form-container-3 .fieldset input[type="tel"],
.ww-form-container-3 #mob_phone_phone_number_tel{
  width:100%; height:54px; box-sizing:border-box; font-family:var(--font-body); font-size:16px; color:var(--star);
  background:var(--void-2); border:1px solid var(--line); border-radius:var(--r-pill);
  padding:0 20px; margin:0;
  transition:border-color .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);
}
.ww-form-container-3 .fieldset textarea{
  width:100%; box-sizing:border-box; font-family:var(--font-body); font-size:16px; color:var(--star);
  background:var(--void-2); border:1px solid var(--line); border-radius:var(--r-md);
  padding:14px 20px; margin:0; line-height:1.5; min-height:140px; resize:vertical;
  transition:border-color .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);
}
.ww-form-container-3 .fieldset input[type="text"]:focus,
.ww-form-container-3 .fieldset input[type="email"]:focus,
.ww-form-container-3 .fieldset input[type="tel"]:focus,
.ww-form-container-3 #mob_phone_phone_number_tel:focus,
.ww-form-container-3 .fieldset textarea:focus{
  outline:none; border-color:var(--teal); background:var(--panel-2);
  box-shadow:0 0 0 3px rgba(45,212,191,.16);
}
.ww-form-container-3 input::placeholder,
.ww-form-container-3 textarea::placeholder{ color:var(--mist-2); }

/* autofill (keep dark) */
.ww-form-container-3 input:-webkit-autofill,
.ww-form-container-3 input:-webkit-autofill:hover,
.ww-form-container-3 input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--star);
  -webkit-box-shadow:0 0 0 1000px var(--void-2) inset;
  caret-color:var(--star);
}

/* phone (intl-tel-input plugin) */
.ww-form-container-3 .iti{ display:block; width:100%; }
.ww-form-container-3 #mob_phone_phone_number_tel{ padding-left:52px; }
.ww-form-container-3 .iti__country-list{
  background:var(--panel-2); border:1px solid var(--line); border-radius:var(--r-md);
  color:var(--star); box-shadow:var(--shadow-2);
}
.ww-form-container-3 .iti__country.iti__highlight{ background:var(--panel); }
.ww-form-container-3 .iti__dial-code{ color:var(--mist); }
.ww-form-container-3 #mob_phone_phone_number_valid{ display:inline-block; font-size:13px; margin-top:6px; }

/* captcha + submit (override global div.form-container width:310px) */
.ww-form-container-3 .form-container{ width:100%; max-width:none; margin:0; padding:0; }
.ww-form-container-3 .captcha_wrap{ margin:0; }
.ww-form-container-3 .submit_wrap{ margin-top:50px; text-align:center !important; }
.ww-form-container-3 input[type="submit"]{
  font-family:var(--font-body); font-size:16px !important; font-weight:600; letter-spacing:.01em;
  color:var(--btn-text) !important; background:var(--grad-btn) !important; border:0 !important; border-radius:var(--r-pill) !important;
  padding:16px 30px !important; cursor:pointer; box-shadow:var(--glow);
  transition:transform .28s var(--ease), box-shadow .28s ease, filter .28s ease;
}
.ww-form-container-3 input[type="submit"]:hover{
  transform:translateY(-3px); box-shadow:0 20px 52px rgba(45,212,191,.55); filter:brightness(1.06);
}

/* errors */
.ww-form-container-3 .error{ display:block; color:var(--coral); margin-top:6px !important; }
.inc-acc-a-inner  .content-text {
    text-align: center;
}

@media all and (max-width:640px){
  .ww-form-container-3 form{ padding:26px 20px; }
  .ww-form-container-3 .fieldset{ grid-template-columns:1fr; }
}

@media all and (max-width: 1024px){
#footer .newsletter-section .button, #footer .newsletter-section a.button {
    padding: 21px 19px !important;
}

.new-blog-page-type .ps-blog-category li a{
    color: var(--star) !important;
    border-color: var(--teal) !important;
    background: rgba(45, 212, 191, .10) !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(45, 212, 191, .16);
}
}


@media all and (max-width: 1023.5px){

.inc-acc-q{
      white-space: unset !important;  
}

.web-primary-btn, .web-secondary-btn, .web-text-btn, .web-cta-link, .is-wrapper button, .is-wrapper input[type="button"], .is-wrapper input[type="submit"], .inc-nav .inc-btn {
    white-space: unset;
}

}