/* Noturnus · site v2.1 "Do dia pra noite", versão enxuta: uma ideia por seção, muito respiro, sem enfeite extra.
   Identidade: índigo #4338CA/#5B53E6, lilás #A9A4FF, marfim, Instrument Serif + Geist. Dourado só no logo. Sem JS. */
:root{
  --ink:#16161D; --ink2:#3E3B36; --muted:#6B6760; --paper:#FBF6F1;
  --accent:#4338CA; --fill:#5B53E6; --lilac:#A9A4FF; --soft:#EEEDFD; --soft-ink:#3730A3;
  --ok:#1F7A4D; --ok-bg:#E1F2E8; --night:#0B0B12;
  --serif:'Instrument Serif',Georgia,serif; --sans:'Geist',system-ui,-apple-system,'Segoe UI',sans-serif; --mono:'Geist Mono',ui-monospace,monospace;
  --wrap:1160px; --gut:32px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;overflow-x:clip;background:var(--night);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p{margin:0;font-weight:400}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:-999px;top:8px;z-index:20;padding:10px 14px;border-radius:10px;background:var(--ink);color:#fff}
.skip:focus{left:8px}
:where(a,button,summary):focus-visible{outline:2px solid var(--fill);outline-offset:3px;border-radius:12px}

.kick{font-family:var(--mono);font-size:13px;letter-spacing:.8px;text-transform:uppercase}
.h2{font-family:var(--serif);font-size:clamp(44px,5.6vw,76px);line-height:.95;letter-spacing:-1.5px}
.h2 em{font-style:italic}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 26px;border-radius:999px;font-size:16px;font-weight:600;text-decoration:none;border:1.5px solid transparent;transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.btn:hover{transform:translateY(-2px)}
.btn small{font-weight:400;opacity:.7}
.btn-ink{background:var(--ink);color:var(--paper)}
.btn-line{background:transparent;color:var(--ink);border-color:rgba(22,22,29,.22)}
.btn-paper{background:var(--paper);color:var(--ink)}
.btn-ghost{background:transparent;color:#F2EFE8;border-color:rgba(242,239,232,.3)}
.btn-neon{background:var(--fill);color:#fff;box-shadow:0 10px 40px rgba(91,83,230,.45)}

/* topo */
.nav{position:sticky;top:14px;z-index:30;padding:0 var(--gut)}
.nav-in{max-width:var(--wrap);margin:0 auto;height:62px;display:flex;align-items:center;gap:20px;padding:0 8px 0 20px;border-radius:999px;background:rgba(251,246,241,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(22,22,29,.07)}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink)}
.logo span{font-family:var(--serif);font-size:25px;line-height:1}
.nav-links{display:flex;gap:2px}
.nav-links a{padding:8px 14px;border-radius:999px;font-size:15px;color:var(--muted);text-decoration:none}
.nav-links a:hover{color:var(--ink)}
.nav-cta{margin-left:auto;display:flex;align-items:center;gap:4px}
.nav-cta .btn{min-height:46px;padding:0 18px;font-size:15px}
.enter{position:relative}
.enter summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;height:46px;padding:0 14px;border-radius:999px;font-size:15px;font-weight:500;color:var(--ink)}
.enter summary::-webkit-details-marker{display:none}
.enter-menu{position:absolute;right:0;top:56px;width:260px;padding:8px;border-radius:18px;background:#fff;box-shadow:0 24px 60px rgba(22,22,29,.18);display:flex;flex-direction:column;color:var(--ink)}
.enter-menu a{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:12px;text-decoration:none}
.enter-menu a:hover{background:var(--paper)}
.enter-menu b{font-size:15px}
.enter-menu span{font-size:13px;color:var(--muted)}

/* 1 · fim de tarde */
.dusk{position:relative;margin-top:-76px;padding:170px 0 140px;overflow:hidden;background:linear-gradient(180deg,#FBF6F1 0%,#FBE9DD 55%,#F4CFC6 100%)}
.sun{position:absolute;right:-180px;top:80px;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle closest-side,#FFD9A8 0%,rgba(246,180,140,.7) 45%,rgba(246,180,140,0) 100%)}
.dusk .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:center}
.hero .kick{color:var(--accent)}
.hero h1{font-family:var(--serif);font-size:clamp(58px,8.2vw,118px);line-height:.88;letter-spacing:-2.5px;margin:22px 0 30px}
.hero h1 span{display:block}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero .lead{font-size:20px;line-height:1.5;color:var(--ink2);max-width:520px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.hero-note{margin-top:18px;font-size:14px;color:var(--muted)}
.phone{width:300px;justify-self:center;border-radius:44px;padding:11px;background:var(--ink);box-shadow:0 40px 80px rgba(80,40,40,.25);transform:rotate(4deg)}
.scr{color:var(--ink);border-radius:34px;overflow:hidden;background:var(--paper);display:flex;flex-direction:column;height:560px}
.scr-top{padding:22px 18px 16px;background:linear-gradient(180deg,#F6B48C 0%,#E9A0A6 45%,#C9C5FF 100%)}
.scr-top .k{font-family:var(--mono);font-size:10px;color:#3E2F57}
.scr-top .h{font-family:var(--serif);font-size:26px;line-height:1.05;color:#231B2E;margin-top:4px}
.scr-b{padding:12px;display:flex;flex-direction:column;gap:10px}
.vg{background:#fff;border:1px solid #EADFD6;border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:6px}
.vg .t{display:flex;justify-content:space-between;gap:6px;font-size:14px;font-weight:600}
.vg .t span{font-family:var(--serif);font-size:22px;font-weight:400;white-space:nowrap}
.vg .s{font-size:12px;color:var(--muted)}
.vg .a{display:flex;gap:6px}.vg .a i{font-style:normal;flex:1;text-align:center;font-size:12px;font-weight:600;padding:8px;border-radius:10px;background:var(--ink);color:#fff}.vg .a i+i{background:#fff;color:var(--ink);border:1px solid #E4DED2}
.vg.ok{background:var(--ok-bg);border-color:#CFE8DA}.vg.ok .s{color:var(--ok)}

/* faixa que corre: o único enfeite */
.marquee{background:var(--ink);color:var(--paper);padding:16px 0;overflow:hidden}
.marquee .track{display:flex;width:max-content;animation:run 40s linear infinite}
.marquee span{font-family:var(--serif);font-style:italic;font-size:30px;line-height:1;padding:0 22px;white-space:nowrap}
.marquee b{color:var(--lilac);font-family:var(--sans);font-style:normal;font-size:16px;align-self:center}
@keyframes run{to{transform:translateX(-50%)}}

/* 2 · anoitecendo */
.evening{padding:140px 0;background:linear-gradient(180deg,#F4CFC6 0%,#DCCDF1 55%,#9D96EE 100%)}
.head{display:flex;flex-direction:column;gap:14px;max-width:760px;margin-bottom:56px}
.head p{font-size:19px;max-width:600px}
.evening .kick{color:var(--soft-ink)}
.evening .head p{color:var(--ink2)}
.who{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.who-c{border-radius:32px;padding:44px;display:flex;flex-direction:column;gap:22px}
.who-bar{background:var(--paper)}
.who-fr{background:var(--ink);color:#F2EFE8}
.who-c .kick{font-size:12px}
.who-bar .kick{color:var(--accent)}.who-fr .kick{color:var(--lilac)}
.who-c h3{font-family:var(--serif);font-size:46px;line-height:1}
.who-c ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;flex-grow:1;font-size:16px;line-height:1.5}
.who-c li{padding-left:22px;position:relative}
.who-c li::before{content:"✦";position:absolute;left:0;font-size:12px;top:4px}
.who-bar li::before{color:var(--accent)}.who-fr li::before{color:var(--lilac)}
.who-c .btn{align-self:flex-start}

/* 3 · a noite */
.night{padding:140px 0 0;color:#F2EFE8;background:linear-gradient(180deg,#9D96EE 0%,#3F37B5 22%,#1A163D 48%,#0B0B12 70%)}
.night .kick{color:#DAD7FB}
.night .head p{color:#CFCBE8}
.night .h2 em{color:var(--lilac)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid rgba(255,255,255,.25)}
.step{padding:28px 28px 0 0;display:flex;flex-direction:column;gap:10px}
.step .t{font-family:var(--serif);font-size:56px;line-height:1;color:#fff}
.step h3{font-size:18px;font-weight:600;color:#fff}
.step p{font-size:15px;color:#CFCBE8}
.step .new{align-self:flex-start;font-family:var(--mono);font-size:10px;letter-spacing:.6px;padding:3px 8px;border-radius:99px;background:var(--lilac);color:var(--night)}

.zero{margin-top:180px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:56px;align-items:center}
.zero .n{font-family:var(--serif);font-size:clamp(130px,17vw,230px);line-height:.8;letter-spacing:-6px;color:var(--lilac)}
.zero h2{color:#fff}
.zero p{margin-top:18px;font-size:18px;color:#CFCBE8;max-width:560px}
.zero p b{color:#fff;font-weight:600}

.feats{margin-top:180px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}
.feat{display:flex;flex-direction:column;gap:10px;border-top:1px solid rgba(255,255,255,.18);padding-top:24px}
.feat h3{font-size:20px;font-weight:600;color:#fff}
.feat p{font-size:15px;color:#B9B4D0}
.feat .new{font-family:var(--mono);font-size:10px;letter-spacing:.6px;color:var(--lilac)}

.plans-sec{margin-top:180px}
.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:940px}
.plan{border-radius:28px;padding:36px;display:flex;flex-direction:column;gap:16px;border:1px solid rgba(255,255,255,.14)}
.plan-pro{background:linear-gradient(160deg,#4338CA,#2B2470 75%);border-color:transparent}
.plan .name{display:flex;justify-content:space-between;align-items:center;font-size:17px;font-weight:600}
.plan .name span{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.5px;color:#CFCBE8}
.plan .price{font-family:var(--serif);font-size:64px;line-height:1;color:#fff}
.plan .price small{font-family:var(--sans);font-size:15px;color:#B9B4D0;margin-left:6px}
.plan-pro .price{font-size:48px}
.plan ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;flex-grow:1;font-size:15px;color:#DAD7FB}
.plan .btn{align-self:flex-start}

.faq-sec{margin-top:180px}
.faq{max-width:840px}
.faq details{border-bottom:1px solid rgba(255,255,255,.14)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:24px 0;font-family:var(--serif);font-size:28px;line-height:1.15;color:#fff}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);font-size:22px;color:var(--lilac)}
.faq details[open] summary::after{content:"−"}
.faq details p{padding:0 0 24px;font-size:17px;color:#CFCBE8;max-width:700px}

.final{position:relative;margin-top:160px;padding:80px 0 140px;text-align:center}
.moon{width:150px;height:150px;margin:0 auto 48px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#FFFFFF,#DAD7FB 55%,#A9A4FF 100%)}
.final h2{color:#fff;font-size:clamp(52px,7.5vw,108px)}
.final h2 em{color:var(--lilac)}
.final p{margin:22px auto 36px;font-size:19px;color:#CFCBE8;max-width:520px}
.final .row{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}

.foot{border-top:1px solid rgba(255,255,255,.08);padding:48px 0 40px;color:#9C97B5;background:var(--night)}
.foot .wrap{display:flex;flex-wrap:wrap;gap:24px 56px;align-items:flex-start}
.foot .logo{color:#F2EFE8}
.foot nav{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14px;margin-left:auto}
.foot nav a{text-decoration:none;color:#CFCBE8}
.foot nav a:hover{color:#fff}
.foot .copy{width:100%;font-size:13px}

@media (max-width:1000px){
  .dusk .wrap,.zero{grid-template-columns:minmax(0,1fr)}
  .phone{margin-top:24px}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}
  .feats{grid-template-columns:minmax(0,1fr);gap:28px}
  .nav-links{display:none}
}
@media (max-width:700px){
  :root{--gut:16px}
  body{font-size:16px}
  .nav{top:10px;padding:0 10px}
  .nav-in{height:56px;padding:0 6px 0 16px}
  .nav-cta .btn{display:none}
  .dusk{padding:120px 0 90px}
  .sun{width:360px;height:360px;right:-170px;top:40px}
  .hero h1{letter-spacing:-1.5px}
  .hero .lead{font-size:17px}
  .hero-ctas .btn{width:100%}
  .phone{width:260px}.scr{height:480px}
  .marquee span{font-size:24px}
  .evening{padding:96px 0}
  .who,.plans{grid-template-columns:minmax(0,1fr)}
  .who-c{padding:28px}.who-c h3{font-size:38px}
  .night{padding-top:96px}
  .steps{grid-template-columns:minmax(0,1fr)}
  .zero,.feats,.plans-sec,.faq-sec{margin-top:110px}
  .zero{gap:20px}
  .plan{padding:26px}
  .faq summary{font-size:23px}
  .final{margin-top:100px;padding-bottom:100px}
  .final .btn{width:100%}
  .foot nav{margin-left:0}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee .track{animation:none}.btn{transition:none}}
