/* Theme colors */
:root{
  --navy-900:#0b1a2b;
  --navy-800:#10253b;
  --navy-700:#15314f;
  --gold-500:#d4af37; /* elegant gold */
  --gold-600:#c9a227;
  --text:#0d1b2a;
  --muted:#6c7a89;
  /* Hero colors: adjust these to change Home page look */
  /* Home hero gradient (dark blue) */
  --hero-start:#0b1a2b;   /* deep navy */
  --hero-end:#15314f;     /* dark blue */
}

html,body{height:100%;}
body{
  font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:#ffffff;
}

.bg-navy{background:var(--navy-900)!important;}
.bg-navy-2{background:var(--navy-800)!important;}
.btn-gold{background:var(--gold-500); border:0;}
.btn-gold:hover{background:var(--gold-600);}

/* Navbar */
#mainNav .navbar-brand{color:#fff;}
#mainNav .nav-link{color:#cfd7e3;}
#mainNav .nav-link.active,#mainNav .nav-link:hover{color:#fff;}
/* Gold logo using mask for perfect solid color */
.logo-gold{display:inline-block; background:var(--gold-500); width:28px; height:28px; vertical-align:middle;
  -webkit-mask:url("../img/20250916_1235_SB Royal Logo_simple_compose_01k58mgc83eznt72vz58we3meb.png") center/contain no-repeat; mask:url("../img/20250916_1235_SB Royal Logo_simple_compose_01k58mgc83eznt72vz58we3meb.png") center/contain no-repeat;}
.logo-sm{width:28px; height:28px;}
.logo-lg{width:64px; height:64px;}

/* Enlarge logo inside header without increasing navbar height */
#mainNav .logo-sm{transform:scaleX(2.2) scaleY(2.2); transform-origin:center;}

/* Hero */
.hero-section{min-height:92vh; background:linear-gradient(180deg, var(--hero-start), var(--hero-end)); padding-top:7rem; padding-bottom:4rem;}
.hero-section .btn{transition:transform .2s ease, box-shadow .2s ease;}
.hero-section .btn:hover{transform:translateY(-2px); box-shadow:0 8px 24px rgba(0,0,0,.25);} 
.hero-card{border:1px solid rgba(0,0,0,.06); background:#D9C8C2!important; color:var(--navy-900)!important;}

/* Sections */
.section-title{font-weight:600; color:var(--navy-900);}
.service-card{border:none; box-shadow:0 8px 24px rgba(11,26,43,.06);} 
.service-card .card-body{padding:1.5rem;}

.portfolio-item img{display:block; transition:transform .5s ease;}
.portfolio-item:hover img{transform:scale(1.06);} 

/* About stats */
.stat{font-size:1.25rem; font-weight:600; color:#fff;}

/* Footer */
footer{font-size:.95rem;}

/* Back to top */
.back-to-top{position:fixed; right:1rem; bottom:1rem; display:none; padding:.6rem .8rem; border-radius:.65rem; box-shadow:0 6px 16px rgba(0,0,0,.15);} 
.back-to-top.show{display:inline-flex;}

/* Forms & Social */
.social-link{color:var(--navy-900); font-size:1.25rem;}
.social-link:hover{color:var(--gold-500);} 
.form-alert{min-height:1.25rem;}

/* Typography */
h1,h2,h3,h4,h5{letter-spacing:.2px;}
.lead{color:#e6edf5;}

/* Simple fade-up animation */
.reveal{opacity:0; transform:translateY(16px); transition:opacity .6s ease, transform .6s ease;}
.reveal.show{opacity:1; transform:none;}

/* Accessibility focus */
:focus-visible{outline:3px solid var(--gold-500); outline-offset:2px;}

