/* There It Is — product page, in the app's own brand.
   Midnight, Teal, Aqua, Cloud, Slate. Sora headings, Inter body. */
:root{
  --midnight:#0B1F3B; --raised:#11294B; --edge:#1E3A61; --teal:#14C2C9; --aqua:#2EE6E6;
  --cloud:#F4F8FB; --slate:#5E6E85; --on-dark:#9FB1C9; --line:#E1E8F0; --deep-teal:#0B7E85;
}
body.there{background:var(--cloud);color:var(--midnight)}
.there a{color:inherit}
.there :focus-visible{outline-color:var(--teal)}

.t-top{background:var(--midnight);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--edge)}
.t-top .wrap{display:flex;align-items:center;gap:24px;height:68px}
.t-top .t-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-family:var(--font-display);font-weight:700;font-size:21px;letter-spacing:-.02em}
.t-brand img{width:34px;height:34px}
.t-brand i,.dot{color:var(--aqua);font-style:normal}
.t-links{display:flex;gap:4px;list-style:none;margin:0 0 0 auto;padding:0}
.t-links a{display:block;text-decoration:none;color:var(--on-dark);font-size:15px;font-weight:500;padding:8px 12px;border-radius:10px}
.t-links a:hover{color:#fff;background:var(--raised)}
.t-by{font-size:13px;color:var(--on-dark);text-decoration:none;border-left:1px solid var(--edge);padding-left:20px;display:flex;align-items:center;gap:8px;white-space:nowrap}
.t-by:hover{color:#fff}
.t-by img{height:14px;width:auto;opacity:.85}

.t-hero{background:var(--midnight);color:#fff;overflow:hidden;position:relative;isolation:isolate}
.t-hero::before{content:"";position:absolute;right:-180px;top:-120px;width:760px;height:760px;background:radial-gradient(closest-side,rgba(46,230,230,.20),transparent 70%);z-index:-1}
.t-hero::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.5;
  background-image:linear-gradient(to right,rgba(159,177,201,.07) 1px,transparent 1px),linear-gradient(to bottom,rgba(159,177,201,.07) 1px,transparent 1px);background-size:56px 56px;
  -webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000,transparent 70%);mask-image:radial-gradient(ellipse at 70% 40%,#000,transparent 70%)}
.t-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding-top:80px;padding-bottom:0}
.t-hero h1{font-family:var(--font-display);font-weight:700;font-size:clamp(38px,4.4vw,58px);line-height:1.04;letter-spacing:-.035em;margin:22px 0 20px}
.t-hero h1 .soft{color:var(--on-dark)}
.t-hero .lede{color:var(--on-dark);font-size:18px;max-width:32em;margin:0 0 30px}
.t-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.t-soon{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--midnight);border-radius:14px;padding:12px 18px;font-weight:600;font-size:15px}
.t-soon svg{width:20px;height:20px}
.t-ghost{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-weight:600;padding:12px 16px;border-radius:14px;border:1px solid var(--edge)}
.t-ghost:hover{background:var(--raised)}
.t-tag{display:inline-flex;align-items:center;gap:8px;color:var(--aqua);font-size:14px;font-weight:600;background:rgba(46,230,230,.08);border:1px solid rgba(46,230,230,.25);border-radius:999px;padding:6px 12px}
.t-phones{position:relative;height:560px;align-self:end}
.t-phones .tphone{position:absolute;bottom:-90px}
.t-phones div.tphone:first-of-type{left:4%;transform:rotate(-4deg)}
.t-phones div.tphone:last-of-type{right:2%;bottom:-150px;transform:rotate(5deg);box-shadow:0 50px 80px -30px rgba(0,0,0,.8)}

.t-section{padding:96px 0}
.t-section--dark{background:var(--midnight);color:#fff}
.t-h2{font-family:var(--font-display);font-weight:700;font-size:clamp(30px,3.6vw,44px);line-height:1.1;letter-spacing:-.03em;margin:0 0 14px}
.t-intro{color:var(--slate);max-width:36em;margin:0}
.t-section--dark .t-intro{color:var(--on-dark)}

.real{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:44px;list-style:none;padding:0}
.real li{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;display:grid;gap:12px;align-content:start}
.real q{quotes:none;font-family:var(--font-display);font-weight:600;font-size:18px;letter-spacing:-.01em;line-height:1.3}
.real .found{display:flex;gap:8px;align-items:flex-start;color:var(--deep-teal);font-weight:600;font-size:15px}
.real .found svg{width:17px;height:17px;flex:none;margin-top:3px}
.real small{color:var(--slate);font-size:14px}

.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:48px;list-style:none;padding:0;counter-reset:s}
.steps li{padding:0 32px 0 0;counter-increment:s}
.steps li+li{padding-left:32px;border-left:1px solid var(--edge)}
.steps li::before{content:counter(s);display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--teal);color:var(--midnight);font-family:var(--font-display);font-weight:700;font-size:20px;margin-bottom:22px}
.steps h3{font-family:var(--font-display);font-weight:700;font-size:22px;margin:0 0 8px;letter-spacing:-.02em}
.steps p{margin:0;color:var(--on-dark)}

