
:root{
  --bg:#061518;
  --bg2:#0b2023;
  --panel:#0d2528;
  --panel2:#102d31;
  --text:#f5f0e7;
  --muted:#b7c6c2;
  --teal:#659B90;
  --mint:#3DA98F;
  --sand:#D8BC8E;
  --cream:#F8E6C8;
  --line:#23454a;
  --shadow:0 18px 60px rgba(0,0,0,.28);
  --max:1160px;
  --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:
radial-gradient(circle at 90% 0%,rgba(61,169,143,.08),transparent 28%),
linear-gradient(180deg,var(--bg),#08191c 55%,#071619);
color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}
a{color:inherit}
img{max-width:100%;display:block}
.wrap{width:min(calc(100% - 34px),var(--max));margin:auto}
header{position:sticky;top:0;z-index:1000;background:rgba(6,21,24,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(35,69,74,.8)}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:1.65rem}
.brandmark{width:42px;height:42px;border:1px solid var(--teal);border-radius:14px;display:grid;place-items:center;background:#0a1d20;font-size:1.05rem;letter-spacing:-.08em}
.navright{display:flex;align-items:center;gap:14px}
nav ul{display:flex;gap:18px;list-style:none;padding:0;margin:0;align-items:center}
nav a{text-decoration:none;color:#dce6e3;font-size:.94rem;font-weight:700}
nav a:hover,nav a[aria-current="page"]{color:var(--sand)}
.langmenu{position:relative}
.langbtn{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:999px;padding:9px 12px;font-weight:800;cursor:pointer;min-width:66px}
.langdropdown{display:none;position:absolute;right:0;top:calc(100% + 9px);min-width:150px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:7px;box-shadow:var(--shadow)}
.langmenu.open .langdropdown{display:grid;gap:4px}
.langdropdown a{text-decoration:none;padding:9px 11px;border-radius:10px;font-size:.9rem;font-weight:700}
.langdropdown a:hover,.langdropdown a.active{background:var(--panel2);color:var(--sand)}
.menu-toggle{display:none;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;padding:8px 11px;font-weight:800}
.hero{min-height:620px;padding:90px 0 72px;display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.kicker,.eyebrow{display:inline-block;color:#9ed5c6;text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.76rem}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;margin-top:0}
h1{font-size:clamp(3rem,6.5vw,6rem);letter-spacing:-.04em;margin:12px 0 22px}
h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.025em;margin-bottom:16px}
h3{font-size:1.45rem}
.grad{background:linear-gradient(90deg,var(--cream),var(--sand),#9ed5c6);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:clamp(1.08rem,2vw,1.28rem);color:var(--muted);max-width:760px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:14px;background:var(--mint);color:#041315;text-decoration:none;font-weight:900;border:0;cursor:pointer}
.btn.secondary{background:transparent;color:var(--text);border:1px solid var(--line)}
.btn:hover{transform:translateY(-1px)}
.featureline{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}
.featureline span{border:1px solid var(--line);background:rgba(13,37,40,.72);border-radius:999px;padding:8px 11px;color:#c9d7d4;font-size:.82rem}
.visual{height:470px;position:relative}
.ring{position:absolute;inset:22px;border:1px solid rgba(101,155,144,.35);border-radius:50%}
.phone{position:absolute;width:260px;height:460px;right:17%;top:2px;background:#f9f4ea;border:10px solid #0c282c;border-radius:36px;box-shadow:0 28px 80px rgba(0,0,0,.34);transform:rotate(4deg);overflow:hidden}
.screen{padding:25px 18px;color:#17302f}
.screen h3{font-size:2rem;margin-bottom:20px}
.mini{padding:14px;border-radius:14px;background:white;margin:10px 0;box-shadow:0 7px 18px rgba(24,60,58,.09)}
section{padding:82px 0}
.page-head{padding:92px 0 36px}
.page-head h1{font-size:clamp(3rem,6vw,5.6rem)}
.page-copy{max-width:850px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card{background:linear-gradient(180deg,rgba(13,37,40,.96),rgba(8,29,32,.96));border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 14px 38px rgba(0,0,0,.14)}
.card p{color:var(--muted)}
.card.accent{border-color:rgba(216,188,142,.4)}
.card .tag{display:inline-block;margin-bottom:12px;padding:5px 9px;border-radius:999px;background:#17383c;color:#a8d8cb;font-size:.76rem;font-weight:800}
.idea-card{cursor:pointer;transition:.18s ease}
.idea-card:hover,.idea-card:focus-visible{transform:translateY(-3px);border-color:var(--sand)}
.idea-more{color:var(--sand);font-weight:800}
.product-strip{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:stretch}
.product-visual{min-height:410px;border-radius:30px;background:linear-gradient(145deg,#17383c,#0d2528);border:1px solid var(--line);position:relative;overflow:hidden;padding:30px}
.product-visual:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;background:rgba(61,169,143,.13);right:-90px;bottom:-130px}
.stat{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:14px 0}
.stat:last-child{border-bottom:0}
.price{font-size:3.3rem;font-family:Georgia,"Times New Roman",serif;margin:8px 0}
.note{font-size:.9rem;color:var(--muted)}
blockquote{margin:0;padding:22px;border-left:4px solid var(--mint);background:rgba(13,37,40,.6);border-radius:0 18px 18px 0}
details{border:1px solid var(--line);border-radius:16px;padding:16px 18px;background:rgba(13,37,40,.58)}
details+details{margin-top:10px}
summary{font-weight:800;cursor:pointer}
.cta{border:1px solid rgba(216,188,142,.35);background:linear-gradient(145deg,#132d31,#0b2023);border-radius:30px;padding:38px;text-align:center}
footer{border-top:1px solid var(--line);padding:36px 0 46px;color:#9eb0ac}
.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.footer-links{display:flex;gap:16px;flex-wrap:wrap}
.footer-links a{text-decoration:none}
.footer-links a:hover{color:var(--sand)}
.idea-modal{position:fixed;inset:0;display:none;z-index:2000}
.idea-modal.open{display:block}
.idea-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}
.idea-modal-panel{position:relative;z-index:1;width:min(92vw,760px);max-height:84vh;overflow:auto;margin:8vh auto 0;background:#0b1c1f;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.idea-modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:var(--text);font-size:32px;cursor:pointer}
form{display:grid;gap:14px;max-width:700px}
label{font-weight:800}
input,textarea{width:100%;border:1px solid var(--line);background:#0a1d20;color:var(--text);border-radius:13px;padding:13px 14px;font:inherit}
textarea{min-height:160px;resize:vertical}
.small{font-size:.9rem;color:var(--muted)}
hr{border:0;border-top:1px solid var(--line);margin:34px 0}
@media(max-width:900px){
  .hero,.product-strip,.grid,.grid.two{grid-template-columns:1fr}
  .visual{height:390px}.phone{right:50%;transform:translateX(50%) rotate(3deg);height:390px;width:225px}
  nav{display:none;position:absolute;left:17px;right:17px;top:68px;background:#091d20;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow)}
  nav.open{display:block}
  nav ul{flex-direction:column;align-items:stretch;gap:5px}
  nav a{display:block;padding:9px 10px}
  .menu-toggle{display:inline-flex}
}
@media(max-width:560px){
  .wrap{width:min(calc(100% - 24px),var(--max))}
  .nav{min-height:68px}
  .brand{font-size:1.35rem}.brandmark{width:36px;height:36px}
  .hero{min-height:auto;padding:54px 0 48px;gap:22px}
  .visual{height:335px}.phone{height:335px;width:195px}
  section{padding:62px 0}
  .actions{display:grid}.btn{width:100%}
  .cta,.card,.product-visual{padding:22px}
  .idea-modal-panel{margin:4vh auto 0;max-height:92vh;padding:24px 20px}
}


/* Novalyq Support Chat */
.chat-launcher{
  position:fixed;right:22px;bottom:22px;z-index:1800;
  width:58px;height:58px;border:0;border-radius:50%;
  background:var(--mint);color:#061518;font-weight:900;font-size:24px;
  box-shadow:0 16px 40px rgba(0,0,0,.35);cursor:pointer;
}
.chat-launcher:hover{transform:translateY(-2px)}
.chat-panel{
  position:fixed;right:22px;bottom:92px;z-index:1800;
  width:min(390px,calc(100vw - 28px));max-height:min(620px,76vh);
  display:none;flex-direction:column;overflow:hidden;
  border:1px solid var(--line);border-radius:22px;background:#0b1c1f;
  box-shadow:0 28px 80px rgba(0,0,0,.45)
}
.chat-panel.open{display:flex}
.chat-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;border-bottom:1px solid var(--line)}
.chat-head strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.18rem}
.chat-head small{color:var(--muted)}
.chat-close{border:0;background:transparent;color:var(--text);font-size:26px;cursor:pointer;line-height:1}
.chat-body{padding:16px;overflow-y:auto;display:grid;gap:12px}
.chat-msg{max-width:88%;padding:11px 13px;border-radius:15px;line-height:1.45;font-size:.95rem}
.chat-msg.bot{background:#143136;border:1px solid #25494e}
.chat-msg.user{background:var(--sand);color:#122325;margin-left:auto}
.chat-quick{display:flex;gap:8px;flex-wrap:wrap}
.chat-quick button{
  border:1px solid var(--line);background:#0f292d;color:var(--text);
  border-radius:999px;padding:7px 10px;cursor:pointer;font-size:.82rem
}
.chat-quick button:hover{border-color:var(--sand);color:var(--sand)}
.chat-form{display:flex;gap:8px;padding:14px;border-top:1px solid var(--line);background:#09191c}
.chat-input{flex:1;border:1px solid var(--line);background:#061518;color:var(--text);border-radius:12px;padding:11px 12px;font:inherit}
.chat-send{border:0;border-radius:12px;background:var(--mint);color:#061518;font-weight:900;padding:0 14px;cursor:pointer}
.chat-support{color:var(--sand);font-weight:800}
@media(max-width:560px){
  .chat-launcher{right:14px;bottom:14px}
  .chat-panel{right:14px;bottom:82px;max-height:72vh}
}

/* Approved Novalyq logo */
.brand{
  position:relative;
  width:210px;
  min-width:210px;
  height:52px;
  display:block;
  background:url('/assets/novalyq-logo.png') left center / contain no-repeat;
}
.brand .brandmark{display:none!important}
.brand > span:last-child{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
@media(max-width:560px){
  .brand{width:170px;min-width:170px;height:44px}
}


/* Nyvio pricing */
.pricing-stack{display:grid;gap:18px;align-content:start}
.plan-capacity{font-family:Georgia,"Times New Roman",serif;font-size:1.55rem;font-weight:700;color:var(--cream);margin:-4px 0 12px}
.pricing-note{margin:0 4px}


/* Contact form */
.contact-card{max-width:860px;margin:0 auto}
.contact-form{max-width:none;margin-top:22px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form select{width:100%;border:1px solid var(--line);background:#0a1d20;color:var(--text);border-radius:13px;padding:13px 14px;font:inherit}
.checkline{display:flex;align-items:flex-start;gap:10px;font-weight:500}
.checkline input{width:auto;margin-top:.35rem;flex:0 0 auto}
.checkline a{color:var(--sand)}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-status{display:none;border-radius:14px;padding:12px 14px;margin:14px 0}
.form-status.success{display:block;background:rgba(61,169,143,.14);border:1px solid rgba(61,169,143,.5);color:#bce9dc}
.form-status.error{display:block;background:rgba(216,188,142,.12);border:1px solid rgba(216,188,142,.45);color:var(--cream)}
@media(max-width:700px){.form-grid{grid-template-columns:1fr}}
