/* inner-page components + mobile nav — loaded after site.css */
.phero{position:relative;min-height:62vh;display:flex;align-items:flex-end;color:var(--ink);overflow:hidden}
.phero .bg{position:absolute;inset:0}
.phero .bg img{width:100%;height:100%;object-fit:cover}
.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,24,19,.45),rgba(14,24,19,.3) 42%,rgba(14,24,19,.92))}
.phero .in{position:relative;z-index:2;padding:140px 0 70px;max-width:940px}
.phero .rule{margin-bottom:22px}
.phero h1{font-size:clamp(2.6rem,5.8vw,4.8rem);font-weight:400;margin:.3rem 0 1.1rem}
.phero p{font-family:Archivo;color:rgba(238,242,236,.86);max-width:56ch;font-size:1.06rem}

.sec{padding:110px 0}
.sec.alt{background:var(--panel)}
.sec .eyebrow{display:block;margin-bottom:14px}
.sec h2{font-size:clamp(2rem,3.8vw,3rem)}

.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:74px;align-items:start}
.lead{font-family:"Cormorant Garamond",serif;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.35;color:var(--ink);font-weight:400}
.two-col p{font-family:Archivo;color:var(--muted);margin-bottom:1rem}

.inc{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 48px;margin-top:6px}
.inc li{font-family:"Cormorant Garamond",serif;font-size:1.45rem;color:var(--ink);border-bottom:1px solid rgba(255,255,255,.08);padding:18px 0;display:flex;gap:14px;align-items:baseline}
.inc li::before{content:"\2014";color:var(--gold);flex:none}

.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 48px}
.area-grid div{font-family:"Cormorant Garamond",serif;font-size:1.6rem;color:var(--ink);border-bottom:1px solid rgba(255,255,255,.08);padding:20px 0}

.serve-row{display:grid;grid-template-columns:230px 1fr;gap:44px;border-top:1px solid var(--line);padding:48px 0;align-items:baseline}
.serve-row:last-child{border-bottom:1px solid var(--line)}
.serve-row .no{font-family:"Cormorant Garamond",serif;font-style:italic;color:var(--gold);font-size:1.1rem;display:block;margin-bottom:6px}
.serve-row h3{font-size:2rem}
.serve-row p{font-family:Archivo;color:var(--muted);max-width:62ch}

.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:start}
.ghl-embed{background:transparent;border:0;border-radius:4px;overflow:hidden}
.ghl-embed iframe{width:100%;min-height:680px;border:0;display:block;background:transparent}
.cdetail h4{font-family:Archivo;font-weight:500;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:32px 0 8px}
.cdetail a,.cdetail p{font-family:Archivo;color:var(--ink);font-size:1.06rem;display:block;text-decoration:none;line-height:1.7}
.cdetail a:hover{color:var(--gold)}

.prose{max-width:780px;font-family:Archivo;color:var(--muted)}
.prose h2{font-family:"Cormorant Garamond",serif;font-size:1.9rem;margin:42px 0 14px;color:var(--ink);font-weight:500}
.prose p{margin-bottom:1rem}
.prose ul{margin:0 0 1rem 1.3rem}
.prose li{margin-bottom:.4rem}