.closeup{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.label-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 30px 60px -40px rgba(11,31,59,.45);max-width:440px;margin:0 auto;width:100%}
.label-card .photo{height:150px;border-radius:16px;background:linear-gradient(135deg,#C9D8E6,#E9EFF5);position:relative;overflow:hidden;margin-bottom:20px}
.label-card .can{position:absolute;left:50%;top:22px;transform:translateX(-50%);width:120px;height:150px;border-radius:12px 12px 0 0;background:linear-gradient(90deg,#8A99AA,#DCE4EC 40%,#9AA8B8);}
.label-card .can::after{content:"Harbor Mist";position:absolute;left:12px;right:12px;top:30px;background:#fff;border-radius:6px;padding:10px 6px;text-align:center;font-family:var(--font-display);font-weight:600;font-size:12px;color:var(--midnight)}
.scanbox{position:absolute;left:50%;top:44px;width:132px;height:62px;transform:translateX(-50%);border:2.5px solid var(--teal);border-radius:10px;box-shadow:0 0 0 999px rgba(11,31,59,.25)}
.fields{display:grid;gap:10px;margin:0}
.fields div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:10px}
.fields dt{color:var(--slate);font-size:14px}
.fields dd{margin:0;font-weight:600}
.checks2{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px}
.checks2 li{display:flex;gap:10px}
.checks2 svg{width:18px;height:18px;color:var(--deep-teal);flex:none;margin-top:3px}

.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:44px}
.plan{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:14px}
.plan h3{margin:0;font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:-.02em}
.plan ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;color:var(--midnight)}
.plan li{display:flex;gap:10px}
.plan li svg{width:17px;height:17px;color:var(--deep-teal);flex:none;margin-top:3px}
.plan .who{color:var(--slate);font-size:15px;margin:0}
.plan--mid{background:var(--midnight);color:#fff;border-color:var(--midnight)}
.plan--mid ul{color:#fff}
.plan--mid .who{color:var(--on-dark)}
.plan--mid li svg{color:var(--aqua)}
.fine{color:var(--slate);font-size:14px;margin:20px 0 0;max-width:52em}

.priv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:40px}
.priv h3{font-family:var(--font-display);font-weight:700;font-size:19px;margin:0 0 6px}
.priv p{margin:0;color:var(--slate)}

.t-cta{background:var(--midnight);color:#fff;border-radius:28px;padding:56px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:32px;align-items:center}
.t-cta img{width:84px;height:84px}
.t-cta h2{margin:0 0 6px;font-family:var(--font-display);font-weight:700;font-size:clamp(26px,3vw,36px);letter-spacing:-.02em}
.t-cta p{margin:0;color:var(--on-dark)}

.t-foot{padding:36px 0 44px;color:var(--slate);font-size:14px}
.t-foot .wrap{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;align-items:center}
.t-foot a{color:var(--midnight)}
.t-foot .by{display:flex;align-items:center;gap:10px}
.t-foot .by img{height:16px;width:auto}

@media (max-width:960px){
  .t-hero .wrap{grid-template-columns:1fr;padding-top:56px}
  .t-phones{height:520px}
  .real,.plans,.priv{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .steps li,.steps li+li{padding:24px 0;border-left:0;border-top:1px solid var(--edge)}
  .closeup{grid-template-columns:1fr}
  .t-cta{grid-template-columns:1fr;padding:40px 28px}
}
@media (max-width:760px){
  .t-links{display:none}
  .t-by{margin-left:auto}
  .t-phones{height:470px}
  .t-phones .tphone{width:240px}
  .t-phones .tphone .tphone__s{height:500px}
  .t-phones div.tphone:first-of-type{left:-4%}
  .t-phones div.tphone:last-of-type{right:-8%}
  .t-section{padding:64px 0}
}

/* ---------- v3: colour, abstract backgrounds and motion ---------- */
.t-hero{background:radial-gradient(ellipse 80% 80% at 75% 30%,#123a63 0%,var(--midnight) 65%)}
.aurora--teal i:nth-child(1){background:radial-gradient(closest-side,#14C2C9,transparent)}
.aurora--teal i:nth-child(2){background:radial-gradient(closest-side,#0B7E85,transparent)}
.aurora--teal i:nth-child(3){background:radial-gradient(closest-side,rgba(46,230,230,.9),transparent)}
.aurora--teal i:nth-child(4){background:radial-gradient(closest-side,rgba(63,114,250,.55),transparent)}
.t-hero .aurora{opacity:.7}
.t-hero .contours{opacity:.08}
.t-hero .wrap{position:relative}
.t-phones div.tphone:first-of-type{translate:0 calc((.5 - var(--q,.5)) * 60px)}
.t-phones div.tphone:last-of-type{translate:0 calc((.5 - var(--q,.5)) * 140px)}
.t-phones .chipf{z-index:3}
.t-phones::before{content:"";position:absolute;left:10%;top:10%;width:80%;aspect-ratio:1;border-radius:50%;background:conic-gradient(from 90deg,#14C2C9,#0B7E85,#2EE6E6,#3F72FA,#14C2C9);filter:blur(80px);opacity:.4;animation:spin 22s linear infinite}
.t-section{position:relative;isolation:isolate;overflow:hidden}
.t-section--dark::before{content:"";position:absolute;inset:0;z-index:-1;background:url(contours.svg) 120% 50%/1100px no-repeat;opacity:.06}
.t-section--dark::after{content:"";position:absolute;z-index:-1;width:600px;height:600px;left:-200px;bottom:-300px;border-radius:50%;background:radial-gradient(closest-side,rgba(20,194,201,.35),transparent)}
.real li{transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s}
.real li:hover{transform:translateY(-6px);border-color:rgba(20,194,201,.5);box-shadow:0 30px 50px -30px rgba(11,31,59,.35)}
.plan{transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.plan:hover{transform:translateY(-6px);box-shadow:0 30px 50px -30px rgba(11,31,59,.35)}
.plan--mid{background:linear-gradient(160deg,#11294B,#0B1F3B 60%);box-shadow:0 0 0 1px rgba(46,230,230,.3),0 40px 60px -30px rgba(11,31,59,.6)}
.t-cta{position:relative;overflow:hidden;isolation:isolate}
.t-cta::before{content:"";position:absolute;z-index:-1;width:500px;height:500px;right:-150px;top:-250px;border-radius:50%;background:radial-gradient(closest-side,rgba(46,230,230,.35),transparent);animation:drift1 20s ease-in-out infinite alternate}
@media (max-width:760px){.t-phones .chipf{display:none}}
.scanbox{overflow:hidden}
.scanbox::after{content:"";position:absolute;left:0;right:0;height:14px;top:-14px;background:linear-gradient(transparent,rgba(46,230,230,.85),transparent);animation:scan 2.4s ease-in-out infinite}
@keyframes scan{to{top:100%}}
