:root{
  --bg:#0b0b0b;
  --bg2:#111;
  --text:#fff;
  --muted:rgba(255,255,255,.75);
  --line:rgba(255,255,255,.14);
  --yellow:#ffd200;
  --yellow2:#ffb800;
  --max:1200px;
  --radius:14px;
}



.wix-login{
  font-size:13px;
  opacity:.75;
}
.wix-login:hover{ opacity:1; }


*{ box-sizing:border-box; }
body{
  margin:0;
  font-family: Arial, Helvetica, sans-serif;
  background:#fff;
  color:#111;
}

/* ================================
   HEADER LAYOUT (LEFT LOGO / RIGHT NAV)
================================ */
.wix-header{
  position: sticky;
  top: 0;
  z-index: 1000;
  width: 100%;
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  backdrop-filter: blur(6px);
  border-bottom: 2px solid rgba(212,175,55,.35); /* gold-ish */
}

/* Full-width container */
.wix-header-inner{
  width: 100%;
  max-width: none;                 /* KEY: remove centering */
  margin: 0;
  padding: 14px 40px;              /* edge spacing */
  display: flex;
  align-items: center;
  justify-content: space-between;  /* logo left, nav right */
}

/* ================================
   LOGO (LEFT JUSTIFIED)
================================ */
.wix-brand{
  position: relative;
}

.wix-brand::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(
    90deg,
    rgba(6,12,16,0.85) 0%,
    rgba(6,12,16,0.3) 60%,
    transparent 100%
  );
  pointer-events:none;
}


/* ================================
   NAV (RIGHT JUSTIFIED)
================================ */
.wix-nav{
  display: flex;
  align-items: center;
  gap: 28px;
  margin-left: auto;               /* push nav to right */
}

/* Standard nav links */
.wix-nav a,
.wix-nav-link{
  color:rgba(210,180,140,.65);
  text-decoration: none;
  font-size: 22px;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  opacity: 0.9;
  cursor: pointer;
}

.wix-nav a:hover,
.wix-nav-link:hover{
  opacity: 1;
}

/* CTA button */
.wix-nav-cta{
  padding: 8px 16px;
  border-radius: 999px;
  background:rgba(210,180,140,.65);;
  color: #000000 !important;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.4px;
}

.wix-nav-cta:hover{
  background: #e5e5e5;
}

/* ================================
   INSIGHTS DROPDOWN (VISIBLE FIX)
================================ */
.wix-nav-dropdown{
  position: relative;
  display: flex;
  align-items: center;
}

/* Dropdown label */
.wix-nav-dropdown .wix-nav-link{
  color: #ffffff;
  opacity: 0.9;
}

/* Dropdown menu */
.wix-dropdown-menu{
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  background: #0b141b;
  border: 1px solid rgba(212,195,155,0.35);
  border-radius: 10px;
  min-width: 200px;
  padding: 6px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
  z-index: 2000;
}

/* Dropdown links */
.wix-dropdown-menu a{
  display: block;
  padding: 10px 16px;
  color: #ffffff;
  font-size: 18px;
  text-decoration: none;
  opacity: 0.85;
}

.wix-dropdown-menu a:hover{
  color: rgba(210,180,140,.95);
  background: rgba(210,180,140,.10);
  opacity: 0.9;
  }

/* SHOW dropdown */
.wix-nav-dropdown:hover .wix-dropdown-menu{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* ================================
   LOGIN (RIGHT EDGE)
================================ */
.wix-actions{
  margin-left: 20px;
}

.wix-login{
  color: #ffffff;
  text-decoration: none;
  font-size: 16px;
  opacity: 0.7;
}

.wix-login:hover{
  opacity: 1;
}

/* ================================
   RESPONSIVE
================================ */
@media (max-width: 1024px){
  .wix-header-inner{
    padding: 12px 20px;
  }
  .wix-brand img{
    height: 70px;
  }
}


/* Layout helpers */
.wrap{ max-width:var(--max); margin:0 auto; padding:0 18px; }
.grid-2{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:22px;
  align-items:stretch;
}

/* Hero */
.hero{
  min-height:560px;
  background-size:cover;
  background-position:center;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.45);
}
.hero-inner{
  position:relative;
  padding:0 18px;
}
.hero-title{
  margin:0;
  color:#fff;
  font-size:56px;
  font-weight:700;
  letter-spacing:.2px;
}
.hero-subtitle{
  margin:14px 0 0;
  color:#fff;
  font-size:22px;
  letter-spacing:.2px;
}

/* Sections */
.section{
  padding:70px 0;
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  
}
.section-alt{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
}
.section-copy{
  display:flex;
  flex-direction:column;
  justify-content:stretch;
}
.section-title{
  margin:0 0 14px;
  font-size:42px;
  font-weight:700;
  color: rgba(210,180,140,.75);
}
.section-text{
  margin:0 0 18px;
  color:white;
  line-height:1.7;
  font-size:24px;
  max-width:60ch;
  opacity: 60%;
}

.section-image{
  border-radius:var(--radius);
  background-size:cover;
  background-position:center;
  min-height:500px;
}

/* Buttons */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:18px 16px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  letter-spacing:.6px;
  font-size:16px;
  width:max-content;
}
.btn-primary{
  background:rgba(210,180,140,.65);
  color:black;
}
.btn-ghost{
  background:transparent;
  color:#000;
  border:1px solid rgba(0,0,0,.25);
}

/* CTA strip */
.cta-strip{
  background:#000;
  color:#fff;
  padding:34px 0;
}
.cta-strip-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  font-size:20px;
}
.cta-title{ font-size:32px; font-weight:700; padding-bottom: 24;}
.cta-sub{ color:rgba(255,255,255,.75); margin-top:4px; }
.cta-actions{ display:flex; gap:12px; flex-wrap:wrap; }
.cta-strip .btn-ghost{
  color:#fff;
  border-color:rgba(255,255,255,.28);
}

/* Footer (Wix-style: left contact + middle form + right links) */
.wix-footer{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  color:#fff;
  padding:56px 0;
  border-top: 2px solid rgba(212,175,55,.35); /* gold-ish */
  border-bottom:2px solid var(--line);
}

.wix-footer-inner{
  width:100%;
  max-width: 1800px;
  margin:0 auto;
  padding:0 90px;

  display:grid;
  grid-template-columns: 1.1fr 1.4fr .35fr; /* left / form / links */
  gap:56px;
  align-items:start;
  font-size:18px;
  letter-spacing:.2px;
}