/* mobile nav overlay */
.mnav{position:fixed;inset:0;z-index:80;background:var(--bg-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;opacity:0;pointer-events:none;transition:.4s var(--ease)}
.mnav.open{opacity:1;pointer-events:auto}
.mnav a{font-family:"Cormorant Garamond",serif;font-size:2rem;color:var(--ink)}
.mnav a:hover{color:var(--gold)}
.mnav .x{position:absolute;top:26px;right:30px;background:none;border:0;color:var(--ink);font-size:1.9rem;cursor:pointer}
.mnav .mphone{font-family:Archivo;color:var(--gold);letter-spacing:.12em;margin-top:12px;font-size:.9rem}

@media(max-width:920px){
  .two-col,.contact-grid{grid-template-columns:1fr;gap:40px}
  .inc,.area-grid{grid-template-columns:1fr}
  .serve-row{grid-template-columns:1fr;gap:10px}
  .phero .in{padding:120px 0 54px}
}

/* ===== header scrim — keeps nav readable over any hero ===== */
header{overflow:visible}
header::before{content:"";position:absolute;left:0;right:0;top:0;height:200px;background:linear-gradient(180deg,rgba(9,16,12,.88) 0%,rgba(9,16,12,.5) 48%,rgba(9,16,12,0) 100%);pointer-events:none;z-index:-1;transition:opacity .4s var(--ease)}
header.scrolled::before{opacity:0}
nav.links a,.hphone{color:rgba(238,242,236,.94)}
.phero .eyebrow{color:var(--gold-2)}

/* ===== dropdown nav ("tabs") ===== */
nav.links{gap:24px}
.hphone{white-space:nowrap}
.navitem{position:relative;display:flex;align-items:center}
.navitem>a,.navitem>.trigger{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:rgba(238,242,236,.94);font-family:Archivo;font-weight:500;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;background:none;border:0;padding:0;cursor:pointer}
.navitem>a:hover,.navitem>.trigger:hover{color:var(--gold)}
.navitem>.trigger::after{content:"";width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-1px);opacity:.7}
.navitem .drop{position:absolute;top:100%;left:50%;transform:translate(-50%,12px);min-width:262px;background:var(--bg-2);border:1px solid var(--line);padding:14px 0;opacity:0;visibility:hidden;transition:.26s var(--ease);box-shadow:0 26px 60px -22px rgba(0,0,0,.72);z-index:70}
.navitem:hover .drop{opacity:1;visibility:visible;transform:translate(-50%,0)}
.navitem .drop::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.navitem .drop a{display:block;padding:11px 26px;color:rgba(238,242,236,.82);font-family:Archivo;font-weight:500;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.navitem .drop a:hover{color:var(--gold);background:rgba(198,163,104,.07)}

/* ===== mobile grouped nav ===== */
.mnav{overflow-y:auto;justify-content:flex-start;align-items:flex-start;padding:88px 32px 48px;gap:0}
.mnav .mgroup{width:100%;border-bottom:1px solid rgba(255,255,255,.08);padding:18px 0}
.mnav .mgroup>span{font-family:Archivo;font-weight:600;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:10px}
.mnav .mgroup a{font-family:"Cormorant Garamond",serif;font-size:1.45rem;color:var(--ink);display:block;padding:5px 0}
.mnav>a.msingle{font-family:"Cormorant Garamond",serif;font-size:1.6rem;color:var(--ink);padding:18px 0;width:100%;border-bottom:1px solid rgba(255,255,255,.08)}
.mnav .mphone{margin-top:22px}

/* ===== client reviews (real Google reviews) ===== */
.reviews{padding:120px 0;background:var(--bg-2);border-top:1px solid rgba(255,255,255,.06)}
.reviews .head{text-align:center;max-width:780px;margin:0 auto 58px}
.reviews .head .rule{margin:0 auto 24px}
.reviews h2{font-size:clamp(2.1rem,4vw,3.1rem)}
.reviews .gline{font-family:Archivo;color:var(--muted);margin-top:16px;font-size:.92rem;letter-spacing:.04em}
.reviews .gline b{color:var(--gold-2);font-weight:600}
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rcard{border:1px solid var(--line);background:rgba(255,255,255,.015);padding:32px 30px;display:flex;flex-direction:column;gap:16px}
.rcard .stars{color:var(--gold);letter-spacing:.2em;font-size:.95rem}
.rcard p{font-family:"Cormorant Garamond",serif;font-size:1.28rem;line-height:1.46;color:var(--ink);font-weight:400;margin:0}
.rcard .who{font-family:Archivo;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:auto}
.rcard .who b{color:var(--gold-2);font-weight:600}
@media(max-width:920px){.rgrid{grid-template-columns:1fr}}

/* ===== footer award plaque ===== */
footer .award{height:156px;width:auto;display:block;margin-top:24px;border-radius:2px;box-shadow:0 10px 30px -12px rgba(0,0,0,.6)}
footer .fbot span{white-space:nowrap}

/* ===== homepage inline video band ===== */
.videoband{position:relative;height:74vh;min-height:520px;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}
.videoband video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.videoband::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(12,21,16,.5),rgba(12,21,16,.64))}
.videoband .in{position:relative;z-index:2;max-width:840px;padding:40px;text-shadow:0 2px 30px rgba(0,0,0,.4)}
.videoband .in h2{font-size:clamp(2.2rem,5vw,4rem);font-weight:400;color:#fff;line-height:1.12}
.videoband .in h2 em{font-style:italic;color:var(--gold-2)}
.videoband .in p{font-family:Archivo;color:rgba(238,242,236,.85);margin:22px auto 0;max-width:50ch}
