/*
Theme Name: Rafay Technologies Cloud
Theme URI: https://rafaytech.com/
Author: Rafay Technologies
Author URI: https://rafaytech.com/
Description: A professional cloud, DevOps, software, mobile and AI consulting portfolio theme for Rafay Technologies.
Version: 1.1.0
Requires at least: 6.1
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: rafay-tech
*/
:root{--rt-blue:#0077b6;--rt-blue-2:#0096c7;--rt-blue-dark:#005b8a;--rt-cyan:#48cae4;--rt-navy:#071a2e;--rt-ink:#182b3a;--rt-muted:#607080;--rt-bg:#f5f9fc;--rt-border:#dce7ee;--rt-radius:18px;--rt-shadow:0 18px 55px rgba(7,26,46,.10);--rt-shadow-soft:0 10px 30px rgba(7,26,46,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--rt-ink);background:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.65}body.menu-open{overflow:hidden}
a{color:var(--rt-blue);text-decoration:none}a:hover{color:var(--rt-blue-dark)}img{max-width:100%;height:auto}.container{width:min(1180px,calc(100% - 44px));margin:auto}
.site-header{position:sticky;top:0;z-index:100;background:#062B49;backdrop-filter:blur(16px);border-bottom:1px solid rgba(220,231,238,.85)}
.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--rt-navy);font-weight:800;letter-spacing:-.025em;flex-shrink:0}.brand-mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--rt-blue),var(--rt-blue-2));display:grid;place-items:center;color:#fff;box-shadow:0 8px 22px rgba(0,119,182,.24)}.brand-mark svg{width:23px;height:23px}.brand-name{font-size:19px}
.main-nav{margin-left:auto}.main-nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0;align-items:center}.main-nav li{position:relative}.main-nav a{display:block;color:#33495b;font-size:13px;font-weight:700;padding:11px 12px;border-radius:9px}.main-nav a:hover,.main-nav .current-menu-item>a,.main-nav .current-menu-parent>a{color:var(--rt-blue);background:#f0f7fb}.main-nav .menu-item-has-children>a::after{content:"⌄";font-size:12px;margin-left:6px}.main-nav .sub-menu{position:absolute;left:0;top:calc(100% + 8px);min-width:230px;display:block;padding:8px;background:#fff;border:1px solid var(--rt-border);border-radius:14px;box-shadow:var(--rt-shadow);opacity:0;visibility:hidden;transform:translateY(5px);transition:.18s ease}.main-nav .menu-item-has-children:hover>.sub-menu,.main-nav .menu-item-has-children:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}.main-nav .sub-menu li{width:100%}.main-nav .sub-menu a{padding:10px 11px;white-space:nowrap}.nav-cta{background:var(--rt-blue)!important;color:#fff!important;padding:11px 16px!important;margin-left:5px}.nav-cta:hover{background:var(--rt-blue-dark)!important}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--rt-border);border-radius:11px;background:#fff;color:var(--rt-navy);cursor:pointer}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{display:block;width:19px;height:2px;background:currentColor;margin:auto;position:relative}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0}.menu-toggle span:before{top:-6px}.menu-toggle span:after{top:6px}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 18%,rgba(72,202,228,.23),transparent 25%),radial-gradient(circle at 70% 80%,rgba(0,119,182,.12),transparent 30%),linear-gradient(135deg,#f8fcff 0%,#eef7fc 100%);padding:96px 0 88px}.hero:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(0,119,182,.10);border-radius:50%;right:-160px;top:-170px}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:64px;align-items:center;position:relative}
.eyebrow{color:var(--rt-blue);text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:850;margin-bottom:15px}h1,h2,h3{color:var(--rt-navy);line-height:1.12;letter-spacing:-.038em;margin-top:0}h1{font-size:clamp(43px,5vw,70px);margin-bottom:22px}h2{font-size:clamp(31px,4vw,47px);margin-bottom:16px}h3{font-size:20px}.hero p{font-size:18px;color:var(--rt-muted);max-width:670px}
.hero-note{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px;color:#52697a;font-size:12px;font-weight:700}.hero-note span{padding:7px 10px;border:1px solid rgba(0,119,182,.13);border-radius:99px;background:rgba(255,255,255,.68)}
.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 21px;border-radius:11px;font-weight:800;font-size:13px;border:1px solid var(--rt-blue);transition:.18s ease}.button-primary{background:var(--rt-blue);color:#fff;box-shadow:0 8px 20px rgba(0,119,182,.18)}.button-primary:hover{background:var(--rt-blue-dark);color:#fff;transform:translateY(-1px)}.button-secondary{color:var(--rt-navy);background:#fff;border-color:var(--rt-border)}.button-secondary:hover{border-color:#b9d0dd;color:var(--rt-navy);transform:translateY(-1px)}
.hero-art{background:rgba(255,255,255,.86);border:1px solid rgba(210,226,235,.95);border-radius:28px;box-shadow:var(--rt-shadow);padding:14px}.hero-art svg{display:block;width:100%;height:auto}
.trust-strip{padding:22px 0;border-bottom:1px solid var(--rt-border);background:#fff}.trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.pill{padding:8px 13px;border:1px solid var(--rt-border);border-radius:99px;background:#fff;color:#496174;font-size:12px;font-weight:750}
.section{padding:92px 0}.section-alt{background:var(--rt-bg)}.section-heading{max-width:760px;margin-bottom:42px}.section-heading p{color:var(--rt-muted);font-size:17px}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{position:relative;background:#fff;border:1px solid var(--rt-border);border-radius:var(--rt-radius);padding:28px;min-height:250px;transition:.2s ease}.card:hover{transform:translateY(-5px);box-shadow:var(--rt-shadow-soft);border-color:#c3dbe7}.card-index{position:absolute;right:20px;top:19px;font-size:11px;font-weight:850;color:#9ab0bd;letter-spacing:.12em}.icon{width:50px;height:50px;display:grid;place-items:center;border-radius:14px;background:#eaf6fc;color:var(--rt-blue);margin-bottom:20px}.icon svg{width:26px;height:26px}.card p{color:var(--rt-muted);margin-bottom:0;font-size:14px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.check-list{list-style:none;padding:0;margin:25px 0 0}.check-list li{margin:12px 0;padding-left:29px;position:relative;color:#405466}.check-list li:before{content:"✓";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#e5f5fb;color:var(--rt-blue);font-size:12px;font-weight:900}
.capability-panel{margin-top:38px;padding:25px 28px;border:1px solid var(--rt-border);border-radius:17px;background:#fff;display:grid;grid-template-columns:1.1fr 2fr;gap:20px;align-items:center}.capability-panel strong{color:var(--rt-navy)}.capability-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.capability-list span{padding:7px 10px;border-radius:8px;background:#f2f7fa;color:#4c6575;font-size:11px;font-weight:800}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.step{padding:25px;border:1px solid var(--rt-border);border-radius:16px;background:#fff}.step-number{color:var(--rt-blue);font-weight:900;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.step p{color:var(--rt-muted);font-size:14px}
.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.project{overflow:hidden;border:1px solid var(--rt-border);border-radius:18px;background:#fff;transition:.2s ease}.project:hover{transform:translateY(-4px);box-shadow:var(--rt-shadow-soft)}.project-visual{background:#eaf6fc}.project-visual svg{width:100%;display:block}.project-body{padding:25px}.project-body p{color:var(--rt-muted);font-size:14px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.tag{font-size:10px;font-weight:850;color:#436176;background:#f0f5f8;padding:5px 9px;border-radius:99px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:38px}.stat{padding:20px;border:1px solid var(--rt-border);border-radius:14px;background:#fff}.stat strong{display:block;font-size:24px;color:var(--rt-navy)}.stat span{color:var(--rt-muted);font-size:11px;font-weight:650}
.cta{background:radial-gradient(circle at 85% 15%,rgba(72,202,228,.20),transparent 26%),linear-gradient(135deg,#071a2e,#0d2b45);color:#dce8f0;border-radius:25px;padding:58px;position:relative;overflow:hidden;box-shadow:0 22px 65px rgba(7,26,46,.16)}.cta:after{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(255,255,255,.10);border-radius:50%;right:-90px;bottom:-110px}.cta h2{color:#fff;max-width:680px}.cta p{max-width:670px;color:#c3d4df}
.site-footer{background:#061625;color:#aebdca;padding:62px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}.site-footer h3{color:#fff;font-size:15px}.site-footer a{color:#c4d2dc}.site-footer a:hover{color:#fff}.footer-brand-copy{max-width:430px;color:#9fb0bc;font-size:14px}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:42px;padding-top:20px;font-size:11px;display:flex;justify-content:space-between;gap:20px;color:#8195a3}
.page-hero{padding:70px 0;background:var(--rt-bg);border-bottom:1px solid var(--rt-border)}.entry-content{max-width:820px;margin:70px auto;padding:0 22px}.entry-content h2{margin-top:45px}.entry-content p,.entry-content li{color:#455b6c}
@media(max-width:980px){.main-nav{display:none}.menu-toggle{display:grid;place-items:center}.site-header.menu-open .main-nav{display:block;position:fixed;left:14px;right:14px;top:86px;max-height:calc(100vh - 100px);overflow:auto;padding:10px;background:#fff;border:1px solid var(--rt-border);border-radius:16px;box-shadow:var(--rt-shadow)}.site-header.menu-open .main-nav ul{display:block}.site-header.menu-open .main-nav li{width:100%}.site-header.menu-open .main-nav a{padding:12px 13px}.site-header.menu-open .main-nav .sub-menu{position:static;min-width:0;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 5px 14px;display:block}.nav-cta{margin:6px 0 0;text-align:center}.hero-grid,.split{grid-template-columns:1fr}.services-grid{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.capability-panel{grid-template-columns:1fr}.capability-list{justify-content:flex-start}}
@media(max-width:620px){.container{width:min(100% - 28px,1180px)}.hero{padding:65px 0}.section{padding:65px 0}.services-grid,.projects-grid,.process,.footer-grid,.stats{grid-template-columns:1fr}.cta{padding:35px 25px}.footer-bottom{flex-direction:column}.hero-note{gap:7px}.hero-note span{font-size:11px}}

.brand-logo{display:inline-flex;align-items:center;line-height:0;max-width:210px}
.brand-logo .custom-logo-link{display:inline-flex;align-items:center;line-height:0}
.brand-logo .custom-logo{display:block;width:auto;max-width:210px;max-height:46px;height:auto}
.footer-logo{max-width:190px}.footer-logo .custom-logo{max-width:190px;max-height:48px}
@media(max-width:620px){.brand-logo{max-width:170px}.brand-logo .custom-logo{max-width:170px;max-height:42px}.footer-logo .custom-logo{max-width:170px;max-height:42px}}

/* v1.3.1 brand accents — existing v1.2 layout preserved */
:root{--rt-orange:#F28C28;--rt-blue:#0066B3;--rt-navy:#062B49}
.hero .eyebrow,.section .eyebrow,.cta .eyebrow{color:var(--rt-orange)}
.process .step-number,.project-body .tag,.card-index{color:var(--rt-orange)}
.service-card-link{display:block;color:inherit;text-decoration:none}
.service-card-link:hover{color:inherit;text-decoration:none}
.service-card-link:focus-visible{outline:3px solid rgba(242,140,40,.55);outline-offset:3px}
.header-cta a:hover,.header-cta .button:hover{background:var(--rt-orange)!important;border-color:var(--rt-orange)!important}

/* v1.3.1 isolated service-page styles */
.rt-service-hero{background:#062B49;color:#fff;padding:70px 0 65px}.rt-service-hero h1{font-size:clamp(40px,5vw,60px);line-height:1.1;margin:0 0 16px}.rt-service-hero>div>p{max-width:800px;font-size:18px;color:#DCE8F0;margin:0 0 24px}.rt-service-layout,.rt-business{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.rt-service-layout h2,.rt-business h2{font-size:34px;line-height:1.2;color:#062B49;margin:0 0 12px}.rt-service-layout p,.rt-business p{color:#607487}.rt-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rt-capabilities div{padding:13px 14px;border:1px solid #DCE5EC;border-radius:9px;background:#fff;font-size:13px}.rt-capabilities span{color:#F28C28;font-weight:900;margin-right:8px}.rt-tech-tags{display:flex;flex-wrap:wrap;gap:10px}.rt-tech-tags span{padding:9px 13px;border:1px solid #C8DCE8;background:#F1F7FA;border-radius:999px;color:#062B49;font-size:13px;font-weight:700}.rt-value-box{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rt-value-box div{border:1px solid #DCE5EC;border-top:3px solid #F28C28;border-radius:10px;padding:18px;background:#fff}.rt-value-box strong{display:block;color:#062B49;margin-bottom:6px}.rt-value-box span{font-size:12px;color:#607487}.rt-service-cta{background:#0066B3;color:#fff;padding:60px 0}.rt-service-cta h2{font-size:34px;line-height:1.2;margin:0 0 8px}.rt-service-cta p{max-width:760px;color:#DCE8F0;margin:0 0 22px}.rt-service-cta .eyebrow{color:#FF9F43}@media(max-width:900px){.rt-service-layout,.rt-business{grid-template-columns:1fr}.rt-capabilities{grid-template-columns:1fr}.rt-value-box{grid-template-columns:1fr}}@media(max-width:640px){.rt-service-hero{padding:55px 0}.rt-service-hero h1{font-size:40px}.rt-service-hero>div>p{font-size:16px}.rt-service-cta{padding:50px 0}}


/* v1.3.6 visual color refinement — layout intentionally unchanged */
:root {
  --rt-blue: #0066B3;
  --rt-navy: #062B49;
  --rt-orange: #F28C28;
  --rt-orange-bright: #FF9F43;
  --rt-white: #FFFFFF;
  --rt-neutral: #F7F9FB;
  --rt-text: #465A6B;
}

/* Professional blue/navy header */
.site-header,
header.site-header {
  background: var(--rt-navy);
  color: var(--rt-white);
}

.site-header a,
header.site-header a,
.site-header .site-title,
header.site-header .site-title {
  color: var(--rt-white);
}

.site-header a:hover,
.site-header a:focus,
header.site-header a:hover,
header.site-header a:focus {
  color: var(--rt-orange-bright);
}

/* Keep navigation visually integrated with the header */
.site-header nav,
.site-header .main-navigation,
header.site-header nav,
header.site-header .main-navigation {
  background: transparent;
}

/* Orange accent for prominent header CTA, where present */
.site-header .button,
.site-header .btn,
.site-header .cta,
header.site-header .button,
header.site-header .btn,
header.site-header .cta {
  background: var(--rt-orange);
  border-color: var(--rt-orange);
  color: var(--rt-white);
}

.site-header .button:hover,
.site-header .btn:hover,
.site-header .cta:hover,
header.site-header .button:hover,
header.site-header .btn:hover,
header.site-header .cta:hover {
  background: var(--rt-orange-bright);
  border-color: var(--rt-orange-bright);
  color: var(--rt-white);
}

/* Replace pale-blue content backgrounds with clean neutral white/gray */
.section-light-blue,
.light-blue,
.bg-light-blue,
.section-blue-light,
.bg-blue-light,
.soft-blue,
.blue-tint,
.section-tint {
  background: var(--rt-neutral);
}

/* Preserve intentional brand-blue elements */
.text-primary,
.color-primary {
  color: var(--rt-blue);
}

.bg-primary,
.background-primary {
  background: var(--rt-blue);
}

/* Service/card accents */
.service-card:hover,
.card:hover {
  border-color: var(--rt-orange);
}

a {
  color: var(--rt-blue);
}

a:hover,
a:focus {
  color: var(--rt-orange);
}


/* v1.3.6 dropdown navigation refinement — layout unchanged */
.site-header .main-navigation ul ul,
.site-header .main-navigation ul ul.sub-menu,
header.site-header .main-navigation ul ul,
header.site-header .main-navigation ul ul.sub-menu,
.site-header nav ul ul,
header.site-header nav ul ul {
  background: #062B49;
  border-color: #062B49;
  box-shadow: 0 8px 24px rgba(6, 43, 73, 0.20);
}

.site-header .main-navigation ul ul a,
.site-header .main-navigation ul ul.sub-menu a,
header.site-header .main-navigation ul ul a,
header.site-header .main-navigation ul ul.sub-menu a,
.site-header nav ul ul a,
header.site-header nav ul ul a {
  background: transparent;
  color: #FFFFFF;
}

.site-header .main-navigation ul ul a:hover,
.site-header .main-navigation ul ul a:focus,
.site-header .main-navigation ul ul .current-menu-item > a,
.site-header .main-navigation ul ul .current_page_item > a,
header.site-header .main-navigation ul ul a:hover,
header.site-header .main-navigation ul ul a:focus,
header.site-header .main-navigation ul ul .current-menu-item > a,
header.site-header .main-navigation ul ul .current_page_item > a,
.site-header nav ul ul a:hover,
.site-header nav ul ul a:focus,
header.site-header nav ul ul a:hover,
header.site-header nav ul ul a:focus {
  background: #F28C28;
  color: #FFFFFF;
}

.site-header .main-navigation li:hover > ul,
.site-header .main-navigation li.focus > ul,
header.site-header .main-navigation li:hover > ul,
header.site-header .main-navigation li.focus > ul {
  background: #062B49;
}


/* v1.3.6 color refinement — layout and structure unchanged */

/* Services dropdown: light blue background with readable navy text */
.site-header .main-navigation ul ul,
.site-header .main-navigation ul ul.sub-menu,
header.site-header .main-navigation ul ul,
header.site-header .main-navigation ul ul.sub-menu,
.site-header nav ul ul,
header.site-header nav ul ul {
  background: #DCEEFF;
  border-color: #DCEEFF;
  box-shadow: 0 8px 24px rgba(6, 43, 73, 0.20);
}

.site-header .main-navigation ul ul a,
.site-header .main-navigation ul ul.sub-menu a,
header.site-header .main-navigation ul ul a,
header.site-header .main-navigation ul ul.sub-menu a,
.site-header nav ul ul a,
header.site-header nav ul ul a {
  background: #DCEEFF;
  color: #062B49;
}

.site-header .main-navigation ul ul a:hover,
.site-header .main-navigation ul ul a:focus,
.site-header .main-navigation ul ul .current-menu-item > a,
.site-header .main-navigation ul ul .current_page_item > a,
header.site-header .main-navigation ul ul a:hover,
header.site-header .main-navigation ul ul a:focus,
header.site-header .main-navigation ul ul .current-menu-item > a,
header.site-header .main-navigation ul ul .current_page_item > a,
.site-header nav ul ul a:hover,
.site-header nav ul ul a:focus,
header.site-header nav ul ul a:hover,
header.site-header nav ul ul a:focus {
  background: #F28C28;
  color: #FFFFFF;
}

/* Six service-page top/hero areas: light blue */
.service-hero,
.service-page-hero,
.service-header,
.service-banner,
.service-intro,
.service-top {
  background: #DCEEFF;
  color: #062B49;
}

.service-hero h1,
.service-page-hero h1,
.service-header h1,
.service-banner h1,
.service-intro h1,
.service-top h1,
.service-hero h2,
.service-page-hero h2,
.service-header h2,
.service-banner h2,
.service-intro h2,
.service-top h2 {
  color: #062B49;
}

.service-hero p,
.service-page-hero p,
.service-header p,
.service-banner p,
.service-intro p,
.service-top p {
  color: #465A6B;
}


/* v1.3.6 navigation popup + service hero refinement */

/* Services dropdown POPUP itself: light blue */
.main-nav .sub-menu {
  background: #DCEEFF;
  border-color: #BFDDF3;
  box-shadow: 0 10px 28px rgba(6, 43, 73, 0.22);
}

.main-nav .sub-menu a {
  background: transparent;
  color: #062B49;
}

.main-nav .sub-menu a:hover,
.main-nav .sub-menu a:focus,
.main-nav .sub-menu .current-menu-item > a,
.main-nav .sub-menu .current_page_item > a {
  background: #F28C28;
  color: #FFFFFF;
}

/* Mobile navigation popup */
@media(max-width:980px) {
  .site-header.menu-open .main-nav {
    background: #DCEEFF;
    border-color: #BFDDF3;
  }

  .site-header.menu-open .main-nav a {
    color: #062B49;
  }

  .site-header.menu-open .main-nav a:hover,
  .site-header.menu-open .main-nav a:focus,
  .site-header.menu-open .main-nav .current-menu-item > a,
  .site-header.menu-open .main-nav .current_page_item > a {
    color: #F28C28;
    background: transparent;
  }
}

/* Six service-page top/hero areas: light blue */
.rt-service-hero {
  background: #DCEEFF;
  color: #062B49;
}

.rt-service-hero h1 {
  color: #062B49;
}

.rt-service-hero > div > p {
  color: #465A6B;
}
