/* Modeled on the rhythm of Apple's iPhone Pro product page, on the DBAI logo palette.
   Near-black (navy hue) for product moments, off-white for feature sections, logo navy for tiles.
   Inter 600 headlines, two-tone heads, gray secondary copy, teal for the mark only, orange for the one action. */
:root{
  color-scheme:dark;
  --black:#04080F; --navy:#0B1628; --tile:#0E1A2D; --tile-l:#FFFFFF; --teal:#5CE0D8; --teal-ink:#127A74; --orange:#E87A2F;
  --white:#F5F7FA; --ink:#F4F7FA; --gray:#8D97A6; --ink-l:#141B27; --gray-l:#5F6876; --hair:rgba(255,255,255,.08); --hair-l:rgba(4,8,15,.09);
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif; --maxw:980px; --wide:1180px; --gut:max(22px,5vw);
}
*{box-sizing:border-box}
body{margin:0;background:var(--black);color:var(--ink);font-family:var(--sans);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-size:17px;line-height:1.47;letter-spacing:-.011em}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut)}
.wide{max-width:var(--wide);margin-inline:auto;padding-inline:var(--gut)}
.center{text-align:center}
a{color:inherit}
section{position:relative}
.light{background:var(--white);color:var(--ink-l)}
.g{color:var(--gray)} .light .g{color:var(--gray-l)}
sup{font-size:.5em;vertical-align:super;line-height:0;margin-left:.06em;font-weight:500;color:var(--gray)}
.light sup{color:var(--gray-l)}
.mk line{stroke:var(--teal);stroke-linecap:square;fill:none}
.mk .dot{fill:var(--orange)}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}

