:root{--accent: #74835A;--accent-dark: #5f6d49;--band: #2A2F25;--paper: #F3EDE2;--paper-2: #ECE3D3;--ink: #23241D;--ink-soft: #46443b;--ink-mute: #56544a;--hair: rgba(35, 36, 29, .12);--serif: "Newsreader", Georgia, serif;--sans: "Hanken Grotesk", system-ui, -apple-system, sans-serif;--mono: "Space Mono", ui-monospace, monospace;--maxw: 1240px;--gutter: 32px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}::selection{background:#cfd6bd}img{display:block;max-width:100%}a{color:inherit}button{font-family:inherit}.shell{max-width:var(--maxw);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);margin-bottom:22px}.eyebrow.muted{color:#8a8675}.btn{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:#f6f2e9;font-weight:500;font-size:15.5px;padding:14px 26px;border:none;border-radius:100px;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .25s,transform .25s}.btn:hover{background:var(--accent-dark);transform:translateY(-1px)}.btn.small{font-size:14.5px;padding:11px 22px}.text-link{font-weight:500;font-size:15.5px;color:var(--ink);text-decoration:none;border:none;background:none;cursor:pointer;padding:0 0 4px;border-bottom:1px solid #c4bba6;transition:border-color .25s}.text-link:hover{border-color:var(--accent)}.nav{position:sticky;top:0;z-index:50;-webkit-backdrop-filter:saturate(120%) blur(8px);backdrop-filter:saturate(120%) blur(8px);background:#f3ede2d1;border-bottom:1px solid rgba(35,36,29,.08)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:18px;padding-bottom:18px}.brand{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;line-height:1}.brand-name{font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:.01em}.brand-sub{font-family:var(--mono);font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;color:#8a8675;margin-top:5px}.nav-right{display:flex;align-items:center;gap:34px}.nav-links{display:flex;align-items:center;gap:28px;font-size:14.5px;font-weight:500}.nav-link{text-decoration:none;color:var(--ink-soft);transition:color .25s}.nav-link:hover{color:var(--accent)}.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}.nav-toggle span{width:24px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s,opacity .3s}.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-menu,.nav-scrim{display:none}.hero{padding-top:72px;padding-bottom:40px}.hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(40px,7vw,102px);line-height:.98;letter-spacing:-.015em;margin:0;max-width:15ch}.hero em,.accent-em{font-style:italic;color:var(--accent)}.hero-foot{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-end;justify-content:space-between;margin-top:40px}.hero-lead{font-size:19px;line-height:1.6;color:#4f4d43;max-width:46ch;margin:0}.hero-cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.media{border-radius:6px;overflow:hidden;background:#e8e0d0}.media img{width:100%;height:100%;object-fit:cover}.media.dark{background:#333930}.r-2109{aspect-ratio:21 / 9}.r-32{aspect-ratio:3 / 2}.r-45{aspect-ratio:4 / 5}.r-34{aspect-ratio:3 / 4}.hero-media{padding-top:24px}.practice{max-width:1000px;margin:0 auto;padding:120px var(--gutter);scroll-margin-top:90px;text-align:center}.practice .statement{font-family:var(--serif);font-weight:300;font-size:clamp(24px,3.4vw,42px);line-height:1.32;letter-spacing:-.01em;margin:0;color:#2c2d25}.practice .media{margin-top:64px}.experiences{background:var(--paper-2);scroll-margin-top:90px}.experiences .shell{padding-top:104px;padding-bottom:104px}.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:60px}.section-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,5vw,64px);line-height:1.02;letter-spacing:-.015em;margin:0}.section-head p{font-size:16px;line-height:1.6;color:var(--ink-mute);max-width:34ch;margin:0}.exp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:#23241d1a;border:1px solid rgba(35,36,29,.1);border-radius:6px;overflow:hidden}.exp-card{background:var(--paper);padding:38px 34px 34px;display:flex;flex-direction:column;min-height:236px;transition:background .3s;width:100%;border:none;text-align:left;color:inherit;font:inherit;cursor:pointer}.exp-card:hover{background:#f7f2e8}.exp-card:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}.exp-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:22px}.exp-n{font-family:var(--mono);font-size:12px;letter-spacing:.12em;color:var(--accent)}.exp-dot{width:7px;height:7px;border-radius:100px;background:var(--accent);opacity:.55}.exp-card h3{font-family:var(--serif);font-weight:400;font-size:27px;line-height:1.1;margin:0 0 14px}.exp-card p{font-size:15px;line-height:1.62;color:var(--ink-mute);margin:0 0 22px;flex:1}.exp-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid rgba(35,36,29,.1)}.exp-meta{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#8a8675}.exp-arrow{color:var(--accent);font-size:16px;transition:transform .25s}.exp-card:hover .exp-arrow{transform:translate(4px)}.library{padding-top:118px;padding-bottom:118px;scroll-margin-top:90px}.library-grid{display:grid;grid-template-columns:minmax(280px,.85fr) 1.15fr;gap:72px;align-items:start}.library-intro{position:sticky;top:108px}.library-intro h2{font-family:var(--serif);font-weight:300;font-size:clamp(32px,4.4vw,56px);line-height:1.04;letter-spacing:-.015em;margin:0 0 26px}.library-intro p{font-size:17px;line-height:1.66;color:#4f4d43;margin:0 0 18px;max-width:48ch}.maker-list{display:flex;flex-direction:column;border-bottom:1px solid var(--hair)}.maker-row{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:22px 6px;border-top:1px solid var(--hair);background:none;border-left:none;border-right:none;width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:background .25s,padding-left .25s}.maker-row:hover{background:#ffffff73;padding-left:14px}.maker-swatch{width:54px;height:54px;border-radius:4px;flex-shrink:0;background:repeating-linear-gradient(135deg,#e5dccb 0,#e5dccb 8px,#ddd3bf 8px,#ddd3bf 16px);display:grid;place-items:center;font-family:var(--serif);font-size:22px;color:var(--accent)}.maker-row h3{font-family:var(--serif);font-weight:400;font-size:22px;margin:0 0 4px}.maker-row .style{font-size:14.5px;color:#6b6859}.maker-meta{display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#8a8675;white-space:nowrap}.maker-arrow{transition:transform .25s}.maker-row:hover .maker-arrow{transform:translate(4px);color:var(--accent)}.moment{background:var(--band);color:#ede8db}.moment .shell{padding-top:128px;padding-bottom:128px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:64px;align-items:center}.moment .eyebrow{color:#a8b08f}.moment blockquote{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(26px,3.6vw,46px);line-height:1.3;letter-spacing:-.01em;margin:0 0 26px}.moment cite{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:#9a9583;font-style:normal}.visit{padding-top:118px;padding-bottom:118px;scroll-margin-top:90px}.visit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:64px;align-items:center}.visit-grid h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,5vw,64px);line-height:1.02;letter-spacing:-.015em;margin:0 0 36px}.hours{display:flex;flex-direction:column;margin-bottom:38px}.hours-row{display:flex;justify-content:space-between;gap:24px;padding:15px 0;border-top:1px solid var(--hair)}.hours-row:last-child{border-bottom:1px solid var(--hair)}.hours-row .day{font-size:15.5px;color:var(--ink-soft)}.hours-row .time{font-family:var(--mono);font-size:13px;color:var(--ink)}.hours-row .time.closed{color:#8a8675}.address{font-size:16px;line-height:1.6;color:var(--ink-mute);margin:0 0 32px}.address .label{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#8a8675;display:block;margin-bottom:6px}.footer{background:var(--band);color:#d9d3c4}.footer .shell{padding-top:88px;padding-bottom:40px}.footer-cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:56px}.footer-lead{font-size:14.5px;line-height:1.6;color:#a8a290;margin:0 0 22px}.footer-brand{font-family:var(--serif);font-size:27px;margin-bottom:14px;color:#f1ecdf}.footer h4{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8d8876;margin:0 0 18px;font-weight:400}.footer-nav{display:flex;flex-direction:column;gap:11px;font-size:14.5px}.footer-link{color:#d9d3c4;text-decoration:none;background:none;border:none;padding:0;cursor:pointer;font:inherit;text-align:left;transition:color .25s}.footer-link:hover{color:#fff}.signup{display:flex;gap:8px;max-width:340px}.signup input{flex:1;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);border-radius:100px;padding:11px 18px;color:#ede8db;font-family:inherit;font-size:14px;outline:none}.signup input::placeholder{color:#97917f}.footer-base{margin-top:64px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8d8876}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#1415108c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;padding:0;animation:fade .2s ease}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.modal{background:var(--paper);width:100%;max-width:720px;max-height:92vh;overflow-y:auto;border-radius:14px 14px 0 0;animation:rise .28s cubic-bezier(.2,.8,.2,1);position:relative;-webkit-overflow-scrolling:touch}.modal-close{position:sticky;top:16px;float:right;margin:16px 16px 0 0;width:38px;height:38px;border-radius:100px;background:#23241d0f;border:none;cursor:pointer;font-size:18px;color:var(--ink);line-height:1;display:grid;place-items:center;z-index:2;transition:background .2s}.modal-close:hover{background:#23241d24}.modal-body{padding:8px 38px 44px}.modal-banner{height:6px;width:100%;background:var(--maker-accent, var(--accent))}.modal-kicker{font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--maker-accent, var(--accent));margin-bottom:14px;display:flex;gap:12px;flex-wrap:wrap}.modal h2{font-family:var(--serif);font-weight:300;font-size:clamp(30px,6vw,46px);line-height:1.04;letter-spacing:-.015em;margin:0 0 8px}.modal .tagline{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--ink-soft);margin:0 0 26px}.modal p.body{font-size:16px;line-height:1.7;color:var(--ink-mute);margin:0 0 18px}.fact-row{display:flex;flex-wrap:wrap;gap:10px 28px;padding:20px 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);margin:24px 0 28px}.fact{display:flex;flex-direction:column;gap:3px}.fact .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#8a8675}.fact .v{font-size:15px;color:var(--ink)}.shelf-pin{display:flex;align-items:center;gap:14px;background:#74835a1a;border:1px solid rgba(116,131,90,.25);border-radius:10px;padding:16px 18px;margin:0 0 30px}.shelf-pin .star{color:var(--maker-accent, var(--accent));font-size:18px}.shelf-pin .txt{font-size:14.5px;line-height:1.45;color:var(--ink-soft)}.shelf-pin .txt strong{color:var(--ink)}.modal h3.sub{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:#8a8675;margin:0 0 16px;font-weight:400}.tea{padding:18px 0;border-top:1px solid var(--hair)}.tea:first-of-type{border-top:none}.tea-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.tea-head .name{font-family:var(--serif);font-size:20px}.tea-head .kind{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#8a8675}.tea .notes{font-size:14.5px;color:var(--ink-mute);margin:6px 0 8px}.tea .brew{font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:.02em}.modal-cta{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:30px}.includes{list-style:none;margin:0;padding:0}.includes li{display:flex;gap:12px;align-items:baseline;padding:11px 0;border-top:1px solid var(--hair);font-size:15px;line-height:1.5;color:var(--ink-mute)}.includes li:first-child{border-top:none}.includes li:before{content:"—";color:var(--maker-accent, var(--accent));flex-shrink:0}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.field label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#8a8675}.field input,.field textarea,.field select{font-family:inherit;font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--hair);border-radius:9px;padding:12px 14px;outline:none;transition:border-color .2s,box-shadow .2s;width:100%}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #74835a26}.field textarea{resize:vertical;min-height:96px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-success{text-align:center;padding:28px 8px 8px}.form-success .ring{width:56px;height:56px;border-radius:100px;margin:0 auto 20px;background:#74835a24;display:grid;place-items:center;color:var(--accent);font-size:26px}@media (min-width: 760px){.modal-backdrop{align-items:center;padding:24px}.modal{border-radius:16px}}@media (max-width: 940px){.footer-cols{grid-template-columns:1fr 1fr;gap:40px}.footer-cols>:first-child{grid-column:1 / -1}.library-grid{grid-template-columns:1fr;gap:40px}.library-intro{position:static}}@media (max-width: 760px){:root{--gutter: 20px}.nav-links,.nav-right .btn{display:none}.nav-toggle{display:flex}.nav-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#14151066;opacity:0;pointer-events:none;transition:opacity .25s ease}.nav-scrim.show{opacity:1;pointer-events:auto}.nav-menu{display:flex;flex-direction:column;gap:2px;padding:6px var(--gutter) 0;background:#f3ede2fa;-webkit-backdrop-filter:saturate(120%) blur(8px);backdrop-filter:saturate(120%) blur(8px);border-bottom:1px solid rgba(35,36,29,.08);box-shadow:0 18px 40px -24px #23241d66;overflow:hidden;max-height:0;opacity:0;transform:translateY(-6px);pointer-events:none;transition:max-height .32s ease,opacity .24s ease,transform .24s ease,padding .32s ease}.nav-menu.open{max-height:80vh;opacity:1;transform:translateY(0);pointer-events:auto;padding-bottom:20px}.nav-menu a{padding:15px 4px;font-size:17px;font-weight:500;text-decoration:none;color:var(--ink-soft);border-bottom:1px solid var(--hair)}.nav-menu a:active{color:var(--accent)}.nav-menu .btn{display:inline-flex;align-self:stretch;justify-content:center;margin-top:18px;border-bottom:none}.hero{padding-top:48px}.hero-foot{gap:28px}.hero-lead{font-size:17px}.practice{padding-top:84px;padding-bottom:84px}.practice .media{margin-top:44px}.experiences .shell{padding-top:72px;padding-bottom:72px}.section-head{margin-bottom:40px}.library{padding-top:80px;padding-bottom:80px}.moment .shell{padding-top:88px;padding-bottom:88px;gap:44px}.visit{padding-top:80px;padding-bottom:80px}.maker-row{grid-template-columns:auto 1fr;gap:16px}.maker-meta{grid-column:2;gap:10px}.maker-row .origin-tag{display:none}.footer-cols{grid-template-columns:1fr 1fr;gap:32px}.modal-body{padding:6px 22px 36px}.field-row{grid-template-columns:1fr}}@media (max-width: 460px){.footer-cols{grid-template-columns:1fr}.hero-cta{gap:18px}.hero-cta .btn,.hero-cta .text-link{width:100%;justify-content:center}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
