/* ============================================================ LAYOUT */

/* ---------- NAV ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  gap:1.5rem;padding:1rem var(--gutter);
  background:linear-gradient(to bottom,rgba(11,13,16,.85),rgba(11,13,16,0));
  transition:background .4s var(--ease),padding .4s var(--ease),border-color .4s;border-bottom:1px solid transparent}
.nav.is-stuck{background:rgba(11,13,16,.92);backdrop-filter:blur(14px) saturate(120%);border-bottom:1px solid var(--line);padding-top:.65rem;padding-bottom:.65rem}
.nav__brand{display:flex;align-items:center;gap:.6rem}
.nav__mark{font-family:var(--f-display);font-weight:700;font-size:.95rem;color:var(--obsidian);background:var(--gold);
  width:30px;height:30px;display:grid;place-items:center;border-radius:7px;letter-spacing:-.03em;box-shadow:0 0 0 1px var(--gold-deep),0 6px 18px var(--gold-glow)}
.nav__name{font-family:var(--f-display);color:var(--mist);font-weight:500;font-size:.98rem}
.nav__links{display:flex;gap:1.5rem}
.nav__links a{font-size:var(--step--1);color:var(--fog);position:relative;padding:.2rem 0;transition:color .25s}
.nav__links a::after{content:"";position:absolute;left:0;bottom:-2px;height:1px;width:0;background:var(--gold);transition:width .3s var(--ease-out)}
.nav__links a:hover{color:var(--mist)}
.nav__links a:hover::after{width:100%}
.nav__right{display:flex;align-items:center;gap:1rem}
.nav__toggle{display:none;width:34px;height:34px;flex-direction:column;gap:6px;align-items:center;justify-content:center}
.nav__toggle span{width:20px;height:2px;background:var(--mist);transition:transform .3s,opacity .3s}

/* ---------- SECTION SHELL ---------- */
.section{padding:var(--sect-y) 0}
.section__head{margin-bottom:clamp(2rem,4vw,3.4rem);max-width:720px}
.kicker{font-family:var(--f-mono);font-size:var(--step--1);color:var(--gold);display:inline-flex;align-items:center;gap:.6rem;letter-spacing:.06em;margin-bottom:1rem}
.kicker::before{content:"";width:26px;height:1px;background:var(--gold);display:inline-block}
.section__title{font-size:var(--step-3);color:var(--mist)}
.section__sub{margin-top:.9rem;color:var(--fog);font-size:var(--step-1);font-weight:300;line-height:1.5}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:7rem 0 4rem;overflow:hidden}
.hero__bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero__glow{position:absolute;width:75vw;height:75vw;max-width:1000px;max-height:1000px;top:-25%;right:-15%;
  background:radial-gradient(circle,rgba(211,163,74,.13),transparent 62%);filter:blur(20px);will-change:transform}
.hero__glow--2{top:auto;bottom:-30%;left:-20%;right:auto;background:radial-gradient(circle,rgba(79,184,159,.10),transparent 62%)}
.hero__grid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:66px 66px;mask-image:radial-gradient(120% 90% at 72% 22%,#000,transparent 72%);opacity:.30}
.hero__inner{position:relative;z-index:2;max-width:920px}
.hero__title{font-size:var(--step-4);font-weight:700;letter-spacing:-.035em;color:var(--mist);margin:.4rem 0 1.3rem;line-height:.98}
.hero__title .accent{color:var(--gold)}
.hero__lead{font-size:var(--step-1);color:var(--fog);max-width:46ch;font-weight:300;line-height:1.5}
.hero__cta{display:flex;gap:1rem;flex-wrap:wrap;margin:2.2rem 0 2.4rem}
.hero__trust{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;color:var(--slate);font-family:var(--f-mono);font-size:var(--step--1)}
.hero__trust b{color:var(--mist);font-weight:600}
.hero__scroll{position:absolute;bottom:1.6rem;left:var(--gutter);z-index:2;display:flex;align-items:center;gap:.7rem;font-family:var(--f-mono);font-size:var(--step--1);color:var(--slate)}
.hero__scroll i{width:1px;height:32px;background:linear-gradient(var(--gold),transparent);display:block;animation:floatDown 2.2s ease-in-out infinite}

/* ---------- ABOUT ---------- */
.about__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.about__photo{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--panel);aspect-ratio:4/5}
.about__photo img{width:100%;height:100%;object-fit:cover}
.about__photo::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(211,163,74,.18);border-radius:var(--radius)}
.about__body p{color:var(--fog);margin-bottom:1rem}
.about__body p.lead{font-size:var(--step-1);color:var(--mist);font-weight:300}
.about__signals{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}

/* ---------- FOOTER ---------- */
.foot{border-top:1px solid var(--line);padding:3rem 0 2rem}
.foot__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}
.foot h2{font-size:var(--step--1);font-family:var(--f-mono);color:var(--slate);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem;font-weight:500}
.foot a{color:var(--fog);transition:color .25s;display:inline-block;margin-bottom:.5rem}
.foot a:hover{color:var(--gold)}
.foot__brand .nav__mark{margin-bottom:1rem}
.foot__brand p{color:var(--slate);font-size:var(--step--1);max-width:34ch}
.foot__bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line);color:var(--slate);font-family:var(--f-mono);font-size:var(--step--1)}
.foot__bottom a{color:var(--slate)}
.foot__bottom a:hover{color:var(--gold)}
