/* LOTUS CONSULTING GROUP — styles.css v5 */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --o:#F47421; --od:#D4621A; --a:#F9A825; --y:#FDD835;
  --c:#1E2530; --c2:#252E3D; --c3:#2D3748;
  --cw:#FAF7F2; --cr:#F2EDE4; --cr2:#E6DDD1;
  --mu:#7A8394; --bd:rgba(30,37,48,0.1); --bdd:rgba(255,255,255,0.08);
}
html { scroll-behavior: smooth; }
body { font-family:'Jost',sans-serif; background:var(--cw); color:var(--c); overflow-x:hidden; min-height:100vh; display:flex; flex-direction:column; }
main { flex:1; }

/* ── NAV ── */
nav { position:fixed; top:0; left:0; right:0; z-index:300; display:flex; align-items:center; justify-content:space-between; padding:1rem 6%; background:rgba(30,37,48,0.97); backdrop-filter:blur(20px); border-bottom:1px solid var(--bdd); }
.nav-logo { display:flex; align-items:center; gap:0.9rem; text-decoration:none; }
.nav-logo img { height:36px; width:auto; display:block; object-fit:contain; }
.nav-wt { font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight:600; color:white; display:block; line-height:1; }
.nav-ws { font-size:0.58rem; font-weight:600; letter-spacing:0.22em; text-transform:uppercase; color:var(--o); display:block; margin-top:0.18rem; }
.nav-links { display:flex; gap:2.5rem; list-style:none; }
.nav-links a { font-size:0.75rem; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:rgba(255,255,255,0.45); text-decoration:none; transition:color 0.2s; padding-bottom:0.2rem; border-bottom:1.5px solid transparent; }
.nav-links a:hover, .nav-links a.active { color:var(--o); border-bottom-color:var(--o); }
.nav-cta { font-size:0.75rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--c); background:var(--o); padding:0.65rem 1.4rem; text-decoration:none; transition:background 0.2s; }
.nav-cta:hover { background:var(--a); }

/* ── PAGE HEADER ── */
.page-header { background:var(--c); padding:10rem 6% 6rem; position:relative; overflow:hidden; }
.page-header::before { content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(244,116,33,0.12) 1px,transparent 1px); background-size:32px 32px; }
.ph-top-line { position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--o),var(--a) 60%,transparent); }
.ph-glow { position:absolute; right:5%; bottom:0; width:45vw; height:45vw; border-radius:50%; background:radial-gradient(circle,rgba(244,116,33,0.14) 0%,transparent 70%); pointer-events:none; }
/* Tagline watermark on page headers */
.ph-watermark { position:absolute; bottom:1.5rem; right:6%; font-family:'Cormorant Garamond',serif; font-size:0.85rem; font-style:italic; font-weight:400; letter-spacing:0.15em; color:rgba(255,255,255,0.1); z-index:0; white-space:nowrap; }
.ph-inner { position:relative; z-index:1; max-width:820px; }
.ph-eyebrow { font-size:0.62rem; font-weight:600; letter-spacing:0.24em; text-transform:uppercase; color:var(--o); margin-bottom:1.8rem; display:flex; align-items:center; gap:1rem; }
.ph-eyebrow::before { content:''; width:28px; height:1px; background:var(--o); }
.ph-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2.8rem,5vw,5rem); font-weight:600; line-height:1.0; color:white; margin-bottom:1.5rem; }
.ph-title em { font-style:italic; color:var(--o); font-weight:400; }
.ph-lede { font-size:1.05rem; line-height:1.85; color:rgba(255,255,255,0.5); max-width:600px; }

/* ── CAP LINE ── */
.cap-line { background:var(--c2); padding:0.9rem 6%; display:flex; align-items:center; justify-content:center; gap:0.6rem; flex-wrap:wrap; }
.cap-item { font-size:0.65rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:rgba(255,255,255,0.32); }
.cap-dot { width:3px; height:3px; border-radius:50%; background:var(--o); flex-shrink:0; }

/* ── PETAL DIVIDER ── */
/* Single lotus petal — full color on dark, muted on light */
.petal-div { display:flex; align-items:center; padding:1rem 6%; gap:2rem; border-top:1px solid var(--bd); border-bottom:1px solid var(--bd); background:var(--cw); }
.petal-div.dk { background:var(--c2); border-color:var(--bdd); }
.petal-div.cr { background:var(--cr); border-color:var(--bd); }
.pdl { flex:1; height:1px; background:var(--bd); }
.petal-div.dk .pdl { background:var(--bdd); }

/* ── SECTIONS ── */
.section { padding:7rem 6%; }
/* Grid texture on light sections */
.section-grid { background:var(--cw); position:relative; }
.section-grid::before { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(30,37,48,0.04) 1px,transparent 1px), linear-gradient(90deg,rgba(30,37,48,0.04) 1px,transparent 1px); background-size:60px 60px; pointer-events:none; }
.section-grid > * { position:relative; z-index:1; }
.section-alt { background:var(--cr); }
.section-dk { background:var(--c2); position:relative; overflow:hidden; }
.section-dkk { background:var(--c); position:relative; overflow:hidden; }
.section-dkk::before { content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(244,116,33,0.08) 1px,transparent 1px); background-size:32px 32px; }

/* Tagline watermark for dark sections */
.tagline-wm { position:absolute; bottom:2rem; right:6%; font-family:'Cormorant Garamond',serif; font-size:0.85rem; font-style:italic; font-weight:400; letter-spacing:0.15em; color:rgba(255,255,255,0.07); z-index:0; white-space:nowrap; pointer-events:none; }

