/* Noble Days — everything is namespaced .nd-*. Loaded only on ND templates / when an nd_ shortcode renders.
   Fonts: no @import, no font loading. Headings and body inherit the fonts configured in Flatsome
   (Theme Options → Style → Typography). --nd-serif is used only for decorative elements that are not
   headings; it names the same family, so it renders once Flatsome loads it, else falls back to Georgia. */
:root{
	--nd-ink:#1C1C1A;--nd-taupe:#8A806F;--nd-cream:#F4F1EB;--nd-cream2:#EAE5DC;--nd-green:#78806B;--nd-red:#A45B50;--nd-line:#D8D1C6;--nd-white:#fff;
	--nd-serif:"Cormorant Garamond",Georgia,serif;
	--nd-max:1200px;--nd-gap:24px;--nd-pad:24px;--nd-s3:24px;--nd-s4:40px;--nd-s5:64px;
}
/* ---------- Containers & type ---------- */
.nd-main{background:var(--nd-cream);color:var(--nd-ink);font-size:16px;line-height:1.6;overflow-x:clip}
.nd-main h1,.nd-main h2,.nd-main h3,.nd-main h4,.nd-footer h2{font-weight:500;color:var(--nd-ink);letter-spacing:0;text-transform:none;line-height:1.12;margin-top:0}
.nd-main a{color:inherit;transition:color .2s}
.nd-main a:hover{color:var(--nd-taupe)}
.nd-wrap{max-width:calc(var(--nd-max) + 2*var(--nd-pad));margin-inline:auto;padding-inline:var(--nd-pad);width:100%;box-sizing:border-box}
.nd-kicker{display:block;font-size:11px;font-weight:500;line-height:1;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.nd-kicker--rule{display:flex;align-items:center;justify-content:center;gap:16px;font-size:12px}
.nd-kicker--rule::before,.nd-kicker--rule::after{content:"";width:64px;height:1px;background:var(--nd-ink)}
.nd-label{font-size:13px;font-weight:500;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px}
.nd-italic,.nd-deck,.nd-story__deck{font-family:var(--nd-serif);font-style:italic;font-size:19px;line-height:1.35}
.nd-meta{font-size:14px;line-height:1.4}
.nd-meta span::before{content:"·";margin:0 10px}
.nd-more{display:inline-flex;gap:8px;font-size:12px;font-weight:500;line-height:1;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}
.nd-btn,.nd-form button{background:var(--nd-ink);color:var(--nd-white);border:0;border-radius:0;font-size:12px;font-weight:500;line-height:1;letter-spacing:.1em;text-transform:uppercase;padding:0 22px;min-height:44px;cursor:pointer;margin:0;box-shadow:none}
.nd-btn:hover,.nd-form button:hover{background:var(--nd-taupe);color:#fff}
.nd-form{display:flex;margin:0}
.nd-form input[type=email],.nd-searchform input[type=search]{flex:1;min-width:0;height:44px;border:1px solid var(--nd-line);border-radius:0;background:var(--nd-white);box-shadow:none;padding:0 14px;margin:0;font-size:15px}
.nd-ruled{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin:0 0 24px}
.nd-ruled::before,.nd-ruled::after{content:"";flex:1;height:1px;background:var(--nd-line)}
.nd-img{display:block;width:100%;height:100%;object-fit:cover}
.nd-img--empty{background:var(--nd-cream2);aspect-ratio:3/2}
.nd-admin-note{background:var(--nd-cream2);padding:12px 16px;font-size:13px}
.nd-section{padding-block:var(--nd-s3);border-top:1px solid var(--nd-line)}
.nd-section:first-child{border-top:0}

/* ---------- Footer columns ([nd_footer] inside Flatsome's footer) ---------- */
.nd-footer{max-width:var(--nd-max);margin-inline:auto;color:var(--nd-ink);font-size:15px}
.nd-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.4fr;gap:var(--nd-s4)}
.nd-footer__logo{font-family:var(--nd-serif);font-weight:500;font-size:28px;margin:0 0 12px}
.nd-footer ul{list-style:none;margin:0;padding:0}
.nd-footer li{margin:0 0 8px}
.nd-footer a{text-decoration:none;color:inherit}
.nd-footer a:hover{color:var(--nd-taupe)}

/* ---------- Story (shared) ---------- */
.nd-story{position:relative;display:flex;flex-direction:column;margin:0}
.nd-story__media{display:block;overflow:hidden;position:relative}
.nd-story__body{padding:16px 0}
.nd-story__title{font-size:26px;margin:0 0 8px}
.nd-story__title a{text-decoration:none}
.nd-story__deck{margin:0 0 16px}
.nd-story--card .nd-story__media,.nd-story--stack .nd-story__media{aspect-ratio:3/2}
.nd-story--card{background:var(--nd-cream2)}
.nd-story--card .nd-story__body{padding:14px 16px 18px}
.nd-story--card .nd-story__title,.nd-story--stack .nd-story__title{font-size:21px}
.nd-story--split{flex-direction:row;background:var(--nd-cream2);align-items:stretch}
.nd-story--split .nd-story__media{flex:0 0 52%}
.nd-story--split .nd-story__media::after{content:"";position:absolute;inset:0 0 0 auto;width:35%;background:linear-gradient(90deg,transparent,var(--nd-cream2))}
.nd-story--split .nd-story__body{flex:1;align-self:center;padding:24px}
.nd-story--compact .nd-story__media{flex-basis:42%}
.nd-story--compact .nd-story__title{font-size:23px}
.nd-story--compact .nd-story__deck{font-size:16px;margin-bottom:10px}

/* hero 8/4 */
.nd-hero .nd-story--hero{display:grid;grid-template-columns:repeat(12,1fr);background:var(--nd-cream2);min-height:520px}
.nd-story--hero .nd-story__media{grid-column:1/9;height:520px}
.nd-story--hero .nd-story__body{grid-column:9/13;align-self:center;padding:var(--nd-s4) 32px}
.nd-story--hero .nd-story__title{font-size:clamp(34px,3.4vw,46px)}
/* main feature 7/5 */
.nd-main-feature{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--nd-gap)}
.nd-main-feature__lead{grid-column:1/8}
.nd-main-feature__side{grid-column:8/13;display:grid;gap:var(--nd-gap);align-content:start}
.nd-main-feature__lead .nd-story{height:100%}
.nd-story--tall .nd-story__media{flex-basis:56%;min-height:380px}
.nd-story--tall .nd-story__title{font-size:34px}
/* wide travel feature 9/3 — the only section with the cream/glass fade */
.nd-story--wide{display:grid;grid-template-columns:repeat(12,1fr);background:var(--nd-cream2);min-height:300px}
.nd-story--wide .nd-story__media{grid-column:1/10;height:320px}
.nd-story--wide .nd-story__media::after{content:"";position:absolute;inset:0 0 0 auto;width:28%;background:linear-gradient(90deg,rgba(234,229,220,0),rgba(234,229,220,.78) 70%,var(--nd-cream2));backdrop-filter:blur(1.5px)}
.nd-story--wide .nd-story__body{grid-column:10/13;align-self:center;padding:24px 28px 24px 8px}
.nd-story--wide .nd-story__title{font-size:clamp(28px,2.6vw,36px)}
/* edit 2/8/2 */
.nd-edit--home{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--nd-gap);align-items:center;max-width:calc(var(--nd-max) + 2*var(--nd-pad));margin:0 auto;padding:var(--nd-s3) var(--nd-pad);border-top:1px solid var(--nd-line);box-sizing:border-box}
.nd-edit--home .nd-edit__head{grid-column:1/3;padding-right:16px;border-right:1px solid var(--nd-line)}
.nd-edit--home .nd-edit__items{grid-column:3/11}
.nd-edit--home .nd-edit__more{grid-column:11/13;justify-self:end;text-align:right}
.nd-edit__title{font-family:var(--nd-serif);font-style:italic;font-weight:500;font-size:40px;margin:0 0 8px}
.nd-edit__sub{font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;margin:0}
.nd-edit__items{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:var(--nd-gap)}
.nd-edit__item{margin:0}
.nd-edit__item a{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;gap:6px}
.nd-edit__item img{width:100%;max-width:110px;height:100px;object-fit:contain;mix-blend-mode:multiply}
.nd-edit__name,.nd-edit__price{font-size:13px}
.nd-edit__price{font-weight:500}
.nd-edit--article{background:var(--nd-cream2);padding:16px 20px 20px;margin:var(--nd-s4) 0}
.nd-edit--article .nd-edit__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.nd-edit--article .nd-edit__head .nd-label{margin:0}
.nd-edit--article .nd-edit__item{background:var(--nd-white);padding:12px 8px}
.nd-edit--article .nd-edit__item a{align-items:flex-start;text-align:left}
/* editorial pair */
.nd-editorial-pair{display:grid;grid-template-columns:repeat(12,1fr)}
.nd-editorial-pair .nd-story{grid-column:span 6}
.nd-editorial-pair .nd-story+.nd-story{border-left:1px solid var(--nd-line)}
.nd-editorial-pair .nd-story__title{font-size:30px}
/* latest */
.nd-latest__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px}
.nd-latest__title{font-family:var(--nd-serif);font-style:italic;font-weight:500;font-size:32px;margin:0}
.nd-latest__tools{display:flex;align-items:center;gap:12px}
.nd-arrow{width:36px;height:36px;border:1px solid var(--nd-ink);background:transparent;border-radius:0;color:var(--nd-ink);cursor:pointer;padding:0;margin:0;line-height:1;min-height:0;box-shadow:none}
.nd-arrow:hover{background:var(--nd-ink);color:#fff}
.nd-latest__track{--cols:5;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--cols) - 1)*16px)/var(--cols));gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab}
.nd-latest__track::-webkit-scrollbar{display:none}
.nd-latest__track.is-drag{cursor:grabbing;scroll-snap-type:none}
.nd-latest__track .nd-story{scroll-snap-align:start}
.nd-latest__track img{pointer-events:none}
/* newsletter */
.nd-newsletter{background:var(--nd-cream2);margin-top:var(--nd-s4);padding-block:var(--nd-s4)}
.nd-newsletter__in{display:grid;grid-template-columns:1.3fr 1fr;gap:var(--nd-s4);align-items:center}
.nd-newsletter__title{font-family:var(--nd-serif);font-style:italic;font-weight:500;font-size:clamp(28px,3vw,38px);margin:0 0 6px}
.nd-newsletter__sub{margin:0;font-size:14px}
.nd-newsletter-box{background:var(--nd-cream2);padding:24px}
.nd-newsletter-box .nd-form{flex-direction:column;gap:12px}
.nd-newsletter-box .nd-label{font-family:var(--nd-serif);font-size:24px;letter-spacing:.02em}

