/*!
Theme Name: riteway
Theme URI: https://them.es/starter
Author: them.es
Author URI: https://them.es/
Description: 
Version: 3.6.1
Requires at least: 5.0
Tested up to: 6.8
Requires PHP: 7.2
License: GPL version 2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0
Tags: custom-background, custom-colors, featured-images, flexible-header, microformats, post-formats, rtl-language-support, theme-options, translation-ready, accessibility-ready
Text Domain: riteway
*/

/* Don't overwrite this file. Compile "/assets/main.scss" to "/build/main.css" */

/* From http://codex.wordpress.org/CSS */

body, h1, h2, h3, h4, h5, h6, p, a, span {
  font-family: "Rubik" !important;
}
body {
    position: relative;
}
a:hover {
    text-decoration: underline;
    transition: 0.5s !important;
}
* {
	padding: 0;
	margin: 0;
}
.common-pd {
	padding: 70px 0;
}
h2 {
    font-size: 35px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
}
p {
	font-size: 18px !important;
	font-weight: 400 !important;
}
header {
    padding: 30px 0;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 9999;
    background-color: #fff;
}
header .header-logo img {
    width: 100%;
    height: auto;
}

header .row {
    align-items: center;
}
header .nav ul {
    display: flex !important;
    flex-direction: row;
}
header .nav ul li a {
    color: #666e70 !important;
    font-size: 18px;
}

header .nav {
    justify-content: end;
    align-items: center;
}

header .nav ul li {
    padding: 0 15px;
}

section.banner-sec {
    background-image: url(https://marketdiplomat.com/wp-content/uploads/2025/11/1493661589_banner-bg.jpg);
    height: 85vh;
    align-content: end;
    background-repeat: no-repeat;
    width: 100%;
    background-size: cover;
    background-position: top;
    position: relative;
}
.btn-inner a svg {
    width: 18px;
    height: 18px;
    margin-right: 7px;
}

.btn-inner a svg path {
    fill: #fff;
}
.banner-inner .row {
    align-items: center;
}


.banner-img-inner img {
    width: 100%;
    height: 100%;
}
.banner-inner-left {
    text-align: center;
}
section.banner-sec:before {
    content: "";
    position: absolute;
    background-color: #0000008c;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.banner-inner h1 {
    color: #fff;
    font-size: 65px;
    position: relative;
    margin-bottom: 40px;
}
.banner-inner h1:before {
    content: "";
    position: absolute;
    width: 155px;
    height: 2px;
    background: #fff;
    bottom: -18px;
    right: 0;
    left: 0;
    margin: 0 auto;
}

.banner-inner {
    position: relative;
    margin-bottom: 70px;
}

.banner-inner p {
    font-size: 19px;
    color: #fff;
    position: relative;
    margin-bottom: 45px;
}
.banner-inner p:before {
    content: "";
    position: absolute;
    width: 155px;
    height: 2px;
    background: #fff;
    bottom: -18px;
    right: 0;
    left: 0;
    margin: 0 auto;
}

.btn-inner a {
    color: #fff;
    background-color: #c70a0a;
    padding: 15px 21px 16px;
    display: inline-block;
    font-size: 18px;
    border-radius: 9px;
    margin-right: 16px;
    line-height: 1.1;
}

section.about-h .title-inner-s {
    text-align: center;
    margin-bottom: 45px;
}

section.about-h img {
    width: 100%;
    height: auto;
}

section.about-h .row {
    align-items: center;
}

section.about-h p {
    font-size: 19px;
    line-height: 1.5;
    color: #000;
}
.our-services .our-services-inner {
    text-align: center;
}

.gallery-sec .parent {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: repeat(6, 1fr);
    gap: 8px;
}
    
.gallery-sec .div1 {
    grid-column: span 2 / span 2;
    grid-row: span 3 / span 3;
}

.gallery-sec .div2 {
    grid-column: span 3 / span 3;
    grid-row: span 3 / span 3;
    grid-column-start: 1;
    grid-row-start: 4;
}

.gallery-sec .div3 {
    grid-column: span 3 / span 3;
    grid-row: span 3 / span 3;
    grid-column-start: 3;
    grid-row-start: 1;
}

.gallery-sec .div4 {
    grid-column: span 2 / span 2;
    grid-row: span 3 / span 3;
    grid-column-start: 4;
    grid-row-start: 4;
}
.gallery-sec .parent div img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}
.title-inner-s {
    text-align: center;
    margin-bottom: 25px;
}


