/* Umbrella Creative shared UX, UI, and WCAG 2.2 AA layer — 2026-07-22
   Loaded after the legacy and page-specific styles so every public route
   receives one consistent, accessible design system. */

:root{
  --ink:#0d0d0d;
  --ink-soft:#292622;
  --paper:#f7f4ee;
  --paper-deep:#e9e2d7;
  --cream:#fffdf8;
  --ember:#ff4d00;
  --ember-dark:#9b3000;
  --ember-soft:#ff8a5c;
  --acid:#c6ff00;
  --lilac:#b78bff;
  --muted:#5c574f;
  --line:rgba(13,13,13,.18);
  --line-strong:rgba(13,13,13,.34);
  --line-dark:rgba(247,244,238,.22);
  --shadow:0 24px 70px rgba(13,13,13,.13);
  --surface-shadow:0 14px 38px rgba(13,13,13,.08);
  --focus:#6b36d9;
}

*{box-sizing:border-box}
html{
  scroll-behavior:smooth;
  scroll-padding-top:104px;
  text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
}
body{
  min-width:320px;
  overflow-x:clip;
  background:
    radial-gradient(circle at 8% 10%,rgba(198,255,0,.08),transparent 25rem),
    radial-gradient(circle at 94% 34%,rgba(183,139,255,.08),transparent 28rem),
    var(--paper)!important;
  color:var(--ink)!important;
  font-family:'Inter Tight',Arial,sans-serif;
}
::selection{background:var(--acid);color:var(--ink)}
img,svg,video{max-width:100%;height:auto}
[id]{scroll-margin-top:116px}
[hidden]{display:none!important}

.skip-link{
  position:fixed!important;
  z-index:9999!important;
  top:10px!important;
  left:10px!important;
  padding:12px 16px!important;
  border:2px solid var(--ink)!important;
  border-radius:10px!important;
  background:var(--acid)!important;
  color:var(--ink)!important;
  font-weight:800!important;
  text-decoration:none!important;
  transform:translateY(-180%)!important;
}
.skip-link:focus{transform:translateY(0)!important}

.eyebrow,
.section-meta,
.price-mini,
.fine-print,
.subtle-disclaimer,
small{
  color:var(--muted)!important;
}
body .blog-photo-credit,
body .editorial-credit,
body .image-credit,
body .example-image-credit{
  display:inline-flex;
  min-height:32px;
  align-items:center;
  margin-top:10px;
  color:#504a43!important;
  font-size:12px!important;
  line-height:1.5!important;
  text-decoration:underline;
  text-underline-offset:3px;
}
main :where(p,li) a:not(.btn):not(.card-action a),
main .card-action a{
  font-weight:750;
  text-decoration:underline;
  text-decoration-thickness:1.5px;
  text-underline-offset:4px;
}
main :where(p,li) a:not(.btn):hover,
main .card-action a:hover{
  text-decoration-thickness:3px;
}

