.page.section .page__inner{max-width:52rem;margin-inline:auto}
.page.section .rte{line-height:1.8}
.page.section .rte h2{margin-top:2.2em;padding-top:1em;border-top:1px solid #e7e1d8;font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.35}
.page.section .rte p:first-child{font-size:1.12rem;color:#5e574f}
.page.section .rte a,.contact__text a{text-underline-offset:.2em}
.nv-page__hero{padding:28px 0 54px;background:#ece7de;border-bottom:1px solid #d9cfc0}
.nv-page__breadcrumb{display:flex;gap:12px;align-items:center;font-size:11px;letter-spacing:.08em;color:#72665b;margin-bottom:46px}
.nv-page__breadcrumb a{color:inherit}
.nv-page__eyebrow{text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.2em;color:#796a55;margin-bottom:16px}
.nv-page__hero .page__title{font-size:clamp(2.5rem,5vw,4.7rem);font-weight:400;line-height:1.08;max-width:1000px;letter-spacing:-.035em;margin:0 0 18px;color:#302b25}
.nuvien-store .nv-page__hero .page__title{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}
.nuvien-store .nv-page__layout .rte h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.015em}
.nv-page__intro{font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.6;color:#73695d;margin:0}
.nv-page__layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:64px;padding-block:54px 72px}
.nv-page__layout--simple{display:block;max-width:850px}
.nv-page__layout .rte{line-height:1.85;color:#574e44;font-size:1rem;overflow-wrap:anywhere}
.nv-page__layout .rte h2{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.35;color:#322b25;margin:2.4em 0 1em;padding-top:1em;border-top:1px solid #e2d9cc;scroll-margin-top:140px}
.nv-page__layout .rte h2:first-child{margin-top:0;border-top:0;padding-top:0}
.nv-page__layout .rte a{color:#51432d;text-decoration-thickness:1px;text-underline-offset:4px}
.nv-page__aside{align-self:start;position:sticky;top:130px;font-size:12px}
.nv-page__aside summary{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;padding:0 0 16px;cursor:pointer}
.nv-page__aside nav{display:grid;border-left:1px solid #ddd2c2;gap:2px}
.nv-page__aside nav a{display:block;padding:9px 0 9px 15px;color:#766d61;text-decoration:none;line-height:1.5;border-left:2px solid transparent;margin-left:-1px}
.nv-page__aside nav a[aria-current],.nv-page__aside nav a:hover{border-color:#E3BC59;color:#332b24;background:#f5f0e7}
.nv-page__help{display:block;margin-top:28px;padding:20px;background:#eee7db;color:#463a2a;text-decoration:none}
.nv-page__help span{display:block;font-size:11px;margin-top:7px}
.nv-page__layout--simple .rte>ul{list-style:none;padding:22px 28px;background:#f3eee5;border:1px solid #e3d9cb}
.nv-page__layout--simple .rte>ul li{padding:8px 0}
.contact__form input,.contact__form textarea{background:#fffcf6!important;border-color:#d9cebe!important;border-radius:0!important}
.contact__form input:focus,.contact__form textarea:focus{outline:2px solid #715922;outline-offset:2px}
@media(max-width:899px){.nv-page__layout{grid-template-columns:1fr;gap:28px;padding-block:30px 44px}.nv-page__aside{position:static}.nv-page__aside nav{grid-template-columns:repeat(2,minmax(0,1fr))}.nv-page__help{display:none}.nv-page__hero{padding-bottom:36px}.nv-page__breadcrumb{margin-bottom:30px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.nv-card__media-wrap{position:relative}
.nv-save{position:absolute;z-index:2;right:10px;top:10px;width:40px;height:40px;padding:0;border:1px solid #e6e2da;background:#ffffffed;color:#292720;border-radius:10px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 7px #24201608;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}
.nv-save .nv-heart{display:block;width:21px;height:21px;fill:transparent;transition:fill .18s ease,stroke .18s ease,transform .18s ease}
.nv-save[aria-pressed=true]{background:#fffbf1;border-color:#E3BC59;color:#715922}
.nv-save[aria-pressed=true] .nv-heart{fill:#E3BC59}
@media(hover:hover){.nv-save:hover{background:#fff;border-color:#E3BC59;box-shadow:0 3px 10px #24201610}.nv-save:hover .nv-heart{transform:scale(1.08)}}
.nv-save:focus-visible{outline:2px solid #715922;outline-offset:3px}
.nv-save:active .nv-heart{transform:scale(.92)}
.nv-favorites-toast{position:fixed;z-index:120;top:var(--nv-toast-top,110px);right:24px;display:flex;align-items:center;gap:12px;width:min(340px,calc(100vw - 32px));padding:15px 18px;border:1px solid #e6dfd1;border-radius:12px;background:#fff;color:#292720;box-shadow:0 8px 32px #211b131a;font-family:'DM Sans',Arial,sans-serif;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(-7px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.nv-favorites-toast.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.nv-favorites-toast__icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:10px;background:#fbf5e5;color:#715922}
.nv-favorites-toast__icon .nv-heart{width:20px;height:20px;fill:#E3BC59}
.nv-favorites-toast[data-kind=removed] .nv-heart,.nv-favorites-toast[data-kind=error] .nv-heart{fill:none}
.nv-favorites-toast__copy{min-width:0}.nv-favorites-toast strong{display:block;font-size:13px;font-weight:650;line-height:1.4}.nv-favorites-toast__product{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:3px;font-size:12px;line-height:1.4;color:#746e65;overflow-wrap:anywhere}
@media(max-width:749px){.nv-favorites-toast{right:16px;padding:13px 15px}}
@media(prefers-reduced-motion:reduce){.nv-save,.nv-save .nv-heart,.nv-favorites-toast{transition:none}.nv-save:hover .nv-heart,.nv-save:active .nv-heart{transform:none}}
.nv-favorites{max-width:1240px;margin:auto;padding:0 24px 80px}
.nv-favorites__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:24px 0 40px}
.nv-favorite{position:relative;display:flex;flex-direction:column;gap:10px;padding-bottom:18px;border-bottom:1px solid #ddd5cb}
.nv-favorite a{color:inherit;text-decoration:none}
.nv-favorite img{width:100%;aspect-ratio:1;object-fit:contain;background:#f8f5f0}
.nv-favorite h2{font-size:1.05rem;line-height:1.45;margin:0}
.nv-favorite p{margin:0;color:#685c50}
@media(max-width:749px){.nv-favorites__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.nv-favorites{padding-inline:16px}.nv-save{width:44px;height:44px;top:7px;right:7px}}
