/* Shared page, navigation, WooCommerce and integration states. */
.skip-link{position:fixed;z-index:100;top:8px;left:8px;transform:translateY(-160%);padding:12px 16px;background:var(--cream);color:var(--char);border-radius:8px}
.skip-link:focus{transform:translateY(0)}
.site-header{position:relative;background:rgba(7,31,32,.97)}
body.front-page .site-header{position:absolute;background:linear-gradient(180deg,rgba(3,21,22,.82),rgba(3,21,22,0))}
.site-nav{grid-template-columns:auto minmax(0,1fr) auto;gap:24px}
.site-brand{display:block;justify-self:start}
.site-brand img{width:160px;max-height:70px;object-fit:contain}
.custom-logo-link{display:block}
.custom-logo-link img{width:160px;max-height:70px;object-fit:contain}
.menu-primary-container ul{align-items:center}
.menu-primary-container a{display:inline-flex;align-items:center;min-height:44px}
.header-tools{align-items:center;gap:18px}
.header-tool{position:relative;display:inline-flex;width:34px;height:44px;align-items:center;justify-content:center;color:var(--gold)}
.header-tool svg,.menu-toggle svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cart-count{position:absolute;top:2px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:50%;background:var(--gold);color:var(--char);font-size:11px;line-height:18px;text-align:center}
.menu-toggle{display:none}
.button span{margin-left:12px;font-size:1.15em}
.button--dark{background:var(--deep);color:var(--cream)}
.button--dark:hover{background:var(--forest);color:var(--cream)}
.button--disabled{opacity:.65;cursor:not-allowed;pointer-events:none}
.hero-content{z-index:2}
.hero{background-image:var(--hero-image-desktop);background-position:center;background-size:cover}
.hero:before{background:linear-gradient(90deg,rgba(4,20,22,.02) 0%,rgba(4,20,22,.08) 46%,rgba(4,20,22,.62) 100%)}
.hero-content{width:min(48%,690px);max-width:690px;margin-left:auto;margin-right:clamp(28px,6vw,100px);text-align:center}
.hero h1{font-size:clamp(3.25rem,5vw,5rem)}
@media(max-width:760px){.hero{min-height:800px;background-image:var(--hero-image-mobile);background-position:center;background-size:cover}.hero:before{background:linear-gradient(180deg,rgba(4,20,22,.46) 0%,rgba(4,20,22,.22) 38%,rgba(4,20,22,.04) 76%)}.hero-content{width:min(100% - 32px,var(--max));max-width:620px;margin-inline:auto;padding-top:92px;text-align:center}.hero h1{font-size:clamp(2.8rem,11vw,4.1rem)}}
.pack-grid{align-items:stretch}
.pack-card{background:#174c45}
.pack-image{display:grid;aspect-ratio:1/1;height:auto;min-height:0;place-items:center;overflow:hidden;background:var(--beige)}
.pack-image img{width:100%;height:100%;padding:8px;object-fit:contain}
.pack-body h2,.pack-body h3{font-size:1.5rem}
.pack-body h2 a:hover,.pack-body h3 a:hover{color:var(--gold)}
.pack-quantity{margin-top:7px;color:var(--cream);font-size:.78rem}
.pack-description{margin:8px 0 10px;color:rgba(245,230,211,.82);font-size:.82rem}
.pack-description p{margin:0}
.pack-delivery{margin:10px 0;color:var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.pack-card .pack-price{font-size:1.35rem}
.pack-card .add_to_cart_button,.pack-card .button--outline{width:100%;margin-top:8px;border:1px solid rgba(214,185,128,.6);background:transparent;color:var(--cream);text-align:center}
.pack-card .add_to_cart_button:hover,.pack-card .button--outline:hover{background:var(--cream);color:var(--char)}
.store-notice{grid-column:1/-1;padding:28px;border:1px solid rgba(214,185,128,.35);border-radius:16px;color:var(--sage);text-align:center}
.integration-note{margin-top:12px;color:#536b68;font-size:.78rem}
.music .integration-note{color:#536b68}
.newsletter-signup{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}
.newsletter-signup label{grid-column:1/-1;color:var(--deep);font-size:.78rem;font-weight:700}
.newsletter-signup input{width:100%;min-height:48px;border:0;border-bottom:1px solid rgba(16,32,34,.45);background:rgba(255,255,255,.25);padding:12px;color:var(--char)}
.newsletter-signup input:disabled{opacity:.75}
.newsletter-signup .button{min-height:48px;border:0;border-radius:999px;background:var(--char);color:var(--cream)}
.newsletter-signup .integration-note{grid-column:1/-1;margin:0;color:#465b58}
.newsletter:before{background:rgba(245,230,211,.84);opacity:1}
.footer-grid h2{margin:0 0 15px;font-size:1.1rem}
.footer-slogan{margin:0 0 8px;color:var(--gold);font-family:var(--serif);font-size:1.12rem}
.footer-legal-list{display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:0;list-style:none}
.footer-legal-list li{margin:0}
.footer-legal-list a{color:var(--sage);font-size:.75rem}
.footer-legal-list a:hover{color:var(--gold)}
.footer-bottom nav{margin-left:auto}

/* CMS page frames: titles and Gutenberg content stay editable in WordPress. */
.editorial-page{min-height:55vh;padding-top:96px;padding-bottom:100px}
.editorial-heading{margin-bottom:36px}
.editorial-heading h1,.subpage-hero h1,.music-page h1,.story-page h1,.contact-page h1{font-size:clamp(3rem,6vw,5.8rem);letter-spacing:-.035em}
.editorial-page .entry-content,.page-editorial .entry-content{max-width:850px;color:var(--cream)}
.entry-content>*+*{margin-top:1.35em}
.entry-content h2,.entry-content h3{margin-top:1.8em}
.entry-content a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.subpage-hero{position:relative;display:flex;min-height:510px;align-items:center;background-position:center;background-size:cover;color:var(--cream)}
.subpage-hero:before,.shop-archive__hero:before{position:absolute;inset:0;content:"";background:linear-gradient(90deg,rgba(5,23,24,.9),rgba(5,23,24,.54) 58%,rgba(5,23,24,.18))}
.subpage-hero__content{position:relative;padding-top:50px}
.subpage-hero__content>p:not(.eyebrow){max-width:630px;margin:20px 0;color:#d7e1dc;font-size:1.08rem}
.subpage-hero .button{margin-top:8px}
.ritual-guide{padding:84px 0}
.section-light{background:var(--cream);color:var(--char)}
.section-heading{max-width:760px;margin:0 auto 42px;text-align:center}
.section-heading h2{font-size:clamp(2.2rem,4vw,3.6rem)}
.section-heading>p:last-child{margin-top:14px;color:#536b68}
.ritual-guide__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.ritual-guide__step{padding:22px 18px;border:1px solid rgba(168,126,63,.24);border-radius:14px;background:rgba(255,255,255,.3);text-align:center}
.ritual-guide__number{display:block;color:#98703b;font-size:.75rem;letter-spacing:.12em}
.ritual-guide__icon{display:block;width:46px;height:46px;margin:16px auto;color:#a97831;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.ritual-guide__step h3{font-size:1.45rem}
.ritual-guide__step p{margin-top:8px;color:#536b68;font-size:.86rem}
.page-editorial{padding-top:70px;padding-bottom:80px}
.music-page-intro{padding:72px 0}
.music-page-intro__grid{display:grid;grid-template-columns:1fr minmax(300px,.8fr);gap:70px;align-items:center}
.music-page-intro h1{color:var(--char)}
.music-page-intro__copy{max-width:640px;margin:20px 0;color:#34514d;font-size:1.15rem}
.music-page-intro .entry-content{margin-bottom:24px;color:#3e5753}
.music-artwork{margin:0 auto;max-width:480px}
.music-artwork img{width:100%;aspect-ratio:1/1;object-fit:cover;box-shadow:0 20px 45px rgba(7,31,32,.18)}
.music-artwork figcaption{margin-top:12px;color:#536b68;font-size:.82rem;text-align:center}
.listening-ideas{padding:76px 0;background:#092d2d;color:var(--cream)}
.listening-ideas .section-heading>p:last-child{color:var(--sage)}
.listening-ideas__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.listening-card{min-height:190px;padding:24px;border:1px solid rgba(214,185,128,.28);border-radius:14px;background:rgba(5,27,28,.4)}
.listening-card__mark{color:var(--gold)}
.listening-card h3{margin-top:16px;font-size:1.45rem}
.listening-card p{margin-top:10px;color:var(--sage);font-size:.9rem}
.story-page__intro{padding:76px 0 96px;background:var(--cream);color:var(--char)}
.story-page__grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.story-page__image{margin:0}
.story-page__image img{width:100%;max-height:650px;aspect-ratio:4/5;object-fit:cover;border-radius:16px}
.story-page__copy h1{color:var(--deep)}
.story-page__subtitle{margin:20px 0;color:#4b625d;font-size:1.16rem}
.story-page .entry-content{color:#344d49}
.story-page .entry-content a{color:var(--deep)}
.story-page__slogan{margin-top:28px;color:#9b6e27;font-family:var(--serif);font-size:1.5rem}
.contact-page__main{padding:72px 0 88px;background:var(--cream);color:var(--char)}
.contact-page__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.contact-page__copy h1{color:var(--deep)}
.contact-page__subtitle{margin:18px 0;color:#a27636;font-family:var(--serif);font-size:1.45rem;line-height:1.22}
.contact-page__location{margin:24px 0 18px;color:#344d49}
.contact-page__copy .entry-content{margin-bottom:36px;color:#344d49}
.contact-page__copy .eyebrow{margin-top:34px}
.contact-topics{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0;padding:0;list-style:none}
.contact-topics li{padding:9px 15px;border:1px solid rgba(15,61,62,.45);border-radius:30px;color:var(--deep);font-size:.83rem}
.contact-form-card{padding:28px;border:1px solid rgba(179,137,68,.45);border-radius:14px;background:rgba(255,255,255,.32)}
.contact-form-card h2{font-size:2.5rem;color:var(--deep)}
.contact-form{display:grid;gap:10px;margin-top:22px}
.contact-form label{margin-top:8px;color:#254442;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-height:48px;border:1px solid rgba(26,57,54,.22);border-radius:6px;background:rgba(255,255,255,.42);padding:12px;color:var(--char)}
.contact-form textarea{resize:vertical}
.contact-form :focus-visible,.newsletter-signup :focus-visible{outline:3px solid var(--fire);outline-offset:3px}
.contact-form button{margin-top:12px}
.contact-privacy-note{margin-top:4px;color:#536b68;font-size:.76rem}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-notice{margin-top:14px;padding:12px;border-radius:8px;background:#f8e2d4;color:#702f26;font-size:.9rem}
.form-notice--success{background:#e0efe4;color:#183c2b}
.shop-archive__hero{position:relative;display:flex;min-height:380px;align-items:center;background-position:center;background-size:cover;background-repeat:no-repeat;color:var(--cream)}
.shop-archive__hero .site-shell{position:relative}
.shop-archive__hero h1{max-width:800px;font-size:clamp(2.8rem,5vw,4.8rem)}
.shop-archive__hero p:not(.eyebrow){max-width:620px;margin-top:16px;color:#d7e1dc}
.shop-archive__products{padding:64px 0 96px;background:var(--cream);color:var(--char)}
.shop-archive__products .pack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.woocommerce-content{min-height:55vh;padding-top:110px;padding-bottom:80px}
.woocommerce-content .woocommerce-breadcrumb{color:var(--gold)}
.woocommerce-content .product_title{font-size:clamp(2.3rem,4vw,4rem)}
.woocommerce-content .single-product-quantity,.woocommerce-content .single-product-delivery{color:var(--sage);font-size:.9rem}
.woocommerce-content .single-product-delivery{color:var(--gold);font-weight:700;text-transform:uppercase}
.woocommerce-content .woocommerce-message,.woocommerce-content .woocommerce-info{border-top-color:var(--gold)}
.woocommerce-content .woocommerce-message:before,.woocommerce-content .woocommerce-info:before{color:var(--gold)}
.woocommerce-content .cart_totals,.woocommerce-content .woocommerce-cart-form,.woocommerce-content .woocommerce-checkout-review-order{color:var(--char)}
.woocommerce-content .wc-block-cart,.woocommerce-content .wc-block-checkout{color:var(--char)}
.woocommerce-content input,.woocommerce-content select,.woocommerce-content textarea{min-height:44px}
.woocommerce-content button,.woocommerce-content .button{min-height:46px}
.journal-page{min-height:60vh;padding-top:74px;padding-bottom:90px}
.journal-heading{max-width:820px;margin:0 auto 44px;text-align:center}
.journal-heading h1{font-size:clamp(3rem,6vw,5rem)}
.journal-heading>p:last-child{margin-top:14px;color:var(--sage)}
.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.journal-card{overflow:hidden;border:1px solid rgba(214,185,128,.25);border-radius:16px;background:#113d3a}
.journal-card__image{display:block;aspect-ratio:16/9;background:#0b2c2c}
.journal-card__image img{width:100%;height:100%;object-fit:cover}
.journal-card__placeholder{display:grid;width:100%;height:100%;place-items:center;color:var(--gold);font-size:2rem}
.journal-card__body{padding:22px}
.journal-card__body h2{font-size:1.8rem}
.journal-card__body>p:not(.eyebrow){margin:12px 0;color:var(--sage);font-size:.9rem}
.text-link{display:inline-flex;gap:10px;align-items:center;color:var(--gold);font-weight:600}
.journal-article{min-height:60vh;padding-top:74px;padding-bottom:90px}
.journal-article__content{max-width:900px;margin:0 auto}
.journal-article__heading{text-align:center}
.journal-article__heading h1{font-size:clamp(3rem,6vw,5rem)}
.journal-article__excerpt{max-width:700px;margin:18px auto;color:var(--sage);font-size:1.1rem}
.journal-article__image{margin:38px 0 48px}
.journal-article__image img{width:100%;max-height:650px;object-fit:cover;border-radius:14px}
.journal-article__image figcaption{margin-top:8px;color:var(--sage);font-size:.8rem;text-align:center}
.journal-article .entry-content{max-width:740px;margin:0 auto;color:#e2e8e2}
.post-navigation .nav-links{display:flex;justify-content:space-between;gap:24px;margin-top:50px;padding-top:20px;border-top:1px solid rgba(245,230,211,.15)}
.post-navigation a{color:var(--gold)}

/* Approved visual refinements: clearer brand mark, calmer shop title, scenic footer. */
.site-brand img,.custom-logo-link img{width:176px;max-height:72px;object-fit:contain}
.footer-brand img{width:180px;max-height:88px}
.story-page__copy>.eyebrow{color:var(--deep)}
.shop-archive__hero h1{max-width:680px;font-size:clamp(2.8rem,4.5vw,4.2rem);font-weight:500}
.site-footer{background-image:url("footer-scenic.png");background-position:center 54%;background-size:cover}
.site-footer:before{position:absolute;z-index:0;inset:0;content:"";background:linear-gradient(90deg,rgba(5,28,30,.76),rgba(5,28,30,.5) 50%,rgba(5,28,30,.74))}
.site-footer>.site-shell{position:relative;z-index:1}
.footer-grid{grid-template-columns:1.5fr 1fr 1fr}
.footer-grid ul{margin:0;padding:0;list-style:none}
.footer-grid li{margin:0;padding:0}
.footer-grid a{color:#e2e8e2}
.footer-bottom{color:#e2e8e2}
.footer-bottom nav{margin-left:auto}
.woocommerce-account .woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none}
.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0;padding:0;border-bottom:1px solid rgba(214,185,128,.22)}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:11px 14px;color:var(--cream)}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,.woocommerce-account .woocommerce-MyAccount-navigation a:hover{color:var(--gold)}
.woocommerce-account .woocommerce-MyAccount-content{color:var(--cream)}
.woocommerce-cart .cart-empty,.woocommerce-cart .return-to-shop{color:var(--cream)}
.woocommerce-cart .return-to-shop .button{background:var(--cream);color:var(--char)}

@media(max-width:900px){
	.site-nav{gap:16px}
	.site-brand img,.custom-logo-link img{width:130px}
	.menu-primary-container ul{gap:14px;font-size:.82rem}
	.music-page-intro__grid,.story-page__grid,.contact-page__grid{gap:38px}
	.shop-archive__products .pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
	.site-brand img,.custom-logo-link img{width:112px;max-height:58px}
	.site-footer{background-image:url("footer-scenic-mobile.png");background-position:center 58%}
	.site-footer:before{background:rgba(5,28,30,.55)}
	.footer-grid{grid-template-columns:1fr 1fr}
	.footer-brand img{width:164px;max-height:82px}
	.site-nav{position:relative;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;height:72px}
	.site-brand{justify-self:center}
	.site-brand img,.custom-logo-link img{width:112px;max-height:58px}
	.menu-toggle{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border:0;background:transparent;color:var(--gold);cursor:pointer}
	.menu-primary-container{position:absolute;top:72px;right:0;left:0;display:none;padding:10px 16px 18px;border:1px solid rgba(214,185,128,.22);border-radius:0 0 14px 14px;background:#071f20;box-shadow:0 12px 24px rgba(0,0,0,.25)}
	.menu-primary-container.is-open{display:block}
	.menu-primary-container ul{display:grid;gap:2px;justify-content:stretch;margin:0;padding:0;list-style:none}
	.menu-primary-container li{border-bottom:1px solid rgba(245,230,211,.1)}
	.menu-primary-container a{display:flex;min-height:46px;padding:0 8px;font-size:.95rem}
	.header-tools{gap:8px}
	.header-tool--account{display:none}
	body.front-page .site-header{background:linear-gradient(180deg,rgba(3,21,22,.92),rgba(3,21,22,0))}
	.hero-content{padding-bottom:120px}
	.newsletter-signup{grid-template-columns:1fr}
	.newsletter-signup label,.newsletter-signup .integration-note{grid-column:auto}
	.ritual-guide__steps{grid-template-columns:repeat(2,minmax(0,1fr))}
	.subpage-hero{min-height:480px;background-position:58% center}
	.subpage-hero:before{background:linear-gradient(180deg,rgba(5,23,24,.58),rgba(5,23,24,.88))}
	.subpage-hero__content{padding-top:48px}
	.music-page-intro,.story-page__intro,.contact-page__main{padding:52px 0 64px}
	.music-page-intro__grid,.story-page__grid,.contact-page__grid{grid-template-columns:1fr;gap:32px}
	.music-artwork{width:min(100%,380px)}
	.listening-ideas{padding:54px 0}
	.listening-ideas__grid{grid-template-columns:1fr}
	.journal-page{padding-top:54px;padding-bottom:64px}
	.journal-grid{grid-template-columns:1fr}
	.journal-card__body{padding:18px}
	.journal-article{padding-top:54px;padding-bottom:64px}
	.journal-article__image{margin:28px 0}
	.listening-card{min-height:0}
	.story-page__image img{max-height:420px;aspect-ratio:4/3}
	.contact-form-card{padding:20px}
	.shop-archive__hero{min-height:340px}
	.shop-archive__products{padding:42px 0 64px}
	.shop-archive__products .pack-grid{grid-template-columns:1fr}
	.shop-archive__products .pack-image{max-width:320px;width:100%;margin:0 auto}
	.editorial-page{padding-top:60px;padding-bottom:64px}
	.footer-bottom nav{margin:0}
}
@media(max-width:430px){
	.ritual-guide__steps{grid-template-columns:1fr 1fr;gap:10px}
	.ritual-guide__step{padding:16px 10px}
	.pack-image{aspect-ratio:1/1}
	.pack-body{padding:16px}
	.shop-archive__products .pack-grid{grid-template-columns:1fr}
	.footer-legal-list{gap:10px}
}
