/* ============================================================================
   Neva — the designed landing pages (/neva/ and /neva/ro/)
   IMPERICORP X SRL

   Loaded ONLY on those two pages, instead of neva-wordpress.css. Every rule is
   scoped to `.neva-page .nv-landing`, the wrapper the pasted fragment opens
   with, so none of it can reach the rest of the site — or the eight document
   pages under /neva/, which keep their own stylesheet.
   ========================================================================== */

@font-face{font-family:'NevaSerif';src:url(fonts/cormorant-ext.woff2) format('woff2');font-weight:300 700;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}

@font-face{font-family:'NevaSerif';src:url(fonts/cormorant.woff2) format('woff2');font-weight:300 700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

@font-face{font-family:'NevaSans';src:url(fonts/inter-ext.woff2) format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}

@font-face{font-family:'NevaSans';src:url(fonts/inter.woff2) format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}


/* Palette lifted from the app itself: parchment, warm ink, liturgical gold,
   and the icon's navy for the dark bands. */

.neva-page .nv-landing{--nvl-bg:#F7F3EC; --nvl-bg-2:#EFE9DC; --nvl-card:#FDFBF7;
  --nvl-ink:#1C1917; --nvl-body:#6B6459; --nvl-muted:#918A7C;
  --nvl-line:#E6DFD1; --nvl-line-2:#D8CFBC;
  --nvl-gold:#8B6B3D; --nvl-gold-hi:#A8802F; --nvl-gold-tint:#F0E4C9;
  --nvl-navy:#0E1B33; --nvl-navy-2:#16294A; --nvl-feast:#7A2430;
  --nvl-wrap:1160px;}
.neva-page .nv-landing *, .neva-page .nv-landing *::before, .neva-page .nv-landing *::after{box-sizing:border-box}
.neva-page{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
.neva-page .nv-landing{margin:0;background:var(--nvl-bg);color:var(--nvl-ink);
  font-family:'NevaSans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
.neva-page .nv-landing .wrap{max-width:var(--nvl-wrap);margin:0 auto;padding:0 24px}
.neva-page .nv-landing .narrow{max-width:760px;margin:0 auto}
.neva-page .nv-landing h1, .neva-page .nv-landing h2, .neva-page .nv-landing h3{margin:0;font-family:'NevaSerif',Georgia,serif;font-weight:600;
  line-height:1.14;letter-spacing:-0.005em;color:var(--nvl-ink)}
.neva-page .nv-landing p{margin:0 0 16px;color:var(--nvl-body)}
.neva-page .nv-landing a{color:inherit}
.neva-page .nv-landing img{max-width:100%;display:block}
.neva-page .nv-landing .eyebrow{font-size:11.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--nvl-gold)}
.neva-page .nv-landing .btn{display:inline-flex;align-items:center;gap:9px;background:var(--nvl-ink);color:var(--nvl-bg);
  font-weight:560;font-size:15.5px;padding:14px 28px;border-radius:999px;text-decoration:none}
.neva-page .nv-landing .btn:hover{background:#000}
.neva-page .nv-landing .btn-gold{background:var(--nvl-gold-tint);color:#5A441E;font-weight:700;font-size:14px;
  padding:11px 22px;border-radius:999px;text-decoration:none;display:inline-flex;gap:8px;align-items:center}
.neva-page .nv-landing .btn-gold:hover{filter:brightness(.97)}
.neva-page .nv-landing .textlink{display:inline-flex;align-items:center;gap:7px;font-weight:650;font-size:14.5px;
  color:var(--nvl-ink);text-decoration:none;padding:6px 0;min-height:24px}
.neva-page .nv-landing .textlink:hover{color:var(--nvl-gold)}

/* ── Header ───────────────────────────────────────── */

.neva-page .nv-landing .topbar{border-bottom:1px solid var(--nvl-line);background:rgba(247,243,236,.9);
  backdrop-filter:blur(10px);position:sticky;top:0;z-index:20}
.neva-page .nv-landing .topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px}
.neva-page .nv-landing .brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none}
.neva-page .nv-landing .brand img{width:32px;height:32px;border-radius:9px}
.neva-page .nv-landing .brand b{font-family:'NevaSerif',serif;font-size:21px;font-weight:600;letter-spacing:.08em}
.neva-page .nv-landing .topnav{display:flex;align-items:center;gap:22px}
.neva-page .nv-landing .topnav a{font-size:14px;color:var(--nvl-body);text-decoration:none;padding:5px 0;min-height:24px}
.neva-page .nv-landing .topnav a:hover{color:var(--nvl-ink)}
@media (max-width:860px){

.neva-page .nv-landing .topnav a:not(.btn-gold){display:none}
}


/* ── Hero ─────────────────────────────────────────── */

.neva-page .nv-landing .hero{text-align:center;padding-top:clamp(44px,6vw,72px)}
.neva-page .nv-landing .hero h1{font-size:clamp(2.3rem,5.6vw,3.9rem);max-width:17ch;margin:18px auto 0;font-weight:600}
.neva-page .nv-landing .hero .sub{margin:22px auto 0;max-width:60ch;font-size:17px}
.neva-page .nv-landing .badges{display:inline-flex;gap:0;border:1px solid var(--nvl-line-2);border-radius:14px;
  overflow:hidden;margin:30px 0 26px;background:var(--nvl-card)}
.neva-page .nv-landing .badges span{padding:11px 20px;font-size:12.5px;color:var(--nvl-body);font-weight:560;
  border-right:1px solid var(--nvl-line)}
.neva-page .nv-landing .badges span:last-child{border-right:0}
@media (max-width:560px){

.neva-page .nv-landing .badges{flex-direction:column}
.neva-page .nv-landing .badges span{border-right:0;border-bottom:1px solid var(--nvl-line)}
}

.neva-page .nv-landing .stage{position:relative;margin-top:40px;padding:46px 0 26px;overflow:hidden}
.neva-page .nv-landing .stage::before{content:'';position:absolute;inset:0;
  background:radial-gradient(48% 58% at 20% 45%,#F6E7C0 0%,transparent 64%),
             radial-gradient(48% 58% at 80% 45%,#E4EDE2 0%,transparent 64%),
             radial-gradient(64% 72% at 50% 55%,#FBF4E3 0%,transparent 72%)}
.neva-page .nv-landing .stagerow{position:relative;z-index:1;display:flex;align-items:flex-start;
  justify-content:center;gap:32px}
.neva-page .nv-landing .floatcard{width:252px;margin-top:70px;background:var(--nvl-card);border:1px solid var(--nvl-line);
  border-radius:15px;padding:16px 17px;text-align:left;
  box-shadow:0 10px 30px rgba(90,68,30,.07)}
.neva-page .nv-landing .floatcard .lbl{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--nvl-gold);font-weight:650;margin-bottom:9px}
.neva-page .nv-landing .floatcard p{font-family:'NevaSerif',serif;font-size:19px;line-height:1.38;
  margin:0;color:var(--nvl-ink)}
.neva-page .nv-landing .floatcard .cite{margin-top:9px;font-size:12.5px;color:var(--nvl-gold);font-weight:650}
.neva-page .nv-landing .floatcard dl{margin:0;font-size:13.5px}
.neva-page .nv-landing .floatcard dt{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--nvl-muted);margin-top:9px}
.neva-page .nv-landing .floatcard dd{margin:2px 0 0;color:var(--nvl-ink)}
@media (max-width:980px){

.neva-page .nv-landing .floatcard{display:none}
}

.neva-page .nv-landing .phone{flex:0 0 auto;width:294px;border-radius:38px;background:#100D0A;padding:8px;
  box-shadow:0 26px 60px rgba(70,52,22,.22)}
.neva-page .nv-landing .phone.sm{width:250px;border-radius:32px;padding:7px}
.neva-page .nv-landing .phone img{border-radius:31px;width:100%}
.neva-page .nv-landing .phone.sm img{border-radius:26px}
.neva-page .nv-landing .microline{position:relative;z-index:1;margin-top:26px;font-size:13.5px;color:var(--nvl-muted)}

/* ── Sections ─────────────────────────────────────── */

.neva-page .nv-landing section{padding:clamp(58px,7.5vw,94px) 0}
.neva-page .nv-landing .center{text-align:center}
.neva-page .nv-landing .center p{margin-left:auto;margin-right:auto}
.neva-page .nv-landing h2{font-size:clamp(1.9rem,3.6vw,2.7rem)}
.neva-page .nv-landing .sub{max-width:62ch;font-size:16.5px;margin-top:14px}
.neva-page .nv-landing .band{background:linear-gradient(90deg,#E9F0E6 0%,#FAF4E6 50%,#F6E9C8 100%)}
.neva-page .nv-landing .band-soft{background:var(--nvl-bg-2)}

/* ── Labels around a phone ────────────────────────── */

.neva-page .nv-landing .tapgrid{display:grid;grid-template-columns:1fr auto 1fr;gap:26px;align-items:center;margin-top:46px}
@media (max-width:980px){

.neva-page .nv-landing .tapgrid{grid-template-columns:1fr;gap:18px;justify-items:center}
}

.neva-page .nv-landing .taplist{display:flex;flex-direction:column;gap:14px}
.neva-page .nv-landing .taplist.l{align-items:flex-end;text-align:right}
@media (max-width:980px){

.neva-page .nv-landing .taplist, .neva-page .nv-landing .taplist.l{align-items:center;text-align:center}
}

.neva-page .nv-landing .tapitem{display:inline-flex;align-items:center;gap:11px;background:var(--nvl-card);
  border:1px solid var(--nvl-line);border-radius:999px;padding:11px 20px;
  font-size:14px;font-weight:600}
.neva-page .nv-landing .tapitem .ic{width:22px;height:22px;border-radius:7px;background:var(--nvl-gold-tint);
  flex:0 0 auto;display:grid;place-items:center;color:var(--nvl-gold)}
.neva-page .nv-landing .linkcols{display:grid;grid-template-columns:1fr 1fr;gap:6px 48px;max-width:720px;margin:46px auto 0}
@media (max-width:620px){

.neva-page .nv-landing .linkcols{grid-template-columns:1fr}
}

.neva-page .nv-landing .linkcols a{display:flex;gap:11px;align-items:center;font-size:14px;font-weight:600;
  text-decoration:none;padding:7px 0;min-height:24px}
.neva-page .nv-landing .linkcols a::before{content:'';width:3px;height:15px;border-radius:2px;background:var(--nvl-gold-hi)}

/* ── Zig-zag ──────────────────────────────────────── */

.neva-page .nv-landing .zig{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;margin-top:54px}
.neva-page .nv-landing .zig.rev .txt{order:2}
@media (max-width:900px){

.neva-page .nv-landing .zig{grid-template-columns:1fr;gap:30px}
.neva-page .nv-landing .zig.rev .txt{order:0}
}

.neva-page .nv-landing .zig .shotwrap{display:flex;justify-content:center}
.neva-page .nv-landing .zig h3{font-size:1.65rem;margin-bottom:12px}
.neva-page .nv-landing .zig p{font-size:15.5px;margin:0 0 14px}
.neva-page .nv-landing .zig ul{list-style:none;padding:0;margin:0}
.neva-page .nv-landing .zig li{font-size:14.5px;color:var(--nvl-body);padding:7px 0;border-top:1px solid var(--nvl-line);
  display:flex;gap:10px}
.neva-page .nv-landing .zig li::before{content:'·';color:var(--nvl-gold);font-weight:800}

/* ── Ask band ─────────────────────────────────────── */

.neva-page .nv-landing .modes{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:760px;margin:34px auto 0}
@media (max-width:700px){

.neva-page .nv-landing .modes{grid-template-columns:1fr}
}

.neva-page .nv-landing .mode{background:var(--nvl-card);border:1px solid var(--nvl-line);border-radius:16px;padding:22px 22px}
.neva-page .nv-landing .mode h3{font-size:1.2rem;margin-bottom:9px}
.neva-page .nv-landing .mode p{font-size:14.5px;margin:0 0 12px}
.neva-page .nv-landing .mode .ex{font-size:13px;color:var(--nvl-muted);border-top:1px solid var(--nvl-line);padding-top:11px}
.neva-page .nv-landing .mode .ex b{display:block;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--nvl-gold);margin-bottom:6px;font-weight:650}
.neva-page .nv-landing .askshots{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;margin-top:44px}
.neva-page .nv-landing .askshots .phone{width:224px}

/* ── Grid cards ───────────────────────────────────── */

.neva-page .nv-landing .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
@media (max-width:900px){

.neva-page .nv-landing .grid3{grid-template-columns:1fr 1fr}
}

@media (max-width:600px){

.neva-page .nv-landing .grid3{grid-template-columns:1fr}
}

.neva-page .nv-landing .gcard{background:var(--nvl-card);border:1px solid var(--nvl-line);border-radius:16px;padding:24px 22px}
.neva-page .nv-landing .gcard h3{font-size:1.18rem;margin-bottom:9px}
.neva-page .nv-landing .gcard p{font-size:14.5px;margin:0}

/* ── FAQ ──────────────────────────────────────────── */

.neva-page .nv-landing .faq{max-width:780px;margin:38px auto 0}
.neva-page .nv-landing .faq h3{font-size:1.15rem;margin:28px 0 8px}
.neva-page .nv-landing .faq p{font-size:15px;margin:0 0 10px}

/* ── Footer ───────────────────────────────────────── */

.neva-page .nv-landing footer.site{border-top:1px solid var(--nvl-line);padding:54px 0 34px;background:var(--nvl-bg-2)}
.neva-page .nv-landing .ftop{display:flex;justify-content:space-between;gap:26px;flex-wrap:wrap;align-items:flex-start}
.neva-page .nv-landing .ftop p{font-size:14.5px;max-width:42ch;margin:12px 0 0}
.neva-page .nv-landing .fcols{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:38px;
  padding-top:32px;border-top:1px solid var(--nvl-line)}
@media (max-width:820px){

.neva-page .nv-landing .fcols{grid-template-columns:1fr 1fr}
}

@media (max-width:480px){

.neva-page .nv-landing .fcols{grid-template-columns:1fr}
}

.neva-page .nv-landing .fcols h4{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nvl-gold);
  margin:0 0 13px;font-weight:650;font-family:'NevaSans',sans-serif}
.neva-page .nv-landing .fcols a{display:block;font-size:14px;color:var(--nvl-body);text-decoration:none;
  padding:5px 0;min-height:24px}
.neva-page .nv-landing .fcols a:hover{color:var(--nvl-ink)}
.neva-page .nv-landing .fbot{margin-top:34px;padding-top:24px;border-top:1px solid var(--nvl-line);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-size:13px;color:var(--nvl-muted)}
.neva-page .nv-landing .fbot a{color:var(--nvl-muted);text-decoration:none;padding:5px 0;display:inline-block;min-height:24px}
.neva-page .nv-landing :focus-visible{outline:2px solid var(--nvl-gold);outline-offset:3px;border-radius:6px}


/* ============================================================================
   Additions for the WordPress context — everything above this line is the
   original standalone page's CSS, mechanically scoped.
   ========================================================================== */

/* --- Contrast ------------------------------------------------------------
   Two of the original tokens fell below WCAG AA on parchment: the muted grey
   was 3.1:1 and the gold 4.45:1, both used for small text. */
.neva-page .nv-landing{
  --nvl-muted:#756E60;   /* 4.6:1 */
  --nvl-gold:#836438;    /* 4.9:1 */
  --nvl-gold-hi:#654B24; /* hover darkens */
}

/* --- Breaking out of the theme's content column --------------------------
   Astra wraps page content in a padded, max-width container. The landing has
   full-width colour bands, so the wrapper spans the viewport and each .wrap
   inside it re-imposes the 1160px measure. */
.neva-page .nv-landing{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding-bottom:0;
}
body.neva-landing{ overflow-x:hidden; overflow-x:clip; }

/* The page title is typed into WordPress as "Neva"; the hero carries the real
   headline, so the theme's title is hidden and the hero <h1> stands alone. */
body.neva-landing .entry-header,
body.neva-landing .entry-title{ display:none; }
body.neva-landing .entry-content{ max-width:none; padding:0; }

/* --- Small pieces the standalone page did with inline styles -------------- */
.neva-page .nv-landing .mt{ margin-top:14px; }

.neva-page .nv-landing .cta-note{
  display:block;
  width:max-content;
  max-width:100%;
  margin:6px auto 0;
  padding:12px 26px;
  border:1px solid var(--nvl-line-2);
  border-radius:999px;
  background:var(--nvl-card);
  color:var(--nvl-ink);
  font-size:14.5px;
  font-weight:600;
}

.neva-page .nv-landing .note{ margin-top:30px; }
.neva-page .nv-landing .note p{
  max-width:62ch;
  margin:0 auto;
  font-size:14.5px;
  color:var(--nvl-body);
}

/* --- Pro ------------------------------------------------------------------ */
.neva-page .nv-landing .prolist{ margin-top:30px; }
.neva-page .nv-landing .prolist ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:2px;
}
.neva-page .nv-landing .prolist li{
  display:flex;
  gap:12px;
  padding:13px 0;
  border-top:1px solid var(--nvl-line);
  font-size:15.5px;
  color:var(--nvl-body);
}
.neva-page .nv-landing .prolist li::before{
  content:'';
  flex:0 0 auto;
  width:3px;
  height:19px;
  margin-top:3px;
  border-radius:2px;
  background:var(--nvl-gold-hi);
}
.neva-page .nv-landing .fine{
  font-size:13.5px;
  line-height:1.7;
  color:var(--nvl-muted);
  margin:20px 0 0;
}
.neva-page .nv-landing .fine a{ color:var(--nvl-body); text-decoration:underline; }
.neva-page .nv-landing .fine a:hover{ color:var(--nvl-gold-hi); }

/* --- Help list ------------------------------------------------------------ */
.neva-page .nv-landing .helplist{
  list-style:none;
  margin:26px auto 0;
  padding:0;
  display:grid;
  gap:2px;
  max-width:460px;
  text-align:left;
}
.neva-page .nv-landing .helplist a{
  display:flex;
  gap:11px;
  align-items:center;
  padding:11px 0;
  border-top:1px solid var(--nvl-line);
  font-size:14.5px;
  font-weight:600;
  text-decoration:none;
}
.neva-page .nv-landing .helplist a::before{
  content:'';
  width:3px;
  height:15px;
  border-radius:2px;
  background:var(--nvl-gold-hi);
}
.neva-page .nv-landing .helplist a:hover{ color:var(--nvl-gold-hi); }

/* --- Footer block --------------------------------------------------------- */
.neva-page .nv-landing .ftop{ align-items:center; }
.neva-page .nv-landing footer.site .brand{ pointer-events:none; }
.neva-page .nv-landing .attr{
  margin-top:30px;
  padding-top:24px;
  border-top:1px solid var(--nvl-line);
}
.neva-page .nv-landing .attr p{ margin:0 0 10px; font-size:13px; color:var(--nvl-muted); }
.neva-page .nv-landing .attr strong{ color:var(--nvl-body); }
.neva-page .nv-landing .fbot{ display:block; }

/* --- Print ---------------------------------------------------------------- */
@media print{
  body.neva-landing .site-header,
  body.neva-landing .site-footer,
  body.neva-landing [data-elementor-type="header"],
  body.neva-landing [data-elementor-type="footer"]{ display:none !important; }
  .neva-page .nv-landing .stage::before,
  .neva-page .nv-landing .band,
  .neva-page .nv-landing .band-soft{ background:none !important; }
}

/* Two columns, not four: the original page had more link groups. */
.neva-page .nv-landing .fcols{ grid-template-columns:repeat(2,minmax(0,1fr)); max-width:720px; }
@media (max-width:480px){ .neva-page .nv-landing .fcols{ grid-template-columns:1fr; } }


/* ============================================================================
   Sitting inside Astra — measured against the live theme, not guessed.
   ========================================================================== */

/* The landing brings its own header and footer, so the theme's are hidden on
   these two pages only. The eight document pages keep the company chrome. */
body.neva-landing .site-header,
body.neva-landing #masthead,
body.neva-landing #colophon,
body.neva-landing .site-footer,
body.neva-landing [data-elementor-type="header"],
body.neva-landing [data-elementor-type="footer"]{ display:none !important; }

/* Astra runs the "separate container" layout: a grey page background with the
   article as a white card, 58px rails above and below and a 20px gutter. With
   the page title hidden that chrome is just an empty band above and below the
   landing, so it is flattened here. */
body.neva-landing{ background:#F7F3EC; }
body.neva-landing #content,
body.neva-landing #content > .ast-container,
body.neva-landing .site-content > .ast-container{
  padding:0; margin:0; max-width:none; width:auto;
}
body.neva-landing #primary,
body.neva-landing .content-area{ padding:0; margin:0; }
body.neva-landing #main{ padding:0; margin:0; }
body.neva-landing article.ast-article-single,
body.neva-landing .ast-article-single{
  background:transparent; padding:0; margin:0; border:0; box-shadow:none;
}
body.neva-landing .entry-content{ max-width:none; padding:0; margin:0; }

/* The sticky top bar has to clear the WordPress admin bar when you are
   logged in. Visitors never see this. */
body.admin-bar .neva-page .nv-landing .topbar{ top:32px; }
@media (max-width:782px){
  body.admin-bar .neva-page .nv-landing .topbar{ top:46px; }
}

/* The language link keeps its pill on small screens, where the section
   anchors are hidden. */
.neva-page .nv-landing .topnav .btn-gold{ margin-left:6px; }
