:root {
	--wd-text-font: Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: #102838;
	--wd-text-font-size: 16px;
	--wd-title-font: Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 600;
	--wd-title-color: #102838;
	--wd-entities-title-font: Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 600;
	--wd-entities-title-color: #102838;
	--wd-entities-title-color-hover: #29475c;
	--wd-alternative-font: Arial, Helvetica, sans-serif;
	--wd-widget-title-font: Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 600;
	--wd-widget-title-transform: none;
	--wd-widget-title-color: #102838;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 600;
	--wd-header-el-transform: none;
	--wd-header-el-font-size: 12px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: #102838;
	--wd-alternative-color: #29475c;
	--btn-default-bgcolor: #102838;
	--btn-default-bgcolor-hover: #29475c;
	--btn-accented-bgcolor: #102838;
	--btn-accented-bgcolor-hover: #29475c;
	--wd-form-brd-width: 1px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #102838;
	--wd-link-color-hover: #29475c;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: #ffffff;
	background-image: none;
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1390px;
--wd-form-brd-radius: 0px;
--btn-default-color: #fff;
--btn-default-color-hover: #fff;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 0px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-default-box-shadow-active: none;
--btn-default-bottom: 0px;
--btn-accented-brd-radius: 0px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--btn-accented-box-shadow-active: none;
--btn-accented-bottom: 0px;
--wd-brd-radius: 0px;
}

@media (min-width: 1390px) {
section.elementor-section.wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}


.wd-page-title {
background-color: #0a0a0a;
}

/* =========================================================
   NAVARIS – WoodMart + Elementor custom CSS
   Paste into: WoodMart > Theme Settings > Custom CSS > Global Custom CSS
   All page sections carry the class "nv" (Elementor > Advanced > CSS Classes).
   Layout of .nv sections is controlled here, so spacing changes are made in this file.
   ========================================================= */