/* LEFT */
.footer-left .footer-title{
  margin: 0 0 18px;
  font-size: 46px;
  font-weight: 700;
  letter-spacing: .2px;
  color:rgba(210,180,140,.75);
}

.footer-left .footer-row{
  display:flex;
  gap:14px;
  margin:18px 0;
  color:rgba(210,180,140,.75);
  line-height:1.5;
}

.footer-left .footer-icon{
  width: 28px;
  opacity: .85;
  flex: 0 0 28px;
  font-size: 32px;
}

.footer-left .footer-copy{
  margin-top:34px;
  color:rgba(210,180,140,.65);
  font-size:14px;
}

/* MIDDLE FORM */
.footer-form-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:22px 38px;
}

.footer-form-grid .field label{
  display:block;
  color:rgba(210,180,140,.75);
  font-size:20px;
  margin-bottom:10px;
}

.footer-form-grid .field input,
.footer-form-grid .field textarea{
  width:100%;
  background:transparent;
  border:none;
  border-bottom:1px solid rgba(210,180,140,.35);
  color:rgba(255,255,255,.86);
  padding:10px 2px;
  outline:none;
  font-size:18px;
}

.footer-form-grid .field textarea{
  resize:vertical;
  min-height:90px;
}

.footer-form-grid .field input:focus,
.footer-form-grid .field textarea:focus{
  border-bottom-color: rgba(210,180,140,.85);
}

.footer-form-grid .field-full{
  grid-column: 1 / -1;
}

.footer-submit{
  width:100%;
  padding:16px 18px;
  background:transparent;
  border:1px solid rgba(210,180,140,.45);
  color:rgba(210,180,140,.92);
  border-radius:0;
  font-size:18px;
  letter-spacing:.3px;
  cursor:pointer;
  transition: transform .12s ease, background .12s ease, border-color .12s ease;
}

.footer-submit:hover{
  background: rgba(210,180,140,.08);
  border-color: rgba(210,180,140,.85);
  transform: translateY(-1px);
}

/* RIGHT LINKS */
.footer-links{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding-top: 22px;
  
}

.footer-links a{
  color:rgba(210,180,140,.75);
  text-decoration:none;
  font-size:24px;
}

.footer-links a:hover{
  color:rgba(210,180,140,.95);
}

/* Responsive */
@media (max-width: 1100px){
  .wix-footer-inner{
    padding:0 24px;
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .footer-form-grid{
    grid-template-columns: 1fr;
  }

  .footer-links{
    flex-direction: row;
    flex-wrap: wrap;
    gap: 14px 22px;
    padding-top: 0;
  }
}

 /* Footer dividers */
.footer-divider{
  width:1px;
  background: linear-gradient(
    to bottom,
    transparent,
    rgba(212,175,55,.35),
    transparent
  );
  opacity:.85;
}

/* Mobile: switch to horizontal divider */
@media (max-width: 1100px){
  .footer-divider{
    width:100%;
    height:1px;
    background: linear-gradient(
      to right,
      transparent,
      rgba(212,175,55,.35),
      transparent
    );
  }
}

.footer-section{
  position: relative;
  padding: 0 40px;
}

/* Vertical separator line */
.footer-section:not(:last-child)::after{
  content:"";
  position:absolute;
  top:10%;
  right:0;
  width:1px;
  height:80%;
  background: linear-gradient(
    to bottom,
    transparent,
    rgba(212,175,55,.35),
    transparent
  );
}




/* Responsive */
@media (max-width: 900px){
  .grid-2{ grid-template-columns: 1fr; }
  .hero-title{ font-size:40px; }
  .wix-nav{ gap:16px; justify-content:center; }
  .wix-actions{ margin-left:0; }
}


/* IMAGE CAROUSEL (About section) */
.about-carousel{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  padding:80px 0;
  
}


.carousel-wrap{
  max-width:1200px;
  margin:0 auto;
  padding:0 26px;
  }

.carousel-title{
  color:var(--gold);
  font-size:40px;
  margin:0 0 24px;
}

.carousel{
  position:relative;
  overflow:hidden;
  border-radius:10px;
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
}

.carousel-track{
  display:flex;
  transition:transform .6s ease;
}

.carousel-slide{
  min-width:100%;
  height:520px;
  background-size:cover;
  background-position:center;
}

/* Buttons */
.carousel-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:50%;
  border:none;
  background:rgba(0,0,0,.55);
  color:#fff;
  font-size:28px;
  cursor:pointer;
}
.carousel-btn.prev{ left:18px; }
.carousel-btn.next{ right:18px; }

/* Dots */
.carousel-dots{
  margin-top:18px;
  display:flex;
  justify-content:center;
  gap:12px;
}
.carousel-dots .dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:rgba(255,255,255,.3);
  cursor:pointer;
}
.carousel-dots .dot.active{
  background:var(--gold);
}

/* Responsive */
@media (max-width: 900px){
  .carousel-slide{ height:360px; }
  .carousel-title{ font-size:32px; }
}
/* Fade carousel */
.carousel-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:18px;
}

.carousel-title{
  color:rgba(210,180,140,.75);
  font-size:40px;
  margin:0;
 }

.carousel-link{
  color:rgba(255,255,255,.75);
  text-decoration:none;
  border-bottom:1px solid rgba(212,195,155,.35);
  padding-bottom:2px;
}
.carousel-link:hover{ color:#fff; }

.fade-carousel{
  position:relative;
  height:520px;
  border-radius:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
}

.fade-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;          /* IMPORTANT for <figure> */
  background-size:cover;
  background-position:center;
  opacity:0;
  transition:opacity .75s ease;
}
.fade-slide.active{ opacity:1;outline:4px solid lime;}
.fade-slide{ margin:0; }

.fade-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(0deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.15) 55%, rgba(0,0,0,.05) 100%);
}

.fade-caption{
  position:absolute;
  left:22px;
  right:22px;
  bottom:18px;
  color:#fff;
  z-index:2;
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-left: 20px;
}

.fade-title{
  font-size:26px;
  font-weight:700;
  letter-spacing:.2px;
}

.fade-text{
  color:rgba(255,255,255,.78);
  max-width:72ch;
  line-height:1.5;
  font-size:20px;
}

/* Buttons */
.fade-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:50%;
  border:none;
  background:rgba(0,0,0,.55);
  color:#fff;
  font-size:28px;
  cursor:pointer;
  z-index:3;
}
.fade-btn.prev{ left:18px; }
.fade-btn.next{ right:18px; }

/* Dots */
.fade-dots{
  margin-top:14px;
  display:flex;
  justify-content:center;
  gap:10px;
}
.fade-dots .dot{
  width:10px;
  height:10px;
  border-radius:50%;
  border:none;
  background:rgba(255,255,255,.28);
  cursor:pointer;
}
.fade-dots .dot.active{ background:var(--gold); }

