:root{--ns-gold:#D0A039;--ns-sun:#E0AA3E;--ns-ivory:#F9F0C9;--ns-cream:#FBF6DD;--ns-cacao:#3C1F0F;--ns-brown:#56301B;--ns-olive:#333821;--ns-sage:#E3E7CC;--ns-sage2:#DDE3C4;--ns-mist:#F4F5E4;--ns-leaf:#4A5530;--ns-terra:#B8532F;--ns-head:'Cormorant Garamond',Georgia,serif;--ns-body:'Source Serif 4',Georgia,serif}
body{font-family:var(--ns-body);color:var(--ns-cacao)}
h1,h2,h3,.h0,.h1,.h2,.h3{font-family:var(--ns-head);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ns-olive)}
.ns-sec{padding:clamp(48px,7vw,104px) 0}
.ns-wrap{max-width:1240px;margin:0 auto;padding:0 clamp(20px,4vw,64px)}
.ns-center{text-align:center}
.ns-eyebrow{font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--ns-leaf);font-weight:600;margin:0 0 12px}
.ns-h2{margin:0 0 20px;font-family:var(--ns-head);font-weight:500;font-size:clamp(30px,4.2vw,52px);line-height:1.05;letter-spacing:.05em;text-transform:uppercase;color:var(--ns-olive)}
.ns-lead{font-size:clamp(16px,1.5vw,19px);line-height:1.7;margin:0 0 20px}
.ns-btn{display:inline-block;background:var(--ns-olive);color:var(--ns-ivory);border:1px solid var(--ns-olive);padding:16px 36px;font-size:13px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;cursor:pointer;min-height:52px;font-family:var(--ns-body)}
.ns-btn:hover{background:var(--ns-cacao);color:var(--ns-ivory)}
.ns-btn--gold{background:var(--ns-gold);border-color:var(--ns-gold);color:var(--ns-cacao)}
.ns-btn--gold:hover{background:var(--ns-sun);color:var(--ns-cacao)}
.ns-btn--ghost{background:transparent;color:var(--ns-olive)}
.ns-btn--ghost:hover{background:var(--ns-olive);color:var(--ns-ivory)}
.ns-bg-ivory{background:var(--ns-ivory)}.ns-bg-cream{background:var(--ns-cream)}.ns-bg-sage{background:var(--ns-sage)}.ns-bg-mist{background:var(--ns-mist)}
.ns-bg-olive{background:var(--ns-olive);color:var(--ns-ivory)}.ns-bg-cacao{background:var(--ns-cacao);color:var(--ns-ivory)}.ns-bg-gold{background:var(--ns-gold);color:var(--ns-cacao)}
.ns-bg-olive h1,.ns-bg-olive h2,.ns-bg-olive h3,.ns-bg-olive .ns-h2,.ns-bg-cacao h2,.ns-bg-cacao .ns-h2,.ns-bg-cacao h3{color:var(--ns-ivory)}
.ns-bg-olive .ns-eyebrow,.ns-bg-cacao .ns-eyebrow{color:var(--ns-gold)}
.ns-bg-olive .ns-btn,.ns-bg-cacao .ns-btn{background:var(--ns-gold);border-color:var(--ns-gold);color:var(--ns-cacao)}
.ns-split{display:flex;flex-wrap:wrap;align-items:stretch}
.ns-split__media{flex:1 1 520px;min-height:520px;background:var(--ns-sage2);overflow:hidden;position:relative}
.ns-split__media img,.ns-split__media video{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}
.ns-split__text{flex:1 1 480px;padding:clamp(40px,6vw,96px) clamp(24px,5vw,72px);display:flex;flex-direction:column;justify-content:center}
.ns-split--flip .ns-split__media{order:2}
.ns-ph{display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;color:var(--ns-leaf);font-size:14px;background:var(--ns-sage2);width:100%;height:100%;position:absolute;inset:0}
.ns-grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.ns-card{background:var(--ns-cream);padding:28px;display:flex;flex-direction:column;gap:10px}
.ns-card h3{margin:0;font-size:24px}
.ns-card p{margin:0;font-size:15.5px;line-height:1.65}
.ns-num{font-family:var(--ns-head);font-size:40px;color:var(--ns-gold);line-height:1}
.ns-bullets{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:8px}
.ns-bullets li:before{content:"\2726";color:var(--ns-gold);margin-right:12px}
.ns-rail{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px;scrollbar-width:thin}
.ns-rail>*{flex:0 0 min(300px,78vw);scroll-snap-align:start}
.ns-rail--wide>*{flex-basis:min(420px,84vw)}
.ns-rail img,.ns-rail video{width:100%;display:block;object-fit:cover}
.ns-vid{aspect-ratio:9/16;background:var(--ns-olive);overflow:hidden}
.ns-vid video,.ns-vid iframe{width:100%;height:100%;object-fit:cover;border:0;display:block}
.ns-faq details{border-bottom:1px solid rgba(51,56,33,.18)}
.ns-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:20px 0;font-size:17px;color:var(--ns-olive)}
.ns-faq summary::-webkit-details-marker{display:none}
.ns-faq summary:after{content:"+";font-size:22px}
.ns-faq details[open] summary:after{content:"\2212"}
.ns-faq .ns-ans{padding:0 0 22px;font-size:16px;line-height:1.7}
.ns-ing{display:flex;gap:20px;align-items:baseline;padding:16px 0;border-top:1px solid rgba(51,56,33,.18)}
.ns-ing__dot{width:12px;height:12px;border-radius:50%;background:var(--ns-gold);flex:0 0 auto}
.ns-ing__name{flex:0 0 150px;font-family:var(--ns-head);font-weight:600;font-size:23px;letter-spacing:.06em;text-transform:uppercase;color:var(--ns-olive)}
.ns-ing__text{font-size:15px;line-height:1.55}
.ns-ing__research{margin-top:8px;font-size:13.5px;line-height:1.55;color:var(--ns-leaf)}
.ns-ing__research b{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
.ns-note{margin:20px 0 0;padding:16px 18px;background:var(--ns-mist);font-size:13.5px;line-height:1.6}
.ns-modal{border:0;padding:0;width:min(960px,94vw);max-height:88vh;background:var(--ns-cream);box-shadow:0 24px 80px rgba(0,0,0,.4)}
.ns-modal::backdrop{background:rgba(30,33,18,.6)}
.ns-modal__bar{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;background:var(--ns-terra);color:var(--ns-cream);padding:14px 26px;z-index:2}
.ns-modal__bar h2{margin:0;color:var(--ns-cream);font-size:clamp(20px,3vw,30px)}
.ns-modal__close{background:transparent;border:1px solid var(--ns-cream);color:var(--ns-cream);width:40px;height:40px;font-size:20px;cursor:pointer}
.ns-modal__body{padding:26px 30px 34px}
.ns-pill{padding:8px 16px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--ns-olive);background:transparent;color:var(--ns-olive);cursor:pointer;margin:0 8px 8px 0}
.ns-pill[aria-pressed="true"]{background:var(--ns-olive);color:var(--ns-ivory)}
.ns-grp{margin-bottom:26px}
.ns-grp__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;border-bottom:2px solid var(--ns-gold);padding-bottom:8px;margin-bottom:6px}
.ns-grp__head h3{margin:0;font-size:26px}
.ns-grp__head span{font-size:14px;color:var(--ns-leaf)}
.ns-row{display:flex;flex-wrap:wrap;gap:4px 24px;padding:10px 0;border-bottom:1px solid rgba(51,56,33,.1)}
.ns-row__n{flex:0 0 280px}.ns-row__n b{display:block;font-size:16px}.ns-row__n i{font-size:12px;color:var(--ns-brown);font-style:normal}
.ns-row__b{flex:1 1 280px;font-size:15px;line-height:1.55}
.ns-quote{background:var(--ns-cream);padding:28px;margin:0;display:flex;flex-direction:column;gap:12px}
.ns-quote blockquote{margin:0;font-size:16.5px;line-height:1.65}
.ns-quote figcaption{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--ns-leaf)}
.ns-stars{letter-spacing:.2em;color:var(--ns-olive)}
.ns-marquee{background:var(--ns-gold);color:var(--ns-cacao);padding:14px 20px;font-family:var(--ns-head);font-weight:600;font-size:clamp(16px,2vw,22px);letter-spacing:.2em;text-transform:uppercase;text-align:center;overflow:hidden;white-space:nowrap}
.ns-hero{position:relative;min-height:clamp(480px,78vh,720px);display:flex;align-items:flex-end;color:var(--ns-cream);background:var(--ns-olive);overflow:hidden}
.ns-hero video,.ns-hero img.ns-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ns-hero__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(30,33,18,.82),rgba(30,33,18,.05) 60%)}
.ns-hero__in{position:relative;width:100%;padding:56px clamp(20px,4vw,64px) 44px;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:flex-end}
.ns-hero h1{margin:0;color:var(--ns-cream);font-size:clamp(34px,6vw,72px);line-height:1.02}
.ns-hero p{margin:10px 0 0;max-width:520px;font-size:clamp(16px,1.6vw,20px);line-height:1.6}
.ns-quiz__opt{display:block;width:100%;text-align:left;margin:0 0 10px;padding:14px 18px;border:1px solid var(--ns-gold);background:transparent;color:var(--ns-ivory);font-size:16px;cursor:pointer;font-family:var(--ns-body)}
.ns-quiz__opt:hover{background:var(--ns-gold);color:var(--ns-cacao)}
.ns-sticky-note{font-size:13px;color:var(--ns-leaf);letter-spacing:.06em}
@media(max-width:749px){.ns-ing{flex-direction:column;gap:6px}.ns-ing__name{flex-basis:auto}.ns-split__media{min-height:360px}.ns-row__n{flex-basis:100%}}
/* Dawn tweaks */
.product__title h1,.product__title h2{font-size:clamp(34px,4vw,56px);line-height:1;letter-spacing:.08em}
.product-form__submit,.button:not(.button--secondary){letter-spacing:.2em;text-transform:uppercase;font-size:13px}
.card__heading,.card-information .price{font-family:var(--ns-head)}
.card__heading{font-size:22px;letter-spacing:.08em;text-transform:uppercase}
.accordion summary{font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.header__menu-item,.header__menu-item span{font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.announcement-bar__message{letter-spacing:.14em;text-transform:uppercase;font-size:12px}