/*
Theme Name: Nőnek lenni – Szülni Jó Főoldal
Theme URI: https://szulnijo.hu/
Author: Szülni Jó / ChatGPT
Description: Egy letisztult, meleg tónusú WordPress főoldal sablon a „Nőnek lenni” női egészség vonalhoz. Kérdőív, Dr. Németh Júlia bemutatása, vizsgálati folyamat, időpontkérés és Szülni Jó átkötő blokk.
Version: 1.0.25
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: nonek-lenni-02
*/

:root {
  --nl-bg: #fffaf6;
  --nl-cream: #fbf3ec;
  --nl-card: #ffffff;
  --nl-card-soft: #f8ebe4;
  --nl-rose: #bf5f66;
  --nl-rose-dark: #99484f;
  --nl-sage: #718168;
  --nl-sage-soft: #eef3ea;
  --nl-ink: #26201d;
  --nl-muted: #6d625d;
  --nl-line: #eadbd2;
  --nl-shadow: 0 18px 50px rgba(89, 60, 48, .10);
  --nl-radius: 14px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--nl-bg);
  color: var(--nl-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  overflow-x: hidden;
}
body.admin-bar .nl-header { top: 32px; }
a { color: inherit; }
img { max-width: 100%; }
.pagelayer-header,
.pagelayer-footer {
  display: none !important;
}