/* Lightbox */
.lightbox{
  position:fixed;
  inset:0;
  display:none;
  z-index:999;
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
}
.lightbox.open{ display:block; }

.lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.78);
}

.lightbox-panel{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:min(1000px, 92vw);
  background:rgba(8,18,24,.96);
  border:1px solid rgba(212,195,155,.35);
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 30px 80px rgba(0,0,0,.55);
}

.lightbox-img{
  width:100%;
  display:block;
  max-height:72vh;
  object-fit:contain;
  background:#000;
}

.lightbox-meta{
  padding:14px 16px 18px;
  color:#fff;
}

.lightbox-title{
  font-weight:800;
  font-size:18px;
  margin-bottom:6px;
  color:var(--gold);
}

.lightbox-caption{
  color:rgba(255,255,255,.75);
  line-height:1.5;
  font-size:14px;
}

.lightbox-close{
  position:absolute;
  right:10px;
  top:8px;
  width:40px;
  height:40px;
  border-radius:10px;
  border:none;
  background:rgba(0,0,0,.45);
  color:#fff;
  font-size:26px;
  cursor:pointer;
  z-index:2;
}

@media (max-width: 900px){
  .fade-carousel{ height:360px; }
  .carousel-title{ font-size:32px; }
}


/* Portfolio page */
.portfolio{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  padding:70px 0;
}
.portfolio-wrap{
  max-width:1600px;
  margin:0 auto;
  padding:0 26px;
  
}
.portfolio-title{
  margin:0 0 8px;
  font-size:48px;
  color:rgba(210,180,140,.75);
  
}
.portfolio-sub{
  margin:0 0 22px;
  color:white;
  opacity: 60%;
  font-size:22px;
  padding-bottom: 30px;
}
.portfolio-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
}
.portfolio-card{
  position:relative;
  height:280px;
  border:none;
  border-radius:10px;
  overflow:hidden;
  cursor:zoom-in;
  background-size:cover;
  background-position:center;
  padding:0;
}
.pc-overlay{
  position:absolute; inset:0;
  background:linear-gradient(0deg, rgba(0,0,0,.70) 0%, rgba(0,0,0,.18) 55%, rgba(0,0,0,.05) 100%);
}
.pc-meta{
  position:absolute;
  left:14px; right:14px; bottom:12px;
  color:#fff;
  text-align:left;
}
.pc-title{ font-weight:800; font-size:16px; margin-bottom:4px; }
.pc-caption{ color:rgba(255,255,255,.75); font-size:13px; line-height:1.35; }

@media (max-width: 980px){
  .portfolio-grid{ grid-template-columns:1fr; }
  .portfolio-card{ height:240px; }
}


.contact{
  background:#fff;
  color:#fff;
  padding:0;                 /* full-screen section */
}

.contact-alt{
  background:#f6f6f6;
  padding:0;
}

/* Full-width grid across the whole screen */
.contact-inner{
  width:100%;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns: 1.05fr 1.25fr 0.35fr; /* left info | form | links */
  min-height: 720px;         /* fills screen nicely */
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
}

/* Add the vertical dividers like Wix */
.contact-left,
.contact-right{
  padding:90px 90px;
}

.contact-left{
  border-right:2px solid var(--line);
}

.contact-right{
  border-right:2px solid var(--line);
  position:relative;
}

/* Links column (right side menu) */
.contact-links{
  padding:110px 70px 0 40px;
  display:flex;
  flex-direction:column;
  gap:14px;
  align-items:flex-start;
}

.contact-links a{
  color:rgba(255,255,255,.75);
  text-decoration:none;
  font-size:14px;
}
.contact-links a:hover{ color:#fff; }

/* Keep form width consistent */
.contact-form{
  max-width:520px;
}

/* Gold accent divider between Contact & Footer */
.contact-footer-divider{
  height:2px;
  width:100%;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(212,195,155,.85) 15%,
    rgba(212,195,155,1) 50%,
    rgba(212,195,155,.85) 85%,
    transparent 100%
  );
}


/* Responsive */
@media (max-width: 1100px){
  .contact-inner{
    grid-template-columns: 1fr;
    min-height:auto;
  }
  .contact-left, .contact-right{
    padding:60px 24px;
    border-right:none;
    border-bottom:2px solid var(--line);
  }
  .contact-links{
    padding:40px 24px;
    border-bottom:none;
  }
}


/* Testimonials */
.testimonials{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  padding:90px 0;
  width: 100%;
}

.testimonials-wrap{
  max-width:1200px;
  margin:0 auto;
  padding:0 26px;
}

.testimonials-head{
  margin-bottom:22px;
}

.testimonials-title{
  margin:0 0 10px;
  font-size:44px;
  color:rgba(210,180,140,.75);
}

.testimonials-sub{
  color:rgba(255,255,255,.72);
  max-width:80ch;
  font-size:20px;
}

.t-carousel{
  position:relative;
  border:1px solid rgba(212,195,155,.25);
  border-radius:12px;
  overflow:hidden;
  min-height:260px;
  background:rgba(0,0,0,.18);
}

.t-slide{
  position:absolute;
  inset:0;
  padding:38px 44px;
  opacity:0;
  transition:opacity .6s ease;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
}

.t-slide.active{ opacity:1; }

.t-stars{
  color:#ffb800;
  letter-spacing:2px;
  font-size:40px;
  padding-left: 50px;
  opacity: 40%;
}

.t-quote{
  margin:0;
  color:white;
  font-size:18px;
  line-height:1.65;
  max-width:80ch;
  font-size: 20px;
  padding-left: 50px;
  opacity: 60%;
}

.t-person{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding-left: 25px;
  opacity: 60%;
  color: white;
}

.t-name{
  font-weight:600;
  color:white;
  letter-spacing:.2px;
  font-size:26px;
  padding-left: 25px;
  opacity: 60%;

}

.t-meta{
  color:black;
  font-size:18px;
  padding-left: 25px;
  opacity: 60%;
}

/* Buttons */
.t-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:50%;
  border:none;
  background:rgba(0,0,0,.55);
  color:#fff;
  font-size:28px;
  cursor:pointer;
}
.t-btn.prev{ left:14px; }
.t-btn.next{ right:14px; }

/* Dots */
.t-dots{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:16px;
}
.t-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  border:none;
  background:rgba(255,255,255,.25);
  cursor:pointer;
}
.t-dot.active{ background:var(--gold); }

