:root{
  --bg:#03070d;
  --bg2:#07101b;
  --panel:#08111d;
  --panel2:#0b1625;
  --line:rgba(139,174,218,.18);
  --line-strong:rgba(154,190,239,.30);
  --text:#f3f6fa;
  --muted:#8d99aa;
  --soft:#c7d0db;
  --blue:#79a4ff;
  --cyan:#a9f3f0;
  --green:#65c78f;
  --max:1760px;
  --shadow:0 30px 80px rgba(0,0,0,.38);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
button,input,select{font:inherit}
.wrap{width:min(var(--max),calc(100% - 96px));margin:auto}

.premium-home{min-height:100vh;background:
  radial-gradient(circle at 73% 13%,rgba(54,101,174,.10),transparent 24%),
  radial-gradient(circle at 13% 25%,rgba(47,76,111,.08),transparent 32%),
  linear-gradient(180deg,#03070d 0%,#030811 48%,#040a12 100%)}

.topnav{height:90px;display:flex;align-items:center;position:relative;z-index:50;border-bottom:1px solid rgba(255,255,255,.035);background:rgba(3,7,13,.84);backdrop-filter:blur(20px)}
.navinner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:54px;width:calc(100% - 80px);max-width:none;margin:0 auto}
.brand{display:flex;align-items:center;gap:13px;font-weight:700;font-size:18px;letter-spacing:.17em;white-space:nowrap}
.brand-mark{width:29px;height:33px;color:#f5f7fa;display:grid;place-items:center}
.brand-mark svg{width:100%;height:100%;display:block}
.links{display:flex;justify-content:center;gap:44px;color:#b0b8c4;font-size:15px}
.links a{transition:.2s color}
.links a:hover{color:#fff}
.nav-actions{display:flex;align-items:center;gap:24px}
.nav-login{font-size:15px;color:#dce2e8}

.btn{border:0;border-radius:8px;padding:13px 20px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:16px;transition:.2s transform,.2s border-color,.2s background,.2s color}
.btn:hover{transform:translateY(-1px)}
.btn.large{min-height:60px;padding:0 32px;font-size:15px}
.btn.compact{padding:11px 18px;font-size:14px}
.btn.primary{background:#f3f5f7;color:#09111b;box-shadow:0 18px 42px rgba(0,0,0,.24)}
.btn.primary:hover{background:#fff}
.btn.dark{background:rgba(7,14,24,.58);color:#f0f3f7;border:1px solid rgba(194,210,231,.31)}
.btn.dark:hover,.btn.outline:hover{border-color:rgba(217,229,244,.55);background:rgba(255,255,255,.035)}
.btn.outline{background:transparent;color:#f0f3f7;border:1px solid rgba(194,210,231,.34)}

.hero{position:relative;overflow:hidden;min-height:560px;padding:48px 0 18px}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(180deg,transparent,rgba(3,8,17,.68));pointer-events:none}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.38fr) minmax(560px,.62fr);gap:10px;align-items:center;min-height:500px}
.hero-main{position:relative;z-index:3;padding:28px 0 38px;max-width:1080px}
.hero-note{display:flex;align-items:center;gap:10px;color:#99a3b0;font-size:15px;margin-bottom:24px}
.mini-shield{width:25px;height:25px;border:1px solid rgba(104,147,218,.26);border-radius:7px;display:grid;place-items:center;color:#72a5ff;background:rgba(71,114,185,.07);font-size:13px}
h1{font-size:clamp(82px,5.9vw,120px);font-weight:330;letter-spacing:-.058em;line-height:.88;margin:0;color:#f4f5f7}
h1 span{display:inline-block;margin-top:18px;white-space:nowrap}
.lead{font-size:19px;line-height:1.58;color:#9aa4b2;max-width:690px;margin:30px 0 0}
.cta{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px}
.hero-glow{position:absolute;border-radius:50%;filter:blur(100px);opacity:.32;pointer-events:none}
.hero-glow-a{width:680px;height:500px;right:-3%;top:-2%;background:#173867}
.hero-glow-b{width:560px;height:340px;left:-10%;top:18%;background:#0b263d;opacity:.16}

.hero-art{position:relative;z-index:1;height:510px;width:660px;justify-self:end;transform:translateX(-8%);filter:drop-shadow(0 38px 64px rgba(0,0,0,.58))}
.art-halo{position:absolute;width:500px;height:470px;left:9%;top:0;border-radius:50%;background:radial-gradient(circle,rgba(73,121,199,.20),rgba(14,34,62,.07) 50%,transparent 72%);filter:blur(18px)}
.art-panel{position:absolute;background:linear-gradient(145deg,rgba(24,43,70,.88),rgba(5,12,22,.96));border:1px solid rgba(121,165,232,.31);box-shadow:inset 0 0 50px rgba(77,122,188,.035),0 25px 55px rgba(0,0,0,.42)}
.art-left{width:310px;height:435px;left:0;top:50px;clip-path:polygon(20% 6%,100% 0,84% 89%,48% 100%,9% 78%,0 46%);transform:rotate(-2deg);border-color:rgba(138,181,247,.68);background:linear-gradient(145deg,rgba(34,59,94,.96),rgba(8,17,29,.99))}
.art-top{width:300px;height:225px;left:47%;top:18px;clip-path:polygon(7% 10%,100% 0,88% 93%,0 100%);transform:rotate(1deg)}
.art-bottom{width:320px;height:255px;left:43%;top:250px;clip-path:polygon(5% 5%,95% 0,78% 71%,44% 93%,0 100%);transform:rotate(-1deg)}
.art-spine{position:absolute;width:15px;height:430px;left:45%;top:48px;background:linear-gradient(180deg,rgba(89,129,195,.52),rgba(10,20,34,.92));transform:skewX(-8deg);box-shadow:0 0 22px rgba(91,140,214,.25)}
.art-edge{position:absolute;width:2px;height:425px;left:43.7%;top:49px;background:linear-gradient(180deg,#a7caff 0%,rgba(82,126,192,.38) 32%,rgba(82,126,192,.06) 85%);box-shadow:0 0 16px rgba(124,174,255,.72)}

.feature-strip{position:relative;z-index:5;padding:0 0 18px}
.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.feature-card{position:relative;min-height:198px;padding:30px 30px 28px;background:linear-gradient(145deg,rgba(11,21,35,.90),rgba(5,12,21,.92));border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.22s transform,.22s border-color,.22s background}
.feature-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0 0,rgba(70,124,217,.09),transparent 40%);pointer-events:none}
.feature-card:hover{transform:translateY(-3px);border-color:var(--line-strong);background:linear-gradient(145deg,rgba(13,25,42,.95),rgba(6,13,23,.94))}
.feature-icon{width:40px;height:40px;color:#7ea5ff;margin-bottom:26px}
.feature-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.feature-card h2{font-size:20px;line-height:1.22;margin:0 38px 8px 0;font-weight:520;letter-spacing:-.02em}
.feature-card p{font-size:15px;line-height:1.46;color:#8793a3;margin:0;max-width:290px}
.feature-arrow{position:absolute;right:25px;bottom:24px;color:#8e9aad;font-size:21px;font-weight:300}

.content-sec{padding:106px 0}
.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:#79a7ff;font-weight:700}
.section-title{font-size:clamp(38px,5vw,66px);font-weight:350;letter-spacing:-.05em;line-height:1.02;margin:14px 0 0}
.section-desc{font-size:17px;line-height:1.65;color:#8e9baa;margin:0;max-width:720px}
.split-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}
.workflow-sec{border-top:0}
.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:54px}
.workflow-card{padding:26px 24px 30px;min-height:200px;border-top:1px solid rgba(138,177,232,.25);background:linear-gradient(180deg,rgba(15,27,43,.32),rgba(5,12,21,.02))}
.workflow-card>span{font-size:12px;color:#6384b9;letter-spacing:.12em}
.workflow-card h3{font-size:20px;font-weight:520;margin:36px 0 10px}
.workflow-card p{font-size:14px;color:#7f8b9b;line-height:1.55;margin:0}

.assistant-sec{background:linear-gradient(180deg,rgba(8,17,29,.38),rgba(3,8,14,.15));border-top:1px solid rgba(255,255,255,.025);border-bottom:1px solid rgba(255,255,255,.025)}
.assistant-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:80px;align-items:center}
.glass{background:linear-gradient(150deg,rgba(14,26,42,.88),rgba(6,12,21,.94));border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.assistant-demo{padding:24px;display:grid;gap:14px}
.assistant-head{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.assistant-head>span{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:#a7c4ff;background:rgba(92,136,210,.12);border:1px solid rgba(113,155,220,.24)}
.assistant-head b,.assistant-head small{display:block}
.assistant-head b{font-size:14px}.assistant-head small{font-size:12px;color:#6f7d8f;margin-top:2px}
.chat{max-width:86%;padding:13px 15px;border-radius:13px;font-size:13px;line-height:1.55}
.chat.user{justify-self:end;background:#152c48;border:1px solid rgba(102,148,214,.30)}
.chat.ai{justify-self:start;background:#09131f;border:1px solid rgba(131,164,209,.18)}
.chat.ai b{font-size:13px}.chat.ai p{color:#929eae;margin:6px 0}.chat.ai span{font-size:11px;color:#76a3e9}

.export-sec{padding:40px 0 78px;border-bottom:1px solid rgba(255,255,255,.035)}
.export-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:74px;align-items:center}
.export-heading .section-title{font-size:38px;white-space:nowrap;margin-top:0}
.export-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.export-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;min-height:108px;padding:22px 24px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,rgba(11,22,37,.86),rgba(5,12,21,.91))}
.doc-icon{width:42px;height:42px;border:1px solid rgba(132,168,219,.25);border-radius:9px;display:grid;place-items:center;font-weight:700}
.doc-icon.word{color:#89aaff;background:rgba(70,103,180,.08)}
.doc-icon.excel{color:#6fc994;background:rgba(61,139,98,.08)}
.export-card b,.export-card small{display:block}.export-card b{font-size:16px;font-weight:520}.export-card small{font-size:12px;color:#758296;margin-top:4px}.export-arrow{color:#8794a6;font-size:21px}

.security-sec{padding-top:70px}
.security-panel{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:52px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.security-panel .section-title{font-size:48px}
.security-points{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;align-content:center}
.security-points span{position:relative;padding-left:20px;color:#909cac;font-size:14px;line-height:1.5}
.security-points span::before{content:"";position:absolute;left:0;top:.58em;width:6px;height:6px;border-radius:50%;background:#6f9de9;box-shadow:0 0 10px rgba(111,157,233,.45)}

.footer{padding:36px 0 52px;color:#596779;font-size:12px}
.footerrow{display:flex;justify-content:space-between;gap:24px}

@media(max-width:1380px){
  .links{gap:24px}
  .hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(450px,.75fr)}
  h1{font-size:clamp(72px,6.6vw,98px)}
  .hero-art{width:540px;height:470px;transform:translateX(0)}
  .art-left{width:260px}.art-top{width:250px}.art-bottom{width:270px}
  .features-grid{grid-template-columns:repeat(2,1fr)}
  .workflow-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:920px){
  .wrap{width:min(var(--max),calc(100% - 42px))}
  .navinner{width:calc(100% - 42px);grid-template-columns:1fr auto}.links{display:none}.nav-login{display:none}
  .hero{padding-top:62px;min-height:auto}.hero-grid{grid-template-columns:1fr}.hero-main{padding-bottom:8px}.hero-art{height:360px;max-width:520px;margin:0 auto;width:100%;transform:scale(.88);transform-origin:top center}
  h1 span{white-space:normal}
  .split-heading,.assistant-grid,.export-layout,.security-panel{grid-template-columns:1fr;gap:38px}
  .export-heading .section-title{white-space:normal}
  .security-points{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .wrap{width:min(var(--max),calc(100% - 28px))}
  .navinner{width:calc(100% - 28px)}
  .topnav{height:74px}.brand{font-size:14px;letter-spacing:.13em}.brand-mark{width:23px;height:27px}.btn.compact{padding:9px 12px;font-size:12px}
  .hero{padding-top:44px}.hero-note{font-size:12px}h1{font-size:clamp(51px,15.6vw,72px);line-height:.91}h1 span{margin-top:17px}.lead{font-size:16px;margin-top:27px}.btn.large{width:100%;min-height:54px}.cta{display:grid;grid-template-columns:1fr}
  .hero-art{height:270px;transform:scale(.68);margin-bottom:-70px}
  .features-grid,.workflow-grid,.export-grid,.security-points{grid-template-columns:1fr}
  .feature-card{min-height:165px}.content-sec{padding:78px 0}.section-title{font-size:42px}.security-panel .section-title{font-size:40px}
  .footerrow{flex-direction:column}
}

/* v0.9.8 approved-composition refinements */
.export-heading .kicker{display:none}
.hero-main h1,.hero-main .lead,.hero-main .cta,.hero-main .hero-note{position:relative;z-index:4}
@media(min-width:1450px){.hero-art{margin-right:8px}.feature-card:nth-child(4) h2{max-width:310px}}

/* v0.9.9 — unified PravoAuditor brand mark */
.brand-mark{width:31px;height:34px;color:#f4f7fb;display:grid;place-items:center}
.brand-mark svg{width:100%;height:100%;display:block;filter:drop-shadow(0 0 7px rgba(162,199,255,.10))}
.hero-art{position:relative;z-index:1;height:520px;width:650px;justify-self:end;transform:translateX(-3%);filter:none}
.hero-brand-mark{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;display:block;filter:drop-shadow(0 36px 58px rgba(0,0,0,.48))}
.art-halo,.art-panel,.art-spine,.art-edge{display:none!important}
@media(max-width:1380px){.hero-art{width:550px;height:470px;transform:translateX(0)}}
@media(max-width:920px){.hero-art{height:360px;max-width:520px;margin:0 auto;width:100%;transform:scale(.9);transform-origin:top center}}
@media(max-width:620px){.hero-art{height:270px;transform:scale(.72);margin-bottom:-62px}}

/* v0.9.10 — reference artwork from the approved visual concept */
.brand-mark{width:31px;height:34px;display:grid;place-items:center}
.brand-mark img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 8px rgba(170,205,255,.10))}
.hero-art{height:530px;width:650px;overflow:visible;transform:translateX(-1%)}
.hero-brand-mark.reference-mark{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  border:0;
  filter:drop-shadow(0 36px 64px rgba(0,0,0,.50));
  opacity:1;
}
@media(max-width:1380px){.hero-art{width:550px;height:480px;transform:translateX(0)}}
@media(max-width:920px){.hero-art{height:365px;max-width:520px;margin:0 auto;width:100%;transform:scale(.9);transform-origin:top center}}
@media(max-width:620px){.hero-art{height:270px;transform:scale(.72);margin-bottom:-62px}}

/* v0.9.11 — integrated transparent reference mark */
.hero-art{
  position:relative;
  isolation:isolate;
}
.hero-art::before{
  content:"";
  position:absolute;
  left:4%;
  right:-7%;
  top:3%;
  bottom:-5%;
  z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 57% 47%, rgba(45,104,178,.16) 0%, rgba(24,65,116,.08) 33%, rgba(4,14,27,0) 70%),
    radial-gradient(ellipse at 52% 92%, rgba(87,151,234,.12) 0%, rgba(14,35,66,0) 54%);
  filter:blur(18px);
}
.hero-art::after{
  content:"";
  position:absolute;
  left:12%;
  right:4%;
  bottom:2%;
  height:5px;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(105,170,255,.10) 22%,rgba(166,211,255,.20) 52%,rgba(78,136,222,.08) 78%,transparent);
  filter:blur(5px);
}
.hero-brand-mark.reference-mark{
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:transparent!important;
  filter:
    drop-shadow(0 34px 55px rgba(0,0,0,.52))
    drop-shadow(0 0 20px rgba(77,137,220,.08));
  transform:scale(1.035) translateY(3px);
}


/* v0.9.12 — header-brand unclipping + hero mark refinement */
.topnav{overflow:visible}
.navinner{padding-left:12px;padding-right:8px}
.brand{margin-left:2px}
.brand-mark{width:36px;height:36px;overflow:visible;padding:2px 1px 2px 4px;flex:0 0 auto}
.brand-mark img{display:block;width:100%;height:100%;object-fit:contain;transform:translateX(1px);filter:drop-shadow(0 0 8px rgba(170,205,255,.10))}
.hero-brand-mark.reference-mark{filter:brightness(1.07) contrast(1.08) saturate(1.03) drop-shadow(0 36px 60px rgba(0,0,0,.53)) drop-shadow(0 0 22px rgba(77,137,220,.10));transform:scale(1.05) translate(4px,6px)}
@media(max-width:920px){.navinner{padding-left:4px;padding-right:0}.brand-mark{width:30px;height:30px;padding-left:3px}.brand{margin-left:0}}
@media(max-width:620px){.brand-mark{width:26px;height:26px;padding-left:2px}.brand{gap:10px}}


/* v0.9.13 — darker approved hero logo */
.hero-brand-mark.reference-mark{filter:brightness(.95) contrast(1.03) saturate(.97) drop-shadow(0 34px 58px rgba(0,0,0,.58)) drop-shadow(0 0 18px rgba(72,126,210,.08));transform:scale(1.035) translate(2px,4px)}


/* v0.9.14 — softer hero mark edges and reduced shine */
.hero-brand-mark.reference-mark{filter:brightness(.90) contrast(.98) saturate(.90) drop-shadow(0 32px 56px rgba(0,0,0,.56)) drop-shadow(0 0 12px rgba(70,125,210,.06));transform:scale(1.03) translate(2px,4px)}
