*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; overflow-x:hidden; -webkit-text-size-adjust:100%; }

body{
  min-height:100vh;
  background-image:url('img/bg.png');
  background-size:100% auto;
  background-position:top center;
  background-repeat:no-repeat;
  background-color:#0b1220;
}

.full{ width:100%; }
.tac{ text-align:center; }

.wrap1200{ max-width:1200px; margin:0 auto; width:100%; }

.sectionPad50{ padding:80px; }
.sectionPad50Y{ padding:50px 0; }

.secLight{ background:#F9FAFB; }
.secWhite{ background:#FFFFFF; }
.secNavy{ background:#0A2540; }
.secFooter{ background:#111827; }

.row50{ display:flex; flex-wrap:wrap; width:100%; align-items:center; }
.col50{ width:50%; }

.row33{ display:flex; flex-wrap:wrap; width:100%; }
.col33{ width:33.3333%; }

.cell20{ padding:20px; }
.cell14{ padding:14px; }

img{ max-width:100%; height:auto; display:inline-block; }

.recs{
  display:block;
  border:1px solid #e0e0e0;
  border-radius:20px;
  padding:30px;
  width:100%;
}
.recs:hover{
  box-shadow:0px 20px 33px -17px rgba(0,0,0,0.35);
  -webkit-box-shadow:0px 20px 33px -17px rgba(0,0,0,0.35);
  -moz-box-shadow:0px 20px 33px -17px rgba(0,0,0,0.35);
}

.mainbut{
  margin-bottom:170px;
  background:#35b4ff;
  color:#FFF;
  padding:14px 36px;
  font-size:19px;
  border:none;
  border-radius:40px;
  cursor:pointer;
}
.mainbut:hover{ background:#1d92d7; }

.btnwrap{ text-decoration:none; color:inherit; display:inline-block; }
.btnwrap:focus{ outline:none; }

.linkNoDec{ text-decoration:none; }

.heroTitle{
  font-size:44px;
  color:#35b4ff;
  font-weight:bold;
  font-family:Arial;
  display:block;
  padding-top:110px;
  margin:0;
}
.heroTitleSub{
  font-size:70px;
  font-weight:600;
  font-family:Arial;
  color:#FFF;
  width:100%;
  padding-top:10px;
  text-align:center;
  display:block;
}
.heroDesc{
  font-family:Arial;
  font-size:22px;
  color:#FFF;
  width:100%;
  text-align:center;
  display:block;
}

.h2Inline{ font-size:38px; font-weight:700; display:inline-block; }
.p19{ font-size:19px; }

.shadowImg{
  border:none;
  border-radius:20px;
  box-shadow:0px 20px 33px -17px rgba(0,0,0,0.63);
  -webkit-box-shadow:0px 20px 33px -17px rgba(0,0,0,0.63);
  -moz-box-shadow:0px 20px 33px -17px rgba(0,0,0,0.63);
}

.sectionTitle{
  font-size:38px;
  font-weight:700;
}

.emoji50{ font-size:50px; }
.emojiSpacer{ font-size:50px; }

.cardTitle{ font-weight:700; font-size:19px; }
.cardBreak{ font-size:17px; font-weight:700; }
.cardText{ font-size:17px; }

.r2img{ border:none; border-radius:20px; }

.appTitle{ font-size:30px; font-weight:700; }
.appDesc{ font-size:20px; }

.storeBadge{
  border:2px solid #ffffff47;
  border-radius:30px;
  display:inline-block;
}

.footerTitle{ font-size:28px; }
.footerDesc{ font-size:16px; }
.footerSpacer{ font-size:16px; }
.footerLink{ font-size:16px; }
.footerCopy{ font-size:16px; }

@media (max-width: 900px){
  body{ background-size:cover; background-position:center top; }
  .col50,.col33{ width:100%; }
  img[width]{ width:100% !important; height:auto !important; }
}

@media (max-width: 600px){
  .sectionPad50{ padding:22px; }
  .sectionPad50Y{ padding:28px 20px; }
  .cell20{ padding:14px; }
  .cell14{ padding:20px; }

  .heroTitle{ font-size:30px; padding-top:40px; line-height:1.05; }
  .heroTitleSub{ font-size:42px; padding-top:14px; line-height:1.05; }
  .heroDesc{ font-size:16px; line-height:1.4; }

  .mainbut{ font-size:20px; padding:16px 28px; margin-bottom:70px; }

  .h2Inline{ font-size:26px; line-height:1.15; display:block; }
  .p19{ font-size:16px; line-height:1.55; }

  .sectionTitle{ font-size:28px; line-height:1.15; display:block; }

  .recs{ padding:18px; }
  .emoji50{ font-size:40px; }

  img[src*="store_"]{ width:150px !important; height:auto !important; }
  img[src*="r2"]{ width:110px !important; height:auto !important; }
}
