
/* Layout: matches the live Wix site - white page, inline header nav, inset media heroes,
   gold pill + outline buttons, ruled numbered rows, bordered cards with navy title bars,
   red and light-gray bands, light-gray footer with navy top rule. Single light theme by design. */
:root{
  --navy:#081F2D; --ink:#0E1E2B; --cobalt:#004987; --sky:#BDD4E7; --red:#A8483D; --red-band:#A04B42;
  --gold:#B89A66; --gold-dark:#A2834F; --ltgray:#D9D8D6; --rule:#C9D3DB; --cream:#F4F1E8; --white:#FFFFFF;
  --f-display:"Wix Madefor Display","Aesthet Nova","Segoe UI",Arial,sans-serif;
  --f-text:"Wix Madefor Text",Arial,"Helvetica Neue",sans-serif;
  --f-hand:"Alex Brush","Brush Script MT",cursive;
  --wrap:1400px; --gutter:clamp(16px,4vw,64px);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--f-text);font-size:17px;line-height:1.6}
a{color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.narrow{max-width:1180px}
.text-col{max-width:1000px;margin-inline:auto}
h1,h2,h3,h4,h5{font-family:var(--f-display);font-weight:500;line-height:1.12;margin:0;text-wrap:balance;color:var(--ink);letter-spacing:-.005em}
h1{font-size:clamp(2.6rem,6vw,5rem)}
h2{font-size:clamp(2.2rem,4.6vw,4.2rem)}
h3{font-size:clamp(1.5rem,2.4vw,2rem)}
h4{font-size:1.3rem}
p{margin:0}
.lead{font-size:clamp(1.1rem,1.6vw,1.45rem);line-height:1.55}
.center{text-align:center}
.center .btns{justify-content:center}
.stack{display:flex;flex-direction:column;gap:1rem}
.stack-lg{display:flex;flex-direction:column;gap:1.75rem}
.caps{text-transform:uppercase;letter-spacing:.06em}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* ---------- utility bar (top) ---------- */
.utility{background:var(--ltgray);border-bottom:1.5px solid var(--sky)}
.utility .wrap{max-width:none;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.4rem clamp(1.25rem,2.4vw,2.4rem);padding-block:.55rem .75rem;padding-inline:clamp(16px,4.5vw,90px)}
.utility a{position:relative;color:var(--red);text-decoration:none;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(.95rem,1.2vw,1.25rem);line-height:1.3;padding-bottom:.2rem}
.utility a::after{content:"";position:absolute;left:3%;right:3%;bottom:-.3rem;height:.45rem;border-bottom:1.5px solid currentColor;border-radius:0 0 50% 50%}
.utility a:hover{color:var(--navy)}
@media (max-width:600px){.utility .wrap{justify-content:center;gap:.4rem .8rem;padding-inline:10px}.utility a{font-size:.76rem;letter-spacing:0}}

/* ---------- header ---------- */
.site-header{background:var(--white);border-bottom:1px solid var(--rule);position:relative;z-index:50}
.site-header .bar{display:flex;align-items:flex-start;gap:clamp(1rem,3vw,2.5rem);padding-block:1rem 1.25rem;padding-inline:clamp(16px,1.6vw,28px)}
.logo img{height:clamp(110px,13vw,230px);width:auto}
.nav{flex:1;min-width:0;padding-top:clamp(.4rem,2vw,2.2rem)}
.nav>ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.2rem clamp(.9rem,2.4vw,3.4rem)}
.nav li{position:relative}
.nav a.top{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem 0;color:var(--ink);text-decoration:none;font-family:var(--f-text);font-size:clamp(1rem,1.3vw,1.35rem);white-space:nowrap;border-bottom:2px solid transparent}
.nav a.top:hover,.nav a.top.active{border-bottom-color:var(--gold)}
.nav .has-sub>a.top::after{content:"";width:.42rem;height:.42rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-3px) rotate(45deg);margin-left:.15rem}
.nav .dropdown{position:absolute;left:-1rem;top:100%;min-width:240px;background:var(--white);border:1px solid var(--rule);box-shadow:0 14px 30px rgba(8,31,45,.12);list-style:none;margin:0;padding:.5rem 0;display:none;z-index:60}
.nav li:hover>.dropdown,.nav li:focus-within>.dropdown{display:block}
.nav .dropdown a{display:block;padding:.6rem 1.2rem;color:var(--ink);text-decoration:none;font-size:1.02rem}
.nav .dropdown a:hover,.nav .dropdown a.active{background:var(--cream)}
.login{display:inline-flex;align-items:center;gap:.4rem;color:var(--ink);text-decoration:none;font-size:clamp(1rem,1.3vw,1.35rem);padding:.35rem 0}
.login svg{width:26px;height:26px}
@media (max-width:760px) and (min-width:601px){.site-header .bar{flex-direction:column;align-items:center}.nav{padding-top:0}.nav>ul{justify-content:center}.nav .dropdown{left:50%;transform:translateX(-50%)}}
.menu-toggle{display:none}
@media (max-width:600px){
  .site-header{position:sticky;top:env(safe-area-inset-top,0px)}
  .site-header .bar{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-block:.6rem}
  .logo img{height:78px}
  .menu-toggle{display:inline-flex;align-items:center;gap:.55rem;background:none;border:1.5px solid var(--ink);color:var(--ink);font:inherit;font-size:1rem;text-transform:uppercase;letter-spacing:.08em;padding:.6rem 1rem;cursor:pointer}
  .menu-toggle svg{width:22px;height:22px}
  .nav{display:none;flex-basis:100%;padding-top:.5rem;max-height:70vh;overflow:auto}
  .nav.open{display:block}
  .nav>ul{flex-direction:column;flex-wrap:nowrap;gap:0}
  .nav>ul>li{border-top:1px solid var(--rule)}
  .nav a.top,.login{display:flex;padding:.85rem .25rem;font-size:1.1rem;border-bottom:0}
  .nav a.top.active{color:var(--red)}
  .nav .has-sub>a.top::after{display:none}
  .nav .dropdown{display:block;position:static;transform:none;border:0;box-shadow:none;padding:0 0 .6rem 1rem;min-width:0}
  .nav .dropdown a{padding:.5rem .25rem;font-size:1rem}
}

