/* OCS public placeholder — light, static, dark tech style */
:root{
  --bg:#030405;
  --bg-2:#07090c;
  --text:#f2f4f7;
  --muted:#8d96a3;
  --dim:#545c68;
  --line:rgba(255,255,255,.08);
  --line-2:rgba(255,255,255,.16);
  --cyan:#3fd8ff;
  --blue:#1d9cd7;
  --green:#5af0b4;
  --head:"Space Grotesk",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --body:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --pad:clamp(22px,5vw,72px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--bg)}
body{
  margin:0;
  min-height:100svh;
  background:var(--bg);
  color:var(--text);
  font-family:var(--body);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .2s}
a:hover{color:var(--cyan)}
::selection{background:rgba(63,216,255,.3)}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:4px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:10;background:var(--text);color:#000;padding:10px 14px;border-radius:8px;text-decoration:none;font-weight:600}
.skip:focus{top:12px}

.bg{position:fixed;inset:0;z-index:-1;pointer-events:none;background:
  radial-gradient(ellipse 80% 50% at 50% -8%, rgba(63,216,255,.11), transparent 58%),
  radial-gradient(ellipse 55% 40% at 86% 112%, rgba(90,240,180,.07), transparent 52%),
  var(--bg)}
.bg::after{
  content:"";
  position:absolute;inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='97' viewBox='0 0 84 97'%3E%3Cg fill='none' stroke='%233fd8ff' stroke-width='0.85' opacity='0.7'%3E%3Cpath d='M21 0.5 L42 12.5 L42 36.5 L21 48.5 L0 36.5 L0 12.5 Z'/%3E%3Cpath d='M63 0.5 L84 12.5 L84 36.5 L63 48.5 L42 36.5 L42 12.5 Z'/%3E%3Cpath d='M21 48.5 L42 60.5 L42 84.5 L21 96.5 L0 84.5 L0 60.5 Z'/%3E%3Cpath d='M63 48.5 L84 60.5 L84 84.5 L63 96.5 L42 84.5 L42 60.5 Z'/%3E%3C/g%3E%3C/svg%3E");
  mask-image:radial-gradient(ellipse 85% 80% at 50% 40%, #000 18%, transparent 78%);
  -webkit-mask-image:radial-gradient(ellipse 85% 80% at 50% 40%, #000 18%, transparent 78%);
  opacity:.95;
}

.page{
  min-height:100svh;
  display:flex;
  flex-direction:column;
  padding:clamp(22px,4.5vh,52px) var(--pad) 22px;
  max-width:1120px;
  margin:0 auto;
}

.brand{display:inline-block;text-decoration:none}
.brand img{height:clamp(76px,15vw,132px);width:auto}

main{flex:1;display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,5vh,56px) 0 32px;max-width:40rem}

.eyebrow{
  font-family:var(--mono);
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--cyan);
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0 0 22px;
}
.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}

h1{
  font-family:var(--head);
  font-weight:500;
  font-size:clamp(2rem,6vw,3.6rem);
  line-height:1.05;
  letter-spacing:-.03em;
  margin:0 0 16px;
}
.since{margin:0;color:#c4cad3;font-size:clamp(1.05rem,2vw,1.25rem);font-weight:400;max-width:28ch}

.hint{margin:32px 0 0;padding-top:24px;border-top:1px solid var(--line)}
.hint p{margin:0;font-family:var(--head);font-weight:400;font-size:clamp(1.15rem,2.4vw,1.55rem);letter-spacing:-.01em;color:#e8eef3}
.hint p + p{margin-top:8px;font-family:var(--mono);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}

.contact{
  display:grid;
  gap:32px;
  margin:40px 0 0;
  padding-top:24px;
  border-top:1px solid var(--line);
  grid-template-columns:1fr;
}
@media(min-width:640px){.contact{grid-template-columns:1fr 1fr;gap:48px}}
.contact h2{
  font-family:var(--mono);
  font-size:.68rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:500;
  margin:0 0 12px;
}
.contact p, .contact address{margin:0;font-style:normal;color:#c4cad3;line-height:1.7}
.contact a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--line-2)}
.contact a:hover{color:var(--cyan);border-bottom-color:var(--cyan)}

footer{
  margin-top:auto;
  padding-top:20px;
  padding-bottom:4px;
  border-top:1px solid var(--line);
  color:var(--dim);
  font-size:.8rem;
  display:flex;
  flex-wrap:wrap;
  gap:8px 28px;
  justify-content:space-between;
  align-items:baseline;
}
footer p{margin:0;line-height:1.5}
footer p:last-child{max-width:48ch}
@media(min-width:800px){footer p:last-child{text-align:right;max-width:54ch}}

@media (prefers-reduced-motion:no-preference){
  .page > *{animation:rise .7s ease both}
  main{animation-delay:.08s}
  footer{animation-delay:.16s}
}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
