.rp-home-body{margin:0;background:#f7f8f3}.rph{--ink:#153e35;--muted:#52665f;--line:#d8e1d9;--paper:#f7f8f3;font:17px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);isolation:isolate}.rph *{box-sizing:border-box}.rph h1,.rph h2,.rph h3,.rph p,.rph figure{margin:0}.rph a{color:inherit;text-underline-offset:5px}.rph a:focus-visible,.rph summary:focus-visible{outline:3px solid #c87607;outline-offset:5px}.rph img{display:block;max-width:100%}.rph h1,.rph h2,.rph h3{font-weight:760;letter-spacing:-.045em;line-height:1.06;text-wrap:balance}.rph h1{font-size:clamp(42px,5.4vw,76px);max-width:720px}.rph h1 em{font-style:normal;color:#187e65}.rph h2{font-size:clamp(32px,3.8vw,51px)}.rph h3{font-size:30px;line-height:1.16}.rph-nav,.rph-hero,.rph-benefits,.rph-section,.rph-footer{max-width:1320px;margin:auto;padding-left:44px;padding-right:44px}.rph-nav{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:102px}.rph-brand{font-size:27px;font-weight:800;letter-spacing:-1px;text-decoration:none;display:inline-flex;align-items:center;gap:10px}.rph-brand span{display:inline-block;width:49px;height:43px;background:var(--ink);mask:var(--rph-logo) center/contain no-repeat;-webkit-mask:var(--rph-logo) center/contain no-repeat}.rph-nav nav{display:flex;gap:28px;font-size:14px;font-weight:650}.rph-nav nav a{text-decoration:none}.rph-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:14px 24px;border:1px solid var(--ink);border-radius:100px;background:var(--ink);color:white!important;text-decoration:none;font-weight:700;font-size:15px;line-height:1.4;transition:background .15s}.rph-button:hover{background:#276b58}.rph-outline{background:transparent;color:var(--ink)!important}.rph-outline:hover{background:#e8eee3}.rph-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;padding-top:42px;padding-bottom:60px;align-items:center}.rph-kicker{font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.15em;margin-bottom:20px!important}.rph-hero-copy>p:not(.rph-kicker){max-width:530px;color:var(--muted);margin-top:26px;font-size:18px}.rph-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}.rph-text-link{font-size:14px;font-weight:700}.rph-micro{font-size:12px!important}.rph-hero-photo{position:relative;overflow:hidden;border-radius:180px 180px 28px 28px;background:#a5cce0;align-self:stretch;min-height:570px}.rph-hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 48%}.rph-hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;color:white;background:linear-gradient(transparent,rgba(10,34,26,.93));padding:80px 24px 22px}.rph-hero-photo figcaption span{display:block;font-size:22px;font-weight:700}.rph-hero-photo figcaption a{font-size:10px}.rph-benefits{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:22px;padding-bottom:22px;font-size:14px;font-weight:650}.rph-benefits span:before{content:'✓';margin-right:12px;color:#197c62}.rph-section{padding-top:92px;padding-bottom:20px;scroll-margin-top:24px}.rph-section-heading{max-width:690px;margin-bottom:36px}.rph-section-heading>p:last-child{color:var(--muted);margin-top:20px}.rph-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.rph-feature{background:white;border:1px solid var(--line);border-radius:24px;padding:32px;overflow:hidden;min-width:0}.rph-feature p{color:var(--muted);font-size:15px;margin-top:17px;line-height:1.7}.rph-number{display:block;font-size:10px;font-weight:750;letter-spacing:.12em;margin:5px 0 24px}.rph-feature-wide{grid-column:span 2;display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center}.rph-feature-wide>img{width:100%;height:265px;object-fit:cover;border-radius:80px 80px 18px 18px}.rph-feature-wide .rph-text-link{display:inline-block;margin-top:24px}.rph-feature-gold{background:#f8d470;border-color:#f8d470}.rph-feature-dark{background:var(--ink);color:white;border-color:var(--ink)}.rph-feature-dark p{color:#d7e4dd}.rph-feature-dark .rph-icon{filter:brightness(0) invert(1)}.rph-feature-soft{background:#e8eee3;grid-column:1/-1}.rph-icon{margin-bottom:24px;object-fit:contain}.rph-small{font-size:12px;line-height:1.7;color:var(--muted)}.rph-credit{margin-top:18px!important}.rph-how{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.rph-how ol{list-style:none;counter-reset:steps;padding:0;margin:0}.rph-how li{counter-increment:steps;position:relative;padding:0 0 26px 58px;margin-bottom:26px;border-bottom:1px solid var(--line)}.rph-how li:before{content:counter(steps);position:absolute;left:0;top:0;border:1px solid #91aba0;border-radius:100%;width:35px;height:35px;text-align:center;line-height:34px;font-weight:700}.rph-how b{display:block;font-size:22px;margin-bottom:6px}.rph-how li span{font-size:15px;color:var(--muted)}.rph-demo{background:#e8eee3;border-radius:24px;padding:30px;margin-top:22px}.rph-demo iframe{display:block;width:100%;height:660px;border:1px solid var(--line);border-radius:14px;background:white;margin-top:24px}.rph-memberships{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:25px}.rph-plan{position:relative;background:white;border:1px solid var(--line);border-radius:24px;padding:38px}.rph-plan:nth-child(2){border:2px solid #1d725c;background:#eef4eb}.rph-plan h3{font-size:29px;margin:12px 0 20px}.rph-price{font-size:24px;font-weight:750;line-height:1.3;margin-bottom:8px!important}.rph-plan ul{padding-left:21px;margin:24px 0;font-size:15px}.rph-plan li{margin-bottom:8px}.rph-plan .rph-button{margin-top:10px}.rph-free{border-top:1px solid var(--line);padding:25px 0;margin-top:35px}.rph-free p{font-size:15px;color:var(--muted);max-width:740px;margin:6px 0 12px}.rph-faq{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;padding-bottom:92px}.rph-faq details{border-bottom:1px solid var(--line);padding:21px 0}.rph-faq summary{cursor:pointer;font-size:17px;font-weight:650}.rph-faq details p{color:var(--muted);font-size:15px;margin-top:15px}.rph-bottom{background:var(--ink);color:white;text-align:center;padding:70px 24px}.rph-bottom h2{font-size:clamp(40px,5vw,65px);margin:12px 0 30px}.rph-yellow{background:#f8d470;border-color:#f8d470;color:#153e35!important}.rph-yellow:hover{background:#ffe496}.rph-footer{padding-top:45px;padding-bottom:45px;display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:14px}.rph-footer>p:nth-child(2){text-align:right}.rph-footer>div{display:flex;gap:22px}.rph-footer>.rph-small{grid-column:1/-1}.rph-skip{position:absolute;top:-100px;left:20px;padding:10px;background:white;z-index:1000}.rph-skip:focus{top:5px}@media(max-width:1000px){.rph-nav nav{display:none}.rph-hero{gap:25px}.rph-hero-photo{min-height:510px}.rph-grid{grid-template-columns:1fr 1fr}.rph-feature-wide{grid-column:span 2}.rph-feature{padding:27px}.rph-benefits{font-size:12px;gap:12px}.rph-benefits span:before{margin-right:5px}}@media(max-width:650px){.rph-nav,.rph-hero,.rph-benefits,.rph-section,.rph-footer{padding-left:22px;padding-right:22px}.rph-nav{min-height:84px;gap:12px}.rph-brand{font-size:23px}.rph-brand span{width:34px}.rph-nav>.rph-button{font-size:12px;padding:10px 15px;min-height:43px}.rph-hero{grid-template-columns:1fr;padding-top:26px;padding-bottom:30px;gap:30px}.rph-hero h1{font-size:46px}.rph-hero-photo{min-height:380px;border-radius:120px 120px 20px 20px}.rph-hero-copy>p:not(.rph-kicker){font-size:16px}.rph-benefits{flex-wrap:wrap;gap:12px}.rph-section{padding-top:60px}.rph-grid,.rph-how,.rph-memberships,.rph-faq{grid-template-columns:1fr;gap:18px}.rph-feature-wide{grid-column:auto;grid-template-columns:1fr}.rph-feature-wide>img{height:220px;order:-1;border-radius:16px}.rph-how{gap:35px}.rph-plan{padding:26px}.rph-faq{padding-bottom:55px;gap:25px}.rph-footer{grid-template-columns:1fr}.rph-footer>p:nth-child(2){text-align:left}.rph-demo{padding:18px}.rph-demo iframe{height:540px}.rph-actions{gap:20px}.rph-section-heading{margin-bottom:26px}}

.rph .rph-approved-logo{display:block;width:230px;max-width:44vw;line-height:0}.rph .rph-approved-logo img{width:100%;height:auto;mix-blend-mode:multiply}@media(max-width:650px){.rph-nav .rph-approved-logo{width:175px;max-width:58vw}}

.rph .rph-park-photo{position:relative;overflow:hidden;height:265px;border-radius:80px 80px 18px 18px}.rph .rph-park-photo img{width:100%;height:100%;object-fit:cover}.rph .rph-park-photo figcaption{position:absolute;inset:auto 0 0;background:#153e35;color:white;padding:12px 16px;font-size:15px;font-weight:700;line-height:1.4}.rph .rph-park-photo figcaption span{display:block}.rph .rph-photo-location{font-size:12px!important;font-weight:500!important;margin-top:4px}.rph .rph-hero-photo figcaption{background:#153e35;padding:18px 24px}.rph .rph-footer-credits{grid-column:1/-1;padding-top:12px;border-top:1px solid var(--line)}@media(max-width:650px){.rph .rph-park-photo{height:235px;order:-1;border-radius:16px}.rph .rph-park-photo figcaption{font-size:14px}}

.rph-button-disabled{opacity:.72;pointer-events:none;cursor:not-allowed;}

/* Homepage park-photo rotator */
.rph .rph-hero-rotator>img{transition:opacity .36s ease,transform .5s ease}
.rph .rph-hero-rotator>img.rph-hero-changing{opacity:.14;transform:scale(1.012)}
.rph .rph-hero-controls{position:absolute;z-index:4;top:18px;right:18px;display:flex;align-items:center;gap:6px;padding:5px;border-radius:999px;background:rgba(21,62,53,.78);backdrop-filter:blur(7px)}
.rph .rph-hero-controls button{appearance:none;border:0;border-radius:999px;min-width:34px;height:34px;padding:0 10px;background:rgba(255,255,255,.94);color:#153e35;font:700 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.rph .rph-hero-controls .rph-hero-arrow{font-size:23px;line-height:28px;padding:0;width:34px}
.rph .rph-hero-controls button:hover{background:#fff}
.rph .rph-hero-controls button:focus-visible{outline:3px solid #f8d470;outline-offset:2px}
@media(max-width:650px){.rph .rph-hero-controls{top:12px;right:12px}.rph .rph-hero-controls button{height:32px;min-width:32px}.rph .rph-hero-controls .rph-hero-arrow{width:32px}}
@media(prefers-reduced-motion:reduce){.rph .rph-hero-rotator>img{transition:none}}

/* 2.0.2 homepage polish — lock the public homepage to the RidePlenty layout even when a theme adds aggressive block styles. */
.rp-home-body{overflow-x:hidden!important}
.rph{min-height:100vh}
.rph .rph-nav{
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  align-items:center!important;
  gap:36px!important;
  min-height:92px!important;
  padding-top:16px!important;
  padding-bottom:16px!important;
}
.rph .rph-nav>.wp-block-group__inner-container{display:contents!important}
.rph .rph-nav nav,
.rph .rph-nav nav.wp-block-group,
.rph .rph-nav nav>.wp-block-group__inner-container{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:30px!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.rph .rph-nav nav p,
.rph .rph-nav nav a{margin:0!important;padding:0!important;white-space:nowrap!important}
.rph .rph-nav .wp-block-buttons{justify-self:end!important;width:auto!important}
.rph .rph-nav .wp-block-button{margin:0!important}
.rph .rph-nav .rph-approved-logo{justify-self:start!important;width:220px!important;max-width:36vw!important}
.rph .rph-nav>.rph-button{justify-self:end}

/* Keep accidental WordPress/page-title output from opening a giant hole above the hero. */
.rp-home-body>.entry-title,
.rp-home-body>.wp-block-post-title,
.rph>.entry-title,
.rph>.wp-block-post-title,
.rph>h1.rph-layout-artifact{display:none!important}

.rph .rph-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(460px,.92fr)!important;
  gap:64px!important;
  align-items:center!important;
  padding-top:34px!important;
  padding-bottom:54px!important;
}
.rph .rph-hero-copy{align-self:center!important}
.rph .rph-hero-copy>.rph-kicker{margin-bottom:18px!important}
.rph .rph-hero h1{font-size:clamp(48px,5vw,72px)!important;line-height:1.01!important;max-width:690px!important}
.rph .rph-hero-copy>p:not(.rph-kicker){font-size:17px!important;line-height:1.65!important;max-width:610px!important;margin-top:22px!important}
.rph .rph-actions{margin-top:28px!important;gap:18px!important}
.rph .rph-micro{margin-top:10px!important;font-size:12px!important}

/* A clean, predictable photo card instead of the oversized dome treatment. */
.rph .rph-hero-photo,
.rph .wp-block-image.rph-hero-photo{
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:1.18 / 1!important;
  align-self:center!important;
  overflow:hidden!important;
  border-radius:30px!important;
  background:#dbe8e1!important;
  box-shadow:0 20px 60px rgba(21,62,53,.13)!important;
}
.rph .rph-hero-photo>img,
.rph .wp-block-image.rph-hero-photo>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.rph .rph-hero-photo figcaption{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:3!important;
  padding:18px 22px 20px!important;
  background:linear-gradient(180deg,rgba(14,48,40,0) 0%,rgba(14,48,40,.88) 48%,rgba(14,48,40,.97) 100%)!important;
  color:#fff!important;
}
.rph .rph-hero-photo figcaption span:first-child{font-size:20px!important;line-height:1.2!important}
.rph .rph-hero-photo .rph-photo-location{font-size:12px!important;opacity:.9!important}

/* Small, intentional carousel controls that don't compete with the park photo. */
.rph .rph-hero-controls{
  top:auto!important;
  right:16px!important;
  bottom:16px!important;
  z-index:5!important;
  display:flex!important;
  gap:7px!important;
  padding:6px!important;
  background:rgba(15,54,45,.78)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  box-shadow:0 8px 24px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(10px)!important;
}
.rph .rph-hero-controls button{
  display:inline-grid!important;
  place-items:center!important;
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#153e35!important;
  font:800 19px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  box-shadow:none!important;
}
.rph .rph-hero-controls .rph-hero-pause{font-size:13px!important;letter-spacing:-1px!important}
.rph .rph-hero-controls button:hover{background:#f8d470!important}

@media(max-width:1100px){
  .rph .rph-nav{gap:22px!important}
  .rph .rph-nav nav,.rph .rph-nav nav.wp-block-group,.rph .rph-nav nav>.wp-block-group__inner-container{gap:18px!important}
  .rph .rph-hero{grid-template-columns:minmax(0,1fr) minmax(390px,.88fr)!important;gap:34px!important}
  .rph .rph-hero h1{font-size:clamp(44px,5.5vw,62px)!important}
}
@media(max-width:820px){
  .rph .rph-nav{grid-template-columns:1fr auto!important;min-height:82px!important}
  .rph .rph-nav nav{display:none!important}
  .rph .rph-nav .rph-approved-logo{width:190px!important;max-width:55vw!important}
  .rph .rph-hero{grid-template-columns:1fr!important;gap:28px!important;padding-top:22px!important}
  .rph .rph-hero-copy{text-align:left!important}
  .rph .rph-hero-photo,.rph .wp-block-image.rph-hero-photo{aspect-ratio:1.3 / 1!important}
}
@media(max-width:520px){
  .rph .rph-nav{padding-top:12px!important;padding-bottom:12px!important}
  .rph .rph-nav .rph-approved-logo{width:162px!important}
  .rph .rph-nav .wp-block-button__link,.rph .rph-nav>.rph-button{min-height:40px!important;padding:9px 13px!important;font-size:12px!important}
  .rph .rph-hero{padding-top:14px!important;padding-bottom:32px!important}
  .rph .rph-hero h1{font-size:43px!important}
  .rph .rph-hero-photo,.rph .wp-block-image.rph-hero-photo{aspect-ratio:1.05 / 1!important;border-radius:22px!important}
  .rph .rph-hero-controls{right:12px!important;bottom:12px!important;transform:none!important}
  .rph .rph-hero-photo figcaption{padding:50px 126px 14px 16px!important}
  .rph .rph-hero-photo figcaption span:first-child{font-size:17px!important}
}
