@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap");
:root{--forest:#183d2c;--forest2:#24533c;--cream:#f3efe7;--black:#181918;--white:#fff;--copper:#ae744e;--sage:#9aaa95;--line:#d9ded8;--gray:#697069;--success:#2f7656;--error:#a43d39}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:105px}body{min-width:320px;background:var(--cream);color:var(--black);font-family:Inter,Arial,sans-serif;overflow-x:hidden}body.age-locked,body.modal-open{overflow:hidden}img{display:block;width:100%}a{color:inherit}button,input,select{font:inherit}.skip-link{position:fixed;top:-100px;left:20px;z-index:99999;padding:12px;background:#fff}.skip-link:focus{top:20px}
.age-gate{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(12,18,14,.97)}.age-gate.hidden{display:none}.age-panel{width:min(560px,100%);padding:46px;background:#fff;text-align:center}.age-brand{display:block;font-size:28px;font-weight:800;letter-spacing:.08em}.age-sub{display:block;margin:5px 0 25px;color:var(--copper);font-size:9px;font-weight:800;letter-spacing:.16em}.age-panel h1{font-family:"Playfair Display";font-size:37px}.age-panel p{max-width:440px;margin:15px auto 23px;color:var(--gray);line-height:1.7}.age-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.age-actions button{padding:14px;background:#fff;border:1px solid var(--black);font-weight:800}.age-actions button:first-child{background:var(--forest);color:#fff}.age-panel small{display:block;margin-top:17px;color:#888;font-size:9px}
.demo-bar{display:flex;justify-content:space-between;padding:8px 5%;background:#10110f;color:#999;font-size:10px}.demo-bar strong{color:#fff}.notice-bar{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:12px 5%;background:var(--copper);color:#fff}.notice-bar>span{padding:5px 7px;background:#fff;color:var(--copper);font-size:8px;font-weight:800}.notice-bar p{font-size:11px}.notice-bar a{font-size:10px;font-weight:800;text-decoration:none}.site-header{position:sticky;top:0;z-index:1000;display:grid;grid-template-columns:auto 1fr auto;align-items:center;min-height:86px;padding:0 5%;background:rgba(243,239,231,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:11px;text-decoration:none}.brand-mark{display:flex;align-items:center;justify-content:center;width:47px;height:47px;background:var(--forest);border-radius:50%;color:#fff;font-family:"Playfair Display";font-size:16px;font-weight:700}.brand-copy{display:flex;flex-direction:column}.brand-copy strong{font-size:18px;letter-spacing:.05em}.brand-copy small{margin-top:4px;color:var(--copper);font-size:7px;font-weight:800;letter-spacing:.17em}.main-nav{display:flex;justify-content:center;gap:26px}.main-nav a{font-size:11px;font-weight:700;text-decoration:none}.bag-button{padding:11px 15px;background:var(--forest);border:0;color:#fff;font-size:10px;font-weight:800}.bag-button span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:6px;background:#fff;border-radius:50%;color:var(--forest)}.menu-toggle{display:none;width:44px;height:44px;background:transparent;border:0}.menu-toggle span{display:block;width:100%;height:2px;margin:6px 0;background:#222}
.hero{position:relative;min-height:770px;overflow:hidden}.hero>img,.hero-overlay{position:absolute;inset:0}.hero>img{height:100%;object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(14,31,22,.94),rgba(22,49,34,.72) 53%,rgba(18,36,26,.14))}.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;max-width:820px;min-height:770px;padding:90px 7%}.eyebrow{margin-bottom:18px;color:#dbc8b3;font-size:10px;font-weight:800;letter-spacing:.17em}.hero h1{margin-bottom:24px;color:#fff;font-family:"Playfair Display";font-size:clamp(55px,6.6vw,92px);letter-spacing:-.045em;line-height:.94}.hero h1 em{display:block;color:#ddb99e;font-style:normal}.hero-content>p{max-width:650px;margin-bottom:30px;color:#e1e8e2;font-size:18px;line-height:1.72}.hero-actions{display:flex;gap:12px;margin-bottom:38px}.button{display:inline-flex;padding:14px 19px;border:1px solid transparent;font-size:11px;font-weight:800;text-decoration:none}.primary{background:#fff;color:var(--forest)}.secondary{border-color:rgba(255,255,255,.5);color:#fff}.hero-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:720px;border-top:1px solid rgba(255,255,255,.18)}.hero-stat-grid div{padding:17px 14px 17px 0;border-right:1px solid rgba(255,255,255,.14)}.hero-stat-grid strong,.hero-stat-grid span{display:block}.hero-stat-grid strong{color:#fff;font-size:21px}.hero-stat-grid span{margin-top:4px;color:#b5c0b6;font-size:9px}
.shop-by-feeling{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;padding:30px 6%;background:var(--forest);color:#fff}.shop-by-feeling>span{font-size:9px;font-weight:800;letter-spacing:.14em}.shop-by-feeling>div{display:flex;flex-wrap:wrap;gap:8px}.shop-by-feeling button{padding:9px 13px;background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff;font-size:9px;font-weight:800}.shop-by-feeling button.active{background:#fff;color:var(--forest)}.shop-by-feeling>p{grid-column:2;color:#c5d0c7;font-size:10px}
.menu-section{padding:100px 5% 120px;background:#fff}.section-heading{display:grid;grid-template-columns:1fr .55fr;gap:45px;align-items:end;max-width:1320px;margin:0 auto 38px}.section-label{display:block;margin-bottom:10px;color:var(--copper);font-size:10px;font-weight:800;letter-spacing:.15em}.section-heading h2,.experience-copy h2,.education-heading h2,.rewards-copy h2,.visit-copy h2{font-family:"Playfair Display";font-size:clamp(42px,5vw,68px);letter-spacing:-.04em;line-height:.98}.section-heading>p{color:var(--gray);line-height:1.7}.menu-controls{display:flex;justify-content:space-between;gap:18px;max-width:1320px;margin:0 auto 25px}.category-filters{display:flex;flex-wrap:wrap;gap:7px}.category-filter{padding:10px 12px;background:#fff;border:1px solid var(--line);font-size:9px;font-weight:800}.category-filter.active,.category-filter:hover{background:var(--forest);border-color:var(--forest);color:#fff}.menu-controls input{min-width:300px;padding:12px;border:1px solid var(--line)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1320px;margin:auto}.product-card{display:flex;flex-direction:column;background:var(--cream);border:1px solid var(--line);transition:.25s}.product-card.hidden{display:none}.product-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(33,48,37,.12)}.product-visual{display:flex;flex-direction:column;justify-content:space-between;height:280px;padding:23px;color:#fff}.product-visual>span,.product-visual>small{font-size:8px;font-weight:800;letter-spacing:.14em}.product-visual strong{font-family:"Playfair Display";font-size:30px;line-height:.95}.flower-visual{background:linear-gradient(145deg,#6f472f,#1d392b)}.haze-visual{background:linear-gradient(145deg,#d39a43,#496743)}.preroll-visual{background:linear-gradient(145deg,#ab5e3c,#322923)}.vape-visual{background:linear-gradient(145deg,#486c5e,#202d29)}.edible-visual{background:linear-gradient(145deg,#6e3152,#c26265)}.chocolate-visual{background:linear-gradient(145deg,#291a16,#7c4e36)}.rosin-visual{background:linear-gradient(145deg,#b67830,#4b2f1d)}.wellness-visual{background:linear-gradient(145deg,#6f8068,#2b4c39)}.product-copy{display:flex;flex-direction:column;flex:1;padding:21px}.product-top{display:flex;justify-content:space-between}.product-top span{color:var(--copper);font-size:8px;font-weight:800}.product-top strong{font-size:17px}.product-copy h3{margin:10px 0 8px;font-family:"Playfair Display";font-size:22px}.product-copy>p{min-height:62px;color:var(--gray);font-size:12px;line-height:1.6}.product-tags{display:flex;flex-wrap:wrap;gap:5px;margin:16px 0}.product-tags span{padding:5px 7px;background:#fff;border:1px solid var(--line);font-size:7px;font-weight:800}.reserve-item{width:100%;margin-top:auto;padding:11px;background:var(--forest);border:0;color:#fff;font-size:9px;font-weight:800}
.experience-section{display:grid;grid-template-columns:1.15fr .85fr;background:var(--black);color:#fff}.experience-photo{min-height:700px}.experience-photo img{height:100%;object-fit:cover}.experience-copy{display:flex;flex-direction:column;justify-content:center;padding:85px 10%}.light{color:#d8b294}.experience-copy>p{margin:22px 0 27px;color:#c5c7c3;line-height:1.72}.experience-list{display:grid;gap:14px}.experience-list>div{display:grid;grid-template-columns:40px 1fr;gap:10px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12)}.experience-list span{grid-row:1/3;color:#d4aa8b;font-size:9px}.experience-list strong{font-size:13px}.experience-list p{color:#9fa29e;font-size:10px}
.education-section{padding:100px 5%;background:var(--cream)}.education-heading{max-width:900px;margin-bottom:42px}.education-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;max-width:1250px;margin:auto}.education-grid article{padding:25px;background:#fff;border-top:5px solid var(--copper)}.education-grid span{color:var(--copper);font-family:"Playfair Display";font-size:24px}.education-grid h3{margin:18px 0 9px;font-family:"Playfair Display";font-size:22px}.education-grid p{color:var(--gray);font-size:12px;line-height:1.65}.education-disclaimer{max-width:1000px;margin:25px auto 0;color:#878c87;font-size:9px;text-align:center}
.rewards-section{padding:100px 5%;background:var(--copper);color:#fff}.rewards-copy{max-width:760px}.rewards-copy>p{margin-top:20px;line-height:1.7}.reward-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;max-width:1050px;margin:38px 0}.reward-stats div{padding:23px;border:1px solid rgba(255,255,255,.35)}.reward-stats strong,.reward-stats span{display:block}.reward-stats strong{font-size:28px}.reward-stats span{margin-top:4px;font-size:11px}.rewards-section form{max-width:680px}.rewards-section label{display:block;margin-bottom:8px;font-size:10px;font-weight:800}.rewards-section form>div{display:flex}.rewards-section input{flex:1;padding:15px;border:0}.rewards-section form button{padding:0 24px;background:var(--forest);border:0;color:#fff;font-weight:800}.rewards-section form>p{min-height:18px;margin-top:8px;font-size:10px}
.visit-section{display:grid;grid-template-columns:1.15fr .85fr;min-height:680px;background:var(--forest);color:#fff}.visit-photo{min-height:680px}.visit-photo img{height:100%;object-fit:cover}.visit-copy{display:flex;flex-direction:column;justify-content:center;padding:80px 10%}.visit-copy>p{margin:22px 0;color:#ced8d0;line-height:1.72}.visit-details{display:grid;gap:17px}.visit-details>div{display:grid;grid-template-columns:90px 1fr;gap:18px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.15)}.visit-details span{color:#dfb79a;font-size:9px;font-weight:800}.visit-details p{color:#d9e1da}.demo-notice{color:#91a397!important;font-size:10px!important}
.site-footer{display:grid;grid-template-columns:1fr auto auto;gap:45px;align-items:end;padding:50px 5%;background:#101510;color:#fff}.footer-brand{margin-bottom:14px}.site-footer>div>p{max-width:480px;color:#98a29a;font-size:12px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}.footer-links a,.footer-meta a{color:#abb4ad;font-size:10px;text-decoration:none}.footer-meta{display:flex;flex-direction:column;gap:8px}.footer-meta strong{color:#d7ad91;font-size:9px}
.bag-drawer{position:fixed;top:0;right:0;z-index:5000;width:min(430px,100%);height:100vh;padding:26px;background:#fff;box-shadow:-25px 0 60px rgba(0,0,0,.2);transform:translateX(105%);transition:.3s;overflow-y:auto}.bag-drawer.open{transform:none}.drawer-backdrop{position:fixed;inset:0;z-index:4990;display:none;background:rgba(0,0,0,.55)}.drawer-backdrop.open{display:block}.bag-header{display:flex;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--line)}.bag-header span{color:var(--copper);font-size:9px;font-weight:800}.bag-header h2{font-family:"Playfair Display";font-size:34px}.bag-header button{background:transparent;border:0;font-size:27px}.bag-items{display:grid;gap:12px;min-height:170px}.empty-bag{padding:50px 0;color:var(--gray);text-align:center}.bag-item{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px;background:var(--cream)}.bag-item h3{font-size:13px}.bag-item p{margin-top:4px;color:var(--gray);font-size:10px}.bag-controls{display:flex;align-items:center;gap:8px;margin-top:10px}.bag-controls button{width:26px;height:26px;background:#fff;border:1px solid var(--line)}.remove-bag-item{margin-top:8px;background:transparent;border:0;color:var(--copper);font-size:9px;font-weight:800}.bag-totals{display:grid;gap:9px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.bag-totals>div{display:flex;justify-content:space-between;font-size:12px}.bag-total{padding-top:10px;border-top:1px solid var(--line);font-size:17px!important}.bag-drawer>button{width:100%;margin-top:20px;padding:15px;background:var(--forest);border:0;color:#fff;font-weight:800}.bag-drawer>button:disabled{background:#aaa}.bag-drawer>p{margin-top:10px;color:#888;font-size:9px;text-align:center}
.reservation-modal{position:fixed;inset:0;z-index:6000;display:none}.reservation-modal.open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(10,14,11,.84);backdrop-filter:blur(5px)}.reservation-dialog{position:relative;width:min(700px,calc(100% - 30px));max-height:calc(100vh - 30px);margin:15px auto;padding:35px;background:#fff;overflow-y:auto}.modal-close{position:absolute;top:14px;right:17px;background:transparent;border:0;font-size:27px}.reservation-dialog>span{color:var(--copper);font-size:9px;font-weight:800}.reservation-dialog h2{margin:7px 0 22px;font-family:"Playfair Display";font-size:40px}.reservation-summary-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:11px}.reservation-summary-total{display:flex;justify-content:space-between;margin:15px 0 25px;font-size:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.reservation-dialog label{display:block;margin-bottom:14px;font-size:10px;font-weight:700}.reservation-dialog input,.reservation-dialog select{display:block;width:100%;margin-top:6px;padding:13px;background:#f3f4f1;border:1px solid var(--line)}.legal-check{display:flex!important;gap:9px;align-items:flex-start;line-height:1.5}.legal-check input{width:auto;margin-top:2px}.reservation-dialog form>button{width:100%;padding:15px;background:var(--forest);border:0;color:#fff;font-weight:800}.reservation-dialog form>p{min-height:19px;margin-top:9px;font-size:10px;text-align:center}.reservation-dialog form>p.success{color:var(--success)}.reservation-dialog form>p.error{color:var(--error)}
@media(max-width:1050px){.main-nav{display:none}.menu-toggle{display:block;justify-self:end}.site-header{grid-template-columns:auto auto auto;gap:10px}.main-nav.open{position:fixed;top:124px;left:0;right:0;display:flex;flex-direction:column;padding:15px 5% 20px;background:var(--cream)}.main-nav.open a{padding:13px;border-bottom:1px solid var(--line);text-align:center}.product-grid{grid-template-columns:repeat(2,1fr)}.experience-section,.visit-section{grid-template-columns:1fr}.experience-photo,.visit-photo{min-height:520px}.education-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr 1fr}.footer-meta{grid-column:1/3}}
@media(max-width:650px){.age-actions{grid-template-columns:1fr}.demo-bar{justify-content:center}.demo-bar strong{display:none}.notice-bar{grid-template-columns:1fr}.notice-bar a{display:none}.brand-copy strong{font-size:14px}.brand-copy small{font-size:5px}.hero,.hero-content{min-height:700px}.hero-content{padding:75px 6%}.hero h1{font-size:49px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-stat-grid{grid-template-columns:1fr 1fr}.shop-by-feeling{grid-template-columns:1fr}.shop-by-feeling>p{grid-column:1}.menu-section,.education-section,.rewards-section{padding:80px 6%}.section-heading{grid-template-columns:1fr}.menu-controls{flex-direction:column}.menu-controls input{min-width:0;width:100%}.product-grid{grid-template-columns:1fr}.education-grid{grid-template-columns:1fr}.reward-stats{grid-template-columns:1fr}.rewards-section form>div{flex-direction:column}.rewards-section form button{padding:14px}.experience-copy,.visit-copy{padding:75px 6%}.visit-details>div{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}.footer-meta{grid-column:auto}.form-row{grid-template-columns:1fr}.reservation-dialog{padding:28px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important}}