/* ---------- Article ---------- */
.nd-article-header{text-align:center;padding-block:var(--nd-s4) var(--nd-s3);max-width:900px}
.nd-article-title{font-size:clamp(34px,4.6vw,56px);margin:16px 0}
.nd-article-header .nd-deck{max-width:720px;margin:0 auto 20px;font-size:21px}
.nd-article-header .nd-meta span::before{content:"·"}
.nd-article-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--nd-s4);align-items:start}
.nd-article-main{grid-column:1/9;min-width:0}
.nd-article-figure{margin:0 0 var(--nd-s3)}
.nd-article-figure img{width:100%;height:auto;display:block}
.nd-article-figure figcaption{font-size:13px;color:var(--nd-taupe);margin-top:8px}
.nd-article-content{font-size:17px;line-height:1.7}
.nd-article-content p{margin:0 0 1.2em}
.nd-article-content h2{font-size:38px;margin:1.4em 0 .4em}
.nd-article-content h3{font-size:28px;margin:1.2em 0 .4em}
.nd-article-content>p:first-of-type::first-letter{font-family:var(--nd-serif);font-weight:500;font-size:76px;line-height:.8;float:left;padding:6px 12px 0 0}
.nd-article-content img{max-width:100%;height:auto}
.nd-article-content blockquote{border-left:1px solid var(--nd-ink);margin:1.5em 0;padding-left:24px;font-family:var(--nd-serif);font-style:italic;font-weight:500;font-size:24px;line-height:1.35}
.nd-article-content a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--nd-line)}
.nd-sidebar{grid-column:9/13;position:sticky;top:100px;display:grid;gap:var(--nd-s4);border-left:1px solid var(--nd-line);padding-left:var(--nd-s3)}
.nd-related{border-top:1px solid var(--nd-line);padding-top:20px}
.nd-related .nd-label{font-size:15px}
.nd-story--mini{flex-direction:row;gap:14px;margin-bottom:16px;align-items:flex-start}
.nd-story--mini .nd-story__media{flex:0 0 38%;aspect-ratio:4/3}
.nd-story--mini .nd-story__body{padding:0}
.nd-story--mini .nd-story__title{font-size:16px;line-height:1.25;font-weight:500}
.nd-story--mini .nd-kicker{font-size:10px;margin-bottom:6px}
.nd-promo{border-top:1px solid var(--nd-line);padding-top:20px}
.nd-promo__link{display:block;background:var(--nd-cream2);text-decoration:none}
.nd-promo__link img{width:100%;height:auto;display:block}
.nd-promo__title{display:block;padding:14px 16px;font-family:var(--nd-serif);font-weight:500;font-size:21px;line-height:1.25}
.nd-share{display:flex;align-items:center;gap:16px;border-top:1px solid var(--nd-line);margin-top:var(--nd-s4);padding-top:16px}
.nd-share .nd-label{margin:0}
.nd-share a{text-decoration:none;font-size:18px}
.nd-more-stories{padding-block:var(--nd-s4) 0}
.nd-more-stories__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--nd-gap)}
.nd-more-stories .nd-story__body{padding:10px 0}
.nd-postnav{display:grid;grid-template-columns:1fr 1fr;gap:var(--nd-s3);border-top:1px solid var(--nd-line);padding-block:20px;font-size:14px}
.nd-postnav a{display:flex;flex-direction:column;gap:4px;text-decoration:none}
.nd-postnav__next{text-align:right;grid-column:2}
.nd-postnav .nd-label{margin:0;font-size:12px}

