/* Way-Ya-Go shared site header + Pete forest side panels (live, v20261011b).
   One file for every page. Class prefix sn- so page stylesheets never collide. */
:root{
  --sn-navy:#1B2A4A;--sn-cream:#FAF7F2;--sn-cream-2:#F3EEE6;--sn-paper:#FFFCF8;
  --sn-line:#E0D9CE;--sn-line-2:#CFC6B8;--sn-gold:#C4A574;--sn-sage-ink:#3B5539;--sn-muted:#3F3F3F;
  --sn-font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --band-w:clamp(140px,18vw,260px);
}
html{scroll-padding-top:var(--sn-offset,96px)}
/* ---------- banner (unused on live) ---------- */
.sn-banner{background:var(--sn-navy);color:var(--sn-cream);font:600 14px/1.45 var(--sn-font);text-align:center;padding:6px 12px;position:relative;z-index:61}
.sn-banner a{color:#F1DDB8;text-decoration:underline;text-underline-offset:2px}
/* ---------- header ---------- */
.sn-header{position:sticky;top:0;z-index:60;background:rgba(255,252,248,.98);border-bottom:1px solid var(--sn-line-2);box-shadow:0 2px 12px rgba(27,42,74,.07);font-family:var(--sn-font)}
.sn-bar{max-width:1280px;margin:0 auto;padding:0 18px;display:flex;align-items:center;gap:12px;min-height:72px}
.sn-logo{display:inline-flex;align-items:center;min-height:48px;font:700 19px/1.2 var(--sn-font);letter-spacing:.02em;color:var(--sn-navy);text-decoration:none;white-space:nowrap}
.sn-logo em{font-style:normal;font-weight:600;color:var(--sn-sage-ink);margin-left:.3em}
.sn-logo:hover{color:var(--sn-navy)}
.sn-nav{margin-left:auto}
.sn-list,.sn-sub,.sn-group ul{list-style:none;margin:0;padding:0}
.sn-list{display:flex;align-items:center;gap:2px}
.sn-item{position:relative;display:flex;align-items:center}
.sn-top{display:inline-flex;align-items:center;min-height:48px;padding:0 7px;border-radius:8px;font:800 20px/1.2 var(--sn-font);color:var(--sn-navy);text-decoration:none;white-space:nowrap}
.sn-top:hover{background:var(--sn-cream-2);color:var(--sn-navy)}
.sn-top[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--sn-gold)}
.sn-header a:focus-visible,.sn-header summary:focus-visible,.sn-burger:focus-visible{outline:3px solid var(--sn-navy);outline-offset:1px}
details.sn-drop>summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;width:40px;min-height:48px;border-radius:8px;cursor:pointer;color:var(--sn-navy);-webkit-tap-highlight-color:transparent}
details.sn-drop>summary::-webkit-details-marker{display:none}
details.sn-drop>summary:hover{background:var(--sn-cream-2)}
.sn-chev-icon{width:10px;height:10px;border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:translateY(-3px) rotate(45deg);transition:transform .15s ease}
details.sn-drop[open]>summary .sn-chev-icon{transform:translateY(3px) rotate(-135deg)}
details.sn-drop[open]>summary{background:var(--sn-cream-2)}
.sn-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:70;min-width:340px;max-width:440px;background:var(--sn-paper);border:1px solid var(--sn-line-2);border-radius:12px;box-shadow:0 18px 44px rgba(27,42,74,.18);padding:8px;max-height:calc(100vh - var(--sn-head-h,76px) - 16px);overflow-y:auto;overscroll-behavior:contain}
.sn-item:nth-child(n+4) .sn-panel{left:auto;right:0}
details.sn-drop:not([open])>.sn-panel{display:none}
.sn-sub a{display:flex;align-items:center;min-height:48px;padding:9px 14px;border-radius:8px;font:700 19px/1.3 var(--sn-font);color:var(--sn-navy);text-decoration:none}
.sn-sub a:hover{background:var(--sn-cream-2);color:var(--sn-navy)}
.sn-sub a[aria-current="page"]{font-weight:700;background:#F5EFE5;box-shadow:inset 4px 0 0 var(--sn-gold)}
.sn-heading{font:700 14px/1.3 var(--sn-font);letter-spacing:.07em;text-transform:uppercase;color:var(--sn-muted);padding:14px 14px 4px;margin-top:6px;border-top:1px solid var(--sn-line)}
.sn-group{margin:4px 0 4px 8px;padding-left:2px;border-left:3px solid var(--sn-line-2)}
.sn-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;margin-left:8px;border-radius:10px;background:var(--sn-navy);color:var(--sn-cream)!important;font:800 18px/1.2 var(--sn-font);text-decoration:none;white-space:nowrap;border:2px solid var(--sn-navy)}
.sn-cta:hover{background:#2A3D5C;border-color:#2A3D5C}
.sn-burger{display:none}
/* ---------- phone / tablet menu (hamburger) ---------- */
@media (max-width:1239px){
  .sn-bar{flex-wrap:wrap;min-height:64px;padding:0 14px}
  .sn-logo{font-size:18px}
  html.sn-js .sn-burger{display:inline-flex;align-items:center;gap:10px;margin-left:auto;min-height:48px;min-width:48px;padding:0 16px;border:2px solid var(--sn-navy);border-radius:10px;background:var(--sn-paper);color:var(--sn-navy);font:700 18px/1 var(--sn-font);cursor:pointer;-webkit-tap-highlight-color:transparent}
  .sn-burger-bars,.sn-burger-bars::before,.sn-burger-bars::after{display:block;width:20px;height:2.5px;border-radius:2px;background:currentColor;transition:transform .15s ease}
  .sn-burger-bars{position:relative}
  .sn-burger-bars::before,.sn-burger-bars::after{content:"";position:absolute;left:0}
  .sn-burger-bars::before{top:-6px}.sn-burger-bars::after{top:6px}
  .sn-open .sn-burger-bars{background:transparent}
  .sn-open .sn-burger-bars::before{transform:translateY(6px) rotate(45deg)}
  .sn-open .sn-burger-bars::after{transform:translateY(-6px) rotate(-45deg)}
  .sn-nav{flex:0 0 calc(100% + 28px);max-width:none;margin:0 -14px}
  html.sn-js .sn-header:not(.sn-open) .sn-nav{display:none}
  html.sn-js .sn-header.sn-open .sn-nav{display:block;max-height:calc(100vh - var(--sn-bar-h,64px));max-height:calc(100dvh - var(--sn-bar-h,64px));overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--sn-line-2)}
  .sn-list{flex-direction:column;align-items:stretch;gap:0;padding:0 0 14px}
  .sn-item{flex-wrap:wrap;align-items:stretch;border-bottom:1px solid var(--sn-line)}
  .sn-top{flex:1 1 auto;min-height:58px;padding:0 70px 0 18px;font-size:20px;border-radius:0;white-space:normal}
  .sn-top[aria-current="page"]{box-shadow:inset 5px 0 0 var(--sn-gold)}
  details.sn-drop{flex-basis:100%}
  details.sn-drop>summary{position:absolute;top:0;right:0;width:62px;min-height:58px;height:58px;border-radius:0;border-left:1px solid var(--sn-line)}
  .sn-chev-icon{width:12px;height:12px;border-width:3px}
  .sn-panel{position:static;min-width:0;max-width:none;max-height:none;overflow:visible;border:0;border-top:1px solid var(--sn-line);border-radius:0;box-shadow:none;background:#F6F1E8;padding:6px 10px 10px 18px}
  .sn-sub a{min-height:54px;font-size:19px;padding:10px 12px}
  .sn-top{font-size:21px}
  .sn-heading{font-size:15px}
  .sn-cta-item{border-bottom:0;padding:14px 18px 0}
  .sn-cta{width:100%;margin:0;min-height:56px;font-size:19px}
}
/* no JavaScript: the full menu stays visible as a plain list on small screens */
@media (max-width:1239px){html:not(.sn-js) .sn-nav{display:block}}
/* ---------- Pete forest side panels (same treatment as the live homepage) ---------- */
.sn-shell{display:grid;grid-template-columns:var(--band-w) minmax(0,1fr) var(--band-w);position:relative}
.sn-band{position:sticky;top:var(--sn-head-h,72px);height:calc(100vh - var(--sn-head-h,72px));overflow:hidden;z-index:5;pointer-events:none}
.sn-band-inner{position:absolute;inset:0;background-size:cover;background-position:center center;background-repeat:no-repeat;background-color:#3a342c}
.sn-band-left .sn-band-inner{background-image:linear-gradient(90deg,rgba(26,26,26,.35) 0%,transparent 45%),linear-gradient(180deg,rgba(250,247,242,.08) 0%,transparent 25%,rgba(20,20,20,.35) 100%),url("/images/side-left-real.jpg")}
.sn-band-right .sn-band-inner{background-image:linear-gradient(270deg,rgba(26,26,26,.35) 0%,transparent 45%),linear-gradient(180deg,rgba(250,247,242,.08) 0%,transparent 22%,rgba(20,20,20,.35) 100%),url("/images/side-right-real.jpg")}
.sn-band-left::after,.sn-band-right::before{content:"";position:absolute;top:0;bottom:0;width:28px;pointer-events:none}
.sn-band-left::after{right:0;background:linear-gradient(90deg,transparent,var(--sn-cream))}
.sn-band-right::before{left:0;background:linear-gradient(270deg,transparent,var(--sn-cream))}
.sn-pete{position:absolute;left:28%;bottom:18%;width:min(42%,110px);z-index:2;opacity:.45;transform:translateY(8px);transition:opacity .7s ease,transform .7s ease;filter:saturate(.85) brightness(.92)}
.sn-pete img{width:100%;height:auto;display:block;border-radius:4px;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 28%,#000 55%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 28%,#000 55%,transparent 100%)}
.sn-trunk{display:none!important;position:absolute;left:38%;bottom:12%;width:14%;height:42%;z-index:3;border-radius:3px;background:linear-gradient(90deg,rgba(61,46,31,.92) 0%,rgba(92,70,50,.95) 45%,rgba(42,31,20,.9) 100%);box-shadow:inset 2px 0 4px rgba(139,115,85,.25)}
body.sn-scrolled .sn-pete{opacity:.68;transform:translateY(0)}
.sn-road{position:relative;z-index:10;min-width:0;overflow-x:clip;background:linear-gradient(180deg,var(--sn-cream) 0%,var(--sn-cream-2) 40%,var(--sn-cream) 100%)}
@media (min-width:768px) and (max-width:1024px){:root{--band-w:clamp(100px,14vw,180px)}}
@media (max-width:767px){
  .sn-shell{display:block}
  .sn-band-left{position:relative;top:auto;height:56px;border-bottom:2px solid var(--sn-navy)}
  .sn-band-left .sn-band-inner{background-position:center 35%}
  .sn-band-left::after{top:auto;bottom:0;left:0;right:0;width:100%;height:20px;background:linear-gradient(180deg,transparent,var(--sn-cream))}
  .sn-band-right,.sn-pete,.sn-trunk{display:none}
}
@media (prefers-reduced-motion:reduce){.sn-pete{transition:none;opacity:.6;transform:none}.sn-chev-icon,.sn-burger-bars,.sn-burger-bars::before,.sn-burger-bars::after{transition:none}}
/* shared footer: same Privacy line on every page */
.sn-footer p:last-child{font-size:15px;line-height:1.5}
.sn-footer a.privacy{display:inline-flex;align-items:center;min-height:48px;font-size:15px;text-decoration:underline;text-underline-offset:2px}

/* Homepage (Darla, Oct 4): keep the full-width section backgrounds + dividers inside the content column, not over the side panels */
.sn-road main>section.block{margin-left:0!important;margin-right:0!important}

/* r2 (Oct 11 2026): big bold menu for older readers; trunk overlay removed; hero photo safety */
:root{--sn-navy:#14213D}
.sn-top,.sn-cta,.sn-sub a{-webkit-font-smoothing:antialiased;letter-spacing:0}
.sn-sub .sn-heading{font-weight:800}
@media (min-width:1240px) and (max-width:1379px){.sn-logo{font-size:18px}.sn-top{padding:0 5px;font-size:19px}.sn-cta{padding:0 14px;margin-left:4px;font-size:17px}}
@media (max-width:1239px){.sn-top{font-weight:800}.sn-sub a{font-weight:700}.sn-burger-text{font-weight:800;font-size:19px}}
.sn-road .page-hero-photo img,.sn-road .hero-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.sn-road .hero{min-height:0}
