/* Shared visual treatment only: all images and fonts stay on this Site. */
@font-face{font-family:HainText;src:url('/assets/fonts/eb-garamond-variable.ttf') format('truetype');font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:HainRocker;src:url('/assets/fonts/new-rocker-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Cinzel;src:url('/assets/fonts/cinzel-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.hain-type{--sans:HainText,serif;--serif:Cinzel,serif;--display:HainRocker,Cinzel,serif;--font-sans:HainText,serif;font-family:HainText,serif!important;font-size:1.125rem;line-height:1.65}
.hain-type :where(main,div,section,article,form,header,footer,span,strong,b,a){font-family:inherit!important}
.hain-type :where(p,li,dt,dd,blockquote,caption,td,th,small,label,input,textarea,select){font-family:HainText,serif!important}
.hain-type :where(h1,h2,h3,h4,h5,h6){font-family:HainRocker,Cinzel,serif!important;font-weight:400!important;letter-spacing:.005em!important;line-height:1.16}
.hain-type :where(button,.button,nav a,summary,.eyebrow){font-family:Cinzel,serif!important}
.hain-type :where(input,textarea,select){font-size:1rem}
.hain-type :where(code,pre,kbd,samp){font-family:ui-monospace,monospace}
.hain-type .site-header nav a{font-size:.875rem}
.hain-type .site-header nav .best-nav{font-size:.8rem}
.hain-world-subpage{background-color:#131416!important;background-image:linear-gradient(180deg,rgba(17,18,20,.34),rgba(17,18,20,.56) 260px,#131416 610px),url('/assets/playlist-hain/berge.webp')!important;background-size:100% 640px,auto 640px!important;background-position:center top,center top!important;background-repeat:no-repeat!important}
.hain-world-subpage .site-header{background-color:rgba(17,18,20,.94)}
.hain-world-subpage :where(.intro,.partner-hero,.listening-intro,.videos-intro,.basar-hero,.channels-intro){text-shadow:0 2px 14px #000}
.hain-world-subpage .intro{padding-top:clamp(56px,9vw,110px);padding-bottom:48px}
.hain-world-subpage .collection{background:linear-gradient(180deg,rgba(19,20,22,.84),#131416 220px);border-top:1px solid rgba(202,165,99,.3)}
.hain-world-subpage .legal-page{background:rgba(19,20,22,.89);padding:clamp(24px,4vw,52px);margin-top:48px;margin-bottom:48px;border:1px solid #51432d}
.hain-world-subpage .guard-page{background:rgba(19,20,22,.87);border:1px solid #51432d}
.hain-type .filters button,.hain-type .dialog-bar,.hain-type .dialog-bar button{font-size:.875rem}
.hain-type .card-detail-copy{font-size:1.125rem;line-height:1.6}
.hain-type .eyebrow{font-size:.875rem;line-height:1.5}
.hain-type .site-footer nav a{font-size:.8rem}
.hain-type .hain-main-navigation{display:grid!important;grid-template-columns:repeat(9,minmax(0,1fr));gap:7px!important;margin:0!important;min-width:0;flex:1}
.hain-type .hain-main-navigation a{display:flex!important;align-items:center;justify-content:center;min-height:46px;padding:8px 10px!important;border:1px solid #65503a!important;border-radius:2px;color:#e4c995;text-decoration:none;font-size:.875rem!important;line-height:1.3;text-align:center;text-shadow:0 1px 2px #000;background:linear-gradient(90deg,#171716 0 5px,transparent 5px calc(100% - 5px),#171716 calc(100% - 5px)),linear-gradient(180deg,#ffffff0a,transparent 20%,#0005 90%),url('/assets/menu-wood.svg') center/240px 58px #271d15;box-shadow:inset 0 1px #bba06d33,inset 0 -3px #080706b3,0 2px 4px #0008;transition:border-color .2s,box-shadow .2s,transform .2s}
.hain-type .hain-main-navigation a.best-nav{font-size:.8rem!important;color:#b9aa8c}
.hain-type .hain-main-navigation a.nav-spotify{color:#c9d8a8}
.hain-type .hain-main-navigation a[aria-current="page"]{border-color:#c49a55!important;color:#ffe0a0}
.hain-type .hain-main-navigation a:focus-visible{outline:2px solid #e4c995;outline-offset:2px}
.hain-type .hain-main-navigation a:active{transform:translateY(1px)}
.hain-type .site-header .header-inner{grid-template-columns:150px minmax(0,1fr);gap:16px}
.hain-type .site-header .header-listen{grid-column:2;justify-self:end}
.hain-type .site-header:not(:has(.header-inner)){flex-wrap:wrap;align-items:center}
.hain-complete-header{height:auto!important;min-height:76px;padding-block:10px!important;gap:14px!important}
.hain-complete-header>div:has(>.hain-main-navigation){display:flex!important;flex-wrap:wrap;align-items:center;gap:16px!important;padding-block:8px}
.hain-complete-header>.hain-main-navigation{flex-basis:100%}
.hain-auth-links{display:flex;justify-content:flex-end;width:100%;gap:10px;font-size:.875rem}
.hain-type:not(.hain-world-subpage) .music-section,.hain-type:not(.hain-world-subpage) .stay-section{background:radial-gradient(ellipse at top,rgba(102,77,33,.10),transparent 70%)}
@media(hover:hover){.hain-type .hain-main-navigation a:hover{color:#ffe1a8;border-color:#b28c51!important;transform:translateY(-1px);box-shadow:inset 0 0 18px #ae72251a,0 3px 8px #0008,0 0 8px #bd802516}}
@media(max-width:1100px){.hain-type .hain-main-navigation{grid-template-columns:repeat(6,minmax(0,1fr))}.hain-type .site-header .header-inner{grid-template-columns:120px minmax(0,1fr)}.hain-complete-header>div:has(>.hain-main-navigation)>.hain-main-navigation{flex-basis:100%}}
@media(max-width:780px){.hain-type .site-header .header-inner{grid-template-columns:1fr}.hain-type .hain-main-navigation{grid-template-columns:none!important;grid-template-rows:repeat(2,minmax(46px,auto));grid-auto-flow:column;grid-auto-columns:145px;width:100%;flex-basis:100%;overflow-x:auto;overscroll-behavior-x:contain;padding:3px 2px 8px;scrollbar-width:thin;scrollbar-color:#65503a #1a1b1d}.hain-type .site-header nav{grid-column:1;grid-row:auto}.hain-type .site-header .header-listen{grid-column:1}.hain-complete-header{padding-inline:12px!important}.hain-complete-header>div:has(>.hain-main-navigation){width:100%}.hain-type .site-header:not(:has(.header-inner))>.hain-main-navigation{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.hain-type .hain-main-navigation a{transition:none;transform:none!important}}
@media(max-width:700px){.hain-world-subpage{background-size:100% 520px,auto 520px!important;background-position:center top,62% top!important}.hain-type .site-header nav a{font-size:.875rem}.hain-world-subpage .legal-page{margin-top:24px}.hain-type .card-detail-copy{font-size:1.0625rem}}

/* The landscape stays a quiet backdrop throughout the page, not just at the top. */
body.hain-type,.hain-world-subpage{background-color:#131416!important;background-image:linear-gradient(180deg,rgba(34,24,17,.90),rgba(34,24,17,.95)),url('/assets/playlist-hain/berge.webp')!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;background-attachment:fixed!important}
.hain-type :is(.playlist-submit,.playlist-card,.playlist-rules,.player-panel,.video-theater,.basar-product,.guard-page,.partner-card,.origin-card){background-image:linear-gradient(145deg,rgba(45,31,21,.93),rgba(38,26,18,.97)),url('/assets/menu-plank.webp');background-size:cover,auto 420%;background-position:center;background-repeat:no-repeat}
.hain-type :is(.music-section,.stay-section,.albums-section){background-image:linear-gradient(180deg,rgba(19,20,22,.94),rgba(19,20,22,.97)),url('/assets/playlist-hain/berge.webp');background-size:cover;background-position:center}
@media(max-width:700px){body.hain-type,.hain-world-subpage{background-position:42% center!important}}

/* Carry the existing Nora Mae header artwork through the whole page. */
body.hain-type{isolation:isolate;background:#111317!important}
.hain-world-subpage{background:transparent!important}
.hain-nora-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#111317}
.hain-nora-backdrop svg{display:block;width:100%;height:100%;max-width:none}
.hain-nora-backdrop::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,11,15,.63),rgba(9,11,15,.79))}
.hain-type :is(.music-section,.stay-section,.albums-section){background:rgba(12,14,18,.72)}
.hain-type :is(.playlist-submit,.playlist-card,.playlist-rules,.player-panel,.video-theater,.basar-product,.guard-page,.partner-card,.origin-card){background-color:rgba(16,18,23,.84);background-image:linear-gradient(145deg,rgba(16,18,23,.92),rgba(16,18,23,.96)),url('/assets/menu-plank.webp')}
.hain-type .hero-art{width:100%}
.hain-type .hero-shade{background:linear-gradient(90deg,rgba(11,13,17,.84),rgba(11,13,17,.55) 42%,rgba(11,13,17,.10) 78%),linear-gradient(0deg,rgba(11,13,17,.75),transparent 35%)}
@media(max-width:700px){.hain-nora-backdrop::after{background:rgba(9,11,15,.79)}.hain-nora-backdrop svg{position:absolute;left:50%;width:266.667svh;height:100%;transform:translateX(-28%)}}

/* Spacious timber navigation; only primary navigation is regrouped. */
.hain-type .hain-main-navigation.hain-fold-navigation{display:flex!important;flex-wrap:wrap;align-items:stretch;gap:9px!important;overflow:visible!important;padding:0;grid-template:none!important;min-width:0;width:100%;flex:1}
.hain-nav-group{position:relative;flex:1 1 124px;min-width:0;color:#e4c995}
.hain-nav-group:nth-child(4){flex-basis:174px}
.hain-type .hain-fold-navigation .hain-nav-plank{position:relative;display:flex!important;align-items:center;justify-content:center;gap:9px;min-height:64px;padding:12px 17px!important;margin:0;border:1px solid #78603e!important;border-radius:3px;color:#f0d8ad;font-family:Cinzel,serif!important;font-size:1rem!important;line-height:1.3;text-align:center;cursor:pointer;list-style:none;text-shadow:0 2px 3px #000;background:linear-gradient(180deg,#ffffff08,transparent 35%,#0005),url('/assets/menu-plank.webp') center/auto 410% #281e16;box-shadow:inset 0 1px #dab77844,inset 0 -3px #070606b3,0 3px 8px #0008;transition:transform .2s,border-color .2s,box-shadow .2s,color .2s;text-decoration:none}
.hain-nav-plank::-webkit-details-marker{display:none}
.hain-nav-plank::marker{content:''}
.hain-nav-plank::after{content:'';position:absolute;inset:8px 5px;pointer-events:none;background:radial-gradient(circle at 2px 2px,#c1a570 0 1px,#171513 1.5px 2.5px,transparent 3px),radial-gradient(circle at calc(100% - 2px) calc(100% - 2px),#c1a570 0 1px,#171513 1.5px 2.5px,transparent 3px)}
.hain-nav-symbol{font-size:1.25rem;line-height:1;color:#cba767;flex:none}
.hain-nav-notch{width:7px;height:7px;border-right:1px solid #d5b36e;border-bottom:1px solid #d5b36e;transform:rotate(45deg);margin-left:2px;flex:none;transition:transform .2s}
.hain-nav-group[open] .hain-nav-notch{transform:rotate(225deg)}
.hain-nav-group[open]>.hain-nav-plank,.hain-nav-group.is-current>.hain-nav-plank{border-color:#cba767!important;color:#ffe5b8;box-shadow:inset 0 0 22px #c8832924,0 3px 8px #0009,0 0 12px #c883291c}
.hain-type .hain-fold-navigation>.hain-nav-guard{flex:0 1 118px;font-size:.875rem!important;color:#d6bd95}
.hain-type .hain-fold-navigation>.nav-spotify{flex:0 1 116px;color:#d5ddbc}
.hain-type .hain-fold-navigation>.nav-spotify img{width:20px;height:20px;flex:none}
.hain-nav-panel{position:absolute;top:calc(100% + 8px);left:0;width:330px;max-width:calc(100vw - 36px);z-index:70;padding:18px;border:1px solid #92703c;border-radius:3px;background:linear-gradient(145deg,#17191cf7,#111215fa),url('/assets/menu-plank.webp') center/auto 410%;box-shadow:0 16px 38px #000b,inset 0 1px #cba76726;color:#e5dbcb}
.hain-nav-panel::before{content:'';position:absolute;top:-10px;left:0;width:100%;height:10px}
.hain-nav-group:nth-child(n+4) .hain-nav-panel{left:auto;right:0}
.hain-nora-line{margin:0 0 14px!important;padding:0 0 14px;border-bottom:1px solid #92703c66;display:flex;flex-direction:column;gap:6px;font-family:HainText,serif!important;text-align:left}
.hain-nora-name{font-family:Cinzel,serif!important;font-size:.75rem;letter-spacing:.12em;color:#cba767;text-transform:uppercase}
.hain-nora-words{font-size:1.1875rem;line-height:1.45;font-style:italic;color:#f0dfc1}
.hain-nav-links{display:grid;gap:7px}
.hain-type .hain-fold-navigation .hain-nav-links a{display:flex!important;justify-content:flex-start;align-items:center;min-height:48px;padding:11px 14px!important;background:#ffffff04;box-shadow:none;border:1px solid #74604470!important;border-radius:2px;text-align:left;font-family:Cinzel,serif!important;font-size:.9375rem!important;line-height:1.4;color:#efe5d5;text-shadow:none;transform:none}
.hain-type .hain-fold-navigation .hain-nav-links a::before,.hain-type .hain-fold-navigation .hain-nav-links a::after{display:none!important}
.hain-type .hain-fold-navigation .hain-nav-links a[aria-current=page]{border-color:#cba767!important;background:#a97b2424;color:#ffe1aa}
.hain-fold-navigation :is(a,summary):focus-visible{outline:2px solid #ffe1aa;outline-offset:3px}
.hain-type .site-header:has(.hain-fold-navigation),.hain-complete-header:has(.hain-fold-navigation){z-index:80;overflow:visible}
.hain-type .site-header .header-inner:has(.hain-fold-navigation){width:calc(100% - 48px);max-width:1560px;grid-template-columns:170px minmax(0,1fr);gap:24px;padding-block:16px;overflow:visible}
.hain-type .site-header .header-inner:has(.hain-fold-navigation) .brand{width:170px}
.hain-complete-header>div:has(>.hain-fold-navigation){max-width:1560px;gap:24px!important;width:100%}
.hain-complete-header>.hain-fold-navigation{flex-basis:100%}
@media(hover:hover){.hain-fold-navigation .hain-nav-plank:hover{transform:translateY(-2px);border-color:#d3ab66!important;box-shadow:inset 0 0 24px #c8832920,0 5px 12px #0009,0 0 12px #c883291c;color:#ffe5b8}.hain-type .hain-fold-navigation .hain-nav-links a:hover{background:#b0863730;border-color:#cba767!important;color:#ffe5b8}}
.hain-fold-navigation .hain-nav-plank:active{transform:translateY(1px);box-shadow:inset 0 3px 10px #0008}
@media(max-width:1250px){.hain-type .site-header .header-inner:has(.hain-fold-navigation){grid-template-columns:1fr;gap:10px}.hain-nav-group{flex-basis:120px}.hain-type .site-header .header-inner:has(.hain-fold-navigation)>.brand{width:170px}.hain-complete-header>div:has(>.hain-fold-navigation)>.hain-fold-navigation{flex-basis:100%}}
@media(max-width:850px){.hain-type .hain-main-navigation.hain-fold-navigation{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;gap:9px!important;overflow:visible!important}.hain-nav-group{width:100%;min-width:0}.hain-nav-group[open]{grid-column:1/-1}.hain-nav-group[open]>.hain-nav-plank{justify-content:flex-start}.hain-nav-panel{position:relative;top:auto;left:auto;right:auto!important;width:100%;max-width:100%;margin-top:8px;padding:17px;box-shadow:0 6px 16px #0007}.hain-nav-panel::before{display:none}.hain-nav-links{grid-template-columns:repeat(2,minmax(0,1fr))}.hain-type .hain-fold-navigation>.nav-spotify{grid-column:1/-1;min-height:52px}.hain-type .hain-fold-navigation .hain-nav-plank{min-height:60px;font-size:.9375rem!important;padding:12px 14px!important}.hain-type .site-header .header-inner:has(.hain-fold-navigation){width:calc(100% - 28px);padding-block:12px}.hain-type .site-header .header-inner:has(.hain-fold-navigation)>.brand{width:155px}.hain-nav-symbol{font-size:1.125rem}.hain-complete-header>div:has(>.hain-fold-navigation){gap:12px!important}}
@media(max-width:420px){.hain-nav-links{grid-template-columns:1fr}.hain-type .hain-fold-navigation .hain-nav-plank{gap:7px;font-size:.875rem!important;padding:12px 9px!important}.hain-type .hain-fold-navigation .hain-nav-links a{font-size:.9375rem!important}}
@media(prefers-reduced-motion:reduce){.hain-fold-navigation :is(a,summary,.hain-nav-notch){transition:none!important;transform:none!important}}
@media(max-width:850px){.hain-type .site-header:has(.hain-fold-navigation),.hain-complete-header:has(.hain-fold-navigation){position:relative!important;top:auto}}
.hain-type .hain-fold-navigation .hain-nav-links a{white-space:normal;overflow-wrap:anywhere}

/* Matching footer planks open toward the page, above the menu. */
.hain-type .site-footer:has(.hain-dropup-navigation),.hain-complete-footer{position:relative;overflow:visible;display:flex;flex-wrap:wrap;gap:20px;z-index:60}
.hain-type .hain-main-navigation.hain-dropup-navigation{flex-basis:100%;width:100%;margin-block:8px!important}
.hain-dropup-navigation .hain-nav-panel{top:auto!important;bottom:calc(100% + 8px);max-height:min(460px,70svh);overflow-y:auto;overscroll-behavior:contain}
.hain-dropup-navigation .hain-nav-panel::before{top:auto;bottom:-10px}
.hain-dropup-navigation .hain-nav-notch{transform:rotate(225deg)}
.hain-dropup-navigation .hain-nav-group[open] .hain-nav-notch{transform:rotate(45deg)}
.hain-type .hain-footer-meta{display:flex;flex-wrap:wrap;gap:12px;width:100%;flex-basis:100%}
.hain-type .hain-footer-meta a{min-height:40px;padding:7px 12px;font-size:.875rem!important}
@media(max-width:850px){.hain-dropup-navigation .hain-nav-group[open]{grid-column:auto}.hain-dropup-navigation .hain-nav-group[open]>.hain-nav-plank{justify-content:center}.hain-dropup-navigation .hain-nav-panel{position:absolute;width:330px;max-width:calc(100vw - 42px);margin-top:0;left:0;right:auto!important}.hain-dropup-navigation .hain-nav-group:nth-child(even) .hain-nav-panel{left:auto;right:0!important}.hain-dropup-navigation .hain-nav-links{grid-template-columns:1fr}.hain-dropup-navigation .hain-nav-panel::before{display:block}}

/* A direct way home on every subpage, independent of the fold menus. */
.hain-home-trail{position:relative;width:calc(100% - 48px);max-width:1560px;margin:16px auto 0;z-index:2}
.hain-type .hain-home-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 19px;border:1px solid #8e7049;border-radius:3px;background:linear-gradient(180deg,#ffffff08,#0004),url('/assets/menu-plank.webp') center/auto 410% #281e16;color:#f0d8ad;font-family:Cinzel,serif!important;font-size:1rem;line-height:1.3;text-decoration:none;text-shadow:0 1px 3px #000;box-shadow:inset 0 1px #dab77833,inset 0 -2px #07060699,0 3px 8px #0006;transition:transform .2s,border-color .2s,box-shadow .2s}
.hain-home-button>span{font-size:1.5rem;line-height:1;color:#d6b477}
.hain-home-button:focus-visible{outline:2px solid #ffe1aa;outline-offset:3px}
@media(hover:hover){.hain-home-button:hover{border-color:#d3ab66;transform:translateY(-1px);box-shadow:inset 0 0 20px #c8832920,0 4px 10px #0008}}
.hain-home-button:active{transform:translateY(1px)}
@media(max-width:850px){.hain-home-trail{width:calc(100% - 28px);margin-top:12px}.hain-type .hain-home-button{font-size:.9375rem;min-height:46px}}
@media(prefers-reduced-motion:reduce){.hain-home-button{transition:none!important;transform:none!important}}
