:root{
  --sky:var(--wp--preset--color--sky);--sky-deep:var(--wp--preset--color--sky-deep);--sky-wash:var(--wp--preset--color--sky-wash);
  --indigo:var(--wp--preset--color--indigo);--gold:var(--wp--preset--color--gold);--gold-deep:var(--wp--preset--color--gold-deep);
  --green:var(--wp--preset--color--green);--green-deep:var(--wp--preset--color--green-deep);--red:var(--wp--preset--color--red);
  --brown:var(--wp--preset--color--brown);--vellum:var(--wp--preset--color--vellum);--parchment:var(--wp--preset--color--parchment);
  --ink:var(--wp--preset--color--ink);--ink-soft:var(--wp--preset--color--ink-soft);--line:var(--wp--preset--color--line);
  --shadow:0 6px 22px rgba(31,36,48,.10);--shadow-lg:0 14px 40px rgba(27,58,140,.16);
}
body{-webkit-font-smoothing:antialiased}

/* ---------- HEADER ---------- */
.site-header{position:sticky;top:0;z-index:100;background:rgba(251,246,233,.94);backdrop-filter:blur(8px);
  border-bottom:2px solid var(--line);padding:10px 20px}
.site-header-inner{gap:18px}
.brand{gap:11px!important}
.brand .wp-block-site-logo img,.brand .wp-block-site-logo{height:52px;width:auto}
.brand-txt{gap:0!important}
.brand-txt .wp-block-site-title{font-size:1.1rem;line-height:1.05;margin:0}
.brand-txt .wp-block-site-title a{color:var(--indigo);text-decoration:none}
.brand-sub{font-size:.95rem;font-weight:600;color:var(--gold-deep);margin:0;font-family:var(--wp--preset--font-family--fredoka)}
.site-nav{gap:8px}
.site-nav .wp-block-navigation{font-family:var(--wp--preset--font-family--fredoka);font-weight:500}
.site-nav .wp-block-navigation a{color:var(--ink);font-size:.95rem}

/* ---------- BUTTONS (stacked-shadow, pill) ---------- */
.wp-block-button .wp-block-button__link{border-radius:999px;font-family:var(--wp--preset--font-family--fredoka);
  font-weight:600;padding:13px 26px;transition:transform .12s,box-shadow .12s}
