/* Pow Wow: palette, layout, content, responsive and accessibility styles. */
@font-face {
  font-family:Anton;
  src:url('../vendor/fonts/files/1Ptgg87LROyAm0Kx8iggSg.woff2') format('woff2');
  font-display:swap;
  font-weight:400
}
@font-face {
  font-family:Karla;
  src:url('../vendor/fonts/files/qkB9XvYC6trAT55ZBi1ueQVIjQTD-JrIH2G7nytkHRyQ8p4wYjWwaUEq.woff2') format('woff2');
  font-display:swap;
  font-weight:400 700
}
:root {
  --pw-ink:#152c3e;
  --pw-blue:#2046ba;
  --pw-yellow:#ffdb46;
  --pw-paper:#fffdf6;
  --pw-line:#d8dfda;
  --pw-muted:#52616c;
  --pw-font:Karla,Arial,sans-serif;
  --bs-body-font-family:var(--pw-font);
  --bs-body-color:var(--pw-ink);
  --bs-primary:#2046ba;
  --bs-link-color:#2046ba;
  --bs-border-radius:.3rem
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:24px
}
body.site-pw {
  margin:0;
  background:var(--pw-paper);
  color:var(--pw-ink);
  font-family:var(--pw-font);
  font-size:17px;
  line-height:1.55
}
a {
  color:inherit
}
img {
  max-width:100%;
  height:auto
}
/* Leaflet tiles use fixed px sizes; theme img rules break map layout. */
.leaflet-container img,
.leaflet-pane img,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile {
  max-width:none;
  max-height:none
}
button,input,select,textarea {
  font:inherit
}
a,button {
  touch-action:manipulation
}
:focus-visible {
  outline:3px solid #b64611;
  outline-offset:5px
}
main:focus {
  outline:none
}
h1,h2,h3,p {
  margin-top:0
}
h1,h2,h3 {
  text-wrap:balance
}
h1,h2,.pw-wordmark,.pw-footer-wordmark,.pw-experience h3 {
  font-family:Anton,'Arial Narrow',Impact,sans-serif;
  font-weight:400
}
h2 {
  font-size:clamp(2rem,3.4vw,3rem);
  line-height:1.12;
  letter-spacing:.005em
}
a:hover {
  color:var(--pw-blue)
}
.pw-wrap {
  width:min(1240px,calc(100% - 96px));
  margin-inline:auto
}
.pw-skip {
  position:fixed;
  z-index:1000;
  left:1rem;
  top:-100px;
  padding:12px 20px;
  background:white;
  color:var(--pw-blue)
}
.pw-skip:focus {
  top:12px
}
.pw-topbar {
  background:var(--pw-blue);
  color:white;
  font-size:11px;
  font-weight:700;
  letter-spacing:1.25px
}
.pw-topbar .pw-wrap {
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding-block:10px
}
.pw-topbar a {
  text-decoration:none;
  color:white;
  letter-spacing:.4px
}
.pw-topbar a span {
  margin-left:12px
}
.pw-header {
  background:var(--pw-paper);
  border-bottom:1px solid #e6e7dc
}
.pw-nav {
  padding-block:22px;
  gap:30px
}
.pw-brand {
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  flex-shrink:0
}
.pw-brand img {
  width:62.4px;
  height:62.4px;
  flex-shrink:0
}
.pw-wordmark {
  font-size:31px;
  line-height:1;
  letter-spacing:-.7px
}
.pw-wordmark>span {
  display:block;
  font:700 8px/1.6 var(--pw-font);
  letter-spacing:1.15px;
  margin-top:7px
}
.pw-nav .navbar-collapse {
  gap:30px
}
.pw-nav .navbar-nav {
  gap:15px;
  align-items:center
}
.pw-nav .nav-link {
  color:var(--pw-ink);
  font-size:14px;
  font-weight:700;
  white-space:nowrap
}
.pw-nav .nav-link:hover {
  color:var(--pw-blue)
}
.pw-nav .dropdown-menu {
  font-size:15px;
  border:1px solid var(--pw-line);
  box-shadow:0 12px 25px #152c3e12
}
.pw-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  min-height:54px;
  padding:15px 23px;
  background:var(--pw-blue);
  border:1.5px solid var(--pw-blue);
  border-radius:4px;
  color:white;
  font-weight:700;
  font-size:15px;
  text-decoration:none;
  transition:background .18s,transform .18s
}
.pw-button:hover {
  background:#153493;
  border-color:#153493;
  color:white;
  transform:translateY(-2px)
}
.pw-button span {
  font-size:20px;
  line-height:1
}
.pw-button--small {
  min-height:44px;
  padding:10px 17px;
  gap:20px;
  font-size:14px
}
.pw-button--outline {
  background:transparent;
  color:var(--pw-blue)
}
.pw-button--yellow {
  background:var(--pw-yellow);
  border-color:var(--pw-yellow);
  color:var(--pw-ink)
}
.pw-button--yellow:hover {
  background:#ffe676;
  border-color:#ffe676;
  color:var(--pw-ink)
}
.pw-text-link {
  display:inline-flex;
  align-items:center;
  gap:20px;
  font-size:15px;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid currentColor;
  padding-block:5px
}
.pw-eyebrow {
  font:700 11px/1.5 var(--pw-font);
  letter-spacing:1.6px;
  margin-bottom:20px
}
.pw-spark {
  font-size:24px;
  vertical-align:middle;
  margin-right:8px;
  color:var(--pw-blue)
}
.pw-hero {
  position:relative;
  overflow:hidden;
  background:#fff8d9
}
.pw-hero-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:20px;
  min-height:650px
}
.pw-hero-copy {
  position:relative;
  z-index:2;
  padding:55px 0
}
.pw-hero h1 {
  font-size:clamp(3.6rem,5.35vw,5.1rem);
  line-height:1.04;
  letter-spacing:-.02em;
  margin-bottom:25px
}
.pw-hero h1>span {
  color:var(--pw-blue)
}
.pw-lede {
  max-width:440px;
  color:#40545f;
  font-size:17px;
  line-height:1.7;
  margin-bottom:25px
}
.pw-actions {
  display:flex;
  align-items:center;
  gap:25px;
  flex-wrap:wrap
}
.pw-hero-note {
  font-size:12px;
  margin:22px 0 0;
  color:var(--pw-muted)
}
.pw-hero-art {
  position:relative;
  align-self:stretch;
  display:flex;
  align-items:center;
  isolation:isolate
}
.pw-hero-art>img {
  width:115%;
  max-width:none;
  transform:translateX(-4%)
}
.pw-camp-stamp {
  position:absolute;
  top:49px;
  right:6px;
  width:130px;
  height:130px;
  background:var(--pw-yellow);
  border:2px solid var(--pw-ink);
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  transform:rotate(12deg);
  box-shadow:4px 5px 0 #152c3e
}
.pw-camp-stamp span {
  font-size:8px;
  font-weight:700;
  letter-spacing:1px
}
.pw-camp-stamp strong {
  font-family:Anton,sans-serif;
  font-weight:400;
  font-size:26px;
  line-height:1.05;
  text-align:center;
  margin:7px 0
}
.pw-event-strip {
  background:var(--pw-yellow);
  border-top:1px solid #e0bd33;
  border-bottom:1px solid #e0bd33
}
.pw-event-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  padding-block:23px
}
.pw-event-grid>a {
  display:flex;
  align-items:center;
  gap:18px;
  padding:0 28px;
  border-right:1px solid #152c3e33;
  text-decoration:none
}
.pw-event-grid>a:first-child {
  padding-left:0
}
.pw-event-grid>a:last-child {
  border:0;
  padding-right:0
}
.pw-event-grid>a>span:last-child {
  margin-left:auto;
  font-size:24px
}
.pw-strip-number {
  font-family:Anton,sans-serif;
  font-size:28px;
  color:#786400
}
.pw-event-grid small {
  display:block;
  font-size:9px;
  letter-spacing:1.15px;
  font-weight:700;
  margin-bottom:3px
}
.pw-event-grid strong {
  font-size:17px
}
.pw-content-layout--sidebar {
  display:grid;
  grid-template-columns:minmax(0,1fr) 290px;
  gap:40px
}
.pw-main-content {
  min-width:0
}
.pw-section {
  padding-block:76px
}
.pw-intro {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center
}
.pw-section-heading h2 {
  margin-bottom:0
}
.pw-section-heading h2 span {
  color:var(--pw-blue)
}
.pw-intro-copy p {
  font-size:18px;
  line-height:1.7;
  margin-bottom:17px;
  max-width:520px
}
.pw-experiences {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px
}
.pw-experience {
  display:block;
  border-radius:7px;
  text-decoration:none;
  overflow:hidden;
  transition:transform .18s;
  color:var(--pw-ink)
}
.pw-experience:hover {
  transform:translateY(-5px);
  color:var(--pw-ink)
}
.pw-experience--adventure {
  background:#e2ecdc
}
.pw-experience--faith {
  background:#e1eafb
}
.pw-experience--friends {
  background:#ffe1c9
}
.pw-experience-top {
  display:flex;
  justify-content:space-between;
  padding:24px 25px 0;
  font-size:10px;
  font-weight:700;
  letter-spacing:1px
}
.pw-experience-top>span {
  font-size:20px;
  line-height:1
}
.pw-experience img {
  width:100%;
  display:block
}
.pw-experience>div {
  padding:5px 28px 28px
}
.pw-experience h3 {
  font-size:30px;
  line-height:1.15;
  margin-bottom:13px
}
.pw-experience p {
  font-size:15px;
  max-width:280px;
  margin:0
}
.pw-plan {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:80px
}
.pw-plan-intro>p:not(.pw-eyebrow) {
  color:var(--pw-muted);
  margin:20px 0 25px;
  font-size:16px
}
.pw-plan-links {
  align-self:center
}
.pw-plan-links>a {
  display:flex;
  gap:23px;
  align-items:center;
  padding:25px 0;
  border-top:1px solid var(--pw-line);
  text-decoration:none
}
.pw-plan-links>a:last-child {
  border-bottom:1px solid var(--pw-line)
}
.pw-plan-links>a>span:last-child {
  margin-left:auto;
  font-size:24px
}
.pw-plan-num {
  font-family:Anton,sans-serif;
  font-size:21px;
  color:var(--pw-blue)
}
.pw-plan-links strong {
  display:block;
  font-size:20px;
  line-height:1.3
}
.pw-plan-links small {
  display:block;
  color:var(--pw-muted);
  font-size:14px;
  margin-top:6px
}
.pw-updates-heading {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;
  margin-bottom:32px
}
.pw-updates-heading h2 {
  margin:0
}
.pw-updates-heading>p {
  margin:0;
  color:var(--pw-muted);
  font-size:15px
}
.site-item-list {
  display:grid;
  gap:22px
}
.site-item-list--grid {
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.pw-note,.site-item-summary {
  border:1px solid var(--pw-line);
  border-radius:6px;
  padding:28px;
  background:#fff
}
.pw-note {
  display:flex;
  flex-direction:column;
  align-items:flex-start
}
.pw-note-tag {
  font-size:9px;
  font-weight:700;
  letter-spacing:1px;
  padding:5px 9px;
  background:#edf1df;
  color:#365429;
  border-radius:3px;
  margin-bottom:25px
}
.pw-note:nth-child(2) .pw-note-tag {
  background:#edf1ff;
  color:var(--pw-blue)
}
.pw-note:nth-child(3) .pw-note-tag {
  background:#fff1d6;
  color:#7b4b05
}
.pw-note h3,.site-item-summary__title {
  font-family:var(--pw-font);
  font-size:24px;
  font-weight:700;
  line-height:1.2;
  margin-bottom:15px
}
.pw-note h3 a,.site-item-summary__title a {
  text-decoration:none
}
.pw-note p,.site-item-summary__intro {
  font-size:15px;
  color:var(--pw-muted);
  line-height:1.65
}
.pw-note .pw-text-link {
  margin-top:auto;
  padding-top:12px;
  font-size:14px
}
.site-item-summary__meta {
  font-size:12px;
  color:var(--pw-muted);
  margin-bottom:15px
}
.site-item-summary img {
  border-radius:4px
}
.pw-featured {
  border-bottom:1px solid var(--pw-line);
  padding-bottom:50px
}
.pw-featured .site-item-list {
  margin-top:25px
}
.pw-featured h2 a {
  text-decoration:none
}
.pw-categories {
  padding-bottom:65px
}
.pw-categories ul {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  list-style:none;
  padding:0
}
.pw-categories a {
  display:block;
  border:1px solid var(--pw-line);
  border-radius:30px;
  padding:9px 18px;
  text-decoration:none;
  font-size:14px
}
.pw-rally {
  background:var(--pw-blue);
  color:white;
  position:relative;
  overflow:hidden
}
.pw-rally-inner {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:35px;
  padding-block:60px
}
.pw-rally .pw-eyebrow {
  color:var(--pw-yellow)
}
.pw-rally h2 {
  font-size:clamp(2rem,3.2vw,2.8rem);
  margin:0
}
.pw-rally-secondary {
  display:block;
  color:white;
  font-size:13px;
  margin-top:17px;
  text-align:center
}
.pw-rally-secondary:hover {
  color:var(--pw-yellow)
}
.pw-footer {
  background:#f4f4ea;
  padding:60px 0 0
}
.pw-footer-grid {
  display:grid;
  grid-template-columns:1.7fr 1fr 1fr 1fr;
  gap:40px;
  padding-bottom:45px
}
.pw-footer-wordmark {
  display:inline-block;
  font-size:44px;
  line-height:1;
  text-decoration:none;
  letter-spacing:-1px;
  margin-bottom:20px
}
.pw-footer-wordmark span {
  font-size:40px;
  color:var(--pw-blue);
  margin-left:15px
}
.pw-footer p {
  font-size:14px;
  line-height:1.7;
  color:var(--pw-muted)
}
.pw-footer h2 {
  font:700 10px/1.5 var(--pw-font);
  letter-spacing:1.3px;
  margin:7px 0 20px
}
.pw-footer .pw-date-list {
  grid-template-columns:1fr
}
.pw-footer-grid>div>a:not(.pw-footer-wordmark) {
  display:block;
  font-size:14px;
  text-decoration:none;
  margin-bottom:10px
}
.pw-footer-bottom {
  display:flex;
  gap:30px;
  border-top:1px solid var(--pw-line);
  padding:20px 0;
  font-size:11px;
  color:var(--pw-muted)
}
.pw-footer-bottom>span {
  margin-right:auto
}
.pw-footer-bottom a {
  text-decoration:none
}
.pw-menu-toggle {
  border:1px solid var(--pw-line);
  padding:8px 12px;
  font-size:14px;
  gap:10px
}
.pw-inner .pw-content-layout {
  padding-block:55px;
  min-height:50vh
}
/* Home uses content/category for Latest News under the plan section. */
.pw-home .pw-content-layout {
  padding-top:48px;
  padding-bottom:96px
}
.pw-page-header {
  margin:0 0 1.25rem;
  padding:0;
  border:0
}
.pw-page-header h1 {
  font-family:Anton,sans-serif;
  font-size:clamp(2.25rem,4.5vw,3.5rem);
  line-height:1.05;
  letter-spacing:.02em;
  text-transform:uppercase;
  margin:0
}
/* Default Cannon pageHeader uses Bootstrap border-bottom; strip it in this theme. */
.pw-main-content>header.border-bottom,
.pw-main-content .site-page>header.border-bottom {
  border-bottom:0 !important;
  padding-bottom:0;
  margin-bottom:1.25rem
}
.pw-inner .pw-main-content>h1,.pw-inner .pw-main-content article h1,.pw-inner .pw-page-header h1 {
  font-size:clamp(2.5rem,5vw,4rem);
  line-height:1.1;
  margin-bottom:25px
}
.pw-home .pw-page-header h1 {
  margin-bottom:0
}
.pw-inner .pw-main-content {
  overflow-wrap:anywhere
}
.pw-main-content table {
  max-width:100%
}
.pw-main-content iframe {
  max-width:100%
}

/* CKEditor wraps tables in <figure class="table"> — neutralize Bootstrap .table chrome.
   Bootstrap targets `.table > :not(caption) > * > *` (cells when class is on <table>,
   but rows when class is on <figure>), which paints the horizontal rules here. */
.pw-main-content figure.table,
.site-content figure.table {
  --bs-table-color:inherit;
  --bs-table-bg:transparent;
  --bs-table-border-color:transparent;
  --bs-table-accent-bg:transparent;
  --bs-table-striped-bg:transparent;
  --bs-table-active-bg:transparent;
  --bs-table-hover-bg:transparent;
  --bs-border-width:0;
  display:block;
  width:auto;
  max-width:100%;
  margin:1.5rem 0;
  padding:1.25rem 1.35rem;
  border:1px solid var(--pw-line);
  border-radius:6px;
  background:#fff;
  box-shadow:none;
  overflow-x:auto;
  caption-side:unset;
  vertical-align:unset;
  border-spacing:0;
  border-collapse:separate
}
.pw-main-content figure.table :is(table,thead,tbody,tfoot,tr,th,td),
.site-content figure.table :is(table,thead,tbody,tfoot,tr,th,td) {
  border:0!important;
  border-width:0!important;
  border-style:none!important;
  border-color:transparent!important;
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  outline:0
}
.pw-main-content figure.table>table,
.site-content figure.table>table,
.pw-main-content figure.table table,
.site-content figure.table table {
  width:auto;
  max-width:100%;
  margin:0!important;
  border-collapse:collapse;
  border-spacing:0
}
.pw-main-content figure.table :is(th,td),
.site-content figure.table :is(th,td) {
  padding:.15rem .9rem .15rem 0;
  vertical-align:middle;
  color:inherit;
  line-height:1.45
}
.pw-main-content figure.table :is(th,td):last-child,
.site-content figure.table :is(th,td):last-child {
  padding-right:0
}
.pw-main-content figure.table figure.table,
.site-content figure.table figure.table {
  display:contents
}
.pw-main-content figure.table figure.table>table,
.site-content figure.table figure.table>table {
  display:contents
}
.pw-main-content figure.table figure.table :is(tbody,tr),
.site-content figure.table figure.table :is(tbody,tr) {
  display:contents
}
.pw-main-content figure.table figure.table td,
.site-content figure.table figure.table td {
  display:block;
  padding:0
}
.pw-main-content figure.table img,
.site-content figure.table img {
  display:block;
  max-width:min(160px,100%);
  height:auto;
  margin:0 0 0 auto
}
.pw-main-content figure.table a,
.site-content figure.table a {
  color:var(--pw-blue);
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:2px
}
.pw-main-content figure.table :is(th,td)>br:first-child,
.site-content figure.table :is(th,td)>br:first-child {
  display:none
}
.pw-sidebar {
  padding-block:40px;
  min-width:0
}
.pw-sidebar h2,.pw-sidebar h3 {
  font-size:24px
}
.pw-breadcrumbs {
  padding-top:20px;
  font-size:13px
}
.pw-space {
  padding-block:25px
}
.pw-space--full {
  width:100%;
  max-width:none;
  margin-inline:0;
  padding-inline:0
}
.pw-custom-hero {
  background:#fff8d9
}
.pw-content-layout--sidebar .site-item-list--grid {
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.pw-content-layout--sidebar .pw-intro,.pw-content-layout--sidebar .pw-plan {
  gap:30px
}
.pw-content-layout--sidebar .pw-experience h3 {
  font-size:23px
}
.pw-content-layout--sidebar .pw-experience>div {
  padding:5px 18px 22px
}
.btn-primary {
  --bs-btn-bg:var(--pw-blue);
  --bs-btn-border-color:var(--pw-blue);
  --bs-btn-hover-bg:#153493;
  --bs-btn-hover-border-color:#153493
}
.form-control:focus,.form-select:focus {
  border-color:var(--pw-blue);
  box-shadow:0 0 0 .2rem #2046ba24
}
.pw-inner .pw-main-content .card {
  border-color:var(--pw-line)
}
@media(min-width:1500px) {
  .pw-hero h1 {
    font-size:82px
  }
  .pw-hero-art>img {
    width:110%
  }
}
@media(max-width:1199px) {
  .pw-wrap {
    width:calc(100% - 64px)
  }
  .pw-nav {
    gap:18px
  }
  .pw-nav .navbar-collapse {
    gap:17px
  }
  .pw-nav .navbar-nav {
    gap:5px
  }
  .pw-nav .nav-link {
    font-size:13px
  }
  .pw-hero-grid {
    min-height:600px
  }
  .pw-hero h1 {
    font-size:65px
  }
  .pw-camp-stamp {
    width:110px;
    height:110px;
    right:0
  }
  .pw-camp-stamp strong {
    font-size:23px
  }
  .pw-camp-stamp span {
    font-size:7px
  }
  .pw-event-grid>a {
    padding-inline:18px;
    gap:12px
  }
  .pw-event-grid strong {
    font-size:15px
  }
  .pw-intro,.pw-plan {
    gap:45px
  }
  .pw-experience h3 {
    font-size:26px
  }
  .pw-experience>div {
    padding-inline:22px
  }
  .pw-footer-grid {
    gap:25px
  }
}
@media(max-width:991px) {
  .pw-nav {
    justify-content:space-between
  }
  .pw-nav .navbar-collapse {
    flex-basis:100%;
    padding-top:20px
  }
  .pw-nav .navbar-nav {
    align-items:stretch;
    margin-bottom:15px;
    gap:3px
  }
  .pw-nav .nav-link {
    padding:10px 0;
    font-size:16px
  }
  .pw-nav .dropdown-menu {
    box-shadow:none
  }
  .pw-menu-toggle {
    display:flex
  }
  .pw-hero-grid {
    min-height:540px
  }
  .pw-hero h1 {
    font-size:56px
  }
  .pw-hero-copy {
    padding-block:40px
  }
  .pw-lede {
    font-size:15px
  }
  .pw-hero-art>img {
    width:125%;
    transform:translateX(-10%)
  }
  .pw-camp-stamp {
    top:50px;
    right:-5px;
    width:100px;
    height:100px
  }
  .pw-camp-stamp strong {
    font-size:21px
  }
  .pw-hero .pw-eyebrow {
    font-size:9px;
    letter-spacing:1px
  }
  .pw-actions {
    gap:12px
  }
  .pw-event-grid {
    padding-block:18px
  }
  .pw-strip-number {
    display:none
  }
  .pw-event-grid small {
    font-size:8px
  }
  .pw-event-grid strong {
    font-size:14px
  }
  .pw-section {
    padding-block:55px
  }
  .pw-intro {
    gap:30px
  }
  .pw-intro-copy p {
    font-size:16px
  }
  .pw-experiences {
    gap:14px
  }
  .pw-experience h3 {
    font-size:23px
  }
  .pw-experience-top {
    font-size:8px;
    padding:20px 18px 0
  }
  .pw-experience>div {
    padding:0 18px 22px
  }
  .pw-experience p {
    font-size:14px
  }
  .pw-plan {
    gap:35px
  }
  .pw-plan-links strong {
    font-size:18px
  }
  .pw-plan-links>a {
    gap:15px
  }
  .site-item-list--grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .pw-note:last-child {
    grid-column:1/-1
  }
  .pw-rally-inner {
    gap:25px
  }
  .pw-rally h2 {
    font-size:31px
  }
  .pw-footer-grid {
    grid-template-columns:1.5fr 1fr 1fr
  }
  .pw-footer-grid>div:last-child {
    grid-column:2/4
  }
  .pw-content-layout--sidebar {
    grid-template-columns:1fr
  }
  .pw-sidebar {
    padding-top:0
  }
  .pw-updates-heading>p {
    font-size:13px
  }
}
@media(max-width:650px) {
  .pw-wrap {
    width:calc(100% - 40px)
  }
  .pw-topbar .pw-wrap {
    justify-content:center;
    padding-block:8px
  }
  .pw-topbar-tagline {
    display:none
  }
  .pw-topbar {
    font-size:10px
  }
  .pw-nav {
    padding-block:16px
  }
  .pw-wordmark {
    font-size:27px
  }
  .pw-wordmark>span {
    font-size:7px
  }
  .pw-brand {
    gap:7px
  }
  .pw-brand img {
    width:52px;
    height:52px
  }
  .pw-hero-grid {
    grid-template-columns:1fr;
    gap:0
  }
  .pw-hero-copy {
    padding:37px 0 0
  }
  .pw-hero .pw-eyebrow {
    font-size:9px;
    letter-spacing:1.2px;
    margin-bottom:18px
  }
  .pw-hero h1 {
    font-size:clamp(48px,12vw,72px);
    margin-bottom:21px
  }
  .pw-hero h1>span br {
    display:none
  }
  .pw-hero h1>span {
    display:block;
    max-width:390px
  }
  .pw-lede {
    max-width:450px;
    font-size:16px
  }
  .pw-actions {
    gap:18px
  }
  .pw-button {
    font-size:14px;
    padding:13px 17px;
    gap:20px;
    min-height:49px
  }
  .pw-hero-note {
    font-size:11px;
    margin-top:17px
  }
  .pw-hero-art {
    height:340px;
    margin-top:4px;
    justify-content:center
  }
  .pw-hero-art>img {
    height:390px;
    width:auto;
    max-width:120%;
    transform:none;
    object-fit:contain
  }
  .pw-camp-stamp {
    top:15px;
    right:4px;
    width:105px;
    height:105px
  }
  .pw-event-grid {
    grid-template-columns:1fr;
    padding-block:5px
  }
  .pw-event-grid>a,.pw-event-grid>a:first-child,.pw-event-grid>a:last-child {
    padding:14px 0;
    border-right:0;
    border-bottom:1px solid #152c3e30;
    gap:15px
  }
  .pw-event-grid>a:last-child {
    border-bottom:0
  }
  .pw-strip-number {
    display:block;
    font-size:23px
  }
  .pw-event-grid small {
    font-size:8px
  }
  .pw-event-grid strong {
    font-size:16px
  }
  .pw-event-grid>a>span:last-child {
    font-size:23px
  }
  .pw-section {
    padding-block:44px
  }
  .pw-intro,.pw-plan {
    grid-template-columns:1fr;
    gap:22px
  }
  .pw-intro h2 {
    font-size:36px
  }
  .pw-intro-copy p {
    font-size:16px
  }
  .pw-experiences {
    grid-template-columns:1fr;
    gap:18px
  }
  .pw-experience {
    display:grid;
    grid-template-columns:44% 56%;
    position:relative;
    padding-top:44px
  }
  .pw-experience-top {
    position:absolute;
    top:0;
    left:0;
    right:0;
    font-size:9px
  }
  .pw-experience img {
    align-self:center;
    height:180px;
    object-fit:contain
  }
  .pw-experience>div {
    padding:15px 20px 25px 5px;
    align-self:center
  }
  .pw-experience h3 {
    font-size:25px
  }
  .pw-experience p {
    font-size:14px
  }
  .pw-plan h2 {
    font-size:36px
  }
  .pw-plan h2 br:nth-child(2) {
    display:none
  }
  .pw-plan-links>a {
    padding-block:22px
  }
  .pw-plan-links strong {
    font-size:18px
  }
  .pw-plan-links small {
    font-size:13px
  }
  .pw-plan-intro>p:not(.pw-eyebrow) {
    margin:18px 0
  }
  .pw-updates-heading {
    display:block;
    margin-bottom:25px
  }
  .pw-updates-heading h2 {
    font-size:34px
  }
  .pw-updates-heading>p {
    margin-top:15px;
    font-size:15px
  }
  .pw-updates-heading>p br {
    display:none
  }
  .site-item-list--grid,.pw-content-layout--sidebar .site-item-list--grid {
    grid-template-columns:1fr
  }
  .pw-note,.site-item-summary {
    padding:25px
  }
  .pw-note-tag {
    margin-bottom:20px
  }
  .pw-note h3 {
    font-size:25px
  }
  .pw-rally-inner {
    display:block;
    padding-block:45px
  }
  .pw-rally h2 {
    font-size:34px;
    margin-bottom:26px
  }
  .pw-rally-secondary {
    text-align:left;
    margin-top:18px
  }
  .pw-footer {
    padding-top:40px
  }
  .pw-footer-grid {
    grid-template-columns:1fr 1fr;
    gap:25px
  }
  .pw-footer-grid>div:first-child {
    grid-column:1/-1
  }
  .pw-footer-grid>div:last-child {
    grid-column:auto
  }
  .pw-footer-wordmark {
    font-size:46px
  }
  .pw-footer-bottom {
    flex-wrap:wrap;
    gap:15px;
    font-size:11px
  }
  .pw-footer-bottom>span {
    flex-basis:100%
  }
  .pw-inner .pw-content-layout {
    padding-block:35px
  }
  .pw-content-layout--sidebar .pw-experience h3 {
    font-size:25px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*::before,*::after {
    transition:none!important;
    animation:none!important
  }
}
@media print {
  .pw-topbar,.pw-header,.pw-footer,.pw-rally,.pw-hero-art,.pw-skip {
    display:none!important
  }
  .pw-wrap {
    width:100%
  }
  .pw-content-layout--sidebar {
    display:block
  }
  body.site-pw {
    background:white;
    color:black
  }
  .pw-section {
    padding-block:20px
  }
  .pw-experiences {
    break-inside:avoid
  }
}
.pw-event-grid--custom {
  display:block
}
.site-item-list--grid:has(>.site-item-summary:only-child) {
  grid-template-columns:1fr
}

/* Harmonize inherited Cannon content cards with this theme. */
:root {
  --site-font: var(--pw-font);
  --site-serif: var(--pw-font);
  --site-fg: var(--pw-ink);
  --site-primary: var(--pw-blue);
}
#pw-main .site-item-summary {
  padding: 28px;
  border: 1px solid var(--pw-line);
}
.site-item-summary__intro {
  font-family: var(--pw-font);
}
@media (min-width: 651px) {
  .site-item-list--grid:has(>.site-item-summary:nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.pw-topbar-countdown {
  letter-spacing:.4px;
}

/* Full-bleed homepage countdown band (block placed in a .pw-space). */
.pw-space:has(.pw-countdown) {
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding:0;
  background:var(--pw-blue);
  color:#fff;
  overflow:hidden
}
.pw-space .pw-countdown {
  justify-content:center;
  gap:1rem 1.35rem;
  flex-wrap:wrap;
  padding:clamp(1.5rem,3.5vw,2.35rem) clamp(1.25rem,4vw,3rem);
  color:#fff;
  text-align:left
}
.pw-space .pw-countdown-number {
  font-family:Anton,'Arial Narrow',Impact,sans-serif;
  font-weight:400;
  font-size:clamp(3.75rem,9vw,6rem);
  line-height:.9;
  letter-spacing:.01em;
  color:var(--pw-yellow)
}
.pw-space .pw-countdown>span {
  font-size:clamp(1.05rem,2.4vw,1.45rem);
  font-weight:700;
  letter-spacing:.04em;
  line-height:1.25;
  max-width:18ch
}
.pw-space .pw-countdown small {
  display:block;
  margin-top:.45rem;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#fff9;
}
@media(max-width:500px) {
  .pw-space .pw-countdown {
    flex-direction:column;
    align-items:flex-start;
    gap:.35rem 0;
    text-align:left
  }
  .pw-space .pw-countdown>span {
    max-width:none
  }
}

/* Content item: Important Dates block */
.site-item-detail .pw-important-dates {
  margin:2rem 0 2.75rem;
  padding:1.75rem 1.5rem 1.85rem;
  background:linear-gradient(180deg,#fff8d9 0%,#fffdf6 55%);
  border:1px solid #e8d48a;
  border-radius:4px
}
.site-item-detail .pw-important-dates .pw-extension-heading {
  font:700 11px/1.5 var(--pw-font);
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:var(--pw-muted);
  margin:0 0 1.35rem
}
.site-item-detail .pw-important-dates .pw-date-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem 1.25rem;
  margin:0
}
.site-item-detail .pw-important-dates .pw-date-list>div {
  display:flex;
  flex-direction:column;
  gap:.55rem;
  min-width:0;
  padding:1.15rem 1.2rem 1.25rem;
  background:#fff;
  border:0;
  border-left:4px solid var(--pw-yellow);
  box-shadow:0 1px 0 #152c3e12
}
.site-item-detail .pw-important-dates .pw-date-list dt {
  font:700 .72rem/1.35 var(--pw-font);
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--pw-blue);
  margin:0
}
.site-item-detail .pw-important-dates .pw-date-list dd {
  margin:0;
  font-family:Anton,'Arial Narrow',Impact,sans-serif;
  font-size:clamp(1.2rem,2.2vw,1.55rem);
  font-weight:400;
  line-height:1.15;
  letter-spacing:.01em;
  color:var(--pw-ink)
}
.site-item-detail .pw-important-dates .pw-date-list time {
  display:block
}
@media(min-width:1100px) {
  .site-item-detail .pw-important-dates .pw-date-list {
    grid-template-columns:repeat(4,minmax(0,1fr))
  }
}
@media(max-width:649px) {
  .site-item-detail .pw-important-dates {
    padding:1.35rem 1rem 1.45rem
  }
  .site-item-detail .pw-important-dates .pw-date-list {
    grid-template-columns:1fr
  }
}

/* Location detail: one title, tighter stack, map + camp info. */
.pw-main-content>article:has(.locations-detail) {
  margin-bottom:0
}
.pw-main-content>article:has(.locations-detail)>header {
  display:none
}
.pw-main-content>article:has(.locations-detail)>.site-content {
  margin:0
}
.pw-main-content .locations-detail-header h1 {
  font-family:Anton,sans-serif;
  font-size:clamp(2rem,4vw,2.85rem);
  line-height:1.05;
  letter-spacing:.02em;
  text-transform:uppercase;
  margin:0 0 .35rem
}
.pw-main-content .locations-detail-address {
  color:var(--pw-muted);
  opacity:1;
  font-size:1.02rem
}
.pw-main-content .locations-detail-layout {
  --bs-gutter-x:1.75rem;
  --bs-gutter-y:1.25rem
}
.pw-main-content .locations-detail-panel {
  padding:1.25rem 1.3rem 1.35rem;
  border:1px solid var(--pw-line);
  border-radius:6px;
  background:#fff
}
.pw-main-content .locations-detail-panel-label {
  font-family:Karla,Arial,sans-serif;
  color:var(--pw-blue);
  opacity:1
}
.pw-main-content .locations-detail-actions a {
  color:var(--pw-blue)
}
.pw-main-content .locations-detail-body>p:first-child {
  font-weight:700;
  font-size:1.05rem;
  margin-bottom:.65rem
}
.pw-main-content .locations-page .locations-map {
  border-color:var(--pw-line);
  box-shadow:0 10px 28px rgba(21,44,62,.06)
}
@media(min-width:992px) {
  .pw-main-content .locations-detail-header {
    margin-bottom:1.5rem
  }
  .pw-main-content .locations-page .locations-map {
    height:480px
  }
}
@media(max-width:991px) {
  .pw-main-content .locations-detail-header h1 {
    font-size:clamp(1.85rem,8vw,2.4rem)
  }
  .pw-main-content .locations-detail-panel {
    padding:1.1rem 1.15rem 1.2rem
  }
}
