/* ============================================================
   SHARED SITE STYLES - used by every page.
   Design tokens, navigation, hero, buttons, section layout, footer.
   Edit here to change the look of the whole site.
   ============================================================ */

:root{--bg:#0c0a0f;--bg-soft:#14111a;--bg-card:#171320;--gold:#cba14e;--gold-soft:rgba(203,161,78,.35);--crimson:#9b2335;--ink:#e9e2d6;--ink-dim:#a89f8f;--display:'Cormorant Garamond',serif;--fbody:'EB Garamond',serif}
.fbd *{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);margin:0}
.fbd{background:var(--bg);color:var(--ink);font-family:var(--fbody);font-size:19px;line-height:1.6}
.fbd a{color:var(--gold);text-decoration:none}
.fbd .fnav{position:sticky;top:0;z-index:50;background:rgba(12,10,15,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--gold-soft)}
.fbd .nav-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px 24px}
.fbd .nav-brand{font-family:var(--display);font-size:1.35rem;letter-spacing:.08em;color:var(--ink)}
.fbd .nav-brand span{color:var(--gold)}
.fbd .nav-links{display:flex;gap:28px;font-size:.95rem;letter-spacing:.12em;text-transform:uppercase}
.fbd .nav-links a{color:var(--ink-dim);transition:color .2s}
.fbd .nav-links a:hover{color:var(--gold)}
.fbd .nav-toggle{display:none;background:none;border:1px solid var(--gold-soft);color:var(--gold);font-size:1.3rem;line-height:1;padding:6px 12px;cursor:pointer}
.fbd .btn:hover{background:var(--gold);color:var(--bg)}
.fbd .btn.solid{background:var(--crimson);border-color:var(--crimson);color:var(--ink)}
.fbd .btn.solid:hover{background:#b52a3f;border-color:#b52a3f;color:#fff}
.fbd .kicker{letter-spacing:.3em;text-transform:uppercase;font-size:.78rem;color:var(--gold)}
.fbd section{padding:70px 24px}
.fbd h2{font-family:var(--display);font-weight:600;font-size:clamp(1.9rem,4vw,2.6rem);text-align:center;margin-bottom:10px;color:var(--ink)}
.fbd .final{text-align:center;background:linear-gradient(180deg,rgba(155,35,53,.16),transparent)}
.fbd footer{border-top:1px solid var(--gold-soft);padding:44px 24px;text-align:center;color:var(--ink-dim);font-size:.92rem}
.fbd .socials{display:flex;gap:22px;justify-content:center;margin-bottom:18px;letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;flex-wrap:wrap}
/* Keep anchored sections (e.g. #shop) from hiding under the sticky menu bar */
.fbd [id]{scroll-margin-top:76px}
.fbd .hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% -10%,rgba(155,35,53,.28),transparent 60%)}

/* Contact form (coaching + portfolio pages, styled to match the site) */
.fbd .cform{max-width:560px;margin:34px auto 0;display:grid;gap:14px;text-align:left}
.fbd .cform input,.fbd .cform select,.fbd .cform textarea{width:100%;background:var(--bg-card);border:1px solid var(--gold-soft);color:var(--ink);padding:13px 16px;font-family:var(--fbody);font-size:1rem}
.fbd .cform input:focus,.fbd .cform select:focus,.fbd .cform textarea:focus{outline:none;border-color:var(--gold)}
.fbd .cform textarea{resize:vertical;min-height:130px}
.fbd .cform button{cursor:pointer;font-family:var(--fbody);justify-self:center;min-width:240px}
.fbd .cform .botcheck{display:none}
.fbd .form-status{text-align:center;font-style:italic;min-height:1.4em;margin:0}
.fbd .form-status.ok{color:var(--gold)}
.fbd .form-status.err{color:#d9788a}
.fbd .form-note{text-align:center;color:var(--ink-dim);font-size:.9rem}

/* Dropdown menu (e.g. Phantom Guides) */
.fbd .nav-item{position:relative}
.fbd .nav-item .caret{font-size:.7em;color:var(--gold)}
.fbd .sub-menu{display:none;position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);background:rgba(12,10,15,.97);border:1px solid var(--gold-soft);min-width:200px;padding:6px 0;z-index:60}
.fbd .nav-item.open .sub-menu{display:block}
.fbd .sub-menu a{display:block;padding:11px 20px;white-space:nowrap}

/* Squeeze the menu a little before switching to the mobile hamburger */
@media(max-width:1100px){
.fbd .nav-links{gap:16px;font-size:.85rem}
.fbd .nav-brand{font-size:1.15rem}
}
@media(max-width:990px){
.fbd .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(12,10,15,.98);flex-direction:column;gap:0;padding:8px 24px 18px;border-bottom:1px solid var(--gold-soft);font-size:.95rem}
.fbd .nav-links.open{display:flex}
.fbd .nav-links a{padding:12px 0;border-bottom:1px solid rgba(203,161,78,.12)}
.fbd .nav-toggle{display:block}
.fbd .nav-item{width:100%}
.fbd .sub-toggle{display:block}
.fbd .sub-menu{position:static;transform:none;border:none;padding:0 0 4px 18px;min-width:0}
.fbd .sub-menu a{border-bottom:none;padding:10px 0}
}
