/* Auszeit submenu: the parent link remains directly accessible. */
.nlr-nav-group {position:relative}
.nlr-nav-parent {display:flex;align-items:center;gap:4px;padding-inline:6px;margin-inline:-6px;border-radius:7px;border-bottom:1px solid transparent;transition:background .18s,border-color .18s}
.nlr-navigation .nlr-nav-parent>a {border-bottom:0}
.nlr-nav-group.is-open .nlr-nav-parent,.nlr-nav-parent:has(a[aria-current]) {background:rgb(255 250 238 / 45%);border-bottom-color:#a7803e}
.nlr-submenu-toggle {display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#183d2c;min-width:24px;min-height:44px;padding:0;cursor:pointer;border-radius:5px}
.nlr-submenu-toggle span {display:block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);font-size:0;transition:transform .18s}
.nlr-submenu-toggle[aria-expanded="true"] span {transform:translateY(2px) rotate(225deg)}
.nlr-submenu {position:absolute;top:calc(100% + 8px);left:-6px;min-width:220px;padding:7px;background:#fffaf0;border:1px solid #d8c59f;border-radius:10px;box-shadow:0 12px 30px rgb(65 49 24 / 15%);z-index:1}
.nlr-submenu::before {content:'';position:absolute;left:0;right:0;top:-10px;height:10px}
.nlr-submenu[hidden],.nlr-submenu-toggle[hidden] {display:none!important}
.nlr-navigation .nlr-submenu>a {display:block;white-space:normal;padding:12px 15px;border:0;border-radius:6px;font-size:15px;line-height:1.5;transition:background .18s}
.nlr-navigation .nlr-submenu>a:hover,.nlr-navigation .nlr-submenu>a:focus-visible,.nlr-navigation .nlr-submenu>a[aria-current] {background:#eee5d1;color:#183d2c;border:0}
@media(max-width:1280px){
 .nlr-nav-parent {justify-content:space-between;padding-inline:0;margin-inline:0}
 .nlr-nav-parent>a {flex:1}
 .nlr-submenu-toggle {min-width:44px;min-height:48px}
 .nlr-submenu {position:relative;top:auto;left:auto;min-width:0;margin:4px 0 8px 16px;padding:5px;background:#f5eddd;border:0;border-left:2px solid #c19438;border-radius:0 8px 8px 0;box-shadow:none}
 .nlr-submenu::before {display:none}
 .nlr-navigation .nlr-submenu>a {font-size:16px;padding:12px}
}
/* Intrinsic dimensions reserve image space while CSS controls display size. */
:where(img[width][height]) {height:auto}
/* Shared, self-contained navigation and footer. */
.nlr-header,.nlr-footer,.nlr-notice {font-family:'Nunito Sans',sans-serif;color:#183d2c;line-height:1.6;font-size:18px}
.nlr-header *,.nlr-footer * {box-sizing:border-box}
.nlr-header {position:relative;z-index:30;background:#faf6eb;border-bottom:1px solid #dfd7bf}
.nlr-header-inner {max-width:1320px;padding:16px 28px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}
.nlr-brand {display:flex;align-items:center;gap:12px;text-decoration:none!important;color:#183d2c!important;flex-shrink:0}
.nlr-brand img {display:block;width:112px;height:112px;object-fit:contain}
.nlr-brand strong {display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;font-weight:600;line-height:1.15;letter-spacing:-.5px}
.nlr-brand small {display:block;font-size:10px;letter-spacing:1.9px;margin-top:7px;text-transform:uppercase}
.nlr-navigation {display:flex;align-items:center;gap:25px}
.nlr-navigation a {font-family:'Nunito Sans',sans-serif;font-size:15px;font-weight:700;color:#183d2c;text-decoration:none;white-space:nowrap;padding:11px 0;border-bottom:1px solid transparent}
.nlr-navigation a:hover,.nlr-navigation a[aria-current] {border-bottom-color:#896019;color:#183d2c}
.nlr-navigation a.nlr-nav-contact {border:1px solid #183d2c;padding:11px 18px;border-radius:5px;display:flex;gap:18px}
.nlr-navigation a.nlr-nav-contact:hover {background:#183d2c;color:#fff}
.nlr-menu-toggle {display:none;background:transparent;border:1px solid #b4b99f;border-radius:5px;color:#183d2c;align-items:center;gap:9px;padding:12px;font:700 13px 'Nunito Sans',sans-serif;cursor:pointer}
.nlr-menu-icon {width:16px;height:12px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor;position:relative}
.nlr-menu-icon:after {content:'';position:absolute;top:4px;left:0;width:16px;border-top:1.5px solid currentColor}
.nlr-skip {position:fixed;left:20px;top:12px;transform:translateY(-180%);background:#183d2c;color:white!important;padding:12px 22px;z-index:1000;border-radius:4px}
.nlr-skip:focus {transform:translateY(0)}
.nlr-header a:focus-visible,.nlr-header button:focus-visible,.nlr-footer a:focus-visible {outline:3px solid #896019;outline-offset:5px}
.nlr-notice {max-width:1240px;margin:20px auto;padding:20px;background:#e8ece3}
.nlr-footer {background:#faf6eb;border-top:1px solid #dddcc8;padding:65px 28px 22px}
.nlr-footer-inner {max-width:1240px;margin:auto}
.nlr-footer-grid {display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:45px}
.nlr-footer-brand {font:600 29px/1.2 'Cormorant Garamond',Georgia,serif;margin:0 0 14px}
.nlr-footer-intro p {max-width:280px;color:#596657;font-size:18px;margin:0 0 18px}
.nlr-footer h2 {font:800 13px/1.4 'Nunito Sans',sans-serif;text-transform:uppercase;letter-spacing:1.6px;margin:4px 0 20px;color:#183d2c}
.nlr-footer-links {display:grid;gap:9px}
.nlr-footer a {color:#183d2c;text-decoration:none;font-size:18px}
.nlr-footer a:hover {color:#183d2c;text-decoration:underline;text-underline-offset:4px}
.nlr-footer-social {display:grid;grid-template-columns:repeat(2,max-content);gap:4px 22px;margin-top:19px}
.nlr-footer-social a {display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:16px;text-decoration:none;border-radius:4px}
.nlr-footer-social .nlr-social-icon {width:20px;height:20px;flex:0 0 20px}
.nlr-footer-social a:hover span {text-decoration:underline;text-underline-offset:4px}
.nlr-footer-social a:focus-visible {outline:2px solid currentColor;outline-offset:4px}
.nlr-footer-note {font-size:14px;color:#626c5a;max-width:920px;line-height:1.7;margin:35px 0 0}
.nlr-footer-bottom {display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #dddcc8;padding-top:20px;margin-top:25px;font-size:14px;color:#626c5a}
.nlr-footer-bottom a {font-size:14px}
@media(max-width:1280px){
 .nlr-header-inner {flex-wrap:wrap;gap:0;padding:12px 28px}
 .nlr-brand img {width:96px;height:96px}
 .nlr-menu-toggle:not([hidden]) {display:flex}
 .nlr-navigation {width:100%;padding:16px 0 10px;gap:5px;flex-direction:column;align-items:stretch}
 .nlr-navigation a {padding:13px 6px;font-size:18px}
 .nlr-navigation a.nlr-nav-contact {margin-top:10px;justify-content:space-between}
 .nlr-nav-ready .nlr-navigation {display:none}
 .nlr-nav-ready .nlr-navigation.is-open {display:flex}
 .nlr-footer-grid {grid-template-columns:1.4fr 1fr;gap:35px}
}
@media(max-width:540px){
 .nlr-header-inner {padding:10px 20px}
 .nlr-brand {gap:7px}
 .nlr-brand img {width:76px;height:76px}
 .nlr-brand strong {font-size:21px;letter-spacing:-.5px}
 .nlr-brand small {font-size:8px;letter-spacing:1px;margin-top:4px}
 .nlr-menu-toggle {padding:12px 9px}
 .nlr-menu-toggle>span:last-child {display:none}
 .nlr-footer {padding:45px 20px 24px}
 .nlr-footer-grid {grid-template-columns:1fr 1fr;gap:32px 18px}
 .nlr-footer-intro {grid-column:1/-1}
 .nlr-footer-bottom {display:block}
 .nlr-footer-bottom>span {display:block;margin-top:10px}
}
/* Readable copy on the older detail pages; their original theme uses !important. */
body:not(.page-home-finished) :is(.page-hero,.section-title,.story-card,.text-card,.soft-card,.content-card,.contact-panel,.form-panel,.legal-card,.music-card-copy) p {font-size:18px!important;line-height:1.8!important}
body:not(.page-home-finished) .page-hero p {font-size:19px!important}
body:not(.page-home-finished) :is(.story-card,.text-card,.content-card,.legal-card) li {font-size:18px!important;line-height:1.8!important}
body:not(.page-home-finished) :is(.contact-form,.form-panel) :is(label,input,select,textarea) {font-size:17px}
.song-intro>p {font-size:18px}
.song-benefits {font-size:17px}
.song-price-intro span {font-size:15px;max-width:180px}
.nlr-navigation {gap:19px}
.nlr-footer-grid {grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px}
.nlr-footer-bottom {flex-wrap:wrap}
@media(max-width:1280px){.nlr-footer-grid {grid-template-columns:1fr 1fr;gap:35px}}
@media(max-width:540px){.nlr-footer-grid {grid-template-columns:1fr;gap:30px}.nlr-footer-intro {grid-column:auto}.nlr-footer h2 {margin-bottom:13px}.nlr-footer a {font-size:16px}.nlr-footer-intro p {font-size:17px}}

/* Chakra spectrum reserved for the fine brand line. */
:root {
 --nlr-chakra-red:#bd5048;
 --nlr-chakra-orange:#ce7433;
 --nlr-chakra-yellow:#d0a22e;
 --nlr-chakra-green:#4f8757;
 --nlr-chakra-blue:#3989af;
 --nlr-chakra-indigo:#4656ad;
 --nlr-chakra-violet:#7040a1;
 --nlr-chakra-spectrum:linear-gradient(90deg,var(--nlr-chakra-red),var(--nlr-chakra-orange),var(--nlr-chakra-yellow),var(--nlr-chakra-green),var(--nlr-chakra-blue),var(--nlr-chakra-indigo),var(--nlr-chakra-violet));
}

.nlr-header::before {content:'';display:block;height:3px;background:linear-gradient(90deg,#617343,#c19438 35%,#edce7e 50%,#c19438 65%,#617343)}
.nlr-footer-butterfly {display:block;width:86px;height:86px;object-fit:contain;margin:0 0 14px}
.nlr-footer {background:#f2efe2}
.nl-content {--nl-ink:#183d2c;--nl-muted:#596657;--nl-olive:#30543d;--nl-paper:#fff;--nl-cream:#f2efe2;--nl-line:#dddcc8}
.nl-content :is(h1,h2) em {color:#896019}
.nl-content .nl-kicker {color:#686544}
.nl-content .nl-tint,.nl-content .nl-paper,.nl-content .nl-place-hero {background:#f2efe2}
.nl-content .nl-button:not(.nl-button-light) {background:#183d2c;border-color:#183d2c}
.nl-content .nl-button:not(.nl-button-light):hover {background:#30543d}
.nl-content .nl-text-link {color:#30543d!important;border-bottom-color:#c1ab77}
.nl-content .nl-filterbar button[aria-pressed=true] {background:#183d2c;border-color:#183d2c}
.nl-content .nl-cta {background:#183d2c}

@media(max-width:380px){.nlr-brand img {width:68px;height:68px}.nlr-brand strong {font-size:18px}.nlr-brand small {font-size:7.5px;letter-spacing:.7px}}

/* Keep the portrait video beside its introduction on wider screens. */
.about-video-layout {display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:70px;align-items:center}
.page-about .about-video-layout .section-title {margin:0!important;min-width:0}
.about-video-preview {width:100%;max-width:330px;justify-self:center}
.about-video-preview .click-play-video {width:100%;max-width:330px;margin:0;border-radius:16px}
@media(max-width:900px){.about-video-layout {gap:35px;grid-template-columns:minmax(0,1fr) minmax(240px,.8fr)}}
@media(max-width:700px){.about-video-layout {grid-template-columns:1fr;gap:28px}.about-video-preview {max-width:300px;justify-self:start}}
/* Persistent direct contact, with a compact row on smaller screens. */
.nlr-contact-rail {position:fixed;z-index:40;right:12px;top:50%;transform:translateY(-50%);display:grid;width:78px;padding:5px;background:#fff;border:1px solid #dddcc8;border-radius:13px;box-shadow:0 5px 22px #20222814;font-family:'Nunito Sans',sans-serif;box-sizing:border-box}
.nlr-contact-rail a {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:66px;padding:8px 2px;color:#183d2c;text-decoration:none;border-radius:8px;font-size:11px;font-weight:700;line-height:1.4}
.nlr-contact-rail a+a {border-top:1px solid #e4dfd0}
.nlr-contact-rail a:hover {background:#edf0e5;color:#183d2c}
.nlr-contact-rail a:focus-visible {outline:3px solid #896019;outline-offset:2px}
.nlr-contact-rail svg {display:block;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1350px){
 .nlr-contact-rail {top:auto;bottom:calc(12px + env(safe-area-inset-bottom));right:12px;transform:none;grid-template-columns:repeat(3,1fr);width:264px;padding:4px}
 .nlr-contact-rail a {min-height:58px;font-size:12px;gap:3px}
 .nlr-contact-rail a+a {border-top:0;border-left:1px solid #e4dfd0}
 .nlr-footer {padding-bottom:calc(108px + env(safe-area-inset-bottom))}
}
@media print{.nlr-contact-rail {display:none}}
/* Cookie information uses the actual storage functions; no invented consent categories. */
.nlr-cookie-dialog {box-sizing:border-box;width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:28px;border:1px solid #d9d4cb;border-radius:16px;background:#fffdf8;color:#183d2c;box-shadow:0 20px 80px #0003;font-family:"Nunito Sans",sans-serif;overflow-y:auto;overscroll-behavior:contain;}
.nlr-cookie-dialog:not([open]) {display:none;}
.nlr-cookie-dialog::backdrop {background:rgb(30 32 34 / 55%);}
.nlr-cookie-header,.nlr-cookie-category-title,.nlr-cookie-actions {display:flex;align-items:center;justify-content:space-between;gap:16px;}
.nlr-cookie-kicker {font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;}
.nlr-cookie-dialog .nlr-cookie-close {flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid #d9d4cb;border-radius:50%;background:transparent;color:#183d2c;font-size:28px;line-height:1;cursor:pointer;}
.nlr-cookie-dialog h2 {font-family:"Cormorant Garamond",serif;font-size:clamp(28px,4vw,36px);font-weight:500;line-height:1.15;margin:12px 0 18px;}
.nlr-cookie-dialog p {font-size:16px;line-height:1.65;margin:0 0 12px;text-align:left;}
.nlr-cookie-category {padding:20px 0;border-top:1px solid #dedad2;}
.nlr-cookie-dialog h3 {font-family:"Nunito Sans",sans-serif;font-size:17px;line-height:1.4;font-weight:800;margin:0;}
.nlr-cookie-status {flex-shrink:0;padding:5px 8px;border-radius:6px;background:#efede8;font-size:12px;font-weight:700;}
.nlr-cookie-category-title {margin-bottom:12px;flex-wrap:wrap;gap:8px;}
.nlr-cookie-dialog summary {cursor:pointer;font-size:15px;font-weight:700;padding:8px 0;}
.nlr-cookie-dialog dl {margin:12px 0;}
.nlr-cookie-dialog dt {font-size:15px;font-weight:800;margin-top:12px;}
.nlr-cookie-dialog dd,.nlr-cookie-dialog .nlr-cookie-small {font-size:14px;line-height:1.6;margin:5px 0 0;}
.nlr-cookie-actions {padding-top:8px;flex-wrap:wrap;}
.nlr-cookie-dialog a {color:#183d2c;text-decoration:underline;text-underline-offset:4px;font-size:15px;}
.nlr-cookie-dialog .nlr-cookie-done {min-height:46px;padding:10px 24px;background:#183d2c;color:#fff;border:1px solid #183d2c;border-radius:6px;font-family:inherit;font-size:16px;font-weight:700;cursor:pointer;}
.nlr-cookie-dialog :is(a,button,summary):focus-visible {outline:2px solid #183d2c;outline-offset:4px;}
@media(max-width:480px) {.nlr-cookie-dialog {padding:20px;}.nlr-cookie-actions {align-items:stretch;flex-direction:column;}.nlr-cookie-actions a {padding:10px 0;}.nlr-cookie-done {width:100%;}}

.nlr-footer-legal {display:grid;grid-template-columns:150px minmax(0,1fr);align-items:baseline;gap:16px 24px;border-top:1px solid #dddcc8;margin-top:32px;padding-top:24px;}
.nlr-footer .nlr-footer-legal h2 {margin:0;}
.nlr-footer-legal nav {display:flex;flex-wrap:wrap;gap:12px 24px;}
@media(max-width:540px) {.nlr-footer-legal {grid-template-columns:1fr;gap:16px;}.nlr-footer-legal nav {display:grid;gap:12px;}}

/* Logo palette: forest green, soft ivory and restrained golden details. */
.nlr-header {background:linear-gradient(110deg,#e7d8c1,#d9c3a3 65%,#cdb18a);border-bottom-color:#b1936b;box-shadow:0 4px 24px rgb(103 69 33 / 8%)}
@media(max-width:1280px){
 .nlr-header .nlr-navigation {background:rgba(255,250,238,.97);border-radius:10px;padding:12px 16px;margin-top:8px;}
}
.nlr-brand small {color:#70613c}
.nlr-brand img {filter:drop-shadow(0 3px 7px rgb(119 91 25 / 10%))}
.nlr-navigation a.nlr-nav-contact {background:#183d2c;color:#fffdf5;border-color:#183d2c;border-radius:8px}
.nlr-navigation a.nlr-nav-contact:hover {background:#30543d;border-color:#30543d;color:#fffdf5}
.nlr-menu-toggle {background:rgb(255 253 245 / 70%)}
.nlr-footer {background:linear-gradient(135deg,#f4f0e2,#edf0e5);border-top-color:#cbbd92}
.nlr-contact-rail {background:#fffdf5;border-color:#d5c69f;box-shadow:0 5px 22px rgb(24 61 44 / 9%)}

/* Keep all four offering areas readable beneath the brand name. */
.nlr-brand small {font-size:11px;line-height:1.5;letter-spacing:1px}
@media(max-width:540px){.nlr-brand small {font-size:9px;letter-spacing:.6px}}
@media(max-width:380px){.nlr-brand small {font-size:8.5px;letter-spacing:.5px}}

/* Brand lettering matches the italic home-page heading. */
.nlr-brand strong,.nlr-footer-brand {font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:500;letter-spacing:0}
.nlr-brand strong {font-size:32px;line-height:1.2}
.nlr-footer-brand {font-size:32px;line-height:1.25}
@media(max-width:540px){.nlr-brand strong {font-size:24px}}
@media(max-width:380px){.nlr-brand strong {font-size:21px}}

@media(max-width:380px){.nlr-header-inner {padding-inline:16px}}
