/* Purposeful Stride LLC — under-construction page. */
@font-face{font-family:"Barlow";src:url("../fonts/Barlow-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow";src:url("../fonts/Barlow-SemiBold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Bebas Neue";src:url("../fonts/BebasNeue-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}

:root{
  --ink:#0B1220;
  --panel:#141C2C;
  --paper:#E8E4DA;
  --muted:#9AA3B5;
  --gold:#C4A46C;
  --line:rgba(200,180,140,.28);
  --dash:rgba(196,164,108,.75);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0;background:var(--ink);color:var(--paper);font-family:"Barlow",system-ui,sans-serif;font-size:18px;line-height:1.6}
img,video{max-width:100%;height:auto}
a{color:var(--gold);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:#fff}
a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--ink);padding:.5rem 1rem;z-index:20}
.skip:focus{left:1rem;top:1rem}

.banner{
  background:var(--gold);color:#1A140A;text-align:center;
  font-family:"Bebas Neue",sans-serif;font-size:1.15rem;letter-spacing:.12em;
  padding:.55rem 1rem;text-transform:uppercase;
}

.wrap{width:min(1120px, calc(100% - 2rem));margin-inline:auto}
header.site{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0 1.25rem;border-bottom:1px solid var(--line)}
header.site .brand{color:inherit;text-decoration:none}
header.site .wordmark{font-family:"Bebas Neue",sans-serif;font-size:1.85rem;letter-spacing:.1em;line-height:1;color:var(--paper)}
header.site .wordmark span{display:block;font-family:"Barlow",sans-serif;font-size:.68rem;letter-spacing:.18em;color:var(--gold);font-weight:600;text-transform:uppercase}
nav.site{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;font-size:.95rem}
nav.site a{color:var(--paper);text-decoration:none}
nav.site a:hover{color:var(--gold)}

.hero{position:relative;min-height:70vh;display:flex;align-items:flex-end;background:#000}
.hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72}
.hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,18,32,.25) 10%,rgba(11,18,32,.92) 78%)}
.hero-cap{position:relative;width:min(1120px, calc(100% - 2rem));margin:0 auto;padding:0 0 3rem}
.hero-cap h1{font-family:"Bebas Neue",sans-serif;font-size:clamp(2.6rem,7vw,4.8rem);letter-spacing:.06em;line-height:.95;margin:0 0 .5rem;color:#fff}
.hero-cap .sub{margin:0 0 .75rem;font-size:1.15rem;max-width:34rem}
.draft{
  display:inline-block;font-family:"Barlow",sans-serif;font-size:.68rem;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:#1A140A;background:var(--gold);
  border-radius:999px;padding:.15rem .55rem;vertical-align:middle;margin-left:.35rem;
}

main{padding-bottom:3rem}
section{padding:2.4rem 0;border-top:1px solid var(--line)}
section h2{font-family:"Bebas Neue",sans-serif;font-size:2rem;letter-spacing:.06em;margin:0 0 1rem;color:#fff}
.prose{max-width:42rem}
.prose p{margin:0 0 1rem}
.work{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.work article{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:1.1rem 1.15rem}
.work h3{font-family:"Bebas Neue",sans-serif;font-size:1.4rem;letter-spacing:.04em;margin:0 0 .35rem;color:#fff}
.work p{margin:0;color:var(--muted);font-size:.95rem}

.promo{display:grid;grid-template-columns:1.2fr .8fr;gap:1.5rem;align-items:center}
.promo video{width:100%;border-radius:10px;border:1px solid var(--line);background:#000}
.gallery{display:grid;grid-template-columns:1.4fr .8fr;gap:1rem}
.gallery img{width:100%;border-radius:10px;border:1px solid var(--line);display:block;object-fit:cover}
.gallery .stack{display:flex;flex-direction:column;gap:1rem}
figcaption{font-size:.85rem;color:var(--muted);margin-top:.4rem}

.ads-intro{color:var(--muted);max-width:40rem}
.ad-row{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center;align-items:flex-start;margin-top:1.25rem}
.ad-slot{
  border:2px dashed var(--dash);background:repeating-linear-gradient(-45deg,transparent,transparent 8px,rgba(196,164,108,.06) 8px,rgba(196,164,108,.06) 16px);
  color:var(--gold);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  font-family:"Bebas Neue",sans-serif;letter-spacing:.08em;padding:.4rem;
}
.ad-slot .label{font-size:1.15rem;line-height:1.2}
.ad-slot .size{font-family:"Barlow",sans-serif;font-size:.7rem;letter-spacing:.04em;color:var(--muted);font-weight:600;text-transform:uppercase;margin-top:.15rem}
.ad-slot.leaderboard{width:min(728px,100%);height:90px}
.ad-slot.rectangle{width:300px;height:250px}
.ad-slot.mobile{width:320px;height:50px}
.ad-slot.mobile .label{font-size:.95rem}

.fine{font-size:.9rem;color:var(--muted)}
.repos{display:flex;flex-wrap:wrap;gap:.6rem}
.repos a{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:.25rem .75rem;text-decoration:none;color:var(--paper)}
.repos a:hover{border-color:var(--gold);color:var(--gold)}

footer.site{border-top:1px solid var(--line);padding:2rem 0 2.5rem;font-size:.92rem;color:var(--muted)}
footer.site .legal{color:var(--paper);margin:0 0 .6rem}
footer.site ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.35rem 1.25rem}

@media (max-width:720px){
  .promo,.gallery{grid-template-columns:1fr}
  header.site{flex-direction:column;align-items:flex-start}
  .hero{min-height:60vh}
}