@media (max-width: 900px){
  .testimonials{ padding:60px 0; }
  .testimonials-title{ font-size:34px; }
  .t-slide{ padding:28px 20px; }
  .t-quote{ font-size:16px; }
}


/* --- HARD OVERRIDE: Fade carousel must show images --- */
.fade-carousel{
  position:relative !important;
  height:520px !important;
  overflow:hidden !important;
  border-radius:10px;
}

.fade-carousel .fade-slide{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  display:block !important;
  margin:0 !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  opacity:0 !important;
  z-index:1 !important;
}

.fade-carousel .fade-slide.active{
  opacity:1 !important;
  z-index:2 !important;
}

.fade-carousel .fade-overlay{
  position:absolute;
  inset:0;
  z-index:3;
  background:linear-gradient(0deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.15) 55%, rgba(0,0,0,.05) 100%);
}

.fade-carousel .fade-caption{
  position:absolute;
  left:22px;
  right:22px;
  bottom:18px;
  z-index:4;
  color:#fff;
}

/* Insights hero */
.insights-hero{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  padding:70px 0 40px;
}
.insights-hero-inner{
  max-width:1600px;
  margin:0 auto;
  padding:0 26px;
  color: rgba(210,180,140,.75);
}

.insights-hero h1{
  margin:0 0 10px;
  font-size:52px;
  letter-spacing:.2px;
}
.insights-hero p{
  margin:0;
  max-width:85ch;
  color:white;
  line-height:1.6;
  font-size: 24px;
  opacity: 60%;
}

/* Blog grid */
.insights-grid{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  padding:20px 0 80px;
}
.insights-grid-inner{
  max-width:1600px;
  margin:0 auto;
  padding:0 26px;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
}

.blog-card{
  text-decoration:none;
  color:#111;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  transition:transform .2s ease, box-shadow .2s ease;
}
.blog-card:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 40px rgba(0,0,0,.12);
}

.blog-cover{
  height:180px;
  background:#0b141b;
  background-size:cover;
  background-position:center;
}
.blog-body{ padding:16px 16px 18px; }

.blog-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}

.blog-chip{
  display:inline-flex;
  align-items:center;
  height:26px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(212,195,155,.55);
  color:var(--gold);
  font-size:16px;
  letter-spacing:.2px;
  background:gold;
  
}
.blog-meta{
  font-size:12px;
  color:#666;
}

.blog-title{
  margin:0 0 8px;
  font-size:18px;
  line-height:1.35;
  color: #0b141b;
  }
.blog-excerpt{
  margin:0 0 14px;
  color:#444;
  line-height:1.55;
}
.blog-cta{
  color:#0b141b;
  font-weight:700;
}

