@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400..900&display=swap');

.v2_page.pagewrap { display: flex; width: 100%; min-height: 100vh; flex-direction: column; justify-content: space-between; }
.v2_page.pagewrap > div, .v2_page.pagewrap > header, .v2_page.pagewrap > footer, .v2_page.pagewrap > main { width: 100%; }

.grow { flex-grow: 1; }


.rrv5 .menu-main-menu-container ul.menu { list-style: none; display: flex; font-size: 1rem; font-family: "Orbitron", sans-serif; font-weight: 400; color: #ffffff; justify-content: flex-end; gap: 0;  padding: 0; margin: 0; }
.rrv5 .menu-main-menu-container ul.menu li { padding: 0; margin: 0; }
.rrv5 .menu-main-menu-container ul.menu li a { color: inherit; text-transform: uppercase; text-shadow: 5px 5px 8px rgb(6, 59, 59, 0.5); padding: 10px 12px; border-radius: 4px; transition: background-color 0.3s, color 0.3s; }
.rrv5 .menu-main-menu-container ul.menu li a:hover { background-color: rgba(0, 255, 255, 0.2); color: #00ffff; }
.rrv5 .menumainres .menu-main-menu-container ul.menu { list-style: none; display: flex; flex-direction: column; align-items: flex-end; gap: 25px; padding-right: 15px; }
#v2-main-menu-res-panel, #v2-btnclosemenu { opacity: 0; visibility: hidden; transition: all 0.3s ease; }
#v2-main-menu-res-panel.show-menu, #v2-btnclosemenu.show-btn { opacity: 1; visibility: visible; }
.cursor_pointer { cursor: pointer; }

.v2_aboutcolblk { max-width: 980px; width: 100%; }
.title_vertical { writing-mode: vertical-rl; text-orientation: upright; }
.v2_titlebackblk1 { height: 100%; }
.v2_servblk { max-width: 450px; }

.v2_footerlinks ul { list-style: none; display: flex; font-size: 1rem; color: #ffffff; justify-content: flex-end; gap: 10px; padding: 0; margin: 0; }
.v2_footerlinks ul li a { color: inherit; }


/* PAGES */
.elementor-element .elementor-element-62567e5 { position: static; }
.hidden { visibility: hidden; }

.v2hd { font-family: "Orbitron", sans-serif; }

/* V2 Page Header */
.v2_page.pagewrap .v2pageheader { background: url(https://rodrivz.com/wp-content/uploads/2025/11/v5_herobg.webp) top center no-repeat; background-size: cover; }
.v2pageheader .wrapcontent { display: flex; width: 100%; flex-direction: column; gap: 25px; }
.v2pageheader .is-menu-open.is-menu-open#modal-1 { color: #fff; padding: 20px; background-color: #06366c; }
.v2pageheader .is-menu-open.is-menu-open#modal-1 ul { gap: 10px }
.v2pageheader .is-menu-open.is-menu-open#modal-1 ul li a { padding: 2px 10px; }
.v2headertxtlogo a { text-decoration: none; }
.v2mainmenu { font-size: 1rem; text-transform: uppercase; }
.v2mainmenu li { padding: 0; margin: 0;}
.v2mainmenu li a { color: inherit; text-transform: uppercase; text-shadow: 5px 5px 8px rgb(6, 59, 59, 0.5); padding: 10px 12px; border-radius: 4px; transition: background-color 0.3s, color 0.3s; }
.wp-block-navigation.v2mainmenu li a:hover { background-color: rgba(0, 255, 255, 0.2); color: #00ffff; }
.v2headertxtlogo { font-size: 1.25rem; }
.v2pageheader h1 { display: flex; font-size: 5.25rem; font-weight: 900; color:#00ffff; text-transform: uppercase; justify-content: center; align-items: flex-start; gap: 4px; }
.v2pageheader h1::before { content: "“"; }
.v2pageheader h1::after { content: "”"; }
.v2pageheader h3 { font-size: 1.5rem; font-weight: 400; }

/* V2 Page Footer */
footer.v2footer { background: url(https://rodrivz.com/wp-content/uploads/2025/11/v2_do_bg2.webp) center top no-repeat; background-size: cover; }

/* EFFECTS */
#particleWrapper { width: 100%; height: 100%; position: relative; overflow: hidden; z-index: 4; }
#particleCanvas { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; z-index: 5; }
.elementor-element.elementor-element-62567e5.elementor-widget.elementor-widget-html { width: 100%; position: absolute;z-index: 3; top: 0; left: 0; }

/* Line Separator Glow effect */
.glow-container { display: flex; justify-content: center; align-items: center; width: 100%; position: relative; overflow: hidden; }
.glow-line { width: 100%; max-width: 884px; height: 28px; background: url(https://rodrivz.com/wp-content/uploads/2025/11/glow01.webp) no-repeat center; background-size: cover; animation: glowPulse 8s ease-in-out infinite; opacity: 0.9; }
@keyframes glowPulse {
  0% {
    filter: brightness(1) blur(0px);
    opacity: 0.9;
    transform: scale(1);
  }
  25% {
    filter: brightness(1) blur(0px);
    opacity: 0.58;
    transform: scale(0.75);
  }
  50% {
    filter: brightness(2.2) blur(2px);
    opacity: 0.9;
    transform: scale(1.4);
  }
  75% {
    filter: brightness(1) blur(0px);
    opacity: 0.58;
    transform: scale(0.75);
  }
  100% {
    filter: brightness(1) blur(0px);
    opacity: 0.9;
    transform: scale(1);
  }
}
/* Sparkling particles included with the glow effect */
.particle1 { width: 2px; height: 2px; background: rgba(0, 191, 255, 0.8); position: absolute;  border-radius: 50%; animation: twinkle 4s infinite ease-in-out; }
@keyframes twinkle {
0%, 100% { opacity: 0.2; transform: scale(1); }
50% { opacity: 1; transform: scale(1.5); }
}

/* Sparkling particles */
#particles-container { max-width: none; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 2; pointer-events: none; overflow: hidden; }
.particle { position: absolute; background: rgba(0, 255, 255, 0.8); border-radius: 50%; filter: drop-shadow(0 0 6px rgba(0, 255, 255, 0.8)); animation: floatMove 10s infinite ease-in-out; }
@keyframes floatMove {
  0% {
    transform: translate(0, 0) scale(1);
    opacity: 0.8;
  }
  25% {
    transform: translate(10px, -20px) scale(1.1);
    opacity: 0.9;
  }
  50% {
    transform: translate(-10px, 15px) scale(0.95);
    opacity: 0.7;
  }
  75% {
    transform: translate(15px, 10px) scale(1.05);
    opacity: 0.85;
  }
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 0.8;
  }
}



@media screen and (max-width: 767px) {
  .title_vertical { writing-mode: horizontal-tb; text-orientation: mixed; }
}

@media screen and (max-width: 500px){
  /* v2 page header */
  .v2pageheader h1 { font-size: 4rem; margin-bottom: 0; }
  .v2pageheader h3 { font-size: 1.25rem; }
}
@media screen and (max-width: 400px){
  /* v2 page header */
  .v2pageheader h1 { font-size: 3rem; }
  .v2pageheader h3 { font-size: 1.125rem; }
}
