/* Goroshi LLC apex -- Apple-neutral palette locked. V2 2026-05-14 landing hub. */
:root {
  --bg:#FFFFFF;
  --ink:#1D1D1F;
  --ink-soft:#2C2C2E; /* WHY: lede sits a touch below pure-ink so title leads */
  --muted:#6E6E73;
  --faint:#86868B;
  --hairline:#E5E5E7;
  --link:#0066CC;
}
*{box-sizing:border-box;margin:0;padding:0;}
html,body{
  background:var(--bg);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:17px;
  line-height:1.47;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  font-feature-settings:"kern","liga","calt";
}
body{min-height:100vh;display:flex;flex-direction:column;}
main{
  flex:1;
  display:flex;
  flex-direction:column;
  /* WHY: env() respects notch / Dynamic Island */
  padding:max(96px,env(safe-area-inset-top) + 64px) 24px max(48px,env(safe-area-inset-bottom) + 24px);
  max-width:560px;
  margin:0 auto;
  width:100%;
}
.hero,.lede-block{margin-bottom:40px;}
h1{
  font-size:28px;
  line-height:1.14;
  letter-spacing:-0.02em;
  font-weight:400;
  margin:0 0 6px 0;
  text-wrap:balance;
}
.subtitle{font-size:14px;line-height:1.4;color:var(--muted);letter-spacing:-0.005em;}
.lede{
  font-size:17px;
  line-height:1.55;
  color:var(--ink-soft);
  max-width:44ch;
  letter-spacing:-0.005em;
}
.rule{width:40px;height:1px;background:var(--hairline);border:none;margin:0 0 40px 0;}
.section-title{
  font-size:11px;
  line-height:1.3;
  font-weight:500;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--faint);
  margin:0 0 12px 0;
}
.sr-only{
  position:absolute;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}
.contact{margin-bottom:32px;}
.contact-line{font-size:17px;line-height:1.4;margin:0 0 4px 0;}
.contact-meta{font-size:14px;color:var(--muted);letter-spacing:-0.005em;}
.signin{margin-bottom:16px;}
/* WHY: 44pt tap-target floor on email + sign-in per iOS HIG */
.contact-link,.signin-link{
  color:var(--link);
  text-decoration:none;
  min-height:44px;
  padding:10px 0;
  letter-spacing:-0.005em;
}
.contact-link{display:inline-block;line-height:24px;}
.signin-link{display:inline-flex;align-items:center;gap:4px;font-size:14px;}
.contact-link:hover,.contact-link:focus,
.signin-link:hover,.signin-link:focus{text-decoration:underline;}
.contact-link:focus-visible,.signin-link:focus-visible{
  outline:2px solid var(--link);
  outline-offset:3px;
  border-radius:2px;
}
.signin-link .arrow{
  display:inline-block;
  transform:translateY(-1px);
  transition:transform 0.15s ease;
}
.signin-link:hover .arrow{transform:translate(2px,-1px);}
footer{
  padding:32px 24px max(40px,env(safe-area-inset-bottom) + 16px);
  text-align:center;
  border-top:1px solid var(--hairline);
  max-width:720px;
  margin:0 auto;
  width:100%;
}
.footer-meta{font-size:12px;color:var(--faint);margin:0 0 6px 0;font-variant-numeric:tabular-nums;}
.footer-note{font-size:11px;color:var(--faint);margin:0 auto;max-width:44ch;line-height:1.5;}
.skip{position:absolute;left:-9999px;}
.skip:focus{
  position:fixed;
  left:24px;top:24px;
  background:var(--ink);color:var(--bg);
  padding:12px 16px;
  font-size:14px;
  z-index:1000;
  text-decoration:none;
  border-radius:6px;
}
::selection{background:var(--ink);color:var(--bg);}
/* iPhone 17 Pro Max -- 430px */
@media (max-width:640px){
  main{
    padding-top:max(72px,env(safe-area-inset-top) + 40px);
    padding-bottom:max(40px,env(safe-area-inset-bottom) + 20px);
  }
  h1{font-size:26px;}
  .subtitle{font-size:13px;}
  .lede{font-size:16px;}
  .hero,.lede-block,.rule{margin-bottom:32px;}
  .contact{margin-bottom:28px;}
}
/* iPhone SE -- 375px */
@media (max-width:400px){
  main{padding-left:20px;padding-right:20px;}
  h1{font-size:24px;}
  .lede{font-size:16px;}
  .contact-line,.signin-link{font-size:14px;}
  footer{padding-left:16px;padding-right:16px;}
  .footer-meta{font-size:11px;letter-spacing:-0.005em;}
  .footer-note{font-size:10.5px;}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important;}
  .signin-link:hover .arrow{transform:translateY(-1px);}
}