/* Navigation */
.site-nav{
  position:fixed!important;
  z-index:100!important;
  inset:14px 18px auto!important;
  width:min(1280px,calc(100% - 36px))!important;
  margin-inline:auto!important;
  padding:10px 12px 10px 14px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  background:rgba(247,244,238,.96)!important;
  color:var(--ink)!important;
  box-shadow:0 14px 44px rgba(13,13,13,.12)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  backdrop-filter:blur(18px)!important;
  mix-blend-mode:normal!important;
}
.logo{
  position:relative!important;
  display:inline-flex!important;
  min-width:176px;
  min-height:44px!important;
  flex:0 0 auto;
  align-items:flex-start!important;
  padding:4px 0 8px 52px!important;
  color:inherit!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-size:21px!important;
  font-style:normal!important;
  font-weight:800!important;
  letter-spacing:-.055em!important;
  line-height:1!important;
  text-decoration:none!important;
  text-transform:lowercase!important;
}
.logo::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:42px;
  height:42px;
  border:1px solid rgba(13,13,13,.16);
  border-radius:12px;
  background-color:var(--cream);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23FF4D00' d='M8 27a24 24 0 0 1 48 0H8z'/%3E%3Cpath fill='%230D0D0D' d='M10 28h14v14c0 6 3 9 8 9s8-3 8-9V28h14v15c0 14-9 21-22 21S10 57 10 43V28z'/%3E%3C/svg%3E");
  background-position:center;
  background-repeat:no-repeat;
  background-size:32px;
  box-shadow:0 5px 14px rgba(13,13,13,.1);
}
.logo sup{
  position:absolute!important;
  top:27px!important;
  left:53px!important;
  margin:0!important;
  color:var(--ember-dark)!important;
  font-family:'JetBrains Mono',monospace!important;
  font-size:0!important;
  font-style:normal!important;
  font-weight:800!important;
  letter-spacing:.19em!important;
  line-height:1!important;
  text-transform:uppercase!important;
}
.logo sup::after{content:'Creative';font-size:7px}
.nav-links{
  display:flex;
  min-width:0;
  flex:1 1 auto;
  justify-content:center;
  align-items:center!important;
  gap:4px!important;
  list-style:none;
}
.nav-links a{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  padding:10px 11px;
  border-radius:10px;
  color:var(--ink)!important;
  font-size:13px!important;
  font-weight:720!important;
  line-height:1.2;
  text-decoration:none!important;
  transition:background .18s ease,box-shadow .18s ease;
}
.nav-links a:hover{background:rgba(13,13,13,.07)}
.nav-links a[aria-current='page']{
  background:var(--acid)!important;
  box-shadow:inset 0 -2px 0 var(--ink);
}
.nav-cta{
  display:inline-flex!important;
  min-height:44px!important;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  padding:12px 17px!important;
  border:1px solid var(--ember)!important;
  border-radius:11px!important;
  background:var(--ember)!important;
  color:var(--ink)!important;
  font-weight:850!important;
  text-decoration:none!important;
  box-shadow:0 8px 22px rgba(255,77,0,.24)!important;
}
.menu-toggle{
  display:none;
  min-width:48px!important;
  min-height:44px!important;
  border:1px solid var(--line-strong)!important;
  border-radius:10px!important;
  background:var(--cream)!important;
  color:var(--ink)!important;
  font-size:12px!important;
  font-weight:800!important;
}