/* Container basics */
.contact-us-sec {
  background: linear-gradient(180deg, #a70b0b 0%, #8a0a0a 100%); /* deep red */
  color: #fff;
  padding: 48px 0 120px;
  position: relative;
  overflow: visible;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

/* keep content narrow like the screenshot */

/* header */
.title-inner-s {
  text-align: center;
  margin-bottom: 28px;
}
.title-inner-s h2 {
  font-size: 44px;
  font-weight: 700;
  margin: 0 0 10px;
  letter-spacing: 1px;
}
.title-inner-s p {
  font-size: 18px;
  margin: 0;
  line-height: 1.35;
}
.title-inner-s p a {
  color: #fff;
  text-decoration: underline;
  font-weight: 600;
}

/* CF7 wrapper (target typical CF7 classes) */
.contact-form-inner .wpcf7 {
  margin-top: 20px;
}

/* Inputs and textarea */
.contact-form-inner input[type="text"],
.contact-form-inner input[type="email"],
.contact-form-inner input[type="tel"],
.contact-form-inner textarea,
.contact-form-inner input[type="submit"] {
  box-sizing: border-box;
  width: 100%;
  border-radius: 6px;
  border: none;
  padding: 16px 18px;
  margin-bottom: 16px;
  font-size: 16px;
  outline: none;
  background: rgba(255,255,255,0.95); /* white boxes */
  color: #333;
  box-shadow: 0 2px 0 rgba(0,0,0,0.08) inset;
}

/* textarea larger like screenshot */
.contact-form-inner textarea {
  min-height: 170px;
  resize: vertical;
  padding-top: 18px;
}

/* placeholder styling (light grey) */
.contact-form-inner input::placeholder,
.contact-form-inner textarea::placeholder {
  color: #9aa6a6;
  font-size: 15px;
  opacity: 1;
}

/* submit button style */
.contact-form-inner input[type="submit"] {
  background: #c41a1a;
  color: #fff;
  font-weight: 700;
  font-size: 18px;
  padding: 14px 20px;
  margin-top: 8px;
  cursor: pointer;
  border-radius: 8px;
  border: 2px solid rgba(255,255,255,0.08);
  transition: transform .08s ease, box-shadow .12s ease;
}
.contact-form-inner input[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.18);
}

/* small CF7 inline error/message adjustments */
.wpcf7-response-output {
  margin-bottom: 12px;
  color: #fff;
  background: rgba(0,0,0,0.15);
  padding: 10px 14px;
  border-radius: 6px;
}

/* match rounded white fields with subtle border for mobile look */
.contact-form-inner .wpcf7-form p {
  margin: 0 0 6px;
}
#footer {
    background-color: #020202 !important;
    padding-bottom: 0;
    color: #fff !important;
}
#footer p {
    margin-top: 5px !important;
}
.footer-logo-inner p {
    font-size: 16px !important;
}
.copy-right-sec {
    text-align: center;
    margin-top: 40px;
    padding-bottom: 20px;
}
.copy-right-sec p {
    margin-bottom: 0;
}

.footer-logo img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
footer#footer .row {
    justify-content: space-between;
}
footer#footer h4 {
    font-size: 25px;
    font-weight: 600;
}

footer#footer .footer-menu ul li a {
    color: #fff !important;
    font-size: 20px;
    font-weight: 400;
}

footer#footer .footer-menu ul li {
    list-style: none;
    margin-bottom: 4px;
}

footer#footer .footer-menu ul {
    padding-left: 0;
}

footer#footer .footer-menu ul li a:hover {
    color: #8a0a0a !important;
}

.address-inner .contact-info-inner {
    margin: 24px 0;
}
footer#footer .address-inner .contact-info-inner * {
    font-size: 18px;
    color: #fff;
}
/* responsive adjustments */
@media (max-width: 767px) {
  .title-inner-s h2 { font-size: 36px; }
  .contact-us-sec { padding-bottom: 30px; } /* space for fixed nav */
  .contact-form-inner input[type="submit"] { font-size: 16px; }
}

/* remove default CF7 paragraph spacing if any */
.contact-form-inner .wpcf7-form p { margin-bottom: 12px; }


.pi-section.pi-row-sm {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 32px;
}

.pi-section.pi-row-sm * {
    color: #666e70;
}

.pi-row-block.pi-row-block-txt.pi-nowrap a {
    color: #c70a0a;
}

.pi-row-block-txt.pi-pull-right a {
    color: #c70a0a;
}

.pi-row-block.pi-row-block-txt.pi-nowrap svg {
    width: 14px;
    height: 13px;
}

.pi-row-block.pi-row-block-txt.pi-nowrap svg path {
    fill: #c70a0a;
}

.pi-row-block-txt.pi-pull-right svg {
    width: 20px;
    height: 20px;
}