/* Blog detail */
.blog-detail{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  padding:60px 0 90px;
}
.blog-detail-inner{
  max-width:900px;
  margin:0 auto;
  padding:0 26px;
}
.blog-back{
  display:inline-block;
  text-decoration:none;
  color: white;
  opacity: 60%;
  margin-bottom:18px;

}
.blog-detail-head{ margin-bottom:18px; }
.blog-detail-meta{ color:#666; margin:10px 0 10px; font-size:16px; }
.blog-detail-title{ margin:0 0 10px; font-size:46px; line-height:1.12; color:rgba(210,180,140,.75); }
.blog-detail-excerpt{ margin:0; color:#444; line-height:1.7; max-width:85ch; font-size: 24px; color:white; opacity:60% ;}

.blog-detail-cover{
  height:360px;
  border-radius:14px;
  background-size:cover;
  background-position:center;
  margin:24px 0 22px;
  border:1px solid rgba(0,0,0,.08);
}

.blog-content h2{
  margin:26px 0 10px;
  font-size:24px;
  color: rgba(210,180,140,.75);
}

.blog-content p{
  margin:0 0 18px;
  color: white;
  opacity: 60%;
  line-height:1.8;
  font-size:20px;
}
.blog-content ul{
  margin:0 0 20px 18px;
  color: white;
  opacity: 60%;
  line-height:1.8;
  font-size:20px;
}

.blog-detail-cta{
  margin-top:30px;
  border-radius:14px;
  border:1px solid rgba(212,195,155,.45);
  background:linear-gradient(180deg, rgba(8,18,24,.98) 0%, rgba(0,0,0,.90) 100%);
  color:#fff;
  padding:18px 18px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.cta-title{ font-weight:900; color:var(--gold); margin-bottom:4px; }
.cta-text{ color:rgba(255,255,255,.75); }
.cta-btn{
  text-decoration:none;
  padding:12px 16px;
  border-radius:10px;
  border:1px solid rgba(212,195,155,.75);
  color:var(--gold);
  font-weight:800;
}
.cta-btn:hover{ background:rgba(212,195,155,.12); }

/* Vlogs */
.vlog-grid{
  background:#fff;
  padding:20px 0 80px;
}
.vlog-grid-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 26px;
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:16px;
}

.vlog-card{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}
.vlog-embed{
  position:relative;
  width:100%;
  padding-top:56.25%;
  background:#000;
}
.vlog-embed iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.vlog-body{ padding:16px; }
.vlog-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.vlog-meta{ font-size:12px; color:#666; }
.vlog-title{ font-weight:900; font-size:18px; margin-bottom:8px; }
.vlog-desc{ color:#444; line-height:1.6; }

@media (max-width: 980px){
  .insights-grid-inner{ grid-template-columns:1fr; }
  .vlog-grid-inner{ grid-template-columns:1fr; }
  .blog-detail-title{ font-size:36px; }
}

/* =========================
   BOOK PAGE (Matches Home)
========================= */
.book-page{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 55%, rgba(8,18,24,1) 100%);
  color: #fff;
  padding: 60px 0 80px;
}

.book-wrap{
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 40px;
}

.book-head{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
}

.book-title{
  margin: 0;
  font-size: 44px;
  letter-spacing: .3px;
  font-weight: 800;
  color: rgba(210,180,140,.75);
}

.book-subtitle{
  margin: 8px 0 0;
  color: rgba(255,255,255,.72);
  line-height: 1.6;
  max-width: 80ch;
  font-size: 24px;
  opacity: 60%;
}

/* Gold accent line */
.book-accent{
  height: 1px;
  width: 100%;
  background: rgba(212,195,155,.35);
  margin: 18px 0 22px;
}

/* Embed shell card */
.book-embed-card{
  border-radius: 14px;
  border: 1px solid rgba(212,195,155,.22);
  background: rgba(255,255,255,.03);
  box-shadow: 0 18px 50px rgba(0,0,0,.45);
  overflow: hidden;
}

/* This keeps the embed full width and tall enough */
.book-embed{
  width: 100%;
  min-height: 820px;
  background: #fff; /* embed needs a white base */
}

/* Optional: add subtle padding around embed */
.book-embed-inner{
  padding: 10px;
  background: rgba(255,255,255,.02);
}

/* A small trust bar (optional) */
.book-trust{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin-top: 14px;
  color: rgba(255,255,255,.68);
  font-size: 13px;
}

.book-chip{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(212,195,155,.28);
  background: rgba(8,18,24,.7);
  border-radius: 999px;
  padding: 8px 12px;
  white-space: nowrap;
}

/* Responsive */
@media (max-width: 900px){
  .book-wrap{ padding: 0 18px; }
  .book-title{ font-size: 34px; }
  .book-embed{ min-height: 760px; }
}


/* ===== Materials Page ===== */
.materials-hero{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 60%, rgba(8,18,24,1) 100%);
  color:#fff;
  padding:70px 0 50px;
}
.materials-wrap{
  width:100%;
  max-width:1600px;
  margin:0 auto;
  padding:0 40px;
}
.materials-title{
  margin:0 0 10px;
  font-size:52px;
  font-weight:900;
  letter-spacing:.3px;
  color: rgba(210,180,140,.75);
}
.materials-subtitle{
  margin:0;
  color:rgba(255,255,255,.72);
  line-height:1.7;
  max-width:90ch;
  font-size: 20px;
  
}
.materials-actions{
  display:flex;
  gap:12px;
  margin-top:18px;
  flex-wrap:wrap;
}
.materials-btn{
  text-decoration:none;
  padding:12px 16px;
  border-radius:999px;
  background:rgba(210,180,140,.65);
  color:#000;
  font-weight:800;
}
.materials-btn-outline{
  text-decoration:none;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid rgba(212,195,155,.7);
  color:var(--gold);
  font-weight:800;
}
.materials-btn-outline:hover{ background:rgba(212,195,155,.12); }

.materials-library{
  background: linear-gradient(180deg, rgba(6,12,16,1) 0%, rgba(0,0,0,1) 60%, rgba(8,18,24,1) 100%);
  padding:26px 0 80px;
}
.materials-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:16px;
}
.materials-search{
  flex:1;
  min-width:260px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.12);
  outline:none;
}
.materials-filters{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.mat-filter{
  border:1px solid rgba(0,0,0,.12);
  border-radius:999px;
  padding:10px 12px;
  cursor:pointer;
  font-size:13px;
  background:rgba(210,180,140,.65);

}
.mat-filter.active{
  border-color:rgba(212,195,155,.9);
  color:var(--gold);
  background:rgba(8,18,24,.92);
}

.materials-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
}
.mat-card{
  text-align:left;
  border:1px solid rgba(0,0,0,.10);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  cursor:pointer;
  padding:0;
  transition:transform .2s ease, box-shadow .2s ease;
}
.mat-card:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 45px rgba(0,0,0,.14);
}
.mat-card-thumb{
  height:160px;
  background:#0b141b;
  background-size:cover;
  background-position:center;
}
.mat-card-body{ padding:14px; }
.mat-chip{
  display:inline-flex;
  align-items:center;
  height:26px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(212,195,155,.55);
  color:white;
  font-size:14px;
  background:rgba(8,18,24,.92);
}
.mat-card-title{ margin:10px 0 6px; font-weight:900; font-size:18px; }
.mat-card-sub{ color:#444; line-height:1.55;font-size: 16px; }
.mat-card-more{ margin-top:10px; font-weight:800; font-size: 16px; }

/* Modal */
.mat-modal{
  position:fixed;
  inset:0;
  z-index:5000;
  display:none;
}
.mat-modal.open{ display:block; }
.mat-modal-backdrop{
  position:absolute; inset:0;
  background:rgba(0,0,0,.65);
}
.mat-modal-panel{
  position:absolute;
  left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(1100px, 94vw);
  max-height:88vh;
  overflow:auto;
  border-radius:16px;
  border:1px solid rgba(212,195,155,.35);
  background:linear-gradient(180deg, rgba(8,18,24,.98) 0%, rgba(0,0,0,.92) 100%);
  color:#fff;
  padding:18px;
}
.mat-modal-close{
  position:sticky;
  top:10px;
  margin-left:auto;
  display:flex;
  width:38px; height:38px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  color:#fff;
  font-size:22px;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.mat-modal-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  margin-top:10px;
}
.mat-modal-title{ margin:8px 0 6px; font-size:30px; }
.mat-modal-sub{ color:rgba(255,255,255,.72); max-width:70ch; }
.mat-modal-thumb{
  width:160px; height:120px;
  border-radius:12px;
  object-fit:cover;
  border:1px solid rgba(255,255,255,.12);
}

.mat-modal-cols{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:18px;
  margin-top:14px;
}
.mat-col h3{ margin:16px 0 8px; color:var(--gold); }
.mat-col p, .mat-col li{ color:rgba(255,255,255,.82); line-height:1.7; }

.mat-combos{ display:flex; flex-wrap:wrap; gap:8px; }
.mat-combo{
  border:1px solid rgba(212,195,155,.35);
  background:rgba(255,255,255,.04);
  padding:8px 10px;
  border-radius:999px;
  font-size:12px;
}

.mat-related-grid{ display:grid; gap:10px; }
.mat-related-card{
  text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  padding:12px;
  border-radius:12px;
  color:#fff;
}
.mat-related-k{ color:var(--gold); font-weight:900; font-size:12px; }
.mat-related-t{ margin-top:4px; color:rgba(255,255,255,.85); }
.mat-related-empty{ color:rgba(255,255,255,.65); }

.mat-cta{
  margin-top:16px;
  border-radius:14px;
  border:1px solid rgba(212,195,155,.35);
  padding:14px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}
.mat-cta-title{ font-weight:900; color:var(--gold); }
.mat-cta-text{ color:rgba(255,255,255,.75); }
.mat-cta-btn{
  text-decoration:none;
  padding:10px 14px;
  border-radius:10px;
  border:1px solid rgba(212,195,155,.75);
  color:var(--gold);
  font-weight:900;
}
.mat-cta-btn:hover{ background:rgba(212,195,155,.12); }

@media (max-width: 980px){
  .materials-wrap{ padding:0 18px; }
  .materials-grid{ grid-template-columns:1fr; }
  .mat-modal-cols{ grid-template-columns:1fr; }
  .mat-modal-thumb{ display:none !important; }
}

/* ADMIN UI (matches your dark wix theme) */
.admin-card{
  display:block;
  padding:18px 18px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  text-decoration:none;
}
.admin-card-title{
  color:#fff;
  font-weight:800;
  font-size:18px;
}
.admin-card-sub{
  margin-top:6px;
  color:rgba(255,255,255,.70);
  font-size:14px;
}

.btn-gold{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  background:#c9b28a;
  color:#111;
  border:1px solid rgba(0,0,0,.2);
}
.btn-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:10px;
  text-decoration:none;
  font-weight:600;
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.03);
}
.btn-danger{
  padding:8px 12px;
  border-radius:10px;
  border:1px solid rgba(255,80,80,.25);
  background:rgba(255,80,80,.08);
  color:#ffb3b3;
  font-weight:700;
}