/* ---------- buttons ---------- */
.btns{display:flex;gap:clamp(1rem,3.5vw,4rem);flex-wrap:wrap;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-width:220px;min-height:84px;padding:1rem 2.5rem;font-family:var(--f-text);font-size:1.15rem;text-transform:uppercase;letter-spacing:.12em;line-height:1.35;text-decoration:none;cursor:pointer;border:1.5px solid transparent;background:none;transition:background .2s,color .2s,border-color .2s}
.btn-gold{background:var(--gold);color:var(--white);border-radius:999px}
.btn-gold:hover{background:var(--gold-dark)}
.btn-outline{border-color:var(--ink);color:var(--ink);border-radius:0}
.btn-outline:hover{background:var(--ink);color:var(--white)}
.btn-text{min-width:0;min-height:0;padding:.5rem 1rem;color:var(--white);letter-spacing:.16em;font-weight:500}
.btn-text:hover{text-decoration:underline}
.btn-sm{min-width:150px;min-height:56px;font-size:.95rem;padding:.7rem 1.6rem}
.btn{max-width:100%;white-space:normal}
.split.split-photo{grid-template-columns:minmax(0,320px) minmax(0,1fr)}
@media (max-width:760px){.split.split-photo{grid-template-columns:1fr}.split.split-photo>img{max-width:320px}}
.text-link{display:inline-block;color:var(--ink);text-transform:uppercase;letter-spacing:.06em;font-size:1.25rem;line-height:1.4;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px;text-align:center}
.text-link:hover{color:var(--cobalt)}