.sec-label { font-size:0.62rem; font-weight:600; letter-spacing:0.24em; text-transform:uppercase; color:var(--o); margin-bottom:1.3rem; display:flex; align-items:center; gap:0.8rem; }
.sec-label::before { content:''; width:22px; height:1px; background:var(--o); display:block; }
.sec-label-lt { color:rgba(249,168,37,0.88); }
.sec-label-lt::before { background:rgba(249,168,37,0.88); }
.sec-h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.2rem,3.8vw,3.4rem); font-weight:600; line-height:1.05; color:var(--c); margin-bottom:1.1rem; }
.sec-h2 em { font-style:italic; color:var(--o); font-weight:400; }
.sec-h2-lt { color:white; }
.sec-intro { font-size:0.97rem; line-height:1.9; color:var(--mu); max-width:520px; }
.sec-intro-lt { color:rgba(255,255,255,0.5); }

/* Orange left border on pull quotes */
.pull-quote { border-left:3px solid var(--o); padding:1.2rem 1.8rem; margin:2rem 0; font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-style:italic; color:var(--c); line-height:1.4; }
.pull-quote-dk { border-left:3px solid var(--o); padding:1.2rem 1.8rem; margin:2rem 0; font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-style:italic; color:rgba(255,255,255,0.65); line-height:1.4; }

/* ── BUTTONS ── */
.btn-o { display:inline-block; background:var(--o); color:white; padding:1rem 2.4rem; font-size:0.75rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; text-decoration:none; transition:background 0.2s,transform 0.15s; border:none; cursor:pointer; font-family:'Jost',sans-serif; }
.btn-o:hover { background:var(--od); transform:translateY(-1px); }
.btn-ol { display:inline-block; border:1.5px solid rgba(255,255,255,0.3); color:rgba(255,255,255,0.7); padding:1rem 2.2rem; font-size:0.75rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; text-decoration:none; transition:all 0.2s; }
.btn-ol:hover { border-color:var(--o); color:var(--o); }
.btn-link { font-size:0.78rem; font-weight:500; color:var(--mu); text-decoration:none; border-bottom:1px solid var(--cr2); padding-bottom:0.1rem; transition:color 0.2s,border-color 0.2s; }
.btn-link:hover { color:var(--o); border-color:var(--o); }
.btn-link-lt { font-size:0.78rem; font-weight:500; color:rgba(255,255,255,0.45); text-decoration:none; border-bottom:1px solid rgba(255,255,255,0.15); padding-bottom:0.1rem; transition:color 0.2s,border-color 0.2s; }
.btn-link-lt:hover { color:var(--a); border-color:var(--a); }

/* ── CTA SECTION ── */
.cta-section { background:var(--c); padding:7rem 6%; position:relative; overflow:hidden; }
.cta-section::before { content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(244,116,33,0.1) 1.5px,transparent 1.5px); background-size:30px 30px; }
.cta-inner { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:center; position:relative; z-index:1; }
.cta-h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.2rem,4vw,3.6rem); font-weight:600; color:white; line-height:1.05; margin-bottom:1.2rem; }
.cta-h2 em { font-style:italic; color:var(--o); font-weight:400; }
.cta-p { font-size:1rem; line-height:1.85; color:rgba(255,255,255,0.5); margin-bottom:2.5rem; max-width:400px; }
.cta-btns { display:flex; gap:1rem; flex-wrap:wrap; }
.cta-cards { display:flex; flex-direction:column; gap:0.9rem; }
.cta-card { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); padding:1.4rem 1.7rem; transition:background 0.2s; }
.cta-card:hover { background:rgba(255,255,255,0.09); }
.cta-card-lbl { font-size:0.6rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:rgba(255,255,255,0.3); margin-bottom:0.35rem; }
.cta-card-val { font-size:1rem; font-weight:600; color:white; text-decoration:none; display:block; transition:color 0.2s; }
a.cta-card-val:hover { color:var(--o); }
.cta-card-sub { font-size:0.78rem; color:rgba(255,255,255,0.35); margin-top:0.2rem; }

/* ── FOOTER ── */
footer { background:#141920; padding:4rem 6% 2.5rem; border-top:1px solid rgba(255,255,255,0.05); }
.ft { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:3rem; padding-bottom:3rem; border-bottom:1px solid rgba(255,255,255,0.06); margin-bottom:2rem; }
.ft-brand { font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:600; color:white; margin-bottom:0.3rem; }
.ft-tag { font-size:0.6rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:var(--o); margin-bottom:1rem; }
.ft-desc { font-size:0.83rem; line-height:1.7; color:rgba(255,255,255,0.3); max-width:260px; }
.ft-col-lbl { font-size:0.62rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:rgba(255,255,255,0.55); margin-bottom:1.2rem; }
.ft-col-list { list-style:none; display:flex; flex-direction:column; gap:0.65rem; }
.ft-col-list a, .ft-col-list li { font-size:0.85rem; color:rgba(255,255,255,0.3); text-decoration:none; transition:color 0.2s; }
.ft-col-list a:hover { color:var(--o); }
.ft-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem; }
.ft-copy { font-size:0.72rem; color:rgba(255,255,255,0.2); }
.ft-legal { display:flex; gap:1.5rem; }
.ft-legal a { font-size:0.72rem; color:rgba(255,255,255,0.2); text-decoration:none; transition:color 0.2s; }
.ft-legal a:hover { color:var(--o); }

/* ── RESPONSIVE ── */
@media (max-width:960px) {
  .nav-links { display:none; }
  .cta-inner { grid-template-columns:1fr; gap:3rem; }
  .ft { grid-template-columns:1fr 1fr; }
  .section { padding:5rem 6%; }
  .page-header { padding:8rem 6% 4rem; }
}
@media (max-width:600px) {
  .ft { grid-template-columns:1fr; }
  nav { padding:1rem 5%; }
}
