/* Hangar Cloud — marketing landing stylesheet (Phase 2A).
   Self-contained (no @import): redeclares the shared @font-face + the subset of
   Hangar tokens it uses, so the brand matches portal.css exactly while keeping
   marketing styles out of the portal's app stylesheet. */
@font-face{font-family:'Oxanium';font-style:normal;font-weight:500 800;font-display:swap;src:url(/portal/fonts/oxanium.woff2) format('woff2');}
@font-face{font-family:'Saira';font-style:normal;font-weight:400 700;font-display:swap;src:url(/portal/fonts/saira.woff2) format('woff2');}
@font-face{font-family:'Share Tech Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/portal/fonts/share-tech-mono.woff2) format('woff2');}

:root{
  --noturno:#121316; --fuselagem:#1a1c20; --fuselagem-2:#26282d;
  --concreto:#edeef0; --concreto-dim:#b4b6bb;
  --pista:#f26522; --pista-hot:#ff8000; --system:#69aad7;
  --space-2:.5rem; --space-3:.75rem; --space-4:1rem; --space-5:1.5rem; --space-6:2rem; --space-7:3rem;
  --radius:6px; --hairline:1px solid var(--fuselagem-2);
  --font-display:'Oxanium',system-ui,sans-serif;
  --font-ui:'Saira',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-mono:'Share Tech Mono',ui-monospace,Consolas,monospace;
  --maxw:64rem;
}
*,*::before,*::after{box-sizing:border-box;}
html{color-scheme:dark;}
body{margin:0;min-height:100vh;background:var(--noturno);color:var(--concreto);
  font-family:var(--font-ui);line-height:1.6;-webkit-font-smoothing:antialiased;}
a{color:var(--system);text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;}
:focus-visible{outline:2px solid var(--pista);outline-offset:2px;}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--space-5);}

.lp-header{display:flex;align-items:center;justify-content:space-between;
  padding:var(--space-4) var(--space-5);max-width:var(--maxw);margin:0 auto;}
.lp-wordmark{font-family:var(--font-display);font-weight:800;font-size:1.25rem;letter-spacing:.02em;color:var(--concreto);}
.lp-wordmark span{color:var(--pista);}
.lp-nav{display:flex;gap:var(--space-5);align-items:center;}
.lp-nav a{color:var(--concreto-dim);}
.lp-nav a:hover{color:var(--concreto);text-decoration:none;}

.btn{display:inline-block;font-family:var(--font-ui);font-weight:600;font-size:1rem;
  padding:.7rem 1.25rem;border-radius:var(--radius);border:var(--hairline);
  background:transparent;color:var(--concreto);cursor:pointer;text-decoration:none;
  transition:background 120ms ease,border-color 120ms ease;}
.btn:hover{border-color:var(--concreto-dim);text-decoration:none;}
.btn--primary{background:var(--pista);border-color:var(--pista);color:#151007;}
.btn--primary:hover{background:var(--pista-hot);border-color:var(--pista-hot);}
.btn--disabled{opacity:.5;cursor:not-allowed;}

.hero{text-align:center;padding:var(--space-7) 0 var(--space-6);}
.hero__eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em;
  font-size:.75rem;color:var(--system);margin:0 0 var(--space-4);}
.hero__title{font-family:var(--font-display);font-weight:800;line-height:1.05;
  font-size:clamp(2.2rem,6vw,3.6rem);margin:0 0 var(--space-4);text-wrap:balance;}
.hero__title span{color:var(--pista);}
.hero__sub{font-size:clamp(1rem,2.4vw,1.25rem);color:var(--concreto-dim);
  max-width:40rem;margin:0 auto var(--space-6);text-wrap:balance;}
.hero__cta{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap;}
.hero__note{margin-top:var(--space-4);font-size:.85rem;color:var(--concreto-dim);font-family:var(--font-mono);}

.section{padding:var(--space-7) 0;}
.section__title{font-family:var(--font-display);font-weight:700;font-size:1.75rem;
  text-align:center;margin:0 0 var(--space-6);}

.grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));}
.card{border:var(--hairline);border-radius:var(--radius);background:var(--fuselagem);padding:var(--space-5);}
.card__k{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;
  font-size:.72rem;color:var(--system);margin:0 0 var(--space-2);}
.card__t{font-family:var(--font-display);font-weight:700;font-size:1.15rem;margin:0 0 var(--space-2);color:var(--concreto);}
.card p{margin:0;color:var(--concreto-dim);}

.recursos{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));
  max-width:var(--maxw);margin:0 auto;padding:0 var(--space-5);}