.nl-page {
  overflow: hidden;
  background:
    radial-gradient(circle at 0% 0%, rgba(191,95,102,.08), transparent 34%),
    linear-gradient(180deg, #fffaf6 0%, #fffdfb 42%, #fff7f0 100%);
}
.cookieadmin_law_container {
  width: min(420px, calc(100vw - 32px)) !important;
  max-width: min(420px, calc(100vw - 32px)) !important;
  min-width: 0 !important;
  left: 16px !important;
  right: auto !important;
  transform: none !important;
  box-sizing: border-box !important;
}
.cookieadmin_law_container .cookieadmin_consent_inside {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.cookieadmin_law_container * {
  box-sizing: border-box !important;
  max-width: 100% !important;
}
.cookieadmin_law_container .cookieadmin_notice_con,
.cookieadmin_law_container .cookieadmin_notice_con p,
.cookieadmin_law_container #cookieadmin_notice {
  width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}
.cookieadmin_law_container .cookieadmin_consent_btns {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}
.cookieadmin_law_container .cookieadmin_btn {
  min-width: 0 !important;
  white-space: normal !important;
}
.nl-wrap { width: min(1280px, calc(100% - 40px)); margin: 0 auto; }
.nl-serif { font-family: Georgia, "Times New Roman", serif; }
.nl-icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: 1.15em;
  height: 1.15em;
  flex: 0 0 auto;
  color: currentColor;
}
.nl-icon svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.nl-header {
  position: sticky; top: 0; z-index: 50;
  background: rgba(255, 250, 246, .88);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(234, 219, 210, .8);
}
.nl-nav { min-height: 86px; display:flex; align-items:center; justify-content:space-between; gap: 28px; }
.nl-logo { text-decoration: none; display:block; line-height:1; }
.nl-logo-main { font-family: Georgia, "Times New Roman", serif; font-size: 34px; letter-spacing: -.03em; display:block; }
.nl-logo-sub { color: var(--nl-rose); font-size: 13px; display:flex; align-items:center; gap: 6px; margin-top: 7px; font-weight:600; }
.nl-logo-sub:before { content:""; width:16px; height:16px; flex:0 0 16px; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 21s-7-4.7-7-11a4.2 4.2 0 0 1 7-3.1A4.2 4.2 0 0 1 19 10c0 6.3-7 11-7 11Z' stroke='%23bf5f66' stroke-width='1.6'/%3E%3Cpath d='M9 12c1.3.5 2.2 1.4 3 3 .8-2.4 1.9-4.1 3.8-5.7' stroke='%23bf5f66' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E"); }
.nl-menu { display:flex; align-items:center; gap: 36px; font-size: 14px; }
.nl-menu a { text-decoration:none; color: var(--nl-ink); opacity:.86; }
.nl-menu a:hover { color: var(--nl-rose); opacity:1; }

.nl-btn {
  display:inline-flex; align-items:center; justify-content:center; gap: 10px;
  min-height: 50px; padding: 13px 28px;
  border-radius: 999px;
  background: var(--nl-rose); color:#fff !important;
  border: 1px solid var(--nl-rose);
  text-decoration:none; font-weight: 800; font-size: 14px;
  line-height: 1.2;
  text-align: center;
  box-shadow: 0 12px 26px rgba(191,95,102,.25);
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.nl-btn .nl-icon { width: 18px; height: 18px; }
.nl-btn:hover { transform: translateY(-1px); background: var(--nl-rose-dark); box-shadow: 0 16px 30px rgba(191,95,102,.29); }
.nl-btn-outline { background: transparent; color: var(--nl-rose-dark) !important; box-shadow: none; }
.nl-btn-outline:hover { background: #fff; }
.nl-btn-sage { background: var(--nl-sage); border-color: var(--nl-sage); }
.nl-btn-sage:hover { background: #596a51; }

.nl-hero { padding: 16px 0 12px; border-bottom:1px solid rgba(234,219,210,.7); }
.nl-hero-box {
  position: relative;
  display:grid; grid-template-columns: .95fr 1.05fr; gap: 20px; align-items:center;
  height: 660px;
  min-height: 660px;
  border: 1px solid rgba(234,219,210,.9);
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(255,248,242,.75));
  overflow: hidden;
  box-shadow: 0 22px 70px rgba(89,60,48,.06);
}
.nl-hero-copy { padding: 36px 0 36px 36px; position: relative; z-index:2; }
.nl-hero-copy,
.nl-hero-media,
.nl-card,
.nl-doctor-row,
.nl-birth-card {
  min-width: 0;
}
.nl-top-pill {
  display:inline-flex; align-items:center; gap: 9px;
  flex-wrap: wrap;
  border: 1px solid var(--nl-line); border-radius: 999px; padding: 7px 13px;
  color: var(--nl-rose); background: rgba(255,255,255,.6);
  font-size:11px; font-weight:800; letter-spacing:.05em; text-transform: uppercase;
  line-height: 1.25;
  margin-bottom: 12px;
}
.nl-eyebrow {
  display:flex; align-items:center; gap: 12px;
  color: var(--nl-rose); text-transform: uppercase; letter-spacing:.08em; font-size: 12px; font-weight: 900; margin-bottom: 22px;
}
.nl-eyebrow:before {
  content:""; width:28px; height:22px; flex:0 0 28px;
  background: center / contain no-repeat url("data:image/svg+xml,%3Csvg viewBox='0 0 36 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 24c6.5-5 12.7-11.1 18-20' stroke='%23bf5f66' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M13 16C7 16 4 12 3 7c5.8-.7 9.4 2.5 10 9Z' stroke='%23bf5f66' stroke-width='1.4'/%3E%3Cpath d='M21 10c-.7-5 1.8-8 6.9-9.1 1.2 5.1-.9 8.3-6.9 9.1Z' stroke='%23bf5f66' stroke-width='1.4'/%3E%3Cpath d='M18 22c3.1-3.9 7-5 12.5-3.2-2.5 4.8-6.6 5.8-12.5 3.2Z' stroke='%23bf5f66' stroke-width='1.4'/%3E%3C/svg%3E");
}
.nl-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(48px, 4.9vw, 70px); line-height:.94; letter-spacing:-.035em;
  margin: 0 0 18px;
}
.nl-title span { color: var(--nl-rose); display:block; }
.nl-lead { max-width: 485px; color: var(--nl-ink); font-size: 14px; line-height: 1.34; margin: 0 0 22px; }
.nl-lead p { margin: 0 0 9px; }
.nl-actions { display:flex; flex-wrap:wrap; gap: 12px; }
.nl-hero .nl-btn:not(.nl-btn-outline) { min-width: 315px; }
.nl-hero .nl-btn-outline { width: 255px; }
.nl-hero-media { height: 100%; min-height: 660px; position: relative; }
.nl-hero-media:before {
  content:""; position:absolute; inset: 0 0 0 -7%;
  background: var(--nl-cream); border-radius: 45% 0 0 45%; z-index:0;
}
.nl-hero-media img { position:relative; z-index:1; width:100%; height:100%; min-height:660px; object-fit:cover; display:block; border-radius: 45% 0 0 45%; }
.nl-floating-card {
  position:absolute; left: 18%; bottom: 34px; z-index:3;
  display:flex; align-items:center; gap: 16px;
  background: rgba(255,250,246,.92); backdrop-filter: blur(14px);
  border: 1px solid rgba(234,219,210,.9); border-radius: 18px;
  padding: 18px 22px; box-shadow: var(--nl-shadow);
  max-width: 260px;
}
.nl-floating-icon {
  display:flex;
  align-items:center;
  justify-content:center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--nl-rose);
  border-radius: 50%;
  color: var(--nl-rose);
  flex: 0 0 42px;
}
.nl-floating-icon .nl-icon { width: 26px; height: 26px; }
.nl-floating-card strong { display:block; font-family: Georgia, "Times New Roman", serif; font-size:20px; line-height:1.12; }
.nl-floating-card strong + span { display:block; color: var(--nl-muted); font-size:12px; margin-top:6px; }
.nl-line-art { position:absolute; right: -8px; bottom: 0; width: 188px; height: 240px; opacity:.76; z-index:3; pointer-events:none; }

.nl-section { padding: 10px 0; }
.nl-grid-3 { display:grid; grid-template-columns: .7fr .52fr 1.55fr; gap: 16px; }
.nl-home-panels {
  grid-template-areas:
    "topic questionnaire symptom"
    "topic questionnaire doctor";
  grid-template-rows: 190px 180px;
  align-items: stretch;
}
.nl-home-panels > .nl-soft-card { grid-area: topic; }
.nl-home-panels > .nl-questionnaire { grid-area: questionnaire; }
.nl-home-panels > .nl-symptom-card { grid-area: symptom; }
.nl-home-panels > .nl-doctor-row { grid-area: doctor; margin-top: 0; }
.nl-card {
  background: rgba(255,255,255,.88); border:1px solid var(--nl-line); border-radius: var(--nl-radius);
  box-shadow: 0 10px 36px rgba(89,60,48,.07); overflow:hidden;
}
.nl-card-pad { padding: 28px; }
.nl-soft-card { background: linear-gradient(145deg, #fff 0%, var(--nl-card-soft) 100%); position: relative; }
.nl-sage-card { background: linear-gradient(145deg, #eef3ea 0%, #fff 100%); }
.nl-card h2, .nl-card h3, .nl-section-title { font-family: Georgia, "Times New Roman", serif; font-weight: 500; line-height:1.16; letter-spacing:-.025em; }
.nl-card h2 { font-size: 29px; margin: 0; }
.nl-card h3 { font-size: 24px; margin: 0 0 12px; }
.nl-card p { color: var(--nl-muted); margin:0 0 14px; }
.nl-doctor-content p {
  font-size: 12px;
  line-height: 1.28;
  margin-bottom: 0;
}
.nl-topic-label { color: var(--nl-rose); font-weight:900; font-size:11px; text-transform:uppercase; letter-spacing:.08em; margin-bottom: 16px; }
.nl-botanical { position:absolute; left: 26px; right: 20px; bottom: 18px; opacity:.82; }
.nl-botanical-svg { display:block; width: 100%; max-width: 260px; height: auto; }
.nl-botanical-sage { color: var(--nl-sage); opacity:.58; }
.nl-botanical-rose { color: var(--nl-rose); opacity:.6; }

.nl-questionnaire { display:flex; flex-direction:column; justify-content:space-between; min-height: 386px; }
.nl-questionnaire p { font-size: 13px; line-height: 1.45; }
.nl-small-note { font-size: 11px; color: var(--nl-muted); margin-top: 10px; }

.nl-symptom-card { padding: 22px; position: relative; }
.nl-symptom-art {
  position:absolute;
  right: 22px;
  top: 10px;
  width: 86px;
  height: 64px;
  color: var(--nl-sage);
  opacity: .42;
  pointer-events:none;
}
.nl-symptom-head { display:flex; align-items:center; gap: 18px; margin-bottom: 16px; padding-right: 74px; position:relative; z-index:1; }
.nl-symptom-head h3 { margin:0; }
.nl-line { height:1px; background: var(--nl-line); flex:1; }
.nl-symptoms { display:grid; grid-template-columns: repeat(2, 1fr); gap: 11px 22px; margin:0; padding:0; list-style:none; position:relative; z-index:1; }
.nl-symptoms li { display:flex; align-items:flex-start; gap: 9px; color: var(--nl-muted); font-size: 14px; }
.nl-check { width:18px; height:18px; border:1px solid var(--nl-rose); color: var(--nl-rose); border-radius:50%; display:inline-flex; align-items:center; justify-content:center; flex: 0 0 18px; margin-top:1px; }
.nl-check .nl-icon { width: 12px; height: 12px; }

.nl-doctor-row { display:grid; grid-template-columns: .42fr 1.58fr; gap: 16px; margin-top:20px; }
.nl-doctor-photo { min-height: 180px; background: var(--nl-cream); }
.nl-doctor-photo img { width:100%; height:100%; min-height:180px; object-fit: cover; display:block; }
.nl-doctor-content { padding: 22px; display:grid; grid-template-columns: 1fr .52fr; gap: 14px; }
.nl-doctor-content h3 { margin-bottom: 2px; }
.nl-meta { font-size: 11px; font-weight:800; color: var(--nl-muted); }
.nl-badges { display:grid; gap: 8px; align-content: center; }
.nl-badge { display:flex; gap:9px; align-items:center; color: var(--nl-muted); font-size: 11px; font-weight:700; }
.nl-badge .nl-check { width: 36px; height: 36px; flex-basis: 36px; background: var(--nl-rose); color: #fff; border-color: var(--nl-rose); margin-top: 0; }
.nl-badge .nl-check .nl-icon { width: 18px; height: 18px; }

.nl-steps-card { padding: 24px 28px; }
.nl-section-title { font-size: 30px; text-align:center; margin: 0 0 18px; }
.nl-steps { display:grid; grid-template-columns: repeat(5, 1fr); gap: 8px; align-items:start; }
.nl-step { position:relative; padding: 8px 10px 0; text-align:left; }
.nl-step:not(:last-child):after { content:"→"; position:absolute; right:-4px; top: 28px; color: var(--nl-rose); opacity:.5; }
.nl-step-icon { width:58px; height:58px; border-radius:50%; display:flex; align-items:center; justify-content:center; background: var(--nl-card-soft); color: var(--nl-rose); margin: 0 0 8px; }
.nl-step-icon .nl-icon { width: 28px; height: 28px; }
.nl-step-number { color: var(--nl-rose); font-weight: 900; font-size: 15px; line-height: 1; margin-bottom: 6px; }
.nl-step h4 { margin:0 0 6px; font-size: 13px; }
.nl-step p { font-size: 11px; line-height: 1.35; margin:0; color: var(--nl-muted); }

.nl-bottom-grid { display:grid; grid-template-columns: 1.1fr .9fr; gap:16px; align-items: stretch; }
.nl-birth-card { display:grid; grid-template-columns: .48fr .52fr; align-items:start; }
.nl-birth-media {
  aspect-ratio: 1 / 1;
  width: 100%;
  height: auto;
  overflow: hidden;
  align-self: start;
}
.nl-birth-card img { width:100%; height:100%; min-height:0; object-fit:cover; object-position:center; display:block; }
.nl-birth-copy { padding: 24px; }
.nl-birth-copy h2 { font-family: Georgia, "Times New Roman", serif; font-size: 31px; line-height:1.1; margin:0 0 12px; }
.nl-birth-copy p { color: var(--nl-muted); font-size: 14px; line-height: 1.38; margin:0 0 16px; }
.nl-appointment { background: linear-gradient(145deg, #b7525b, #c86f75); color:#fff; padding:28px; position:relative; }
.nl-appointment > *:not(.nl-appointment-art) { position:relative; z-index:1; }
.nl-appointment-art {
  position:absolute;
  right: -52px;
  top: 84px;
  width: 154px;
  height: 175px;
  color: rgba(255,255,255,.78);
  opacity:.58;
  pointer-events:none;
}
.nl-appointment h2 { font-family: Georgia, "Times New Roman", serif; font-size: 31px; margin:0 0 12px; }
.nl-appointment p { color: rgba(255,255,255,.86); font-size: 14px; line-height: 1.38; margin:0 0 18px; }
.nl-appointment .nl-btn { background:#fff; color: var(--nl-rose-dark) !important; border-color:#fff; box-shadow:none; }
.nl-appointment .nl-btn-outline { background:transparent; color:#fff !important; border-color:rgba(255,255,255,.55); }
.nl-contact { display:flex; flex-wrap:wrap; gap:16px; margin-top:18px; color:rgba(255,255,255,.9); font-size:12px; }
.nl-contact span { display:inline-flex; align-items:center; gap: 8px; }
.nl-contact .nl-icon { width: 18px; height: 18px; }

.nl-footer { padding: 18px 0 28px; }
.nl-footer-strip { display:grid; grid-template-columns: 1.1fr repeat(3, .75fr); gap: 18px; align-items:center; color: var(--nl-muted); }
.nl-footer-brand { font-family: Georgia, "Times New Roman", serif; font-size:30px; color:var(--nl-ink); }
.nl-footer-item { font-size: 14px; display:flex; gap: 10px; align-items:center; }
.nl-footer-item .nl-icon { width: 22px; height: 22px; color: var(--nl-rose); }
.nl-footer-legal {
  display:flex;
  flex-wrap:wrap;
  gap: 10px 22px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--nl-line);
  color: var(--nl-muted);
  font-size: 13px;
}
.nl-footer-legal a { text-decoration:none; }
.nl-footer-legal a:hover { color: var(--nl-rose); }

.nl-subpage {
  padding-bottom: 28px;
}
.nl-subhero {
  padding: 34px 0 12px;
}
.nl-subhero-inner {
  border: 1px solid var(--nl-line);
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(255,248,242,.82));
  padding: 34px;
}
.nl-subhero h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5vw, 64px);
  line-height: .98;
  letter-spacing: -.035em;
  margin: 0;
}
.nl-subcontent {
  padding: 10px 0 0;
}
.nl-content-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.nl-content-grid.two {
  grid-template-columns: repeat(2, 1fr);
}
.nl-info-card {
  background: rgba(255,255,255,.9);
  border: 1px solid var(--nl-line);
  border-radius: var(--nl-radius);
  padding: 24px;
  box-shadow: 0 10px 36px rgba(89,60,48,.06);
}
.nl-info-card.sage {
  background: linear-gradient(145deg, #eef3ea 0%, #fff 100%);
}
.nl-info-card.rose {
  background: linear-gradient(145deg, #b7525b, #c86f75);
  color: #fff;
}
.nl-info-card h2,
.nl-info-card h3 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.025em;
  margin: 0 0 12px;
}
.nl-info-card h2 { font-size: 34px; }
.nl-info-card h3 { font-size: 25px; }
.nl-info-card p,
.nl-info-card li {
  color: var(--nl-muted);
  font-size: 15px;
  line-height: 1.45;
}
.nl-info-card.rose p,
.nl-info-card.rose li {
  color: rgba(255,255,255,.88);
}
.nl-info-card ul {
  margin: 0;
  padding-left: 19px;
}
.nl-info-card .nl-actions {
  margin-top: 18px;
}
.nl-subcontent .wp-block-columns {
  margin-bottom: 16px;
}
.nl-subcontent .wp-block-column {
  min-width: 0;
}
.nl-subcontent .wp-block-button.nl-btn {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  min-height: 0;
  padding: 0;
}
.nl-subcontent .wp-block-button.nl-btn:hover {
  transform: none;
  background: transparent;
  box-shadow: none;
}
.nl-subcontent .wp-block-button.nl-btn .wp-block-button__link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:50px;
  padding:13px 28px;
  border-radius:999px;
  background:var(--nl-rose);
  color:#fff !important;
  border:1px solid var(--nl-rose);
  text-decoration:none;
  font-weight:800;
  font-size:14px;
  line-height:1.2;
  text-align:center;
  box-shadow:0 12px 26px rgba(191,95,102,.25);
}
.nl-subcontent .wp-block-button.nl-btn .wp-block-button__link:hover {
  background:var(--nl-rose-dark);
}
.nl-subcontent .wp-block-button.nl-btn.nl-btn-outline .wp-block-button__link {
  background:transparent;
  color:var(--nl-rose-dark) !important;
  box-shadow:none;
}
.nl-subcontent .wp-block-button.nl-btn.nl-btn-outline .wp-block-button__link:hover {
  background:#fff;
}
.nl-subcontent .nl-info-card.rose .wp-block-button.nl-btn .wp-block-button__link {
  background:#fff;
  border-color:#fff;
  color:var(--nl-rose-dark) !important;
  box-shadow:none;
}
.nl-subcontent .nl-info-card.rose .wp-block-button.nl-btn .wp-block-button__link:hover {
  background:rgba(255,255,255,.9);
}
.nl-topic-lead h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 3vw, 42px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.025em;
}
.nl-hpv-intro {
  align-items: stretch;
}
.nl-hpv-illustration-card {
  display:flex;
  align-items:center;
  justify-content:center;
  padding: 18px;
  background: linear-gradient(145deg, #fff 0%, #fbf3ec 100%);
}
.nl-hpv-illustration {
  margin: 0;
  width: min(100%, 360px);
}
.nl-hpv-illustration img {
  display:block;
  width:100%;
  height:auto;
  border-radius: 10px;
}
.nl-legal-doc {
  padding: clamp(24px, 4vw, 42px);
  margin-bottom: 28px;
}
.nl-legal-doc h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 500;
  line-height: 1.12;
  margin: 30px 0 12px;
}
.nl-legal-doc h2:first-child { margin-top: 0; }
.nl-legal-doc p,
.nl-legal-doc li,
.nl-legal-doc dd,
.nl-legal-doc dt,
.nl-legal-doc span {
  font-size: 15px;
  line-height: 1.55;
}
.nl-legal-doc p {
  color: var(--nl-muted);
  margin: 0 0 14px;
}
.nl-legal-doc a { color: var(--nl-rose-dark); }
.nl-legal-updated {
  font-weight: 800;
  color: var(--nl-rose) !important;
}
.nl-legal-data {
  display:grid;
  gap: 10px;
  margin: 0;
}
.nl-legal-data div,
.nl-legal-table div {
  display:grid;
  grid-template-columns: .44fr 1fr;
  gap: 12px 18px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(234,219,210,.82);
}
.nl-legal-data dt,
.nl-legal-table strong {
  color: var(--nl-ink);
  font-weight: 800;
}
.nl-legal-data dd {
  margin: 0;
  color: var(--nl-muted);
}
.nl-legal-table {
  display:grid;
  gap: 0;
}
.nl-legal-table div {
  grid-template-columns: .34fr 1fr 1fr;
}
.nl-legal-table span {
  color: var(--nl-muted);
}
.nl-note-band {
  margin-top: 16px;
  border: 1px solid var(--nl-line);
  border-radius: var(--nl-radius);
  padding: 24px;
  background: rgba(255,250,246,.9);
}
.nl-price-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}
.nl-price-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid rgba(234,219,210,.9);
  padding-bottom: 9px;
  color: var(--nl-muted);
}
.nl-price-row strong {
  color: var(--nl-ink);
}

.nl-diagnostic-page {
  padding-top: 10px;
}
.nl-card.nl-diagnostic-card {
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  overflow: visible;
}
.nl-diagnostic-intro {
  display: grid;
  grid-template-columns: minmax(0, .42fr) minmax(0, .58fr);
  gap: 18px 28px;
  align-items: start;
  margin-bottom: 20px;
}
.nl-diagnostic-intro h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 34px;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.025em;
  margin: 0;
}
.nl-diagnostic-intro p {
  color: var(--nl-muted);
  font-size: 15px;
  line-height: 1.45;
  margin: 0;
}
.nl-diagnostic-intro .nl-small-note {
  grid-column: 2;
  margin-top: -8px;
}
.nl-diagnostic-iframe-wrap {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.nl-diagnostic-iframe-wrap iframe {
  width: 100%;
  min-height: 900px;
  border: 0;
  display: block;
}

@media (max-width: 980px) {
  body.admin-bar .nl-header { top: 46px; }
  .nl-nav {
    min-height: 0;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 12px 18px;
    padding: 12px 0 10px;
  }
  .nl-menu {
    order: 3;
    display:flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 8px 18px;
    overflow: visible;
    padding: 4px 0 2px;
  }
  .nl-menu a {
    flex: 0 1 auto;
    white-space: nowrap;
    font-size: 13px;
    line-height: 1.2;
    padding: 4px 0;
  }
  .nl-hero-box, .nl-grid-3, .nl-doctor-row, .nl-bottom-grid, .nl-birth-card { grid-template-columns:1fr; }
  .nl-hero-box { height: auto; min-height: 0; }
  .nl-home-panels { grid-template-areas: none; grid-template-rows: none; }
  .nl-home-panels > .nl-soft-card,
  .nl-home-panels > .nl-questionnaire,
  .nl-home-panels > .nl-symptom-card,
  .nl-home-panels > .nl-doctor-row { grid-area: auto; }
  .nl-hero-copy { padding: 38px 28px 10px; }
  .nl-hero-media, .nl-hero-media img { min-height: 420px; }
  .nl-hero-media:before, .nl-hero-media img { border-radius: 45% 45% 0 0; }
  .nl-floating-card { left: 24px; bottom: 24px; }
  .nl-line-art { right: 4px; bottom: 4px; width: 146px; height: 186px; }
  .nl-questionnaire { min-height: auto; }
  .nl-soft-card { min-height: 280px; padding-bottom: 118px; }
  .nl-doctor-content { grid-template-columns:1fr; }
  .nl-symptoms, .nl-steps, .nl-footer-strip { grid-template-columns:1fr; }
  .nl-legal-data div,
  .nl-legal-table div { grid-template-columns: 1fr; }
  .nl-content-grid,
  .nl-content-grid.two { grid-template-columns:1fr; }
  .nl-diagnostic-intro { grid-template-columns:1fr; }
  .nl-diagnostic-intro .nl-small-note { grid-column:auto; margin-top: -4px; }
  .nl-step:not(:last-child):after { display:none; }
}
@media (max-width: 620px) {
  .nl-wrap { width: calc(100vw - 28px); max-width: calc(100vw - 28px); }
  .cookieadmin_law_container {
    width: calc(100vw - 48px) !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    left: 16px !important;
    right: auto !important;
  }
  .cookieadmin_law_container .cookieadmin_consent_btns {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .cookieadmin_law_container .cookieadmin_btn {
    width: 100% !important;
  }
  .nl-hero-box { width: 100%; max-width: 100%; }
  .nl-nav { min-height: 0; }
  .nl-logo-main { font-size: 25px; }
  .nl-logo-sub { font-size: 12px; }
  .nl-nav > .nl-btn {
    display:flex;
    width: auto;
    min-height: 42px;
    padding: 10px 16px;
    font-size: 13px;
    flex: 0 0 auto;
  }
  .nl-menu {
    gap: 8px 14px;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .nl-menu a { font-size: 12px; }
  .nl-hero-copy { width: 100%; max-width: none; padding: 32px 20px 8px; overflow: hidden; }
  .nl-eyebrow { align-items:flex-start; gap: 9px; font-size: 11px; line-height: 1.25; }
  .nl-title { font-size: 34px; line-height: 1; letter-spacing: -.02em; overflow-wrap: break-word; }
  .nl-title, .nl-lead, .nl-lead p { max-width: 100%; }
  .nl-hero-copy > .nl-eyebrow,
  .nl-hero-copy > .nl-title,
  .nl-hero-copy > .nl-lead,
  .nl-hero-copy > .nl-actions {
    width: 100%;
    max-width: 320px;
  }
  .nl-hero-copy > .nl-lead { max-width: 27ch; }
  .nl-lead { font-size: 16px; }
  .nl-btn { width:100%; max-width:100%; min-width:0; white-space: normal; padding-left: 18px; padding-right: 18px; }
  .nl-hero .nl-btn { justify-content: space-between; }
  .nl-hero .nl-btn:not(.nl-btn-outline), .nl-hero .nl-btn-outline { width:100%; min-width:0; }
  .nl-top-pill { white-space: normal; max-width: 100%; font-size: 12px; }
  .nl-card-pad, .nl-symptom-card, .nl-steps-card, .nl-birth-copy, .nl-appointment { padding: 24px; }
  .nl-card h2, .nl-birth-copy h2, .nl-appointment h2, .nl-section-title { font-size: 28px; overflow-wrap: break-word; }
  .nl-card h3 { font-size: 25px; overflow-wrap: break-word; }
  .nl-soft-card h2 { max-width: 10.5em; }
  .nl-questionnaire p { max-width: 18em; }
  .nl-hero-media, .nl-hero-media img { min-height: 340px; }
  .nl-botanical { left: 24px; right: 24px; bottom: 22px; }
  .nl-botanical-svg { max-width: 190px; }
  .nl-symptom-art { width: 64px; height: 48px; right: 18px; top: 12px; opacity:.32; }
  .nl-symptom-head { padding-right: 48px; }
  .nl-appointment-art { width: 136px; height: 154px; right: -28px; top: auto; bottom: -16px; opacity:.48; }
}

/* Pagelayer page system: reusable visual language for every editable page. */
.nl-pagelayer-main { background: var(--nl-ivory); }
.nl-pagelayer-main .pagelayer-row-holder.pagelayer-width-auto { max-width: 1240px; }
.nl-pagelayer-main .pagelayer-heading-holder h1,
.nl-pagelayer-main .pagelayer-heading-holder h2,
.nl-pagelayer-main .pagelayer-heading-holder h3 { font-family:"Cormorant Garamond", Georgia, serif !important; letter-spacing:-.035em; }
.nl-pagelayer-main .pagelayer-text-holder p { color:var(--nl-text); }
.nl-pagelayer-main .pagelayer-btn-holder { border-radius:999px !important; box-shadow:0 8px 16px rgba(67,106,138,.16); padding:13px 22px !important; }
.nl-pagelayer-main #nl-hero { background:linear-gradient(105deg, #f8f5f2, #edf3f7) !important; }
.nl-pagelayer-main #nl-hero .pagelayer-heading-holder h1 { color:var(--nl-blue-dark) !important; font-weight:500 !important; line-height:.9 !important; }
.nl-pagelayer-main #nl-hero .pagelayer-text-holder { max-width:500px; }
.nl-pagelayer-main #nl-hero .pagelayer-image-holder img { width:100%; min-height:365px; max-height:470px; object-fit:cover; object-position:65% center; filter:saturate(.75); }
.nl-pagelayer-main #nl-themes .pagelayer-service-container { height:100%; padding:18px 10px; border-radius:14px; transition:transform .2s ease, box-shadow .2s ease; }
.nl-pagelayer-main #nl-themes .pagelayer-col:hover .pagelayer-service-container { transform:translateY(-4px); }
.nl-pagelayer-main #nl-themes .pagelayer-service-icon i { color:var(--nl-blue) !important; }
.nl-pagelayer-main #nl-themes .pagelayer-service-heading { font-family:"Cormorant Garamond", Georgia, serif !important; color:var(--nl-blue-dark) !important; font-size:32px !important; font-weight:500 !important; line-height:1 !important; }
.nl-pagelayer-main #nl-themes .pagelayer-service-text { color:#53677a; line-height:1.6; }
.nl-pagelayer-main #nl-comfort { background:linear-gradient(90deg, #f9f3f1, #eaf1f6) !important; }
.nl-pagelayer-main #nl-comfort .pagelayer-heading-holder h2 { color:var(--nl-blue-dark) !important; font-weight:500 !important; }
.nl-pagelayer-main #nl-comfort .pagelayer-image-holder img { width:100%; max-height:370px; object-fit:cover; object-position:center; border-radius:14px; }
.nl-pagelayer-main #nl-appointment { background:linear-gradient(135deg, #587d9e, #294a67) !important; }
.nl-pagelayer-main #nl-appointment .pagelayer-heading-holder h2 { font-weight:500 !important; }
.nl-pagelayer-main #nl-appointment .pagelayer-btn-holder { background:#fff !important; color:var(--nl-blue-dark) !important; }
.nl-pagelayer-main .pagelayer-service-container a { text-decoration:none; }
.nl-pagelayer-main #nl-peri-intro,
.nl-pagelayer-main #nl-comfort-intro { background:linear-gradient(105deg, #f8f5f2, #edf3f7) !important; }
.nl-pagelayer-main #nl-peri-intro .pagelayer-heading-holder h1,
.nl-pagelayer-main #nl-comfort-intro .pagelayer-heading-holder h1 { color:var(--nl-blue-dark) !important; font-weight:500 !important; line-height:.94 !important; }
.nl-pagelayer-main #nl-peri-intro .pagelayer-image-holder img,
.nl-pagelayer-main #nl-comfort-intro .pagelayer-image-holder img { width:100%; min-height:320px; max-height:460px; object-fit:cover; border-radius:14px; filter:saturate(.78); }
@media (max-width:620px) {
  .nl-pagelayer-main #nl-hero .pagelayer-image-holder img { min-height:270px; }
  .nl-pagelayer-main #nl-themes .pagelayer-service-heading { font-size:28px !important; }
}
@media (max-width: 380px) {
  .nl-hero-copy { padding-left: 18px; padding-right: 18px; }
  .nl-hero-copy > .nl-eyebrow,
  .nl-hero-copy > .nl-title,
  .nl-hero-copy > .nl-lead,
  .nl-hero-copy > .nl-actions {
    max-width: 250px;
  }
  .nl-lead { font-size: 14px; line-height: 1.35; }
  .nl-hero-copy > .nl-lead { max-width: 27ch; }
  .nl-lead p { overflow-wrap: break-word; }
  .nl-btn { font-size: 13px; padding-left: 14px; padding-right: 14px; }
}

/* v2 visual direction: powder blue, warm ivory and quiet editorial femininity */
:root {
  --nl-blue: #587d9e;
  --nl-blue-dark: #294a67;
  --nl-blue-pale: #eaf1f6;
  --nl-ivory: #fffdfa;
  --nl-blush: #e8c4bf;
  --nl-text: #344251;
}
body { background: var(--nl-ivory); color: var(--nl-text); font-family: "DM Sans", Arial, sans-serif; }
.nl-page { background: var(--nl-ivory); }
.nl-v2 .nl-serif, .nl-v2 h1, .nl-v2 h2, .nl-v2 blockquote { font-family: "Cormorant Garamond", Georgia, serif; }
.nl-header { background: rgba(255,253,250,.92); border-bottom: 1px solid #e8e6e1; }
.nl-nav { min-height: 92px; }
.nl-logo-main { color: var(--nl-blue); font-family: "Cormorant Garamond", Georgia, serif; font-weight: 600; font-style: italic; font-size: 35px; letter-spacing: -.035em; }
.nl-logo-sub { color: var(--nl-blue); font-size: 8px; text-transform: uppercase; letter-spacing: .18em; margin: 7px 0 0 23px; }
.nl-logo-sub:before { display:none; }
.nl-menu { gap: 30px; font-size: 13px; }
.nl-menu a { color: var(--nl-blue-dark); opacity: .9; }
.nl-menu a.is-current { border-bottom: 2px solid var(--nl-blue); padding-bottom: 12px; }
.nl-menu a:hover { color: var(--nl-blue); }
.nl-header .nl-btn { min-height: 46px; padding: 11px 19px; background: #d89c99; border-color: #d89c99; box-shadow: none; font-weight: 600; }
.nl-header .nl-btn:hover { background: #c98986; }

.nl-v2 { overflow: hidden; }
.nl-v2-hero { background: linear-gradient(105deg, #f8f5f2 0%, #f4f2ee 48%, #e6edf3 100%); }
.nl-v2-hero-grid { min-height: 442px; display: grid; grid-template-columns: 47% 53%; }
.nl-v2-hero-copy { padding: 70px 42px 50px 28px; align-self: center; }
.nl-v2-kicker, .nl-v2-topic-subtitle, .nl-v2-practical-label { color: var(--nl-blue); font-size: 10px; letter-spacing: .22em; font-weight: 700; }
.nl-v2-hero-copy h1 { color: #29394b; font-size: clamp(46px, 4.6vw, 72px); font-weight: 500; line-height: .86; letter-spacing: -.035em; margin: 18px 0 15px; }
.nl-v2-hero-copy h1 em { font-style: normal; }
.nl-v2-title-rule { display:block; width: 34px; height: 1px; background: var(--nl-blue); margin: 17px 0; }
.nl-v2-hero-copy p { max-width: 378px; color: #465365; font-size: 15px; line-height: 1.55; margin: 0 0 22px; }
.nl-v2-primary { display:inline-flex; align-items:center; gap:11px; border-radius:999px; padding: 13px 22px; color:#fff; background: var(--nl-blue); font-size: 13px; font-weight: 700; text-decoration:none; box-shadow: 0 8px 16px rgba(67,106,138,.16); transition: .2s ease; }
.nl-v2-primary:hover { color:#fff; background: var(--nl-blue-dark); transform: translateY(-1px); }
.nl-v2-primary .nl-icon { width:17px; height:17px; }
.nl-v2-hero-photo { min-height: 442px; position:relative; overflow:hidden; background:#dce7ef; }
.nl-v2-hero-photo:after { content:""; position:absolute; inset:0; background: linear-gradient(90deg, rgba(226,234,241,.12), rgba(79,112,139,.08)); pointer-events:none; }
.nl-v2-hero-photo img { display:block; width:100%; height:100%; min-height:442px; object-fit:cover; object-position: 65% 45%; filter: saturate(.78) contrast(.98); }
.nl-v2-hero-script { position:absolute; right:8%; top:9%; z-index:2; color:#5c7f9d; font-family:"Cormorant Garamond", Georgia, serif; font-size:37px; font-style:italic; line-height:.77; text-align:center; transform:rotate(-5deg); opacity:.84; }
.nl-v2-hero-aside { position:absolute; right:5%; bottom:12%; z-index:2; color:#587d9e; font-size:9px; font-weight:700; letter-spacing:.2em; line-height:2.1; }
.nl-v2-hero-aside span { display:block; width:32px; height:1px; margin: 0 0 10px; background:#7b99b1; }

.nl-v2-themes { padding: 18px 0 8px; }
.nl-v2-theme-grid { display:grid; grid-template-columns: 1fr 1fr 1fr; gap:18px; align-items:stretch; }
.nl-v2-topic { min-height: 478px; border-radius:13px; overflow:hidden; position:relative; border:1px solid rgba(91,116,135,.12); }
.nl-v2-topic-birth { background:#f8e2df; color:#8b4d4e; }
.nl-v2-topic-comfort { background:linear-gradient(160deg, #eaf2f7, #f9fbfc); color:#577c9b; }
.nl-v2-topic-menopause { background:#edf0e4; color:#526a62; }
.nl-v2-topic-image, .nl-v2-menopause-image { position:absolute; inset:0; }
.nl-v2-topic-image img { width:100%; height:100%; object-fit:cover; object-position:45% center; filter:saturate(.52) brightness(1.14); }
.nl-v2-menopause-image { top:auto; height:57%; overflow:hidden; }
.nl-v2-menopause-image img { width:100%; height:100%; object-fit:cover; object-position:75% center; filter:saturate(.5) brightness(1.22); }
.nl-v2-topic-overlay { position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,247,244,.86), rgba(255,247,244,.76) 54%, rgba(244,207,201,.37)); }
.nl-v2-topic-menopause .nl-v2-topic-overlay { background:linear-gradient(180deg, rgba(245,247,235,.93), rgba(245,247,235,.91) 48%, rgba(245,247,235,.04)); }
.nl-v2-topic-content { position:relative; z-index:2; padding:35px 30px; display:flex; flex-direction:column; align-items:flex-start; height:100%; }
.nl-v2-topic-icon { font-family:"Cormorant Garamond", Georgia, serif; border:1px solid currentColor; width:51px; height:51px; display:grid; place-items:center; border-radius:50%; font-size:29px; margin-bottom:8px; }
.nl-v2-topic h2 { font-size:39px; font-weight:500; line-height:.95; margin:0 0 11px; letter-spacing:-.04em; }
.nl-v2-topic-subtitle { color:currentColor; font-size:9px; line-height:1.5; margin-bottom:19px; }
.nl-v2-topic p { font-size:14px; line-height:1.5; margin:0; max-width: 28ch; color:#3f5265; }
.nl-v2-topic-birth p { color:#694c50; }
.nl-v2-outline { color:currentColor; margin-top:auto; display:inline-flex; gap:10px; align-items:center; border:1px solid currentColor; border-radius:999px; padding:11px 17px; text-decoration:none; font-size:13px; font-weight:600; background:rgba(255,255,255,.25); transition:.2s ease; }
.nl-v2-outline:hover { color:currentColor; background:rgba(255,255,255,.65); }
.nl-v2-outline .nl-icon { width:16px; height:16px; }
.nl-v2-comfort-bloom { position:absolute; z-index:0; right:-10px; bottom:20px; font-family:"Cormorant Garamond", Georgia, serif; color:rgba(125,159,188,.25); font-size:240px; line-height:.65; }
.nl-v2-values { display:grid; grid-template-columns:repeat(3,1fr); gap: 18px; padding:24px 4%; color:var(--nl-blue-dark); }
.nl-v2-values div { display:grid; grid-template-columns:42px 1fr; align-items:center; column-gap:10px; }
.nl-v2-value-icon { grid-row:span 2; color:var(--nl-blue); font-size:32px; text-align:center; }
.nl-v2-values strong { font-size:14px; font-weight:600; }
.nl-v2-values small { font-size:8px; letter-spacing:.16em; color:#71869c; font-weight:700; }

.nl-v2-quote-section { padding: 28px 0 20px; background:linear-gradient(90deg, #fffdfa, #fbf7f4); }
.nl-v2-quote-grid { display:grid; grid-template-columns: 43% 57%; gap: 30px; align-items:center; }
.nl-v2-quote { padding: 24px 0 24px 4%; }
.nl-v2-quote blockquote { color:#527999; font-size:clamp(31px, 3.3vw, 48px); font-style:italic; font-weight:500; letter-spacing:-.035em; line-height:1.02; margin:0; }
.nl-v2-quote p { font-size:9px; letter-spacing:.19em; color:#71869c; font-weight:700; }
.nl-v2-newsletter { padding: 29px 38px; min-height:176px; display:grid; grid-template-columns:52px 1fr; column-gap:14px; align-items:start; background:linear-gradient(125deg, #e6eef5, #f5f8fa); border-radius:14px; position:relative; overflow:hidden; }
.nl-v2-newsletter:after { content:"Több\A női\A világ"; white-space:pre; position:absolute; right:21px; bottom:15px; color:#84a2ba; opacity:.65; font:italic 30px/.75 "Cormorant Garamond", Georgia, serif; transform:rotate(-5deg); }
.nl-v2-newsletter-icon { color:#5f85a4; padding-top:7px; }
.nl-v2-newsletter-icon .nl-icon { width:34px; height:34px; }
.nl-v2-newsletter h2 { margin:0 0 5px; color:#344a60; font-size:31px; font-weight:500; }
.nl-v2-newsletter p { color:#53677a; font-size:12px; margin:0; max-width:360px; }
.nl-v2-subscribe { grid-column:2; display:flex; position:relative; z-index:2; margin-top:14px; max-width:390px; background:#fff; border-radius:999px; padding:3px; }
.nl-v2-subscribe input { border:0; min-width:0; flex:1; outline:0; padding:8px 13px; border-radius:999px; font:12px "DM Sans", sans-serif; background:transparent; }
.nl-v2-subscribe button { display:flex; align-items:center; gap:8px; border:0; border-radius:999px; padding:10px 16px; color:#fff; background:var(--nl-blue); font:600 12px "DM Sans", sans-serif; cursor:pointer; }
.nl-v2-subscribe .nl-icon { width:15px; height:15px; }

.nl-v2-practical { padding: 34px 0 44px; }
.nl-v2-practical-grid { display:grid; grid-template-columns:1fr 1fr; gap:26px; align-items:stretch; }
.nl-v2-practical-grid > article:first-child { padding:38px 12% 36px 8%; background:#f6f0ee; border-radius:14px; }
.nl-v2-practical h2 { color:#33495f; font-size:43px; font-weight:500; line-height:.98; margin:12px 0 14px; }
.nl-v2-practical p { color:#526274; font-size:14px; line-height:1.55; margin:0 0 21px; max-width:46ch; }
.nl-v2-doctor-card { background:#edf3f7; border-radius:14px; overflow:hidden; display:grid; grid-template-columns: 37% 63%; }
.nl-v2-doctor-card > img { width:100%; height:100%; min-height:260px; object-fit:cover; }
.nl-v2-doctor-card > div { padding:35px 28px; }
.nl-v2-doctor-card span { color:#71869c; font-size:9px; letter-spacing:.18em; font-weight:700; }
.nl-v2-doctor-card h2 { font-size:34px; margin-top:10px; }
.nl-v2-doctor-card a { color:var(--nl-blue); font-size:13px; font-weight:700; text-decoration:none; }
.nl-v2-doctor-card a .nl-icon { width:16px; height:16px; vertical-align:middle; }
.nl-footer { background:#fffdfa; padding-top:22px; }
.nl-footer-brand { color:var(--nl-blue); font-family:"Cormorant Garamond", Georgia, serif; font-style:italic; }
.nl-footer-item .nl-icon, .nl-footer-legal a:hover { color:var(--nl-blue); }

@media (max-width: 980px) {
  .nl-v2-hero-grid, .nl-v2-quote-grid, .nl-v2-practical-grid { grid-template-columns:1fr; }
  .nl-v2-hero-copy { padding:54px 8%; }
  .nl-v2-hero-photo { min-height:420px; }
  .nl-v2-hero-photo img { min-height:420px; }
  .nl-v2-theme-grid { grid-template-columns:repeat(2,1fr); }
  .nl-v2-topic-menopause { grid-column:span 2; }
  .nl-v2-topic-menopause .nl-v2-menopause-image { width:46%; left:auto; height:100%; }
  .nl-v2-topic-menopause .nl-v2-topic-overlay { background:linear-gradient(90deg, rgba(245,247,235,1) 0%, rgba(245,247,235,.94) 52%, rgba(245,247,235,.15)); }
  .nl-v2-quote { padding-left:0; }
}
@media (max-width: 620px) {
  .nl-header .nl-btn { font-size:12px; padding:10px 14px; min-height:40px; }
  .nl-header .nl-btn .nl-icon { width:18px; height:18px; }
  .nl-logo-main { font-size:29px; }
  .nl-menu a.is-current { padding-bottom:4px; }
  .nl-v2-hero-grid { width:100%; }
  .nl-v2-hero-copy { padding:46px 24px 38px; }
  .nl-v2-kicker { font-size:8px; }
  .nl-v2-hero-copy h1 { font-size:47px; }
  .nl-v2-hero-photo, .nl-v2-hero-photo img { min-height:315px; }
  .nl-v2-hero-aside { font-size:7px; }
  .nl-v2-theme-grid { grid-template-columns:1fr; gap:14px; }
  .nl-v2-topic { min-height:420px; }
  .nl-v2-topic-menopause { grid-column:auto; }
  .nl-v2-topic-menopause .nl-v2-menopause-image { width:100%; height:55%; }
  .nl-v2-topic-menopause .nl-v2-topic-overlay { background:linear-gradient(180deg, rgba(245,247,235,.96), rgba(245,247,235,.89) 51%, rgba(245,247,235,.08)); }
  .nl-v2-topic-content { padding:30px 25px; }
  .nl-v2-values { grid-template-columns:1fr; padding:23px 10%; }
  .nl-v2-quote-section { padding-top:12px; }
  .nl-v2-newsletter { padding:27px 22px; grid-template-columns:38px 1fr; }
  .nl-v2-newsletter:after { display:none; }
  .nl-v2-subscribe { grid-column:1 / -1; }
  .nl-v2-practical-grid > article:first-child { padding:30px 24px; }
  .nl-v2-practical h2 { font-size:37px; }
  .nl-v2-doctor-card { grid-template-columns: 34% 66%; }
  .nl-v2-doctor-card > div { padding:25px 18px; }
  .nl-v2-doctor-card h2 { font-size:30px; }
}

/* Homepage art direction: airy editorial blue, blush and sage. */
.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.nl-header {
  background: rgba(255, 252, 249, .96);
  border-bottom: 1px solid rgba(74, 103, 130, .08);
  box-shadow: none;
}
.nl-header .nl-wrap {
  width: min(1180px, calc(100% - 68px));
}
.nl-nav {
  min-height: 92px;
  gap: 19px;
  flex-wrap: nowrap;
}
.nl-logo {
  flex: 0 0 auto;
  min-width: 238px;
}
.nl-logo-main {
  color: #547997;
  font-family: "Allura", cursive;
  font-size: 38px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0;
  line-height: .85;
  white-space: nowrap;
}
.nl-logo-main > span {
  color: #dc9796;
  display: inline-flex;
  width: 36px;
  height: 36px;
  vertical-align: middle;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: .58em;
  margin-right: 3px;
  transform: none;
}
.nl-logo-main img { display: block; width: 100%; height: 100%; object-fit: contain; }
.nl-logo-sub {
  color: #6e89a1;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .2em;
  margin: 8px 0 0 28px;
  text-transform: uppercase;
}
.nl-menu {
  flex: 1 1 auto;
  justify-content: center;
  gap: clamp(11px, 1.45vw, 25px);
  min-width: 0;
  font-size: 12px;
}
.nl-menu a {
  border: 0;
  color: #344e66;
  opacity: .92;
  padding: 13px 0 11px;
  position: relative;
  white-space: nowrap;
}
.nl-menu a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 4px;
  left: 0;
  height: 1px;
  background: #537b9c;
  opacity: 0;
  transform: scaleX(.45);
  transition: opacity .18s ease, transform .18s ease;
}
.nl-menu a:hover::after,
.nl-menu a.is-current::after {
  opacity: 1;
  transform: scaleX(1);
}
.nl-menu a.is-current { border-bottom: 0; }
.nl-header .nl-menu-title { display: block; }
.nl-header:not(.nl-header-home) .nl-logo-main { display: block; }
.nl-header:not(.nl-header-home) .nl-logo-sub { display: block; }
@media (min-width: 861px) {
  .nl-header:not(.nl-header-home) .nl-wrap { width: min(1400px, calc(100% - 40px)); }
  .nl-header:not(.nl-header-home) .nl-menu > a { flex: 0 0 auto; }
}
.nl-menu-title > span { color: #d49694; }
.nl-header .nl-menu-subtitle {
  display: block;
  margin-top: 3px;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.45;
  white-space: normal;
}
.nl-search-link {
  color: #3d6280;
  display: inline-flex;
  flex: 0 0 28px;
  align-items: center;
  justify-content: center;
  padding: 8px 0;
  text-decoration: none;
}
.nl-search-link .nl-icon { width: 22px; height: 22px; }
.nl-header .nl-header-cta {
  min-height: 43px;
  padding: 10px 18px;
  flex: 0 0 auto;
  border: 0;
  background: linear-gradient(135deg, #dda4a1, #cf8e8b);
  box-shadow: none;
  font-size: 12px;
  font-weight: 600;
}
.nl-header .nl-header-cta:hover { background: linear-gradient(135deg, #d49592, #c77f7c); }
.nl-header-cta > span { font-size: 14px; }
.nl-menu-toggle {
  display: none;
  width: 40px;
  height: 40px;
  padding: 10px 8px;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.nl-menu-toggle > span:not(.screen-reader-text) {
  display: block;
  width: 23px;
  height: 1px;
  margin: 5px auto;
  background: #3d6280;
  transition: transform .18s ease, opacity .18s ease;
}
.nl-menu-toggle[aria-expanded="true"] > span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.nl-menu-toggle[aria-expanded="true"] > span:nth-child(2) { opacity: 0; }
.nl-menu-toggle[aria-expanded="true"] > span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

.nl-homepage,
.nl-home-main { background: #fffdfa; }
.nl-home-shell { width: 100%; margin: 0 auto; }
.nl-home-content { width: min(1180px, calc(100% - 76px)); margin: 0 auto; }
.nl-home-hero {
  color: #2f4153;
  background: linear-gradient(104deg, #f9f7f4 0%, #f3f4f5 49%, #e2ebf2 100%);
}
.nl-home-hero-grid {
  display: grid;
  grid-template-columns: 49% 51%;
  min-height: 444px;
}
.nl-home-hero-copy {
  z-index: 2;
  align-self: center;
  padding: 48px 38px 47px max(68px, calc((100vw - 1180px) / 2));
}
.nl-home-kicker {
  color: #557d9e;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .23em;
  line-height: 1.4;
  text-transform: uppercase;
}
.nl-home-kicker i,
.nl-community-quote p i {
  display: inline-block;
  width: 3px;
  height: 3px;
  margin: 0 8px 3px;
  border-radius: 50%;
  background: currentColor;
}
.nl-home-hero h1 {
  max-width: 535px;
  margin: 17px 0 13px;
  color: #2c3e50;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(43px, 4.3vw, 67px);
  font-weight: 500;
  letter-spacing: -.035em;
  line-height: .9;
}
.nl-home-rule {
  display: block;
  width: 32px;
  height: 1px;
  margin: 18px 0 16px;
  background: #527a9b;
}
.nl-home-hero-copy p {
  margin: 0 0 18px;
  color: #3f4d5d;
  font-size: 14px;
  line-height: 1.48;
}
.nl-home-button {
  display: inline-flex;
  min-height: 45px;
  padding: 11px 20px;
  align-items: center;
  gap: 11px;
  color: #fff;
  border-radius: 999px;
  background: linear-gradient(135deg, #5e84a3, #426b8b);
  box-shadow: 0 8px 18px rgba(54, 91, 122, .18);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease;
}
.nl-home-button:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 11px 24px rgba(54, 91, 122, .24); }
.nl-home-button .nl-icon { width: 16px; height: 16px; }
.nl-home-hero-media {
  position: relative;
  min-width: 0;
  min-height: 444px;
  overflow: hidden;
}
.nl-home-hero-media::before {
  content: "";
  z-index: 1;
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #f1f4f5 0%, rgba(238, 243, 246, .54) 12%, rgba(223, 233, 241, .06) 42%, rgba(77, 111, 139, .06) 100%);
  pointer-events: none;
}
.nl-home-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 444px;
  object-fit: cover;
  object-position: 59% 48%;
  filter: saturate(.62) contrast(.96) brightness(1.03);
}
.nl-home-script,
.nl-newsletter-script {
  z-index: 2;
  position: absolute;
  color: #6588a4;
  font-family: "Allura", cursive;
  font-style: normal;
  font-weight: 400;
  text-align: center;
  transform: rotate(-6deg);
}
.nl-home-script {
  top: 42px;
  right: 5.5%;
  font-size: 42px;
  line-height: .72;
}
.nl-home-aside {
  z-index: 2;
  position: absolute;
  right: 5.4%;
  bottom: 67px;
  color: #66849d;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .22em;
  line-height: 2.05;
  text-transform: uppercase;
}
.nl-home-aside span {
  display: block;
  width: 31px;
  height: 1px;
  margin: 0 0 10px -1px;
  background: #7895ab;
}

.nl-home-topics { padding: 16px 0 8px; }
.nl-topic-layout {
  display: grid;
  grid-template-columns: .98fr .88fr 1.1fr;
  grid-template-rows: 492px 88px;
  gap: 14px;
}
.nl-feature-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(68, 100, 126, .09);
  border-radius: 13px;
  background: #edf3f7;
}
.nl-feature-birth { color: #924e4d; background: #f6dcd7; }
.nl-feature-comfort { color: #527a9b; background: #eaf1f7; }
.nl-feature-menopause {
  grid-row: 1 / span 2;
  grid-column: 3;
  color: #53695f;
  background: #edf0e7;
}
.nl-feature-photo,
.nl-feature-wash {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.nl-feature-photo { object-fit: cover; }
.nl-feature-birth .nl-feature-photo {
  object-position: 52% 66%;
  filter: saturate(.4) brightness(1.06);
}
.nl-feature-comfort .nl-feature-photo {
  object-position: 54% 73%;
  filter: saturate(.54) brightness(1.08);
}
.nl-feature-menopause .nl-feature-photo {
  object-position: 52% 55%;
  filter: saturate(.47) brightness(1.07);
}
.nl-feature-birth .nl-feature-wash { background: linear-gradient(180deg, rgba(255, 238, 234, .96) 0%, rgba(255, 231, 226, .92) 49%, rgba(230, 157, 149, .38) 77%, rgba(213, 136, 128, .18) 100%); }
.nl-feature-comfort .nl-feature-wash { background: linear-gradient(180deg, rgba(238, 245, 250, .98) 0%, rgba(238, 245, 250, .93) 51%, rgba(229, 239, 247, .37) 73%, rgba(218, 233, 243, .06) 100%); }
.nl-feature-menopause .nl-feature-wash { background: linear-gradient(180deg, rgba(242, 245, 237, .98) 0%, rgba(242, 245, 237, .94) 48%, rgba(235, 239, 228, .34) 67%, rgba(223, 230, 217, .04) 100%); }
.nl-feature-copy {
  z-index: 2;
  position: relative;
  display: flex;
  height: 100%;
  padding: 29px 29px 31px;
  flex-direction: column;
  align-items: flex-start;
}
.nl-feature-symbol {
  display: grid;
  width: 57px;
  height: 50px;
  margin: 0 auto -46px 0;
  place-items: center;
  color: currentColor;
  font: 42px/.8 "Cormorant Garamond", Georgia, serif;
}
.nl-feature-woman { font-size: 46px; transform: rotate(180deg); }
.nl-feature-leaf { font-size: 48px; }
.nl-feature-card h2 {
  margin: 0 0 9px 61px;
  color: currentColor;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(31px, 3.3vw, 43px);
  font-weight: 500;
  letter-spacing: -.04em;
  line-height: 1;
}
.nl-feature-comfort h2 { margin-left: 53px; font-size: clamp(29px, 3vw, 39px); }
.nl-feature-subtitle {
  width: 100%;
  margin: 5px 0 20px;
  color: currentColor;
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: .2em;
  line-height: 1.65;
  text-align: center;
  text-transform: uppercase;
}
.nl-feature-card p {
  max-width: 29ch;
  margin: 0;
  color: #3d5264;
  font-size: 13px;
  line-height: 1.55;
}
.nl-feature-birth p { color: #684b4c; }
.nl-feature-menopause p { color: #44554f; }
.nl-card-button {
  display: inline-flex;
  min-height: 43px;
  margin-top: auto;
  padding: 10px 17px;
  align-items: center;
  gap: 10px;
  color: currentColor;
  border: 1px solid currentColor;
  border-radius: 999px;
  background: rgba(255, 255, 255, .24);
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  transition: background .18s ease, transform .18s ease;
}
.nl-card-button:hover { color: currentColor; background: rgba(255, 255, 255, .64); transform: translateY(-1px); }
.nl-card-button .nl-icon { width: 15px; height: 15px; }
.nl-home-values {
  grid-column: 1 / 3;
  display: grid;
  grid-template-columns: 1fr 1fr;
  color: #3c5f7d;
}
.nl-home-values > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.nl-value-symbol {
  color: #577f9f;
  font: 42px/1 "Cormorant Garamond", Georgia, serif;
}
.nl-home-values p { margin: 0; }
.nl-home-values strong,
.nl-home-values small { display: block; }
.nl-home-values strong { font-size: 14px; font-weight: 600; }
.nl-home-values small { margin-top: 2px; color: #6b8397; font-size: 8px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }

.nl-home-community {
  padding: 24px 0 22px;
  background: linear-gradient(90deg, #fffdfa, #fbf7f4);
}
.nl-community-grid {
  display: grid;
  grid-template-columns: 38% 62%;
  align-items: center;
  gap: 28px;
}
.nl-community-quote { position: relative; padding: 19px 26px 17px 27px; }
.nl-community-quote::after {
  content: "";
  position: absolute;
  left: 27px;
  bottom: 40px;
  width: 30px;
  height: 1px;
  background: #7694ab;
}
.nl-community-quote blockquote {
  margin: 0;
  color: #567d9c;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(26px, 2.75vw, 38px);
  font-style: italic;
  font-weight: 500;
  letter-spacing: -.035em;
  line-height: 1.02;
}
.nl-community-quote p {
  margin: 47px 0 0;
  color: #6f88a0;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.nl-quote-heart {
  position: absolute;
  right: 19%;
  bottom: 38px;
  color: #d79b99;
  font: 35px/1 "Cormorant Garamond", Georgia, serif;
}
.nl-newsletter {
  position: relative;
  display: grid;
  min-height: 178px;
  padding: 30px 39px;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: start;
  column-gap: 13px;
  overflow: hidden;
  border-radius: 13px;
  background: linear-gradient(115deg, #e7eef4 0%, #f2f5f7 70%, #ecf2f6 100%);
}
.nl-newsletter-icon { color: #557d9e; padding-top: 4px; }
.nl-newsletter-icon .nl-icon { width: 35px; height: 35px; }
.nl-newsletter h2 {
  margin: 0 0 2px;
  color: #31465a;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 30px;
  font-weight: 500;
  letter-spacing: -.025em;
  line-height: 1;
}
.nl-newsletter p { margin: 0; color: #526679; font-size: 11px; line-height: 1.5; }
.nl-newsletter-form {
  z-index: 2;
  grid-column: 1 / 3;
  display: flex;
  width: min(430px, 82%);
  margin-top: 13px;
  padding: 3px;
  border-radius: 999px;
  background: #fff;
}
.nl-newsletter-form input {
  min-width: 0;
  flex: 1;
  padding: 9px 15px;
  border: 0;
  border-radius: 999px;
  outline: 0;
  color: #40566a;
  background: transparent;
  font: 12px "DM Sans", sans-serif;
}
.nl-newsletter-form button {
  display: inline-flex;
  padding: 9px 16px;
  align-items: center;
  gap: 8px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #6387a4, #456c8b);
  font: 600 12px "DM Sans", sans-serif;
  cursor: pointer;
}
.nl-newsletter-form .nl-icon { width: 14px; height: 14px; }
.nl-newsletter-script { right: 25px; bottom: 19px; font-size: 31px; line-height: .72; opacity: .7; }

.nl-home-articles { padding: 30px 0 48px; }
.nl-section-heading { display: flex; align-items: center; justify-content: center; gap: 24px; margin: 0 0 24px; }
.nl-section-heading span { width: 94px; height: 1px; background: #aab9c5; }
.nl-section-heading h2 {
  margin: 0;
  color: #34495d;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 30px;
  font-weight: 500;
}
.nl-article-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.nl-article-card { overflow: hidden; border-radius: 11px; background: #edf3f6; }
.nl-article-card a { display: block; color: #34495d; text-decoration: none; }
.nl-article-card img { display: block; width: 100%; height: 190px; object-fit: cover; filter: saturate(.62); transition: transform .35s ease; }
.nl-article-card:hover img { transform: scale(1.025); }
.nl-article-card div { padding: 18px 20px 21px; }
.nl-article-card small { color: #6e8aa0; font-size: 8px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.nl-article-card h3 { margin: 7px 0 0; font: 500 25px/1.02 "Cormorant Garamond", Georgia, serif; }

.nl-urgent-note {
  grid-column: 2;
  margin-top: 1px;
  padding: 15px 17px;
  border-left: 3px solid #c56f72;
  border-radius: 0 8px 8px 0;
  color: #6b4547;
  background: #fff0ed;
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1120px) {
  .nl-header .nl-wrap { width: calc(100% - 40px); }
  .nl-nav { gap: 13px; }
  .nl-logo { min-width: 203px; }
  .nl-logo-main { font-size: 34px; }
  .nl-menu { gap: 11px; font-size: 11px; }
  .nl-header .nl-header-cta { padding-inline: 15px; font-size: 11px; }
  .nl-home-hero-copy { padding-left: 7%; }
  .nl-feature-copy { padding-inline: 25px; }
}

@media (max-width: 860px) {
  .nl-header .nl-wrap { width: calc(100% - 30px); }
  .nl-nav { position: relative; min-height: 76px; padding: 10px 0; align-items: center; flex-wrap: wrap; }
  .nl-logo { min-width: 0; order: 1; }
  .nl-logo-main { font-size: 33px; }
  .nl-logo-sub { font-size: 7px; }
  .nl-menu-toggle { display: block; order: 3; flex: 0 0 40px; }
  .nl-search-link { display: none; }
  .nl-header .nl-header-cta { order: 2; margin-left: auto; }
  .nl-menu {
    order: 4;
    display: none;
    width: 100%;
    padding: 10px 0 8px;
    gap: 2px;
    flex-direction: column;
    align-items: stretch;
    border-top: 1px solid rgba(74, 103, 130, .11);
  }
  .nl-menu.is-open { display: flex; }
  .nl-menu a { padding: 9px 4px; font-size: 13px; }
  .nl-menu a::after { display: none; }
  .nl-menu a.is-current { color: #527b9c; font-weight: 700; }
  .nl-home-hero-grid { grid-template-columns: 1fr; }
  .nl-home-hero-copy { padding: 52px 8% 45px; }
  .nl-home-hero-media,
  .nl-home-hero-media img { min-height: 410px; }
  .nl-home-hero-media img { object-position: 57% 48%; }
  .nl-home-content { width: calc(100% - 40px); }
  .nl-topic-layout { grid-template-columns: 1fr 1fr; grid-template-rows: 490px 490px auto; }
  .nl-feature-menopause { grid-column: 1 / 3; grid-row: 2; }
  .nl-feature-menopause .nl-feature-photo { object-position: 50% 60%; }
  .nl-feature-menopause .nl-feature-wash { background: linear-gradient(90deg, rgba(242,245,237,.98), rgba(242,245,237,.9) 52%, rgba(223,230,217,.1)); }
  .nl-feature-menopause .nl-feature-copy { width: 54%; }
  .nl-home-values { grid-column: 1 / 3; grid-row: 3; min-height: 92px; }
  .nl-community-grid { grid-template-columns: 1fr; }
  .nl-community-quote { padding-left: 0; }
  .nl-community-quote::after { left: 0; }
  .nl-newsletter { min-height: 190px; }
  .nl-article-grid { grid-template-columns: 1fr 1fr; }
  .nl-article-card:last-child { grid-column: 1 / 3; }
  .nl-urgent-note { grid-column: auto; }
}

@media (max-width: 620px) {
  .nl-header .nl-wrap { width: calc(100% - 24px); max-width: none; }
  .nl-nav { gap: 5px; }
  .nl-logo-main { font-size: 28px; }
  .nl-logo-sub { max-width: 174px; margin: 6px 0 0 20px; font-size: 6px; letter-spacing: .14em; }
  .nl-header .nl-header-cta,
  .nl-nav > .nl-header-cta {
    display: inline-flex;
    width: auto;
    min-height: 38px;
    padding: 9px 12px;
    flex: 0 0 auto;
    font-size: 11px;
    white-space: nowrap;
  }
  .nl-header-cta > span { display: none; }
  .nl-menu-toggle { width: 36px; flex-basis: 36px; padding-inline: 5px; }
  .nl-home-hero-copy { padding: 44px 24px 39px; }
  .nl-home-kicker { font-size: 8px; letter-spacing: .17em; }
  .nl-home-kicker i { margin-inline: 4px; }
  .nl-home-hero h1 { font-size: clamp(39px, 12.1vw, 54px); line-height: .91; }
  .nl-home-hero-copy p { font-size: 13px; }
  .nl-desktop-break { display: none; }
  .nl-home-hero-media,
  .nl-home-hero-media img { min-height: 350px; }
  .nl-home-script { top: 31px; font-size: 34px; }
  .nl-home-aside { right: 4%; bottom: 35px; font-size: 7px; }
  .nl-home-content { width: calc(100% - 28px); }
  .nl-home-topics { padding-top: 14px; }
  .nl-topic-layout { display: flex; flex-direction: column; gap: 14px; }
  .nl-feature-card { min-height: 475px; }
  .nl-feature-menopause { min-height: 570px; }
  .nl-feature-menopause .nl-feature-copy { width: 100%; }
  .nl-feature-menopause .nl-feature-wash { background: linear-gradient(180deg, rgba(242,245,237,.98), rgba(242,245,237,.92) 50%, rgba(223,230,217,.08)); }
  .nl-feature-copy { padding: 29px 26px; }
  .nl-feature-card h2 { font-size: 39px; }
  .nl-home-values { min-height: 0; grid-template-columns: 1fr; gap: 17px; padding: 12px 0 18px; }
  .nl-home-values > div { justify-content: flex-start; padding-left: 13%; }
  .nl-community-grid { gap: 12px; }
  .nl-community-quote { padding: 18px 4px; }
  .nl-community-quote blockquote { font-size: 30px; }
  .nl-community-quote::after { left: 4px; }
  .nl-newsletter { padding: 27px 22px; grid-template-columns: 38px 1fr; }
  .nl-newsletter h2 { font-size: 28px; }
  .nl-newsletter-form { width: 100%; }
  .nl-newsletter-form button { padding-inline: 13px; }
  .nl-newsletter-script { display: none; }
  .nl-section-heading { gap: 14px; }
  .nl-section-heading span { width: 45px; }
  .nl-section-heading h2 { font-size: 28px; }
  .nl-article-grid { grid-template-columns: 1fr; }
  .nl-article-card:last-child { grid-column: auto; }
}

@media (max-width: 400px) {
  .nl-logo-main { font-size: 25px; }
  .nl-logo-sub { display: none; }
  .nl-header .nl-header-cta,
  .nl-nav > .nl-header-cta { padding-inline: 10px; font-size: 10px; }
  .nl-menu-toggle { width: 33px; flex-basis: 33px; }
  .nl-home-hero-copy { padding-inline: 20px; }
  .nl-newsletter-form { display: grid; border-radius: 18px; }
  .nl-newsletter-form button { justify-content: center; }
}