/* ---------- 1. Tokens + WoodMart variables ---------- */
html body {
  --nv-navy: #102838;
  --nv-navy-deep: #0d2333;
  --nv-muted: #586671;
  --nv-line: #d9e0e4;
  --nv-band: #eef2f4;
  --nv-font: Arial, Helvetica, sans-serif;
  --nv-max: 1360px;   /* ŠIRINA SADRŽAJA: header, sekcije i footer koriste istu vrijednost */

  --wd-text-font: Arial, Helvetica, sans-serif;
  --wd-title-font: Arial, Helvetica, sans-serif;
  --wd-entities-title-font: Arial, Helvetica, sans-serif;
  --wd-alternative-font: Arial, Helvetica, sans-serif;
  --wd-widget-title-font: Arial, Helvetica, sans-serif;
  --wd-header-el-font: Arial, Helvetica, sans-serif;
  --wd-primary-color: #102838;
  --wd-alternative-color: #102838;
  --wd-link-color: #102838;
  --wd-link-color-hover: #29475c;
  --wd-text-color: #102838;
  --wd-title-color: #102838;
  --wd-brd-radius: 0px;
  --wd-form-brd-radius: 0px;
  --btn-accented-bgcolor: #102838;
  --btn-accented-bgcolor-hover: #29475c;
}
html { scroll-behavior: smooth; scroll-padding-top: 30px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body { font-family: var(--nv-font); color: var(--nv-navy); background: #fff; }

/* WoodMart wrapper: no top/bottom gap and no page title on Elementor pages */
.elementor-page .main-page-wrapper,
.elementor-page .wd-content-layout { padding-top: 0 !important; padding-bottom: 0 !important; }
.elementor-page .page-title,
.elementor-page .wd-page-title { display: none !important; }

/* ---------- 2. Reset Elementor container spacing inside .nv ---------- */
.nv.e-con, .nv .e-con {
  --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px;
  --padding-block-start: 0px; --padding-block-end: 0px; --padding-inline-start: 0px; --padding-inline-end: 0px;
  --gap: 0px; --row-gap: 0px; --column-gap: 0px; --widgets-spacing: 0px; --widgets-spacing-row: 0px; --widgets-spacing-column: 0px;
  --margin-top: 0px; --margin-bottom: 0px;
  padding: 0 !important;
  gap: 0 !important;
}
.nv .elementor-widget:not(:last-child) { margin-bottom: 0; margin-block-end: 0; }
.nv .elementor-widget-container { margin: 0; padding: 0; }
.nv, .nv p, .nv li, .nv label { font-family: var(--nv-font); }
.nv p { margin: 0 0 22px; }
.nv p:last-child { margin-bottom: 0; }
.nv a { color: inherit; text-decoration: none; }
.nv a:focus-visible, .nv button:focus-visible { outline: 2px solid #6596ad; outline-offset: 5px; }

/* Section shell + 90% / 1360px content wrapper */
.nv.e-con { --width: 100%; width: 100%; max-width: none; position: relative; }
.nv .e-con.nv-wrap,
.nv .e-con.nv-footer-top,
.nv .e-con.nv-footer-bottom {
  --width: 90%; width: 90% !important; max-width: var(--nv-max) !important;
  margin-left: auto !important; margin-right: auto !important;
  --margin-left: auto; --margin-right: auto;
}
.nv .nv-section { padding-top: 105px !important; padding-bottom: 105px !important; }

/* ---------- 3. Typography ---------- */
.nv .elementor-heading-title,
.nv h1, .nv h2, .nv h3 {
  font-family: var(--nv-font); font-weight: 600; color: inherit; margin: 0; text-transform: none;
}
.nv .nv-h1 .elementor-heading-title, .nv h1 { font-size: clamp(54px, 5.8vw, 88px); line-height: 1.02; letter-spacing: -.045em; }
.nv .nv-h2 .elementor-heading-title, .nv h2 { font-size: clamp(36px, 4vw, 62px); line-height: 1.07; letter-spacing: -.045em; }
.nv .nv-h3 .elementor-heading-title, .nv h3 { font-size: 27px; line-height: 1.2; letter-spacing: -.025em; }
.nv .nv-eyebrow .elementor-heading-title {
  font-size: 10px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; line-height: 1.65; margin: 0 0 22px;
}
.nv .elementor-widget-text-editor { color: var(--nv-muted); font-size: 16px; line-height: 1.65; }
.nv .nv-link .elementor-heading-title {
  display: inline-block; font-size: 13px; font-weight: 400; letter-spacing: 0; line-height: 1.65;
  border-bottom: 1px solid currentColor; padding-bottom: 8px;
}
.nv .nv-link .elementor-heading-title span { margin-left: 35px; }

/* ---------- 4. HOME – Hero ---------- */
.nv.nv-hero {
  background-color: var(--nv-navy); color: #fff; min-height: 690px; overflow: hidden;
  background-size: cover; background-position: 70% center;
}
.nv.nv-hero::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background:
    linear-gradient(90deg, #0d2333 0%, #0d2333f5 25%, #0d2333a6 48%, #0d233325 78%),
    linear-gradient(0deg, #0d2333d9, transparent 35%);
}
.nv.nv-hero > .e-con, .nv.nv-hero > .e-con-inner { position: relative; z-index: 1; }
.nv.nv-hero { display: flex !important; flex-direction: column !important; }
.nv .nv-hero-content { padding: 88px 0 92px !important; flex: 1 0 auto; justify-content: flex-start; }
.nv .nv-hero-content .nv-h1 .elementor-heading-title { max-width: 760px; }
.nv .nv-hero-statement .elementor-heading-title { font-size: 17px; font-weight: 600; letter-spacing: 0; line-height: 1.65; margin: 29px 0 13px; }
.nv .nv-hero-copy { font-size: 15px; max-width: 365px; color: #c6d2da; line-height: 1.7; margin-bottom: 22px; }
.nv .nv-hero-cta .elementor-heading-title {
  display: inline-flex; align-items: center; gap: 55px; border-bottom: 1px solid #ffffff99;
  padding: 12px 0; font-size: 13px; font-weight: 600; letter-spacing: 0; line-height: 1.65;
}
.nv .nv-hero-cta .elementor-heading-title a { display: inline-flex; align-items: center; gap: 55px; color: #fff; }
.nv .nv-hero-bottom {
  flex-direction: row !important; justify-content: space-between; gap: 25px !important;
  border-top: 1px solid #ffffff40; padding: 22px 0 !important;
}
.nv .nv-hero-bottom .elementor-heading-title {
  font-size: 9px; font-weight: 400; text-transform: uppercase; letter-spacing: .17em; color: #c8d5de; line-height: 1.65;
}

/* ---------- 5. HOME – Credentials ---------- */
.nv .nv-credentials {
  display: grid !important; grid-template-columns: 1fr 1fr 1fr; gap: 30px !important;
  padding: 34px 0 !important; border-bottom: 1px solid var(--nv-line);
}
.nv .nv-credentials .elementor-widget-text-editor { color: var(--nv-navy); }
.nv .nv-credentials p { margin: 0; padding-right: 25px; font-size: 11px; line-height: 1.6; color: var(--nv-muted); }
.nv .nv-credentials > .elementor-element + .elementor-element p { border-left: 1px solid var(--nv-line); padding-left: 35px; }
.nv .nv-credentials strong { font-size: 27px; display: block; font-weight: 600; letter-spacing: -.02em; line-height: 1.4; color: var(--nv-navy); margin-bottom: 3px; }
.nv .nv-credentials span { display: block; font-size: 11px; color: var(--nv-muted); margin-top: 3px; }

/* ---------- 6. Generic 2-column layouts ---------- */
.nv .nv-cols {
  display: grid !important; grid-template-columns: 1fr 1fr; gap: 7vw !important; align-items: start;
}
.nv .nv-cols > .e-con { --width: 100%; width: 100% !important; min-width: 0; }
.nv .nv-intro { border-bottom: 1px solid var(--nv-line); }
.nv .nv-approach-grid, .nv .nv-contact-grid { gap: 10vw !important; }
.nv .nv-lead p:first-child { font-size: 20px; color: var(--nv-navy); line-height: 1.6; }
.nv .nv-intro-text { max-width: 550px; }
.nv .nv-audiences {
  display: grid !important; grid-template-columns: 1fr 1fr; gap: 30px !important;
  margin-top: 40px !important; border-top: 1px solid var(--nv-line); padding-top: 25px !important;
}
.nv .nv-audiences h3 { font-size: 13px; font-weight: 700; letter-spacing: 0; line-height: 1.4; margin-bottom: 13px; color: var(--nv-navy); }
.nv .nv-audiences p { font-size: 14px; }

/* ---------- 7. HOME – Services ---------- */
.nv .nv-section-heading {
  flex-direction: row !important; justify-content: space-between; align-items: flex-end; gap: 40px !important; margin-bottom: 55px !important;
}
.nv .nv-section-heading > .elementor-widget-text-editor { max-width: 350px; font-size: 14px; }
.nv .nv-service {
  display: grid !important; grid-template-columns: 60px .95fr 1.05fr; gap: 30px !important;
  padding: 40px 0 !important; border-top: 1px solid var(--nv-line);
}
.nv .nv-service .nv-number .elementor-heading-title { font-size: 12px; font-weight: 700; letter-spacing: 0; color: var(--nv-navy); line-height: 1.65; }
.nv .nv-service .nv-h3 .elementor-heading-title { max-width: 350px; font-size: 28px; }
.nv .nv-service .elementor-widget-text-editor p { margin: 0; font-size: 15px; }
.nv .nv-service ul { list-style: none; padding: 15px 0 0; margin: 0; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: var(--nv-muted); }
.nv .nv-service li { display: inline; margin: 0; }
.nv .nv-service li + li::before { content: " / "; padding: 0 7px; color: #8b979f; }

/* ---------- 8. HOME – Value band ---------- */
.nv.nv-band { background-color: var(--nv-band); }
.nv .nv-value-grid { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 35px !important; margin-top: 58px !important; }
.nv .nv-value-grid .elementor-widget-text-editor { border-top: 2px solid var(--nv-navy); padding-top: 20px; }
.nv .nv-value-grid .nv-kicker { display: block; font-size: 9px; letter-spacing: .13em; font-weight: 700; color: var(--nv-muted); text-transform: uppercase; }
.nv .nv-value-grid h3 { font-size: 23px; max-width: 250px; margin: 20px 0; color: var(--nv-navy); }
.nv .nv-value-grid p { font-size: 14px; margin-bottom: 0; }
.nv .nv-value-grid p:has(> .nv-kicker:only-child) { margin: 0; line-height: 1.65; }

/* ---------- 9. HOME – Approach (dark) ---------- */
.nv.nv-dark { background-color: var(--nv-navy); color: #fff; }
.nv.nv-dark .elementor-widget-text-editor { color: #b8c7d1; }
.nv .nv-steps { margin-top: 45px; }
.nv .nv-step { display: grid; grid-template-columns: 35px 1fr; gap: 20px; padding: 18px 0; border-top: 1px solid #425565; }
.nv .nv-step > span, .nv .nv-step > p:first-child { font-size: 11px; color: #acbecb; margin: 0; line-height: 1.65; }
.nv .nv-step h3 { font-size: 16px; font-weight: 600; letter-spacing: 0; line-height: 1.2; color: #fff; }
.nv .nv-step > div p { font-size: 14px; color: #bac7d0; margin: 7px 0 0; }

/* ---------- 10. HOME – Team teaser ---------- */
.nv .nv-teaser { grid-template-columns: 1fr 1.1fr; gap: 10vw !important; align-items: center; }
.nv .nv-teaser .elementor-widget-text-editor { margin-top: 25px; margin-bottom: 22px; }
.nv .nv-teaser .elementor-widget-image img { width: 100%; max-height: 500px; height: auto; object-fit: cover; object-position: center 25%; display: block; }

/* ---------- 11. Contact section + Contact Form 7 ---------- */
.nv .nv-contact { border-top: 1px solid var(--nv-line); }
.nv .nv-contact .nv-h2 .elementor-heading-title { font-size: clamp(36px, 3.4vw, 54px); margin-bottom: 28px; }
.nv .nv-contact-intro { color: var(--nv-navy); }
.nv .nv-contact-address { font-size: 14px; color: var(--nv-muted); margin-top: 22px; }
.nv .nv-contact-address a { display: block; margin: 9px 0; color: var(--nv-navy); }
.nv .nv-contact-address p { margin: 9px 0 0; }

.nv .wpcf7 form > p, .nv .nv-form > p { display: contents; }
.nv .nv-form br { display: none; }
.nv .nv-form { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.nv .nv-form label { font-size: 11px; letter-spacing: .05em; display: flex; flex-direction: column; gap: 8px; color: var(--nv-navy); margin: 0; font-weight: 400; }
.nv .nv-form .wpcf7-form-control-wrap { display: block; }
.nv .nv-form input[type="text"], .nv .nv-form input[type="email"], .nv .nv-form select, .nv .nv-form textarea {
  width: 100%; height: auto; min-height: 0; border: 0; border-bottom: 1px solid #9caab3; background: transparent;
  border-radius: 0; box-shadow: none; padding: 10px 0; color: var(--nv-navy); font-size: 14px; font-family: var(--nv-font);
}
.nv .nv-form select { padding-right: 20px; }
.nv .nv-form textarea { resize: vertical; min-height: 0; height: 84px; }
.nv .nv-form input:focus, .nv .nv-form textarea:focus, .nv .nv-form select:focus { outline: 2px solid #437086; outline-offset: 4px; border-color: #9caab3; box-shadow: none; }
.nv .nv-form .nv-full { grid-column: 1 / -1; }
.nv .nv-form-note { font-size: 11px; color: var(--nv-muted); margin: 0; }
.nv .nv-form .wpcf7-submit, .nv .nv-form input[type="submit"] {
  border: 1px solid var(--nv-navy); color: #fff; background: var(--nv-navy); border-radius: 0;
  padding: 14px 22px; min-height: 0; line-height: 1.4; cursor: pointer; font-size: 13px; font-weight: 600;
  text-transform: none; letter-spacing: 0; box-shadow: none; width: auto;
}
.nv .nv-form .wpcf7-submit:hover { background: #29475c; border-color: #29475c; color: #fff; }
.nv .nv-form .wpcf7-spinner { margin: 0 0 0 14px; vertical-align: middle; }
.nv .wpcf7-not-valid-tip { font-size: 11px; margin-top: 6px; letter-spacing: 0; }
.nv .wpcf7 form .wpcf7-response-output { margin: 18px 0 0; padding: 12px 16px; font-size: 13px; border-width: 1px; }

/* ---------- 12. TEAM page ---------- */
.nv .nv-page-intro { padding: 85px 0 70px !important; max-width: 1080px; }
.nv .nv-page-intro .nv-h1 .elementor-heading-title { margin-bottom: 28px; }
.nv .nv-page-intro .elementor-widget-text-editor { margin-top: 2px; font-size: 18px; max-width: 760px; }
.nv .nv-team-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 75px 55px !important; padding-bottom: 95px !important; }
.nv .nv-person .elementor-widget-image img {
  display: block; width: 100%; height: clamp(400px, 43vw, 640px); object-fit: cover; object-position: center top; background: #ececea;
}
.nv .nv-person .nv-h3 { padding-top: 26px; }
.nv .nv-person .nv-h3 .elementor-heading-title { font-size: 32px; }
.nv .nv-role .elementor-heading-title { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; line-height: 1.65; margin: 10px 0 18px; }
.nv .nv-person .elementor-widget-text-editor { max-width: 560px; }
.nv .nv-person .elementor-widget-text-editor p { font-size: 15px; line-height: 1.75; }
.nv .nv-expertise { border-top: 1px solid var(--nv-line); padding-top: 15px; font-size: 11px; max-width: 560px; }
.nv .nv-person .nv-expertise p { font-size: 11px; line-height: 1.65; }
.nv .nv-team-note { padding: 35px 0 60px !important; border-top: 1px solid var(--nv-line); }
.nv .nv-team-note .nv-h3 .elementor-heading-title { font-size: 32px; }
.nv .nv-team-note .elementor-widget-text-editor { font-size: 14px; }

/* ---------- 13. PRIVACY page ---------- */
.nv .nv-privacy-copy { max-width: 850px; padding-bottom: 80px; }
.nv .nv-privacy-copy h2 { font-size: 28px; margin: 35px 0 14px; color: var(--nv-navy); letter-spacing: -.025em; line-height: 1.2; }
.nv .nv-privacy-copy p { font-size: 15px; }
.nv .nv-privacy-copy a { border-bottom: 1px solid currentColor; padding-bottom: 2px; color: var(--nv-navy); }

/* ---------- 14. FOOTER (WoodMart HTML Block) ---------- */
.footer-container:has(.nv-footer) { background: #fff !important; border-top: 1px solid var(--nv-line); }
.footer-container:has(.nv-footer) .main-footer > .container,
.footer-container:has(.nv-footer) .main-footer { padding: 0 !important; max-width: none; }
.nv.nv-footer { background: #fff; color: var(--nv-navy); padding: 50px 0 24px !important; }
.nv .nv-footer-top { flex-direction: row !important; justify-content: space-between; gap: 30px !important; }
.nv .nv-footer-logo img { width: 255px; height: auto; display: block; }
.nv .nv-footer-tagline { font-size: 12px; color: var(--nv-muted); margin-top: 15px; }
.nv .nv-footer-links p { display: flex; gap: 35px; font-size: 12px; margin: 0; }
.nv .nv-footer-links a { color: var(--nv-navy); }
.nv .nv-footer-links a:hover, .nv .nv-footer-bottom a:hover { text-decoration: underline; text-underline-offset: 6px; }
.nv .nv-footer-bottom {
  flex-direction: row !important; justify-content: space-between; gap: 20px !important;
  border-top: 1px solid var(--nv-line); margin-top: 40px !important; padding-top: 18px !important;
}
.nv .nv-footer-bottom .elementor-widget-text-editor { font-size: 10px; color: var(--nv-muted); }
.nv .nv-footer-bottom p { margin: 0; }

/* ---------- 15. HEADER (WoodMart Header Builder) ---------- */
.whb-general-header { border-bottom: 1px solid var(--nv-line); }
.whb-general-header .wd-header-nav .menu > li > a,
.whb-general-header .wd-nav-main > li > a {
  font-family: var(--nv-font); font-size: 12px; font-weight: 600; text-transform: none; letter-spacing: 0; color: var(--nv-navy);
}
.whb-general-header .wd-nav-main > li > a:hover .nav-link-text { text-decoration: underline; text-underline-offset: 6px; }
/* Menu item with CSS class "nv-menu-cta" (Appearance > Menus) becomes the navy button */
.whb-general-header .wd-nav-main > li.nv-menu-cta > a {
  background: var(--nv-navy); color: #fff !important; padding: 12px 20px; height: auto; line-height: 1.4; margin-left: 10px;
}
.whb-general-header .wd-nav-main > li.nv-menu-cta > a:hover { background: #29475c; }
.whb-general-header .wd-nav-main > li.nv-menu-cta > a:hover .nav-link-text { text-decoration: none; }
.whb-general-header .site-logo img { max-height: none; }

/* ---------- 16. Responsive (Elementor breakpoints: tablet ≤1024, mobile ≤767) ---------- */

@media (max-width: 1024px) {
  .nv .nv-value-grid { grid-template-columns: 1fr 1fr; }
  .nv.nv-hero { min-height: 620px; }
}

@media (max-width: 850px) {
  .nv .nv-section { padding-top: 70px !important; padding-bottom: 70px !important; }
  .nv .nv-cols, .nv .nv-teaser, .nv .nv-approach-grid, .nv .nv-contact-grid { grid-template-columns: 1fr; gap: 35px !important; }
  .nv.nv-hero { min-height: 0; background-position: 65% center; }
  .nv.nv-hero::before { background: linear-gradient(90deg, #0d2333e8, #0d23338c), linear-gradient(0deg, #0d2333c9, transparent); }
  .nv .nv-hero-content { padding: 65px 0 !important; }
  .nv .nv-hero-content .nv-h1 .elementor-heading-title { font-size: 64px; max-width: 650px; }
  .nv .nv-hero-bottom .elementor-heading-title { font-size: 8px; }
  .nv .nv-section-heading { flex-direction: column !important; align-items: flex-start; gap: 25px !important; }
  .nv .nv-service { grid-template-columns: 30px 1fr; gap: 15px !important; }
  .nv .nv-service > .elementor-widget-text-editor { grid-column: 2; }
  .nv .nv-service .nv-h3 .elementor-heading-title { font-size: 27px; }
  .nv .nv-credentials { gap: 15px !important; }
  .nv .nv-credentials strong { font-size: 24px; }
  .nv .nv-credentials > .elementor-element + .elementor-element p { padding-left: 20px; }
  .nv .nv-value-grid { gap: 30px !important; }
  .nv .nv-team-grid { gap: 50px 30px !important; }
  .nv .nv-person .elementor-widget-image img { height: 440px; }
  .nv .nv-team-note { grid-template-columns: 1fr 1fr; gap: 35px !important; }
  .nv .nv-footer-top, .nv .nv-footer-bottom { flex-direction: column !important; }
  .nv .nv-footer-bottom { gap: 8px !important; }
}

@media (max-width: 767px) {
  .nv .nv-hero-content { padding: 55px 0 48px !important; }
  .nv .nv-hero-content .nv-h1 .elementor-heading-title { font-size: 52px; }
  .nv .nv-hero-statement .elementor-heading-title { font-size: 15px; max-width: 300px; }
  .nv .nv-hero-copy { max-width: 315px; font-size: 14px; }
  .nv .nv-hero-bottom { flex-direction: column !important; gap: 8px !important; padding: 18px 0 !important; }
  .nv .nv-credentials { grid-template-columns: 1fr; gap: 18px !important; padding: 28px 0 !important; }
  .nv .nv-credentials p { display: flex; align-items: center; gap: 25px; padding: 0; }
  .nv .nv-credentials > .elementor-element + .elementor-element p { border: 0; padding: 0; }
  .nv .nv-credentials strong { min-width: 95px; font-size: 24px; }
  .nv .nv-audiences, .nv .nv-team-grid, .nv .nv-team-note, .nv .nv-form { grid-template-columns: 1fr; }
  .nv .nv-value-grid { grid-template-columns: 1fr; gap: 30px !important; margin-top: 35px !important; }
  .nv .nv-value-grid h3 { max-width: none; font-size: 24px; margin: 15px 0; }
  .nv .nv-team-grid { gap: 55px !important; }
  .nv .nv-person .elementor-widget-image img { height: auto; aspect-ratio: 4 / 5; }
  .nv .nv-page-intro { padding: 55px 0 45px !important; }
  .nv .nv-page-intro .nv-h1 .elementor-heading-title { font-size: 48px; }
  .nv .nv-page-intro .elementor-widget-text-editor { font-size: 16px; }
  .nv .nv-form .nv-full { grid-column: auto; }
  .nv .nv-service li { display: block; }
  .nv .nv-service li + li::before { content: ""; padding: 0; }
  .nv .nv-service li + li { margin-top: 5px; }
  .nv .nv-footer-links p { gap: 24px; flex-wrap: wrap; }
  .nv .nv-contact-address a:first-child { overflow-wrap: anywhere; }
}

/* Row containers: children size to content */
.nv .nv-hero-bottom > .elementor-element,
.nv .nv-section-heading > .elementor-element,
.nv .nv-footer-top > .elementor-element,
.nv .nv-footer-bottom > .elementor-element { width: auto !important; --width: auto; flex: 0 1 auto; max-width: 100%; }
@media (max-width: 850px) {
  .nv .nv-footer-top > .elementor-element, .nv .nv-footer-bottom > .elementor-element { width: 100% !important; }
}
.nv .nv-person .elementor-widget-text-editor:not(.nv-expertise) { margin-bottom: 22px; }
@media (max-width: 420px) {
  .nv .nv-hero-content .nv-h1 .elementor-heading-title, .nv .nv-page-intro .nv-h1 .elementor-heading-title { font-size: 44px; }
}

/* Header: logo and menu aligned to the 5vw page margin */
.whb-general-header .container { width: 90%; max-width: var(--nv-max) !important; padding-left: 0 !important; padding-right: 0 !important; margin-left: auto; margin-right: auto; }
.whb-general-header .wd-tools-icon, .whb-general-header .wd-header-mobile-nav a { color: var(--nv-navy); }







/* ---------- 17. MOBILE MENU (WoodMart side panel) ---------- */
.mobile-nav.wd-side-hidden {
  --wd-side-hidden-w: min(360px, 86vw);
  width: var(--wd-side-hidden-w) !important; box-sizing: border-box;
  background: #fff;
  padding: 0 28px 40px;
  box-shadow: -20px 0 40px rgba(16, 40, 56, .12);
}
/* logo at the top of the panel */
.mobile-nav.wd-side-hidden::before {
  content: ""; display: block; height: 82px; margin: 0 0 10px;
  border-bottom: 1px solid var(--nv-line, #d9e0e4);
  background: url("/wp-content/uploads/2026/10/navaris-logo.png") left center / 170px auto no-repeat;
}
.mobile-nav .wd-nav-mobile { padding: 0; margin: 0; }
.mobile-nav .wd-nav-mobile > li { border: 0 !important; border-bottom: 1px solid var(--nv-line, #d9e0e4) !important; margin: 0; }
.mobile-nav .wd-nav-mobile > li > a {
  display: flex; align-items: center; min-height: 0 !important;
  padding: 18px 0 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 17px !important; font-weight: 600 !important; line-height: 1.3 !important;
  text-transform: none !important; letter-spacing: -.01em !important;
  color: var(--nv-navy, #102838) !important; background: none !important;
}
.mobile-nav .wd-nav-mobile > li > a .nav-link-text { color: inherit; }
/* WoodMart marks every one-page link as "current" – neutralise the highlight */
.mobile-nav .wd-nav-mobile > li.current_page_item > a,
.mobile-nav .wd-nav-mobile > li.current-menu-item > a,
.mobile-nav .wd-nav-mobile > li > a:hover { color: var(--nv-navy, #102838) !important; background: none !important; }
.mobile-nav .wd-nav-mobile > li > a:active { color: #29475c !important; }

/* CTA item (class nv-menu-cta) = navy button */
.mobile-nav .wd-nav-mobile > li.nv-menu-cta { border-bottom: 0 !important; margin-top: 28px; }
.mobile-nav .wd-nav-mobile > li.nv-menu-cta > a {
  display: inline-flex; justify-content: center; width: 100%; box-sizing: border-box;
  background: var(--nv-navy, #102838) !important; color: #fff !important;
  padding: 16px 22px !important; font-size: 14px !important;
}
.mobile-nav .wd-nav-mobile > li.nv-menu-cta > a:hover,
.mobile-nav .wd-nav-mobile > li.nv-menu-cta.current_page_item > a { background: var(--nv-navy, #102838) !important; color: #fff !important; }
.mobile-nav .wd-nav-mobile > li.nv-menu-cta > a:active { background: #29475c !important; }

/* overlay behind the panel */
.wd-close-side.wd-close-side-opened { background-color: rgba(13, 35, 51, .55) !important; }

/* hamburger icon in header */


/* ---------- 18. FOOTER – centred on phones ---------- */
@media (max-width: 767px) {
  .nv .nv-footer-top, .nv .nv-footer-bottom, .nv .nv-footer-brand { align-items: center !important; text-align: center; }
  .nv .nv-footer-top > .elementor-element, .nv .nv-footer-bottom > .elementor-element { width: 100% !important; align-self: center; }
  .nv .nv-footer-logo img { margin-left: auto; margin-right: auto; width: 220px; }
  .nv .nv-footer-tagline { text-align: center; }
  .nv .nv-footer-links p { justify-content: center; flex-wrap: wrap; gap: 12px 26px; font-size: 13px; }
  .nv .nv-footer-top { gap: 26px !important; }
  .nv .nv-footer-bottom { margin-top: 30px !important; }
  .nv .nv-footer-bottom p { text-align: center; line-height: 1.7; }
}