.admin-table{
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  overflow:hidden;
}
.admin-row{
  display:grid;
  grid-template-columns: 2fr 1fr 1fr 1.2fr 1fr;
  gap:12px;
  padding:12px 14px;
  align-items:center;
  border-top:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.9);
}
.admin-head{
  background:rgba(255,255,255,.05);
  font-weight:800;
  color:#fff;
  border-top:none;
}
.admin-form{
  margin-top:16px;
  max-width:920px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.admin-form label{
  color:rgba(255,255,255,.75);
  font-size:13px;
  margin-top:8px;
}
.admin-form input, .admin-form textarea{
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  border-radius:12px;
  padding:12px 12px;
  outline:none;
}
.admin-form textarea{ resize:vertical; }

.grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
@media (max-width: 900px){
  .admin-row{ grid-template-columns: 1.6fr 1fr; }
  .grid-2{ grid-template-columns:1fr; }
}

/* Admin Hub – Site Maintenance cards (matches ACG internal vibe) */
.acg-admin-hero{
  background: linear-gradient(135deg, rgba(255,193,7,.16), rgba(13,110,253,.10));
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 14px;
  padding: 18px 18px;
}
.acg-admin-title{
  margin: 0;
  font-weight: 800;
  letter-spacing: .2px;
}
.acg-admin-sub{
  margin-top: 6px;
  color: rgba(0,0,0,.60);
}

.acg-admin-card{
  display:block;
  text-decoration:none;
  background:#fff;
  border:1px solid rgba(0,0,0,.07);
  border-radius:14px;
  padding:16px;
  transition: transform .12s ease, box-shadow .12s ease;
}
.acg-admin-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(0,0,0,.10);
}
.acg-admin-card-title{
  font-weight:800;
  color:#111;
  margin-bottom:6px;
}
.acg-admin-card-sub{
  color: rgba(0,0,0,.62);
  font-size: 14px;
}


/* Admin Hub - Website Administration tiles */
.site-admin-tile{
  display:block;
  text-decoration:none;
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  padding:16px 16px;
  transition: transform .12s ease, box-shadow .12s ease;
  min-height: 94px;
}
.site-admin-tile:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(0,0,0,.10);
}
.site-admin-tile .tile-title{
  font-weight:800;
  color:#111;
  margin-bottom:6px;
}
.site-admin-tile .tile-sub{
  color: rgba(0,0,0,.62);
  font-size: 14px;
  line-height: 1.35;
}

/* Optional: highlight Website Administration tab content box */
.acg-admin-section{
  background: linear-gradient(135deg, rgba(255,193,7,.14), rgba(13,110,253,.08));
  border:1px solid rgba(0,0,0,.06);
  border-radius:14px;
  padding:16px;
}


/* ---------- About page ---------- */
.page-hero{
  position:relative;
  width:100%;
  min-height: 56vh;
  display:flex;
  align-items:flex-end;
  padding: 110px 0 56px;
  overflow:hidden;
}

.page-hero-bg{
  position:absolute;
  inset:0;
  background:
    url("/static/images/aboutus.jpg") center/cover no-repeat;
  transform: scale(1.03);
}

.page-hero-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.80) 70%, rgba(0,0,0,.92));
}

.page-hero-inner{
  position:relative;
  width:100%;
  max-width: 1600px;
  margin:0 auto;
  padding: 0 90px;
  color:#fff;
}

.crumbs{
  font-size:14px;
  color: rgba(255,255,255,.70);
  margin-bottom: 14px;
}
.crumbs a{ color: rgba(255,255,255,.85); text-decoration:none; }
.crumbs a:hover{ color:#fff; }
.crumbs .sep{ margin: 0 8px; opacity:.5; }

.page-hero-inner h1{
  max-width: 22ch;
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1.05;
  margin: 0 0 14px;
  color: rgba(210,180,140,.85);
}

.page-hero-inner p{
  max-width: 80ch;
  font-size: 18px;
  color: rgba(255,255,255,.78);
  line-height: 1.6;
  margin: 0 0 22px;
}

.hero-actions{ display:flex; gap:12px; flex-wrap:wrap; }

.content-section{
  padding: 40px 0;
  background: #060c10;
  color:#fff;
  
}

.content-section.alt{
  background: #050a0e;
}

.content-wrap{
  width:100%;
  max-width: 1500px;
  margin:0 auto;
  padding: 0 90px;
}

.split{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 34px;
  align-items:start;
}

.grid-2{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.content-wrap h2{
  font-size: 34px;
  margin: 0 0 14px;
  color: rgba(210,180,140,.85);
}

.h2-sm{
  font-size: 26px !important;
  margin-bottom: 10px;
}

.content-wrap p{
  color: rgba(255,255,255,.78);
  line-height: 1.7;
  font-size: 18px;
}

.muted{ color: rgba(255,255,255,.72); }

.card, .card-glass{
  border-radius: 16px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.10);
}

.card{
  background: rgba(255,255,255,.03);
}

.card-glass{
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  backdrop-filter: blur(6px);
}

.facts{ margin-top: 10px; display:flex; flex-direction:column; gap:12px; }
.fact{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(0,0,0,.25);
  border: 1px solid rgba(255,255,255,.08);
}
.fact span{ color: rgba(255,255,255,.70); }
.fact b{ color: rgba(210,180,140,.92); }

.feature-list{ margin-top: 18px; display:flex; flex-direction:column; gap:14px; }
.feature{ display:flex; gap:12px; }
.feature-icon{
  width:28px; height:28px;
  border-radius: 999px;
  display:flex; align-items:center; justify-content:center;
  background: rgba(210,180,140,.15);
  border: 1px solid rgba(210,180,140,.25);
  color: rgba(210,180,140,.95);
  flex: 0 0 28px;
}
.feature-title{ font-weight:800; color:#fff; }
.feature-sub{ color: rgba(255,255,255,.72); margin-top: 4px; }

.quote{
  font-size: 18px;
  color: rgba(210,180,140,.92);
  line-height: 1.65;
  padding-left: 14px;
  border-left: 3px solid rgba(210,180,140,.35);
}

.values-table{
  margin-top: 16px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  overflow:hidden;
}
.values-head, .values-row{
  display:grid;
  grid-template-columns: .5fr 1.5fr;
  gap: 18px;
  padding: 14px 16px;
}
.values-head{
  background: rgba(255,255,255,.05);
  font-weight: 900;
}
.values-row{
  border-top: 1px solid rgba(255,255,255,.07);
  color: rgba(255,255,255,.78);
}
.v-name{ font-weight: 800; color:#fff; }
.v-desc{ color: rgba(255,255,255,.72); }

.pill-grid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top: 16px;
}
.pill{
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: rgba(210,180,140,.90);
  font-weight: 700;
}

.check-grid{
  margin-top: 12px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.check{
  padding: 14px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.25);
  color: rgba(255,255,255,.80);
}
.check::before{
  content:"✅ ";
  color: rgba(210,180,140,.95);
}

.bullets{
  margin: 10px 0 0;
  padding-left: 18px;
  color: rgba(255,255,255,.78);
}
.bullets li{ margin: 8px 0; }

.cta-band{
  padding: 60px 0;
  background: linear-gradient(135deg, rgba(210,180,140,.12), rgba(0,0,0,.70));
  border-top: 1px solid rgba(255,255,255,.08);
}
.cta-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap: 18px;
  flex-wrap:wrap;
}
.cta-actions{ display:flex; gap:12px; flex-wrap:wrap; }

/* Buttons (if not already defined) */
.btn-gold{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius: 999px;
  background: rgba(210,180,140,.92);
  color:#111;
  text-decoration:none;
  font-weight: 900;
  border: 1px solid rgba(0,0,0,.2);
}
.btn-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius: 999px;
  background: transparent;
  color: rgba(255,255,255,.90);
  text-decoration:none;
  font-weight: 800;
  border: 1px solid rgba(255,255,255,.18);
}
.btn-outline:hover{
  border-color: rgba(210,180,140,.55);
  color: rgba(210,180,140,.92);
}