/* nav: global + product (sticky) */
.gnav{height:44px;background:rgba(4,8,15,.85);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);position:relative;z-index:70}
.gnav .wide{height:44px;display:flex;align-items:center;justify-content:space-between;max-width:1024px}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;font-size:13px;font-weight:600;color:rgba(244,247,250,.92)}
.brand svg{width:17px;height:17px}
.brand em{font-style:normal;color:var(--teal);font-weight:500}
.gl{display:flex;gap:34px;font-size:12px;color:rgba(244,247,250,.8)}
.gl a{text-decoration:none;padding:14px 0}
.pnav{position:sticky;top:env(safe-area-inset-top,0px);z-index:65;height:52px;background:rgba(4,8,15,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--hair)}
.pnav .wide{height:52px;display:flex;align-items:center;justify-content:space-between;max-width:1024px}
.pname{font-size:21px;font-weight:600;letter-spacing:.005em;text-decoration:none}
.pr{display:flex;align-items:center;gap:22px;font-size:12px;color:rgba(244,247,250,.75)}
.pr a.l{text-decoration:none}
.pr a.l:hover{color:#fff}
.pill{font-size:12px;font-weight:500;background:var(--orange);color:var(--black);text-decoration:none;padding:5px 12px;border-radius:999px;min-height:28px;display:inline-flex;align-items:center;transition:opacity .4s ease}
.pill.away{opacity:0;pointer-events:none}
.promo{background:var(--navy);font-size:14px;color:var(--gray);text-align:center;padding:12px var(--gut)}
.promo b{color:var(--ink);font-weight:500}
@media (max-width:820px){.gl,.pr a.l{display:none}}

/* type */
.kicker{font-size:clamp(19px,2.1vw,24px);font-weight:600;letter-spacing:.004em;margin:0 0 8px}
.title{font-weight:600;font-size:clamp(44px,6.6vw,80px);letter-spacing:-.015em;line-height:1.05;margin:0}
.tag{font-weight:600;font-size:clamp(28px,3.6vw,44px);letter-spacing:-.01em;line-height:1.1;margin:10px 0 0;
  background:linear-gradient(90deg,#FFFFFF 0%,#BFE9EA 60%,#5CE0D8 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.h2{font-weight:600;font-size:clamp(40px,5.6vw,64px);letter-spacing:-.02em;line-height:1.06;margin:0;text-wrap:balance}
.h3{font-weight:600;font-size:clamp(26px,3vw,36px);letter-spacing:-.012em;line-height:1.12;margin:0;text-wrap:balance}
.lede{font-size:clamp(19px,1.9vw,21px);line-height:1.4;max-width:46ch;margin:18px 0 0}
.lede b{font-weight:600;color:var(--ink)} .light .lede b{color:var(--ink-l)}
.cta{display:inline-flex;align-items:center;justify-content:center;background:var(--orange);color:var(--black);font-weight:500;font-size:17px;text-decoration:none;padding:12px 24px;border-radius:999px;min-height:48px;transition:background .3s ease}
.cta:hover{background:#F2904F}
.note{font-size:14px;color:var(--gray);margin:14px 0 0}
.light .note{color:var(--gray-l)}
.sec{padding-block:clamp(100px,13vw,160px)}
.head-2col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:end}

/* 1 · hero + the teardown (sticky 3D) */
.xp{position:relative}
.stage{position:sticky;top:0;height:100svh;overflow:hidden}
.stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.stage .floor{position:absolute;left:50%;top:70%;width:min(1100px,160vw);height:40%;transform:translateX(-50%);background:radial-gradient(50% 50% at 50% 0%,rgba(92,224,216,.10),rgba(92,224,216,0) 70%);pointer-events:none}
.fallback{position:absolute;left:50%;top:64%;width:min(46vw,270px);height:auto;transform:translate(-50%,-50%);overflow:visible}
.fallback line{stroke-width:8}
.lab{position:absolute;transform:translate(16px,-50%);white-space:nowrap;font-size:13px;color:var(--gray);opacity:0;pointer-events:none}
.lab b{color:var(--ink);font-weight:600;margin-right:6px}
.panels{position:relative;z-index:2;margin-top:-100svh}
.p{min-height:100svh;display:flex;padding-inline:var(--gut)}
.p .in{max-width:var(--maxw);margin-inline:auto;width:100%}
.p-hero{align-items:flex-start;padding-top:clamp(48px,9vh,110px)}
.p-hero .cta-row{margin-top:26px;display:flex;justify-content:center}
.p-cap{align-items:flex-end;padding-bottom:clamp(48px,11vh,120px)}
.p-cap .in{text-align:center}
.p-cap .h3 .g{display:block}

/* 2 · highlights gallery */
.hl .stage2{margin-top:44px}
.slides{display:grid;grid-auto-flow:column;grid-auto-columns:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:28px}
.slides::-webkit-scrollbar{display:none}
.slide{scroll-snap-align:center;position:relative;min-height:min(640px,78svh);background:radial-gradient(80% 70% at 50% 100%,#112640 0%,var(--tile) 55%,#09121F 100%);border-radius:28px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,4vw,48px)}
.slide p{font-size:clamp(19px,2vw,24px);font-weight:500;line-height:1.3;max-width:28ch;margin:0;color:var(--gray)}
.slide p b{color:var(--ink);font-weight:600}
.slide svg{align-self:center;width:min(70%,420px);height:auto;overflow:visible}
.dots{display:flex;justify-content:center;gap:10px;margin-top:22px;padding:10px 16px;background:rgba(255,255,255,.08);border-radius:999px;width:max-content;margin-inline:auto}
.dots button{width:8px;height:8px;border-radius:999px;border:0;background:rgba(255,255,255,.35);padding:0;cursor:pointer;transition:width .4s ease,background .4s ease}
.dots button[aria-current="true"]{width:36px;background:var(--ink)}

/* 3 · ultimate upgrade */
.upg .rows{margin-top:clamp(40px,6vw,70px);display:grid;gap:0;border-top:1px solid var(--hair-l)}
.upg .row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--hair-l)}
.upg .row b{font-weight:600;font-size:clamp(36px,5vw,60px);letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.upg .row span{font-size:19px;color:var(--gray-l);line-height:1.35}
.upg .row span strong{color:var(--ink-l);font-weight:600}

/* 4 · design: trade swatches + phone/desktop */
.design .viewer{display:grid;justify-items:center;margin-top:clamp(40px,6vw,64px)}
.frame{transition:opacity .5s ease}
.device{position:relative;width:min(72vw,300px);aspect-ratio:9/19.3;border-radius:52px;padding:11px;
  background:linear-gradient(145deg,#2C3442 0%,#151A23 40%,#3A4352 70%,#12161D 100%);box-shadow:0 0 0 1px rgba(0,0,0,.6),0 60px 100px -50px rgba(0,0,0,.9),inset 0 0 0 1.5px rgba(255,255,255,.12)}
.device:before{content:"";position:absolute;top:22px;left:50%;width:30%;height:24px;transform:translateX(-50%);background:#000;border-radius:20px;z-index:3}
.screen{position:relative;width:100%;height:100%;border-radius:42px;overflow:hidden;background:#fff;color:#11161D}
.laptop{display:none;width:min(92vw,720px)}
.laptop .lid{border-radius:18px 18px 0 0;padding:14px 14px 18px;background:linear-gradient(180deg,#2B3340,#161B24);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.1)}
.laptop .lscreen{aspect-ratio:16/10;border-radius:6px;overflow:hidden;background:#fff;color:#11161D;position:relative}
.laptop .base{height:14px;margin:0 -6%;background:linear-gradient(180deg,#3A4352,#1A1F28);border-radius:0 0 14px 14px}
.desk-mode .device{display:none}
.desk-mode .laptop{display:block}
.site{position:absolute;inset:0;display:flex;flex-direction:column;background:#fff}
.status{height:48px;flex:0 0 auto}
.s-top{display:flex;justify-content:space-between;align-items:center;padding:4px 18px 12px;font-weight:600;font-size:15px}
.s-top span{font-size:11px;font-weight:600;color:var(--accent,#0F6E68)}
.s-hero{margin:0 12px;border-radius:22px;padding:22px 18px;background:linear-gradient(160deg,var(--h1,#10263D),var(--h2,#060D18));color:#fff}
.s-hero h4{font-size:23px;line-height:1.04;letter-spacing:-.02em;margin:0 0 8px;font-weight:600}
.s-hero p{font-size:12px;color:rgba(255,255,255,.72);margin:0 0 14px;line-height:1.4}
.s-call{display:flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:#0B1628;border-radius:999px;padding:11px;font-weight:600;font-size:13px}
.s-call svg{width:15px;height:15px;fill:none;stroke:#0B1628;stroke-width:2}
.s-list{padding:14px 18px;display:grid;gap:8px}
.s-list div{height:44px;border-radius:14px;background:#F2F4F7;display:flex;align-items:center;justify-content:space-between;padding:0 14px;font-size:12.5px;font-weight:500}
.s-list i{font-style:normal;color:#8A94A3}
.laptop .site{flex-direction:row}
.laptop .s-side{flex:1;display:flex;flex-direction:column;justify-content:center;padding:6% 5%}
.laptop .s-side h4{font-size:clamp(18px,3vw,32px);line-height:1.04;letter-spacing:-.02em;margin:0 0 10px;font-weight:600}
.laptop .s-side p{font-size:clamp(10px,1.3vw,13px);color:#5B6878;margin:0 0 14px}
.laptop .s-side .s-call{background:#0B1628;color:#fff;width:max-content;padding:10px 18px}
.laptop .s-side .s-call svg{stroke:#fff}
.laptop .s-pic{flex:1;background:linear-gradient(160deg,var(--h1,#10263D),var(--h2,#060D18));display:grid;place-items:center}
.laptop .s-pic svg{width:40%;height:auto}
.controls{display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center;justify-content:center;margin-top:34px}
.swatches{display:flex;align-items:center;gap:12px;padding:10px 16px;background:rgba(4,8,15,.06);border-radius:999px}
.swatches .lbl{font-size:12px;color:var(--gray-l);min-width:64px}
.sw{width:26px;height:26px;border-radius:50%;border:0;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);outline-offset:3px}
.sw[aria-pressed="true"]{box-shadow:0 0 0 2px var(--white),0 0 0 3.5px var(--ink-l)}
.seg{display:flex;padding:4px;background:rgba(4,8,15,.06);border-radius:999px}
.seg button{border:0;background:transparent;font:500 13px var(--sans);color:var(--gray-l);padding:8px 16px;border-radius:999px;cursor:pointer;min-height:36px}
.seg button[aria-pressed="true"]{background:#fff;color:var(--ink-l);box-shadow:0 1px 4px rgba(0,0,0,.12)}
.acc{margin-top:clamp(56px,7vw,90px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.acc div{background:#fff;border-radius:22px;padding:24px}
.acc b{display:block;font-weight:600;font-size:17px}
.acc span{display:block;color:var(--gray-l);font-size:15px;margin-top:6px;line-height:1.45}

/* 5 · found: spec grid */
.spec{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:clamp(48px,6vw,80px)}
.spec div{background:var(--tile);border-radius:26px;padding:clamp(24px,3vw,34px);min-height:250px;display:flex;flex-direction:column;justify-content:space-between}
.spec b{font-size:clamp(34px,4vw,48px);font-weight:600;letter-spacing:-.02em;line-height:1}
.spec span{color:var(--gray);font-size:15px;margin-top:10px;display:block}
.spec em{font-style:normal;font-size:13px;color:var(--teal)}

/* 6 · trusted: tabs */
.tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:clamp(36px,5vw,56px)}
.tabs button{border:0;font:500 15px var(--sans);padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--gray);cursor:pointer;min-height:42px}
.tabs button[aria-selected="true"]{background:var(--ink);color:var(--black)}
.tabpanel{margin-top:30px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center;background:var(--tile);border-radius:28px;padding:clamp(28px,4vw,52px)}
.tabpanel .h3 .g{display:block}
.tabpanel .vis{background:#fff;color:#11161D;border-radius:22px;padding:18px;min-height:260px;display:grid;gap:10px;align-content:start}
.rv{background:#F2F4F7;border-radius:14px;padding:12px 14px;font-size:13px;line-height:1.45}
.rv b{display:block;font-weight:600}
.big5{display:flex;align-items:baseline;gap:8px}
.big5 b{font-size:44px;font-weight:600;letter-spacing:-.03em}
.stars{color:#E3A008;letter-spacing:1px}
.photos{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.photos i{display:block;aspect-ratio:4/3;border-radius:12px;background:linear-gradient(135deg,#C9D6E2,#9FB2C6)}
.photos i:nth-child(2){background:linear-gradient(135deg,#B9C9D9,#7F95AD)}.photos i:nth-child(3){background:linear-gradient(135deg,#D7E1EA,#A9BACB)}.photos i:nth-child(4){background:linear-gradient(135deg,#AFC0D2,#8297AE)}
.speed{display:grid;place-items:center;text-align:center;gap:4px;padding-top:24px}
.speed b{font-size:64px;font-weight:600;letter-spacing:-.04em}

/* 7 · booked: feature list */
.feat{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:clamp(48px,6vw,80px)}
.feat div{background:#fff;border-radius:26px;padding:clamp(24px,3vw,34px);min-height:200px}
.feat svg{width:30px;height:30px;fill:none;stroke:var(--teal-ink);stroke-width:1.5;stroke-linecap:square;stroke-linejoin:miter}
.feat b{display:block;font-size:21px;font-weight:600;margin-top:18px}
.feat span{display:block;color:var(--gray-l);margin-top:6px;max-width:34ch}

/* 8 · managed */
.managed .row3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:clamp(48px,6vw,80px);text-align:left}
.managed .row3 div{border-top:1px solid var(--hair);padding-top:20px}
.managed .row3 b{display:block;font-size:clamp(36px,4.4vw,52px);font-weight:600;letter-spacing:-.03em;line-height:1}
.managed .row3 span{display:block;color:var(--gray);margin-top:10px;max-width:26ch}

/* 9 · why (horizontal cards) */
.whyrow{display:grid;grid-auto-flow:column;grid-auto-columns:min(78vw,330px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:44px var(--gut) 10px;scroll-padding-inline:var(--gut)}
.whyrow::-webkit-scrollbar{display:none}
.whyrow article{scroll-snap-align:start;background:#fff;border-radius:26px;padding:30px;min-height:300px;display:flex;flex-direction:column;justify-content:space-between}
.whyrow svg{width:34px;height:34px;fill:none;stroke:var(--teal-ink);stroke-width:1.5;stroke-linecap:square;stroke-linejoin:miter}
.whyrow h3{font-size:24px;font-weight:600;letter-spacing:-.012em;line-height:1.15;margin:0}
.whyrow h3 span{color:var(--gray-l)}

/* 10 · keep exploring */
.explore .two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
.explore a.card{display:block;text-decoration:none;background:var(--tile);border-radius:26px;padding:clamp(28px,4vw,44px);min-height:260px}
.explore a.card b{display:block;font-size:clamp(26px,3vw,34px);font-weight:600;letter-spacing:-.015em}
.explore a.card span{display:block;color:var(--gray);margin-top:8px}
.explore a.card em{display:inline-block;margin-top:26px;font-style:normal;color:var(--teal)}

/* 11 · values */
.values .three{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.values .three div{background:#fff;border-radius:26px;padding:30px;min-height:220px}
.values .three b{display:block;font-size:24px;font-weight:600;letter-spacing:-.012em}
.values .three span{display:block;color:var(--gray-l);margin-top:8px}

/* 12 · close + footnotes */
.close{padding-block:clamp(120px,16vw,200px);overflow:hidden}
.close .mk{width:clamp(84px,10vw,116px);height:auto;display:block;margin:0 auto 40px;overflow:visible}
.close .mk line{stroke-width:4}
.feet{background:var(--white);color:var(--gray-l);font-size:12px;line-height:1.5}
.feet .wrap{padding-block:34px 18px}
.feet ol{margin:0;padding-left:18px;display:grid;gap:8px}
.foot{background:var(--white);color:var(--gray-l);font-size:12px}
.foot .wrap{border-top:1px solid var(--hair-l);padding-block:16px 40px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 22px}
.foot a{color:var(--ink-l);text-decoration:none}

@media (max-width:860px){
  .head-2col,.tabpanel{grid-template-columns:1fr}
  .acc,.spec,.values .three,.explore .two{grid-template-columns:1fr}
  .feat{grid-template-columns:1fr}
  .managed .row3{grid-template-columns:1fr}
  .upg .row{grid-template-columns:1fr;gap:8px}
}
/* 8b · pricing and ownership */
.pricing .plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:clamp(40px,6vw,64px)}
.plan{background:#fff;border-radius:28px;padding:clamp(26px,3vw,40px);display:flex;flex-direction:column;gap:14px}
.plan .name{font-size:15px;font-weight:600;color:var(--teal-ink)}
.plan .price{font-size:clamp(40px,5vw,56px);font-weight:600;letter-spacing:-.03em;line-height:1}
.plan .price span{font-size:17px;font-weight:500;color:var(--gray-l);letter-spacing:0}
.plan ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;color:var(--gray-l)}
.plan li::before{content:"";display:inline-block;width:10px;height:2px;background:var(--teal-ink);vertical-align:middle;margin-right:10px}
.meter{margin-top:clamp(40px,6vw,64px);background:#fff;border-radius:28px;padding:clamp(26px,3vw,40px)}
.meter .bar{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;margin:18px 0 12px}
.meter .bar i{height:10px;border-radius:999px;background:rgba(4,8,15,.08)}
.meter .bar i.on{background:var(--teal-ink)}
.meter .bar i:last-child.on{background:var(--orange)}
.meter .legend{display:flex;justify-content:space-between;font-size:14px;color:var(--gray-l)}
.always{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.always div{background:#fff;border-radius:20px;padding:18px 20px;font-weight:600}
.trustline{font-size:clamp(21px,2.4vw,28px);font-weight:600;letter-spacing:-.012em;line-height:1.25;margin:clamp(40px,6vw,64px) auto 0;max-width:34ch;text-align:center}
@media (max-width:860px){.pricing .plans,.always{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.pill,.cta,.frame,.dots button{transition:none}}