/* Hero */
.page-hero{
  position:relative;
  min-height:clamp(600px,78vh,760px)!important;
  padding:136px 40px 68px!important;
  isolation:isolate;
  overflow:hidden;
  background:transparent!important;
}
.page-hero::before{
  content:'';
  position:absolute;
  z-index:-1;
  top:20%;
  right:-4vw;
  width:min(46vw,620px);
  height:min(38vw,500px);
  min-width:360px;
  min-height:360px;
  border:1px solid var(--line);
  border-radius:14px;
  background:
    linear-gradient(90deg,transparent 0 68%,var(--ember) 68% 100%),
    linear-gradient(0deg,transparent 0 58%,var(--lilac) 58% 82%,transparent 82%),
    repeating-linear-gradient(0deg,rgba(13,13,13,.07) 0 1px,transparent 1px 30px),
    repeating-linear-gradient(90deg,rgba(13,13,13,.07) 0 1px,transparent 1px 30px),
    var(--cream);
  box-shadow:var(--shadow);
  opacity:.72;
  transform:rotate(-2.4deg);
  pointer-events:none;
}
.page-hero .hero-meta{
  position:relative;
  z-index:2;
  display:flex!important;
  max-width:1240px;
  align-items:center;
  justify-content:space-between;
  gap:12px 24px!important;
}
.page-hero .hero-meta::before,
.page-hero:not(:has(.hero-meta))::after{display:none!important;content:none!important}
.page-hero .hero-meta span:first-child{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  min-height:38px;
  align-items:center;
  padding:8px 11px;
  border:1px solid var(--ink);
  border-radius:8px;
  background:var(--acid);
  color:var(--ink)!important;
  font-weight:850;
  letter-spacing:.08em;
  line-height:1.35;
  box-shadow:4px 4px 0 var(--ink);
}
.page-hero .hero-meta span:last-child{
  max-width:44ch;
  color:#49443e!important;
  font-weight:750;
  text-align:right;
}
.hero-title{
  position:relative;
  z-index:2;
  max-width:1060px!important;
  margin:58px 0 38px!important;
  overflow-wrap:anywhere;
  color:var(--ink)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-size:clamp(54px,8vw,122px)!important;
  font-weight:820!important;
  letter-spacing:-.072em!important;
  line-height:.86!important;
  text-wrap:balance;
}
.hero-title em,
.section-title em,
.cta-title em{
  color:var(--ember-dark)!important;
  font-family:'Fraunces',Georgia,serif!important;
  font-style:italic!important;
  font-weight:460!important;
  text-decoration:underline;
  text-decoration-color:var(--acid);
  text-decoration-thickness:.08em;
  text-underline-offset:.08em;
}
.hero-bottom{
  position:relative;
  z-index:2;
  display:grid!important;
  grid-template-columns:.55fr minmax(280px,1.2fr) minmax(260px,.8fr)!important;
  gap:26px!important;
  align-items:end;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.hero-copy{
  max-width:680px!important;
  color:#35312c!important;
  font-size:clamp(17px,1.5vw,20px)!important;
  font-weight:520!important;
  line-height:1.52!important;
}
.hero-actions,.cta-actions{display:flex;gap:10px!important;justify-content:flex-end;flex-wrap:wrap}
.page-hero > :where(.ai-image,.ui-shot--hero){
  position:relative;
  z-index:2;
  border-radius:18px!important;
}

/* Buttons and links */
.btn{
  display:inline-flex;
  min-height:48px!important;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 20px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  font-family:'JetBrains Mono',monospace!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.075em!important;
  line-height:1.25!important;
  text-align:center;
  text-decoration:none!important;
  text-transform:uppercase;
  box-shadow:none;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.btn-primary{
  border-color:var(--ember)!important;
  background:var(--ember)!important;
  color:var(--ink)!important;
  box-shadow:0 10px 24px rgba(255,77,0,.22)!important;
}
.btn-primary:hover{background:var(--acid)!important;border-color:var(--ink)!important;color:var(--ink)!important;transform:translateY(-2px)}
.btn-ghost{
  border-color:var(--ink)!important;
  background:var(--cream)!important;
  color:var(--ink)!important;
}
.btn-ghost:hover{background:var(--acid)!important;transform:translateY(-2px)}
button,.btn,.nav-cta,.nav-links a,.ucc-sticky-action,.ucc-sticky-close{touch-action:manipulation}

/* Sections and typography */
section{
  position:relative;
  padding-block:clamp(76px,8vw,118px)!important;
}
.section-meta{
  display:flex!important;
  align-items:center;
  gap:10px!important;
  margin-bottom:30px!important;
  color:var(--muted)!important;
  font-weight:780!important;
}
.section-meta::before{
  content:'';
  width:32px!important;
  height:5px!important;
  flex:0 0 auto;
  border-radius:99px;
  background:var(--ember)!important;
}
.section-meta::after{
  content:'';
  width:26px;
  height:9px;
  flex:0 0 auto;
  border-bottom:3px solid var(--lilac);
  border-radius:50%;
  transform:rotate(-8deg);
}
.section-title{
  max-width:1120px!important;
  margin-bottom:clamp(38px,5vw,60px)!important;
  color:var(--ink)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-size:clamp(42px,6vw,90px)!important;
  font-weight:800!important;
  letter-spacing:-.066em!important;
  line-height:.91!important;
  text-wrap:balance;
}
.lead{color:var(--ink-soft)!important;font-weight:630!important}
.body-copy,.section-intro{color:#49443e!important;line-height:1.68!important}
.split{gap:clamp(32px,5vw,64px)!important}

/* Cards and repeatable UI */
.cards,.service-grid,.church-grid,.package-grid,.grant-grid,.av-grid,.blog-grid{
  gap:16px!important;
}
:where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.contact-panel,.pricing-standard,.pricing-standard-item,.grant-panel,.ad-panel,.story-box,.guarantee-box,.soft-panel,.blog-card,.service-panel,.agenda-day){
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  background:var(--cream)!important;
  color:var(--ink)!important;
  box-shadow:var(--surface-shadow)!important;
}
:where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.blog-card,.agenda-day){
  padding:clamp(24px,3vw,32px)!important;
}
:where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day).dark,
:where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day).featured{
  border-color:rgba(155,48,0,.36)!important;
  background:var(--cream)!important;
  color:var(--ink)!important;
  box-shadow:inset 0 5px 0 var(--ember),var(--surface-shadow)!important;
}
:where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day) :where(h2,h3,h4,strong){
  color:var(--ink)!important;
}
:where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day) :where(p,li){
  color:#49443e!important;
}
:where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day) :where(.eyebrow,small,.fine-print){
  color:var(--muted)!important;
}
:where(.cards,.service-grid,.church-grid,.package-grid,.grant-grid,.av-grid)>*:nth-child(3n+1){
  box-shadow:inset 0 5px 0 var(--acid),var(--surface-shadow)!important;
}
:where(.cards,.service-grid,.church-grid,.package-grid,.grant-grid,.av-grid)>*:nth-child(3n+2){
  box-shadow:inset 0 5px 0 var(--lilac),var(--surface-shadow)!important;
}
:where(.cards,.service-grid,.church-grid,.package-grid,.grant-grid,.av-grid)>*:nth-child(3n){
  box-shadow:inset 0 5px 0 var(--ember),var(--surface-shadow)!important;
}
.card h3,.service-card h3,.church-card h3,.package-card h3,.agenda-day h3{
  color:var(--ink)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-weight:790!important;
  letter-spacing:-.045em!important;
  line-height:1!important;
}
.card li,.service-card li,.package-card li{
  padding-block:10px!important;
  border-color:var(--line)!important;
}
.client-quote{
  color:var(--ink)!important;
  font-size:clamp(25px,3.2vw,43px)!important;
  line-height:1.08!important;
}
.quote-credit{color:var(--muted)!important;font-size:11px!important;line-height:1.45!important}

