/* Future Frontiers: shared navigation and footer styles, loaded after each page's own styles. */
nav .nrow1{gap:22px}
nav .nlinks{gap:20px}
nav .ncta{display:flex;align-items:center;gap:16px;flex:0 0 auto}
nav .ncta .nsign{font-size:13.5px;font-weight:600;color:rgba(255,255,255,.85);white-space:nowrap}
nav .ncta .nsign:hover{color:#1FC3CE}
nav .ncta .btn{display:inline-block;font-family:"Inter","Helvetica Neue",Arial,system-ui,sans-serif;font-weight:600;font-size:13px;padding:9px 18px;border-radius:26px;border:0;background:#0E8A93;color:#fff;white-space:nowrap;text-align:center;transition:background .15s}
nav .ncta .btn:hover{background:#14A3AE}
@media(max-width:900px){
  nav .nlinks,nav .nrow2{display:none}
  nav .nburger{display:block}
  nav.open .nmenu{display:block;border-top:1px solid rgba(255,255,255,.08);padding:10px 22px 16px}
  nav .nmenu a{display:block;padding:10px 0;font-size:16px;font-weight:600;color:rgba(255,255,255,.92)}
  nav .nmenu a.sec{font-size:14px;font-weight:500;color:rgba(255,255,255,.62);padding:7px 0 7px 16px}
  nav .nmenu a.on,nav .nmenu a.cur{color:#1FC3CE}
  nav .nmenu .nmsep{border-top:1px solid rgba(255,255,255,.1);margin:8px 0}
}
@media(max-width:560px){nav .ncta .nsign{display:none}nav .nrow1{gap:14px}}
footer .flinks a{white-space:nowrap}
@media(max-width:700px){table.lt{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}
/* Page sections that are also .container keep their side margins (their own padding rule had reset them to 0 on phones). */
.lpage.container{padding-left:28px;padding-right:28px}
@media(max-width:560px){.container,.lpage.container{padding-left:20px;padding-right:20px}}
/* Every page section that is also .container keeps the same side margins as the rest of the page, so headings line
   up with the text and cards below them (several sections reset the padding to 0; Bert, 2026-10-21). */
section.container,header.container{padding-left:28px;padding-right:28px}
@media(max-width:560px){section.container,header.container{padding-left:20px;padding-right:20px}}

/* Phones (2026-10-26): the top row holds only the logo and the menu button, at the right edge with a 44 px tap area;
   Sign in and Request access are inside the menu. Before, the menu button sat mid-row and the corner was the
   Request access (email) button, so taps in the corner seemed to do nothing. */
@media(max-width:840px){
  nav .ncta{display:none}
  nav .nburger{margin-left:auto;padding:12px;min-width:44px;min-height:44px;-webkit-tap-highlight-color:transparent}
}
@media(max-width:840px){
  nav .nmenu a.mcta{display:block;margin:10px 0 6px;padding:13px 18px;border-radius:26px;background:#0E8A93;color:#fff;text-align:center;font-size:15px;font-weight:600}
  nav .nmenu a.mcta:hover{background:#14A3AE}
}
/* Headlines (2026-10-26): balanced line breaks so no single word hangs on its own line, and a wider cap
   (about 30 characters) on pages without a picture beside the headline. */
h1,h2,h3{text-wrap:balance}
.ihead h1,.head h1{max-width:30ch}
.prob h2,.promise h2{max-width:38ch}
.esec h2,.lh2{max-width:38ch}
/* Home: the four numbers as two rows of two */
.hero.v10 .stats{display:grid;grid-template-columns:repeat(2,max-content);gap:18px 48px}

/* Phones (27 Oct): the page never scrolls sideways. A too-wide element is clipped instead of widening the
   whole layout (on iPhone Safari a wider layout pushed the menu button and the text off the right edge).
   "clip" keeps the sticky header working (no scroll container); no text inflation in landscape. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{overflow-x:clip;max-width:100%}
img,svg,video,iframe{max-width:100%}
input,select,textarea{max-width:100%}
/* Phones (27 Oct): grids never grow wider than the screen. The home numbers (2x2) share the width in two equal
   columns instead of taking each label's full length; grid and card children may shrink; long words wrap. */
@media(max-width:560px){.hero.v10 .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}}
@media(max-width:840px){
  .grid>*,.tiers>*,.tier,.cmpgrid>*,.pgrid>*,.wgrid>*,.grid3>*,.grid4>*,.grid5>*,.rk2>*,.sc8>*,.tpair>*,.stats>*{min-width:0}
  h1,h2,h3,h4,p,li{overflow-wrap:break-word}
}
/* Phones (27 Oct): cards without empty space. Padding 20 px (was up to 34), no trailing paragraph margin,
   no fixed minimum heights; a card's link keeps its distance from the text. */
@media(max-width:640px){
  .card{padding:20px!important}
  .card h3{font-size:20px;margin:4px 0 8px}
  .card p{margin-bottom:0;flex:none}
  .card a.more{margin-top:14px}
  .cmpgrid .card p{margin-top:6px}
  .pcard{min-height:0!important;padding:20px!important}
  .wcard,.ask,.register{padding:20px!important}
  .rkc{padding:18px 18px 16px!important}
  .tov{padding:18px 20px}
  .tcard{padding:18px}
}
/* Phones (27 Oct, Bert's go): one section spacing, 44 px above and below (88 px between two sections).
   Was 84 px on Space, 64 to 78 px on home and Enterprise. Openings (hero/head) keep their own standard. */
@media(max-width:640px){
  .band,.promise,.product,.askrow,.listsec,.agents,.founding,.mission,.esec,.ecta,.lband,.bodycopy{padding-top:44px;padding-bottom:44px}
  .prob{padding-top:44px}
  .lpage{padding-top:44px;padding-bottom:56px}
}
