:root{--bg:#0d0806;--bg2:#160e0a;--pink:#e8301f;--cyan:#f2c93a;--gold:#ffd45e;--tx:#fff6e3;--mu:#c9b8a6;--ac:#e8301f;--r:22px}
*{box-sizing:border-box}
.rt-body{margin:0;background:var(--bg);color:var(--tx);font-family:'Outfit',system-ui,sans-serif;font-size:17px;line-height:1.6;overflow-x:hidden}
.rt-body #page-container,.rt-body #main-header,.rt-body #et-top-navigation{display:none!important}
.rt-body a{color:inherit;text-decoration:none}
.rt-body h1,.rt-body h2,.rt-body h3,.rt-body h4{font-family:'Unbounded','Outfit',sans-serif;margin:0 0 .4em;color:var(--tx);line-height:1.1}
.rt-body em{font-style:normal;background:linear-gradient(90deg,var(--pink),var(--cyan),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200%;animation:rtShift 6s linear infinite}
@keyframes rtShift{to{background-position:200% 0}}
.rt-wrap{max-width:1200px;margin:0 auto;padding:0 22px}.rt-narrow{max-width:860px}.rt-center{text-align:center}
[hidden]{display:none!important}

/* nav */
.rt-nav{position:fixed;top:0;left:0;right:0;z-index:999;display:flex;align-items:center;justify-content:space-between;padding:14px 28px;transition:.3s}
.admin-bar .rt-nav{top:32px}
.rt-nav.sc{background:rgba(7,5,15,.88);backdrop-filter:blur(14px);box-shadow:0 8px 30px #0008}
.rt-logo{display:flex;align-items:center;gap:10px;font-weight:300;font-size:15px}.rt-logo b{font-weight:800}
.rt-logo-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--pink),var(--cyan));color:#0d0806;font-weight:800;font-family:'Unbounded'}
.rt-links{display:flex;align-items:center;gap:22px;font-weight:600;font-size:15px}
.rt-links a:not(.rt-btn):hover{color:var(--cyan)}.rt-links small{display:block;font-size:10px;color:var(--cyan);margin-top:-6px;letter-spacing:.1em;text-transform:uppercase}
.rt-burger{display:none;background:none;border:0;cursor:pointer;padding:6px}.rt-burger i{display:block;width:26px;height:3px;background:#fff;margin:5px 0;border-radius:2px}

/* buttons */
.rt-btn{display:inline-block;border:0;cursor:pointer;font:700 16px 'Outfit';padding:14px 28px;border-radius:999px;transition:.25s;position:relative;color:#fff!important}
.rt-btn-hot{background:linear-gradient(135deg,var(--pink),#a3180e);box-shadow:0 0 0 0 #e8301f80,0 10px 30px #e8301f55;animation:rtPulse 2.4s infinite}
.rt-btn-cyan{background:linear-gradient(135deg,var(--cyan),#d9a416);box-shadow:0 10px 30px #f2c93a55}
.rt-btn-ghost{background:#ffffff10;border:2px solid #ffffff40;backdrop-filter:blur(8px)}
.rt-btn:hover{transform:translateY(-3px) scale(1.04)}
.rt-xl{font-size:19px;padding:18px 38px}.rt-sm{padding:10px 20px;font-size:14px}.rt-block{display:block;width:100%;margin-top:16px;font-size:18px}
@keyframes rtPulse{70%{box-shadow:0 0 0 18px #e8301f00,0 10px 30px #e8301f55}100%{box-shadow:0 0 0 0 #e8301f00,0 10px 30px #e8301f55}}

/* hero */
.rt-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;
  background:radial-gradient(ellipse at 20% 20%,#5a120a,transparent 55%),radial-gradient(ellipse at 80% 30%,#3d2a06,transparent 55%),linear-gradient(#100907,#0d0806)}
.rt-hero.rt-mini{min-height:48vh}
#rtFx{position:absolute;inset:0;width:100%;height:100%}
.rt-beams{position:absolute;inset:-20%;background:conic-gradient(from 0deg at 50% 100%,transparent 0 10%,#e8301f33 14%,transparent 18% 30%,#f2c93a33 34%,transparent 38% 55%,#ffd45e2a 59%,transparent 63% 80%,#a3180e44 84%,transparent 88%);animation:rtSpin 16s linear infinite alternate;mix-blend-mode:screen;transform-origin:50% 100%}
@keyframes rtSpin{from{transform:rotate(-12deg)}to{transform:rotate(12deg)}}
.rt-hero-in{position:relative;z-index:3;padding:130px 22px 190px;max-width:980px}
.rt-hero h1{font-size:clamp(40px,8vw,104px);text-shadow:0 0 40px #e8301f66;font-weight:800}
.rt-kicker{letter-spacing:.35em;text-transform:uppercase;font-size:13px;color:var(--cyan);font-weight:600}
.rt-sub{font-size:clamp(17px,2vw,21px);color:#f0e3d0;max-width:720px;margin:14px auto 32px}
.rt-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.rt-note{margin-top:22px;font-size:14px;color:var(--gold)}
.rt-calls{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin-top:10px;font-weight:700}.rt-calls a:hover{color:var(--cyan)}
.rt-city-hero .rt-sky{position:absolute;bottom:60px;left:0;width:100%;height:46%;color:#1b100b;opacity:.95;z-index:1;filter:drop-shadow(0 0 22px var(--ac))}
.rt-road{position:absolute;bottom:0;left:0;right:0;height:78px;z-index:2;overflow:visible}
.rt-road-bed{position:absolute;inset:0;overflow:hidden;background:#120b08;border-top:3px solid #ffffff22}
.rt-line{position:absolute;top:50%;left:0;width:200%;height:5px;background:repeating-linear-gradient(90deg,#ffd45e 0 40px,transparent 40px 90px);animation:rtRoad 1.2s linear infinite}
@keyframes rtRoad{to{transform:translateX(-90px)}}
.rt-bus-drive{position:absolute;bottom:55px;left:-420px;width:clamp(230px,28vw,380px);z-index:3;animation:rtDrive 14s linear infinite;filter:drop-shadow(0 0 18px var(--pink))}
@keyframes rtDrive{to{left:108%}}
.rt-bus{width:100%;height:auto;display:block}
.rt-wheel{transform-box:fill-box;transform-origin:center;animation:rtWheel .6s linear infinite}@keyframes rtWheel{to{transform:rotate(360deg)}}

/* marquee */
.rt-marquee{background:linear-gradient(90deg,var(--pink),#a3180e,var(--cyan));overflow:hidden;white-space:nowrap;padding:14px 0;font:800 20px 'Unbounded';color:#0d0806}
.rt-marquee div{display:inline-block;animation:rtMar 28s linear infinite}@keyframes rtMar{to{transform:translateX(-50%)}}

/* sections */
.rt-sec{padding:100px 0;position:relative}.rt-dark{background:var(--bg2)}
.rt-h{font-size:clamp(30px,5vw,56px);text-align:center;margin-bottom:.3em;font-weight:800}
.rt-lead{text-align:center;color:var(--mu);max-width:700px;margin:0 auto 44px}
.rt-reveal{opacity:0;transform:translateY(40px);transition:opacity .8s,transform .8s}.rt-reveal.in{opacity:1;transform:none}
.rt-tilt{transition:transform .2s ease-out;transform-style:preserve-3d}

/* locations */
.rt-loc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;margin-top:40px}
.rt-loc{position:relative;min-height:360px;border-radius:var(--r);overflow:hidden;display:flex;align-items:flex-end;padding:30px;background:linear-gradient(160deg,#2a1711,#0d0806);border:2px solid color-mix(in srgb,var(--ac) 60%,transparent);box-shadow:0 0 40px color-mix(in srgb,var(--ac) 30%,transparent)}
.rt-loc .rt-sky{position:absolute;bottom:0;left:0;width:100%;height:70%;color:color-mix(in srgb,var(--ac) 35%,#1b100b);transition:.5s}
.rt-loc:hover .rt-sky{transform:scale(1.08) translateY(-10px);color:color-mix(in srgb,var(--ac) 60%,#1b100b)}
.rt-loc>div{position:relative;z-index:2}.rt-loc h3{font-size:34px}.rt-loc small{color:var(--ac);letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.rt-go{font-weight:800;color:var(--ac)}

/* fleet cards */
.rt-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}
.rt-card{background:linear-gradient(#1f130e,#120b08);border:1px solid #ffffff1a;border-radius:var(--r);overflow:hidden}
.rt-card-img{height:260px;background-size:cover;background-position:center;position:relative}
.rt-card-b{padding:26px}.rt-card-b small{color:var(--cyan);font-weight:700}.rt-card-b h3{font-size:22px}
.rt-price{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,var(--gold),#ff8a3d);color:#0d0806;font-weight:800;padding:8px 16px;border-radius:999px;box-shadow:0 6px 20px #0007;font-size:14px}
.rt-chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 20px}
.rt-chips span{background:#ffffff12;border:1px solid #ffffff22;padding:5px 12px;border-radius:999px;font-size:13px}

/* bus panels */
.rt-bus-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;margin:70px 0}
.rt-bus-panel.rt-flip .rt-bus-photo{order:2}
.rt-bus-photo{position:relative;border-radius:28px;overflow:hidden;border:3px solid transparent;background:linear-gradient(var(--bg),var(--bg)) padding-box,linear-gradient(135deg,var(--pink),var(--cyan),var(--gold)) border-box;box-shadow:0 0 60px #e8301f33}
.rt-bus-photo img{width:100%;height:100%;min-height:340px;object-fit:cover;display:block;transition:transform .8s}
.rt-bus-photo:hover img{transform:scale(1.07)}
.rt-bus-info small{color:var(--pink);letter-spacing:.15em;text-transform:uppercase;font-weight:700}
.rt-bus-info h3{font-size:clamp(26px,3.4vw,40px)}.rt-bus-info p{color:#e3d3bf}
.rt-feat{list-style:none;padding:0;margin:20px 0 26px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rt-feat li{background:#ffffff0d;border:1px solid #ffffff1c;border-radius:14px;padding:12px 14px;display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px}
.rt-feat li span{font-size:22px}.rt-bus-info .rt-cta{justify-content:flex-start}

/* places route */
.rt-route{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-top:20px}
.rt-stop{display:flex;gap:16px;background:#ffffff08;border:1px solid #ffffff18;border-radius:18px;padding:22px;transition:.3s}
.rt-stop:hover{border-color:var(--ac);transform:translateY(-6px);box-shadow:0 14px 40px color-mix(in srgb,var(--ac) 30%,transparent)}
.rt-stop>b{flex:0 0 40px;height:40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--pink),var(--cyan));color:#0d0806;font-family:'Unbounded'}
.rt-stop-c span{font-size:28px}.rt-stop h4{font-size:16px;margin:4px 0}.rt-stop p{margin:0;color:var(--mu);font-size:15px}

/* occasions */
.rt-occ{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;margin-top:40px}
.rt-occ-i{background:linear-gradient(160deg,#2a1711,#120b08);border:1px solid #ffffff1a;border-radius:20px;padding:28px}
.rt-occ-i span{font-size:38px}.rt-occ-i h4{font-size:17px;margin:10px 0 6px}.rt-occ-i p{color:var(--mu);margin:0;font-size:15px}

/* gallery */
.rt-gal{columns:4 240px;column-gap:14px;margin-top:30px}
.rt-gal a{display:block;margin-bottom:14px;border-radius:16px;overflow:hidden;break-inside:avoid;position:relative}
.rt-gal img{width:100%;display:block;transition:.6s}.rt-gal a:hover img{transform:scale(1.1) rotate(1deg);filter:saturate(1.3)}
.rt-lb{position:fixed;inset:0;background:#000d;z-index:2000;display:grid;place-items:center;cursor:zoom-out}.rt-lb img{max-width:92vw;max-height:90vh;border-radius:14px;box-shadow:0 0 80px var(--pink)}

/* pressure washing */
.rt-pw-banner{background:linear-gradient(90deg,#3d2a06,#4a1008);padding:44px 0;border-block:1px solid #f2c93a55}
.rt-pw-banner .rt-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.rt-pw-banner h3{font-size:24px}.rt-pw-banner p{margin:0;color:#fff6e3}
.rt-pw-hero{background:radial-gradient(ellipse at 30% 20%,#3d2a06,transparent 55%),radial-gradient(ellipse at 80% 40%,#4a1008,transparent 55%),#0d0806}
.rt-waves{position:absolute;bottom:0;left:0;right:0;height:120px;z-index:2}
.rt-waves i{position:absolute;bottom:-20px;left:-50%;width:200%;height:100px;border-radius:45%;background:#f2c93a22;animation:rtWave 9s linear infinite}
.rt-waves i:nth-child(2){background:#d9a41622;animation-duration:13s;bottom:-30px}.rt-waves i:nth-child(3){background:#e8301f18;animation-duration:17s;bottom:-40px}
@keyframes rtWave{to{transform:translateX(25%) rotate(360deg)}}
.rt-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin-top:40px}
.rt-step{background:#ffffff08;border:1px solid #f2c93a44;border-radius:20px;padding:28px}.rt-step b{font:800 44px 'Unbounded';color:var(--cyan)}.rt-step p{color:var(--mu);margin:0}

/* scheduler */
.rt-panel{background:linear-gradient(160deg,#2a1711cc,#120b08cc);border:1px solid #ffffff22;border-radius:28px;padding:34px;box-shadow:0 0 70px #e8301f22;backdrop-filter:blur(10px)}
.rt-svc-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.rt-svc{flex:1;min-width:150px;cursor:pointer}.rt-svc input{position:absolute;opacity:0}
.rt-svc span{display:block;text-align:center;padding:16px;border:2px solid #ffffff30;border-radius:16px;font-weight:700;transition:.25s}
.rt-svc input:checked+span{background:linear-gradient(135deg,var(--pink),#a3180e);border-color:transparent;box-shadow:0 8px 28px #e8301f55}
.rt-svc-pressure input:checked+span{background:linear-gradient(135deg,var(--cyan),#d9a416)}
.rt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.rt-full{grid-column:1/-1}
.rt-field label{display:block;font-size:13px;font-weight:700;color:var(--cyan);margin-bottom:6px;letter-spacing:.05em;text-transform:uppercase}
.rt-field input,.rt-field select,.rt-field textarea{width:100%;background:#0d0806;color:#fff;border:1px solid #ffffff30;border-radius:12px;padding:13px 14px;font:inherit;color-scheme:dark}
.rt-field input:focus,.rt-field select:focus,.rt-field textarea:focus{outline:0;border-color:var(--pink);box-shadow:0 0 0 3px #e8301f33}
.rt-hp{position:absolute;left:-9999px}
.rt-avail,.rt-est,.rt-msg{margin-top:14px;font-weight:700;text-align:center}.rt-avail.bad{color:#ff6b6b}.rt-est{color:var(--gold)}.rt-msg.ok{color:#5dffb0;font-size:20px}.rt-msg.er{color:#ff6b6b}
.rt-fine{font-size:14px;color:var(--mu);text-align:center;margin-top:14px}.rt-fine a{color:var(--cyan);text-decoration:underline}

/* modal */
.rt-modal{position:fixed;inset:0;z-index:3000;background:#000c;backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px;overflow:auto;animation:rtFade .3s}
@keyframes rtFade{from{opacity:0}}
.rt-modal-box{position:relative;background:var(--bg2);border:1px solid #ffffff30;border-radius:30px;padding:40px;width:min(980px,100%);max-height:94vh;overflow:auto;box-shadow:0 0 90px #e8301f44}.rt-wide{width:min(860px,100%)}
.rt-x{position:absolute;top:14px;right:18px;background:none;border:0;color:#fff;font-size:38px;cursor:pointer}
.rt-quick{display:flex;gap:14px;align-items:center;justify-content:center;margin-bottom:20px;color:var(--mu)}

/* footer */
.rt-footer{background:#080504;padding:60px 0 30px;border-top:1px solid #ffffff18}
.rt-foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.rt-foot-grid h4{font-size:14px;color:var(--cyan);text-transform:uppercase}.rt-foot-grid a{display:block;color:var(--mu);margin:6px 0}.rt-foot-grid a:hover{color:#fff}
.rt-copy{text-align:center;color:var(--mu);font-size:13px;margin-top:40px}
.rt-sticky{display:none}

@media(max-width:900px){
 .rt-burger{display:block}.rt-links{position:fixed;inset:0 0 0 30%;background:#0d0806f5;flex-direction:column;justify-content:center;gap:26px;font-size:20px;transform:translateX(110%);transition:.4s}.rt-links.open{transform:none}
 .rt-bus-panel,.rt-foot-grid{grid-template-columns:1fr}.rt-bus-panel.rt-flip .rt-bus-photo{order:0}.rt-feat{grid-template-columns:1fr}
 .rt-sticky{display:block;position:fixed;bottom:0;left:0;right:0;z-index:998;padding:10px;background:#0d0806ee}.rt-sticky .rt-btn{display:block;text-align:center}
 .rt-modal-box{padding:28px 18px}.rt-panel{padding:20px}.admin-bar .rt-nav{top:46px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rt-bus-drive{left:6%}.rt-reveal{opacity:1;transform:none}}
/* ---- brand: R-Team logo ---- */
.rt-nav{padding:8px 28px}.rt-logo{font-size:0}
.rt-nav-logo{height:68px;width:auto;display:block;filter:drop-shadow(0 4px 14px #000a);transition:.3s}.rt-nav.sc .rt-nav-logo{height:56px}
.rt-foot-logo{height:110px;width:auto;display:block;margin-bottom:10px}
.rt-hero-logo{display:block;width:min(440px,72vw);height:auto;margin:0 auto 8px;filter:drop-shadow(0 0 34px #e8301f77) drop-shadow(0 10px 30px #000);animation:rtFloat 5s ease-in-out infinite}
.rt-hero-logo.sm{width:min(250px,56vw)}
@keyframes rtFloat{50%{transform:translateY(-9px)}}
.rt-hero-in{padding-top:110px}
.rt-h::after{content:"✦";display:block;color:var(--cyan);font-size:22px;margin-top:10px;text-shadow:0 0 18px var(--cyan)}
.rt-kicker{color:var(--cyan)}
.rt-body ::selection{background:var(--pink);color:#fff}
@media(max-width:900px){.rt-nav-logo{height:54px}.rt-hero-in{padding-top:96px}}
.rt-hero h1{font-size:clamp(30px,4.1vw,54px)}
.rt-hero-in{padding:88px 22px 172px;max-width:1120px}
.rt-hero-logo{width:auto;height:clamp(120px,26vh,240px);max-width:80vw}
.rt-hero-logo.sm{height:clamp(90px,17vh,160px)}
.rt-sub{margin:8px auto 20px}.rt-note{margin-top:12px}.rt-calls{margin-top:6px}
.rt-links small{display:inline;margin:0 0 0 6px}
@media(max-width:900px){.rt-hero-in{padding:84px 18px 170px}.rt-hero-logo{height:clamp(110px,22vh,190px)}}


/* ---- pressure washing keeps a water-blue accent ---- */
.rt-pw-hero{background:radial-gradient(ellipse at 30% 20%,#0a4a6e,transparent 55%),radial-gradient(ellipse at 80% 40%,#0e2a5a,transparent 55%),#0d0806}
.rt-pw-hero .rt-kicker{color:#3ec9ff}
.rt-pw-hero em{background:linear-gradient(90deg,#3ec9ff,#2b7aff,#fff6e3);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200%}
.rt-btn-cyan{background:linear-gradient(135deg,#3ec9ff,#2b7aff);box-shadow:0 10px 30px #3ec9ff55}
.rt-pw-banner{background:linear-gradient(90deg,#06324a,#0e2a5a);border-block:1px solid #3ec9ff55}
.rt-pw-banner p{color:#d8f3ff}
.rt-step{border-color:#3ec9ff44}.rt-step b{color:#3ec9ff}
.rt-svc-pressure input:checked+span{background:linear-gradient(135deg,#3ec9ff,#2b7aff)}
.rt-waves i{background:#3ec9ff22}.rt-waves i:nth-child(2){background:#2b7aff22}.rt-waves i:nth-child(3){background:#e8301f18}

