/* Journal pages — same Trophy Ranches house style as the homepage. Single dark look by design. */
:root{
  --ground:#3a3829;
  --ground-deep:#211e1a;
  --ground-raise:#45432f;
  --ink:#ffffff;
  --ink-soft:#cecfc7;
  --ink-mute:#999482;
  --gold:#c46f11;
  --line:rgba(206,207,199,.16);
  --display:'Archivo','Arial Black',Impact,sans-serif;
  --body:'Space Grotesk',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;padding-block:env(safe-area-inset-top,0px) env(safe-area-inset-bottom,0px)}
body{margin:0;background:var(--ground);color:var(--ink-soft);font-family:var(--body);font-size:17px;line-height:1.7;letter-spacing:.015em;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-stretch:125%;font-weight:800;text-transform:uppercase;color:var(--ink);margin:0;line-height:1.05;text-wrap:balance}
p{margin:0}
.gold{color:var(--gold)}
.wrap{max-width:1200px;margin:0 auto;padding-inline:clamp(16px,4vw,48px)}
.narrow{max-width:760px;margin:0 auto;padding-inline:clamp(16px,4vw,32px)}
.eyebrow{font-weight:600;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.topo{background-image:
  repeating-radial-gradient(ellipse 120% 80% at 18% 30%, transparent 0 22px, rgba(206,207,199,.06) 22px 23px),
  repeating-radial-gradient(ellipse 90% 120% at 85% 75%, transparent 0 26px, rgba(206,207,199,.05) 26px 27px)}

.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(33,30,26,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:12px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand img{height:42px;width:auto}
.brand-name{display:flex;flex-direction:column;line-height:1.15}
.brand-name b{font-family:var(--display);font-stretch:125%;font-weight:800;font-size:15px;color:var(--ink);text-transform:uppercase}
.brand-name span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}
.nav-links{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.nav-links a{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);text-decoration:none;padding-block:4px;border-bottom:1px solid transparent}
.nav-links a:hover,.nav-links a[aria-current]{border-color:var(--gold)}
.nav-call{text-align:right;line-height:1.2}
.nav-call span{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}
.nav-call a{white-space:nowrap;font-weight:600;font-size:17px;color:var(--ink);text-decoration:none}

.btn{display:inline-block;background:var(--gold);color:var(--ground-deep);font-weight:600;font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:15px 26px;border:1px solid var(--gold)}
.btn:hover{background:transparent;color:var(--gold)}
.link-more{font-weight:600;font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:3px}
.link-more:hover{color:var(--gold)}

/* journal index */
.j-head{padding-block:clamp(56px,8vw,96px) clamp(32px,4vw,48px);display:grid;gap:16px}
.j-head h1{font-size:clamp(32px,5vw,58px)}
.j-head p{max-width:62ch}
.j-list{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;padding-bottom:clamp(64px,8vw,96px);align-items:start}
.j-card{position:relative;border:1px solid var(--line);background:var(--ground-deep);text-decoration:none;display:flex;flex-direction:column;min-width:0}
.j-card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.media{position:relative}
.media .frame-in{position:absolute;inset:10px;border:1px solid var(--gold);pointer-events:none}
.j-card-body{padding:22px 24px 26px;display:grid;gap:12px}
.j-card h2{font-size:20px;line-height:1.15}
.j-card p{font-size:15.5px}
.cat{font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.j-card:hover h2{color:var(--gold)}

/* article */
.a-hero{position:relative;padding-block:clamp(48px,7vw,88px) clamp(28px,4vw,40px)}
.a-hero .narrow{display:grid;gap:18px}
.a-hero h1{font-size:clamp(30px,4.6vw,52px)}
.dek{font-size:clamp(17px,1.8vw,20px);color:var(--ink)}
.byline{font-size:13.5px;color:var(--ink-mute)}
.byline b{color:var(--ink-soft);font-weight:600}
.a-photo{position:relative;max-width:1000px;margin:0 auto;padding-inline:clamp(16px,4vw,32px)}
.a-photo img{width:100%;aspect-ratio:21/9;object-fit:cover}
.a-photo .frame-in{position:absolute;inset:10px calc(clamp(16px,4vw,32px) + 10px);border:1px solid var(--gold);pointer-events:none}
.a-body{padding-block:clamp(40px,6vw,64px)}
.a-body .narrow > * + *{margin-top:18px}
.a-body h2{font-size:clamp(20px,2.4vw,26px);margin-top:44px !important;line-height:1.15}
.a-body ul{padding-left:20px;display:grid;gap:8px;margin-block:0}
.a-body a{color:var(--ink);text-decoration-color:var(--gold);text-underline-offset:3px}
.callout{border-left:2px solid var(--gold);padding:4px 0 4px 18px;color:var(--ink)}
.note{font-size:14px;color:var(--ink-mute);border-top:1px solid var(--line);padding-top:18px}
.faq{background:var(--ground-deep);border-block:1px solid var(--line);padding-block:clamp(48px,6vw,72px)}
.faq h2{font-size:clamp(22px,3vw,30px);margin-bottom:24px}
.faq details{border-top:1px solid var(--line);padding-block:16px}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-weight:600;color:var(--ink);list-style-position:outside}
.faq details p{margin-top:10px}
.sources{font-size:14px;color:var(--ink-mute)}
.sources ul{padding-left:18px;margin:8px 0 0;display:grid;gap:4px}
.related{padding-block:clamp(48px,6vw,72px)}
.related h2{font-size:20px;margin-bottom:18px}
.related ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.related a{font-weight:600;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--gold)}
.related a:hover{color:var(--gold)}
.cta-box{border:1px solid var(--gold);padding:clamp(24px,4vw,44px);display:grid;gap:16px;margin-bottom:clamp(56px,7vw,88px)}
.cta-box h2{font-size:clamp(22px,3vw,32px)}
.cta-lines{display:flex;flex-wrap:wrap;gap:12px 32px;font-weight:600;color:var(--ink)}
.cta-lines span{user-select:all}

footer{background:var(--ground-deep);border-top:1px solid var(--line);padding-block:40px}
.foot{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:start}
.foot img{height:56px;width:auto}
.foot-text{display:grid;gap:10px;font-size:13px;color:var(--ink-mute);line-height:1.6}
.foot-text b{color:var(--ink-soft);font-weight:600}

@media (max-width:960px){.nav-links{display:none}.j-list{grid-template-columns:1fr}}
@media (max-width:520px){
  .brand-name span,.nav-call span{display:none}
  .nav-call a{font-size:14px}
  .brand-name b{font-size:12.5px}
  .brand{gap:10px}
  .brand img{height:34px}
  .foot{grid-template-columns:1fr}
  .a-photo img{aspect-ratio:4/3}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
