/* Snapine store theme styles. Generated from the approved design; tokens at :root. */
[hidden]{display:none!important}html,body{margin:0}img{max-width:100%;height:auto}

/* Layout: quiet enterprise — monochrome: white page, soft grey panels, near-black ink; the only colour on the page comes from the themes inside the preview. Restraint: regular-weight headlines, small controls, generous whitespace. */
:root{
  --white:#FFFFFF; --mineral:#F6F6F5; --mineral2:#ECECEA; --ink:#111111; --ink2:#2E2E2D; --mid:#6B6B69; --soft:#A3A3A0;
  --border:#E6E6E4; --acc:#111111; --acc-hover:#333333; --acc-lite:#FFFFFF; --acc-tint:#EFEFED;
  --sand:#EFEFED; --sand-ink:#4A4A48; --night:#111111; --ok:#111111;
  --sans:"Schibsted Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"DM Mono",ui-monospace,Menlo,Consolas,monospace;
  --tone:#111111; color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--white);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--white)}
a{color:inherit}
h1,h2,h3{margin:0;text-wrap:balance;font-weight:500}
p{margin:0}
.wrap{max-width:1240px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.label{font:500 13px/1.2 var(--sans);color:var(--mid)}
.it{font-style:normal}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:8px;font:500 14.5px/1 var(--sans);text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .2s,border-color .2s,color .2s;white-space:nowrap}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#333}
.btn-acc{background:var(--acc);color:#fff}
.btn-acc:hover{background:var(--acc-hover)}
.btn-line{background:var(--white);color:var(--ink);border-color:var(--border)}
.btn-line:hover{border-color:var(--ink)}
.link{font-weight:500;font-size:15px;text-decoration:none;display:inline-flex;gap:6px;align-items:center;border-bottom:1px solid var(--border);padding-bottom:2px;transition:border-color .2s}
.link:hover{border-color:var(--ink)}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px}

/* nav */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.nav .wrap{display:flex;align-items:center;gap:40px;height:64px}
.logo{display:flex;align-items:center;gap:9px;font:600 19px/1 var(--sans);text-decoration:none;letter-spacing:-.4px}
.logo-mark{width:20px;height:20px;border-radius:5px;background:var(--ink);position:relative;flex-shrink:0}
.logo-mark::after{content:"";position:absolute;left:4px;right:4px;bottom:4px;height:3px;border-radius:1px;background:var(--acc-lite)}
.nav-links{display:flex;gap:28px}
.nav-links a{text-decoration:none;color:var(--ink2);font-size:14px;transition:color .2s}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--ink)}
.nav-right{margin-left:auto;display:flex;gap:10px;align-items:center}
.nav-right .btn{height:36px;font-size:13.5px;padding:0 14px;border-radius:7px}
@media (max-width:820px){.nav-links{display:none}}

