.listing-hero--visit{background:linear-gradient(135deg,#d7d0bf,#7e8c79)}.listing-hero--dining{background:linear-gradient(135deg,#e5d8bd,#a98456)}.listing-hero--volunteer{background:linear-gradient(135deg,#d8d1c0,#75816c)}
.public-status{background:var(--vermilion);color:var(--rice);padding:16px 0}.public-status .portal-wrap{display:flex;gap:28px;align-items:center}.public-status b{font-family:var(--font-hei);font-size:10px;letter-spacing:.35em}.public-status span{font-size:14px;letter-spacing:.08em}
.public-card-grid,.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.public-card-grid article,.role-grid>a{background:var(--paper);padding:38px 32px;border-top:2px solid var(--vermilion);min-height:270px;display:flex;flex-direction:column}.public-card-grid small,.role-grid small{font-family:var(--font-hei);font-size:10px;letter-spacing:.28em;color:var(--vermilion)}.public-card-grid h3,.role-grid h3{font-family:var(--font-title);font-size:31px;font-weight:400;margin:26px 0 14px}.public-card-grid p,.role-grid p{line-height:1.9;color:var(--ink-3);flex:1}.public-card-grid b,.role-grid b{font-family:var(--font-hei);font-size:10px;letter-spacing:.22em;color:var(--vermilion)}
.public-dark{padding:110px 0;background:var(--ink);color:var(--rice)}.public-dark .portal-heading{border-color:rgba(250,246,236,.2)}.public-dark .portal-heading p{color:var(--paper-3)}.public-principles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(250,246,236,.2)}.public-principles p{margin:0;padding:30px 26px;border-right:1px solid rgba(250,246,236,.2);display:flex;flex-direction:column;gap:12px}.public-principles p:last-child{border-right:0}.public-principles b{font-family:var(--font-title);font-size:24px;font-weight:400}.public-principles span{font-size:13px;line-height:1.8;color:var(--paper-3)}.public-principles--light{color:var(--ink);border-color:var(--hairline);grid-template-columns:repeat(5,1fr)}.public-principles--light p{border-color:var(--hairline)}.public-principles--light span{color:var(--ink-3)}
.meal-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.meal-grid article{background:var(--paper);padding:38px;border-top:2px solid var(--ink)}.meal-grid header{display:flex;justify-content:space-between;gap:20px;font-family:var(--font-hei);font-size:10px;letter-spacing:.24em;color:var(--vermilion)}.meal-grid h3{font-family:var(--font-title);font-size:34px;font-weight:400}.meal-grid ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--hairline)}.meal-grid li{display:flex;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--hairline)}.meal-grid em{font-family:var(--font-hei);font-size:10px;color:var(--bamboo);font-style:normal}.public-note{margin:28px 0 0;color:var(--ink-3);font-size:13px}
.registration fieldset{border:1px solid var(--hairline);padding:16px 18px;margin:0}.registration fieldset legend{font-size:12px;letter-spacing:.16em;padding:0 8px}.registration fieldset .check{display:flex;flex-direction:row;align-items:center;gap:10px;letter-spacing:.05em;margin-top:10px}.registration fieldset .check input{width:auto;margin:0}
.listing-hero--shop{background:linear-gradient(135deg,#d9cfba,#8b7258)}.listing-hero--donation{background:linear-gradient(135deg,#e1d7c3,#785b42)}.shop-categories{display:grid;grid-template-columns:repeat(8,1fr);border:1px solid var(--hairline)}.shop-categories span{padding:30px 12px;text-align:center;border-right:1px solid var(--hairline);font-family:var(--font-title);font-size:20px}.shop-categories span:last-child{border:0}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.product-grid>a{min-height:300px;padding:34px;background:var(--paper);border-top:2px solid var(--ink);display:flex;flex-direction:column}.product-grid small{font-family:var(--font-hei);font-size:10px;letter-spacing:.24em;color:var(--vermilion)}.product-grid h3{font-family:var(--font-title);font-size:30px;font-weight:400;margin:25px 0 14px}.product-grid p{line-height:1.9;color:var(--ink-3);flex:1}.product-grid footer{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid var(--hairline);font-size:13px}.product-grid footer b{color:var(--vermilion)}.product-hero{padding:160px 0 80px;background:var(--paper-2)}.product-hero>.portal-wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.product-hero small{font-family:var(--font-hei);font-size:10px;letter-spacing:.3em;color:var(--vermilion)}.product-hero h1{font-family:var(--font-title);font-size:clamp(58px,7vw,96px);font-weight:400;line-height:1.1;margin:25px 0}.product-hero p{font-size:18px;line-height:1.9;color:var(--ink-3)}.product-hero aside{aspect-ratio:1;background:linear-gradient(145deg,#dbd1be,#92836a);display:grid;place-items:center;color:var(--rice);font-family:var(--font-hei);font-size:10px;letter-spacing:.25em}.product-price{display:flex;gap:30px;align-items:center;margin-top:36px}.product-price b{font-family:var(--font-latin-serif);font-size:32px;color:var(--vermilion)}.product-price span{font-size:13px;color:var(--ink-3)}
.listing-hero--media{background:linear-gradient(135deg,#d0c8b8,#585b58)}.listing-hero--sutra{background:linear-gradient(135deg,#dfd5c1,#887558)}.listing-hero--bodhi{background:linear-gradient(135deg,#d8d0bc,#7a826e)}.sutra-list{border-top:2px solid var(--ink)}.sutra-list>a{display:grid;grid-template-columns:160px 1fr 1.4fr 90px;gap:30px;align-items:center;padding:30px 18px;border-bottom:1px solid var(--hairline)}.sutra-list small,.sutra-list span{font-family:var(--font-hei);font-size:10px;letter-spacing:.22em;color:var(--vermilion)}.sutra-list h3{font-family:var(--font-title);font-size:26px;font-weight:400}.sutra-list p{color:var(--ink-3);line-height:1.7}.bodhi-grid{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--hairline)}.bodhi-grid>a{padding:42px;min-height:300px;border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);display:flex;flex-direction:column}.bodhi-grid time{font-family:var(--font-latin-serif);color:var(--vermilion)}.bodhi-grid h3{font-family:var(--font-title);font-size:34px;font-weight:400;margin:24px 0}.bodhi-grid p{line-height:1.9;color:var(--ink-3);flex:1}.bodhi-grid b{font-family:var(--font-hei);font-size:10px;letter-spacing:.25em;color:var(--vermilion)}.reader-tools{width:min(920px,calc(100% - 48px));margin:-80px auto 110px;padding:28px 34px;background:var(--ink);color:var(--rice)}.reader-tools span{font-family:var(--font-hei);font-size:10px;letter-spacing:.3em;color:var(--gold-2)}.reader-tools p{line-height:1.8;color:var(--paper-3)}
.cart-pill{position:fixed;bottom:24px;left:24px;background:var(--ink);color:var(--rice);border:1px solid var(--vermilion-2);padding:14px 22px;display:flex;gap:18px;align-items:center;box-shadow:0 12px 40px rgba(28,25,21,.35);z-index:80;font-family:var(--font-hei);font-size:11px;letter-spacing:.32em;text-transform:uppercase;font-weight:600;transition:all .3s}.cart-pill:hover{background:var(--vermilion);border-color:var(--vermilion)}.cart-pill svg,.cart-pill b{color:var(--gold-2)}.cart-pill b{font-family:var(--font-latin-serif);font-style:italic;font-weight:500;font-size:14px;letter-spacing:.04em;text-transform:none}.cart-pill .sep{width:1px;height:18px;background:rgba(255,250,240,.2)}
.product-add{width:min(1120px,calc(100% - 48px));margin:0 auto 110px;padding:48px;background:var(--paper);border:1px solid var(--hairline)}.product-add>header{display:grid;grid-template-columns:170px 1fr;gap:30px;border-bottom:1px solid var(--hairline);padding-bottom:28px}.product-add h2{font-family:var(--font-title);font-size:36px;font-weight:400;margin:0}.product-add header p{color:var(--ink-3)}.product-add form{display:grid;grid-template-columns:190px 1fr;gap:26px;margin-top:34px}.product-add__quantity{display:flex;align-items:center;gap:12px;font-family:var(--font-hei);font-size:11px;letter-spacing:.18em}.product-add__quantity small{color:var(--ink-4)}.product-add__quantity input{width:64px;padding:13px;border:1px solid var(--hairline);background:var(--rice);text-align:center}.product-add__submit{border:1px solid var(--ink);background:var(--ink);color:var(--rice);padding:16px 24px;display:flex;justify-content:space-between;gap:16px;align-items:center;font-family:var(--font-hei);letter-spacing:.28em;cursor:pointer}.product-add__submit em{font-family:var(--font-latin-serif);font-weight:400;letter-spacing:.04em}.product-add__submit b{color:var(--gold-2);letter-spacing:.06em}
.basket-hero h1{font-size:clamp(62px,8vw,110px)}.basket-shell,.basket-checkout,.basket-result,.basket-empty{width:min(1120px,calc(100% - 48px));margin:90px auto}.basket-shell{border:1px solid var(--ink)}.basket-shell>header{background:var(--ink);color:var(--rice);padding:26px 38px;display:flex;justify-content:space-between;align-items:center}.basket-shell>header small{font-family:var(--font-hei);letter-spacing:.28em;color:var(--gold-2)}.basket-shell>header h2{font-family:var(--font-title);font-size:30px;font-weight:400;margin:7px 0 0}.basket-shell>header>b{font-family:var(--font-latin-serif);font-size:24px;color:var(--gold-2)}.basket-line{display:grid;grid-template-columns:minmax(240px,1fr) 180px 150px 70px;gap:26px;align-items:center;padding:30px 38px;border-bottom:1px solid var(--hairline)}.basket-line small{font-family:var(--font-hei);font-size:10px;letter-spacing:.2em;color:var(--vermilion)}.basket-line h3{font-family:var(--font-title);font-size:25px;font-weight:400;margin:8px 0}.basket-line p{font-size:12px;color:var(--ink-3);margin:0}.basket-line form{display:flex;align-items:end;gap:8px}.basket-line label{font-family:var(--font-hei);font-size:10px;letter-spacing:.16em}.basket-line input{display:block;width:64px;padding:10px;margin-top:6px;border:1px solid var(--hairline);background:var(--rice)}.basket-line button{padding:10px 12px;border:1px solid var(--ink);background:transparent;font-family:var(--font-hei);font-size:10px;letter-spacing:.12em;cursor:pointer}.basket-line__price{display:flex;flex-direction:column;gap:7px;text-align:right;font-family:var(--font-latin-serif)}.basket-line__price span{color:var(--ink-4);font-size:13px}.basket-line__price b{font-size:20px;color:var(--vermilion)}.basket-remove{justify-content:flex-end}.basket-remove button{border:0;color:var(--ink-4);padding-inline:0}.basket-shell>footer{padding:28px 38px;display:grid;grid-template-columns:1fr auto;gap:8px 30px;background:var(--paper-2)}.basket-shell>footer b{font-family:var(--font-latin-serif);font-size:24px;color:var(--vermilion)}.basket-shell>footer small{grid-column:1/-1;color:var(--ink-4)}.basket-result,.basket-empty{text-align:center;padding:70px 40px;border:1px solid var(--hairline);background:var(--paper)}.basket-result small,.basket-empty small{font-family:var(--font-hei);letter-spacing:.3em;color:var(--vermilion)}.basket-result h2,.basket-empty h2{font-family:var(--font-title);font-size:42px;font-weight:400}.basket-result a,.basket-empty a{display:inline-block;margin-top:20px;padding:13px 24px;border:1px solid var(--ink);font-family:var(--font-hei);font-size:11px;letter-spacing:.22em}
@media(max-width:960px){.public-card-grid,.role-grid,.product-grid{grid-template-columns:1fr 1fr}.public-principles{grid-template-columns:1fr 1fr}.meal-grid,.product-hero>.portal-wrap{grid-template-columns:1fr}.shop-categories{grid-template-columns:repeat(4,1fr)}.sutra-list>a{grid-template-columns:120px 1fr}.sutra-list p,.sutra-list span{grid-column:2}.bodhi-grid{grid-template-columns:1fr}.basket-line{grid-template-columns:1fr 160px 130px}.basket-remove{grid-column:3}.product-add form{grid-template-columns:1fr}}
@media(max-width:600px){.cart-pill{left:14px;bottom:14px;right:14px;justify-content:center;padding:12px 14px;gap:10px}.cart-pill span:first-of-type{letter-spacing:.18em}.product-add{width:calc(100% - 28px);padding:28px 20px}.product-add>header{grid-template-columns:1fr}.product-add__submit{display:grid;grid-template-columns:1fr auto}.product-add__submit em{display:none}.basket-shell,.basket-checkout,.basket-result,.basket-empty{width:calc(100% - 28px);margin:50px auto}.basket-line{grid-template-columns:1fr;padding:24px 20px}.basket-line__price{text-align:left}.basket-remove{grid-column:auto;justify-content:flex-start}.basket-shell>header,.basket-shell>footer{padding:24px 20px}}
@media(max-width:480px){.rhythm-grid,.service-steps,.service-grid,.public-card-grid,.role-grid,.public-principles,.product-grid{grid-template-columns:1fr}.public-status .portal-wrap{align-items:flex-start;flex-direction:column;gap:8px}.shop-categories{grid-template-columns:repeat(2,1fr)}.sutra-list>a{grid-template-columns:1fr}.sutra-list p,.sutra-list span{grid-column:auto}}