/* Dark feature bands are deliberate, internally consistent anchors. */
.feature-band{
  margin-inline:18px!important;
  padding-inline:clamp(24px,5vw,70px)!important;
  border:1px solid var(--line-dark)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 90% 10%,rgba(183,139,255,.2),transparent 28rem),
    radial-gradient(circle at 10% 100%,rgba(198,255,0,.1),transparent 24rem),
    var(--ink)!important;
  color:var(--paper)!important;
  box-shadow:0 24px 70px rgba(13,13,13,.2)!important;
}
.feature-band .section-meta,
.feature-band .eyebrow{color:rgba(247,244,238,.82)!important}
.feature-band .section-title,
.feature-band .lead,
.feature-band .body-copy,
.feature-band .section-intro{color:var(--paper)!important}
.feature-band .section-title em{color:var(--ember-soft)!important;text-decoration-color:var(--acid)!important}
.feature-band :where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day){
  border-color:rgba(247,244,238,.22)!important;
  background:rgba(255,255,255,.065)!important;
  color:var(--paper)!important;
  box-shadow:inset 0 4px 0 var(--lilac)!important;
}
.feature-band :where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day) :where(h2,h3,h4,strong){
  color:var(--paper)!important;
}
.feature-band :where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day) :where(p,li){
  color:rgba(247,244,238,.86)!important;
}
.feature-band :where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.agenda-day) .eyebrow{
  color:var(--acid)!important;
}
.feature-band .contact-panel,
.feature-band .pricing-standard,
.feature-band .grant-panel,
.feature-band .ad-panel:not(.dark){
  background:var(--cream)!important;
  color:var(--ink)!important;
}
.feature-band .service-row{
  grid-template-columns:58px 1fr 1.35fr 150px!important;
  gap:24px!important;
  padding-block:28px!important;
}
.feature-band .service-row h3{
  color:var(--paper)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-weight:780!important;
  letter-spacing:-.045em!important;
}
.feature-band .service-row p{color:rgba(247,244,238,.84)!important}
.feature-band .price,
.feature-band .num{color:rgba(247,244,238,.74)!important}
.feature-band .price strong{
  color:var(--acid)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-style:normal!important;
  font-weight:820!important;
}