/* ---------- sections ---------- */
section{padding-block:clamp(3.5rem,8vw,7rem)}
.rule-top{border-top:1px solid var(--ink)}
.band-red{background:var(--red-band)}
.band-gray{background:var(--ltgray)}
.band-cream{background:var(--cream)}
.round-photo{border-radius:50%;aspect-ratio:1;width:min(250px,70%);margin-inline:auto;object-fit:cover}
.logo-box{width:100%;aspect-ratio:4/3;background:var(--white);display:flex;align-items:center;justify-content:center;padding:1.5rem}
.logo-box img{max-width:100%;max-height:100%;object-fit:contain}
.cal-fallback{max-width:720px;margin-inline:auto}
.cal-fallback svg{color:var(--cobalt)}
.cal-frame{background:var(--white);border:1.5px solid var(--ink);max-width:1100px;margin-inline:auto}
.cal-frame iframe{display:block;width:100%;height:clamp(560px,75vh,820px);border:0}
.band-navy-flyer{background:var(--navy);color:var(--white)}
.band-navy-flyer h2,.band-navy-flyer p,.band-navy-flyer .row,.band-navy-flyer .row .k,.band-navy-flyer .row .v{color:var(--white)}
.band-navy-flyer .rows{border-top-color:var(--gold)}
.band-navy-flyer .row{border-bottom-color:rgba(255,255,255,.35)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,8rem);align-items:center}
.split>*{min-width:0}
.split.media-wide{grid-template-columns:1.15fr 1fr}
.grid{display:grid;gap:clamp(1.25rem,2.5vw,3rem)}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1000px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.split,.split.media-wide{grid-template-columns:1fr}.g2,.g3{grid-template-columns:1fr}}
@media (max-width:520px){.g4{grid-template-columns:1fr}}
.section-title{margin-bottom:clamp(2rem,4vw,3.5rem)}

