
:root{ --gold:#E4A600; --black:#000; }
body{ background-color:var(--black); color:#e9ecef; }
.bg-black{ background-color:#000!important; }
.text-gold{ color:var(--gold)!important; }
.link-gold{ color:var(--gold); text-decoration:none; }
.link-gold:hover{ color:var(--gold); text-decoration: underline; }

/* Navbar */
.navbar .nav-link{ color:#fff; text-transform:uppercase; letter-spacing:.05em; margin:0 .125rem; padding:.5rem .75rem; border-radius:0; }
.navbar .nav-link:hover, .navbar .nav-link:focus{ background:var(--gold); color:#000; box-shadow:none; }
.navbar .nav-link.active{ background:var(--gold); color:#000; }
.navbar-brand img{ display:block; height:64px; transition:height .2s ease; }
@media (min-width: 992px){ .navbar-brand img{ height:88px; } .navbar{ padding-top:.25rem; padding-bottom:.25rem; } }

/* Buttons */
.btn-gold{ background:var(--gold); color:#000; border:1px solid var(--gold); }
.btn-gold:hover{ background:#cf9500; border-color:#cf9500; color:#000; }
.btn-outline-gold{ background:transparent; color:var(--gold); border:1px solid var(--gold); }
.btn-outline-gold:hover{ background:var(--gold); color:#000; }

/* Forms */
.form-control-dark, .form-select-dark{ background:#0f0f0f; border:1px solid #343a40; color:#e9ecef; }
.form-control-dark:focus, .form-select-dark:focus{ border-color:var(--gold); box-shadow:0 0 0 .25rem rgba(228,166,0,.25); }

/* Hero / Carousel slides */
.hero{ min-height:60vh; background-position:center; background-size:cover; position:relative; }
.hero-1{ background-image:url('../img/hero-1.jpg'); }
.hero-2{ background-image:url('../img/hero-2.jpg'); }
.hero-3{ background-image:url('../img/hero-3.jpg'); }

/* Carousel overlay bar in bottom third */
.carousel-overlay-bar{ position:absolute; left:0; right:0; bottom:33%; z-index:3; }
.carousel-overlay-bar .overlay-inner{ display:inline-flex; background:#E4A600; padding:.75rem 1rem; border-radius:.25rem; box-shadow:0 6px 20px rgba(0,0,0,.25); }
.carousel-heading{ display:inline-block; background:#E4A600; color:#fff; text-transform:uppercase; font-weight:800; font-size:1.5rem; line-height:1.2; padding:.5rem 1rem; margin:0; border-radius:.125rem; }
.carousel-lead{ display:inline-block; background:#fff; color:#000; text-transform:uppercase; font-weight:600; font-size:1rem; line-height:1.2; padding:.5rem 1rem; margin:0; border-radius:.125rem; }
.carousel-heading + .carousel-lead{ display:block; margin-top:0; }
@media (max-width: 575.98px){ .carousel-heading{ font-size:1.25rem; } .carousel-lead{ font-size:.9rem; } .carousel-overlay-bar .overlay-inner{ padding:.5rem .75rem; } }

/* Intro */
.object-fit-cover{ object-fit:cover; }
.intro-section .ratio{ background:#0f0f0f; }

/* Testimonials */
.bg-dark-900{ background:#0b0b0b; }
.testimonial{ max-width: 900px; margin-left:auto; margin-right:auto; }

/* Cards */
.card-dark{ background:#0f0f0f; border:1px solid #343a40; }

/* Services equal heights + multicolor panels */
.service-row .ratio{ width:100%; }
@media (min-width: 992px){ .service-row .text-panel{ aspect-ratio: 16 / 9; } }
.text-panel{ display:flex; flex-direction:column; }
.svc-1{ background:#12343b; border-color:#0f2b30; color:#eef2f4; }
.svc-2{ background:#3b2e5a; border-color:#2f2547; color:#f1eff6; }
.svc-3{ background:#5a3b3b; border-color:#4a2f2f; color:#f7eeee; }
.svc-4{ background:#2e4d32; border-color:#243e28; color:#eef6ef; }
.svc-5{ background:#294059; border-color:#213248; color:#eef3f8; }
.svc-6{ background:#5a4a2e; border-color:#493c25; color:#f6f2ea; }
.svc-1 .service-title, .svc-1 .service-desc,
.svc-2 .service-title, .svc-2 .service-desc,
.svc-3 .service-title, .svc-3 .service-desc,
.svc-4 .service-title, .svc-4 .service-desc,
.svc-5 .service-title, .svc-5 .service-desc,
.svc-6 .service-title, .svc-6 .service-desc { color: inherit; }
.svc-btn{ background:#fff; color:#000; border:1px solid rgba(255,255,255,.2); }
.svc-btn:hover{ background:#f1f1f1; color:#000; }

/* Validation states */
.is-invalid{ border-color:#dc3545!important; }
.is-valid{ border-color:#198754!important; }
.invalid-feedback{ display:block; }
.form-text{ margin-top:.25rem; }

/* General */
.homepage-h1{ font-size:2rem; }