/* Responsive */
@media (max-width: 1100px){
  .page-hero-inner,
  .content-wrap{ padding: 0 24px; }

  .split{ grid-template-columns: 1fr; }
  .grid-2{ grid-template-columns: 1fr; }
  .check-grid{ grid-template-columns: 1fr; }
}

/* Services submenu under header */
.nav-dd{ position:relative; display:flex; align-items:center; }
.nav-dd-btn{ display:flex; align-items:center; gap:2px; }
.nav-dd-btn::after{
  content:"▾";
  font-size:24px;
  opacity:.8;
  margin-left:1px;
}

.nav-dd-menu{
  position:absolute;
  top: calc(100% + 3px);
  right: 0;
  min-width: 200px;
  background: #0b141b;
  border: 1px solid rgba(212,195,155,0.35);
  border-radius: 10px;
  padding-top: 1px;
  display:none;
  z-index: 2000;
  box-shadow: 0 18px 50px rgba(0,0,0,.45);
  transform: translateY(6px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
}

.nav-dd-menu a{
  display:block;
  padding: 10px 16px;
  color: rgba(255,255,255,.88);
  text-decoration:none;
  font-size: 18px;
  opacity: 0.85;
}

.nav-dd-menu a:hover{
  background: rgba(210,180,140,.10);
  color: rgba(210,180,140,.95);
}

.nav-dd:hover .nav-dd-menu{ display:block; }

/* Services subnav band inside Services pages */
.subnav-band{
  background: rgba(0,0,0,.65);
  border-top: 1px solid rgba(255,255,255,.06);
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.services-subnav{
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
  padding: 10px 0;
}

.services-subnav a{
  padding: 10px 14px;
  border-radius: 999px;
  text-decoration:none;
  color: rgba(255,255,255,.78);
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  font-weight: 800;
  letter-spacing:.2px;
  font-size: 14px;
}

.services-subnav a:hover{
  border-color: rgba(210,180,140,.55);
  color: rgba(210,180,140,.92);
}

.services-subnav a.active{
  background: rgba(210,180,140,.92);
  color: #111;
  border-color: rgba(210,180,140,.92);
}

/* Service cards grid */
.section-head{ margin-bottom: 18px; }
.services-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 14px;
}

.svc-card{
  display:block;
  text-decoration:none;
  border-radius: 16px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
  min-height: 168px;
  color:#fff;
}

.svc-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(0,0,0,.35);
  border-color: rgba(210,180,140,.28);
}

.svc-card.static{
  cursor: default;
  opacity: .95;
}

.svc-icon{ font-size: 26px; }
.svc-title{ font-weight: 900; margin-top: 10px; font-size: 18px; }
.svc-sub{ margin-top: 8px; color: rgba(255,255,255,.72); line-height:1.5; }
.svc-cta{ margin-top: 14px; color: rgba(210,180,140,.92); font-weight: 900; }

/* Service detail panel */
.service-panel{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 18px;
  align-items: start;
}

.panel-visual .visual-placeholder{
  border-radius: 16px;
  min-height: 360px;
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding: 18px;
}

.vp-title{ font-weight: 900; color:#fff; }
.vp-sub{ margin-top: 6px; color: rgba(255,255,255,.70); max-width: 46ch; }

/* Process strip */
.process-strip{
  margin-top: 14px;
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.25);
  color: rgba(255,255,255,.78);
}
.process-strip span{ font-weight: 800; }
.process-strip i{ opacity: .6; }

/* Responsive */
@media (max-width: 1100px){
  .services-grid{ grid-template-columns: 1fr; }
  .service-panel{ grid-template-columns: 1fr; }
}

/* Client Portal photo tiles */
.portal-photo-tile{
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
  height: 160px;
}

.portal-photo-tile img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* --- Client Portal (scoped) --- */
.client-portal {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 18px;
}

.client-portal .cp-header{
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  align-items:flex-start;
  margin-bottom:18px;
}

.client-portal .cp-title{
  font-size: 26px;
  font-weight: 700;
  margin: 0 0 6px 0;
}

.client-portal .cp-sub{
  opacity:.8;
  font-size:14px;
  line-height:1.35;
}

.client-portal .cp-grid{
  display:grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap:16px;
}

@media(max-width: 992px){
  .client-portal .cp-grid{ grid-template-columns:1fr; }
}

.client-portal .cp-cards{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:12px;
  margin-bottom:16px;
}