/* Forms */
.fake-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px!important;
}
.fake-form label,
.contact-panel label{
  display:block;
  color:#2f2b27!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:750!important;
  letter-spacing:0!important;
  line-height:1.4!important;
  text-transform:none!important;
}
.fake-form :where(input,select,textarea),
.contact-panel :where(input,select,textarea){
  width:100%;
  min-height:50px;
  margin-top:8px;
  padding:13px 14px!important;
  border:1px solid #766e65!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font:500 16px/1.45 'Inter Tight',Arial,sans-serif!important;
}
.fake-form textarea,.contact-panel textarea{min-height:148px;resize:vertical}
.fake-form select,.contact-panel select{cursor:pointer}
.fake-form ::placeholder,.contact-panel ::placeholder{color:#6a625a!important;opacity:1}
.fake-form :where(input,select,textarea):hover,
.contact-panel :where(input,select,textarea):hover{border-color:var(--ink)!important}
.fake-form :where(input,select,textarea):user-invalid,
.contact-panel :where(input,select,textarea):user-invalid{
  border-color:#b42318!important;
  box-shadow:0 0 0 3px rgba(180,35,24,.14)!important;
}
.fake-form button[type='submit'],.contact-panel button[type='submit']{
  min-width:min(100%,240px);
}
.span-2{grid-column:1 / -1!important}
input[type='checkbox'],input[type='radio']{min-width:22px;min-height:22px}

/* Media and examples */
.editorial-image,.example-image-card,.mock,.ai-image,.ui-shot{
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  box-shadow:var(--surface-shadow)!important;
}
.editorial-image img,.example-image-card img,.ai-image img{
  filter:saturate(.9) contrast(1.035);
}
.example-image-card{overflow:hidden;background:var(--cream)!important}
.example-image-copy{background:var(--cream)!important;color:var(--ink)!important}
.example-image-card:nth-child(2){transform:none!important}
.editorial-caption{padding-right:12px}
.editorial-caption strong{color:var(--paper)!important;text-wrap:balance}

/* Church and specialty components */
.church-leader-brief{
  margin:0 18px;
  border:1px solid var(--line);
  border-radius:22px;
  background:var(--acid);
  color:var(--ink);
}
.church-leader-brief-inner{max-width:1200px;margin:auto;padding:clamp(30px,5vw,58px)}
.church-leader-brief h2,
.service-panel h2,
.benefit-copy h3{
  color:var(--ink)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-weight:800!important;
  letter-spacing:-.055em!important;
  line-height:.96!important;
}
.church-leader-brief-copy,.benefit-copy p,.service-panel p{color:#3f3a34!important}
.church-leader-points{display:flex;flex-wrap:wrap;gap:10px;list-style:none!important}
.church-leader-points li{
  padding:9px 12px;
  border:1px solid var(--ink);
  border-radius:999px;
  background:var(--cream);
  color:var(--ink)!important;
  font-weight:750;
}
.benefit-media-row{gap:clamp(26px,5vw,70px)!important}
.price-number,.price-large,.price-tag{
  color:var(--ember-dark)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-weight:800!important;
  letter-spacing:-.05em!important;
}
.money-back-guarantee,
.money-back-guarantee *{text-shadow:none!important}

/* Footer */
footer{
  margin:18px!important;
  padding:64px 34px 28px!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 78% 16%,rgba(255,77,0,.18),transparent 28rem),
    var(--ink)!important;
  color:var(--paper)!important;
  overflow:hidden;
}
footer .logo{color:var(--paper)!important}
footer .logo::before{background-color:var(--paper)}
footer .logo sup{color:var(--ember-soft)!important}
footer .footer-grid{gap:clamp(30px,4vw,54px)!important}
footer .footer-heading{
  margin-bottom:16px!important;
  color:rgba(247,244,238,.8)!important;
  font-family:'JetBrains Mono',monospace!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  line-height:1.4!important;
  text-transform:uppercase!important;
}
footer a{color:var(--paper)!important}
footer .footer-col a{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  text-decoration:underline;
  text-decoration-color:rgba(247,244,238,.38);
  text-underline-offset:4px;
}
footer .footer-col a:hover{text-decoration-color:var(--acid);text-decoration-thickness:2px}
footer .footer-tagline{color:rgba(247,244,238,.86)!important}
footer .mega-mark{
  color:var(--paper)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-style:normal!important;
  font-weight:850!important;
  letter-spacing:-.08em!important;
  text-transform:lowercase;
}
footer .mega-mark span{color:var(--acid)!important}
footer .footer-bottom{color:rgba(247,244,238,.76)!important}

/* Sticky CTA */
.sticky-cta,.sticky-bottom-cta{display:none!important}
.ucc-sticky-cta{
  border:1px solid var(--line-dark)!important;
  border-radius:16px!important;
  background:rgba(13,13,13,.97)!important;
  color:var(--paper)!important;
}
.ucc-sticky-copy strong{
  color:var(--paper)!important;
  font-family:'Inter Tight',Arial,sans-serif!important;
  font-weight:780!important;
  letter-spacing:-.035em!important;
}
.ucc-sticky-copy span{color:rgba(247,244,238,.82)!important}
.ucc-sticky-action{
  min-height:46px!important;
  border-color:var(--ember)!important;
  border-radius:10px!important;
  background:var(--ember)!important;
  color:var(--ink)!important;
  font-weight:850!important;
  box-shadow:none!important;
}
.ucc-sticky-action:hover{border-color:var(--acid)!important;background:var(--acid)!important;color:var(--ink)!important}
.ucc-sticky-close{
  min-width:44px!important;
  min-height:44px!important;
  color:var(--paper)!important;
}

/* Content is never hidden when animation JavaScript is unavailable. */
.reveal-on-scroll{
  opacity:1!important;
  transform:none!important;
  transition:none!important;
}

/* Focus, contrast, and user preference support */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--focus)!important;
  outline-offset:4px!important;
  box-shadow:0 0 0 2px var(--cream)!important;
}
.feature-band :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
footer :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
.ucc-sticky-cta :where(a,button):focus-visible{
  outline-color:var(--acid)!important;
  box-shadow:0 0 0 2px var(--ink)!important;
}

