/* Via Site — styles for the Via pages under /via/.
   Ported from the static prototype's stylesheet (build.py, 9/20; brought up to the 10/13 prototype in 0.1.3). Every selector carries a via- class,
   so nothing here can reach Canton Abbey's own pages. The two header rules (via-header-lockup, via-nav-cta)
   only touch elements Matt tags with those classes in the Via Template, and only on Via pages.
   Colors: slate #547687 · light blue #8AB1C4 · amber #EE964B · ink #040404 · night #20303A · night-deep #182630 · cream #F7F7F7 */

/* ===== base (scoped) — must stay first: later rules out-rank these on purpose ===== */
:is(.via-site,.editor-styles-wrapper) .via-s,:is(.via-site,.editor-styles-wrapper) .via-subnav,:is(.via-site,.editor-styles-wrapper) .via-post-head,:is(.via-site,.editor-styles-wrapper) .via-post-image,:is(.via-site,.editor-styles-wrapper) .via-post-body,:is(.via-site,.editor-styles-wrapper) .via-postlist-head,:is(.via-site,.editor-styles-wrapper) .via-postlist{--inset:max(32px,calc((100% - 1200px)/2));font-family:'AlegreyaSans',system-ui,sans-serif;line-height:1.5;color:#040404;box-sizing:border-box}
:is(.via-site,.editor-styles-wrapper) .via-s *,:is(.via-site,.editor-styles-wrapper) .via-subnav *{box-sizing:border-box}
:is(.via-site,.editor-styles-wrapper) .via-s :is(p,h1,h2,h3,figure,blockquote,div,cite){margin:0}
:is(.via-site,.editor-styles-wrapper) .via-s a,:is(.via-site,.editor-styles-wrapper) .via-subnav a{color:inherit;text-decoration:none}
:is(.via-site,.editor-styles-wrapper) .via-s img,:is(.via-site,.editor-styles-wrapper) .via-subnav img{display:block;max-width:100%;height:auto}
:is(.via-site,.editor-styles-wrapper) .via-s :focus-visible,:is(.via-site,.editor-styles-wrapper) .via-subnav :focus-visible{outline:3px solid #EE964B;outline-offset:3px}
:is(.via-site,.editor-styles-wrapper) .via-s.wp-block-group{margin:0}
/* Classic themes (no theme.json) get an extra <div class="wp-block-group__inner-container"> inside every Group
   on the live page (not in the editor). display:contents takes that wrapper out of the layout, so the flex and
   grid rules below see the real children either way. */
:is(.via-site,.editor-styles-wrapper) .via-s .wp-block-group__inner-container{display:contents}

/* ===== transitions — the icon morph between pages ===== */
@view-transition{navigation:auto}
:is(.via-site,.editor-styles-wrapper) .via-vt-well{view-transition-name:via-well}:is(.via-site,.editor-styles-wrapper) .via-vt-lantern{view-transition-name:via-lantern}:is(.via-site,.editor-styles-wrapper) .via-vt-path{view-transition-name:via-path}
:is(.via-site,.editor-styles-wrapper) .via-vt-compass{view-transition-name:via-compass}
/* the lockup: big in the home hero, small in the header everywhere else, so leaving home it settles into the corner.
   On home the header's copy is hidden AND unnamed: two elements with one name would cancel the whole transition. */
:is(.via-site,.editor-styles-wrapper) .via-hero-lockup,.via-site .via-header-lockup{view-transition-name:via-lockup}
.via-home .via-header-lockup{visibility:hidden;view-transition-name:none}
::view-transition-group(via-lockup){animation-duration:700ms;animation-timing-function:cubic-bezier(.22,1,.36,1)}
:is(.via-site,.editor-styles-wrapper) .via-vt-spiritual-direction{view-transition-name:via-spiritual-direction}:is(.via-site,.editor-styles-wrapper) .via-vt-guided-retreats{view-transition-name:via-guided-retreats}:is(.via-site,.editor-styles-wrapper) .via-vt-formation-cohorts{view-transition-name:via-formation-cohorts}
:is(.via-site,.editor-styles-wrapper) .via-vt-vocational-discernment{view-transition-name:via-vocational-discernment}:is(.via-site,.editor-styles-wrapper) .via-vt-learning-circles{view-transition-name:via-learning-circles}:is(.via-site,.editor-styles-wrapper) .via-vt-discovery-development{view-transition-name:via-discovery-development}
:is(.via-site,.editor-styles-wrapper) .via-vt-project-design{view-transition-name:via-project-design}:is(.via-site,.editor-styles-wrapper) .via-vt-sabbatical-pilgrimage{view-transition-name:via-sabbatical-pilgrimage}:is(.via-site,.editor-styles-wrapper) .via-vt-partnership-collaboration{view-transition-name:via-partnership-collaboration}
::view-transition-group(via-well),::view-transition-group(via-lantern),::view-transition-group(via-path),
::view-transition-group(via-spiritual-direction),::view-transition-group(via-guided-retreats),::view-transition-group(via-formation-cohorts),
::view-transition-group(via-vocational-discernment),::view-transition-group(via-learning-circles),::view-transition-group(via-discovery-development),
::view-transition-group(via-project-design),::view-transition-group(via-sabbatical-pilgrimage),::view-transition-group(via-partnership-collaboration){
  animation-duration:700ms;animation-timing-function:cubic-bezier(.22,1,.36,1)}
::view-transition-group(via-compass){animation-duration:350ms}
::view-transition-old(root),::view-transition-new(root){animation-duration:450ms}
@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}

/* ===== type ===== */
:is(.via-site,.editor-styles-wrapper) .via-h1{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:clamp(44px,6.2vw,88px);line-height:.98;letter-spacing:-.005em}
:is(.via-site,.editor-styles-wrapper) .via-util{font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
:is(.via-site,.editor-styles-wrapper) .via-eyebrow{display:flex;align-items:center;gap:14px}
:is(.via-site,.editor-styles-wrapper) .via-eyebrow::before{content:'';width:40px;height:2px;background:currentColor;flex-shrink:0}
:is(.via-site,.editor-styles-wrapper) .via-dek{font-family:'Cormorant',Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(24px,2.2vw,30px);line-height:1.3;max-width:26ch}
:is(.via-site,.editor-styles-wrapper) .via-body{font-size:18px;line-height:1.7;max-width:52ch}
:is(.via-site,.editor-styles-wrapper) .via-body p+p{margin-top:1.1em}

/* ===== buttons ===== */
:is(.via-site,.editor-styles-wrapper) .via-btns{display:flex;flex-wrap:wrap;gap:12px}
:is(.via-site,.editor-styles-wrapper) .via-btn .wp-block-button__link{display:inline-block;background:#EE964B;color:#040404;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;line-height:1.5;padding:16px 28px;border:0;border-radius:0;text-decoration:none;transition:background 200ms ease}
:is(.via-site,.editor-styles-wrapper) .via-btn .wp-block-button__link:hover{background:#F7F7F7;color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-stub .via-btn .wp-block-button__link:hover{background:#040404;color:#F7F7F7}
/* "stretched link": the whole card or choice is clickable through its one real link */
:is(.via-site,.editor-styles-wrapper) .via-stretch a::after{content:'';position:absolute;inset:0;z-index:2}
.editor-styles-wrapper .via-stretch a::after{display:none} /* never block clicks while editing */

/* ===== sticky subnav: compass + sibling rail ([via_subnav]) ===== */
:is(.via-site,.editor-styles-wrapper) .via-subnav{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:20;background:#F7F7F7;box-shadow:0 1px 0 #8AB1C4}
:is(.via-site,.editor-styles-wrapper) .via-compass{background:#F7F7F7;border-bottom:1px solid #8AB1C4;padding:12px var(--inset);display:flex;align-items:center;gap:32px}
:is(.via-site,.editor-styles-wrapper) .via-compass a{display:flex;align-items:center;gap:10px;padding:6px 0;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-compass a img{width:40px;height:40px}
:is(.via-site,.editor-styles-wrapper) .via-compass a:hover{color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-compass a[aria-current]{color:#040404;box-shadow:inset 0 -2px 0 #EE964B}
:is(.via-site,.editor-styles-wrapper) .via-siblings{background:#F7F7F7;border-top:1px solid #8AB1C4;padding:10px var(--inset);display:flex;align-items:center;gap:20px;font-size:15px}
:is(.via-site,.editor-styles-wrapper) .via-siblings a{display:inline-flex;align-items:center;gap:8px;color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-siblings a span{text-decoration:underline;text-underline-offset:3px}
:is(.via-site,.editor-styles-wrapper) .via-siblings a img{width:26px;height:26px;flex-shrink:0}
:is(.via-site,.editor-styles-wrapper) .via-siblings a:hover{color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-sib-lead{font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#547687;flex:0 0 auto}

/* ===== home ===== */
/* 10/3 (JR): the home hero is the brand mark + tagline on cream; the choices below stay night, so the break is a full value change */
:is(.via-site,.editor-styles-wrapper) .via-hero{background:#F7F7F7;color:#040404;padding:88px var(--inset) 104px;display:flex;flex-direction:column;align-items:center;text-align:center}
:is(.via-site,.editor-styles-wrapper) .via-hero .via-hero-lockup{width:clamp(240px,30vw,400px);margin:0 0 40px}
:is(.via-site,.editor-styles-wrapper) .via-hero .via-hero-lockup img{width:100%;height:auto}
:is(.via-site,.editor-styles-wrapper) .via-hero .via-h1{max-width:28ch;font-size:clamp(30px,3.6vw,48px);line-height:1.18;text-wrap:balance;color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-hero .via-h1 em{font-style:italic;font-weight:600;color:#547687} /* real Cormorant 600 italic (Matt 10/3) */
/* 10/3 (JR): the italic phrases take turns in one spot on their own line, looping every 9s. The plugin rebuilds the
   heading on the live page (via_rotate_heading): the whole sentence for screen readers, the animated copy hidden from them.
   In the editor the heading stays one plain sentence. */
:is(.via-site,.editor-styles-wrapper) .via-hero .via-h1-full{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:is(.via-site,.editor-styles-wrapper) .via-hero .via-rot{display:grid;justify-items:center;margin-top:.08em}
:is(.via-site,.editor-styles-wrapper) .via-hero .via-rot em{grid-area:1/1;opacity:0;animation:via-rot 9s cubic-bezier(.22,1,.36,1) infinite both}
:is(.via-site,.editor-styles-wrapper) .via-hero .via-rot em:nth-child(2){animation-delay:3s}
:is(.via-site,.editor-styles-wrapper) .via-hero .via-rot em:nth-child(3){animation-delay:6s}
@keyframes via-rot{0%{opacity:0;transform:translateY(.45em)}6%{opacity:1;transform:none}30%{opacity:1;transform:none}36%{opacity:0;transform:translateY(-.45em)}100%{opacity:0;transform:translateY(-.45em)}}
@media (prefers-reduced-motion:reduce){
  :is(.via-site,.editor-styles-wrapper) .via-hero .via-h1-anim{display:none}
  :is(.via-site,.editor-styles-wrapper) .via-hero .via-h1-full{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}
}
:is(.via-site,.editor-styles-wrapper) .via-choices-head{background:#20303A;padding:72px var(--inset) 28px;text-align:center}
:is(.via-site,.editor-styles-wrapper) .via-lead-h2{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:clamp(28px,3.2vw,40px);line-height:1.1;color:#F7F7F7}
:is(.via-site,.editor-styles-wrapper) .via-choices{background:#20303A;padding:0 var(--inset) 112px;display:flex;gap:32px}
:is(.via-site,.editor-styles-wrapper) .via-choice{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:40px 24px}
:is(.via-site,.editor-styles-wrapper) .via-choice-icon{width:120px}
:is(.via-site,.editor-styles-wrapper) .via-choice-icon img{width:120px;height:120px;transition:transform 300ms ease}
:is(.via-site,.editor-styles-wrapper) .via-choice:hover .via-choice-icon img{transform:scale(1.05)}
:is(.via-site,.editor-styles-wrapper) .via-choice h2{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:40px;line-height:1.1;color:#F7F7F7}
:is(.via-site,.editor-styles-wrapper) .via-choice-line{font-size:18px;line-height:1.5;color:#8AB1C4;max-width:30ch}
:is(.via-site,.editor-styles-wrapper) .via-choice .via-verb{margin-top:14px;color:#EE964B;letter-spacing:.1em}
:is(.via-site,.editor-styles-wrapper) .via-choice .via-btns{margin-top:22px;justify-content:center}

/* ===== split hero (trailheads + offerings) ===== */
:is(.via-site,.editor-styles-wrapper) .via-split-sec{position:relative;overflow:hidden}
:is(.via-site,.editor-styles-wrapper) .via-split-sec .via-bg{position:absolute;left:-6%;bottom:0;width:58%;z-index:0;pointer-events:none}
:is(.via-site,.editor-styles-wrapper) .via-split-sec .via-bg img{width:100%}
:is(.via-site,.editor-styles-wrapper) .via-g-night{background:#20303A}:is(.via-site,.editor-styles-wrapper) .via-g-cream{background:#F7F7F7;border-top:1px solid #8AB1C4}:is(.via-site,.editor-styles-wrapper) .via-g-amber{background:#EE964B}
:is(.via-site,.editor-styles-wrapper) .via-on-dark{color:#F7F7F7}:is(.via-site,.editor-styles-wrapper) .via-on-light{color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-on-dark .via-h1{color:#F7F7F7}:is(.via-site,.editor-styles-wrapper) .via-on-light .via-h1{color:#040404} /* headings get a color of their own: a site-wide h1 rule would beat inheritance */
:is(.via-site,.editor-styles-wrapper) .via-g-night .via-bg{opacity:.13}:is(.via-site,.editor-styles-wrapper) .via-g-amber .via-bg{opacity:.10}:is(.via-site,.editor-styles-wrapper) .via-g-cream .via-bg{opacity:.07}
:is(.via-site,.editor-styles-wrapper) .via-g-cream .via-main .via-eyebrow,:is(.via-site,.editor-styles-wrapper) .via-g-cream .via-h1,:is(.via-site,.editor-styles-wrapper) .via-g-cream .via-main .via-dek{color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-split{position:relative;z-index:1;display:flex;align-items:stretch;gap:64px;padding-left:var(--inset)}
:is(.via-site,.editor-styles-wrapper) .via-main{flex:1 1 0;min-width:0;padding:104px 0 88px;display:flex;flex-direction:column;align-items:flex-start}
:is(.via-site,.editor-styles-wrapper) .via-main .via-eyebrow{color:#EE964B;margin-bottom:28px}
:is(.via-site,.editor-styles-wrapper) .via-on-light .via-main .via-eyebrow{color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-main .via-h1{margin-bottom:22px}
:is(.via-site,.editor-styles-wrapper) .via-main .via-dek{margin-bottom:34px}
:is(.via-site,.editor-styles-wrapper) .via-on-dark .via-main .via-dek{color:#8AB1C4}
:is(.via-site,.editor-styles-wrapper) .via-main .via-body{opacity:.88}
:is(.via-site,.editor-styles-wrapper) .via-on-light .via-main .via-body{opacity:1}

/* quote panel — a Cover block, so JR can swap the photo */
:is(.via-site,.editor-styles-wrapper) .wp-block-cover.via-panel{flex:0 0 34%;min-height:0;padding:72px 48px 72px 44px;display:flex;align-items:center;justify-content:center;overflow:hidden}
:is(.via-site,.editor-styles-wrapper) .via-panel .wp-block-cover__inner-container{position:relative;z-index:1;width:100%;display:flex;flex-direction:column;justify-content:center;gap:44px;color:#F7F7F7}
:is(.via-site,.editor-styles-wrapper) .via-panel>.wp-block-cover__background{background-color:transparent!important;background-image:linear-gradient(90deg,rgba(32,48,58,.92),rgba(32,48,58,.78));opacity:1}
:is(.via-site,.editor-styles-wrapper) .via-panel--well>.wp-block-cover__background{background-image:linear-gradient(90deg,rgba(61,90,106,.96),rgba(61,90,106,.88))} /* cream worst case 5.25:1, measured 9/9 */
:is(.via-site,.editor-styles-wrapper) .via-panel--well .via-q cite{color:#F7F7F7} /* amber on slate is 1.6:1 */
:is(.via-site,.editor-styles-wrapper) .via-panel--lantern>.wp-block-cover__background{background-image:linear-gradient(90deg,rgba(238,150,75,.94),rgba(238,150,75,.84))}
:is(.via-site,.editor-styles-wrapper) .via-panel--lantern .via-q{border-left-color:#20303A}
:is(.via-site,.editor-styles-wrapper) .via-panel--lantern .via-q p,:is(.via-site,.editor-styles-wrapper) .via-panel--lantern .via-placeholder{color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-panel--lantern .via-q cite,:is(.via-site,.editor-styles-wrapper) .via-panel--lantern .via-placeholder small{color:#20303A}
:is(.via-site,.editor-styles-wrapper) .via-q{padding:0 0 0 22px;border:0;border-left:2px solid #EE964B;display:flex;flex-direction:column;gap:12px}
:is(.via-site,.editor-styles-wrapper) .via-q p{font-family:'Cormorant',Georgia,serif;font-style:italic;font-weight:500;font-size:25px;line-height:1.32;color:#F7F7F7;text-wrap:pretty}
:is(.via-site,.editor-styles-wrapper) .via-q cite{font-family:'Karla',system-ui,sans-serif;font-style:normal;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#EE964B}
:is(.via-site,.editor-styles-wrapper) .via-panel .via-placeholder{font-family:'Cormorant',Georgia,serif;font-style:italic;font-weight:500;font-size:28px;line-height:1.3;color:#F7F7F7;text-wrap:pretty}
:is(.via-site,.editor-styles-wrapper) .via-panel .via-placeholder small{display:block;margin-top:14px;font-family:'Karla',system-ui,sans-serif;font-style:normal;font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#EE964B}

/* ===== trailhead: prose left, Spaces & Invitations as a 2-col grid right (JR 9/20) ===== */
:is(.via-site,.editor-styles-wrapper) .via-split--invites{padding-right:var(--inset);gap:56px}
:is(.via-site,.editor-styles-wrapper) .via-split--invites .via-main{flex:0 0 42%;padding:80px 0 72px}
:is(.via-site,.editor-styles-wrapper) .via-split--invites .via-main .via-dek{max-width:30ch}
:is(.via-site,.editor-styles-wrapper) .via-split--invites .via-main .via-body{max-width:44ch;font-size:19px;line-height:1.65}
:is(.via-site,.editor-styles-wrapper) .via-split-sec:has(.via-split--invites) .via-bg{left:-13%;width:42%;bottom:-8%}
:is(.via-site,.editor-styles-wrapper) .via-invites{flex:1 1 0;min-width:0;padding:80px 0 72px;display:flex;flex-direction:column}
:is(.via-site,.editor-styles-wrapper) .via-invites .via-lead{color:#8AB1C4;margin-bottom:26px}
:is(.via-site,.editor-styles-wrapper) .via-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}

/* ===== offering cards — the photo tile is a Cover block ===== */
:is(.via-site,.editor-styles-wrapper) .via-card{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:18px}
:is(.via-site,.editor-styles-wrapper) .wp-block-cover.via-tile{position:relative;aspect-ratio:16/10;min-height:0;padding:24px 26px;display:flex;align-items:center;justify-content:flex-start;overflow:hidden;color:#F7F7F7}
:is(.via-site,.editor-styles-wrapper) .via-tile>.wp-block-cover__background{background-color:transparent!important;background-image:linear-gradient(180deg,rgba(32,48,58,.72),rgba(32,48,58,.86));opacity:1}
:is(.via-site,.editor-styles-wrapper) .via-card:hover .via-tile>.wp-block-cover__background{background-image:linear-gradient(180deg,rgba(32,48,58,.6),rgba(32,48,58,.8))}
:is(.via-site,.editor-styles-wrapper) .via-tile .wp-block-cover__inner-container{position:static;width:100%;display:flex;align-items:center;gap:18px}
:is(.via-site,.editor-styles-wrapper) .via-tile .wp-block-cover__inner-container>*{position:relative;z-index:1}
:is(.via-site,.editor-styles-wrapper) .via-tile .via-num{position:absolute;top:18px;left:26px;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;color:#EE964B}
:is(.via-site,.editor-styles-wrapper) .via-tile-icon{flex-shrink:0;width:56px}
:is(.via-site,.editor-styles-wrapper) .via-tile-icon img{width:56px;height:56px;transition:transform 300ms ease}
:is(.via-site,.editor-styles-wrapper) .via-card:hover .via-tile-icon img{transform:scale(1.06)}
:is(.via-site,.editor-styles-wrapper) .via-card h2{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:30px;line-height:1.08;color:#F7F7F7;text-wrap:balance}
:is(.via-site,.editor-styles-wrapper) .via-card-dek{font-size:17px;line-height:1.55;max-width:32ch}
:is(.via-site,.editor-styles-wrapper) .via-go a{display:inline-block;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#040404;padding-bottom:3px;box-shadow:inset 0 -2px 0 #EE964B}
:is(.via-site,.editor-styles-wrapper) .via-card:hover .via-go a{box-shadow:inset 0 -2px 0 #040404}
:is(.via-site,.editor-styles-wrapper) .via-card--sm{gap:14px}
:is(.via-site,.editor-styles-wrapper) .via-card--sm .wp-block-cover.via-tile{padding:16px 18px}
:is(.via-site,.editor-styles-wrapper) .via-card--sm .via-tile .wp-block-cover__inner-container{gap:12px}
:is(.via-site,.editor-styles-wrapper) .via-card--sm .via-tile .via-num{top:12px;left:18px;font-size:11px}
:is(.via-site,.editor-styles-wrapper) .via-card--sm .via-tile-icon{width:40px}
:is(.via-site,.editor-styles-wrapper) .via-card--sm .via-tile-icon img{width:40px;height:40px}
:is(.via-site,.editor-styles-wrapper) .via-card--sm h2{font-size:22px}
:is(.via-site,.editor-styles-wrapper) .via-card--sm .via-card-dek{font-size:15px;line-height:1.5;max-width:none}
:is(.via-site,.editor-styles-wrapper) .via-card--sm .via-go a{font-size:11px}
:is(.via-site,.editor-styles-wrapper) .via-on-dark .via-card-dek{color:#8AB1C4}
:is(.via-site,.editor-styles-wrapper) .via-on-dark .via-go a{color:#F7F7F7}
:is(.via-site,.editor-styles-wrapper) .via-on-dark .via-card:hover .via-go a{box-shadow:inset 0 -2px 0 #F7F7F7}

/* ===== full-width quote band (trailheads) ===== */
:is(.via-site,.editor-styles-wrapper) .via-quoteband .wp-block-cover.via-panel{flex:none;width:auto;margin:0;padding:84px var(--inset);display:block}
:is(.via-site,.editor-styles-wrapper) .via-quoteband .via-panel .wp-block-cover__inner-container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 56px;align-items:start;text-align:left}
:is(.via-site,.editor-styles-wrapper) .via-quoteband .via-panel>.wp-block-cover__background{background-image:linear-gradient(180deg,rgba(32,48,58,.90),rgba(32,48,58,.82))}
:is(.via-site,.editor-styles-wrapper) .via-quoteband .via-panel--well>.wp-block-cover__background{background-image:linear-gradient(180deg,rgba(61,90,106,.95),rgba(61,90,106,.88))}
:is(.via-site,.editor-styles-wrapper) .via-quoteband .via-panel--lantern>.wp-block-cover__background{background-image:linear-gradient(180deg,rgba(238,150,75,.93),rgba(238,150,75,.86))}
:is(.via-site,.editor-styles-wrapper) .via-quoteband .via-q{max-width:42ch}
:is(.via-site,.editor-styles-wrapper) .via-quoteband .via-q p{font-size:clamp(23px,2.1vw,27px)}
:is(.via-site,.editor-styles-wrapper) .via-quoteband .via-placeholder{grid-column:1/-1;max-width:58ch}

/* ===== call to action ===== */
:is(.via-site,.editor-styles-wrapper) .via-cta{background:#20303A;color:#F7F7F7;padding:96px var(--inset)}
:is(.via-site,.editor-styles-wrapper) .via-cta h2{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:40px;line-height:1.15;margin-bottom:16px;max-width:22ch;color:#F7F7F7}
:is(.via-site,.editor-styles-wrapper) .via-cta p{font-size:18px;line-height:1.6;color:#8AB1C4;max-width:52ch;margin-bottom:32px}

/* ===== simple pages (About, Partners & Patrons, Events, Contact) ===== */
:is(.via-site,.editor-styles-wrapper) .via-stub{background:#F7F7F7;padding:112px var(--inset) 128px}
:is(.via-site,.editor-styles-wrapper) .via-stub .via-eyebrow{color:#547687;margin-bottom:28px}
:is(.via-site,.editor-styles-wrapper) .via-stub .via-h1{color:#547687;margin-bottom:24px}
:is(.via-site,.editor-styles-wrapper) .via-stub p{font-size:18px;line-height:1.7;max-width:52ch}
:is(.via-site,.editor-styles-wrapper) .via-stub .via-btns{margin-top:32px}

/* ===== responsive ===== */
@media (max-width:991px){
  :is(.via-site,.editor-styles-wrapper) .via-split{flex-direction:column;gap:0;padding-right:var(--inset)}
  :is(.via-site,.editor-styles-wrapper) .via-main{padding:72px 0 48px}
  :is(.via-site,.editor-styles-wrapper) .via-split--invites .via-main{flex:0 0 auto;padding-bottom:8px}
  :is(.via-site,.editor-styles-wrapper) .via-split--invites .via-main .via-dek,:is(.via-site,.editor-styles-wrapper) .via-split--invites .via-main .via-body{max-width:none}
  :is(.via-site,.editor-styles-wrapper) .via-invites{padding:24px 0 72px}
  :is(.via-site,.editor-styles-wrapper) .wp-block-cover.via-panel{flex-basis:auto;width:auto;margin:0 calc(-1*var(--inset));padding:56px var(--inset)}
  :is(.via-site,.editor-styles-wrapper) .via-split-sec .via-bg,:is(.via-site,.editor-styles-wrapper) .via-split-sec:has(.via-split--invites) .via-bg{width:80%;bottom:auto;top:24px;right:-30%;left:auto}
  :is(.via-site,.editor-styles-wrapper) .via-compass a img{width:32px;height:32px}
}
@media (max-width:767px){
  :is(.via-site,.editor-styles-wrapper) .via-hero{padding:72px var(--inset) 48px}
  :is(.via-site,.editor-styles-wrapper) .via-choices{flex-direction:column;gap:0;padding-bottom:64px}
  :is(.via-site,.editor-styles-wrapper) .via-choice{padding:28px 0}
  :is(.via-site,.editor-styles-wrapper) .via-compass{gap:14px;overflow-x:auto}
  :is(.via-site,.editor-styles-wrapper) .via-compass a{flex-direction:column;gap:4px;text-align:center}
  :is(.via-site,.editor-styles-wrapper) .via-compass a span{font-size:11px;letter-spacing:.06em}
  :is(.via-site,.editor-styles-wrapper) .via-siblings{flex-wrap:wrap;gap:8px 12px;font-size:14px;padding-top:8px;padding-bottom:8px}
  :is(.via-site,.editor-styles-wrapper) .via-split--invites .via-main{padding:56px 0 8px}
  :is(.via-site,.editor-styles-wrapper) .via-split--invites .via-main .via-body{font-size:18px}
  :is(.via-site,.editor-styles-wrapper) .via-invites{padding:20px 0 56px}
  :is(.via-site,.editor-styles-wrapper) .via-grid{grid-template-columns:1fr;gap:30px}
  :is(.via-site,.editor-styles-wrapper) .via-card--sm h2{font-size:26px}
  :is(.via-site,.editor-styles-wrapper) .via-card--sm .via-tile-icon,:is(.via-site,.editor-styles-wrapper) .via-card--sm .via-tile-icon img{width:48px;height:48px}
  :is(.via-site,.editor-styles-wrapper) .via-quoteband .wp-block-cover.via-panel{padding:60px var(--inset)}
  :is(.via-site,.editor-styles-wrapper) .via-quoteband .via-panel .wp-block-cover__inner-container{grid-template-columns:1fr;gap:38px}
  :is(.via-site,.editor-styles-wrapper) .via-choice .via-btns{margin-top:18px}
  :is(.via-site,.editor-styles-wrapper) .via-cta{padding:64px var(--inset)}
  :is(.via-site,.editor-styles-wrapper) .via-siblings > span[aria-hidden]{display:none} /* the · separators dangle at line starts once the row wraps */
  .via-site .via-nav-cta > a{margin-left:0}
}

/* ===== editor only: the compass bar's stand-in ===== */
:is(.via-site,.editor-styles-wrapper) .via-subnav-placeholder{font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#547687;background:#F7F7F7;border:1px dashed #8AB1C4;padding:14px 18px}

/* ===== Via blog (Oxygen templates "Via Blog Post" + "Via Blog List") =====
   Classes are applied to Oxygen elements per the blog template spec. Untested inside Oxygen. */
:is(.via-site,.editor-styles-wrapper) .via-post-head{background:#20303A;color:#F7F7F7;padding:96px var(--inset) 56px}
:is(.via-site,.editor-styles-wrapper) .via-post-head .via-eyebrow{color:#EE964B;margin-bottom:24px}
:is(.via-site,.editor-styles-wrapper) .via-post-title{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:clamp(38px,5vw,64px);line-height:1.05;letter-spacing:-.005em;color:#F7F7F7;max-width:24ch;text-wrap:balance}
:is(.via-site,.editor-styles-wrapper) .via-post-meta{margin-top:18px;color:#8AB1C4;font-size:15px}
:is(.via-site,.editor-styles-wrapper) .via-post-image{background:#20303A;padding:0 var(--inset)}
:is(.via-site,.editor-styles-wrapper) .via-post-image img{width:100%;max-height:560px;object-fit:cover}
:is(.via-site,.editor-styles-wrapper) .via-post-body{background:#F7F7F7;padding:72px var(--inset) 96px;font-size:19px;line-height:1.7}
:is(.via-site,.editor-styles-wrapper) .via-post-body :is(p,ul,ol,h2,h3,h4,blockquote,figure,hr){max-width:68ch;margin-left:auto;margin-right:auto}
:is(.via-site,.editor-styles-wrapper) .via-post-body p{margin-top:0;margin-bottom:1.1em}
:is(.via-site,.editor-styles-wrapper) .via-post-body h2{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:36px;line-height:1.15;color:#547687;margin:1.6em auto .5em}
:is(.via-site,.editor-styles-wrapper) .via-post-body h3{font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:#040404;margin:1.8em auto .6em}
:is(.via-site,.editor-styles-wrapper) .via-post-body a{color:#040404;text-decoration:underline;text-decoration-color:#EE964B;text-decoration-thickness:2px;text-underline-offset:3px}
:is(.via-site,.editor-styles-wrapper) .via-post-body blockquote{border-left:2px solid #EE964B;padding-left:22px;font-family:'Cormorant',Georgia,serif;font-style:italic;font-size:26px;line-height:1.35;color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-post-body figure img{width:100%;height:auto}
:is(.via-site,.editor-styles-wrapper) .via-post-body figcaption{font-size:14px;color:#547687;margin-top:8px}
:is(.via-site,.editor-styles-wrapper) .via-post-back{display:inline-block;margin-top:40px;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#040404;padding-bottom:3px;box-shadow:inset 0 -2px 0 #EE964B}
:is(.via-site,.editor-styles-wrapper) .via-postlist-head{background:#20303A;color:#F7F7F7;padding:96px var(--inset) 56px}
:is(.via-site,.editor-styles-wrapper) .via-postlist-head .via-post-title{max-width:none}
:is(.via-site,.editor-styles-wrapper) .via-postlist{background:#F7F7F7;padding:72px var(--inset) 96px}
:is(.via-site,.editor-styles-wrapper) .via-postcard{position:relative;display:flex;flex-direction:column;gap:12px;max-width:760px;margin:0 auto 56px}
:is(.via-site,.editor-styles-wrapper) .via-postcard img{width:100%;aspect-ratio:16/10;object-fit:cover}
:is(.via-site,.editor-styles-wrapper) .via-postcard-title{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:28px;line-height:1.1;color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-postcard-dek{font-size:16px;line-height:1.55;color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-postcard-date{font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#547687}

/* ===== Via Template header (Oxygen): two classes added by hand =====
   via-header-lockup = the lockup Image in Row Left. via-nav-cta = the Start a Conversation item in the Via menu
   (Appearance > Menus > Screen Options > CSS Classes). !important because Pro Menu writes its own item styles
   on the element's ID, which out-ranks any class. */
.via-site .via-nav-cta > a{background:#EE964B!important;color:#040404!important;padding:12px 20px!important;margin-left:12px;border:0!important;box-shadow:none!important;transition:background 200ms ease,color 200ms ease}
.via-site .via-nav-cta > a:hover,.via-site .via-nav-cta > a:focus-visible{background:#040404!important;color:#F7F7F7!important}

/* ===== home: "Where are you feeling drawn?" (JR 10/6, Matt 10/12-13) =====
   The question links down to the choices. via-home.js draws three light-blue lines from it to the three icons once
   the band is in view, and a frame around the question on hover/focus. No script: a plain jump link, no lines. */
:is(.via-site,.editor-styles-wrapper) .via-drawn{position:relative;background:#20303A}
:is(.via-site,.editor-styles-wrapper) .via-drawn .via-choices-head{padding-bottom:150px}
:is(.via-site,.editor-styles-wrapper) .via-drawn .via-choice{z-index:1}
:is(.via-site,.editor-styles-wrapper) .via-drawn .via-choices:focus{outline:none}
:is(.via-site,.editor-styles-wrapper) .via-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
:is(.via-site,.editor-styles-wrapper) .via-lines path{fill:none;stroke:#8AB1C4;stroke-opacity:.55;stroke-width:1.5;stroke-linecap:round}
:is(.via-site,.editor-styles-wrapper) .via-lines circle{fill:#20303A;stroke:#8AB1C4;stroke-opacity:.75;stroke-width:1.5}
:is(.via-site,.editor-styles-wrapper) .via-lines .via-frame{stroke-opacity:.9;transition:stroke-dashoffset .5s cubic-bezier(.22,1,.36,1)}
:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2{font-size:clamp(34px,4.4vw,56px)} /* Cormorant 500, per the weight ladder (Matt 10/13) */
:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a{position:relative;display:inline-block;padding:14px 60px 18px;color:inherit;text-decoration:none;cursor:pointer;outline:none;transition:background-color .35s ease}
:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a:hover,:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a:focus-visible{background-color:rgba(138,177,196,.07)}
:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a::after{content:'';position:absolute;right:24px;top:50%;width:11px;height:11px;margin-top:-9px;border-right:1.5px solid #8AB1C4;border-bottom:1.5px solid #8AB1C4;transform:rotate(45deg) translate(-4px,-4px);opacity:0;transition:opacity .3s ease .15s,transform .3s ease .15s}
:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a:hover::after,:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a:focus-visible::after{opacity:1;transform:rotate(45deg) translate(0,0)}
@media (hover:none){:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a::after{opacity:1;transform:rotate(45deg)}}
@media (max-width:767px){
  :is(.via-site,.editor-styles-wrapper) .via-lines{display:none}
  :is(.via-site,.editor-styles-wrapper) .via-drawn .via-choices-head{padding-bottom:28px}
  :is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a{padding:12px 44px 14px;border:1.5px solid rgba(138,177,196,.55)}
  :is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a::after{right:16px;opacity:1;transform:rotate(45deg)}
}
@media (prefers-reduced-motion:reduce){:is(.via-site,.editor-styles-wrapper) .via-lines .via-frame,:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a,:is(.via-site,.editor-styles-wrapper) .via-drawn .via-lead-h2 a::after{transition:none}}

/* ===== long-form pages: About, Partners & Patrons, the contact page (JR's copy, 10/12) =====
   One reading column on cream. Headings slate Cormorant; the quote is a night band; bios side by side. */
:is(.via-site,.editor-styles-wrapper) .via-page-head{background:#F7F7F7;padding:104px var(--inset) 40px}
:is(.via-site,.editor-styles-wrapper) .via-page-head .via-eyebrow{color:#547687;margin-bottom:24px}
:is(.via-site,.editor-styles-wrapper) .via-page-head .via-h1{color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-prose{background:#F7F7F7;padding:24px var(--inset) 104px;overflow-x:clip}
:is(.via-site,.editor-styles-wrapper) .via-prose>*,:is(.via-site,.editor-styles-wrapper) .via-prose>.wp-block-group__inner-container>*{max-width:68ch}
:is(.via-site,.editor-styles-wrapper) .via-prose p{font-size:19px;line-height:1.7;margin-top:1.05em}
:is(.via-site,.editor-styles-wrapper) .via-prose p:first-child{margin-top:0}
:is(.via-site,.editor-styles-wrapper) .via-prose .via-lede{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:clamp(25px,2.4vw,32px);line-height:1.35;color:#040404;max-width:34ch}
:is(.via-site,.editor-styles-wrapper) .via-prose .via-lede strong{font-weight:600;color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-prose strong{font-weight:700}
:is(.via-site,.editor-styles-wrapper) .via-prose a{text-decoration:underline;text-decoration-color:#EE964B;text-decoration-thickness:2px;text-underline-offset:3px}
:is(.via-site,.editor-styles-wrapper) .via-prose a:hover{color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-prose .wp-block-button__link,:is(.via-site,.editor-styles-wrapper) .via-prose .wp-block-button__link:hover{text-decoration:none}
:is(.via-site,.editor-styles-wrapper) .via-prose h2{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:clamp(30px,3vw,40px);line-height:1.12;color:#547687;margin-top:72px;text-wrap:balance}
:is(.via-site,.editor-styles-wrapper) .via-prose h2+p{margin-top:.7em}
:is(.via-site,.editor-styles-wrapper) .via-prose ul{margin:1em 0 0;padding-left:1.2em;font-size:19px;line-height:1.6}
:is(.via-site,.editor-styles-wrapper) .via-prose li{margin-top:.5em}
:is(.via-site,.editor-styles-wrapper) .via-prose li::marker{color:#EE964B}
:is(.via-site,.editor-styles-wrapper) .via-prose .via-btns{margin-top:40px}
:is(.via-site,.editor-styles-wrapper) .via-prose .via-prose-quote{max-width:none;margin:64px calc(50% - 50vw) 8px;padding:72px max(32px,calc((100vw - 1200px)/2));background:#20303A} /* full bleed; the section clips the overhang */
:is(.via-site,.editor-styles-wrapper) .via-prose-quote .via-q{max-width:46ch;margin:0}
:is(.via-site,.editor-styles-wrapper) .via-prose-quote .via-q p{margin-top:0;font-size:clamp(25px,2.6vw,32px);line-height:1.32}
:is(.via-site,.editor-styles-wrapper) .via-prose .via-people{max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;margin-top:40px}
:is(.via-site,.editor-styles-wrapper) .via-person{min-width:0}
:is(.via-site,.editor-styles-wrapper) .via-person .via-photo{width:132px;height:132px;border-radius:0;background:#E3ECF1;box-shadow:0 6px 18px rgba(32,48,58,.14);display:grid;place-items:center;margin:0 0 22px;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;line-height:1.4;color:#547687;text-align:center}
:is(.via-site,.editor-styles-wrapper) .via-person .wp-block-image{margin:0 0 22px} /* the headshot, once it replaces the "Photo to come" circle */
:is(.via-site,.editor-styles-wrapper) .via-person .wp-block-image img{width:132px;height:132px;border-radius:0;object-fit:cover;box-shadow:0 6px 18px rgba(32,48,58,.14)} /* 0.1.8: square, Matt 10/19 */
:is(.via-site,.editor-styles-wrapper) .via-person h3{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:34px;line-height:1.1;color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-person p{font-size:18px}
/* the About header: a dictionary entry for the name (JR's idea, Matt picked Light, 10/12) */
:is(.via-site,.editor-styles-wrapper) .via-page-head--define{position:relative;overflow:hidden;padding-bottom:72px}
:is(.via-site,.editor-styles-wrapper) .via-page-head--define .via-eyebrow,:is(.via-site,.editor-styles-wrapper) .via-page-head--define .via-define{position:relative;z-index:1}
:is(.via-site,.editor-styles-wrapper) .via-define-ghost{position:absolute;z-index:0;right:-60px;bottom:-150px;width:min(560px,48vw);margin:0;opacity:.07;pointer-events:none}
:is(.via-site,.editor-styles-wrapper) .via-define-ghost img{width:100%;height:auto}
:is(.via-site,.editor-styles-wrapper) .via-define{margin-top:20px}
:is(.via-site,.editor-styles-wrapper) .via-define-word{margin:0;line-height:0}
:is(.via-site,.editor-styles-wrapper) .via-s .via-define-word img{height:clamp(96px,10.5vw,150px);width:auto;max-width:none;margin-left:-.09em}
:is(.via-site,.editor-styles-wrapper) .via-define-say{margin-top:8px;font-family:'Cormorant','ViaIPA',Georgia,serif;font-weight:400;font-size:clamp(22px,1.8vw,26px);letter-spacing:.01em;line-height:1.4;color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-define-say em{margin-left:16px;font-family:'Karla',system-ui,sans-serif;font-style:normal;font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase}
:is(.via-site,.editor-styles-wrapper) .via-s hr.via-define-rule{width:48px;height:2px;margin:30px 0 22px;padding:0;border:0;background:#EE964B;opacity:1}
:is(.via-site,.editor-styles-wrapper) .via-define-meaning{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:clamp(40px,4.5vw,64px);line-height:1.04;color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-define-from{margin-top:12px;font-family:'Cormorant',Georgia,serif;font-weight:400;font-size:clamp(21px,1.8vw,26px);color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-define-from em{font-style:italic}
:is(.via-site,.editor-styles-wrapper) .via-page-head--define + .via-prose{border-top:1px solid #8AB1C4;padding-top:56px}
@media (max-width:767px){
  :is(.via-site,.editor-styles-wrapper) .via-page-head{padding:72px var(--inset) 28px}
  :is(.via-site,.editor-styles-wrapper) .via-prose{padding-bottom:72px}
  :is(.via-site,.editor-styles-wrapper) .via-prose p,:is(.via-site,.editor-styles-wrapper) .via-prose ul{font-size:18px}
  :is(.via-site,.editor-styles-wrapper) .via-prose .via-people{grid-template-columns:1fr;gap:48px}
  :is(.via-site,.editor-styles-wrapper) .via-prose h2{margin-top:56px}
  :is(.via-site,.editor-styles-wrapper) .via-prose .via-prose-quote{padding-top:56px;padding-bottom:56px}
}

/* ===== the contact form (Fluent Forms, built in its own dashboard and dropped into the contact page's Form section) =====
   Scoped to that section, so Canton Abbey's other Fluent forms (event registration) are untouched.
   Written against Fluent Forms' standard markup; check it once the real form is on the page. */
:is(.via-site,.editor-styles-wrapper) .via-form-placeholder{border:1px dashed #8AB1C4;padding:20px 24px;color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform{max-width:640px;margin-top:40px;font-family:'AlegreyaSans',system-ui,sans-serif;color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-el-group{margin-bottom:24px}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-el-input--label label{font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-el-is-required.asterisk-right label::after,:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-el-is-required.asterisk-left label::before{color:#547687}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-el-form-control{width:100%;font-family:inherit;font-size:18px;line-height:1.5;color:#040404;background:#fff;border:1px solid #8AB1C4;border-radius:0;padding:12px 14px;box-shadow:none}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-el-form-control:focus{border-color:#547687;outline:3px solid #EE964B;outline-offset:1px;box-shadow:none}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform textarea.ff-el-form-control{min-height:170px}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-btn-submit{background:#EE964B!important;color:#040404!important;border:0!important;border-radius:0!important;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;line-height:1.5;padding:16px 28px;box-shadow:none;transition:background 200ms ease}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-btn-submit:hover,:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-btn-submit:focus-visible{background:#040404!important;color:#F7F7F7!important}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .ff-el-is-error .ff-el-form-control{border-color:#B3261E}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .error,:is(.via-site,.editor-styles-wrapper) .via-form-sec .fluentform .text-danger{color:#B3261E;font-size:15px;margin-top:6px}
:is(.via-site,.editor-styles-wrapper) .via-form-sec .ff-message-success{margin-top:32px;background:#fff;border:0;border-left:3px solid #EE964B;padding:20px 24px;font-size:18px;box-shadow:none;color:#040404}

/* ===== leftovers from the old Oxygen dev build (0.1.4) =====
   That build styled some of the same class names in Oxygen (its "via" stylesheet and global class styles).
   Every rule in this file is lifted above them by the :is(.via-site,.editor-styles-wrapper) prefix; these two
   cancel old properties this file never sets on its own. */
:is(.via-site,.editor-styles-wrapper) .via-panel::after{content:none}
:is(.via-site,.editor-styles-wrapper) .via-hero{background-image:none}

/* ===== Via Template header + footer on phones (0.1.5): the prototype's layout, JR-approved =====
   Header: logo on its own line (none on home), then the menu links in a row at 12px, wrapping, and
   Start a Conversation on its own line below. Footer: logo, then the links wrapping; no Start a
   Conversation in the footer at any width (the prototype's footer has none).
   The Oxygen Header Builder + Pro Menu markup was read from the live page on 10/19. Pro Menu writes its
   item styles on its element ID and switches its list to a column on phones, which outranks any class:
   hence the !important flags. Everything stays inside .via-site (Via pages only). */
.via-site .via-footer .via-nav-cta{display:none!important}
@media (max-width:767px){
  .via-site header.via-header{padding:0!important;height:auto!important}
  .via-site header.via-header .oxy-header-row{height:auto!important;min-height:0!important;padding:12px 32px 10px!important}
  .via-site header.via-header .oxy-header-container{height:auto!important;max-width:none!important;padding:0!important;flex-wrap:wrap!important;row-gap:10px}
  .via-site header.via-header .oxy-header-left{width:100%!important;height:auto!important}
  .via-site header.via-header .oxy-header-center{display:none!important}
  .via-site header.via-header .oxy-header-right{width:100%!important;height:auto!important;justify-content:flex-start!important}
  .via-site header.via-header .via-header-lockup{height:34px!important;width:auto!important;max-width:none!important}
  .via-home header.via-header .oxy-header-left{display:none!important} /* phone: no empty band above the nav */
  .via-site header.via-header .oxy-pro-menu,.via-site header.via-header .oxy-pro-menu-container,
  .via-site .via-footer .oxy-pro-menu,.via-site .via-footer .oxy-pro-menu-container{width:100%!important}
  .via-site header.via-header .oxy-pro-menu-list,.via-site .via-footer .oxy-pro-menu-list{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-start!important;gap:10px 18px!important;width:100%!important}
  .via-site header.via-header .oxy-pro-menu-list .menu-item,.via-site .via-footer .oxy-pro-menu-list .menu-item{width:auto!important;flex:0 0 auto!important;margin:0!important;padding:0!important}
  .via-site header.via-header .oxy-pro-menu-list .menu-item > a,.via-site .via-footer .oxy-pro-menu-list .menu-item > a{font-size:12px!important;letter-spacing:.06em!important;padding:4px 0!important;white-space:nowrap!important;justify-content:flex-start!important;text-align:left!important}
  .via-site header.via-header .oxy-pro-menu-list .via-nav-cta{flex:0 0 100%!important;display:block!important}
  .via-site header.via-header .oxy-pro-menu-list .via-nav-cta > a{display:inline-flex!important;width:max-content!important;padding:11px 18px!important;margin-left:0!important}
  .via-site .via-footer .via-inner{padding:0 32px!important}
  .via-site .via-footer .via-footer-row{flex-direction:column!important;align-items:flex-start!important;gap:20px!important}
}

/* ===== more leftovers from the old Oxygen dev build (0.1.6, read from the live universal.css on 10/19) =====
   Its class layouts are written as .x:not(.ct-section):not(.oxy-easy-posts) (three classes), which beats the
   two-class rules above; these restate the plugin's values at four classes. Plus two properties the plugin
   never set: a border and background on the button wrapper, and a box border around the compass bar. */
:is(.via-site,.editor-styles-wrapper) .via-split:not(.ct-section):not(.oxy-easy-posts){flex-wrap:nowrap;align-items:stretch;gap:64px}
:is(.via-site,.editor-styles-wrapper) .via-split--invites:not(.ct-section):not(.oxy-easy-posts){gap:56px}
:is(.via-site,.editor-styles-wrapper) .wp-block-cover.via-panel:not(.ct-section):not(.oxy-easy-posts){flex-direction:row;align-items:center}
@media (max-width:991px){
  :is(.via-site,.editor-styles-wrapper) .via-split:not(.ct-section):not(.oxy-easy-posts){flex-direction:column;gap:0}
}
:is(.via-site,.editor-styles-wrapper) .via-btn{background:none;border:0}
:is(.via-site,.editor-styles-wrapper) .via-compass{border-top:0;border-left:0;border-right:0}

/* ===== 0.1.7: cover photos fill their tile / panel again =====
   0.1.4's prefix lifted the base ".via-s img{height:auto}" above WordPress's own cover-image rule, so the
   photo behind a Cover block stopped at its natural height. Restate core's rule one class higher. */
:is(.via-site,.editor-styles-wrapper) .via-s .wp-block-cover__image-background{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;margin:0}

/* ===== 0.1.9: the Start a Conversation popup (assets/via-talk.js) =====
   A native <dialog>, so it sits in the browser's top layer above the sticky header, the compass bar and
   the admin bar no matter their z-index. Desktop: a centered box. Under 768px: a full-screen sheet with
   its own scroll, the title bar and close button pinned at the top. The form inside is the contact page's
   Fluent form and keeps the .via-form-sec skin above; the rules here only adjust it for the popup. */
.via-site dialog.via-talk{position:fixed;box-sizing:border-box;width:min(680px,calc(100vw - 48px));max-width:none;max-height:min(88vh,920px);height:auto;margin:auto;inset:0;padding:0;border:0;border-radius:0;background:#F7F7F7;color:#040404;box-shadow:0 24px 64px rgba(32,48,58,.28);overflow:hidden;font-family:'AlegreyaSans',system-ui,sans-serif;line-height:1.5}
.via-site dialog.via-talk:not([open]){display:none}
.via-site dialog.via-talk::backdrop{background:rgba(32,48,58,.58)}
.via-site .via-talk *{box-sizing:border-box}
.via-site .via-talk .via-talk-sheet{display:flex;flex-direction:column;height:100%;max-height:inherit}
.via-site .via-talk .via-talk-bar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 20px 16px 40px;background:#F7F7F7;border-bottom:1px solid #8AB1C4}
.via-site .via-talk .via-talk-title{margin:0;padding:0;font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:34px;line-height:1.1;letter-spacing:0;text-transform:none;color:#547687;outline:0}
.via-site .via-talk .via-talk-title:focus-visible{outline:3px solid #EE964B;outline-offset:4px}
.via-site .via-talk .via-talk-close{flex:0 0 auto;display:grid;place-items:center;width:48px;height:48px;min-width:48px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#040404;box-shadow:none;cursor:pointer;transition:background 200ms ease}
.via-site .via-talk .via-talk-close:hover{background:#E3ECF1}
.via-site .via-talk .via-talk-close:focus-visible{outline:3px solid #EE964B;outline-offset:2px}
.via-site .via-talk .via-talk-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:24px 40px 40px}
.via-site .via-talk .via-talk-lede{margin:0;font-size:19px;line-height:1.6;color:#040404;max-width:52ch}
.via-site .via-talk .via-form-sec .fluentform{margin-top:24px;max-width:none}
.via-site .via-talk .via-form-sec .fluentform .ff-el-group:last-child{margin-bottom:0}
/* every field 16px or more, so iPhone Safari never zooms in on focus */
.via-site .via-talk .fluentform :is(input:not([type=radio]):not([type=checkbox]):not([type=hidden]),select,textarea){font-size:18px!important;min-height:48px}
.via-site .via-talk .fluentform textarea{min-height:140px}
/* radio and checkbox rows: the whole 44px row is the tap target */
.via-site .via-talk .fluentform .ff-el-form-check{margin:0}
.via-site .via-talk .fluentform .ff-el-form-check-label{display:flex;align-items:center;gap:12px;min-height:44px;margin:0;font-size:18px;cursor:pointer}
.via-site .via-talk .fluentform .ff-el-form-check-input{width:20px;height:20px;margin:0;flex:0 0 auto;accent-color:#547687}
.via-site .via-talk .fluentform .ff-btn-submit{min-height:52px}
@keyframes via-talk-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes via-talk-up{from{transform:translateY(100%)}to{transform:none}}
@keyframes via-talk-fade{from{opacity:0}to{opacity:1}}
.via-site dialog.via-talk[open]{animation:via-talk-in 240ms cubic-bezier(.22,1,.36,1)}
.via-site dialog.via-talk[open]::backdrop{animation:via-talk-fade 240ms ease}
@media (max-width:767px){
  .via-site dialog.via-talk{width:100%;max-width:100%;height:var(--via-vvh,100dvh);max-height:var(--via-vvh,100dvh);inset:var(--via-vvtop,0px) 0 auto 0;margin:0;box-shadow:none}
  .via-site dialog.via-talk[open]{animation:via-talk-up 300ms cubic-bezier(.22,1,.36,1)}
  .via-site .via-talk .via-talk-bar{padding:max(8px,env(safe-area-inset-top)) 8px 8px 20px}
  .via-site .via-talk .via-talk-title{font-size:27px}
  .via-site .via-talk .via-talk-scroll{padding:20px 20px calc(32px + env(safe-area-inset-bottom))}
  .via-site .via-talk .via-talk-lede{font-size:18px}
  .via-site .via-talk .fluentform .ff-btn-submit{width:100%}
  /* Fluent's side-by-side name boxes stack on a phone */
  .via-site .via-talk .fluentform .ff-t-container{display:block}
  .via-site .via-talk .fluentform .ff-t-cell{width:100%;padding:0}
}
@media (prefers-reduced-motion:reduce){
  .via-site dialog.via-talk[open],.via-site dialog.via-talk[open]::backdrop{animation:none}
}

/* ===== 0.1.10: Via Events =====
   Movement colors follow the prototype's grounds: Well = light blue family (cream ground, slate type),
   Lantern = amber, Path = night. No movement = white box / night header. */
:is(.via-site,.editor-styles-wrapper) .via-page-head .via-page-dek{font-size:19px;line-height:1.6;max-width:52ch;margin:24px 0 0;color:#040404}
:is(.via-site,.editor-styles-wrapper) .via-ev-list{background:#F7F7F7;padding:16px var(--inset) 112px}
.via-site .via-events .via-ev-grid{display:grid;grid-template-columns:1fr;gap:28px}
@media (min-width:768px){.via-site .via-events .via-ev-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.via-site .via-events .via-ev-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.via-site .via-ev-card{position:relative;display:flex;flex-direction:column;min-width:0;background:#FFFFFF;border:1px solid #C9D9E1;color:#040404;transition:transform 200ms ease,box-shadow 200ms ease}
.via-site .via-ev-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(32,48,58,.14)}
.via-site .via-ev-card:focus-within{outline:3px solid #EE964B;outline-offset:3px}
.via-site .via-ev-tile{position:relative;aspect-ratio:16/10;overflow:hidden;background:#20303A;margin:0}
.via-site .via-ev-tile .via-ev-img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;margin:0}
.via-site .via-ev-tile .via-ev-img--mark{width:72px;height:72px;object-fit:contain;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);opacity:.9}
.via-site .via-ev-chip{position:absolute;top:14px;left:14px;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;line-height:1;padding:7px 10px;background:#F7F7F7;color:#040404}
.via-site .via-ev-body{display:flex;flex-direction:column;gap:8px;flex:1 1 auto;padding:20px 22px 24px}
.via-site .via-ev-when{margin:0;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#547687}
.via-site .via-ev-title{overflow-wrap:anywhere;margin:2px 0 0;font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:30px;line-height:1.08;color:inherit;text-wrap:balance}
.via-site .via-ev-title a{color:inherit;text-decoration:none}
.via-site .via-ev-title a::after{content:'';position:absolute;inset:0;z-index:2}
.via-site .via-ev-title a:focus-visible{outline:0}
.via-site .via-ev-meta{margin:0;font-size:16px;line-height:1.45;color:#040404}
.via-site .via-ev-dek{margin:4px 0 0;font-size:16px;line-height:1.55;color:#040404}
.via-site .via-ev-card .via-go{margin-top:auto;padding-top:10px}
.via-site .via-ev-card .via-go span{display:inline-block;font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding-bottom:3px;box-shadow:inset 0 -2px 0 #EE964B}
.via-site .via-ev-card:hover .via-go span{box-shadow:inset 0 -2px 0 currentColor}
/* box colors by movement */
.via-site .via-ev-card.via-ev--well{background:#E3ECF1;border-color:#8AB1C4}
.via-site .via-ev--well .via-ev-chip{background:#8AB1C4;color:#040404}
.via-site .via-ev--well .via-ev-when{color:#3E5A69} /* slate is 4.1:1 on this tint; this darker slate is 6.1:1 */
.via-site .via-ev-card.via-ev--lantern{background:#EE964B;border-color:#EE964B}
.via-site .via-ev--lantern .via-ev-when{color:#040404}
.via-site .via-ev--lantern .via-ev-chip{background:#040404;color:#F7F7F7}
.via-site .via-ev--lantern .via-go span{box-shadow:inset 0 -2px 0 #040404}
.via-site .via-ev-card.via-ev--path{background:#20303A;border-color:#20303A;color:#F7F7F7}
.via-site .via-ev--path .via-ev-when{color:#EE964B}
.via-site .via-ev--path :is(.via-ev-meta,.via-ev-dek){color:#C9D9E1}
.via-site .via-ev--path .via-ev-chip{background:#EE964B;color:#040404}
/* empty state: shown when the list is empty, or when the page script has hidden every past event */
.via-site .via-ev-empty{display:none;max-width:56ch;background:#FFFFFF;border:1px solid #C9D9E1;border-left:3px solid #EE964B;padding:28px 30px}
.via-site .via-ev-grid:empty + .via-ev-empty,.via-site .via-events--empty .via-ev-empty{display:block}
.via-site .via-ev-empty p{font-size:18px;line-height:1.6;margin:0 0 14px}
.via-site .via-ev-empty .via-ev-empty-h{font-family:'Cormorant',Georgia,serif;font-weight:500;font-size:32px;line-height:1.15;color:#547687;margin-bottom:10px}
.via-site .via-ev-empty .via-go{margin:6px 0 0}
/* a single event's page */
.via-site .via-ev-head{background:#20303A;color:#F7F7F7;padding:96px var(--inset) 72px}
.via-site .via-ev-head .via-eyebrow{color:#EE964B;margin-bottom:24px}
.via-site .via-ev-head .via-h1{overflow-wrap:anywhere;color:#F7F7F7;max-width:18ch;margin:0 0 36px;text-wrap:balance}
.via-site .via-ev-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,max-content));gap:20px 48px;margin:0 0 36px;padding:0}
.via-site .via-ev-facts div{margin:0}
.via-site .via-ev-facts dt{font-family:'Karla',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#8AB1C4;margin:0 0 6px}
.via-site .via-ev-facts dd{margin:0;font-size:20px;line-height:1.4;color:inherit;max-width:30ch;overflow-wrap:anywhere}
.via-site .via-ev-head .via-btn .wp-block-button__link{font-size:15px;padding:18px 34px;min-height:56px}
.via-site .via-ev-head .via-btn .wp-block-button__link:hover,.via-site .via-ev-head .via-btn .wp-block-button__link:focus-visible{background:#F7F7F7;color:#040404}
.via-site .via-ev-note{margin:0;font-size:19px;line-height:1.5;color:inherit}
.via-site .via-ev-note a{color:inherit;text-decoration:underline;text-decoration-color:#EE964B;text-decoration-thickness:2px;text-underline-offset:3px}
.via-site .via-ev-head.via-ev--well{background:#F7F7F7;color:#040404;border-bottom:1px solid #8AB1C4}
.via-site .via-ev-head.via-ev--well .via-eyebrow,.via-site .via-ev-head.via-ev--well .via-h1{color:#547687}
.via-site .via-ev-head.via-ev--well .via-ev-facts dt{color:#547687}
.via-site .via-ev-head.via-ev--well .via-btn .wp-block-button__link:hover,.via-site .via-ev-head.via-ev--well .via-btn .wp-block-button__link:focus-visible{background:#040404;color:#F7F7F7}
.via-site .via-ev-head.via-ev--lantern{background:#EE964B;color:#040404}
.via-site .via-ev-head.via-ev--lantern .via-eyebrow,.via-site .via-ev-head.via-ev--lantern .via-h1,.via-site .via-ev-head.via-ev--lantern .via-ev-facts dt{color:#040404}
.via-site .via-ev-head.via-ev--lantern .via-btn .wp-block-button__link{background:#040404;color:#F7F7F7}
.via-site .via-ev-head.via-ev--lantern .via-btn .wp-block-button__link:hover,.via-site .via-ev-head.via-ev--lantern .via-btn .wp-block-button__link:focus-visible{background:#F7F7F7;color:#040404}
.via-site .via-ev-head.via-ev--lantern .via-ev-note a{text-decoration-color:#040404}
.via-site .via-ev-main{background:#F7F7F7;padding:72px var(--inset);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:start}
.via-site .via-ev-figure{margin:0}
.via-site .via-ev-figure .via-ev-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;max-width:100%}
.via-site .via-ev-text p{font-size:19px;line-height:1.7;max-width:52ch;margin:0}
.via-site .via-ev-main:not(:has(.via-ev-figure)){grid-template-columns:minmax(0,1fr)}
.via-site .via-ev-back{background:#F7F7F7;padding:0 var(--inset) 96px}
.via-site .via-ev-back .via-go a{color:#040404}
@media (max-width:991px){
  .via-site .via-ev-main{grid-template-columns:minmax(0,1fr);gap:32px;padding-block:48px}
}
@media (max-width:767px){
  .via-site .via-ev-head{padding:64px var(--inset) 48px}
  .via-site .via-ev-head .via-h1{margin-bottom:28px}
  .via-site .via-ev-facts{grid-template-columns:1fr;gap:16px;margin-bottom:28px}
  .via-site .via-ev-facts dd{font-size:18px}
  .via-site .via-ev-head .via-btns,.via-site .via-ev-head .via-btn,.via-site .via-ev-head .via-btn .wp-block-button__link{width:100%;text-align:center}
  .via-site .via-ev-title{font-size:28px}
  .via-site .via-ev-empty{padding:22px 20px}
}
@media (prefers-reduced-motion:reduce){.via-site .via-ev-card{transition:none}.via-site .via-ev-card:hover{transform:none}}

/* ===== 0.1.11: header fixes (JR, 11/3) =====
   Start a Conversation: Oxygen Pro Menu sets the link to justify-content:flex-end and stretches it, so the words sat ~6px right of center. Center them.
   Blue line: Oxygen drew it on the header ROW (1200px, inside the page margins). Move it to the header itself so it runs edge to edge. */
.via-site header.via-header .via-nav-cta > a{justify-content:center!important;text-align:center!important}
.via-site header.via-header{border-bottom:1px solid #547687!important}
.via-site header.via-header .oxy-header-row{border-bottom:0!important}
