/* A quieter editorial rhythm for Tianquanzhuang's established navy/gold identity. */
:root{--quiet-line:#d9c4a030}
.site-header nav a::before{opacity:.02}
.site-header nav a[aria-current="page"]::before{opacity:.13}
@media(hover:hover){.site-header nav a:hover::before{opacity:.2}.site-header nav a[aria-current="page"]:hover::before{opacity:.25}}
.site-header .brand-caption{letter-spacing:.13em}
.site-header .cart-trigger{border-color:#d9c4a040}
.hero-description{line-height:2.15}
.hero h1.hero-poem-heading{font-size:clamp(1.5rem,3.1vw,3rem);line-height:1.65;letter-spacing:.035em;margin-bottom:30px}
.hero-description.hero-poem{line-height:2.05;margin-bottom:34px}
.hero-poem>p{margin:0}
.hero-poem>p+p{margin-top:20px}
.hero-art .art-stage{border:0;box-shadow:none;outline:none}
.hero-art .art-stage:focus-visible .hero-bottles{filter:drop-shadow(0 0 3px #d9c4a080) drop-shadow(8px 18px 12px #04151c50)}
.hero-copy>.button{padding:14px 34px;letter-spacing:.12em}
.service-ribbon{box-shadow:none;border-color:var(--quiet-line);font-size:.875rem;letter-spacing:.065em}
body:not([data-page="index"]) main>.section{padding-top:94px;padding-bottom:110px}
.section-heading h1{font-size:clamp(2.2rem,3.3vw,3.5rem);line-height:1.6;letter-spacing:.075em}
.collection>.section-heading{margin-bottom:48px}
.collection>.section-heading::before{height:1px;width:38px}
.category-tabs{gap:18px;padding-bottom:28px;margin-bottom:38px}
.category-tabs button{padding:10px 21px;letter-spacing:.06em}
.product-grid{gap:30px}
body[data-page="shop"] .product-card{padding:36px;min-height:365px;background:#102a3680;box-shadow:none;border-color:var(--quiet-line)}
body[data-page="shop"] .product-card:hover,body[data-page="shop"] .product-card:focus-within{box-shadow:none;border-color:#d9c4a065}
.product-top{margin-bottom:25px;padding-bottom:20px}
.product-index{display:none}
.product-card h3{font-size:clamp(1.4rem,1.8vw,1.7rem);letter-spacing:.045em}
.product-card .product-notes{gap:14px}
body[data-page="shop"] main .product-notes span{border:0;padding:0;background:none;color:#c3c8bc}
.product-description{line-height:2.05}
.product-price{font-size:1.3rem}
.detail-link{margin-top:22px;text-underline-offset:6px}
.detail-dialog .product-story{margin:24px 0 28px;font-size:1rem;line-height:1.95}
.detail-dialog .product-story p{margin:0}
.detail-dialog .product-story p+p{margin-top:18px}
.product-card::before,.product-card::after{display:none}
@media(hover:hover) and (pointer:fine){.product-card:hover{transform:translateY(-4px)}}
body[data-page="shop"] .mix-bar{background:transparent;box-shadow:none;border:0;border-top:1px solid var(--quiet-line);border-bottom:1px solid var(--quiet-line);padding:34px 0;margin-top:48px}
.mix-label{font-size:1.35rem}
.tea-types article{padding:38px}
.tea-types h3{font-size:1.7rem;letter-spacing:.06em}
.tea-guide-note{margin-top:36px;padding:32px 36px;border-left-width:1px}
.delivery-grid{gap:56px;margin-top:45px;margin-bottom:64px}
.delivery-grid article{padding-top:32px}
.faq details{padding:24px 0}
.faq summary{font-size:1.0625rem;line-height:1.8}
.story-brand{padding-top:112px;padding-bottom:100px;gap:9%;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
.story-brand .story-art{transform:rotate(-2deg);padding:12px;border-color:#cfb58e;box-shadow:14px 14px 0 #d9c4a00c,0 28px 55px #00000035;align-self:start;margin-top:30px}
.story-brand .story-art::before{display:block}
.story-brand .story-picture{height:350px}
.story-brand .story-art-label{padding:12px 4px 0;letter-spacing:.15em;font-size:1rem}
.story-brand .story-copy{max-width:660px}
.story-brand .story-copy>.eyebrow{font-size:1.25rem;line-height:1.8;letter-spacing:.16em;margin-bottom:24px}
.story-brand .story-copy h2{font-size:clamp(2.25rem,3.4vw,3.55rem);line-height:1.55;letter-spacing:.055em;margin-bottom:24px}
.story-brand .story-copy>.brand-lead{color:#dfcfb2;font-size:1.1875rem;line-height:1.95;margin-bottom:34px}
.story-brand .story-copy>.brand-narrative{color:#bcc6c6;font-size:1.0625rem;line-height:2.15;margin-bottom:0;max-width:38rem}
.brand-commitment{max-width:none;padding:0 6% 112px;background:var(--navy);color:#e4d9c2}
.commitment-layout{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:9%;border-top:1px solid var(--quiet-line);padding-top:78px}
.commitment-heading h2{font-size:clamp(2.15rem,3vw,3.2rem);line-height:1.6;letter-spacing:.065em;color:#eadbbd}
.commitment-heading::before{content:"";display:block;width:38px;height:1px;background:var(--gold);margin-bottom:27px}
.commitment-copy{max-width:660px}
.commitment-copy>p{font-size:1.0625rem;color:#bcc6c6;line-height:2.15;letter-spacing:.025em;margin-bottom:32px}
.commitment-copy>.brand-closing{color:#dfcfb2;margin-bottom:0;padding-top:32px;border-top:1px solid var(--quiet-line);line-height:2.1}
footer{padding-top:58px;padding-bottom:58px;border-top:1px solid #d9c4a015}
footer>.footer-contact{align-items:center;flex-wrap:wrap}
.footer-social-links{display:flex;align-items:center;gap:10px}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #d9c4a035;color:var(--gold);transition:background .2s,opacity .2s}
.social-icon:hover{background:#d9c4a018;opacity:.8}
.cart-help-row{display:flex;justify-content:flex-end}
.cart-help-link{display:inline-flex;align-items:center;min-height:44px;padding:4px 0;font-size:.85rem;color:var(--ink);text-decoration:underline;text-underline-offset:5px;transition:opacity .2s}
.cart-help-link:hover,.transfer-line-link:hover{opacity:.7}
.cart-total{border-top:1px solid var(--line);padding-top:12px}
.payment-options{border:0;padding:0;margin:26px 0 18px;display:flex;gap:12px;flex-wrap:wrap}
.payment-options legend{font-size:1.1rem;font-weight:500;margin-bottom:12px}
.checkout-form .payment-choice{display:flex;align-items:center;gap:10px;margin:0;border:1px solid #cbc4b6;padding:10px 14px;flex:1;min-width:130px;cursor:pointer}
.checkout-form .payment-choice input{width:18px;height:18px;min-height:18px;padding:0;margin:0;flex-shrink:0;accent-color:#172e35}
.payment-choice:has(input:checked){border-color:#9b855a;background:#d9c4a028}
.transfer-instructions{border:1px solid #cbc4b6;padding:18px;margin:18px 0}
.transfer-instructions h4{font-size:1rem;margin:0 0 12px;font-weight:500}
.transfer-instructions dl{margin:0}
.transfer-instructions dl>div{display:flex;gap:14px;margin-bottom:8px;align-items:baseline}
.transfer-instructions dt{font-size:.85rem;color:#687371;flex-shrink:0}
.transfer-instructions dd{margin:0;font-size:.95rem}
.bank-account{font-family:var(--sans);font-variant-numeric:tabular-nums;letter-spacing:.06em;white-space:nowrap}
.transfer-instructions p,.checkout-transfer-result p{font-size:.9rem;line-height:1.9;margin:14px 0}
.transfer-line-link{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:underline;text-underline-offset:5px;font-size:.9rem;transition:opacity .2s}
.checkout-transfer-result{margin:20px auto;max-width:460px;padding:18px;border:1px solid #cbc4b6}
.transfer-instructions[hidden],.checkout-transfer-result[hidden]{display:none}
.discount-code-section{margin:26px 0 22px}
.checkout-form .discount-code-section label{margin-bottom:6px}
.discount-code-help{margin:0;font-size:.8rem;line-height:1.8;color:#6d766e}
.discount-code-help a{display:inline-block;padding:4px 0;text-decoration:underline;text-underline-offset:4px;transition:opacity .2s}
.discount-code-help a:hover{opacity:.7}
.discount-code-entry{display:flex;gap:10px;align-items:stretch;margin-top:7px}
.checkout-form .discount-code-entry input{margin-top:0;flex:1;min-width:0}
.discount-apply{border:1px solid #a99773;background:#d9c4a024;color:var(--ink);padding:8px 15px;flex-shrink:0;min-height:47px;transition:background .2s}
.discount-apply:hover{background:#d9c4a044}
.discount-code-terms,.discount-code-status{font-size:.8rem;line-height:1.8;margin:5px 0;color:#69736c}
.discount-code-status:empty{display:none}
.checkout-discount{color:#77704e}
.checkout-discount[hidden]{display:none}
.order-number-block{margin:22px auto;padding:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:500px}
.order-number-block span{display:block;font-size:.85rem;margin-bottom:8px;color:#6d746b}
.order-number-block strong{font-family:var(--sans);font-size:.85rem;font-weight:500;letter-spacing:.025em;overflow-wrap:anywhere;line-height:1.8}
.orders-section{max-width:1000px}
.orders-contact{border-top:1px solid var(--quiet-line);padding-top:38px}
.orders-contact p{color:#bcc6c6;line-height:2.1;font-size:1.0625rem;margin-bottom:30px}
.orders-contact .button{letter-spacing:.08em}
@media(max-width:1000px){body:not([data-page="index"]) main>.section{padding-top:76px;padding-bottom:88px}.product-grid{gap:22px}body[data-page="shop"] .product-card{padding:26px}.story-brand{gap:7%;padding-top:88px;padding-bottom:80px}.story-brand .story-picture{height:300px}.tea-types article{padding:30px}.delivery-grid{gap:32px}}
@media(max-width:700px){
  .hero h1.hero-poem-heading{font-size:clamp(1.25rem,5.6vw,1.75rem);line-height:1.7;letter-spacing:.025em;margin-bottom:26px}
  .hero-description.hero-poem{margin-bottom:28px}
  .hero-poem>p+p{margin-top:18px}
  body:not([data-page="index"]) main>.section{padding-top:60px;padding-bottom:76px}
  .section-heading h1{font-size:clamp(1.95rem,7vw,2.55rem);letter-spacing:.045em}
  .category-tabs{gap:8px;padding-bottom:24px;margin-bottom:30px}.category-tabs button{padding:9px 13px;font-size:.875rem}
  .product-grid{gap:22px}body[data-page="shop"] .product-card{padding:30px 26px;min-height:320px}.product-card h3{font-size:1.55rem}
  body[data-page="shop"] .mix-bar{padding:30px 0;margin-top:38px}
  .tea-types article{padding:26px 20px}.tea-types h3{font-size:1.3rem}.tea-guide-note{padding:28px 24px}
  .delivery-grid{gap:32px;margin-top:34px;margin-bottom:48px}.delivery-grid article{padding:24px 0 0 45px}.delivery-grid .step{top:24px}
  .story-brand{grid-template-columns:1fr;gap:42px;padding:72px 7% 64px}.story-brand .story-art{margin-top:0;max-width:460px;transform:rotate(-1deg)}.story-brand .story-picture{height:260px}.story-brand .story-art-label{font-size:.875rem}
  .story-brand .story-copy h2{font-size:clamp(2rem,7.5vw,2.7rem);letter-spacing:.04em}.story-brand .story-copy>.brand-lead{font-size:1.125rem;line-height:1.95;margin-bottom:28px}
  .story-brand .story-copy>.brand-narrative{font-size:1rem;line-height:2.15}
  .story-brand .story-copy>.eyebrow{font-size:1.125rem;margin-bottom:20px}
  .brand-commitment{padding:0 7% 76px}.commitment-layout{grid-template-columns:1fr;gap:26px;padding-top:46px}.commitment-heading h2{font-size:2rem}.commitment-heading::before{margin-bottom:22px}
  .commitment-copy>p{font-size:1rem;line-height:2.15;margin-bottom:28px}.commitment-copy>.brand-closing{padding-top:28px}
  footer{padding-top:42px;padding-bottom:42px}
}
