/* ═══════════════════════════════════════════════════════════════════════════════ PRECISION WELLNESS — GLOBAL DESIGN SYSTEM Paste into: Appearance → Customize → Additional CSS ═══════════════════════════════════════════════════════════════════════════════ */ /* ── FONTS ── */ @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;1,400;1,600&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,600&display=swap'); /* ── RESET & TOKENS ── */ *,*::before,*::after{box-sizing:border-box;margin:0;padding:0} :root{ --navy:#1C3B56;--navy-lt:#254a6a; --green:#4A9B6F;--green-deep:#2D7A52;--green-light:#A8D4BB;--green-bg:#EDF5EF; --gold:#B89A6A; --warm:#F7F3EE;--linen:#EDE7DE;--stone:#8C8070;--stone-lt:#C4BAB0; --ink:#1A1410;--white:#fff; --f-d:'Playfair Display',Georgia,serif; --f-b:'DM Sans',sans-serif; --nav-h:64px; } html{scroll-behavior:smooth} body{font-family:var(--f-b);color:var(--ink);background:var(--warm);overflow-x:hidden;font-size:20px;line-height:1.7} ::-webkit-scrollbar{width:6px} ::-webkit-scrollbar-track{background:var(--linen)} ::-webkit-scrollbar-thumb{background:var(--stone-lt);border-radius:3px} /* ── ASTRA HEADER ── */ .site-header{ position:sticky !important;top:0 !important;z-index:200 !important; background:rgba(28,59,86,0.97) !important; backdrop-filter:blur(14px) !important; border-bottom:1px solid rgba(184,154,106,0.18) !important; } .main-header-bar{background:transparent !important} .site-branding{margin-left:120px !important} .site-title a,.site-title a:hover{color:#fff !important;text-decoration:none !important} .main-header-menu .menu-link, .main-header-menu .menu-item > a{ color:#fff !important;text-decoration:none !important; font-family:'DM Sans',sans-serif !important; font-size:16px !important;font-weight:400 !important;letter-spacing:0.02em !important; } .main-header-menu .menu-link:hover, .main-header-menu .menu-item:hover > a{ color:rgba(255,255,255,0.7) !important; background:rgba(255,255,255,0.08) !important; } .ast-builder-button-wrap{margin-right:60px !important} .ast-builder-button-wrap .ast-custom-button{ background:#4A9B6F !important;color:#fff !important;border:none !important; border-radius:3px !important;padding:10px 24px !important; font-size:14px !important;font-weight:600 !important; letter-spacing:0.1em !important;text-transform:uppercase !important; font-family:'DM Sans',sans-serif !important; } .ast-builder-button-wrap .ast-custom-button:hover{background:#2D7A52 !important} /* ── PAGE CONTENT ── */ #content,.ast-container{margin-top:0 !important;padding-top:0 !important} .ast-container,.site-content,#primary,.entry-content{ max-width:100% !important; padding-left:0 !important;padding-right:0 !important; margin-left:0 !important;margin-right:0 !important; } #content{padding-bottom:0 !important;margin-bottom:0 !important} /* ── ASTRA FOOTER WRAPPER ── */ #colophon,.site-footer{ background:#1A1410 !important; padding:0 !important;margin:0 !important;border:none !important; } .ast-footer-widget-area .widget, .footer-widget-area .widget{display:none !important} /* ── HIDE SCHEMA DIV (WordPress.com strips script tags) ── */ div[data-type="application/ld+json"]{ display:none !important;height:0 !important;overflow:hidden !important; } /* ── SHARED COMPONENTS ── */ .section{padding:88px 48px} .si{max-width:860px;margin:0 auto} .si-wide{max-width:1080px;margin:0 auto} .eyebrow{font-size:20px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--green-deep);margin-bottom:16px} .eyebrow-gold{color:var(--gold)} .sec-h{font-family:var(--f-d);font-size:clamp(28px,3.5vw,44px);font-weight:400;color:var(--navy);line-height:1.2;margin-bottom:20px} .sec-h em{font-style:italic;color:var(--green)} .sec-h-white{color:#fff}.sec-h-white em{color:var(--green-light)} .sec-sub{font-size:20px;color:var(--stone);font-weight:300;line-height:1.8;max-width:620px} .sec-sub-white{color:rgba(255,255,255,.6)} .gold-line{width:40px;height:2px;background:var(--gold);margin:24px 0} .btn-p{background:var(--green);color:#fff;padding:15px 36px;border-radius:3px;font-size:20px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:1px solid var(--green);font-family:var(--f-b);transition:background .2s,transform .2s;display:inline-flex;align-items:center;justify-content:center;min-height:56px;line-height:1} .btn-p:hover{background:var(--green-deep);transform:translateY(-2px)} .btn-o{background:transparent;color:#fff;padding:15px 36px;border-radius:3px;font-size:20px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:1px solid rgba(255,255,255,.45);font-family:var(--f-b);transition:border-color .2s,background .2s;display:inline-flex;align-items:center;justify-content:center;min-height:56px;line-height:1} .btn-o:hover{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.06)} .btn-navy{background:var(--navy);color:#fff;padding:15px 36px;border-radius:3px;font-size:20px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;font-family:var(--f-b);transition:background .2s} .divider-gold{height:3px;background:linear-gradient(90deg,var(--gold),var(--green),var(--gold))} .card{background:#fff;padding:40px 36px;border-top:3px solid transparent;transition:border-color .3s} .card:hover{border-top-color:var(--green)} .card-dark{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);padding:36px 32px} .card-linen{background:var(--linen);padding:36px 32px} .g2{display:grid;grid-template-columns:repeat(2,1fr);gap:2px} .g3{display:grid;grid-template-columns:repeat(3,1fr);gap:2px} .g4{display:grid;grid-template-columns:repeat(4,1fr);gap:2px} .g-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start} .resp-3col{display:grid;grid-template-columns:repeat(3,1fr)} .stat-num{font-family:var(--f-d);font-size:38px;font-weight:600;color:#1C3B56;line-height:1;margin-bottom:4px} .stat-label{font-size:20px;color:#1C3B56;font-weight:400;letter-spacing:.03em} .stat-block{border-left:2px solid rgba(184,154,106,.3);padding-left:20px} .tag{display:inline-block;background:var(--green-bg);color:var(--green-deep);font-size:20px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;border-radius:2px} .tag-gold{background:rgba(184,154,106,.12);color:var(--gold)} .testi{background:#fff;border:1px solid var(--linen);padding:36px 32px;position:relative;border-top:3px solid var(--green);display:flex;flex-direction:column} .testi-header{height:110px;display:flex;align-items:flex-start;gap:14px;margin-bottom:32px} .testi::before{content:'"';font-family:var(--f-d);font-size:80px;line-height:1;color:rgba(74,155,111,.08);position:absolute;top:12px;left:22px} .testi-text{font-family:var(--f-d);font-size:20px;font-style:italic;color:var(--navy);line-height:1.7;margin-bottom:20px;padding-top:24px} .testi-name{font-size:20px;font-weight:600;color:var(--navy);line-height:1.3} .testi-role{font-size:20px;color:var(--stone);font-weight:300;line-height:1.3;margin-top:2px} .testi-stars{color:var(--gold);font-size:20px;letter-spacing:2px;margin-bottom:14px} .val-num{display:none} .val-title{font-size:20px;font-weight:600;color:var(--navy);margin-bottom:8px} .val-text{font-size:20px;color:var(--stone);font-weight:300;line-height:1.7} .comp-table{width:100%;border-collapse:collapse;margin-top:40px} .comp-table th{padding:16px 20px;font-size:20px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-align:left} .comp-table th:first-child{background:rgba(255,255,255,.04);color:rgba(255,255,255,.4)} .comp-table th:last-child{background:rgba(74,155,111,.12);color:var(--green-light)} .comp-table td{padding:14px 20px;font-size:20px;border-top:1px solid rgba(255,255,255,.06)} .comp-table td:first-child{color:rgba(255,255,255,.85)} .comp-table td:last-child{color:rgba(255,255,255,.8)} .comp-no{color:rgba(255,255,255,.75)!important} .comp-yes{color:var(--green-light)!important} .timeline{position:relative;padding-left:32px} .timeline::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:2px;background:linear-gradient(to bottom,var(--green),var(--gold))} .tl-item{margin-bottom:40px;position:relative} .tl-item::before{content:'';position:absolute;left:-36px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--green);border:2px solid var(--green-light)} .tl-label{font-size:20px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--green-deep);margin-bottom:6px} .tl-h{font-family:var(--f-d);font-size:20px;font-weight:600;color:var(--navy);margin-bottom:8px} .tl-p{font-size:20px;color:var(--stone);font-weight:300;line-height:1.75} .acc-item{border-bottom:1px solid var(--linen)} .acc-item:first-child{border-top:1px solid var(--linen)} .acc-q{padding:24px 0;font-size:20px;font-weight:600;color:var(--navy);cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;background:none;border:none;width:100%;text-align:left;font-family:var(--f-b)} .acc-icon{color:var(--green);font-size:20px;flex-shrink:0;transition:transform .3s} .acc-item.open .acc-icon{transform:rotate(45deg)} .acc-a{max-height:0;overflow:hidden;transition:max-height .4s ease,opacity .3s;opacity:0;font-size:20px;color:var(--stone);font-weight:300;line-height:1.8} .acc-item.open .acc-a{max-height:400px;opacity:1;padding-bottom:20px} .dark-section{background:var(--navy);position:relative;overflow:hidden} .dark-section::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--green),var(--gold))} .dark-glow{position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 80% 50%,rgba(74,155,111,.07) 0%,transparent 60%);pointer-events:none} .pill{display:inline-flex;align-items:center;gap:8px;background:rgba(184,154,106,.1);border:1px solid rgba(184,154,106,.2);border-radius:20px;padding:7px 16px;font-size:20px;color:rgba(255,255,255,.6)} .pill-dot{width:7px;height:7px;border-radius:50%;background:var(--green);animation:pulse 2s infinite;flex-shrink:0} @keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}} .price-card{background:var(--navy);border:1px solid rgba(184,154,106,.25);padding:48px 40px;position:relative;overflow:hidden} .price-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--green),var(--gold))} .price-amount{font-family:var(--f-d);font-size:56px;font-weight:600;color:#fff;line-height:1;margin-bottom:4px} .price-period{font-size:20px;color:rgba(255,255,255,.55);font-weight:300;margin-bottom:32px} .price-feature{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;font-size:20px;color:rgba(255,255,255,.7);font-weight:300} .price-feature::before{content:'✓';color:var(--green);font-weight:700;flex-shrink:0;margin-top:1px} .event-row{display:grid;grid-template-columns:120px 1fr auto;gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--linen)} .event-date{font-family:var(--f-d);font-size:20px;font-weight:600;color:var(--green-deep)} .event-title{font-size:20px;font-weight:500;color:var(--navy)} .event-type{font-size:20px;color:var(--stone)} .step-card{padding:32px;background:#fff;position:relative} .step-num{font-size:28px;line-height:1;display:inline;margin-right:10px} .step-h{font-size:20px;font-weight:600;color:var(--navy);margin-bottom:8px;display:inline} .step-p{font-size:20px;color:var(--stone);font-weight:300;line-height:1.7} .home-hero{min-height:100vh;background:var(--navy);display:flex;align-items:center;padding:100px 48px 80px;position:relative;overflow:hidden} .home-hero-inner{max-width:920px;position:relative;z-index:1;width:100%} .hero-eyebrow{font-size:20px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:22px;display:flex;align-items:center;gap:14px} .hero-eyebrow::before{content:none} .hero-h1{font-family:var(--f-d);font-size:clamp(32px,4.5vw,58px);font-weight:400;color:#fff;line-height:1.08;margin-bottom:26px} .hero-h1 em{font-style:italic;color:var(--green-light)} .hero-sub{font-size:clamp(16px,1.8vw,20px);color:rgba(255,255,255,.6);font-weight:300;line-height:1.75;margin-bottom:44px} .hero-sub strong{color:rgba(255,255,255,.85);font-weight:500} .hero-btns{display:inline-flex;flex-direction:column;gap:14px;margin-bottom:64px;align-items:stretch;width:fit-content} .hero-stats{display:flex;gap:44px;flex-wrap:wrap} .not-a{display:flex;gap:2px;margin:36px 0} .not-a-item{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);padding:12px 20px;font-size:20px;color:rgba(255,255,255,.35);letter-spacing:.04em} .not-a-item::before{content:'✗ ';color:rgba(184,154,106,.4)} .pw-footer{background:var(--ink);color:#fff;padding:64px 48px 36px} .pw-footer-inner{max-width:1180px;margin:0 auto} .pw-footer-brand-name{font-family:var(--f-d);font-size:22px;font-style:italic;color:#fff;margin-bottom:14px} .pw-footer-desc{font-size:15px;color:rgba(255,255,255,.65);font-weight:300;line-height:1.7;max-width:480px} .pw-footer-desc em{font-style:italic;color:rgba(255,255,255,.5)} .pw-footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding-top:20px;margin-top:36px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px} .pw-footer-copy{font-size:13px;color:rgba(255,255,255,.55);line-height:1.6;letter-spacing:.02em} .pw-footer-credit{font-size:12px;color:rgba(255,255,255,.4)} .pw-footer-credit a{color:rgba(255,255,255,.55);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.15)} .pw-footer-credit a:hover{color:#fff} .pw-page{min-height:60vh} .scroll-reveal{opacity:0;transform:translateY(24px);transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform .9s cubic-bezier(.22,.61,.36,1)} .scroll-reveal.in-view{opacity:1;transform:translateY(0)} /* ── RESPONSIVE ── */ @media(max-width:900px){ .g3,.g4,.resp-3col,.g2,.g-col{grid-template-columns:1fr} .not-a{flex-direction:column} .section{padding:56px 22px} .home-hero{padding:100px 24px 64px} .home-hero-inner{padding:72px 24px 52px 28px !important} .hero-stats{gap:24px} .price-card{padding:32px 24px} .comp-table{display:block;overflow-x:auto} .testi-header{height:auto;min-height:72px} .pw-footer{padding:48px 22px 32px} .hero-h1{font-size:clamp(28px,5vw,44px) !important} .sec-h{font-size:clamp(24px,4.5vw,36px)} .hero-btns{flex-direction:column;gap:12px;max-width:360px} .g4{grid-template-columns:repeat(2,1fr)} img,video{max-width:100%;height:auto} .site-branding{margin-left:22px !important} .ast-builder-button-wrap{margin-right:22px !important} .tl-item::before{display:none} } @media(min-width:601px) and (max-width:900px){ .g3,.resp-3col{grid-template-columns:repeat(2,1fr)} } @media(max-width:600px){ :root{--nav-h:56px} body{font-size:17px} .section{padding:52px 18px} .sec-h{font-size:clamp(22px,6vw,28px) !important} .btn-p,.btn-o,.btn-navy{font-size:15px;padding:13px 22px;width:100%;display:block} .hero-btns{flex-direction:column;gap:10px} .hero-stats{flex-direction:column;gap:16px} .hero-h1{font-size:clamp(26px,7vw,34px) !important;line-height:1.2 !important} .g3,.g4{grid-template-columns:1fr} .resp-3col{grid-template-columns:1fr !important} .home-hero{padding:72px 18px 48px;min-height:auto} .home-hero-inner{padding:56px 18px 36px 18px !important} .pw-footer{padding:40px 18px 28px} .pw-footer-bottom{flex-direction:column;align-items:flex-start} .site-branding{margin-left:16px !important} .ast-builder-button-wrap{margin-right:16px !important} } @media(prefers-reduced-motion:reduce){ .scroll-reveal{animation:none !important;transition:none !important;opacity:1 !important;transform:none !important} }