@media(hover:hover){
  :where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.blog-card):has(a){
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
  }
  :where(.card,.service-card,.church-card,.package-card,.grant-card,.av-card,.blog-card):has(a):hover{
    transform:translateY(-4px);
    border-color:var(--line-strong)!important;
    box-shadow:7px 9px 0 rgba(13,13,13,.11)!important;
  }
}

@media(max-width:1100px){
  .logo{min-width:158px}
  .nav-links a{padding-inline:8px;font-size:12px!important}
  .hero-bottom{grid-template-columns:1fr 1.35fr!important}
  .hero-bottom>.eyebrow{display:none}
  .hero-actions{justify-content:flex-start!important}
  .page-hero::before{right:-16vw;opacity:.55}
}

@media(max-width:980px){
  html{scroll-padding-top:92px}
  .site-nav{
    inset:10px!important;
    width:calc(100% - 20px)!important;
    padding:8px 9px!important;
  }
  .site-nav .logo{margin-right:auto}
  .menu-toggle{display:inline-flex!important;align-items:center;justify-content:center}
  .site-nav .nav-links{
    position:absolute!important;
    top:calc(100% + 8px)!important;
    left:0!important;
    right:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    padding:10px!important;
    border:1px solid var(--line)!important;
    border-radius:16px!important;
    background:var(--paper)!important;
    color:var(--ink)!important;
    box-shadow:var(--shadow)!important;
  }
  .site-nav .nav-links[hidden]{display:none!important}
  .site-nav .nav-links a{width:100%;justify-content:flex-start;padding:13px 14px!important}
  .page-hero{padding-top:124px!important}
  .page-hero::before{top:31%;right:-24vw;width:68vw;height:54vw;opacity:.36}
  .hero-title{font-size:clamp(50px,11vw,88px)!important}
  .feature-band .service-row{grid-template-columns:45px 1fr!important}
  .feature-band .service-row p,.feature-band .price{grid-column:2!important;text-align:left!important}
  .editorial-split,.benefit-media-row,.benefit-media-row.reverse{grid-template-columns:1fr!important}
  .benefit-media-row.reverse .benefit-copy{order:0!important}
}