/* ---------- Archive / search ---------- */
.nd-archive__head{text-align:center;padding-block:var(--nd-s4) var(--nd-s3)}
.nd-archive__head h1{font-size:clamp(34px,4vw,52px);margin:12px 0}
.nd-layout{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--nd-s4);align-items:start;padding-bottom:var(--nd-s5)}
.nd-layout__main{grid-column:1/9}
.nd-layout .nd-sidebar{position:static}
.nd-story--lead{margin-bottom:var(--nd-s4)}
.nd-story--lead .nd-story__media{aspect-ratio:16/9}
.nd-story--lead .nd-story__title{font-size:40px}
.nd-story--row{flex-direction:row;gap:24px;padding-block:24px;border-top:1px solid var(--nd-line);align-items:flex-start}
.nd-story--row .nd-story__media{flex:0 0 34%;aspect-ratio:4/3}
.nd-story--row .nd-story__body{padding:0}
.nd-story--row .nd-story__title{font-size:30px}
.nd-layout--narrow .nd-layout__main{grid-column:2/12}
.nd-searchform{display:flex;max-width:560px;margin:16px auto}
.nd-search__title{font-size:30px}
.nd-catlist{list-style:none;margin:0;padding:0}
.nd-catlist li{margin:0;border-bottom:1px solid var(--nd-line);padding:8px 0}
.nd-catlist a{text-decoration:none;font-size:14px}
.nd-main .nav-links{display:flex;gap:8px;justify-content:center;margin-top:var(--nd-s4)}
.nd-main .page-numbers{padding:8px 14px;border:1px solid var(--nd-line);text-decoration:none;font-size:14px}
.nd-main .page-numbers.current{background:var(--nd-ink);color:#fff;border-color:var(--nd-ink)}

/* ---------- Pages / 404 ---------- */
.nd-page__head{text-align:center;padding-block:var(--nd-s5) var(--nd-s3);max-width:820px}
.nd-page__head h1{font-size:clamp(36px,4.6vw,56px)}
.nd-page__body{max-width:760px;padding-bottom:var(--nd-s5);font-size:17px;line-height:1.7}
.nd-page__body h2{font-size:34px;margin-top:1.6em}
.nd-404{text-align:center;padding-block:var(--nd-s5) 120px}
.nd-404__num{font-size:18px;font-weight:500;letter-spacing:.3em;margin:0 0 24px}
.nd-404 h1{font-size:clamp(34px,5vw,60px);text-transform:uppercase;letter-spacing:.04em;margin:0 0 32px}