.pi-row-block-txt.pi-pull-right svg path {
    fill: #c70a0a;
}

section.red-sec {
    background-color: #a00707;
    color: #fff;
    padding: 34px 0;
    text-align: center;
}

section.red-sec h2 {
    font-size: 42px !important;
}

.inner-infor-div div a svg {
    width: 20px;
    height: 20px;
    margin-right: 7px;
}

.inner-infor-div {
    display: flex;
    justify-content: space-evenly;
}

.inner-infor-div div a {
    background-color: #fe0000;
    color: #fff;
    padding: 14px 37px;
    border-radius: 6px;
    font-size: 20px;
}

.inner-infor-div div a svg path {
    fill: #fff;
}

section.page-banner {
    background-color: #a52121;
    color: #fff;
    padding-top: 200px;
}

section.info-inner {
    padding: 70px 0 30px 0px;
    display: grid;
}

section.pahe-content-d {
    padding-top: 33px;
}

.blog-img img {
    width: 100%;
    height: 212px !important;
    object-fit: cover;
}

.blog-img {
    margin-bottom: 16px;
}

.blog-inner-content h4 a {
    color: #a52121 !important;
}


a.btn {
    background-color: #a52121;
    color: #fff;
    padding: 8px 15px;
    display: inline-block;
    border-radius: 7px;
    font-size: 18px;
    border: 1px solid transparent;
}
a.btn:hover {
    border: 1px solid #000;
}

.blog-inner-content p {
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #000;
}
.single-img {
    margin-bottom: 20px;
}
.single-img img {
    width: 100% !important;
    height: 550px;
    object-fit: cover;
}
.single-p-inner h2 {
    color: #a52121 !important;
    font-size: 35px !important;
    font-weight: 600 !important;
}
.single-p-inner p {
    font-size: 18px !important;
    color: #000 !important;
    line-height: 1.9;
}

/* ******** */
.connect-login-tab-login {
    position: fixed;
    top: 48%;
    left: -39px;
    z-index: 9999;
    background: #a00707;
    padding: 27px 37px;
    border-radius: 10px;
    box-shadow: 4px 1px 10px 0px rgba(0, 0, 0, 0.8);
    transform: rotate(89deg);
    padding-bottom: 64px;
    font-size: 24px;
}
/* Basic position and styling for the widget */
#widget-contactslider-container {
    position: fixed;
    top: 35%;
    left: -337px;
    transform: translateY(-50%);
    transition: left 0.3s ease-in-out;
    z-index: 9999;
    background: #a00707;
    padding: 15px 10px;
    padding-left: 32px;
    border-radius: 10px;
    box-shadow: 4px 1px 10px 0px rgba(0, 0, 0, 0.8);
}
/* When hovered, reveal the full widget */
#widget-contactslider-container:hover {
    left: -13px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}

/* Styling for the inner content */
.widget-contactslider-padding-10 {
    color: #fff; /* Set the text color for visibility */
}

.pi-row {
    margin: 0;
    padding: 5px 0;
}

/* Call Us link styling */
.widget-contactslider-label a {
    color: #fff;
    text-decoration: none;
    font-weight: bold;
}

.pi-link-dark {
    color: #fff;
    text-decoration: none;
}

/* Add some padding and background styling for better visibility */
.pi-center-text-lg {
    font-size: 16px;
}

/* Optional: Hover effect for Call Us label */
.widget-contactslider-label a:hover {
    color: #ff6347; /* Change color on hover, for example */
}

.pi-section-base {
    display: flex;
    align-items: center;
}

.pi-section-base h4.widget-contactslider-label {
    transform: rotate(89deg);
    position: relative;
    top: 0px;
    right: -20px;
}

/* *********** */

/* container */
#contact-slider-right {
  position: fixed;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 99999;
  display: flex;
  flex-direction: column;
  gap: 12px;
  pointer-events: auto;
}

/* collapsed size (icon visible) */
.contact-item {
  width: 56px;
  height: 48px;
  overflow: visible;
  border-radius: 4px;
}

/* link is wider and initially shifted left (hidden label) */
.contact-link {
    display: flex;
    align-items: center;
    gap: 12px;
    height: 56px;
    width: 260px;
    margin-left: 20px;
    padding: 8px;
    color: #fff;
    text-decoration: none;
    background: #9a1212;
    border-radius: 4px;
    transition: margin-left 0.22s ease, box-shadow 0.22s ease;
    box-shadow: 0 6px 14px rgba(0,0,0,0.25);
    white-space: nowrap;
    overflow: hidden;
}
a.contact-link:hover {
    margin-left: -164px !important;
}
/* icon always visible */
.ci-icon {
  display: inline-flex;
  width: 36px;
  min-width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  background: transparent;
  border-radius: 3px;
  color: #fff;
}

