/*
Theme Name: Mahesh Raja — Enterprise Architect
Theme URI: https://maheshraja.com
Author: Mahesh Raja Vandyala
Author URI: https://maheshraja.com
Description: A custom one-page landing theme for Mahesh Raja Vandyala — Enterprise Architect, Technology Strategist, and AI Architecture Advocate. Navy/gold/teal editorial design system with Space Grotesk + Inter typography.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: maheshraja
*/

:root{
  --navy:#0B1F3A;
  --navy-light:#122C4F;
  --gold:#C9A227;
  --teal:#14B8A6;
  --charcoal:#1A1A2E;
  --slate:#4A5568;
  --bg-off:#F7F8FA;
  --border:#D6DAE3;
}
*{box-sizing:border-box;}
body{margin:0; padding:0; font-family:'Inter',sans-serif; color:var(--charcoal); background:#fff; -webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:'Space Grotesk',sans-serif; margin:0;}
p{margin:0;}
a{text-decoration:none; color:inherit;}
ul{list-style:none; margin:0; padding:0;}
img{max-width:100%; display:block;}
.wrap{max-width:1240px; margin:0 auto; padding:0 24px;}

/* NAV */
.site-nav{position:sticky; top:0; z-index:50; background:rgba(11,31,58,0.0); transition:all .25s ease;}
.site-nav.scrolled{background:#fff; box-shadow:0 2px 12px rgba(0,0,0,0.06);}
.nav-inner{display:flex; align-items:center; justify-content:space-between; height:72px;}
.brand{font-weight:700; font-size:18px; color:#fff; letter-spacing:0.5px; transition:color .2s;}
.site-nav.scrolled .brand{color:var(--navy);}
.nav-links{display:flex; gap:32px;}
.nav-links a{font-size:13px; font-weight:500; letter-spacing:0.5px; text-transform:uppercase; color:#e5e7eb; position:relative; padding-bottom:4px; transition:color .2s;}
.site-nav.scrolled .nav-links a{color:var(--charcoal);}
.nav-links a::after{content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--gold); transition:width .2s;}
.nav-links a:hover::after{width:100%;}

/* BUTTONS */
.btn{display:inline-block; padding:12px 26px; border-radius:999px; font-family:'Inter',sans-serif; font-weight:600; font-size:13px; letter-spacing:0.5px; text-transform:uppercase; transition:all .2s ease; cursor:pointer; border:1.5px solid transparent;}
.btn-gold{background:var(--gold); color:var(--navy);}
.btn-gold:hover{background:#dbb437; color:var(--navy);}
.btn-outline-white{border-color:rgba(255,255,255,0.7); color:#fff;}
.btn-outline-white:hover{background:rgba(255,255,255,0.12); color:#fff;}
.btn-outline-navy{border-color:var(--navy); color:var(--navy);}
.btn-outline-navy:hover{background:var(--navy); color:#fff;}
.nav-cta{padding:10px 22px; font-size:12px;}

/* HERO */
.hero{min-height:92vh; display:flex; align-items:center; justify-content:center; text-align:center;
  background:linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%);
  position:relative; overflow:hidden; padding:100px 24px 60px;}
.hero::before{content:""; position:absolute; inset:0; opacity:0.08; pointer-events:none;
  background-image:
    radial-gradient(circle at 20% 30%, transparent 0, transparent 40px, rgba(255,255,255,0.5) 41px, transparent 42px),
    radial-gradient(circle at 80% 70%, transparent 0, transparent 60px, rgba(255,255,255,0.5) 61px, transparent 62px),
    linear-gradient(rgba(255,255,255,0.15) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.15) 1px, transparent 1px);
  background-size:auto, auto, 60px 60px, 60px 60px;}
.hero-content{max-width:780px; margin:0 auto; position:relative; z-index:2;}
.eyebrow{font-size:13px; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:var(--teal); margin-bottom:18px;}
.eyebrow.gold{color:var(--gold);}
.hero h1{font-size:58px; font-weight:700; color:#fff; letter-spacing:1px; line-height:1.1;}
.hero .tagline{font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:26px; color:var(--gold); margin-top:14px;}
.hero .roles{font-size:15px; color:#C7CDD9; margin-top:22px; max-width:640px; margin-left:auto; margin-right:auto; line-height:1.6;}
.hero .lede{font-size:18px; color:#E5E7EB; margin-top:22px; max-width:560px; margin-left:auto; margin-right:auto; line-height:1.65;}
.hero-ctas{display:flex; gap:16px; justify-content:center; margin-top:40px; flex-wrap:wrap;}
.scroll-cue{position:absolute; bottom:28px; left:50%; transform:translateX(-50%); color:var(--gold); animation:bounce 2s infinite; z-index:2;}
@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0);}50%{transform:translateX(-50%) translateY(8px);}}

/* SECTION HEADER */
.section{padding:96px 24px;}
.section.off{background:var(--bg-off);}
.sec-head{text-align:center; max-width:700px; margin:0 auto 56px;}
.sec-head h3{font-size:34px; font-weight:600; color:var(--navy);}
.sec-head p{font-size:17px; color:var(--slate); margin-top:10px;}

/* FEATURED THINKING */
.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:32px;}
.article-card{background:#fff; border-radius:14px; overflow:hidden; box-shadow:0 4px 20px rgba(11,31,58,0.08); transition:all .25s ease; cursor:pointer;}
.article-card:hover{transform:translateY(-6px); box-shadow:0 14px 32px rgba(11,31,58,0.14);}
.thumb{height:160px; background:linear-gradient(135deg,var(--navy),var(--teal)); position:relative;}
.thumb img{width:100%; height:100%; object-fit:cover;}
.tag{position:absolute; top:14px; left:14px; background:rgba(11,31,58,0.55); color:var(--gold); font-size:11px; font-weight:600; letter-spacing:1px; text-transform:uppercase; padding:6px 12px; border-radius:999px;}
.article-body{padding:24px;}
.article-body h4{font-family:'Source Serif 4',serif; font-weight:600; font-size:20px; color:var(--navy); line-height:1.3;}
.article-body p{font-size:15px; color:var(--slate); margin-top:8px; line-height:1.5;}
.read-link{display:inline-block; margin-top:16px; font-size:14px; font-weight:600; color:var(--teal); transition:transform .2s;}
.article-card:hover .read-link{transform:translateX(4px);}
.center-btn{text-align:center; margin-top:48px;}

/* ABOUT */
.about{display:grid; grid-template-columns:0.9fr 1.4fr; gap:60px; align-items:center;}
.photo-box{background:linear-gradient(135deg,#dfe4ec,#c9d1de); border-radius:16px; height:340px; box-shadow:0 8px 24px rgba(11,31,58,0.1); border-bottom:4px solid var(--gold); display:flex; align-items:center; justify-content:center; color:var(--slate); font-size:13px; overflow:hidden;}
.photo-box img{width:100%; height:100%; object-fit:cover;}
.about-stats{display:flex; gap:28px; margin-top:28px; flex-wrap:wrap;}
.stat b{display:block; font-family:'Space Grotesk',sans-serif; font-size:22px; color:var(--gold); font-weight:600;}
.stat span{font-size:12px; color:var(--slate);}
.about h3{font-size:30px; color:var(--navy); font-weight:600;}
.about p{font-size:17px; color:var(--charcoal); line-height:1.7; margin-top:14px;}

/* EXPERTISE */
.pillars{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
.pillar{background:var(--bg-off); border-radius:14px; padding:32px; border-top:3px solid transparent; transition:all .2s;}
.pillar:hover{border-top-color:var(--gold); transform:translateY(-4px);}
.icon-badge{width:48px; height:48px; border-radius:50%; background:rgba(20,184,166,0.12); display:flex; align-items:center; justify-content:center; color:var(--teal); font-size:20px; margin-bottom:16px;}
.pillar h4{font-size:19px; color:var(--navy); font-weight:600;}
.pillar p{font-size:15px; color:var(--slate); margin-top:8px; line-height:1.6;}

/* SPEAKING/MENTORSHIP */
.dark-cta{background:var(--navy); padding:96px 24px; position:relative; overflow:hidden;}
.dark-cta::before{content:""; position:absolute; inset:0; opacity:0.06; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,0.3) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.3) 1px, transparent 1px);
  background-size:60px 60px;}
.dark-grid{display:grid; grid-template-columns:1fr 1fr; gap:0; position:relative; z-index:2; max-width:1100px; margin:0 auto;}
.dark-col{padding:0 48px;}
.dark-col:first-child{border-right:1px solid rgba(201,162,39,0.3);}
.dark-col h3{font-size:26px; color:#fff; font-weight:600; margin-top:10px;}
.dark-col p{font-size:16px; color:#C7CDD9; line-height:1.7; margin-top:14px; margin-bottom:24px;}

/* SOCIAL PROOF */
.logo-strip{display:flex; justify-content:center; align-items:center; gap:48px; flex-wrap:wrap; margin-bottom:64px;}
.logo-block{width:120px; height:40px; background:#e2e6ee; border-radius:6px; display:flex; align-items:center; justify-content:center; font-size:11px; color:var(--slate); opacity:0.6; transition:opacity .2s;}
.logo-block:hover{opacity:1;}
.testimonials{display:grid; grid-template-columns:repeat(3,1fr); gap:32px;}
.t-card{background:#fff; border-radius:14px; padding:28px; box-shadow:0 4px 20px rgba(11,31,58,0.08);}
.t-quote-mark{font-family:'Source Serif 4',serif; font-size:36px; color:var(--gold); line-height:1;}
.t-text{font-family:'Source Serif 4',serif; font-style:italic; font-size:15.5px; color:var(--charcoal); line-height:1.6; margin-top:8px;}
.t-divider{height:1px; background:var(--gold); width:36px; margin:18px 0;}
.t-person{display:flex; align-items:center; gap:12px;}
.t-avatar{width:38px; height:38px; border-radius:50%; background:#dfe4ec;}
.t-name{font-size:14px; font-weight:600; color:var(--navy);}
.t-role{font-size:12.5px; color:var(--slate);}

/* NEWSLETTER */
.newsletter-form{display:flex; justify-content:center; gap:12px; margin-top:28px; flex-wrap:wrap;}
.newsletter-form input[type="email"]{padding:14px 20px; border-radius:999px; border:1px solid var(--border); width:280px; font-family:'Inter',sans-serif; font-size:14px;}

/* FOOTER */
.site-footer{background:var(--navy); padding:64px 24px 28px;}
.foot-grid{display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:32px;}
.foot-brand{font-family:'Space Grotesk',sans-serif; font-size:20px; color:#fff; font-weight:600;}
.foot-tag{font-size:13px; color:#9AA5B8; margin-top:8px;}
.foot-col h5{font-size:13px; color:#fff; text-transform:uppercase; letter-spacing:1px; margin-bottom:14px;}
.foot-col a{display:block; font-size:14px; color:#C7CDD9; margin-bottom:10px; transition:color .2s;}
.foot-col a:hover{color:var(--gold);}
.foot-bottom{border-top:1px solid #1E3A5F; margin-top:32px; padding-top:24px; text-align:center; font-size:12px; color:#7A869E;}

@media(max-width:900px){
  .cards, .about, .pillars, .dark-grid, .foot-grid, .testimonials{grid-template-columns:1fr;}
  .about{gap:32px;}
  .dark-col:first-child{border-right:none; border-bottom:1px solid rgba(201,162,39,0.3); padding-bottom:40px; margin-bottom:40px;}
  .hero h1{font-size:36px;}
  .nav-links{display:none;}
  .section{padding:64px 20px;}
}
