﻿
/* Uniform mobile navigation â€” reference: approved 6028 layout */
.pp6028Bar{display:none}
@media screen and (max-width:900px){
 html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
 *,*:before,*:after{box-sizing:border-box}
 .pp6028Bar{
   display:grid!important;
   grid-template-columns:minmax(82px,.82fr) minmax(92px,.92fr) minmax(180px,1.9fr);
   gap:8px;
   align-items:stretch;
   width:100%;
   max-width:100%;
   padding:12px 14px;
   margin:0;
   background:#050505;
   position:relative;
   z-index:2147482000;
 }
 .pp6028Menu,.pp6028More,.pp6028Call{
   min-width:0;min-height:68px;border-radius:18px;font-weight:900;text-decoration:none!important;
   display:flex;align-items:center;justify-content:center;line-height:1.05;
 }
 .pp6028Menu{
   border:2px solid #303030;background:linear-gradient(#171717,#090909);color:#fff!important;
   font-size:17px;padding:8px 9px;white-space:nowrap;
 }
 .pp6028More{
   border:0;background:#ffdd28;color:#111!important;font-size:18px;padding:8px 10px;white-space:nowrap;
 }
 .pp6028Call{
   border:2px solid #d92828;background:linear-gradient(#e41515,#a60808);color:#fff!important;
   padding:8px 10px;gap:8px;text-align:left;justify-content:center;
 }
 .pp6028Phone{font-size:22px;color:#ffe300;flex:0 0 auto}
 .pp6028CallText{display:flex;flex-direction:column;min-width:0}
 .pp6028Call1{font-size:16px;white-space:nowrap}
 .pp6028Call2{font-size:18px;white-space:nowrap}
 .pp6028MoreWrap{position:relative;display:flex;min-width:0}
 .pp6028More{width:100%}
 .pp6028Drop{
   display:none;position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);
   width:min(330px,calc(100vw - 18px));max-height:70vh;overflow-y:auto;background:#101010;
   border:2px solid #ffdd28;border-radius:14px;padding:7px;box-shadow:0 8px 24px rgba(0,0,0,.65);
   z-index:2147483000;
 }
 .pp6028MoreWrap.open .pp6028Drop{display:block}
 .pp6028Drop a{display:block;padding:10px;color:#fff!important;text-decoration:none;font-weight:800;line-height:1.15}
 .pp6028Drop a+a{border-top:1px solid rgba(255,255,255,.12)}
 .pp6028Head{padding:7px 10px 4px;color:#ffe45c;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
 [id]{scroll-margin-top:92px}
 /* Hide every old mobile top control so there is only ONE bar. */
 .topMobileBar,.mobileTopBar,.mobileTopFloat,.mobileActions{display:none!important}
 .pp6028Bar{display:grid!important}
}
@media screen and (max-width:390px){
 .pp6028Bar{grid-template-columns:78px 86px minmax(150px,1fr);gap:6px;padding:10px 8px}
 .pp6028Menu{font-size:15px;padding:7px 6px}
 .pp6028More{font-size:16px;padding:7px 6px}
 .pp6028Call{padding:7px 6px;gap:5px}
 .pp6028Phone{font-size:18px}
 .pp6028Call1{font-size:13px}
 .pp6028Call2{font-size:15px}
}


@media screen and (max-width:900px){
 .pp6028Bar{
   grid-template-columns:minmax(76px,.82fr) minmax(84px,.88fr) minmax(0,1.72fr)!important;
   gap:6px!important;
   padding:10px 8px!important;
   width:100%!important;
   max-width:100vw!important;
   overflow:visible!important;
 }
 .pp6028Menu{
   background:linear-gradient(#e71919,#a60909)!important;
   border:2px solid #ef3434!important;
   color:#fff!important;
   padding:7px 6px!important;
   font-size:16px!important;
 }
 .pp6028More{
   background:linear-gradient(#ffffff,#e9e9e9)!important;
   border:2px solid #d5d5d5!important;
   color:#111!important;
   padding:7px 6px!important;
   font-size:16px!important;
 }
 .pp6028Call{
   background:linear-gradient(#1269dc,#073c96)!important;
   border:2px solid #277deb!important;
   color:#fff!important;
   padding:7px 7px!important;
   gap:5px!important;
   min-width:0!important;
   overflow:hidden!important;
 }
 .pp6028Phone{color:#fff!important;font-size:18px!important}
 .pp6028CallText{min-width:0!important}
 .pp6028Call1{font-size:13px!important;white-space:nowrap!important}
 .pp6028Call2{font-size:15px!important;white-space:nowrap!important}
 .pp6028Menu,.pp6028More,.pp6028Call{min-height:62px!important;border-radius:16px!important}
 .pp6028Drop{border-color:#d5d5d5!important}
 .pp6028Head{color:#fff!important}
}
@media screen and (max-width:360px){
 .pp6028Bar{grid-template-columns:72px 80px minmax(0,1fr)!important;gap:5px!important;padding:8px 6px!important}
 .pp6028Menu,.pp6028More{font-size:14px!important;padding:6px 4px!important}
 .pp6028Call1{font-size:11px!important}
 .pp6028Call2{font-size:13px!important}
 .pp6028Phone{font-size:16px!important}
}


@media screen and (min-width:901px){
  .pp6028Bar{display:none!important}
}


    :root{
      --bg:#060707;
      --panel:#0c0f10;
      --panel-2:#121617;
      --line:rgba(255,255,255,.10);
      --text:#f5f7f7;
      --muted:#b8c2c2;
      --yellow:#ffd400;
      --red:#ff3b30;
      --green:#31ff57;
      --cyan:#86fff3;
      --blue:#7ab8ff;
      --shadow:0 18px 42px rgba(0,0,0,.42);
      --radius:22px;
      --max:1400px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:Arial,Helvetica,sans-serif;
      background:
        radial-gradient(circle at top,rgba(19,70,22,.42),transparent 26%),
        linear-gradient(180deg,#060707 0,#0a0d0d 45%,#0b0f10 100%);
      color:var(--text);
      line-height:1.45;
      text-rendering:optimizeLegibility;
      -webkit-font-smoothing:antialiased;
      -moz-osx-font-smoothing:grayscale;
    }

    a{color:inherit}
    img{max-width:100%;display:block;height:auto}

    .skipLink{
      position:absolute;
      left:-9999px;
      top:auto;
      width:1px;
      height:1px;
      overflow:hidden;
    }

    .skipLink:focus{
      left:12px;
      top:12px;
      width:auto;
      height:auto;
      padding:10px 14px;
      background:#fff;
      color:#000;
      z-index:9999;
      border-radius:10px;
    }

    .wrap{width:min(calc(100% - 24px),var(--max));margin:0 auto}

    .mobileTopFloat,.mobileSpacer,.mobileBookingLine{display:none}

    .heroWrap{padding:14px 0 16px}
    .heroShell{
      background:
        radial-gradient(circle at 50% 10%,rgba(49,255,87,.28) 0,rgba(49,255,87,.12) 18%,transparent 42%),
        linear-gradient(180deg,rgba(9,11,12,.985),rgba(5,6,7,.985));
      border:1px solid rgba(255,255,255,.08);
      border-radius:28px;
      overflow:visible;
      box-shadow:0 0 0 1px rgba(255,255,255,.03) inset,0 20px 50px rgba(0,0,0,.50);
      position:relative;
    }

    .heroShell::before{
      content:"";
      position:absolute;
      inset:0;
      border-radius:28px;
      pointer-events:none;
      background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 14%,transparent 86%,rgba(255,255,255,.03));
      z-index:0;
    }

    .heroTop,.heroNavRow,.landingHero{position:relative;z-index:1}

    .heroTop{
      padding:12px 18px 6px;
      text-align:center;
    }

    .heroLogo{
      display:flex;
      justify-content:center;
      align-items:center;
      margin:0 auto 10px;
    }

    .heroLogoGlow{
      position:relative;
      min-height:148px;
    }

    .heroLogoGlow::before{
      content:"";
      position:absolute;
      left:20%;
      right:20%;
      top:8px;
      bottom:10px;
      background:radial-gradient(circle,rgba(49,255,87,.52) 0,rgba(49,255,87,.24) 26%,rgba(49,255,87,.10) 42%,transparent 68%);
      filter:blur(22px);
      z-index:0;
      pointer-events:none;
    }

    .heroLogoGlow::after{
      content:"";
      position:absolute;
      left:28%;
      right:28%;
      top:26px;
      bottom:26px;
      background:radial-gradient(circle,rgba(255,212,0,.12) 0,rgba(255,212,0,.04) 30%,transparent 60%);
      filter:blur(10px);
      z-index:0;
      pointer-events:none;
    }

    .heroLogoGlow img{
      position:relative;
      z-index:1;
      width:455px;
      max-width:92%;
      filter:drop-shadow(0 0 10px rgba(255,212,0,.28)) drop-shadow(0 0 20px rgba(51,255,90,.48)) drop-shadow(0 0 42px rgba(51,255,90,.26));
    }

    .heroPill{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:38px;
      padding:8px 16px;
      border-radius:999px;
      background:rgba(16,17,17,.92);
      color:var(--yellow);
      border:1px solid rgba(255,212,0,.22);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 0 18px rgba(255,212,0,.05);
      font-size:12px;
      font-weight:800;
      text-transform:uppercase;
      letter-spacing:.08em;
    }

    .heroNavRow{
      padding:0 18px 14px;
      z-index:500;
    }

    .heroNavGrid{
      display:grid;
      grid-template-columns:repeat(5,minmax(0,1fr));
      gap:12px;
      align-items:stretch;
    }

    .heroBtn,.heroNavBox{min-width:0}

    .heroBtn{
      display:flex;
      align-items:center;
      justify-content:center;
      width:100%;
      min-height:54px;
      padding:12px 16px;
      border-radius:16px;
      text-decoration:none;
      background:linear-gradient(180deg,#121617,#0c0f10);
      border:1px solid rgba(255,255,255,.10);
      color:#fff;
      font-weight:800;
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 10px 18px rgba(0,0,0,.22);
      transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
      text-align:center;
      appearance:none;
      -webkit-appearance:none;
      font-size:15px;
      font-family:inherit;
      cursor:pointer;
    }

    .heroBtn:hover,.heroBtn:focus-visible{
      transform:translateY(-2px);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 14px 24px rgba(0,0,0,.34);
      border-color:rgba(255,255,255,.16);
    }

    .heroBtn.red{color:#fff;background:linear-gradient(180deg,#7f1111,#541010)}
    .heroBtn.yellow{color:#171717;background:linear-gradient(180deg,#ffe65d,#ffd400)}

    .heroNavBox{position:relative;display:block;z-index:700}
    .heroNavBox.open{z-index:9998}
    .heroMoreCaret{display:inline-block;margin-left:8px;font-size:.85em}

    .heroMoreMenu{
      --mx:50%;
      --my:50%;
      position:absolute;
      top:calc(100% + 10px);
      right:0;
      width:820px;
      max-width:min(820px,calc(100vw - 40px));
      padding:16px;
      border-radius:20px;
      background:
        radial-gradient(circle at var(--mx) var(--my),rgba(255,212,0,.13),transparent 18%),
        radial-gradient(circle at 50% 0,rgba(60,255,120,.10),transparent 34%),
        linear-gradient(180deg,rgba(20,24,25,.88),rgba(8,11,12,.92));
      border:1px solid rgba(255,255,255,.12);
      box-shadow:0 24px 60px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.04) inset,0 0 26px rgba(255,212,0,.08);
      backdrop-filter:blur(16px) saturate(135%);
      -webkit-backdrop-filter:blur(16px) saturate(135%);
      opacity:0;
      visibility:hidden;
      transform:translateY(10px);
      transition:opacity .22s ease,visibility .22s ease,transform .22s ease;
      z-index:9999;
      overflow:hidden;
      isolation:isolate;
    }

    .heroMoreMenu::before{
      content:"";
      position:absolute;
      inset:0;
      border-radius:20px;
      background:linear-gradient(180deg,rgba(255,255,255,.09),transparent 18%,transparent 82%,rgba(255,255,255,.04)),radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.12),transparent 22%);
      pointer-events:none;
      z-index:0;
    }

    .heroMoreMenu::after{
      content:"";
      position:absolute;
      inset:-20%;
      background:
        radial-gradient(circle at 18% 36%,rgba(49,255,87,.09),transparent 14%),
        radial-gradient(circle at 48% 62%,rgba(255,212,0,.08),transparent 16%),
        radial-gradient(circle at 80% 30%,rgba(134,255,243,.07),transparent 14%);
      filter:blur(16px);
      pointer-events:none;
      z-index:0;
      animation:dropdownGlowFloat 9s linear infinite;
    }

    .heroNavBox.open .heroMoreMenu{opacity:1;visibility:visible;transform:translateY(0)}

    .heroMegaGrid{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:16px;
    }

    .heroMegaGrid>div{
      position:relative;
      background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
      border:1px solid rgba(255,255,255,.08);
      border-radius:16px;
      padding:14px;
      box-shadow:0 10px 22px rgba(0,0,0,.18),0 0 0 1px rgba(255,255,255,.02) inset;
      transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
      overflow:hidden;
    }

    .heroMegaGrid>div::before{
      content:"";
      position:absolute;
      inset:0;
      background:radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.10),transparent 26%);
      opacity:.55;
      pointer-events:none;
    }

    .heroMegaGrid>div:hover{
      transform:translateY(-3px);
      border-color:rgba(255,255,255,.14);
      box-shadow:0 16px 30px rgba(0,0,0,.28),0 0 18px rgba(255,212,0,.05);
    }

    .heroMegaTitle{
      color:var(--yellow);
      font-size:12px;
      font-weight:900;
      text-transform:uppercase;
      letter-spacing:.08em;
      margin:0 0 8px;
    }

    .heroMegaGrid a{
      display:block;
      text-decoration:none;
      color:#edf2f2;
      padding:9px 0;
      border-top:1px solid rgba(255,255,255,.06);
      transition:color .16s ease,transform .16s ease;
      font-size:14px;
    }

    .heroMegaGrid a:first-of-type{border-top:none;padding-top:0}
    .heroMegaGrid a:hover,.heroMegaGrid a:focus-visible{color:#fff;transform:translateX(2px)}

    .heroQuickLinks{
      position:relative;
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:10px;
      margin:10px auto 0;
      padding:8px 10px;
      width:100%;
      max-width:1080px;
      border-radius:16px;
      background:linear-gradient(180deg,rgba(7,9,9,.99),rgba(8,11,11,.99));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 10px 20px rgba(0,0,0,.24);
      overflow:hidden;
      isolation:isolate;
    }

    .heroQuickLinks::before{
      content:"";
      position:absolute;
      inset:-20%;
      background:
        radial-gradient(circle at 12% 55%,rgba(255,212,0,.12),transparent 16%),
        radial-gradient(circle at 36% 35%,rgba(57,255,20,.10),transparent 14%),
        radial-gradient(circle at 58% 68%,rgba(0,255,170,.10),transparent 14%),
        radial-gradient(circle at 82% 40%,rgba(255,212,0,.10),transparent 16%);
      filter:blur(12px);
      animation:paintGlowMove 7s linear infinite;
      z-index:0;
      pointer-events:none;
      opacity:.95;
    }

    .quickBtn{
      position:relative;
      z-index:1;
      display:flex;
      align-items:center;
      justify-content:center;
      min-height:44px;
      padding:10px 16px;
      border-radius:12px;
      text-decoration:none;
      background:linear-gradient(180deg,#131719,#0d1112);
      border:1px solid rgba(255,255,255,.10);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 8px 16px rgba(0,0,0,.28);
      font-size:14px;
      font-weight:900;
      letter-spacing:.01em;
      text-align:center;
      transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
      overflow:hidden;
      white-space:nowrap;
    }

    .quickBtn::after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.11) 48%,transparent 72%);
      transform:translateX(-130%);
      transition:transform .65s ease;
      pointer-events:none;
    }

    .quickBtn:hover,.quickBtn:focus-visible{
      transform:translateY(-2px);
      border-color:rgba(255,255,255,.18);
      box-shadow:0 0 0 1px rgba(255,255,255,.04),0 12px 24px rgba(0,0,0,.40);
    }

    .quickBtn:hover::after,.quickBtn:focus-visible::after{transform:translateX(130%)}
    .quickBtn.party{color:var(--yellow)}
    .quickBtn.waiver{color:var(--blue)}
    .quickBtn.invites{color:var(--green)}
    .quickBtn.call{color:var(--cyan)}

    @keyframes paintGlowMove{
      0%{transform:translateX(-2%) translateY(0)}
      50%{transform:translateX(2%) translateY(-1.5%)}
      100%{transform:translateX(-2%) translateY(0)}
    }

    @keyframes dropdownGlowFloat{
      0%{transform:translateX(-1.5%) translateY(0)}
      50%{transform:translateX(1.5%) translateY(-1.5%)}
      100%{transform:translateX(-1.5%) translateY(0)}
    }

    .landingHero{
      display:grid;
      grid-template-columns:1.08fr .92fr;
      gap:18px;
      padding:0 18px 18px;
      align-items:stretch;
    }

    .landingLeft,.landingRight{min-width:0}

    .eyebrow{
      color:var(--green);
      font-size:12px;
      font-weight:900;
      letter-spacing:.09em;
      text-transform:uppercase;
      margin-bottom:8px;
    }

    h1,h2,h3{margin:0 0 10px}
    h1{
      font-size:clamp(32px,4vw,52px);
      line-height:1.02;
      letter-spacing:-.03em;
      text-wrap:balance;
    }

    .heroHighlights{
      margin:12px 0 12px;
      color:#f5f7f7;
      font-weight:800;
      font-size:14px;
    }

    .heroHighlights .red{color:#ff6861}
    .heroHighlights .yellow{color:var(--yellow)}

    .heroLead,.sectionLead{
      color:var(--muted);
      font-size:17px;
      max-width:60ch;
    }

    .heroTrust{
      margin:14px 0 16px;
      color:#dfe7e7;
      font-weight:700;
      font-size:15px;
    }

    .actionRow,.contactCtas,.ramboMiniActions,.singleMapActions{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }

    .heroCallWrap{
      display:flex;
      flex-direction:column;
      align-items:center;
    }

    .heroCallWrap .tinyNote{
      margin-top:5px;
      font-size:11px;
      text-align:center;
    }

    .pillBtn,.miniBtn,.downloadBtn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:48px;
      padding:11px 16px;
      border-radius:999px;
      text-decoration:none;
      font-weight:900;
      text-align:center;
      background:linear-gradient(180deg,#181d1e,#101314);
      border:1px solid rgba(255,255,255,.10);
      color:#fff;
      box-shadow:0 10px 20px rgba(0,0,0,.24);
      transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
      font-size:14px;
    }

    .pillBtn.red,.callStrong{background:linear-gradient(180deg,#891313,#5b1010)}
    .pillBtn.red{box-shadow:0 10px 20px rgba(0,0,0,.24),0 0 18px rgba(255,59,48,.14)}
    .pillBtn.red:hover,.pillBtn.red:focus-visible{box-shadow:0 14px 26px rgba(0,0,0,.34),0 0 22px rgba(255,59,48,.22)}
    .pillBtn:hover,.pillBtn:focus-visible,.miniBtn:hover,.miniBtn:focus-visible,.downloadBtn:hover,.downloadBtn:focus-visible{
      transform:translateY(-2px);
      box-shadow:0 14px 26px rgba(0,0,0,.34);
      border-color:rgba(255,255,255,.16);
    }

    .tinyNote{margin-top:10px;color:#97a4a4;font-size:12px}

    .ramboCard{
      height:100%;
      display:flex;
      flex-direction:column;
      background:linear-gradient(180deg,#121617,#0c0f10);
      border:1px solid rgba(255,255,255,.10);
      border-radius:24px;
      overflow:hidden;
      box-shadow:var(--shadow);
    }

    .ramboCardTop{
      background:radial-gradient(circle at top,rgba(49,255,87,.14),transparent 38%),linear-gradient(180deg,#14191a,#0e1112);
    }

    .ramboCardStripe{
      text-align:center;
      padding:8px 12px;
      background:rgba(255,212,0,.10);
      color:var(--yellow);
      font-size:12px;
      font-weight:900;
      letter-spacing:.07em;
      text-transform:uppercase;
      border-bottom:1px solid rgba(255,255,255,.06);
    }

    .ramboCardHeadInner{
      padding:14px 16px 6px;
      text-align:center;
    }

    .ramboCardHeadInner p{margin:0;color:var(--muted);font-size:14px}

    .ramboVisual{padding:14px}
    .ramboVisual img{
      width:100%;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.08);
      box-shadow:0 16px 30px rgba(0,0,0,.30);
      aspect-ratio:16/10;
      object-fit:cover;
      object-position:center;
    }

    .ramboCardBottom{
      padding:0 14px 14px;
      margin-top:auto;
    }

    .section{
      margin:18px 0;
      padding:22px;
      background:linear-gradient(180deg,#101415,#0b0e0f);
      border:1px solid rgba(255,255,255,.08);
      border-radius:24px;
      box-shadow:var(--shadow);
    }

    .statsRow,.benefitGrid,.featureGrid,.hoursGrid,.galleryGrid,.timeGrid,.seoLinkGrid{
      display:grid;
      gap:14px;
    }

    .statsRow{grid-template-columns:repeat(4,minmax(0,1fr))}
    .benefitGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .featureGrid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense}
    .galleryGrid{grid-template-columns:repeat(4,minmax(0,1fr))}
    .timeGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .hoursGrid{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}
    .seoLinkGrid{grid-template-columns:repeat(3,minmax(0,1fr))}

    .statCard,.benefitCard,.featureCard,.infoCell,.contactCard,.timeCard,.galleryCard,.seoLinkCard{
      background:linear-gradient(180deg,#131719,#0d1112);
      border:1px solid rgba(255,255,255,.08);
      border-radius:20px;
      padding:18px;
      box-shadow:0 10px 22px rgba(0,0,0,.22);
    }

    .galleryCard{padding:10px;overflow:hidden}
    .galleryCard img{width:100%;height:100%;object-fit:cover;aspect-ratio:1/1;border-radius:14px}

    .seoLinkCard{
      text-decoration:none;
      transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
    }

    .seoLinkCard:hover,.seoLinkCard:focus-visible{
      transform:translateY(-2px);
      border-color:rgba(255,255,255,.16);
      box-shadow:0 14px 26px rgba(0,0,0,.32);
    }

    .seoLinkCard h3{margin-bottom:8px;color:var(--yellow)}
    .seoLinkCard p{margin:0;color:var(--muted)}

    .statCard h3,.benefitCard h3,.featureCard h3,.contactCard h3,.timeCard h3{margin-bottom:8px}
    .statCard p,.benefitCard p,.featureCard p,.contactCard p,.timeCard p{margin:0 0 8px;color:var(--muted)}

    .benefitIcon{
      width:46px;
      height:46px;
      display:grid;
      place-items:center;
      border-radius:14px;
      margin-bottom:12px;
      background:rgba(255,212,0,.10);
      color:var(--yellow);
      font-size:24px;
      font-weight:900;
    }

    .noticeBanner{
      margin-top:16px;
      padding:14px 16px;
      border-radius:16px;
      background:rgba(255,212,0,.10);
      border:1px solid rgba(255,212,0,.16);
      color:var(--yellow);
      font-weight:900;
      text-align:center;
    }

    .warningBanner{
      margin-top:16px;
      padding:14px 16px;
      border-radius:16px;
      background:rgba(255,59,48,.10);
      border:1px solid rgba(255,59,48,.20);
      color:#ffb9b5;
      font-weight:900;
      text-align:center;
    }

    .rentalImageCard{padding:0;overflow:hidden}
    .rentalImageCard img{
      width:100%;
      height:100%;
      border-radius:20px;
      object-fit:cover;
      background:#0b0f10;
      display:block;
    }

    .rentalImageLarge{
      grid-column:span 2;
      grid-row:span 2;
      min-height:430px;
    }

    .infoLayout{
      display:grid;
      grid-template-columns:minmax(0,1.18fr) minmax(290px,.82fr);
      gap:18px;
      align-items:start;
    }

    .infoStack{display:grid;gap:12px}

    .infoCard{
      background:linear-gradient(180deg,#131719,#0d1112);
      border:1px solid rgba(255,255,255,.08);
      border-radius:18px;
      overflow:hidden;
    }

    .infoCard summary{
      list-style:none;
      cursor:pointer;
      padding:16px 18px;
      font-weight:900;
      position:relative;
      font-size:15px;
    }

    .infoCard summary::-webkit-details-marker{display:none}
    .infoCard summary::after{
      content:"+";
      position:absolute;
      right:18px;
      top:50%;
      transform:translateY(-50%);
      font-size:22px;
      color:var(--yellow);
    }

    .infoCard[open] summary::after{content:"\2212"}

    .infoBody{
      padding:0 18px 16px;
      border-top:1px solid rgba(255,255,255,.06);
    }

    .infoBody p,.infoBody li{color:var(--muted)}
    .infoBody ul{margin:0;padding-left:18px}

    .phoneBig{
      display:block;
      margin:10px 0 8px;
      font-size:32px;
      font-weight:900;
      color:var(--yellow);
    }

    .contactNoteSpacer{display:block;height:10px}

    .glowLink{
      display:flex;
      align-items:center;
      justify-content:center;
      width:100%;
      min-height:170px;
      text-decoration:none;
    }

    .infoCell{
      display:flex;
      flex-direction:column;
      justify-content:center;
      align-items:center;
      text-align:center;
      min-height:190px;
    }

    .glowImg{
      border-radius:18px;
      box-shadow:0 0 0 1px rgba(255,255,255,.08),0 14px 28px rgba(0,0,0,.26),0 0 18px rgba(49,255,87,.08);
      transition:transform .18s ease,box-shadow .18s ease;
      margin-left:auto;
      margin-right:auto;
    }

    .glowLink:hover .glowImg,.glowLink:focus-visible .glowImg{
      transform:translateY(-2px);
      box-shadow:0 0 0 1px rgba(255,255,255,.10),0 18px 34px rgba(0,0,0,.34),0 0 22px rgba(49,255,87,.12);
    }

    .timeCard h3{
      display:inline-block;
      background:#ff0000;
      color:#fff;
      padding:6px 12px;
      border-radius:999px;
      font-size:15px;
      letter-spacing:.03em;
    }

    .timeCard{text-align:center}
    .timeCard p strong{color:var(--yellow)}

    .checkList{margin:0;padding-left:18px}
    .checkList li{margin:8px 0}
    .arrivalPill{
      display:inline-block;
      padding:6px 12px;
      border-radius:999px;
      background:#ffd400;
      color:#111;
      font-weight:900;
    }

    .singleMapCard{
      padding:20px;
      background:linear-gradient(180deg,#131719,#0d1112);
      border:1px solid rgba(255,255,255,.08);
      border-radius:20px;
      box-shadow:0 10px 22px rgba(0,0,0,.22);
    }

    .singleMapActions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin:12px 0 14px;
    }

    .singleMapFrame{
      width:100%;
      height:400px;
      border:0;
      border-radius:20px;
      box-shadow:0 12px 24px rgba(0,0,0,.25);
      background:#0c0f10;
    }

    .siteFooter{
      margin:20px 0 38px;
      background:linear-gradient(180deg,#101415,#0a0d0e);
      border:1px solid rgba(255,255,255,.08);
      border-radius:24px;
      overflow:hidden;
      box-shadow:var(--shadow);
    }

    .footerTop{
      display:grid;
      grid-template-columns:1.2fr .8fr .8fr .9fr;
      gap:20px;
      padding:24px;
    }

    .footerLogo img{
      width:250px;
      max-width:100%;
      filter:drop-shadow(0 0 8px rgba(255,212,0,.14)) drop-shadow(0 0 18px rgba(49,255,87,.18));
    }

    .footerTagline{color:var(--muted);margin:12px 0;font-size:15px}
    .footerContactList,.footerNavList{list-style:none;padding:0;margin:0}
    .footerContactList li,.footerNavList li{margin:0 0 10px;color:#dde4e4}
    .footerHeading{margin-bottom:12px;color:var(--yellow);font-size:17px}
    .footerNavList a{text-decoration:none}
    .footerNavList a:hover,.footerNavList a:focus-visible{color:var(--green)}
    .footerHours p{margin:0 0 12px;color:#dde4e4}

    .footerReserveLabel{display:block;margin-bottom:10px}
    .footerCallCta{
      display:inline-flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      min-height:74px;
      min-width:250px;
      padding:12px 18px;
      border-radius:18px;
      text-decoration:none;
      text-align:center;
      background:linear-gradient(180deg,#ffe55f,#ffd400);
      color:#161616;
      font-weight:900;
      box-shadow:0 0 22px rgba(255,212,0,.20),0 14px 30px rgba(0,0,0,.28);
      transition:transform .18s ease,box-shadow .18s ease;
    }

    .footerCallCta:hover,.footerCallCta:focus-visible{
      transform:translateY(-2px);
      box-shadow:0 0 28px rgba(255,212,0,.24),0 18px 34px rgba(0,0,0,.32);
    }

    .footerCallTop{font-size:14px}
    .footerCallBottom{font-size:19px;line-height:1.1;margin-top:4px}

    .footerBottom{
      padding:14px 24px;
      border-top:1px solid rgba(255,255,255,.08);
      display:flex;
      justify-content:space-between;
      gap:16px;
      flex-wrap:wrap;
      color:#c7d0d0;
      font-size:14px;
    }

    :focus-visible{
      outline:2px solid var(--yellow);
      outline-offset:3px;
      border-radius:8px;
    }

    @media (prefers-reduced-motion:reduce){
      html{scroll-behavior:auto}
      *,*::before,*::after{animation:none!important;transition:none!important}
    }

    @media (min-width:1200px){
      .heroLogoGlow img{width:500px}
      .heroLogoGlow{min-height:158px}
    }

    @media (max-width:1100px){
      .heroQuickLinks{grid-template-columns:repeat(2,minmax(0,1fr))}
      .landingHero,.infoLayout,.footerTop{grid-template-columns:1fr}
      .statsRow,.benefitGrid,.featureGrid,.timeGrid,.seoLinkGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .galleryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .hoursGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .rentalImageLarge{grid-column:span 2;grid-row:span 2;min-height:360px}
    }

    @media (max-width:768px){
      .heroWrap{padding-top:0}
      .heroShell,.section,.siteFooter{width:min(calc(100% - 16px),var(--max));border-radius:22px}
      .mobileTopFloat{
        display:block;
        position:sticky;
        top:0;
        z-index:120;
        padding:8px 8px 0;
        background:linear-gradient(180deg,rgba(6,7,7,.96),rgba(6,7,7,.72),transparent);
        backdrop-filter:blur(10px);
      }

      .mobileTopBar{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:10px;
        align-items:stretch;
      }

      .mobileMoreWrap{position:relative}

      .mobileTopPill{
        width:100%;
        min-height:58px;
        border:none;
        border-radius:999px;
        padding:12px 16px;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:10px;
        font-weight:900;
        text-decoration:none;
        background:linear-gradient(180deg,#191d1f,#101314);
        color:#fff;
        border:1px solid rgba(255,255,255,.10);
        box-shadow:0 10px 20px rgba(0,0,0,.28);
      }

      .mobileTopPill.more{background:linear-gradient(180deg,#ffe65d,#ffd400);color:#151515}
      .mobileTopPill.call{background:linear-gradient(180deg,#8f1515,#611010);justify-content:flex-start;padding-left:16px}
      .mobileTopPill .icon{width:26px;height:26px;display:flex;align-items:center;justify-content:center;flex:0 0 26px}
      .mobileTopPill .icon svg{width:24px;height:24px}

      .mobileCallText{
        display:flex;
        flex-direction:column;
        line-height:1.05;
        text-align:left;
      }

      .mobileCallLine1,.mobileCallLine2{display:block;font-size:18px;font-weight:900}

      .mobileMoreMenu{
        position:absolute;
        top:calc(100% + 10px);
        left:0;
        width:min(92vw,420px);
        background:linear-gradient(180deg,#121617,#0d1112);
        border:1px solid rgba(255,255,255,.08);
        border-radius:22px;
        padding:14px;
        box-shadow:0 24px 50px rgba(0,0,0,.42);
        opacity:0;
        visibility:hidden;
        transform:translateY(8px);
        transition:all .2s ease;
        z-index:80;
      }

      .mobileMoreWrap.open .mobileMoreMenu{opacity:1;visibility:visible;transform:translateY(0)}
      .mobileMoreMenu .heroMegaGrid{grid-template-columns:1fr}
      .mobileSpacer{display:block;height:8px}

      .heroTop{padding:14px 14px 6px}
      .heroLogoGlow{min-height:auto;margin-bottom:10px}
      .heroLogoGlow::before{inset:8px 12% 0;filter:blur(18px)}
      .heroLogoGlow::after,.heroNavRow,.desktopBookingLine{display:none}
      .heroLogoGlow img{width:330px;max-width:94%}

      .landingHero{grid-template-columns:1fr;padding:0 14px 14px;gap:16px}
      .heroPill{font-size:11px;min-height:36px;padding:8px 12px}
      h1{font-size:34px}
      .heroLead,.sectionLead{font-size:16px}

      .actionRow,.contactCtas,.ramboMiniActions,.singleMapActions{flex-direction:column}
      .heroCallWrap{width:100%;align-items:stretch}
      .heroCallWrap .tinyNote{text-align:center}
      .pillBtn,.miniBtn,.downloadBtn,.footerCallCta{width:100%}
      .statsRow,.benefitGrid,.featureGrid,.galleryGrid,.timeGrid,.hoursGrid,.seoLinkGrid{grid-template-columns:1fr}
      .rentalImageLarge{grid-column:auto;grid-row:auto;min-height:280px}
      .section{padding:18px 14px;margin:16px auto}
      .infoCard summary{padding:15px 16px}
      .footerTop{padding:20px 14px}
      .mobileBookingLine{display:block}
      .mobileBookingLine .footerReserveLabel{display:block;margin-bottom:12px}
      .footerBottom{padding:14px 14px 18px}
      .singleMapFrame{height:250px}
    }
  

/* DESKTOP REBUILD MASTER â€” prices.htm + hydro.htm visual standard
   IMPORTANT: all existing mobile navigation/layout rules remain untouched. */
.desktopRebuildOnly{display:none}
@media screen and (min-width:901px){
 :root{--max:1400px!important;--maxw:1400px!important}
 body{
   background:radial-gradient(circle at top,rgba(19,70,22,.45),transparent 28%),linear-gradient(180deg,#060707 0,#0a0d0d 45%,#0b0f10 100%)!important;
   color:#f5f7f7!important;
 }
 .wrap,.heroShell{
   width:min(calc(100% - 24px),1400px)!important;max-width:1400px!important;
   margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;
 }
 .heroWrap{padding:16px 0 18px!important}
 .heroShell{
   background:radial-gradient(circle at 50% 12%,rgba(49,255,87,.34) 0,rgba(49,255,87,.18) 18%,rgba(255,212,0,.08) 30%,transparent 46%),linear-gradient(180deg,rgba(9,11,12,.985),rgba(5,6,7,.985))!important;
   border:1px solid rgba(255,255,255,.08)!important;border-radius:28px!important;overflow:visible!important;
   box-shadow:0 0 0 1px rgba(255,255,255,.03) inset,0 22px 55px rgba(0,0,0,.52)!important;position:relative!important;
 }
 .heroTop{padding:18px 22px 8px!important;text-align:center!important}
 .heroLogo{display:flex!important;justify-content:center!important;align-items:center!important;margin:0 auto 14px!important}
 .heroLogoGlow{position:relative!important;min-height:220px!important}
 .heroLogoGlow:before{
   content:"";position:absolute;left:16%;right:16%;top:12px;bottom:12px;
   background:radial-gradient(circle,rgba(49,255,87,.60) 0,rgba(49,255,87,.34) 24%,rgba(49,255,87,.15) 42%,transparent 68%);
   filter:blur(24px);z-index:0;pointer-events:none;
 }
 .heroLogoGlow img{position:relative!important;z-index:1!important;width:560px!important;max-width:92%!important;height:auto!important;
   filter:drop-shadow(0 0 10px rgba(255,212,0,.34)) drop-shadow(0 0 22px rgba(51,255,90,.58)) drop-shadow(0 0 52px rgba(51,255,90,.34))!important}
 .heroPill{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:10px 22px!important;
   border-radius:999px!important;background:rgba(16,17,17,.92)!important;color:#ffd400!important;border:1px solid rgba(255,212,0,.22)!important;
   font-size:14px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.08em!important}
 .heroNavRow{padding:0 22px 22px!important;position:relative!important;z-index:500!important}
 .heroNavGrid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important}
 .heroBtn,.heroNavBox{min-width:0!important}
 .heroBtn{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:58px!important;min-height:58px!important;
   padding:14px 18px!important;border-radius:18px!important;text-decoration:none!important;background:linear-gradient(180deg,#121617,#0c0f10)!important;
   border:1px solid rgba(255,255,255,.10)!important;color:#fff!important;font-weight:800!important;font-size:16px!important;text-align:center!important;
   box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 10px 20px rgba(0,0,0,.22)!important;box-sizing:border-box!important}
 .heroBtn.red{color:#fff!important;background:linear-gradient(180deg,#7f1111,#541010)!important}
 .heroBtn.yellow{color:#171717!important;background:linear-gradient(180deg,#ffe65d,#ffd400)!important}
 .heroNavBox{position:relative!important;display:block!important;z-index:700!important}
 .heroQuickLinks{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin:14px auto 0!important;
   padding:10px 12px!important;width:100%!important;max-width:1120px!important;border-radius:18px!important;
   background:linear-gradient(180deg,rgba(7,9,9,.99),rgba(8,11,11,.99))!important;border:1px solid rgba(255,255,255,.08)!important;
   box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 12px 24px rgba(0,0,0,.24)!important}
 .quickBtn{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:11px 20px!important;
   border-radius:14px!important;text-decoration:none!important;background:linear-gradient(180deg,#131719,#0d1112)!important;border:1px solid rgba(255,255,255,.10)!important;
   font-size:15px!important;font-weight:900!important;text-align:center!important;box-sizing:border-box!important}
 main.wrap{padding-left:22px!important;padding-right:22px!important}
 main.wrap>section,main.wrap>.section,main.wrap>.contentCard,main.wrap>.panel{
   border-radius:22px;
 }
 .desktopRebuildOnly{display:block!important}
}


/* exactPricesHydroDesktopTemplate â€” desktop only */
.exactDesktopHero{display:none}
@media screen and (min-width:901px){
 .exactDesktopHero{display:block!important}
 :root{--max:1400px!important;--maxw:1400px!important}
 body{background:radial-gradient(circle at top,rgba(19,70,22,.45),transparent 28%),linear-gradient(180deg,#060707 0,#0a0d0d 45%,#0b0f10 100%)!important;color:#f5f7f7!important}
 .heroWrap{padding:16px 0 18px!important}
 .heroShell,.wrap{width:min(calc(100% - 24px),1400px)!important;max-width:1400px!important;margin:0 auto!important;box-sizing:border-box!important}
 .heroShell{background:radial-gradient(circle at 50% 12%,rgba(49,255,87,.34) 0,rgba(49,255,87,.18) 18%,rgba(255,212,0,.08) 30%,transparent 46%),linear-gradient(180deg,rgba(9,11,12,.985),rgba(5,6,7,.985))!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:28px!important;overflow:visible!important;box-shadow:0 0 0 1px rgba(255,255,255,.03) inset,0 22px 55px rgba(0,0,0,.52)!important;position:relative!important}
 .heroTop{padding:18px 22px 8px!important;text-align:center!important}
 .heroLogo{display:flex!important;justify-content:center!important;align-items:center!important;margin:0 auto 14px!important}
 .heroLogoGlow{position:relative!important;min-height:220px!important}
 .heroLogoGlow:before{content:"";position:absolute;left:16%;right:16%;top:12px;bottom:12px;background:radial-gradient(circle,rgba(49,255,87,.60) 0,rgba(49,255,87,.34) 24%,rgba(49,255,87,.15) 42%,transparent 68%);filter:blur(24px);z-index:0;pointer-events:none}
 .heroLogoGlow img{position:relative!important;z-index:1!important;width:620px!important;max-width:92%!important;height:260px!important;object-fit:contain!important;filter:drop-shadow(0 0 10px rgba(255,212,0,.34)) drop-shadow(0 0 22px rgba(51,255,90,.58)) drop-shadow(0 0 52px rgba(51,255,90,.34))!important}
 .heroPill{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:10px 22px!important;border-radius:999px!important;background:rgba(16,17,17,.92)!important;color:#ffd400!important;border:1px solid rgba(255,212,0,.22)!important;font-size:14px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.08em!important}
 .heroNavRow{padding:0 22px 22px!important;position:relative!important;z-index:500!important}
 .heroNavGrid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important}
 .heroBtn,.heroNavBox{min-width:0!important}
 .heroBtn{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:58px!important;min-height:58px!important;padding:14px 18px!important;border-radius:18px!important;text-decoration:none!important;background:linear-gradient(180deg,#121617,#0c0f10)!important;border:1px solid rgba(255,255,255,.10)!important;color:#fff!important;font-weight:800!important;font-size:16px!important;text-align:center!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 10px 20px rgba(0,0,0,.22)!important;box-sizing:border-box!important}
 .heroBtn.red{background:linear-gradient(180deg,#7f1111,#541010)!important;color:#fff!important}
 .heroBtn.yellow{background:linear-gradient(180deg,#ffe65d,#ffd400)!important;color:#171717!important}
 .heroNavBox{position:relative!important;z-index:700!important}
 .heroMoreMenu{position:absolute!important;top:calc(100% + 12px)!important;right:0!important;width:860px!important;max-width:min(860px,calc(100vw - 40px))!important;padding:18px!important;border-radius:22px!important;background:linear-gradient(180deg,rgba(20,24,25,.98),rgba(8,11,12,.98))!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 24px 60px rgba(0,0,0,.58)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:9999!important}
 .heroNavBox:hover .heroMoreMenu,.heroNavBox:focus-within .heroMoreMenu,.heroMoreMenu:hover{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
 .heroMoreMenu:before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
 .heroMegaGrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
 .heroMegaGrid>div{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02))!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:18px!important;padding:16px!important}
 .heroMegaTitle{color:#ffd400!important;font-size:13px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important;margin:0 0 10px!important}
 .heroMegaGrid a{display:block!important;text-decoration:none!important;color:#edf2f2!important;padding:10px 0!important;border-top:1px solid rgba(255,255,255,.06)!important}
 .heroQuickLinks{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin:14px auto 0!important;padding:10px 12px!important;width:100%!important;max-width:1120px!important;border-radius:18px!important;background:linear-gradient(180deg,rgba(7,9,9,.99),rgba(8,11,11,.99))!important;border:1px solid rgba(255,255,255,.08)!important}
 .quickBtn{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:11px 20px!important;border-radius:14px!important;text-decoration:none!important;background:linear-gradient(180deg,#131719,#0d1112)!important;border:1px solid rgba(255,255,255,.10)!important;font-size:15px!important;font-weight:900!important;text-align:center!important}
 .landingHero{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr)!important;gap:28px!important;align-items:center!important;padding:4px 22px 28px!important}
 .landingLeft{padding:16px 0 10px!important}
 .eyebrow{color:#31ff57!important;font-size:14px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important;margin-bottom:8px!important}
 .landingLeft h1{font-size:clamp(42px,4vw,64px)!important;line-height:1.02!important;margin:0 0 18px!important;color:#fff!important;letter-spacing:-.025em!important}
 .heroLead{font-size:18px!important;line-height:1.55!important;color:#e8eded!important;max-width:760px!important}
 .heroTrust{font-size:15px!important;font-weight:800!important;color:#fff!important;margin:18px 0!important}
 .actionRow{display:flex!important;gap:12px!important;flex-wrap:wrap!important}
 .pillBtn,.miniBtn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding:11px 18px!important;border-radius:14px!important;text-decoration:none!important;background:linear-gradient(180deg,#15191a,#0d1112)!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important;font-weight:900!important}
 .landingRight{min-width:0!important}
 .templateHeroCard{overflow:hidden!important;border-radius:24px!important;background:linear-gradient(180deg,#111617,#0a0d0e)!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 18px 42px rgba(0,0,0,.38)!important}
 .templateCardStripe{padding:12px 18px!important;text-align:center!important;background:rgba(255,212,0,.16)!important;color:#ffd400!important;font-size:13px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.05em!important}
 .templateCardHead{padding:16px 22px!important;text-align:center!important}
 .templateCardHead h3{font-size:24px!important;margin:0 0 8px!important;color:#fff!important}
 .templateCardHead p{margin:0!important;color:#d8e0e0!important}
 .templateVisual{padding:12px 18px!important}
 .templateVisual img{display:block!important;width:100%!important;max-height:390px!important;object-fit:cover!important;border-radius:16px!important}
 .templateCardBottom{padding:12px 18px 18px!important}
 body>.legacyDesktopTop{display:none!important}
}


@media screen and (min-width:901px){
  /* Match the top hero box to the visible width of the content boxes below.
     Mobile remains unchanged. */
  #exactDesktopTemplateHero .heroShell{
    width:min(calc(100% - 68px),1356px)!important;
    max-width:1356px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


@media screen and (min-width:901px){
  .heroShell{
    width:min(calc(100% - 68px),1356px)!important;
    max-width:1356px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }
}


@media screen and (max-width:900px){
  /* LOW-IMPACT STYLE MOBILE CANVAS â€” continuous color farther down page */
  html,body{
    margin:0!important;
    padding:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    background:
      radial-gradient(circle at 50% 0,rgba(26,93,31,.48) 0,rgba(10,35,13,.30) 26%,transparent 52%),
      linear-gradient(180deg,#061008 0%,#080c0d 42%,#080c0d 100%)!important;
  }

  /* PARTY13 visible mobile top â€” edge-to-edge, logo retained at top */
  body > .wrap.legacyDesktopTop{
    width:100vw!important;
    max-width:100vw!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
  }
  body > .wrap.legacyDesktopTop > .masthead{
    width:100vw!important;
    max-width:100vw!important;
    margin:0!important;
    padding:18px 12px 26px!important;
    border-left:0!important;
    border-right:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body > .wrap.legacyDesktopTop > .masthead::before,
  body > .wrap.legacyDesktopTop > .masthead::after{display:none!important}

  body > .wrap.legacyDesktopTop .mastheadInner{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  body > .wrap.legacyDesktopTop .mainLogo{
    display:block!important;
    width:min(92vw,620px)!important;
    max-width:none!important;
    margin:0 auto 18px!important;
  }
  body > .wrap.legacyDesktopTop .mainLogo img{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }

  /* Continue the same mobile canvas down the page instead of switching to narrow black rails */
  body main#main-content.wrap{
    width:100vw!important;
    max-width:100vw!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
  }
  body main#main-content.wrap > section,
  body main#main-content.wrap > .introBlock,
  body main#main-content.wrap > .faqWrap,
  body main#main-content.wrap > .locationSection,
  body main#main-content.wrap > .packagesWrap,
  body main#main-content.wrap > .gallerySection,
  body main#main-content.wrap > .corporateWrap,
  body main#main-content.wrap > .lowImpactPromise{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:12px!important;
    padding-right:12px!important;
    box-sizing:border-box!important;
    background:transparent!important;
  }

  /* IMPORTANT: mobile must show the SAME Party13 images as desktop without fixed-height
     crop/constrain rules.  Keep the existing src attributes; only restore natural aspect ratio. */
  body main#main-content.wrap .galleryGrid{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  body main#main-content.wrap .galleryCard{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    overflow:hidden!important;
  }
  body main#main-content.wrap .galleryImage{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    background:#000!important;
  }
  body main#main-content.wrap .galleryImage img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
  }

  /* Same treatment for package/corporate imagery so mobile doesn't crop a different-looking view. */
  body main#main-content.wrap .packageImage,
  body main#main-content.wrap .corporateFeatureMedia{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  body main#main-content.wrap .packageImage img,
  body main#main-content.wrap .corporateFeatureMedia img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
    transform:none!important;
  }

  /* locked mobile controls */
  .pp6028Bar{width:100vw!important;max-width:100vw!important;margin:0!important}
}


@media screen and (max-width:900px){
  body > .ppLegacyPreMainRetired{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;}
  #ppMobileHeaderAuthority{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;background:radial-gradient(ellipse 105% 78% at 50% 16%,#35d64a 0%,#24b83a 18%,#16852a 40%,#0f641f 62%,#0a4917 82%,#07340f 100%)!important;margin:0!important;padding:0 14px 8px!important;}
  #ppMobileHeaderAuthority .ppMobileMasterLogo{display:block!important;width:100%!important;max-width:409px!important;margin:0 auto 8px!important;padding:0!important;line-height:0!important;}
  #ppMobileHeaderAuthority .ppMobileMasterLogo img{display:block!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;transform:none!important;object-fit:contain!important;}
  #ppMobilePillAuthority{box-sizing:border-box!important;width:100%!important;max-width:380px!important;margin:0 auto!important;padding:10px 14px!important;border:2px solid rgba(255,212,0,.48)!important;border-radius:999px!important;background:#000!important;color:#ffd400!important;font-family:Arial,Helvetica,sans-serif!important;font-size:13px!important;font-weight:900!important;letter-spacing:1px!important;line-height:1.35!important;text-align:center!important;text-transform:uppercase!important;}
  body > main,body > main.wrap,body > main#main-content{margin-top:0!important;padding-top:0!important;}
  body > main > :first-child{margin-top:8px!important;}
  .ppMobileRedundantEyebrow{display:none!important;}
}
@media screen and (min-width:901px){body > .ppLegacyPreMainRetired{display:block;}#ppMobileHeaderAuthority,.pp6028Bar{display:none!important;}}