/* ---------- image / video placeholders ---------- */
.ph{position:relative;width:100%;max-width:100%;aspect-ratio:4/3;background:repeating-linear-gradient(135deg,#EFE7D6 0 16px,#E7DCC5 16px 32px);display:flex;align-items:center;justify-content:center;text-align:center;color:#7A6338;padding:1rem}
.embed-slot{width:100%;max-width:100%;border:2px dashed #8E9DA8;background:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;text-align:center;padding:1.5rem;color:var(--ink)}
.embed-slot strong{font-family:var(--f-display);font-weight:500;font-size:1.3rem}
.embed-slot span:last-child{color:#55626C;font-size:.95rem;max-width:40ch}
.embed-icon{font-family:ui-monospace,Menlo,monospace;font-size:1.6rem;color:var(--red)}
.ph .lbl{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;display:flex;flex-direction:column;align-items:center;gap:.5rem}
.ph .lbl::before{content:"";width:36px;height:28px;border:2px solid currentColor;border-radius:4px;background:radial-gradient(circle at 70% 30%,currentColor 3px,transparent 4px),linear-gradient(135deg,transparent 55%,currentColor 56%,currentColor 60%,transparent 61%)}
.ph.video .lbl::before{display:none}
.ph.wide{aspect-ratio:16/9}
.ph.square{aspect-ratio:1}
.ph.portrait{aspect-ratio:4/5}
img.photo{width:100%;max-width:100%;object-fit:cover;display:block}
img.photo.portrait{aspect-ratio:4/5}
.ph.tall{aspect-ratio:3/4}
.play{width:clamp(48px,4.5vw,64px);height:clamp(48px,4.5vw,64px);border-radius:50%;background:rgba(40,46,58,.85);display:flex;align-items:center;justify-content:center}
.play::before{content:"";margin-left:4px;border-left:14px solid var(--white);border-top:9px solid transparent;border-bottom:9px solid transparent}
.ph.round{border-radius:50%;aspect-ratio:1;width:min(250px,70%,170px + 8vw);margin-inline:auto;background:var(--cream);color:#8C7A55}

/* home + page heroes: inset media with overlaid copy */
.hero{padding-block:0 clamp(2.5rem,5vw,4rem)}
.hero-media{position:relative;max-width:1730px;margin-inline:auto;width:calc(100% - 2*clamp(16px,7.5vw,150px))}
.hero-media .ph{aspect-ratio:auto;min-height:clamp(520px,62vw,1030px);background:repeating-linear-gradient(135deg,#E2C58F 0 18px,#D8B77C 18px 36px)}
.hero-media .ph .lbl{position:absolute;right:1rem;top:1rem;color:#6E5226;flex-direction:row}
.hero-media .ph .lbl::before{display:none}
.hero-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(1.5rem,3vw,3rem);text-align:center;padding:clamp(1.5rem,6vw,5rem)}
.hero-copy h1{font-size:clamp(2.6rem,6.2vw,6.2rem);max-width:15ch}
.hero-copy .divider{width:clamp(160px,22vw,420px);height:3px;background:var(--ink)}
.hero-copy p{color:var(--white);font-weight:700;font-size:clamp(1.05rem,1.7vw,1.75rem);line-height:1.45;max-width:56ch;text-shadow:0 1px 8px rgba(60,30,0,.35)}
.hero .btns{justify-content:center;margin-top:clamp(2rem,3vw,2.5rem)}
.page-hero .hero-media .ph{min-height:clamp(320px,34vw,560px)}
.page-hero .hero-copy h1{font-size:clamp(2.4rem,5.4vw,5.2rem);max-width:18ch}
.page-hero .hero-copy .sub{font-size:clamp(1rem,1.5vw,1.4rem);text-transform:uppercase;letter-spacing:.12em;color:var(--ink)}

/* home video */
.hero-photo{display:block;width:100%;height:clamp(320px,34vw,560px);object-fit:cover}
.hero-video{display:block;width:100%;height:clamp(520px,62vw,1030px);object-fit:cover;background:var(--navy)}
.hero-scrim{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(8,31,45,.55) 0%,rgba(8,31,45,.30) 60%,rgba(8,31,45,.15) 100%);pointer-events:none}
.hero-copy.on-video h1{color:var(--white);text-shadow:0 2px 18px rgba(0,0,0,.45)}
.hero-copy.on-video .divider{background:var(--white)}
.hero-copy.on-video p{text-shadow:0 1px 10px rgba(0,0,0,.5)}
.sound-toggle{position:absolute;right:1rem;bottom:1rem;z-index:2;display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;border:1.5px solid rgba(255,255,255,.8);border-radius:999px;background:rgba(8,31,45,.55);color:var(--white);font:inherit;font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.sound-toggle:hover{background:rgba(8,31,45,.8)}
.sound-toggle svg{width:20px;height:20px}
.sound-toggle .wave{display:none}
.sound-toggle[aria-pressed="true"] .wave{display:inline}
.sound-toggle[aria-pressed="true"] .x{display:none}
@media (max-width:600px){.hero-video{height:560px}.sound-toggle span{display:none}.sound-toggle{padding:.55rem}}

/* numbered ruled rows (Heritage of Worship style) */
.rows{border-top:3px solid var(--ink);margin-top:clamp(3rem,6vw,6rem)}
.rows.flush{margin-top:0}
.row{display:grid;grid-template-columns:4.5rem minmax(0,1fr) fit-content(55%);gap:1rem 2rem;align-items:start;padding-block:2.5rem;border-bottom:1.5px solid var(--ink)}
.row .n{color:var(--red);font-size:1.4rem;font-variant-numeric:tabular-nums}
.row .k{text-transform:uppercase;letter-spacing:.04em;font-size:1.4rem;line-height:1.3}
.row .v{font-family:var(--f-display);font-size:clamp(1.3rem,2vw,1.9rem);text-align:right;font-variant-numeric:tabular-nums}
.row .d{grid-column:2 / -1;font-size:1.05rem;max-width:80ch}
.row.no-n{grid-template-columns:minmax(6.5rem,1fr) fit-content(62%)}
.row .k,.row .v{min-width:0;overflow-wrap:break-word}
.row .k{padding-right:.75rem}
.row.no-n .d{grid-column:1 / -1}
.link-list .row{text-decoration:none;color:var(--ink);align-items:center}
.link-list .row .v{font-family:var(--f-text);font-size:1.05rem;text-transform:uppercase;letter-spacing:.08em;color:var(--red)}
.link-list .row:hover .k{color:var(--red)}
.link-list .row:hover .v{text-decoration:underline}
@media (max-width:640px){.row{grid-template-columns:3rem minmax(0,1fr)}.row .v{grid-column:2;text-align:left}.row.no-n{grid-template-columns:1fr}.row.no-n .v{grid-column:1}}

/* bordered cards with navy title bar (Get Connected style) */
.card{border:1.5px solid var(--ink);background:var(--white);padding:clamp(1.75rem,3vw,3rem) clamp(1.25rem,2.6vw,3.2rem);display:flex;flex-direction:column;align-items:center;gap:2rem;text-align:center}
.card .title-bar{align-self:stretch;background:var(--ink);color:var(--white);font-family:var(--f-text);font-size:clamp(1.4rem,2vw,2.1rem);padding:.45rem 1rem;line-height:1.3}
.card p{font-size:1.2rem;line-height:1.5}
.card .text-link{margin-top:auto}
@media (max-width:600px){.card{gap:1.4rem}.ph.round{width:150px}.btn{min-width:190px;min-height:70px;padding:.8rem 1.6rem;font-size:1rem}.hero-media .ph{min-height:560px}}
.card.left{align-items:stretch;text-align:left}

/* event cards */
.events{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2.2vw,2.2rem)}
@media (max-width:1000px){.events{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.events{grid-template-columns:1fr}}
.event{border:1px solid #D7D7D7;background:var(--white);display:flex;flex-direction:column;min-width:0}
.event .ph{aspect-ratio:1.5}
.event-img{width:100%;max-width:100%;aspect-ratio:1.5;object-fit:contain;display:block}
.event .body{padding:2.2rem clamp(1.25rem,3vw,3.4rem) 2.6rem;display:flex;flex-direction:column;gap:.8rem;flex:1}
.event .tag{align-self:flex-start;border:1.5px solid var(--ink);padding:.2rem 1.6rem;font-size:1.05rem}
.event h3{font-family:var(--f-text);font-weight:400;font-size:clamp(1.6rem,2.2vw,2.3rem);margin-top:.4rem}
.event .meta{font-size:1.1rem;display:flex;flex-direction:column;gap:.15rem}
.event .more{font-size:1.05rem;text-decoration:underline;text-underline-offset:3px;align-self:flex-start}
.event .btn{align-self:flex-start;margin-top:auto}

/* ministry link row */
.link-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 0;list-style:none;margin:0;padding:0}
.link-row li{display:flex;align-items:center}
.link-row li+li::before{content:"";width:1.5px;height:2rem;background:var(--gold);margin-right:clamp(.6rem,3vw,3.5rem)}
.link-row li{gap:0}
.link-row a{text-decoration:none;text-transform:uppercase;font-size:clamp(1rem,1.5vw,1.6rem);padding:.4rem 0;white-space:nowrap;margin-right:clamp(.6rem,3vw,3.5rem)}
.link-row li:last-child a{margin-right:0}
.link-row a:hover{color:var(--red)}
.event-tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem}
.event-tags li{background:var(--white);color:var(--ink);border:1.5px solid var(--ink);padding:.55rem 1.2rem;font-size:1.05rem}
@media (max-width:600px){.link-row{display:grid;grid-template-columns:1fr 1fr;gap:0}.link-row li{border-top:1px solid var(--rule)}.link-row li+li::before{display:none}.link-row a{margin:0;padding:.9rem .25rem;white-space:normal;font-size:1rem}}

/* red bands */
.band-red h2,.band-red h3,.band-red p{color:var(--ink)}
.band-red .ph{background:repeating-linear-gradient(135deg,#E9D3A6 0 18px,#DDC08A 18px 36px)}
.video-frame .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.video-frame .lbl{position:absolute;left:1rem;top:1rem}
.sermon-link{text-decoration:none;cursor:pointer;transition:filter .2s}
.sermon-link:hover{filter:brightness(1.05)}
.sermon-link:hover .play{background:var(--red)}
.sermon-cap{position:absolute;left:0;right:0;bottom:0;padding:1rem 1.25rem;background:linear-gradient(0deg,rgba(14,30,43,.85),rgba(14,30,43,0));color:var(--white);display:flex;flex-direction:column;gap:.2rem;text-align:left}
.sermon-cap strong{font-family:var(--f-display);font-weight:500;font-size:clamp(1rem,1.6vw,1.3rem)}
.sermon-cap span{font-size:.9rem;opacity:.9}

/* newsletter / form box */
.form-box{background:var(--ltgray);max-width:900px;margin-inline:auto;padding:clamp(2.5rem,7vw,6.5rem) clamp(1.5rem,7vw,6.5rem)}
.form-box .eyebrow{font-family:var(--f-display);font-size:clamp(2rem,3.4vw,3.6rem);text-align:center;line-height:1.15}
.form-box h2{font-family:var(--f-text);font-weight:400;font-size:clamp(3rem,7vw,6.6rem);margin-top:clamp(2rem,5vw,4.5rem);line-height:1.25}
.form-box h3{font-family:var(--f-text);font-weight:400;font-size:clamp(2rem,4vw,3.4rem)}
.form-box .intro{font-size:clamp(1.05rem,1.4vw,1.5rem);margin-top:clamp(1.5rem,3vw,2.5rem)}
.form-box form{margin-top:clamp(2rem,4vw,3rem)}

/* forms */
form{display:grid;gap:1.4rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
@media (max-width:560px){.form-row{grid-template-columns:1fr}}
label{display:flex;flex-direction:column;gap:.45rem;font-size:1rem}
input,select,textarea{font:inherit;font-size:1rem;padding:.8rem 0;border:0;border-bottom:1.5px solid var(--ink);background:transparent;color:var(--ink);width:100%;border-radius:0}
textarea{min-height:130px;resize:vertical;border:1.5px solid var(--ink);padding:.8rem}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--cobalt);box-shadow:0 2px 0 var(--cobalt)}
form .btn{justify-self:start}
fieldset.checks{border:0;margin:0;padding:0}
fieldset.checks legend{font-size:1rem;margin-bottom:.6rem;padding:0}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem 1.4rem}
@media (max-width:560px){.check-grid{grid-template-columns:1fr}}
label.check{flex-direction:row;align-items:center;gap:.6rem;cursor:pointer}
label.check input{width:20px;height:20px;padding:0;border:1.5px solid var(--ink);accent-color:var(--cobalt);flex:none}
.form-note{min-height:1.2em;color:var(--cobalt)}

/* people, lists, faq */
.person{display:flex;flex-direction:column;gap:.6rem}
.person h4{font-family:var(--f-text);font-weight:500;font-size:1.3rem}
.person .more-link{align-self:flex-start;text-transform:uppercase;letter-spacing:.06em;font-size:.9rem;text-decoration:underline;text-underline-offset:3px;margin-top:.2rem}
.person .more-link:hover{color:var(--red)}
.person .role{text-transform:uppercase;letter-spacing:.06em;font-size:.88rem;color:var(--red)}
.faq{border-top:3px solid var(--ink)}
.faq details{border-bottom:1.5px solid var(--ink);padding-block:1.6rem}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1.5rem;font-size:clamp(1.15rem,1.7vw,1.5rem);font-family:var(--f-display)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--red);font-size:1.8rem;line-height:1}
.faq details[open] summary::after{content:"\2212"}
.faq details p{margin-top:1rem;max-width:85ch;font-size:1.05rem}
.prose{display:flex;flex-direction:column;gap:1.25rem;font-size:1.12rem}
.contact-line{font-size:1.15rem}
.contact-line strong{font-weight:600}
.by{font-size:.95rem;color:#55626C}
.post{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;border:1px solid #D7D7D7;margin-bottom:2rem}
.post .body{padding:2rem 2rem 2rem 0;display:flex;flex-direction:column;gap:1rem}
@media (max-width:760px){.post{grid-template-columns:1fr}.post .body{padding:0 1.5rem 1.5rem}}

/* ---------- footer ---------- */
.site-footer{background:var(--ltgray);border-top:6px solid var(--ink);padding-block:clamp(1.75rem,3vw,2.5rem) 1.5rem}
.site-footer .cols{display:grid;grid-template-columns:1.3fr auto 1fr auto 1.1fr 1.2fr;gap:clamp(1.25rem,2.5vw,2.25rem);align-items:center}
.site-footer .cols>*{min-width:0}
.site-footer .vr{width:2px;background:var(--ink);align-self:stretch;min-height:0;margin:.5rem 0}
.site-footer .col-txt{padding-top:0;display:flex;flex-direction:column;gap:.6rem}
.site-footer h4{font-family:var(--f-text);font-weight:400;font-size:1.35rem;text-transform:uppercase;letter-spacing:.04em}
.site-footer p{font-size:1.05rem;line-height:1.5;letter-spacing:.01em}
.footer-logo img{height:clamp(100px,8vw,140px);width:auto}
.social{display:flex;flex-wrap:wrap;gap:.75rem;list-style:none;padding:0;margin:1rem 0 0}
.social a{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);transition:transform .15s}.social a:hover,.social a:focus-visible{transform:scale(1.08)}
.social svg{width:22px;height:22px;fill:currentColor}
.map{margin-top:0}
.map-card{display:block;text-decoration:none;color:var(--ink);background:var(--white);border:1.5px solid var(--ink);overflow:hidden}
.map-svg{display:block;width:100%;height:150px}
.map-foot{display:flex;flex-direction:column;gap:.1rem;padding:.55rem .8rem;font-size:.85rem;line-height:1.3}
.map-foot strong{font-weight:600}
.map-dir{color:var(--red);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem;margin-top:.3rem}
.map-card:hover .map-dir{text-decoration:underline}
.map .ph{aspect-ratio:1.04;background:repeating-linear-gradient(135deg,#CFE3EE 0 16px,#C2DBE8 16px 32px);color:#2E5B78}
.copyright{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--ink);color:var(--red);font-size:.95rem;letter-spacing:.02em}
@media (max-width:1100px){.site-footer .cols{grid-template-columns:1fr 1fr}.site-footer .vr{display:none}.site-footer .col-txt{padding-top:0}.map{margin-top:0}}
@media (max-width:600px){.site-footer .cols{grid-template-columns:1fr 1fr;gap:1.25rem 1rem;align-items:start}.site-footer .cols>div:first-child,.site-footer .map{grid-column:1 / -1}.site-footer p{font-size:.95rem}.site-footer h4{font-size:1.1rem}.footer-logo img{height:90px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* what we believe */
.belief-list{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:3px solid var(--ink)}
.belief-list li{position:relative;padding:1.6rem 0 1.6rem 2.6rem;border-bottom:1.5px solid var(--ink);font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.55}
.belief-list li::before{content:"";position:absolute;left:.3rem;top:2.25rem;width:.85rem;height:.85rem;border-radius:50%;background:var(--gold)}
.respond .row .k{font-size:1.25rem}
.respond a{color:var(--cobalt)}
.site-footer .ft-sub{display:block;margin-top:.4rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--red)}
.bio-video{display:block;width:min(560px,100%);aspect-ratio:764/826;margin:0 auto;background:var(--navy)}
.site-header.is-home .logo img{height:clamp(150px,15.5vw,300px)}
@media (max-width:1400px){.site-header.is-home .logo img{height:clamp(140px,13.6vw,300px)}}
@media (max-width:600px){.site-header.is-home .logo img{height:104px}}
.split.split-match{align-items:stretch}
.split-match>.stack-lg{justify-content:center}
.match-photo{height:100%;min-height:300px;object-fit:cover}
@media (max-width:760px){.match-photo{height:auto;aspect-ratio:4/3;min-height:0}}
.card .logo-box{align-self:stretch;width:auto;aspect-ratio:auto;height:clamp(170px,16vw,220px);padding:1.25rem}
.card>.ph:not(.round){align-self:stretch;width:auto;aspect-ratio:auto;height:clamp(170px,16vw,220px)}
.card .logo-box img{max-height:100%;max-width:100%;object-fit:contain}
.staff-quote{font-family:"DejaVu Serif",Georgia,serif;font-style:italic;font-size:.98rem;line-height:1.5;color:var(--ink);margin-top:.2rem}
/* staff inbox */
.inbox-bar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:2rem}
.inbox-bar select{font:inherit;padding:.5rem .8rem;border:1.5px solid var(--ink);background:var(--white)}
.inbox-list{display:grid;gap:1.25rem}
.inbox-item{border:1px solid var(--line, #cfd6dc);border-left:6px solid var(--red);background:var(--white);padding:1.25rem 1.5rem}
.inbox-item.done{border-left-color:#9AA6AF;opacity:.75}
.inbox-item header{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;margin-bottom:.8rem}
.inbox-item dl{display:grid;grid-template-columns:minmax(8rem,auto) minmax(0,1fr);gap:.35rem 1.25rem;margin:0}
.inbox-item dt{font-weight:600}.inbox-item dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
@media (max-width:560px){.inbox-item dl{grid-template-columns:1fr}.inbox-item dd{margin-bottom:.5rem}}
.inbox-item .btns{margin-top:1rem}
.staff-link{color:inherit;opacity:.7;margin-left:.75rem}