.recurso{border:var(--hairline);border-radius:var(--radius);padding:var(--space-4);background:var(--fuselagem);}
.recurso strong{display:block;font-family:var(--font-display);font-weight:600;color:var(--concreto);}
.recurso span{color:var(--concreto-dim);font-size:.9rem;}

.prices{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));}
.price{border:var(--hairline);border-radius:var(--radius);background:var(--fuselagem);
  padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);}
.price--soon{opacity:.7;}
.price__name{font-family:var(--font-display);font-weight:700;font-size:1.2rem;margin:0;color:var(--concreto);}
.price__value{font-family:var(--font-mono);font-size:1.6rem;margin:0;}
.price__value small{font-size:.8rem;color:var(--concreto-dim);}
.price__badge{align-self:flex-start;font-family:var(--font-mono);font-size:.7rem;
  text-transform:uppercase;letter-spacing:.1em;color:var(--system);
  border:1px solid var(--system);border-radius:999px;padding:.1rem .5rem;}
.price__feats{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem;
  color:var(--concreto-dim);font-size:.9rem;flex:1;}
.price__trial{font-size:.78rem;color:var(--concreto-dim);font-family:var(--font-mono);margin:0;}

.faq{max-width:44rem;margin:0 auto;padding:0 var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);}
.faq details{border:var(--hairline);border-radius:var(--radius);background:var(--fuselagem);padding:var(--space-4);}
.faq summary{font-family:var(--font-display);font-weight:600;cursor:pointer;color:var(--concreto);}
.faq p{margin:var(--space-3) 0 0;color:var(--concreto-dim);}

.lp-footer{border-top:var(--hairline);margin-top:var(--space-7);padding:var(--space-6) var(--space-5);}
.lp-footer__inner{max-width:var(--maxw);margin:0 auto;display:flex;flex-wrap:wrap;
  gap:var(--space-5);align-items:center;justify-content:space-between;}
.lp-footer__links{display:flex;gap:var(--space-5);flex-wrap:wrap;align-items:center;}
.lp-footer__links a{color:var(--concreto-dim);}
.lp-footer__soon{color:var(--concreto-dim);opacity:.55;cursor:not-allowed;font-size:.9rem;}
.lp-footer__copy{color:var(--concreto-dim);font-size:.85rem;margin:0;}

@media (max-width:40rem){
  .lp-nav{gap:var(--space-3);}
  .hero{padding-top:var(--space-6);}
}

/* ---- signup forms (Phase 2B) ---- */
.form-card{max-width:24rem;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-4);
  text-align:left;border:var(--hairline);border-radius:var(--radius);background:var(--fuselagem);padding:var(--space-5);}
.form-field{display:flex;flex-direction:column;gap:var(--space-2);font-size:.9rem;color:var(--concreto-dim);}
.form-field input{font:inherit;font-family:var(--font-mono);color:var(--concreto);background:var(--noturno);
  border:var(--hairline);border-radius:var(--radius);padding:.6rem .75rem;width:100%;}
.form-field input:focus-visible{outline:2px solid var(--pista);outline-offset:1px;}
.form-suffix{display:flex;align-items:center;gap:var(--space-2);}
.form-suffix input{flex:1;min-width:0;}
.form-suffix__text{font-family:var(--font-mono);font-size:.85rem;color:var(--concreto-dim);white-space:nowrap;}
.form-error{max-width:24rem;margin:0 auto var(--space-4);padding:.6rem .75rem;border:1px solid var(--alerta,#ec806f);
  border-radius:var(--radius);color:#ec806f;font-size:.9rem;}
.form-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}

/* ---- legal / long-form documents (Phase 2C) ---- */
.doc{max-width:44rem;margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-7);}
.doc h1{font-family:var(--font-display);font-weight:800;font-size:2rem;margin:0 0 var(--space-2);text-wrap:balance;}
.doc h2{font-family:var(--font-display);font-weight:700;font-size:1.15rem;margin:var(--space-6) 0 var(--space-3);}
.doc p,.doc li{color:var(--concreto-dim);}
.doc p{margin:0 0 var(--space-3);}
.doc ul{margin:0 0 var(--space-3);padding-left:1.25rem;display:flex;flex-direction:column;gap:var(--space-2);}
.doc strong{color:var(--concreto);}
.doc code{font-family:var(--font-mono);font-size:.9em;}
.doc-meta{font-family:var(--font-mono);font-size:.8rem;color:var(--concreto-dim);margin:0 0 var(--space-4);}
.doc-note{border:var(--hairline);border-left:3px solid var(--system);border-radius:var(--radius);
  background:var(--fuselagem);padding:var(--space-4);font-size:.9rem;margin:0 0 var(--space-5);}
.form-consent{margin:0;font-size:.78rem;color:var(--concreto-dim);text-align:center;}