/* label text */
.ci-label {
    font-weight: 600;
    font-size: 18px;
}

/* DESKTOP: hover or keyboard focus reveals single item.
   Using :hover ensures that when you move the mouse away, it closes immediately. */
.contact-item:hover .contact-link,
.contact-item:focus-within .contact-link {
  margin-left: 0;
  box-shadow: 0 10px 20px rgba(0,0,0,0.28);
}

/* Prevent previous JS .expanded class from interfering:
   if stray .expanded exists, prefer the hover behavior and remove expanded in JS (see below). */
.contact-item.expanded .contact-link { margin-left: 0; }

/* Accessibility focus outline */
.contact-link:focus {
  outline: 3px solid rgba(255,255,255,0.12);
  outline-offset: 2px;
}

/* Mobile small adjustments */
@media (max-width: 600px) {
  #contact-slider-right { right: 8px; gap: 8px; }
  .contact-item { width: 48px; height: 44px; }
  .contact-link { width: 200px; margin-left: -152px; }
  .contact-item:hover .contact-link { margin-left: 0; } /* still works on devices that support hover */
}
span.ci-icon img, span.ci-icon svg {
    width: 20px;
    height: 20px;
}
span.ci-icon img {
    filter: invert(1);
}
span.ci-icon svg {
    fill: #fff !important;
}


.page-id-126 section.info-inner {
    padding: 70px 0 60px 0px;
    display: grid;
}

div#bottom-action-bar {
    display: none;
}
@media (max-width: 1024px) {
    .contact-us-sec {
    padding: 48px 0 30px;
}
}
@media (max-width: 991px) {
    header .nav ul li a {
    font-size: 16px;
}
    .container {
    max-width: 95% !important;
}
.footer-logo a {
    margin: 0 auto;
    text-align: center;
    display: flex;
    margin-bottom: 21px;
}
.footer-logo img {
    width: 40%;
    margin: 0 auto;
}
}

/* Hamburger base */
.nav-toggle {
  width: 35px;
  height: 26px;
  cursor: pointer;
  display: none; /* only show on mobile */
  flex-direction: column;
  justify-content: space-between;
  z-index: 999;
}

.nav-toggle span {
  display: block;
  height: 4px;
  width: 100%;
  background: #000;
  border-radius: 4px;
  transition: all 0.3s ease;
}

/* Mobile only */
@media (max-width: 767px) {
    .footer-logo img {
    width: 53%;
}
    div#bottom-action-bar {
    display: flex !important;
}
    header .nav ul.navbar-nav {
    display: none !important;
}
  .nav-toggle {
    display: flex;
    margin-left: auto;
    margin-right: 12px;
}

  .navbar-nav {
    display: none;
    flex-direction: column;
    background: #fff;
    padding: 20px;
    position: absolute;
    right: 0;
    top: 50px;
    width: 220px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  }

header .nav .navbar-nav.open {
    display: flex !important;
    width: 90%;
    height: 100vh;
    flex-direction: column;
    top: 0;
    padding-top: 170px;
    padding-left: 20px;
}
#widget-contactslider-container, .connect-login-tab-login {
    display: none;
}
#bottom-action-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #a60101; /* your red color */
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding: 10px 0;
  z-index: 9999;
  border-top: 4px solid #8b0000;
}

.ba-item a {
  color: #fff;
  text-align: center;
  font-size: 14px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.ba-icon {
  font-size: 20px;
  margin-bottom: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.ba-icon img,
.ba-icon svg {
  width: 28px;
  height: 28px;
  fill: #fff;
}

.ba-label {
  font-size: 12px;
  margin-top: 2px;
}
#contact-slider-right {
    display: none;
}
.ba-icon img {
    filter: invert(1);
}
}
/* Mobile adjustments */
@media (max-width: 676px) {
    .inner-infor-div {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 41px;
}
}
@media (max-width: 480px) {
  #bottom-action-bar {
    padding: 8px 0;
  }
  .ba-icon img,
  .ba-icon svg {
    width: 24px;
    height: 24px;
  }
  .ba-label {
    font-size: 11px;
  }
  .footer-logo img {
    width: 93%;
}
}
@media (max-width: 399px) {
      .footer-logo img {
    width: 100%;
}
}
/* --- CROSS ANIMATION --- */
.nav-toggle.active span:nth-child(1) {
  transform: translateY(11px) rotate(45deg);
}

.nav-toggle.active span:nth-child(2) {
  opacity: 0;
}

.nav-toggle.active span:nth-child(3) {
  transform: translateY(-11px) rotate(-45deg);
}