@media(max-width: 992px){
  .client-portal .cp-cards{ grid-template-columns:1fr; }
}

.client-portal .cp-card{
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  border-radius: 14px;
  padding: 14px 14px;
}

.client-portal .cp-label{
  font-size:12px;
  opacity:.75;
  margin-bottom:6px;
}

.client-portal .cp-value{
  font-size:22px;
  font-weight:700;
}

.client-portal .cp-panel{
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  border-radius: 14px;
  overflow:hidden;
}

.client-portal .cp-panel-header{
  padding: 12px 14px;
  font-weight: 700;
  border-bottom: 1px solid rgba(255,255,255,.10);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}

.client-portal .cp-panel-body{
  padding: 12px 14px;
}

.client-portal .cp-btn{
  display:inline-block;
  padding:10px 14px;
  border-radius: 999px;
  text-decoration:none;
  font-weight:600;
  border: 1px solid rgba(255,255,255,.20);
}

.client-portal .cp-btn-primary{
  background: #b08a4a; /* your gold vibe */
  color: #111;
  border-color: transparent;
}

.client-portal .cp-btn-primary:hover{
  filter: brightness(1.05);
}

.client-portal table{
  width:100%;
  border-collapse: collapse;
}

.client-portal th, .client-portal td{
  padding: 10px 8px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  font-size: 14px;
}

.client-portal th{
  opacity:.8;
  text-align:left;
  font-weight:700;
}

.client-portal .text-right{ text-align:right; }

.client-portal .photo-grid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:10px;
}

.client-portal .photo-tile{
  border-radius: 12px;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
}

.client-portal .photo-tile img{
  width:100%;
  height:150px;
  object-fit:cover;
  display:block;
}


/* =========================
   Client Portal (scoped)
   ========================= */
.client-portal{
  max-width: 1200px;
  margin: 0 auto;
}

.cp-header{
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  align-items:flex-start;
  margin-bottom: 18px;
}

.cp-cards{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 18px 0 18px;
}
@media(max-width: 980px){
  .cp-cards{ grid-template-columns: 1fr; }
}

.cp-card{
  border-radius: 16px;
  padding: 16px;
  border: 1px solid rgba(210,180,140,.18);
  background: rgba(255,255,255,.03);
  backdrop-filter: blur(6px);
}
.cp-label{
  font-size: 13px;
  color: rgba(255,255,255,.70);
  margin-bottom: 8px;
}
.cp-value{
  font-size: 24px;
  font-weight: 800;
  color: rgba(210,180,140,.90);
}

.cp-grid{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 16px;
}
@media(max-width: 980px){
  .cp-grid{ grid-template-columns: 1fr; }
}

.cp-panel{
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  overflow:hidden;
}

.cp-panel-head{
  padding: 14px 16px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
}
.cp-panel-title{
  font-weight: 800;
  color: rgba(210,180,140,.85);
}
.cp-panel-body{
  padding: 14px 16px;
}

.cp-row{
  display:flex;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
}
.cp-strong{
  font-weight: 800;
  color: #fff;
}
.cp-muted{
  color: rgba(255,255,255,.70);
  font-size: 13px;
  margin-top: 8px;
}

.cp-table-wrap{ overflow-x:auto; }
.cp-table{
  width:100%;
  border-collapse: collapse;
}
.cp-table th, .cp-table td{
  padding: 12px 10px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  font-size: 14px;
  color: rgba(255,255,255,.88);
}
.cp-table th{
  color: rgba(255,255,255,.70);
  font-weight: 800;
  letter-spacing: .2px;
}
.t-right{ text-align:right; }

.cp-badge{
  display:inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
}
.cp-badge-paid{
  background: rgba(25,135,84,.18);
  border: 1px solid rgba(25,135,84,.35);
  color: rgba(255,255,255,.92);
}
.cp-badge-due{
  background: rgba(255,193,7,.16);
  border: 1px solid rgba(255,193,7,.35);
  color: rgba(255,255,255,.92);
}

.cp-photos{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.cp-photo{
  border-radius: 14px;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  display:block;
}
.cp-photo img{
  width:100%;
  height: 160px;
  object-fit: cover;
  display:block;
}

/* Prevent scroll when mobile menu open */
.no-scroll{ overflow:hidden; }

/* Burger hidden on desktop by default */
.wix-burger{
  display:none;
  width: 46px;
  height: 42px;
  margin-left: 14px;
  border-radius: 14px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(212,175,55,.25);
  cursor: pointer;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 6px;
}

.wix-burger span{
  width: 22px;
  height: 2px;
  background: rgba(255,255,255,.9);
  border-radius: 4px;
  display:block;
}

/* Mobile panel (hidden on desktop) */
.wix-mobile-nav{
  display:none;
  background: rgba(0,0,0,.92);
  border-top: 1px solid rgba(212,175,55,.18);
}

.wix-mobile-nav.open{ display:block; }

.wix-mobile-nav-inner{
  padding: 16px 20px 20px;
  display:flex;
  flex-direction: column;
  gap: 10px;
}

.wix-mobile-nav a,
.wix-mobile-acc-btn{
  text-decoration:none;
  padding: 14px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: rgba(210,180,140,.85);
  font-weight: 800;
  letter-spacing: .4px;
  text-transform: uppercase;
  font-size: 16px;
}

.wix-mobile-acc-btn{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
}

.wix-mobile-acc-panel{
  display:none;
  padding-left: 10px;
  gap: 10px;
  flex-direction: column;
}
.wix-mobile-acc-panel.open{ display:flex; }

.wix-mobile-acc-panel a{
  border-style: dashed;
  text-transform:none;
  font-size: 15px;
  letter-spacing: .2px;
  background: rgba(0,0,0,.18);
}

.wix-mobile-cta{
  background: rgba(210,180,140,.85) !important;
  border-color: rgba(210,180,140,.85) !important;
  color: #000 !important;
}

.wix-mobile-login{
  opacity: .95;
}

/* MOBILE OVERRIDES ONLY */
@media (max-width: 1024px){

  /* Keep your header “feel” but make it fit */
  .wix-header-inner{
    padding: 10px 14px; /* tighter edges */
    gap: 10px;
  }

  /* Keep logo visible but not massive */
  .wix-brand img{
    height: 84px !important;
    width: auto !important;
    margin-right: 0 !important;
  }

  /* Hide desktop nav on mobile */
  .wix-nav{
    display:none;
  }

  /* Show burger */
  .wix-burger{
    display:inline-flex;
  }

  /* Login stays visible */
  .wix-login{
    font-size: 15px;
    opacity: .9;
  }
}