.wp-block-button .wp-block-button__link:hover{transform:translateY(-2px)}
.btn-primary>.wp-block-button__link{background:var(--sky-deep);color:#fff;box-shadow:0 5px 0 #04557f}
.btn-primary>.wp-block-button__link:hover{box-shadow:0 7px 0 #04557f}
.btn-gold>.wp-block-button__link{background:var(--gold);color:var(--ink);box-shadow:0 5px 0 var(--gold-deep)}
.btn-green>.wp-block-button__link{background:var(--green);color:#fff;box-shadow:0 5px 0 var(--green-deep)}
.btn-ghost>.wp-block-button__link{background:transparent;color:var(--sky-deep);border:2.5px solid var(--sky-deep)}
.btn-light>.wp-block-button__link{background:#fff;color:var(--indigo);box-shadow:0 5px 0 rgba(0,0,0,.15)}
/* Join free: black text on hover */
.join-btn .wp-block-button__link:hover{color:#000}

/* ---------- HERO ---------- */
.mt-hero{position:relative;overflow:hidden;margin-top:0;padding-top:56px;padding-bottom:64px;
  background:radial-gradient(circle at 78% 40%,#fff 0%,var(--sky-wash) 52%,var(--sky) 140%)}
.mt-hero::before{content:"";position:absolute;inset:0;opacity:.40;pointer-events:none;
  background:repeating-conic-gradient(from 0deg at 78% 42%,rgba(255,255,255,.65) 0 6deg,transparent 6deg 12deg);
  -webkit-mask:radial-gradient(circle at 78% 42%,#000,transparent 55%);mask:radial-gradient(circle at 78% 42%,#000,transparent 55%)}
.mt-hero>*{position:relative}
.hero-grid{align-items:center;gap:36px}
.eyebrow-hero{display:inline-block;font-family:var(--wp--preset--font-family--fredoka);font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;font-size:.92rem;color:var(--gold-deep);background:#fff;padding:7px 16px;border-radius:999px;
  box-shadow:var(--shadow);margin-bottom:16px}
.hero-text h1{color:var(--indigo);margin:.1em 0 .15em}
.hero-sub{font-size:1.2rem;color:#2A2F3A;font-weight:500;max-width:42ch;margin-bottom:24px}
.tri{height:8px;width:150px;border-radius:999px;margin-top:26px;
  background:linear-gradient(90deg,var(--green) 0 33.3%,var(--gold) 33.3% 66.6%,var(--red) 66.6%)}
.hero-figure{display:flex;justify-content:center}
.saint-frame{width:300px;max-width:80vw;margin:0}
.saint-frame img{width:100%;aspect-ratio:662/1140;object-fit:cover;object-position:center;
  border-radius:140px 140px 26px 26px;border:7px solid var(--gold);box-shadow:var(--shadow-lg);display:block}

/* ---------- SECTIONS ---------- */
.mt-section{padding-top:56px;padding-bottom:56px}
.eyebrow{font-family:var(--wp--preset--font-family--fredoka);font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  font-size:1.1rem;color:var(--gold-deep);margin-bottom:6px}
.sec-intro{max-width:60ch;color:var(--ink-soft);font-size:1.08rem;margin-left:auto;margin-right:auto}

/* offerings */
.offerings{gap:20px;margin-top:26px}
.feat{background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:var(--shadow);height:100%}
.feat .ic{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;margin-bottom:14px}
.feat .ic svg,.lcard .ic svg{width:30px;height:30px}
.ic-sky{background:#E9F5FC}.ic-gold{background:#FCF6E3}.ic-green{background:#E8F6EC}
.feat h3{margin-bottom:8px;font-size:1.3rem}
.feat p{margin:0;color:var(--ink);font-size:1rem}

/* values */
.values-band{background:var(--parchment);border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  padding-top:56px;padding-bottom:56px;margin-top:0;margin-bottom:0}
.pillars{gap:18px;margin-bottom:30px}
.pillar{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow);
  border-top:5px solid var(--sky);height:100%}
.pillars .wp-block-column:nth-child(2) .pillar{border-top-color:var(--green)}
.pillars .wp-block-column:nth-child(3) .pillar{border-top-color:var(--gold)}
.pillars .wp-block-column:nth-child(4) .pillar{border-top-color:var(--red)}
.pillar h4{font-size:1.05rem;margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}
.pillar p{margin:0;color:var(--ink);font-size:.98rem}
.value-chips{gap:12px}
.vchip{background:#fff;border:2px solid var(--gold);border-radius:999px;padding:10px 20px;margin:0;
  font-family:var(--wp--preset--font-family--fredoka);font-weight:600;color:var(--indigo);box-shadow:var(--shadow)}
.vchip strong{color:var(--gold-deep)}

/* learning */
.learn{gap:20px;margin-top:26px}
.lcard{background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:var(--shadow);text-align:center;height:100%}
.lcard .ic{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px}
.lcard h3{font-size:1.2rem;margin-bottom:8px}
.lcard p{margin:0;color:var(--ink);font-size:.98rem}

/* verse */
.verse-section{padding-top:0}
.creed{background:var(--parchment);border-radius:28px;padding:30px 34px;border:1px solid var(--gold);max-width:760px;margin:0 auto}
.creed-text{color:var(--ink);font-style:italic;font-size:1.2rem;margin:0}
.creed-cite{font-family:var(--wp--preset--font-family--fredoka);color:var(--gold-deep);font-weight:600;margin:12px 0 0}

/* cta band */
.cta-band{background:linear-gradient(120deg,var(--indigo),var(--sky-deep));color:#fff;border-radius:28px;
  padding:44px 40px;box-shadow:var(--shadow-lg)}
.cta-band h2{color:#fff;font-size:1.9rem;margin-bottom:10px}
.cta-band p{color:#dbe6ff;margin:0;font-size:1.05rem}
.cta-actions{gap:12px}
.cta-actions .wp-block-button{width:100%}
.cta-actions .wp-block-button__link{display:block;text-align:center}

/* ---------- FOOTER ---------- */
.site-footer{padding-top:40px;padding-bottom:40px;text-align:center}
.site-footer .tri{margin:0 auto 18px}
.footer-logo{display:flex;justify-content:center}
.footer-logo img{height:76px;background:#fff;border-radius:50%;padding:4px}
.footer-name{margin-top:12px}
.footer-name a,.footer-name{color:#fff!important;font-family:var(--wp--preset--font-family--fredoka);font-weight:700;font-size:1.3rem;text-decoration:none}
.footer-desc{color:#cdd8f5;max-width:52ch;margin:10px auto 0}
.footer-copy{color:#9fb2e6;font-size:.82rem;margin-top:8px}

/* ---------- RESPONSIVE ---------- */
@media(max-width:781px){
  .hero-grid{text-align:center}
  .hero-sub{margin-left:auto;margin-right:auto}
  .hero-cta{justify-content:center}
  .mt-hero .tri{margin-left:auto;margin-right:auto}
  .hero-figure{order:-1;margin-bottom:8px}
  .cta-band{padding:30px 24px}
}
@media(max-width:1124px){
  .mt-hero,.values-band,.mt-section{padding-left:22px;padding-right:22px}
}

/* ===== Icons drawn in CSS (never depend on saved SVG markup) ===== */
.ic svg{display:none}
.feat .ic,.lcard .ic{background-repeat:no-repeat;background-position:center}
.feat .ic{background-size:30px 30px}
.lcard .ic{background-size:34px 34px}
.feat .ic-sky{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%230077B6'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205a2%202%200%200%201%202-2h12v16H6a2%202%200%200%200-2%202zM18%203v16M8%207h6M8%2011h6'/%3E%3C/svg%3E")}
.feat .ic-gold{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23B47F00'%20stroke-width='1.6'%3E%3Cpath%20d='M12%202v20M2%2012h20M6%206l12%2012M18%206%206%2018'/%3E%3Ccircle%20cx='12'%20cy='12'%20r='3'%20fill='%23B47F00'%20stroke='none'/%3E%3C/svg%3E")}
.feat .ic-green{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%230F7A2B'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M9%2018V5l11-2v13M9%2018a3%203%200%201%201-6%200%203%203%200%200%201%206%200zM20%2016a3%203%200%201%201-6%200%203%203%200%200%201%206%200z'/%3E%3C/svg%3E")}
.lcard .ic-sky{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%230077B6'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M2%2012s3.5-7%2010-7%2010%207%2010%207-3.5%207-10%207S2%2012%202%2012z'/%3E%3Ccircle%20cx='12'%20cy='12'%20r='3'/%3E%3C/svg%3E")}
.lcard .ic-gold{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23B47F00'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M6%209a6%206%200%201%201%2012%200c0%203-2%204-3.5%205.5S12%2017%2012%2019a3%203%200%200%201-6%200M9%209a3%203%200%200%201%206%200'/%3E%3C/svg%3E")}
.lcard .ic-green{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%230F7A2B'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2020h9M16.5%203.5a2.1%202.1%200%200%201%203%203L7%2019l-4%201%201-4z'/%3E%3C/svg%3E")}

/* ===== Navigation hover (pill highlight) ===== */
.site-nav .wp-block-navigation-item__content{font-family:var(--wp--preset--font-family--fredoka);font-weight:500;
  color:var(--ink);padding:9px 14px;border-radius:999px;transition:background-color .15s,color .15s}
.site-nav .wp-block-navigation-item__content:hover,
.site-nav .wp-block-navigation-item__content:focus{background-color:var(--parchment);color:var(--indigo)}
.site-nav .wp-block-navigation .current-menu-item>.wp-block-navigation-item__content{color:var(--sky-deep)}

/* ===== Mobile header: "Join free" lives inside the menu, not beside the hamburger ===== */
.nav-join{display:none}                                   /* desktop: the standalone button is used instead */
@media(max-width:781px){
  .join-btn{display:none!important}                        /* hide the standalone button on small screens */
  .nav-join{display:block}                                 /* show Join free inside the menu/overlay */
  .brand-txt .wp-block-site-title{font-size:1rem}
}
@media(max-width:520px){ .brand-sub{display:none} }        /* keep the header tidy on phones */

/* ===== Mobile menu: custom 3-bar hamburger ===== */
.wp-block-navigation__responsive-container-open{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}
.wp-block-navigation__responsive-container-open svg{display:none}
.wp-block-navigation__responsive-container-open::before{content:"";display:block;width:26px;height:18px;
  background:linear-gradient(var(--indigo),var(--indigo)) left top/100% 3px no-repeat,
            linear-gradient(var(--indigo),var(--indigo)) left center/100% 3px no-repeat,
            linear-gradient(var(--indigo),var(--indigo)) left bottom/100% 3px no-repeat}
.wp-block-navigation__responsive-container-close{color:var(--indigo)}
.wp-block-navigation__responsive-container-close svg{width:30px;height:30px}

/* ===== Mobile menu overlay: solid, on top, legible ===== */
.wp-block-navigation__responsive-container.is-menu-open{background-color:var(--vellum)!important;z-index:100001}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:30px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{
  font-family:var(--wp--preset--font-family--fredoka);font-size:1.4rem;color:var(--indigo)!important;padding:12px 16px}
.wp-block-navigation__responsive-container.is-menu-open .nav-join .wp-block-navigation-item__content{
  color:#fff!important;background-color:var(--sky-deep);border-radius:999px;display:inline-block;margin-top:8px}
