:root{
  --bg:#0b0b0b; --card:#141414; --text:#f8f8f8; --muted:#bdbdbd;
  --accent:#ffd60a; --accent2:#f5c400; --border:#2a2a2a;
  --glass:rgba(255,214,10,.1);
}

* { box-sizing: border-box; }
html, body { 
  margin: 0; 
  padding: 0; 
  background: transparent; 
  color: var(--text); 
  font-family: 'Segoe UI', 'Helvetica Neue', Arial, 'Liberation Sans', sans-serif; 
}
img { max-width: 100%; display: block; }

.container { width: min(1120px, 92%); margin: 0 auto; background: transparent; }


/* --- GLOBAL ALWAYS-VISIBLE BACKGROUND --- */
html, body { min-height: 100%; }
body{ background: var(--bg); }
body::before{
  content:"";
  position:fixed; inset:0;
  background:url('assets/hero-bg.png') center/cover no-repeat fixed; /* path from CSS file */
  z-index:-2; pointer-events:none;
}
body::after{
  content:"";
  position:fixed; inset:0;
  background:rgba(6,12,7,.55);
  z-index:-1; pointer-events:none;
}
/* NAV */
.nav{
  position:sticky;
  top:0;
  z-index:50;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  background:rgba(0,0,0,.55);
  border-bottom:1px solid var(--border)
}
.nav-inner{display:flex;justify-content:space-between;align-items:center;padding:12px 0;gap:12px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--text);text-decoration:none}
.brand img{height:54px;width:auto;border-radius:8px;box-shadow:0 0 20px rgba(255,214,10,.25)}
.nav a{color:var(--muted);margin-left:18px;text-decoration:none;font-weight:700}
.nav a:hover{color:var(--accent)}

/* BUTTONS */
.btn{display:inline-block;padding:10px 18px;border-radius:12px;font-weight:800;text-decoration:none;transition:.2s ease}
.btn-accent{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#1b1600;box-shadow:0 6px 18px rgba(255,214,10,.35)}
.btn-accent:hover{filter:brightness(1.05);transform:translateY(-1px)}
.btn-ghost{border:1px solid var(--border);color:var(--text)}
.btn-ghost:hover{background:rgba(255,255,255,.08)}

/* HERO */
.hero{position:relative;padding:120px 0 80px}
.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}
.hero-copy h1{font-size:clamp(32px,4vw,56px);line-height:1.1;margin-bottom:12px}
.glow{color:var(--accent);text-shadow:0 0 20px rgba(255,214,10,.5)}
.hero-copy p{color:var(--muted);margin-bottom:16px}
.hero {
  position: relative;
  background: transparent !important;
}
.hero::after {
  content: none !important;   /* removes the dark overlay */
}

.cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.badges{display:flex;gap:10px;flex-wrap:wrap;font-size:14px}
.badges span{background:rgba(255,255,255,.08);padding:6px 10px;border-radius:999px}

.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.glass{
  background:rgba(20,20,20,.6);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}

/* FORM */
form label{display:block;margin:10px 0 4px;font-size:14px;color:var(--muted)}
input,select{width:100%;padding:10px;border-radius:10px;border:1px solid var(--border);background:#0e0e0e;color:var(--text);outline:none}
input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,214,10,.2)}
.form-note{font-size:13px;color:var(--muted);margin-top:6px}

/* SECTIONS */

.section{padding:80px 0}
.section h2{margin-bottom:12px}
.section-lead{color:var(--muted);margin-bottom:24px}

/* Sections transparent */
.hero,
.section {
  background: transparent !important;
}

/* ===== BOOK-FLIP / CENTER-AXIS COVERFLOW ===== */
#services .container { perspective: 1400px; }

.bookflow{
  position: relative;
  width: 100%;
  height: 460px;                 /* carousel height */
  margin-top: 28px;
  transform-style: preserve-3d;  /* keep depth */
  --radius: 520px;               /* distance from center */
  --gapDeg: 360deg;              /* will be divided by count in JS */
  --tilt: 14deg;                 /* slight book tilt */
  --speed: 0.018;                /* rad/ frame, tuned in JS */
}

.page{
  position: absolute;
  top: 0; left: 75%;
  width: 320px;
  height: 440px;
  border-radius: 18px;
  overflow: hidden;
  backface-visibility: hidden;   /* kills mirror/ghost */
  transform-style: preserve-3d;
  box-shadow: 0 16px 40px rgba(0,0,0,.35);
  transition: box-shadow .18s ease;
}
.page:hover{ box-shadow: 0 22px 52px rgba(0,0,0,.5); }

/* full-bleed image */
.page-bg{
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  transform: translateZ(1px);    /* avoid z-fighting with overlays */
  filter: brightness(.68);
}

/* subtle inner gradient for readability */
.page::before{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.15), rgba(0,0,0,.55));
  z-index: 1;
}

/* text overlay */
.page-content{
  position: relative;
  z-index: 2;
  display: flex; flex-direction: column; justify-content: flex-end;
  height: 100%; padding: 18px 18px 20px;
  text-align: center; color: #fff;
}
.page h3{ margin: 0 0 8px; color: var(--accent); font-size: 1.15rem; }
.page p{ margin: 0; font-size: .95rem; color: #f0f0f0; }

/* responsive */
@media (max-width: 900px){
  .bookflow{ --radius: 430px; height: 420px; }
  .page{ width: 280px; height: 400px; }
}
@media (max-width: 600px){
  .bookflow{ --radius: 330px; height: 380px; }
  .page{ width: 240px; height: 340px; }
}


/* ABOUT */
.about{display:grid;grid-template-columns:1.1fr .9fr;gap:32px}
.ticks{list-style:none;padding:0}
.ticks li{margin:8px 0;padding-left:20px;position:relative}
.ticks li::before{content:"✓";position:absolute;left:0;color:var(--accent)}

/* CONTACT */
.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}
.contact-card{text-decoration:none;color:var(--text);transition:transform .2s,box-shadow .2s}
.contact-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.4)}

/* FOOTER */
.footer{border-top:1px solid var(--border);padding:24px 0;text-align:center;font-size:14px;color:var(--muted)}

/* RESPONSIVE */
@media (max-width:900px){
  .hero-inner,.about{grid-template-columns:1fr}
}
@media (max-width:600px){
  .contact-cards{grid-template-columns:1fr}
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  .book .page{animation:none;opacity:1;transform:none;position:static;margin:8px 0}
  .book{height:auto}
}