@media(max-width:720px){
  html{scroll-padding-top:82px}
  .site-nav .logo{min-width:0;font-size:18px!important;padding-left:47px!important}
  .site-nav .logo sup{left:48px!important}
  .nav-cta{display:none!important}
  .page-hero{
    min-height:auto!important;
    padding:112px 18px 54px!important;
  }
  .page-hero::before{
    top:38%;
    right:-46vw;
    width:94vw;
    height:74vw;
    min-width:330px;
    min-height:290px;
    opacity:.2;
  }
  .page-hero .hero-meta{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .page-hero .hero-meta span:first-child{
    width:100%;
    min-height:36px;
    box-shadow:3px 3px 0 var(--ink);
    font-size:9px;
    white-space:normal;
  }
  .page-hero .hero-meta span:last-child{
    display:block!important;
    max-width:none;
    font-size:10px;
    text-align:left;
  }
  .hero-title{
    margin:38px 0 28px!important;
    font-size:clamp(43px,13.4vw,68px)!important;
    letter-spacing:-.07em!important;
    line-height:.89!important;
  }
  .hero-bottom{grid-template-columns:1fr!important;gap:18px!important;padding-top:18px}
  .hero-copy{font-size:17px!important}
  .hero-actions,.cta-actions{display:grid!important;grid-template-columns:1fr!important;width:100%}
  .hero-actions .btn,.cta-actions .btn{width:100%!important}
  section{padding:72px 18px!important}
  .section-title{font-size:clamp(39px,11.8vw,62px)!important;line-height:.94!important}
  .split,.cards,.service-grid,.church-grid,.package-grid,.grant-grid,.av-grid,.blog-grid,.step-grid{
    grid-template-columns:1fr!important;
  }
  .fake-form{grid-template-columns:1fr!important}
  .span-2{grid-column:1!important}
  .feature-band{margin-inline:8px!important;padding-inline:18px!important;border-radius:18px!important}
  .feature-band .service-row{grid-template-columns:36px 1fr!important;gap:12px!important}
  .church-leader-brief{margin-inline:8px}
  footer{margin:8px!important;padding:52px 20px 24px!important;border-radius:18px!important}
  .footer-grid{grid-template-columns:1fr 1fr!important;gap:34px 22px!important}
  .footer-grid>div:first-child{grid-column:1 / -1}
  .footer-bottom{flex-direction:column!important}
  .ucc-sticky-copy span{display:none!important}
}

@media(max-width:480px){
  .site-nav{gap:6px!important}
  .site-nav .logo{font-size:17px!important}
  .footer-grid{grid-template-columns:1fr!important}
  .footer-grid>div:first-child{grid-column:auto}
  .ucc-sticky-cta{border-radius:14px!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
  }
}

@media(prefers-contrast:more){
  :root{--line:rgba(13,13,13,.42);--line-strong:rgba(13,13,13,.72)}
  .btn,.nav-cta,.menu-toggle,.site-nav{border-width:2px!important}
  .muted,.eyebrow,.section-meta,small{color:#35312c!important}
}

@media(forced-colors:active){
  .logo::before,.page-hero::before,.section-meta::after{display:none!important}
  .site-nav,.card,.service-card,.feature-band,.contact-panel,footer,.btn{forced-color-adjust:auto}
  .btn,.nav-cta,.menu-toggle{border:2px solid ButtonText!important}
}
