@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-garamond-400-normal.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-garamond-400-italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-400-normal.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-500-normal.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-600-normal.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--ink:#101a15;--forest:#18281f;--bone:#f3efe4;--acid:#cfb47b;--muted:#b9c0b5;--line:rgba(243,239,228,.17);--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif;--gutter:clamp(24px,5.5vw,100px);--ease:cubic-bezier(.2,.65,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:var(--bone);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}body.age-locked{overflow:hidden}[hidden]{display:none!important}::selection{background:var(--acid);color:var(--ink)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;cursor:pointer}button,a,input{touch-action:manipulation}button{border-radius:0}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}h1 em,h2 em,h3 em{font-weight:400;color:var(--acid)}:focus-visible{outline:2px solid var(--acid);outline-offset:5px}.skip-link{position:fixed;top:8px;left:8px;z-index:80;padding:15px;background:var(--bone);color:var(--ink);transform:translateY(-150%)}.skip-link:focus{transform:none}
.announcement{min-height:37px;padding:10px var(--gutter);display:flex;justify-content:space-between;gap:12px;background:#1c2b22;color:#d4d8cd;font-size:10px;letter-spacing:.1em}.announcement i{font-style:normal;margin:0 9px;color:var(--acid)}header{height:102px;margin:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:14px}.brand-logo{width:56px;height:56px;border-radius:50%;object-fit:contain;border:1px solid #726445}.brand>span{display:flex;flex-direction:column;gap:5px}.wordmark{font-family:var(--serif);font-size:29px;letter-spacing:-.02em}.brand small{font-size:8px;text-transform:uppercase;letter-spacing:.22em;color:var(--acid)}nav{display:flex;align-items:center;gap:36px;font-size:12px}nav a{transition:color .2s}nav a:hover{color:var(--acid)}.nav-pill{padding:13px 19px;border:1px solid var(--line)}.nav-pill span{margin-left:17px}.menu{display:none;background:none;border:1px solid var(--line);padding:11px 14px;font-size:12px}.menu span{margin-left:10px}
.hero{position:relative;isolation:isolate;min-height:700px;padding:75px var(--gutter) 100px;display:grid;grid-template-columns:42% 58%;align-items:center;max-width:1800px;margin:auto}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 75% 45%,#1d3423aa,transparent 60%);pointer-events:none}.hero-copy{z-index:2}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.19em;text-transform:uppercase;line-height:1.8;color:var(--acid)}.small-rule{display:inline-block;width:24px;height:1px;background:var(--acid);vertical-align:middle;margin-right:12px}h1{font-size:clamp(72px,7.4vw,118px);line-height:.94;margin:28px 0}h1 em{display:inline-block}.hero-copy p{max-width:410px;color:var(--muted);font-size:14px;line-height:1.85}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:23px;margin-top:31px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;padding:18px 22px;min-height:52px;font-size:11px;font-weight:600;letter-spacing:.045em;border:1px solid transparent;transition:background .25s,color .25s,transform .25s}.acid{background:var(--acid);color:var(--ink)}.acid:hover{background:var(--bone);transform:translateY(-2px)}.text-link{display:inline-flex;gap:14px;align-items:center;font-size:11px;padding:7px 0;border-bottom:1px solid var(--line);transition:color .2s,border-color .2s}.text-link:hover{color:var(--acid);border-color:var(--acid)}.hero-art{position:relative;width:112%;margin-left:-10%;align-self:center;z-index:1}.hero-art img{position:relative;width:100%;height:auto;object-fit:contain;filter:saturate(.88);-webkit-mask-image:radial-gradient(ellipse 92% 96% at 51% 50%,#000 65%,transparent 100%);mask-image:radial-gradient(ellipse 92% 96% at 51% 50%,#000 65%,transparent 100%)}.orb{position:absolute;inset:15%;background:radial-gradient(ellipse,#c2a15b15,#34553230 50%,transparent 75%);filter:blur(35px)}.hero-foot{position:absolute;left:var(--gutter);right:var(--gutter);bottom:27px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:21px;font-size:9px;letter-spacing:.07em;color:var(--muted)}.hero-foot a span{margin-left:20px;color:var(--acid)}
.categories,.collection,.visit{padding:100px var(--gutter);max-width:1800px;margin:auto}.categories{border-top:1px solid var(--line);padding-bottom:85px}.row{display:flex;align-items:flex-end;justify-content:space-between;gap:45px}.section-head h2{font-size:clamp(56px,5.6vw,86px);line-height:1.01;margin-top:20px}.row>p{max-width:350px;font-size:13px;line-height:1.9;color:var(--muted);padding-bottom:6px}.cat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--line);border-top:1px solid var(--line);margin-top:49px}.cat-grid button{background:none;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 30px;min-height:207px;text-align:left;display:flex;flex-direction:column;transition:background .3s}.cat-grid button:hover{background:#24372a}.cat-grid b{display:flex;justify-content:space-between;font-size:9px;font-weight:400;letter-spacing:.1em;color:var(--acid)}.cat-grid b span{font-size:17px;transition:transform .3s}.cat-grid button:hover b span{transform:translate(3px,-3px)}.cat-grid>button>span{font:400 31px/1.12 var(--serif);margin:25px 0 9px;letter-spacing:-.02em}.cat-grid i{font-style:normal;font-size:10px;color:var(--muted)}.cat-grid small{font-size:9px;color:var(--acid);margin-top:17px}
.collection{background:var(--bone);color:var(--ink);max-width:none;padding-top:92px}.collection>.section-head,.collection>.tools,.collection>#filters,.collection>.result-line,.collection>.products,.collection>.pagination,.collection>.empty{max-width:1600px;margin-left:auto;margin-right:auto}.collection .eyebrow{color:#706039}.collection h2 em{color:#77633c}.collection .row>p{color:#586257}.tools{margin-top:44px;display:flex;align-items:center;justify-content:space-between;gap:25px}.search{display:flex;align-items:center;gap:13px;border-bottom:1px solid #babdaf;width:min(450px,100%);padding:13px 0}.search>span{font-size:25px;color:#69735f}.search input{width:100%;background:none;border:0;color:var(--ink);font-size:12px;min-height:28px}.search input::placeholder{color:#636d61}.search:focus-within{border-color:#70592e}.catalogue-label{font-size:9px;letter-spacing:.055em;color:#636d61}#filters{display:flex;flex-wrap:wrap;gap:7px;margin-top:25px}#filters button{background:none;border:1px solid #ced0c3;padding:11px 16px;font-size:10px;min-height:40px;transition:background .2s,color .2s,border-color .2s}#filters button.active,#filters button:hover{background:var(--forest);color:var(--bone);border-color:var(--forest)}.result-line{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:26px;margin-bottom:23px;font-size:10px;color:#59624f}.result-line button{background:none;border:0;text-decoration:underline;font-size:10px;padding:8px 0;color:var(--ink)}.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 20px}.product-card{min-width:0}.product-trigger{padding:0;display:block;width:100%;background:none;border:0;text-align:left;color:var(--ink);height:100%}.product-image{aspect-ratio:4/5;background:#e5e5da;position:relative;border:1px solid #dcded1;overflow:hidden;transition:border-color .3s}.product-image>img{width:100%;height:100%;object-fit:contain;transition:transform .5s var(--ease)}.product-trigger:hover .product-image>img{transform:scale(1.045)}.product-trigger:hover .product-image{border-color:#9b875f}.product-image>b{position:absolute;left:12px;top:12px;background:var(--forest);color:var(--bone);padding:6px 8px;font-size:8px;font-weight:500;letter-spacing:.1em}.product-view{position:absolute;bottom:0;left:0;right:0;padding:11px 14px;background:rgba(16,26,21,.94);color:var(--bone);font-size:10px;display:flex;justify-content:space-between;transform:translateY(100%);transition:transform .25s}.product-trigger:hover .product-view,.product-trigger:focus-visible .product-view{transform:none}.product-meta{padding:16px 0 0}.product-meta small{font-size:8px;text-transform:uppercase;letter-spacing:.095em;color:#627057;line-height:1.6;display:block}.product-meta h3{font:500 13px/1.6 var(--sans);letter-spacing:0;margin:6px 0 11px;overflow-wrap:anywhere}.product-meta>span{font-size:10px;color:#71633e}.product-art{height:100%;display:grid;place-items:center;background:#dce1d2}.product-art span{font:32px var(--serif);color:var(--ink)}.pagination{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:45px;font-size:10px;color:#58614e}.pagination button{border:1px solid #b8beaa;padding:13px 17px;background:none;color:var(--ink);font-size:10px}.pagination button:hover:not(:disabled){background:var(--forest);color:var(--bone)}.pagination button:disabled{opacity:.4;cursor:default}.empty{text-align:center;padding:65px 20px}.empty h3{font-size:40px}.empty p{color:#626c58;line-height:1.8;margin:15px 0 25px}.collection :focus-visible{outline-color:#7b602b}
.product-image>b.badge-featured{left:12px;right:auto;top:12px;background:var(--forest);color:var(--bone)}.product-image>b.badge-new{left:auto;right:12px;top:12px;background:#bd9860;color:var(--ink)}
.spotlight{position:relative;background:var(--forest);color:var(--bone);padding:88px var(--gutter) 68px;max-width:1800px;margin:0 auto;overflow:hidden}.spotlight .section-head{position:relative;z-index:1}.spotlight .row>p{color:#c1c6ba}.spotlight .section-head h2{font-size:clamp(54px,5.4vw,82px)}.spotlight .eyebrow{color:var(--acid)}.spotlight-controls{position:absolute;right:var(--gutter);top:117px;z-index:2;display:flex;gap:9px}.spotlight-controls button{width:44px;height:44px;border:1px solid #a9ad9c55;background:transparent;color:var(--bone);font-size:17px;transition:background .2s,color .2s,border-color .2s}.spotlight-controls button:hover{background:var(--acid);border-color:var(--acid);color:var(--ink)}.spotlight-rail{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-auto-flow:column;grid-auto-columns:minmax(220px,280px);grid-template-rows:1fr;gap:20px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#a99160 transparent;margin-top:35px;padding:2px 1px 18px}.spotlight-card{scroll-snap-align:start}.spotlight-card .product-trigger{color:var(--bone)}.spotlight-card .product-image{background:#e7e4d9;border-color:#e7e4d9}.spotlight-card .product-meta{padding:14px 2px 0}.spotlight-card .product-meta small{color:#c8be9f}.spotlight-card .product-meta h3{font:400 20px/1.2 var(--serif);letter-spacing:0;margin:0}.spotlight-card .product-meta>span{color:#e0d5b9}.spotlight-footnote{margin-top:20px;font-size:9px;line-height:1.7;color:#c1c6ba}.visit-info>div:first-child>p:first-of-type{max-width:390px}
.spotlight-rail{display:flex;align-items:flex-start}.spotlight-card{flex:0 0 clamp(220px,25vw,280px)}
@media(max-width:760px){.spotlight{padding:68px var(--gutter) 55px}.spotlight .section-head{padding-right:42px}.spotlight .section-head h2{font-size:61px}.spotlight-rail{gap:14px;margin-top:26px;margin-right:calc(-1 * var(--gutter));padding-right:var(--gutter)}.spotlight-card{flex-basis:70vw;max-width:280px}.spotlight-controls{top:76px;right:var(--gutter)}.spotlight-controls button{width:37px;height:37px}.spotlight-footnote{max-width:320px}.visit-info>div:first-child>p:first-of-type{max-width:100%}}
.ethos{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:110px var(--gutter);max-width:1800px;margin:auto;align-items:center}.ethos-art{background:#15281d;border:1px solid var(--line);padding:36px;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1/1.08;position:relative}.ethos-art:before{content:'';position:absolute;inset:13px;border:1px solid #cfb47b29;pointer-events:none}.ethos-art img{width:82%;height:auto;object-fit:contain;border-radius:50%;filter:saturate(.85)}.ethos-art>.eyebrow{margin-top:24px;font-size:8px}.ethos h2{font-size:clamp(46px,4.4vw,72px);line-height:1.06;margin:22px 0 27px}.ethos p{color:var(--muted);font-size:13px;line-height:1.9;max-width:480px;margin-bottom:16px}.ethos ul{list-style:none;margin:28px 0;padding:0}.ethos li{padding:15px 0;border-top:1px solid var(--line);display:flex;gap:22px;font-size:12px}.ethos li b{font-weight:400;font-size:9px;color:var(--acid)}
.visit{border-top:1px solid var(--line);padding-top:100px}.visit-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;margin-top:55px}.visit-info{display:flex;flex-direction:column;gap:32px;padding-top:8px}.visit-info>div{display:flex;flex-direction:column;gap:10px}.visit-info small{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--acid);margin-bottom:4px}.visit-info p{font-size:13px;color:var(--muted);line-height:1.9;max-width:330px}.visit-info #phone{font:36px var(--serif);width:max-content}.visit-info a{width:max-content;font-size:13px}.visit-info a:hover{color:var(--acid)}.map-link{display:inline-flex;gap:20px;font-size:11px!important;border-bottom:1px solid var(--line);padding:7px 0;margin-top:2px;color:var(--acid)}.map-panel{min-height:360px;border:1px solid #526046;background:#1c2d22;position:relative;overflow:hidden;padding:45px;display:flex;align-items:center}.map-panel:before,.map-panel:after{content:'';position:absolute;border:1px solid #cfb47b18;border-radius:50%;width:440px;height:440px;right:-185px;top:-130px;pointer-events:none}.map-panel:after{width:590px;height:590px;right:-260px;top:-205px}.map-fallback{position:relative;z-index:1}.map-fallback h3{font-size:51px;line-height:1.05;margin:22px 0 14px}.map-fallback p{font-size:12px;color:var(--muted);margin-bottom:25px}.location-mark{position:absolute;right:40px;top:36px;font-size:45px;font-weight:400;color:var(--acid)}
footer{border-top:1px solid var(--line);padding:45px var(--gutter) 30px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:35px}.footer-top .wordmark{font-size:32px}.footer-top .eyebrow{font-size:8px}.footer-bottom{display:flex;justify-content:space-between;gap:55px;border-top:1px solid var(--line);padding-top:25px;font-size:9px;line-height:1.9;color:#adb6a6}.footer-bottom p{max-width:680px}.footer-bottom>span{text-align:right;flex-shrink:0}.footer-bottom a{display:block;margin-top:7px;color:var(--muted)}
.age{position:fixed;z-index:100;inset:0;background:#09120fe8;backdrop-filter:blur(15px);display:grid;place-items:center;padding:25px;overflow:auto}.age-card{background:var(--ink);border:1px solid #6d6549;box-shadow:0 24px 100px #0006;width:min(540px,100%);padding:40px 46px;position:relative;text-align:center;margin:auto}.age-card:before{content:'';position:absolute;inset:9px;border:1px solid #cfb47b22;pointer-events:none}.age-logo{width:78px;height:78px;object-fit:contain;border-radius:50%;margin:0 auto 23px}.age-card>.eyebrow{font-size:9px}.age-num{position:absolute;top:23px;right:24px;font:33px var(--serif);color:var(--acid)}.age-num span{font-size:20px}.age-card h2{font-size:62px;line-height:1;margin:23px 0}.age-card p{font-size:12px;line-height:1.9;color:var(--muted);max-width:365px;margin:auto}.age-actions{display:flex;flex-direction:column;gap:19px;margin:28px 0}.age-actions .button{width:100%;justify-content:center}.age-actions a{font-size:12px;text-decoration:underline;text-underline-offset:4px;color:var(--bone);min-height:32px;padding:6px 0}.age-card>small{display:block;font-size:11px;color:var(--muted);line-height:1.8}.noscript-note{position:fixed;z-index:120;bottom:0;left:0;right:0;padding:20px;background:var(--bone);color:var(--ink)}
dialog{border:1px solid #8e7b51;background:var(--bone);color:var(--ink);padding:0;width:min(960px,92vw);max-height:90vh;box-shadow:0 30px 100px #0007}dialog::backdrop{background:#06100ce8;backdrop-filter:blur(10px)}.close{position:absolute;right:13px;top:13px;width:42px;height:42px;display:grid;place-items:center;z-index:2;border:1px solid #bbc0b1;background:var(--bone);color:var(--ink);font-size:27px}.close:hover{background:var(--forest);color:var(--bone)}#detail-body{display:grid;grid-template-columns:1fr 1fr}.detail-art{min-height:520px;background:#e4e6da;display:grid;place-items:center}.detail-art img{width:100%;height:100%;max-height:650px;object-fit:contain}.detail-copy{padding:75px 38px 40px}.detail-copy .eyebrow{color:#77623a}.detail-copy h2{font-size:42px;line-height:1.1;margin:20px 0;overflow-wrap:anywhere}.detail-copy strong{font-size:13px;font-weight:500;color:#715b32}.detail-copy p{font-size:12px;line-height:1.9;color:#57614e;margin:22px 0}.tags{display:flex;flex-wrap:wrap;gap:6px}.tags span{border:1px solid #c5cab9;padding:7px 10px;font-size:9px}.detail-copy .fine{font-size:10px}.detail-copy .text-link{color:var(--ink);border-color:#b0b9a3;margin-top:17px}.detail-copy .button{width:100%}
@media(min-width:1800px){.collection{padding-left:max(var(--gutter),calc((100vw - 1600px)/2));padding-right:max(var(--gutter),calc((100vw - 1600px)/2))}}
@media(max-width:1100px){nav{gap:22px}.hero{grid-template-columns:44% 56%;min-height:655px;padding-top:55px}.hero-actions{gap:15px}.hero-foot{font-size:8px}.hero-foot>span:first-child{display:none}.products{grid-template-columns:repeat(3,minmax(0,1fr))}.cat-grid button{padding:24px}.ethos{gap:6%}.ethos-art{padding:22px}.row>p{max-width:300px}.wordmark{font-size:25px}}
@media(max-width:760px){.announcement{font-size:8px}.announcement>span:first-child{display:none}.announcement{justify-content:center}header{height:86px}.brand-logo{width:44px;height:44px}.brand{gap:10px}.wordmark{font-size:23px}.brand small{font-size:7px}.menu{display:block}nav{display:none;position:absolute;top:78px;left:0;right:0;padding:20px;background:#1b2d21;border:1px solid var(--line);box-shadow:0 20px 40px #0005;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:15px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:45px;padding-bottom:75px;min-height:0}.hero-copy{max-width:100%}h1{font-size:82px;margin:22px 0;line-height:.94}.hero-copy p{font-size:13px;max-width:420px}.hero-actions{margin-top:24px;gap:22px}.hero-art{width:100%;margin:20px 0 8px}.hero-foot{bottom:23px;gap:15px;font-size:8px}.hero-foot>span:last-child{display:none}.categories,.collection,.visit{padding-top:70px;padding-bottom:70px}.row{display:block}.row>p{max-width:460px;margin-top:25px;padding:0;font-size:12px}.section-head h2{font-size:62px;margin-top:15px}.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:35px}.cat-grid button{padding:20px;min-height:203px}.cat-grid>button>span{font-size:29px}.cat-grid i{line-height:1.7;font-size:9px}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 15px}.tools{margin-top:30px}.catalogue-label{display:none}#filters{gap:6px}#filters button{font-size:9px;padding:10px 12px}.product-meta h3{font-size:12px}.product-meta small{font-size:7px}.product-meta>span{font-size:9px}.product-view{display:none}.pagination{gap:12px;font-size:9px;flex-wrap:wrap}.pagination button{padding:12px;font-size:9px}.ethos{grid-template-columns:1fr;gap:40px;padding-top:70px;padding-bottom:70px}.ethos-art{aspect-ratio:1.1/1;max-width:500px;width:100%;margin:auto;padding:30px}.ethos-art img{width:65%}.ethos h2{font-size:57px}.ethos-copy p{font-size:12px}.visit-layout{grid-template-columns:1fr;gap:35px;margin-top:37px}.map-panel{padding:32px;min-height:330px}.map-fallback h3{font-size:47px}.footer-top{flex-wrap:wrap;gap:20px}.footer-top .eyebrow{display:none}.footer-top .wordmark{font-size:27px}.footer-bottom{flex-direction:column;gap:22px}.footer-bottom>span{text-align:left}.age{padding:16px}.age-card{padding:30px 26px}.age-card h2{font-size:55px}.age-logo{width:65px;height:65px;margin-bottom:19px}#detail-body{grid-template-columns:1fr}.detail-art{min-height:0;height:320px}.detail-art img{height:320px}.detail-copy{padding:30px 26px}.detail-copy h2{font-size:38px}.result-line{font-size:9px;align-items:flex-start}}
@media(max-width:390px){.wordmark{font-size:20px}.brand-logo{width:38px;height:38px}.menu{padding:10px;font-size:10px}h1{font-size:72px}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.cat-grid button{padding:17px;min-height:205px}.cat-grid>button>span{font-size:26px}.product-meta h3{font-size:11px}.age-card h2{font-size:48px}}
/* Gorilla vignette and a botanical closing border from the supplied artwork. */
.hero-art{isolation:isolate}.joint-effect{position:absolute;z-index:3;pointer-events:none;width:1px;height:1px}.hero-joint{left:53.125%;top:44.39%}.portrait-joint{left:94.44%;top:40.2%}
.joint-ember{position:absolute;left:-2px;top:-2px;width:4px;height:4px;border-radius:50%;background:#ce9666;box-shadow:0 0 7px #d9935860;opacity:.5;animation:ember-breathe 7s ease-in-out infinite}
.joint-wisp{position:absolute;width:80px;height:175px;left:-10px;bottom:0;background:url('/assets/smoke-ribbons.png') center/100% 100% no-repeat;opacity:0;transform-origin:15% 100%;animation:joint-rise 9s ease-out infinite}.wisp-two{width:95px;height:195px;animation-delay:-4.5s}
@keyframes joint-rise{0%{opacity:0;transform:translate(0,8px) rotate(-8deg) scale(.55)}25%{opacity:.75}70%{opacity:.5}100%{opacity:0;transform:translate(38px,-58px) rotate(18deg) scale(1.1)}}
@keyframes ember-breathe{0%,100%{opacity:.45}40%{opacity:.85}60%{opacity:.5}}
.ethos-art.crew-portrait{padding:18px 18px 27px;aspect-ratio:auto;overflow:hidden;background:var(--ink)}.crew-portrait .portrait-frame{position:relative;width:100%;overflow:hidden}.crew-portrait .portrait-frame>img{width:100%;height:auto;border-radius:0;filter:saturate(.85);-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent 100%);mask-image:linear-gradient(180deg,#000 80%,transparent 100%)}.crew-portrait>.eyebrow{position:relative;margin-top:5px}
footer{position:relative;padding-bottom:0}.footer-garden{height:155px;margin:22px calc(-1 * var(--gutter)) 0;background:url('/assets/footer-foliage.webp') center bottom/430px 171px repeat-x;opacity:.8;pointer-events:none}.effects-off .joint-effect{display:none}.age-locked .joint-effect span,.page-hidden .joint-effect span,.crew-paused .portrait-joint span,.atmosphere-paused .hero-joint span{animation-play-state:paused}
@media(max-width:760px){.joint-wisp{width:40px;height:95px}.wisp-two{display:none}.footer-garden{height:125px;background-size:340px 135px}.ethos-art.crew-portrait{padding:14px 14px 25px}.crew-portrait .portrait-frame>img{width:100%}}
@media(prefers-reduced-motion:reduce){.joint-effect{display:none}}
/* Atmospheric detailing: two pre-rendered smoke ribbons, no canvas or animated blur. */
.hero,.categories,.visit{overflow:clip}.categories,.visit{position:relative;isolation:isolate}.categories>.section-head,.categories>.cat-grid,.visit>.section-head,.visit>.visit-layout{position:relative;z-index:1}
.atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 65%);mask-image:linear-gradient(90deg,transparent 30%,#000 65%)}
.smoke{position:absolute;display:block;background:url('/assets/smoke-ribbons.png') center/contain no-repeat;width:75%;height:65%;right:-3%;top:23%;opacity:.48;transform-origin:center;animation:smoke-drift 28s ease-in-out infinite alternate;pointer-events:none}
.smoke-two{right:9%;top:6%;width:66%;height:68%;opacity:.3;animation:smoke-drift-return 36s ease-in-out infinite alternate}
@keyframes smoke-drift{from{transform:translate(-2%,6%) rotate(-9deg) scale(.98)}to{transform:translate(4%,-7%) rotate(3deg) scale(1.06)}}
@keyframes smoke-drift-return{from{transform:translate(5%,2%) rotate(17deg) scale(1.04)}to{transform:translate(-3%,-6%) rotate(6deg) scale(.97)}}
.botanical{position:absolute;pointer-events:none;user-select:none;object-fit:contain;opacity:.12}.hero-leaf{width:235px;height:auto;right:-55px;bottom:35px;transform:rotate(-28deg);opacity:.17}.category-leaf{width:225px;height:auto;right:-58px;top:28px;transform:rotate(28deg);opacity:.09}.visit-leaf{width:240px;height:auto;left:-90px;bottom:20px;transform:rotate(-32deg);opacity:.09}
.hero-foot{z-index:2}.footer-controls{display:flex;align-items:center;gap:25px}.effects-toggle{background:none;border:1px solid var(--line);font-size:10px;padding:11px 14px;min-height:40px;color:var(--muted)}.effects-toggle:hover{border-color:var(--acid);color:var(--bone)}
.effects-off .atmosphere,.effects-off .botanical{display:none}.effects-off .smoke{animation:none}.age-locked .smoke,.atmosphere-paused .smoke{animation-play-state:paused}
@media(max-width:760px){.atmosphere{-webkit-mask-image:linear-gradient(180deg,transparent 32%,#000 64%);mask-image:linear-gradient(180deg,transparent 32%,#000 64%)}.smoke{width:120%;height:45%;right:-12%;top:48%;opacity:.34}.smoke-two{display:none}.hero-leaf{width:160px;right:-50px;bottom:40px;opacity:.12}.category-leaf{width:155px;right:-60px;top:24px;opacity:.075}.visit-leaf{width:165px;left:-70px;bottom:30px;opacity:.07}.footer-controls{gap:20px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.smoke{display:none}}
/* Premium interaction polish */
nav a{position:relative;padding-bottom:6px}nav a:not(.nav-pill):after{content:'';position:absolute;left:0;bottom:0;height:1px;width:100%;background:var(--acid);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}nav a:not(.nav-pill):hover:after{transform:scaleX(1);transform-origin:left}
.button{position:relative;overflow:hidden}.button:after{content:'';position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-18deg);transition:left .6s var(--ease)}.button:hover:after{left:130%}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.in-view{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.button:after{display:none}}
