:root{
  --bg:#f6f3ee; --fg:#23262b; --muted:#4d525a; --accent:#9a5220; --line:#9a5220;
  --strata-opacity:.22;
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#14161a; --fg:#eceae6; --muted:#b4b2ad; --accent:#dd9a60; --line:#dd9a60; --strata-opacity:.28}
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; min-height:100vh; background:var(--bg); color:var(--fg);
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  line-height:1.6; position:relative; overflow-x:hidden;
}
.strata{position:fixed; inset:0; width:100%; height:100%; z-index:0; pointer-events:none}
.strata path{fill:none; stroke:var(--line); stroke-width:1.2; opacity:var(--strata-opacity); vector-effect:non-scaling-stroke}
.page{
  position:relative; z-index:1; min-height:100vh; display:flex; flex-direction:column;
  max-width:70rem; margin:0 auto; padding:2rem 1.5rem;
}
header{padding-bottom:1rem}
.brand{
  font-size:.8125rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--fg);
  padding-left:.9rem; border-left:3px solid var(--accent);
}
main{flex:1; display:flex; flex-direction:column; justify-content:center; padding:3rem 0; max-width:44rem}
h1{
  margin:0 0 1.75rem; font-family:Georgia,"Iowan Old Style","Times New Roman",serif;
  font-weight:400; font-size:clamp(2.25rem,7.5vw,4.5rem); line-height:1.08; letter-spacing:-.015em;
  text-wrap:balance;
}
.lead{margin:0 0 1.5rem; font-size:clamp(1.0625rem,2.2vw,1.25rem); color:var(--muted)}
.soon{margin:0 0 .5rem; font-weight:600; color:var(--accent)}
.contact{margin:0; font-size:1.0625rem}
a{color:var(--fg); text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:2px; text-underline-offset:.25em}
a:hover{color:var(--accent)}
a:focus-visible{outline:2px solid var(--accent); outline-offset:3px}
footer{font-size:.8125rem; color:var(--muted); padding-top:1rem}
@media (min-width:48rem){.page{padding:3rem 3rem 2.5rem}}