/* hero: centred, one sentence, one accent (the changing word) */
.hero{position:relative;padding-block:96px 24px}
.hero-top{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.hero-kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:32px;height:34px;padding:0 14px 0 4px;border:1px solid var(--border);border-radius:999px;background:var(--white);font-size:13px;color:var(--ink2);text-decoration:none;transition:border-color .2s;max-width:100%}
.hero-kicker:hover{border-color:var(--soft)}
.hero-kicker .pill{height:26px;padding:0 10px;border-radius:999px;background:var(--ink);color:#fff;font:500 12px/26px var(--sans);flex-shrink:0}
.hero-kicker > span:nth-of-type(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hero-kicker .arr{color:var(--mid);transition:transform .25s cubic-bezier(.16,1,.3,1)}
.hero-kicker:hover .arr{transform:translateX(3px)}
.hero h1{font-size:clamp(40px,5.4vw,76px);line-height:1.08;letter-spacing:-.04em}
.hero h1 .l1{white-space:nowrap}
.hero h1 .mbr{display:none}
.hero h1 .sub{display:block;color:var(--ink)}
.token{display:inline-flex;align-items:center;gap:.16em;padding:0 .16em .03em .12em;margin:0 .02em;border-radius:.14em;background:#F4F4F2;border:0;vertical-align:.02em;line-height:1.05}
.token .sq{width:.32em;height:.32em;border-radius:.08em;background:var(--tone);flex-shrink:0;transition:background .6s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.word{display:inline-flex;color:var(--ink);overflow-x:visible;overflow-y:clip;padding-bottom:.04em;white-space:nowrap;transition:width .55s cubic-bezier(.16,1,.3,1)}
.word span{display:inline-block;animation:roll .55s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--i) * 22ms)}
@keyframes roll{from{transform:translateY(105%);opacity:0}to{transform:none;opacity:1}}
.hero-lede{margin-top:28px;font-size:19px;color:var(--mid);line-height:1.5;max-width:54ch;letter-spacing:-.01em;text-wrap:balance}
.hero-ctas{display:flex;gap:10px;flex-wrap:wrap;margin-top:36px;justify-content:center}
.proof{display:flex;gap:22px;flex-wrap:wrap;color:var(--mid);font-size:13px;margin-top:24px;justify-content:center}
.proof span{display:flex;align-items:center;gap:7px}
.proof span::before{content:"";width:14px;height:14px;border-radius:50%;background:var(--acc-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M4 7.2l2 2 4-4.4' fill='none' stroke='%23111111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
@media (max-width:900px){.hero{padding-block:56px 16px}.hero-lede{font-size:17px}}
@media (max-width:760px){.hero h1 .l1{white-space:normal}.hero h1 .mbr{display:inline}.hero h1 .token{margin:.06em 0}}

.switch-row{position:relative;display:flex;align-items:center;justify-content:center;gap:16px;margin-top:72px}
.switcher-inner{display:flex;gap:6px;overflow-x:auto;max-width:100%;scrollbar-width:none}
.switcher-inner::-webkit-scrollbar{display:none}
.sw{flex-shrink:0;height:32px;padding:0 13px;border-radius:7px;border:1px solid var(--border);background:var(--white);color:var(--ink2);font:400 12.5px var(--sans);cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:7px;transition:all .2s}
.sw:hover{border-color:var(--ink)}
.sw i{width:6px;height:6px;border-radius:50%;background:var(--c)}
.sw[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.auto-note{font:12px var(--sans);color:var(--soft);white-space:nowrap}

.stagewrap{position:relative;margin-top:18px}
.frame{position:relative;border-radius:14px;background:var(--white);border:1px solid var(--border);box-shadow:0 1px 2px rgba(0,0,0,.04),0 30px 80px -40px rgba(0,0,0,.25)}
.chrome{display:flex;align-items:center;gap:7px;height:40px;padding:0 14px;border-bottom:1px solid var(--border);background:var(--mineral)}
.chrome i{width:10px;height:10px;border-radius:50%;background:var(--mineral2);border:1px solid var(--border)}
.url{margin:0 auto;height:24px;min-width:0;max-width:60%;padding:0 14px;border-radius:6px;background:var(--white);border:1px solid var(--border);font:12px var(--mono);color:var(--mid);display:flex;align-items:center;gap:8px;overflow:hidden;white-space:nowrap}
.url::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok);flex-shrink:0}
.screen{position:relative;aspect-ratio:16/9;max-width:100%;overflow:hidden;border-radius:0 0 13px 13px;background:#fff}
.screen iframe{position:absolute;top:0;left:0;width:1280px;height:760px;border:0;transform-origin:0 0;transform:scale(var(--s,.8));opacity:0;transition:opacity .7s;pointer-events:none}
.screen iframe.on{opacity:1}
.installer{position:absolute;right:-24px;bottom:48px;width:250px;background:var(--night);color:#fff;border-radius:12px;padding:16px 18px;box-shadow:0 24px 50px -20px rgba(0,0,0,.55)}
.installer .top{display:flex;justify-content:space-between;align-items:center;font:12px var(--sans);color:rgba(255,255,255,.5)}
.clock{font:400 36px/1 var(--mono);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:12px 0 6px}
.task{font-size:13px;color:rgba(255,255,255,.7);min-height:1.5em}
.bar{height:2px;background:rgba(255,255,255,.12);border-radius:2px;margin-top:14px;overflow:hidden}
.bar span{display:block;height:100%;width:0;background:var(--acc-lite)}
.live{display:inline-flex;align-items:center;gap:6px;color:var(--acc-lite)}
.live::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.badge{position:absolute;left:-24px;bottom:150px;background:var(--white);border:1px solid var(--border);border-radius:12px;padding:12px 16px 12px 12px;font-size:12.5px;color:var(--mid);box-shadow:0 20px 40px -20px rgba(0,0,0,.25);display:flex;gap:12px;align-items:center}
.badge b{display:block;font:500 15px var(--sans);color:var(--ink)}
.badge .dot{width:34px;height:34px;border-radius:9px;background:var(--tone);transition:background .6s}
@media (max-width:1300px){.installer{right:16px}.badge{left:16px}}
@media (max-width:760px){.badge{display:none}.installer{right:10px;bottom:10px;width:190px;padding:12px 14px}.clock{font-size:26px}}
@media (max-width:480px){.installer{position:relative;right:0;bottom:0;width:auto;margin:10px}}

/* sections */
section.block{padding-block:128px}
.s-head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:56px}
.s-head.solo{grid-template-columns:1fr;max-width:760px}
.s-head.c{grid-template-columns:1fr;text-align:center;justify-items:center;max-width:760px;margin-inline:auto;gap:18px}
.s-head .label{display:block;margin-bottom:18px}
.sh2{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.03em}
.sh2 .it{color:var(--mid)}
.ssub{font-size:17px;color:var(--mid);max-width:46ch;line-height:1.65}
@media (max-width:860px){.s-head{grid-template-columns:1fr;gap:18px}}

/* wall */
.wall{position:relative;height:640px;overflow:hidden;background:var(--mineral);border-block:1px solid var(--border);mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent)}
.wall-tilt{position:absolute;left:50%;top:50%;width:max(1700px,120vw);display:grid;grid-template-columns:repeat(4,1fr);gap:26px;transform:translate(-50%,-50%) rotateX(24deg) rotateZ(-10deg)}
.col{display:flex;flex-direction:column;gap:26px;animation:up var(--d,40s) linear infinite}
.col:nth-child(2){animation-direction:reverse}
@keyframes up{to{transform:translateY(-50%)}}
.wall .thumb{border-radius:10px;box-shadow:0 24px 50px -24px rgba(0,0,0,.3)}
.wall:hover .col{animation-play-state:paused}
.wall-cta{position:absolute;left:50%;bottom:32px;transform:translateX(-50%);z-index:2}
@media (max-width:700px){.wall{height:500px}.wall-tilt{width:900px;grid-template-columns:repeat(2,1fr)}.col:nth-child(n+3){display:none}}

/* thumbs & catalogue cards (Gradial-style: image, then quiet grey panel) */
.thumb{position:relative;aspect-ratio:16/11;max-width:100%;overflow:hidden;background:#fff;border:1px solid var(--border)}
.thumb iframe{position:absolute;top:0;left:0;width:1280px;height:880px;border:0;transform-origin:0 0;transform:scale(var(--s,.3)) translateY(0);transition:transform 4.5s cubic-bezier(.4,0,.2,1);pointer-events:none}
.thumb iframe.tall{height:2600px}
.card:hover .thumb iframe.tall{transform:scale(var(--s,.3)) translateY(-1500px)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:980px){.grid{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.grid{grid-template-columns:1fr}}
.card{display:flex;flex-direction:column;min-width:0;text-decoration:none;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--mineral);transition:border-color .25s,box-shadow .25s}
.card:hover{border-color:var(--soft);box-shadow:0 20px 50px -30px rgba(0,0,0,.35)}
.card .thumb{border:0;border-bottom:1px solid var(--border)}
.card-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.card-body .label{color:var(--mid)}
.card h3{font-size:19px;letter-spacing:-.02em}
.card p.desc{font-size:14px;color:var(--mid);line-height:1.55}
.card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px}
.go{font-size:13.5px;font-weight:500;color:var(--ink);display:inline-flex;gap:6px;align-items:center}
.card:hover .go{text-decoration:underline;text-underline-offset:3px}
.tag{font:500 11px var(--sans);color:var(--sand-ink);background:var(--sand);border-radius:5px;padding:3px 8px}

/* process */
.proc{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.p-card{border-top:1px solid var(--ink);padding-top:22px;min-width:0}
.p-card .label{display:flex;justify-content:space-between}
.p-card .label b{font-weight:500;color:var(--ink)}
.p-card h3{font-size:22px;letter-spacing:-.02em;margin:28px 0 10px}
.p-card p{font-size:15px;color:var(--mid);line-height:1.6;max-width:30ch}
@media (max-width:860px){.proc{grid-template-columns:1fr 1fr;row-gap:44px}}
@media (max-width:520px){.proc{grid-template-columns:1fr}}

/* included (cards with visual top, grey caption) */
.inc{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.inc-card{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--mineral);display:flex;flex-direction:column;min-width:0}
.inc-card.wide{grid-column:span 2}
.vis{position:relative;height:200px;background:var(--white);border-bottom:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:24px}
.inc-card .cap{padding:20px 22px 24px;display:flex;flex-direction:column;gap:8px}
.inc-card h3{font-size:18px;letter-spacing:-.015em}
.inc-card p{font-size:14.5px;color:var(--mid);line-height:1.6}
.chat{width:100%;max-width:440px;display:flex;flex-direction:column;gap:8px;font-size:13.5px}
.chat span{align-self:flex-start;background:var(--mineral);padding:10px 14px;border-radius:12px 12px 12px 4px;max-width:85%}
.chat span.me{align-self:flex-end;background:var(--acc);color:#fff;border-radius:12px 12px 4px 12px}
.chat small{align-self:flex-end;font:11px var(--sans);color:var(--soft)}
.lockv{display:flex;align-items:center;gap:10px;font:13px var(--mono);color:var(--ink2);border:1px solid var(--border);border-radius:8px;padding:10px 14px;background:var(--white);box-shadow:0 10px 30px -18px rgba(0,0,0,.3)}
.lockv i{width:22px;height:22px;border-radius:6px;background:var(--acc-tint);position:relative}
.lockv i::after{content:"";position:absolute;inset:7px 6px 5px;border:1.5px solid var(--ink);border-radius:2px}
.upt{width:100%;display:flex;flex-direction:column;gap:10px}
.upt .bars{display:flex;gap:3px;height:34px}
.upt .bars i{flex:1;border-radius:2px;background:var(--ink);opacity:.85}
.upt .bars i:nth-child(23){opacity:.25}
.upt div:last-child{display:flex;justify-content:space-between;font:11.5px var(--mono);color:var(--mid)}
.devs{display:flex;align-items:flex-end;gap:12px}
.devs i{display:block;border:1.5px solid var(--ink2);border-radius:7px;background:linear-gradient(var(--mineral),var(--white))}
.backups{width:100%;max-width:300px;display:flex;flex-direction:column;gap:6px;font:12px var(--mono)}
.backups span{display:flex;justify-content:space-between;padding:8px 12px;border:1px solid var(--border);border-radius:7px;color:var(--ink2);background:var(--white)}
.backups span b{font-weight:400;color:var(--ink)}
@media (max-width:900px){.inc{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.inc{grid-template-columns:1fr}.inc-card.wide{grid-column:span 1}}

/* dark contrast section */
.dark{background:var(--night);color:#fff;margin-bottom:128px}
.dark .label{color:rgba(255,255,255,.5)}
.dark .sh2 .it{color:rgba(255,255,255,.5)}
.dark .ssub{color:rgba(255,255,255,.6)}
.dark .inc-card{background:#1A1A1A;border-color:rgba(255,255,255,.08)}
.dark .vis{background:#151515;border-color:rgba(255,255,255,.08)}
.dark .inc-card p{color:rgba(255,255,255,.55)}
.dark .chat span{background:rgba(255,255,255,.08);color:rgba(255,255,255,.9)}
.dark .chat span.me{background:#fff;color:#111}
.dark .chat small,.dark .upt div:last-child{color:rgba(255,255,255,.4)}
.dark .lockv,.dark .backups span{background:#1F1F1F;border-color:rgba(255,255,255,.1);color:rgba(255,255,255,.85);box-shadow:none}
.dark .lockv i{background:rgba(255,255,255,.1)}.dark .lockv i::after{border-color:#fff}
.dark .backups span b{color:#fff}
.dark .upt .bars i{background:#fff}
.dark .devs i{border-color:rgba(255,255,255,.55);background:linear-gradient(#222,#151515)}

/* founder note */
.note{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;align-items:start}
.note blockquote{margin:0;font-size:clamp(24px,2.6vw,34px);line-height:1.3;letter-spacing:-.02em;font-weight:400}
.note blockquote span{color:var(--soft)}
.sig{display:flex;align-items:center;gap:14px;margin-top:32px}
.sig i{width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;font:600 16px/44px var(--sans);text-align:center;font-style:normal}
.sig b{display:block;font-weight:500}
.sig span{font-size:14px;color:var(--mid)}
@media (max-width:860px){.note{grid-template-columns:1fr;gap:24px}}

/* pricing */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
@media (max-width:900px){.prices{grid-template-columns:1fr;max-width:460px;margin:0 auto}}
.plan{position:relative;background:var(--white);border:1px solid var(--border);border-radius:14px;padding:32px 30px;display:flex;flex-direction:column;gap:20px}
.plan.featured{background:var(--night);color:#fff;border-color:var(--night)}
.plan .flag{position:absolute;top:28px;right:28px;font:500 11px var(--sans);background:var(--sand);color:var(--sand-ink);padding:3px 8px;border-radius:5px}
.plan h3{font:500 13px var(--sans);color:var(--mid)}
.plan.featured h3{color:rgba(255,255,255,.55)}
.price{font-size:48px;font-weight:400;line-height:1;letter-spacing:-.04em}
.price small{font-size:15px;color:var(--mid);letter-spacing:0}
.plan.featured .price small{color:rgba(255,255,255,.55)}
.plan .pd{font-size:14.5px;color:var(--mid);margin-top:-6px}
.plan.featured .pd{color:rgba(255,255,255,.6)}
.plan ul{list-style:none;margin:0;padding:20px 0 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:11px;font-size:14.5px;flex:1;color:var(--ink2)}
.plan.featured ul{border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.82)}
.plan li{display:flex;gap:10px}
.plan li::before{content:"✓";color:var(--acc)}
.plan.featured li::before{color:var(--acc-lite)}
.plan.featured .btn-line{background:#fff;border-color:#fff}
.plan.featured .btn-acc,.final .btn-acc,.pv-bar .btn-acc{background:#fff;color:#111}
.plan.featured .btn-acc:hover,.final .btn-acc:hover,.pv-bar .btn-acc:hover{background:#E6E6E4}
.live{color:#fff}.bar span{background:#fff}
.fine{margin-top:24px;font:12px var(--sans);color:var(--soft);text-align:center}

/* faq */
.faq-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px}
.faq-wrap .s-head{position:sticky;top:110px;align-self:start}
@media (max-width:860px){.faq-wrap{grid-template-columns:1fr;gap:24px}}
details{border-bottom:1px solid var(--border);padding-block:22px}
details:first-child{border-top:1px solid var(--border)}
summary{cursor:pointer;font:500 17px/1.4 var(--sans);list-style:none;display:flex;justify-content:space-between;gap:16px;letter-spacing:-.01em}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:300 22px/1 var(--sans);color:var(--mid);transition:transform .3s cubic-bezier(.16,1,.3,1)}
details[open] summary::after{transform:rotate(45deg)}
details p{color:var(--mid);margin-top:12px;max-width:60ch;font-size:15px;line-height:1.7}

.final{position:relative;overflow:hidden;border-radius:16px;background-color:var(--night);color:#fff;padding:96px 32px;text-align:center}
.final h2{font-size:clamp(36px,4.8vw,64px);line-height:1.05;letter-spacing:-.035em;max-width:16ch;margin:0 auto}
.final h2 .it{color:rgba(255,255,255,.75)}
.final p{color:rgba(255,255,255,.6);margin:18px auto 32px;font-size:17px;max-width:44ch}
.final .ctas{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.final .btn-line{background:transparent;color:#fff;border-color:rgba(255,255,255,.25)}
.final .btn-line:hover{border-color:#fff}

footer{padding-block:72px 32px;color:var(--mid);font-size:13.5px;border-top:1px solid var(--border);margin-top:128px}
footer .wrap.fcols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
footer .logo{color:var(--ink)}
footer .fbrand p{margin-top:14px;max-width:30ch;line-height:1.6}
footer .fbrand .btn{margin-top:20px;height:38px;font-size:13.5px}
footer h4{margin:0 0 14px;font:500 13px var(--sans);color:var(--ink)}
footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
footer ul a{text-decoration:none;color:var(--mid);transition:color .2s}
footer ul a:hover{color:var(--ink)}
footer .fbase{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:56px;padding-top:24px;border-top:1px solid var(--border);font-size:12.5px;color:var(--soft)}
@media (max-width:860px){footer .wrap.fcols{grid-template-columns:1fr 1fr}footer .fbrand{grid-column:1/-1}}

/* industries */
.ind{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ind a{position:relative;display:flex;flex-direction:column;gap:18px;padding:24px;border:1px solid var(--border);border-radius:12px;background:var(--mineral);text-decoration:none;min-width:0;transition:border-color .25s,background .25s,transform .35s cubic-bezier(.16,1,.3,1)}
.ind a:hover{border-color:var(--soft);background:var(--white);transform:translateY(-3px)}
.ind .top{display:flex;align-items:center;justify-content:space-between}
.ind .sq{width:28px;height:28px;border-radius:7px;background:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.ind .go{font-size:13px;color:var(--mid);opacity:0;transform:translateX(-4px);transition:all .25s cubic-bezier(.16,1,.3,1)}
.ind a:hover .go,.ind a:focus-visible .go{opacity:1;transform:none;color:var(--ink)}
.ind h3{font-size:20px;letter-spacing:-.02em}
.ind ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.ind li{font-size:12.5px;color:var(--ink2);background:var(--white);border:1px solid var(--border);border-radius:6px;padding:4px 9px}
.ind a:hover li{background:var(--mineral)}
@media (max-width:900px){.ind{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ind{grid-template-columns:1fr}.ind .go{opacity:1;transform:none}}

/* comparison */
.cmp{border:1px solid var(--border);border-radius:14px;overflow:hidden}
.cmp-row{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr}
.cmp-row > *{padding:18px 22px;font-size:15px;color:var(--mid);min-width:0;border-top:1px solid var(--border)}
.cmp-row > .us{border-top-color:rgba(255,255,255,.1)}
.cmp-row:first-child > *{border-top:0}
.cmp-row > :first-child{color:var(--ink);font-weight:500}
.cmp-row > .us{background:var(--night);color:#fff}
.cmp-row > .us b{font-weight:500}
.cmp-head > *{font:500 13px/1.3 var(--sans);color:var(--mid);padding-block:20px}
.cmp-head > .us{color:#fff;display:flex;align-items:center;gap:8px}
.cmp-head .us .logo-mark{width:16px;height:16px;border-radius:4px;background:#fff}
.cmp-head .us .logo-mark::after{background:var(--night);left:3px;right:3px;bottom:3px;height:2px}
@media (max-width:760px){
  .cmp-row{grid-template-columns:repeat(3,1fr)}
  .cmp-row > :first-child{grid-column:1/-1;padding-bottom:4px}
  .cmp-row > *{padding:12px 14px;font-size:13.5px}
  .cmp-head > :first-child{display:none}
  .cmp-row:not(.cmp-head) > :first-child{background:var(--mineral)}
}

/* promise band */
.promise{margin-top:20px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;padding:26px 30px;border:1px solid var(--border);border-radius:14px;background:var(--mineral)}
.promise .seal{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;font:500 15px/1 var(--mono);letter-spacing:-.04em}
.promise h3{font-size:20px;letter-spacing:-.02em}
.promise p{font-size:15px;color:var(--mid);margin-top:4px;max-width:62ch}
@media (max-width:760px){.promise{grid-template-columns:1fr;gap:14px;padding:22px}}

/* websites page */
.cat-head{padding-block:80px 40px;position:relative}
.cat-head .wrap{position:relative;text-align:center}
.cat-head h1{font-size:clamp(40px,5.2vw,68px);line-height:1.04;letter-spacing:-.035em;margin-top:18px}
.cat-head h1 .it{color:var(--mid)}
.cat-head p{color:var(--mid);font-size:17px;margin:18px auto 0;max-width:52ch}
.toolbar{position:sticky;top:calc(64px + env(safe-area-inset-top,0px));z-index:40;padding-block:14px;margin-bottom:36px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{height:32px;padding:0 13px;border-radius:7px;border:1px solid var(--border);background:var(--white);color:var(--ink2);font:400 12.5px var(--sans);cursor:pointer;transition:all .2s}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.right{display:flex;gap:14px;align-items:center}
.search{height:36px;width:240px;max-width:100%;border-radius:7px;border:1px solid var(--border);background:var(--white);color:var(--ink);padding:0 12px;font:14px var(--sans)}
.count{font:12px var(--sans);color:var(--mid);white-space:nowrap}
.empty{padding:80px 0;text-align:center;color:var(--mid)}

/* preview */
.pv{position:fixed;inset:0;z-index:100;background:#0A0A0A;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px)}
.pv-bar{height:60px;display:flex;align-items:center;gap:16px;background:var(--night);color:#fff;border-bottom:1px solid rgba(255,255,255,.08);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));flex-shrink:0}
.pv-name{display:flex;flex-direction:column;line-height:1.25;min-width:0;padding-left:16px;border-left:1px solid rgba(255,255,255,.14)}
.pv-name strong{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pv-name span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:11.5px var(--sans);color:rgba(255,255,255,.45)}
.devices{display:flex;gap:4px;margin:0 auto;background:rgba(255,255,255,.06);padding:4px;border-radius:9px;border:1px solid rgba(255,255,255,.08)}
.devices button{height:30px;padding:0 13px;border-radius:6px;border:0;background:transparent;color:rgba(255,255,255,.55);font:400 12.5px var(--sans);cursor:pointer}
.devices button[aria-pressed="true"]{background:#fff;color:var(--ink)}
.pv-bar .btn{height:36px;font-size:13.5px;padding:0 16px;border-radius:7px}
.pv-close{width:36px;height:36px;border-radius:7px;border:1px solid rgba(255,255,255,.18);color:#fff;font-size:14px;flex-shrink:0;text-decoration:none;display:flex;align-items:center;justify-content:center}
.pv-stage{flex:1;display:flex;justify-content:center;overflow:auto}
.pv-stage iframe{border:0;background:#fff;height:100%;width:100%;transition:width .4s cubic-bezier(.16,1,.3,1)}
.pv-stage.tablet,.pv-stage.mobile{padding-block:24px}
.pv-stage.tablet iframe{width:820px;max-width:100%;border-radius:12px}
.pv-stage.mobile iframe{width:390px;max-width:100%;border-radius:26px;box-shadow:0 0 0 9px #222}
@media (max-width:760px){.devices,.pv-bar .hide{display:none}.pv-bar .btn{margin-left:auto}}

.reveal{transition:opacity .9s,transform .9s cubic-bezier(.16,1,.3,1)}
.reveal.pre{opacity:.001;transform:translateY(24px)}
@media (prefers-reduced-motion:reduce){.col,.m-track{animation:none!important}.reveal.pre{transform:none}}

/* ---------- WordPress additions ---------- */
.admin-bar .nav{top:32px}
@media (max-width:782px){.admin-bar .nav{top:46px}}
.thumb img.shot{position:absolute;top:0;left:0;width:100%;height:auto;transition:transform 4.5s cubic-bezier(.4,0,.2,1)}
.card:hover .thumb img.shot{transform:translateY(calc(-100% + 100cqh))}
.thumb{container-type:size}
.screen img.shot{position:absolute;inset:0;width:100%;height:auto;opacity:0;transition:opacity .7s}
.screen img.shot.on{opacity:1}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* generic pages */
.page-head{padding-block:72px 32px}
.page-head h1{font-size:clamp(36px,4.6vw,60px);line-height:1.05;letter-spacing:-.035em;font-weight:500}
.page-head p{color:var(--mid);font-size:17px;margin-top:14px;max-width:56ch}
.prose{max-width:720px;padding-bottom:96px;font-size:17px;line-height:1.75;color:var(--ink2)}
.prose h2{font-size:28px;letter-spacing:-.02em;margin:40px 0 12px}
.prose h3{font-size:21px;margin:32px 0 10px}
.prose p,.prose ul,.prose ol{margin:0 0 18px}
.prose a{color:var(--ink)}
.prose img{border-radius:12px}

/* get started */
.gs{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:start;padding-bottom:120px}
@media (max-width:900px){.gs{grid-template-columns:1fr;gap:36px}}
.gs-aside{display:flex;flex-direction:column;gap:22px;position:sticky;top:110px}
.gs-pick{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--mineral)}
.gs-pick .thumb{border:0;border-bottom:1px solid var(--border)}
.gs-pick .cap{padding:16px 18px}
.gs-pick .cap b{display:block;font-weight:500;font-size:17px}
.gs-pick .cap span{font-size:14px;color:var(--mid)}
.gs-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;font-size:15px;color:var(--ink2)}
.gs-steps li{display:flex;gap:12px}
.gs-steps li b{font-weight:500;min-width:20px;color:var(--mid)}
.form{border:1px solid var(--border);border-radius:14px;padding:32px;background:var(--white);display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}
.form .full{grid-column:1/-1}
@media (max-width:560px){.form{grid-template-columns:1fr;padding:22px}}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field label{font-size:13.5px;font-weight:500;color:var(--ink2)}
.field input,.field select,.field textarea{height:44px;border-radius:8px;border:1px solid var(--border);background:var(--white);padding:0 12px;font:15px var(--sans);color:var(--ink);width:100%}
.field textarea{height:96px;padding:10px 12px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--ink);outline-offset:0;border-color:var(--ink)}
.check{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--mid)}
.check input{margin-top:3px;accent-color:#111}
.form .btn{height:48px;width:100%}
.hp{position:absolute!important;left:-9999px!important}
.notice{border-radius:12px;padding:18px 20px;font-size:15px;margin-bottom:22px}
.notice.ok{background:var(--mineral);border:1px solid var(--border);color:var(--ink)}
.notice.err{background:#FFF4F2;border:1px solid #F3D3CC;color:#8A2A16}
.done{border:1px solid var(--border);border-radius:14px;padding:40px 32px;background:var(--white)}
.done h2{font-size:30px;letter-spacing:-.025em;font-weight:500}
.done p{color:var(--mid);margin-top:10px}
.done .btn{margin-top:24px}

/* footer columns */
.foot-grid{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;width:100%}
.foot-links{display:flex;gap:22px;flex-wrap:wrap}
.foot-links a{text-decoration:none;color:var(--mid)}
.foot-links a:hover{color:var(--ink)}
.nav-toggle{display:none}
@media (max-width:820px){.nav-right .btn-dark{height:34px}}

/* preview page */
body.plinth-preview{overflow:hidden}
body.plinth-preview .pv{position:fixed}
.pv-empty{flex:1;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);text-align:center;padding:24px}

/* mobile menu */
@media (max-width:820px){
.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;border:1px solid var(--border);border-radius:7px;background:var(--white);cursor:pointer;padding:0 9px}
.nav-toggle i{display:block;height:1.5px;background:var(--ink);border-radius:1px}
.nav.open .nav-links{display:flex;flex-direction:column;gap:0;position:absolute;left:0;right:0;top:64px;background:var(--white);border-bottom:1px solid var(--border);padding:8px max(20px,env(safe-area-inset-left,0px)) 16px}
.nav.open .nav-links a{padding:12px 0;font-size:16px;border-bottom:1px solid var(--border)}
.nav .wrap{position:relative}
}
