/* meandmine.app home. The app's own colours, type and art. Light and dark follow the phone. */
:root{color-scheme:light dark;--ground:#F8F7F3;--ink:#172677;--red:#B8303A;--mute:#5B6490;--btn:#172677;--btn-ink:#F8F7F3;--line:rgba(23,38,119,.12);--shade:rgba(8,12,50,.45)}
@media (prefers-color-scheme:dark){:root{--ground:#0E1650;--ink:#F4F2EC;--mute:#B9C6EF;--btn:#F4F2EC;--btn-ink:#0E1650;--line:rgba(244,242,236,.14);--shade:rgba(0,0,0,.6)}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ground);color:var(--ink);font:400 17px/1.5 Figtree,-apple-system,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}

/* wordmark: red, the "&" in ink */
.wm{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:24px;letter-spacing:-.045em;color:var(--red);text-decoration:none}
.wm img{width:26px}
.wm i{font-style:normal;color:var(--ink)}

.top{display:flex;align-items:center;justify-content:space-between;height:88px}
.top a:last-child{font-weight:500;font-size:16px;color:var(--mute);text-decoration:none;padding:12px 4px}

h1,h2{margin:0;font-weight:800;text-wrap:balance}
h1 b,h2 b{color:var(--red);font-weight:800}
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center;padding:40px 0 120px}
.hero h1{font-size:120px;line-height:.9;letter-spacing:-.06em}
.lede{margin:28px 0 40px;font-size:21px;line-height:1.45;color:var(--mute);max-width:26em}
/* the one App Store link. until the app is live it is a label, not a link */
.store{display:inline-flex;align-items:center;height:56px;padding:0 28px;border-radius:999px;background:var(--btn);color:var(--btn-ink);font-weight:700;font-size:17px;letter-spacing:-.01em;text-decoration:none}

/* a real screen, with the corners an iPhone has */
.ph{width:300px;aspect-ratio:393/852;border-radius:42px;overflow:hidden;background:#000;box-shadow:0 0 0 1px var(--line),0 56px 96px -44px var(--shade),0 20px 40px -24px var(--shade)}
.ph img{width:100%}
.hero .ph{justify-self:center;width:340px;border-radius:48px}

.feat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center;padding:56px 0}
.feat.flip .field{order:2}
h2{margin-bottom:16px;font-size:56px;line-height:.98;letter-spacing:-.05em}
.feat p,.end p{margin:0;font-size:19px;color:var(--mute);max-width:24em}

/* the app's colour fields and grain; the screen rises out of the bottom */
.field{position:relative;height:580px;border-radius:36px;overflow:hidden;display:flex;justify-content:center;padding-top:64px}
.field::after{content:"";position:absolute;inset:0;background:url(img/grain.webp) 0 0/240px 240px;pointer-events:none}
.field .ph{position:relative;z-index:1;flex:none;height:max-content}
.pink{background:url(img/mesh-pink-t.webp) 0 0/100% 100% no-repeat,#EFA7AF}
.blue{background:url(img/mesh-blue-t.webp) 0 0/100% 100% no-repeat,#B9C6EF}
.red{background:url(img/rwm-red.webp) 0 0/100% 100% no-repeat,#B8303A}

.end{text-align:center;padding:120px 0 136px}
.end img{width:132px;margin:0 auto 28px}
.end p{margin:0 auto}

.foot{border-top:1px solid var(--line);padding:32px 0 48px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px;font-size:15px;color:var(--mute)}
.foot nav{display:flex;flex-wrap:wrap;gap:4px 24px}
.foot nav a{color:var(--mute);text-decoration:none;padding:10px 0}
.foot .mail{color:var(--ink);font-weight:500;text-decoration:none;padding:10px 0}
.foot small{font-size:14px;width:100%}
a:hover{opacity:.8}
a:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:6px}

@media (max-width:760px){
  .top{height:72px}
  .hero{grid-template-columns:minmax(0,1fr);gap:56px;padding:24px 0 72px}
  .hero h1{font-size:72px}
  .lede{font-size:19px;margin:20px 0 32px}
  .store{width:100%;justify-content:center}
  .hero .ph{width:280px;border-radius:40px}
  .feat{grid-template-columns:minmax(0,1fr);gap:28px;padding:40px 0}
  .feat .field{order:2}
  h2{font-size:40px}
  .feat p,.end p{font-size:18px}
  .field{height:470px;border-radius:28px;padding-top:44px}
  .field .ph{width:250px;border-radius:35px}
  .end{padding:88px 0 96px}
  .end img{width:108px}
  .foot{flex-direction:column;align-items:flex-start;gap:8px}
}
