/* NOVA Link Studio storefront v8 — responsive storefront, no checkout changes.
   This stylesheet augments the existing template and Studio logic. */
:root{--bg:#080c17;--panel:#111a2a;--line:rgba(162,189,230,.19);--ink:#f1f6ff;--muted:#aebcd2;--a:#72e0ef;--b:#a5a8fa;--c:#d6a6ed}
body{background:radial-gradient(ellipse 72% 540px at 85% 10%,rgba(92,114,185,.12),transparent 70%),radial-gradient(ellipse 60% 520px at 2% 45%,rgba(30,101,139,.08),transparent 72%),var(--bg)}
.bg .g1{background:radial-gradient(circle,rgba(93,123,205,.15),transparent 67%)}
.bg .g2{background:radial-gradient(circle,rgba(76,184,205,.09),transparent 65%)}
.nav-wrap{background:rgba(8,13,24,.91);border-bottom-color:rgba(166,187,227,.17)}
.nav{height:72px;gap:12px}
.logo{width:43px;height:43px}
.brand .word{font-size:18px}
.nav-links{background:rgba(20,31,50,.65);border:1px solid rgba(164,188,224,.16);border-radius:13px}
.nav-links a{border-radius:9px;font-size:12px;padding:9px 11px}
.nav-links a:hover{background:#293b57}
.nav-cta{background:linear-gradient(110deg,#a5edf3,#c3c8fa);border-radius:12px;min-height:44px;box-shadow:0 9px 28px rgba(59,168,199,.13);white-space:nowrap}
.nav-cta .count{background:rgba(12,22,39,.15)}
.nav-mobile{display:none;position:relative;z-index:40}
.nav-mobile summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 12px;border:1px solid #3d506f;border-radius:12px;background:#1a2a43;color:#ebf5ff;font-size:12px;font-weight:800;white-space:nowrap}
.nav-mobile summary span{font-size:12px}
.nav-mobile-links{position:absolute;right:0;top:calc(100% + 10px);width:min(280px,calc(100vw - 28px));display:grid;gap:3px;background:#132037;padding:10px;border:1px solid #3d536f;border-radius:16px;box-shadow:0 22px 60px #030611b8}
.nav-mobile-links a{display:block;padding:12px 13px;border-radius:10px;font-size:13px;font-weight:700;color:#deebfd}
.nav-mobile-links a:hover,.nav-mobile-links a:focus-visible{background:#293c5b}
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);align-items:center;gap:clamp(26px,5vw,68px);min-height:660px;padding:clamp(42px,6vw,78px) 0 44px}
.hero-copy{min-width:0;max-width:620px}
.hero-eyebrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:24px;font:800 11px/1.5 'Plus Jakarta Sans',sans-serif;letter-spacing:.12em;color:#b7cbed}
.hero-spark{flex:none;width:9px;height:9px;background:#72e0ef;border-radius:50%;box-shadow:0 0 0 5px rgba(114,224,239,.13),0 0 17px rgba(114,224,239,.6)}
.hero-edition{color:#7fa4cd}
.hero-title{font-size:clamp(43px,4.4vw,69px);font-weight:800;line-height:1.12;letter-spacing:-.06em;max-width:12ch;text-wrap:balance}
.hero-title em{background:linear-gradient(105deg,#8cecf0,#b7c0fc 56%,#d7b5ec);background-clip:text;-webkit-background-clip:text}
.hero-lead{color:#c6d3e5;font-size:clamp(14px,1.25vw,17px);line-height:1.85;max-width:530px;margin:26px 0 26px}
.hero-lead strong{color:#eef8ff}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:11px}
.hero-actions a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 17px;border-radius:13px;font-size:13px;font-weight:800;transition:transform .2s,border-color .2s,box-shadow .2s}
.hero-actions a:hover{transform:translateY(-2px)}
.hero-main{background:linear-gradient(110deg,#a2eef0,#bbc7fa);color:#102035;border:1px solid #c4ecf9;box-shadow:0 15px 30px rgba(38,145,179,.11)}
.hero-alt{background:#1b2b43;border:1px solid #496483;color:#f0f6ff}
.hero-alt:hover{border-color:#95d7e8}
.hero-benefits{display:flex;flex-wrap:wrap;gap:11px 17px;margin-top:31px;color:#d1e0f1;font-size:11.5px;font-weight:750}
.hero-benefits span{display:inline-flex;gap:7px;align-items:center}
.hero-benefits i{font-style:normal;color:#84e1ce}
.hero-hint{margin:20px 0 0;color:#91aacb;font-size:11px;line-height:1.6}
.hero-demo{width:100%;min-width:0;position:relative;overflow:hidden;border-radius:28px;border:1px solid rgba(153,189,229,.25);padding:20px 18px 15px;background:radial-gradient(ellipse 80% 52% at 50% 22%,rgba(94,102,183,.19),transparent 80%),linear-gradient(150deg,#17243c,#121a2d 56%,#141729);box-shadow:0 30px 75px rgba(0,5,20,.33),inset 0 1px rgba(255,255,255,.055)}
.demo-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:10px;font:850 10px/1.45 'Plus Jakarta Sans';letter-spacing:.11em;color:#d2e3f6}
.demo-top>span:first-child{display:inline-flex;align-items:center;gap:8px}
.demo-top i{width:7px;height:7px;border-radius:50%;background:#76e6c7;box-shadow:0 0 0 4px rgba(118,230,199,.09)}
.demo-counter{color:#829dbd}
.hero .stage{height:475px;min-height:0;padding:14px 0 0;isolation:isolate}
.hero .stage .halo{width:420px;height:390px;max-width:92%;max-height:90%;inset:auto;filter:blur(44px);opacity:.35;background:conic-gradient(from 20deg,rgba(111,198,229,.23),rgba(153,118,209,.36),rgba(111,198,229,.2))}
.hero .phone{height:440px;min-height:0;max-height:100%;aspect-ratio:370/760;border-radius:36px;padding:9px;box-shadow:0 0 0 1px #d1e7ff2a,0 26px 55px -16px #020712,0 0 55px -28px #9b8adf}
.hero .phone iframe{border-radius:29px}
.hero .notch{top:15px;width:78px;height:21px;margin-left:-39px}
.hero .glare{inset:9px;border-radius:29px}
.demo-controls{position:relative;z-index:2;min-width:0}
.hero .switcher{margin:0;gap:6px;padding:6px 3px 12px;scrollbar-width:thin;scrollbar-color:#57728a transparent}
.hero .sw{border-radius:10px;padding:7px 11px 7px 8px;background:#1b2a43;border-color:rgba(171,191,227,.21);font-size:11px}
.hero .sw i{width:17px;height:17px}
.hero .sw.on{background:#d3e8fa;color:#101c2f;border-color:#d3e8fa}
.hero .hero-info{margin-top:0;gap:7px;flex-wrap:wrap;justify-content:space-between;border-top:1px solid rgba(173,191,228,.16);padding-top:13px;font-size:11px}
.hero-info #heroField{flex:1;min-width:95px}
.hero-open,.hero-studio{display:inline-flex;justify-content:center;align-items:center;min-height:35px;border-radius:10px;padding:8px 11px;font-size:11px;font-weight:800;text-decoration:none}
.hero .hero-open{border:1px solid #4a617e;background:#263751;color:#e6f4ff}
.hero .hero-studio{border:1px solid rgba(170,234,246,.8);color:#10263d;background:linear-gradient(110deg,#a5e9ef,#b1c6f8)}
.strip{margin-top:6px}
.strip-in{border-color:rgba(168,187,228,.17);background:linear-gradient(135deg,#152039,#10192a);border-radius:18px}
.strip-in div{padding:20px 14px}
.strip-in b{font-size:25px}
.strip-in span{color:#b5c6df}
.collections,.fields,.why,.how,.faq,.showcase,.pricing{padding-top:78px}
.sec-head h2{font-size:clamp(32px,4.1vw,54px);line-height:1.13}
.sec-head p{color:#bdcae1}
.kicker{margin-bottom:17px;color:#91a9c8}
.collection-stat strong{font-size:62px}
.tools-row{gap:14px;margin-top:27px}
.search{max-width:640px;border-radius:13px;background:#18243a;border:1px solid #3a506d;height:52px}
.search input::placeholder{color:#91a6c2}
.result-count{margin-inline-start:auto;font-size:12px;white-space:nowrap;color:#c4d6ea}
.catbar{top:74px;background:rgba(13,21,36,.96);border-color:#354a66;border-radius:16px;margin:15px 0 23px;padding:8px;gap:8px;box-shadow:0 12px 32px #030a18a3}
.cat-tabs{min-width:0}
.cat-tabs button{min-height:40px;padding:8px 12px;border-radius:10px;font-size:12px;white-space:nowrap}
.cat-tabs button.on{background:linear-gradient(120deg,#a8eaf2,#c4c8fb);color:#122039}
.cat-ctrl{min-width:0}
.seg2{background:#1a2940}
.sortl select{background-color:#1b2b42;border-color:#42546c}
.grid-wrap{gap:12px}
.grid-wrap>.grid{margin-bottom:36px}
.grid{gap:17px}
.card{border-radius:20px;border-color:rgba(168,191,235,.21);background:linear-gradient(155deg,#17243a,#121d2f);box-shadow:0 7px 22px #040b1828}
.card:hover{transform:translateY(-4px);box-shadow:0 20px 37px -21px var(--ac)}
.card .art{height:310px}
.card .art-glow{opacity:.35}
.card .art-svg{width:165px;height:165px;right:-18px;top:16px}
.card .mini{top:38px;width:184px;height:350px;margin-left:-92px;padding:18px 11px;border-radius:24px}
.card .mini-av{width:46px;height:46px}
.card .mini-l{padding:7px}
.card .pill{left:13px;top:13px;padding:6px 9px;font-size:8px}
.card .idx{right:12px;bottom:12px}
.card .body{padding:18px;display:flex;flex-direction:column;min-height:240px}
.card .row h3{font-size:21px}
.card .body p{font-size:12.5px;line-height:1.65;min-height:40px;margin-bottom:12px;color:#bdcbdf}
.card .tags{gap:5px;margin-bottom:16px}
.card .tags span{font-size:10px;padding:5px 8px;background:#ffffff0c}
.card .acts{margin-top:auto}
.card .acts a,.card .acts button{min-height:43px;border-radius:11px;padding:10px 8px;font-size:11px}
.card .acts button{background:color-mix(in srgb,var(--ac) 85%,#efffff);color:#0c1c2b}
.card .acts a{background:#263954;color:#edf5ff;border-color:#405977}
.card .acts a:hover{background:#344f70}
.grp-head{margin-bottom:15px;border-color:rgba(172,196,230,.19)}
.grp-head h3{font-size:23px}
.grp-head p{color:#b8c7dd}
.grp-all{min-height:40px}
.field-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:25px}
.fcard{min-height:120px;border-radius:15px;background:linear-gradient(155deg,#17243a,#111c2e);gap:9px}
.fcard .fi{border-radius:12px}
.fcard b{font-size:12px}
.fcard small{font-size:10px}
.feat,.step,.pcard{background:linear-gradient(150deg,#172236,#111b2e);border-color:rgba(162,186,222,.21);border-radius:19px}
.feat{padding:20px}
.feat .fic{background:linear-gradient(135deg,#77d6e922,#9ca2eb25)}
.step{padding:25px}
.pcard.best{background:linear-gradient(150deg,#1b3241,#132138);border-color:#72d8e780}
.billing-status{background:#1c2940;border-color:#445c74;color:#d5e4f6}
.compare{border-radius:18px;background:#111b2b;border-color:#3b4c66}
.modal-box{border-color:#405976;background:#121d2e;border-radius:20px}
.modal-stage{background:#0a1221}
.modal-bottom{flex-wrap:wrap}
#templates,#fields,#why,#pricing,#faq,#studio-tour{scroll-margin-top:115px}
@media(max-width:1180px){.nav-links{gap:2px}.nav-links a{padding:8px;font-size:11px}.hero{gap:24px}}
@media(max-width:1020px){
 .nav-mobile{display:block;margin-inline-start:auto}
 .nav-links{display:none}
 .hero{grid-template-columns:minmax(0,1.08fr) minmax(290px,.92fr);gap:20px;min-height:0;padding:48px 0}
 .hero-title{font-size:clamp(39px,5.2vw,55px)}
 .hero-demo{padding:16px 13px 13px}
 .hero .stage{height:405px}
 .hero .phone{height:374px}
 .hero-benefits{gap:10px}
 .catbar{position:relative;top:auto}
 .cat-tabs{max-width:100%;width:100%;overflow-x:auto}
 .cat-ctrl{width:100%;justify-content:space-between}
 .field-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:740px){
 .shell{width:calc(100% - 28px)}
 .nav{height:65px}
 .brand .word{font-size:16px}
 .logo{width:36px;height:36px}
 .nav-cta{min-height:40px;padding:5px 11px 5px 6px;font-size:11px}
 .nav-cta .count{width:27px;height:27px}
 .hero{display:flex;flex-direction:column;align-items:stretch;gap:22px;padding:36px 0 30px}
 .hero-copy{max-width:100%}
 .hero-eyebrow{font-size:9px;margin-bottom:16px;letter-spacing:.08em}
 .hero-edition{display:none}
 .hero-title{font-size:clamp(36px,8.2vw,55px);line-height:1.11;max-width:100%}
 .hero-lead{font-size:13px;line-height:1.65;margin:18px 0}
 .hero-actions{gap:8px}
 .hero-actions a{min-height:44px;padding:10px 13px;font-size:11px}
 .hero-benefits{margin-top:20px;font-size:10px;gap:9px 14px}
 .hero-hint{margin-top:14px;font-size:10px}
 .hero-demo{max-width:520px;margin:auto;border-radius:20px;padding:14px 12px 12px}
 .hero .stage{height:367px;padding-top:7px}
 .hero .phone{height:350px}
 .hero .stage .halo{width:340px;height:330px;filter:blur(36px)}
 .demo-top{font-size:9px}
 .hero .switcher{padding-bottom:8px}
 .hero .hero-info{gap:6px}
 .hero-open,.hero-studio{font-size:10px;padding:7px 9px}
 .strip-in{grid-template-columns:repeat(2,minmax(0,1fr))}
 .strip-in div{padding:14px 11px;border-top:1px solid var(--line)}
 .strip-in div:nth-child(-n+2){border-top:0}
 .strip-in div:nth-child(3){border-top:1px solid var(--line)}
 .strip-in div:last-child{grid-column:span 2}
 .strip-in b{font-size:22px}
 .strip-in span{font-size:10px}
 .collections,.fields,.why,.how,.faq,.showcase,.pricing{padding-top:55px}
 .sec-head h2{font-size:clamp(31px,7.2vw,43px)}
 .sec-head p{font-size:12px}
 .collection-stat{display:none}
 .tools-row{flex-wrap:wrap;margin-top:19px;gap:8px}
 .tools-row .search{max-width:none;flex:1 1 100%;height:47px}
 .result-count{display:block;font-size:11px;padding-inline-start:3px}
 .catbar{margin-top:11px;padding:8px;max-width:100%;flex-wrap:wrap;overflow:visible}
 .cat-tabs{display:flex;flex:1 1 100%;max-width:100%;border-bottom:1px solid #35465f;padding-bottom:7px}
 .cat-tabs button{padding:7px 10px;min-height:36px;font-size:11px}
 .cat-ctrl{display:flex;justify-content:space-between;flex-wrap:wrap}
 .seg2 button{padding:6px 9px;font-size:11px}
 .sortl select{max-width:125px;font-size:11px}
 .grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:13px}
 .card{border-radius:17px}
 .card .art{height:284px}
 .card .mini{top:31px}
 .card .body{min-height:0;padding:15px}
 .card .body p{min-height:0}
 .card .acts a,.card .acts button{min-height:43px;font-size:12px}
 .grp-head{flex-direction:row;align-items:center;gap:10px}
 .grp-head h3{font-size:20px}
 .grp-head p{font-size:11px}
 .grp-head .grp-n{font-size:30px}
 .grp-all{font-size:10px;padding:8px}
 .field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .fcard{min-height:110px;padding:12px}
 .modal-box{height:calc(100dvh - 18px);width:calc(100% - 16px);border-radius:15px}
 .modal-top,.modal-bottom{padding:10px}
 .modal-top h3{font-size:14px}
 .modal-ctrl{gap:4px}
 .modal-ctrl button{padding:7px 9px;font-size:10px}
 .modal-ctrl .dev{display:inline-flex}
 .modal-stage{padding:9px}
 #mFrame{width:min(350px,100%);border-radius:15px;box-shadow:0 0 0 4px #283448}
 #mFrame.desktop{width:100%}
 .modal-bottom span:first-child{display:none}
 .modal-bottom .btn{padding:9px 12px;font-size:11px}
 .last-cta{margin:75px auto 55px;padding:48px 16px}
}
@media(max-width:360px){
 .nav-mobile summary{min-height:39px;padding:8px;font-size:10px}
 .nav-mobile summary span{display:none}
 .nav-cta{font-size:10px;padding-inline:6px}
 .nav-cta .count{display:none}
 .brand{gap:6px}
 .hero-actions a{flex:1}
 .hero-title{font-size:clamp(31px,9vw,39px)}
 .hero .stage{height:330px}
 .hero .phone{height:311px}
 .hero .hero-info #heroField{flex:1 0 100%}
 .cat-ctrl{gap:5px}
 .sortl{font-size:10px}
 .sortl select{max-width:115px}
}
@media(prefers-reduced-motion:reduce){
 .hero-actions a,.card,.card .mini,.fcard,.hero .sw{transition:none!important}
 .card:hover,.fcard:hover,.hero-actions a:hover{transform:none!important}
}