/* ── Footer full bleed ── */
.site-above-footer-wrap,
.site-above-footer-wrap .ast-builder-grid-row-container-inner,
.site-above-footer-wrap .ast-builder-grid-columns,
.site-above-footer-wrap .site-above-footer-inner-wrap {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #1a1a1a !important;
}

/* ── Social icons ── */
.pw-footer-social {
  display: flex !important;
  justify-content: center !important;
  gap: 20px !important;
  margin: 28px auto !important;
}
.pw-footer-social a {
  display: inline-flex !important;
  align-items: center !important;
  opacity: 0.8;
  transition: opacity .2s !important;
}
.pw-footer-social a:hover { opacity: 1; }
.pw-footer-social img {
  width: 28px !important;
  height: 28px !important;
  display: block !important;
}

/* ── Desktop alignment ── */
.pw-footer-brand-name,
.pw-footer-desc { text-align: left !important; }

.pw-footer-copy { text-align: center !important; }

.pw-footer-bottom {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

/* ── Mobile ── */
@media (max-width: 768px) {
  .pw-footer-inner { text-align: center !important; }
  .pw-footer-brand-name,
  .pw-footer-desc { text-align: center !important; }
  .pw-footer-bottom {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }
  .pw-footer-credit { order: 2 !important; }
  .pw-footer-copy { order: 1 !important; }
}



.ast-single-post-order-1 #page-contact h1,
.ast-single-post-order-1 #page-contact .hero-eyebrow,
#page-contact h1.hero-h1,
#page-contact .hero-eyebrow {
  text-align: left !important;
  justify-content: flex-start !important;
}



/* Mobile menu text visibility fix */
.ast-mobile-popup-drawer .main-navigation .menu-item a,
.ast-mobile-popup-drawer .main-navigation .menu-item,
.ast-mobile-popup-content .main-navigation a,
.ast-mobile-popup-drawer .menu-item a,
.ast-mobile-popup-content a {
  color: #1C3B56 !important;
  opacity: 1 !important;
  visibility: visible !important;
}



.blog .ast-row,
.archive .ast-row {
    padding-left: 80px;
    padding-right: 80px;
}


.single-post .entry-header {
  display: none !important;
}



@media (max-width: 921px) {
  body.blog #content,
  body.blog #content .ast-container,
  body.blog #primary,
  body.blog #main,
  body.blog .ast-row {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.blog article.ast-article-post {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    box-sizing: border-box !important;
  }

  body.blog .ast-article-inner {
    width: 100% !important;
    padding: 18px !important;
    box-sizing: border-box !important;
  }
}
