/* Shopping, membership and subscriptions share the atelier's visual language. */
.help-shell { padding-top: 155px; padding-bottom: 70px; max-width: 1040px; }
.help-shell h1 { font: 400 clamp(36px, 5vw, 58px)/1.2 Georgia, serif; margin-top: 18px; }
.help-shell h1 span, .help-cards h2 span { display: block; margin-top: 14px; font: 16px/1.5 Arial, sans-serif; color: #74665e; }
.help-intro { margin-top: 24px; font-size: 14px; color: #74665e; }
.help-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-block: 40px; }
.help-cards article { padding: 32px; background: #f3e9de; }
.help-cards h2 { font: 27px Georgia, serif; margin-block: 20px; }
.help-cards p:not(.eyebrow) { font-size: 13px; line-height: 1.9; margin-block: 18px; }
.help-faq { margin-block: 40px; }
.help-actions { display: flex; flex-wrap: wrap; gap: 16px; }
.studio-story { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: center; margin-top: 40px; }
.studio-story img { width: 100%; height: 100%; object-fit: cover; }
.studio-story h2, .studio-contact-grid h2 { font: 28px/1.3 Georgia, serif; margin-block: 18px; }
.studio-story p:not(.eyebrow), .studio-contact-info p { font-size: 13px; line-height: 1.9; margin-block: 18px; color: #74665e; }
.studio-contact-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 40px; margin-top: 42px; }
.studio-contact-grid h2 span { display: block; margin-top: 12px; font: 15px Arial, sans-serif; }
.studio-contact-info > .text-link { display: block; margin-top: 28px; }
.studio-contact-form { padding: 30px; border: 1px solid #e5dbd2; background: #fffcf8; }
.studio-contact-form .account-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.studio-contact-form .full { grid-column: 1/-1; }
.studio-contact-form input, .studio-contact-form textarea, .studio-contact-form select { width: 100%; border: 1px solid #d8c9bd; padding: 12px; background: #fffdfa; font: 16px/1.5 Arial, sans-serif; }
.studio-contact-form label { display: block; font-size: 12px; margin-bottom: 8px; }
#contactDraft { margin-top: 24px; } #contactDraft textarea { margin-bottom: 16px; }
@media (max-width: 760px) { .studio-story, .studio-contact-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; } .studio-contact-form { padding: 22px; } .studio-contact-form .account-form { grid-template-columns: minmax(0, 1fr); } .studio-story img { height: 240px; } }
.subscription-disclosure > p { font-size: 12px; line-height: 1.8; margin-top: 12px; }
@media (max-width: 640px) { .help-shell { padding-top: 112px; padding-bottom: 40px; } .help-cards { grid-template-columns: minmax(0, 1fr); gap: 16px; } .help-cards article { padding: 24px; } .help-actions { flex-direction: column; } }
body.portal-page { background: #f6f1eb; }
.product-shell { padding-top: 130px; padding-bottom: 70px; }
#productStatus { margin-block: 18px; font-size: 13px; }
#productStatus:empty { display: none; }
.product-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(30px, 6vw, 90px); margin-top: 28px; }
.product-gallery > img { width: 100%; height: auto; max-height: 760px; aspect-ratio: 4/5; object-fit: cover; background: #f3e9de; }
.product-thumbnails { display: flex; gap: 10px; overflow-x: auto; padding-top: 12px; }
.product-thumbnails button { flex: 0 0 72px; padding: 3px; border: 1px solid transparent; background: none; }
.product-thumbnails button[aria-pressed="true"] { border-color: #662e3a; }
.product-thumbnails img { width: 64px; height: 80px; object-fit: cover; }
.product-copy { padding-top: 20px; min-width: 0; }
.product-copy h1 { font: 400 clamp(30px, 4vw, 48px)/1.15 Georgia, serif; margin-block: 18px 12px; overflow-wrap: anywhere; }
.product-name-zh { font-size: 17px; color: #74665e; }
.product-detail-price { font: 30px Georgia, serif; color: #662e3a; margin-block: 30px; }
.product-description { white-space: pre-wrap; font-size: 14px; line-height: 1.9; margin-bottom: 28px; overflow-wrap: anywhere; }
.product-copy > .btn { width: 100%; }
.product-copy > .muted { margin-top: 12px; }
.product-specs { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 18px 24px; border-top: 1px solid #e5dbd2; padding-block: 25px; margin-top: 28px; font-size: 13px; }
.product-specs dt { color: #74665e; } .product-specs dd { margin: 0; overflow-wrap: anywhere; }
.product-copy > .text-link { margin-top: 25px; }
@media (max-width: 760px) { .product-shell { padding-top: 110px; } .product-layout { grid-template-columns: minmax(0, 1fr); gap: 20px; } .product-gallery > img { max-height: 480px; } .product-copy { padding-top: 5px; } }
.portal-shell { margin-top: 132px; margin-bottom: 64px; }
.portal-card, .checkout-card { border-radius: 3px; box-shadow: none; border-color: #e5dbd2; background: #fffcf8; }
.portal-heading h1, .checkout-heading h1 { font: 400 40px/1.2 Georgia, serif; }
.portal-heading h1 > span, .checkout-heading h1 > span { display: block; margin-top: 12px; font: 15px/1.6 Arial, sans-serif; color: #7a665c; }
.portal-kicker { color: #662e3a; font-size: 10px; letter-spacing: .14em; }
.muted { font-size: 13px; line-height: 1.8; color: #74665e; }
.purchase-steps { display: flex; gap: 32px; padding: 0 0 22px; margin: 0; font-size: 11px; color: #7a665c; }
.purchase-steps li { display: flex; align-items: center; gap: 10px; }
.purchase-steps .active { color: #662e3a; font-weight: 600; }
.checkout-grid { grid-template-columns: minmax(0, 1.5fr) minmax(310px, .9fr); gap: 26px; }
.checkout-heading > .muted { margin-top: 15px; }
.checkout-section-heading { align-items: flex-start; gap: 14px; }
.checkout-section-heading h2, .checkout-total-card h2 { font: 400 23px Georgia, serif; }
.checkout-section-heading a { font-size: 11px; white-space: nowrap; min-height: 40px; display: inline-flex; align-items: center; }
.checkout-total-card h2 span { font: 12px Arial, sans-serif; margin-left: 8px; color: #74665e; }
.checkout-total-card { top: 112px; }
.checkout-item { grid-template-columns: 100px minmax(0, 1fr) auto; gap: 18px; padding-block: 24px; }
.checkout-item > img { width: 100px; height: 126px; border-radius: 2px; object-fit: cover; }
.checkout-item h3 { font: 19px/1.35 Georgia, serif; }
.checkout-item h3 small { display: block; font: 12px Arial, sans-serif; color: #74665e; margin-block: 6px; }
.checkout-item p { font-size: 12px; }
.cart-quantity { display: inline-flex; border: 1px solid #d8c9bd; border-radius: 2px; align-items: center; gap: 3px; }
.cart-quantity-button { min-width: 44px; height: 44px; background: transparent; font-size: 18px; }
.cart-quantity-button:disabled { opacity: .3; cursor: not-allowed; }
.cart-quantity > span { min-width: 24px; text-align: center; font-size: 13px; }
.cart-remove { margin-left: 12px; min-height: 44px; font-size: 11px; text-decoration: underline; background: none; color: #74665e; }
.cart-feedback:empty { display: none; }
.cart-feedback { padding: 12px 16px; margin-bottom: 20px; background: #eee3d9; font-size: 13px; }
.cart-feedback button { min-height: 44px; padding: 4px 16px; text-decoration: underline; color: #662e3a; background: none; }
.checkout-totals { font-size: 13px; }
.checkout-grand-total { font-size: 20px; }
.checkout-distance { min-height: 0; font-size: 12px; }
.checkout-points, .checkout-payment { border-radius: 2px; font-size: 12px; }
.checkout-points { background: #f4ede5; }
.checkout-points input { flex: 1; min-width: 0; width: 80px; font-size: 16px; border-radius: 2px; }
.checkout-points button { border-radius: 2px; font-size: 11px; }
.checkout-payment small { font-size: 11px; }
.account-status { font-size: 12px; overflow-wrap: anywhere; }
.checkout-empty { padding: 55px 10px; }
.checkout-empty h3 { font: 28px Georgia, serif; margin-bottom: 12px; }
.checkout-empty p { font-size: 13px; color: #74665e; margin-bottom: 24px; }
.checkout-shell.is-empty .checkout-grid { display: block; }
.checkout-shell.is-empty .checkout-total-card, .checkout-shell.is-empty #checkoutAccount { display: none; }
.account-address-form { border-radius: 2px; padding: 20px; }
.form-group label { font-size: 12px; }
.form-group input, .form-group select, .form-group textarea, #savedAddress, #subscriptionSavedAddress { border-radius: 2px; font-size: 16px; }
.account-form.profile-form { max-width: none; }
.checkout-save-address { font-size: 12px; }
.address-cancel, .address-actions button { min-height: 44px; font-size: 12px; }
.account-shell { width: min(1040px, calc(100% - 40px)); }
.account-sections { display: flex; gap: 24px; overflow-x: auto; border-bottom: 1px solid #e5dbd2; margin-block: 26px; }
.account-sections a { flex-shrink: 0; min-height: 48px; padding: 12px 2px; font-size: 13px; border-bottom: 2px solid transparent; }
.account-sections a[aria-current] { border-color: #662e3a; color: #662e3a; }
.membership-card { margin-top: 0; border-radius: 3px; background: #4d2831; border: 0; padding: 32px; color: #fff9f3; }
.membership-card h2, .membership-card .portal-kicker, .membership-card .muted { color: #f4ded5; }
.membership-tier { background: #f1e1cb; border-radius: 2px; color: #4d2831; font-size: 12px; font-weight: 400; }
.membership-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-block: 30px; gap: 24px; }
.membership-summary > div { background: none; border-right: 1px solid #ffffff2e; border-radius: 0; padding: 0; }
.membership-summary > div:last-child { border-right: 0; }
.membership-summary span { color: #dfc7c0; font-size: 11px; }
.membership-summary strong { color: #fff9f3; font: 34px Georgia, serif; margin-top: 12px; }
#membershipMeter { width: 100%; height: 5px; border: 0; border-radius: 0; accent-color: #e4c39e; background: #714854; }
#membershipMeter::-webkit-progress-bar { background: #714854; }
#membershipMeter::-webkit-progress-value { background: #e4c39e; }
.membership-progress { color: #f2dfd5; font-size: 12px; margin-top: 12px; }
.membership-rule { margin-top: 16px; font-size: 11px; }
.points-history { margin-top: 22px; font-size: 12px; }
.points-history summary, .member-rules summary { cursor: pointer; min-height: 44px; padding-block: 12px; }
.membership-ledger > div { border-color: #ffffff2e; overflow-wrap: anywhere; font-size: 11px; }
.member-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 24px; }
.member-actions a { display: grid; gap: 10px; border: 1px solid #e5dbd2; padding: 26px; background: #f6efe7; }
.member-actions strong { font: 20px Georgia, serif; }
.member-actions strong span { float: right; }
.member-actions > a > span { font-size: 12px; color: #74665e; }
.member-rules { margin-top: 18px; font-size: 12px; color: #74665e; }
.tier-table { display: grid; gap: 8px; margin: 18px 0; }
.account-addresses, .account-orders { margin-top: 0; }
.account-order { border-radius: 2px; padding: 24px; }
.account-order p { font-size: 12px; overflow-wrap: anywhere; }
.account-order .btn { margin-top: 12px; min-height: 44px; font-size: 12px; padding: 10px 18px; }
.address-card { border-radius: 2px; }
.account-empty { padding-block: 40px; text-align: center; }
.account-empty .btn { margin-top: 18px; }
.auth-shell { width: min(1000px, calc(100% - 40px)); display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.auth-card { align-self: stretch; padding: 40px; }
.auth-editorial { background: #ebe0d3; padding: 38px; }
.auth-editorial h2 { font: 36px/1.15 Georgia, serif; color: #552c34; }
.auth-editorial > p:not(.eyebrow) { font-size: 12px; margin: 18px 0 24px; color: #74665e; }
.auth-editorial img { height: 220px; object-fit: cover; width: 100%; }
.auth-editorial ul { display: grid; gap: 8px; font-size: 11px; margin-top: 22px; color: #74665e; }
.auth-card h1 { font-size: 32px; font-weight: 400; }
.auth-switch { font-size: 12px; }
.subscription-review { border-radius: 2px; background: #f2e8df; }
.subscription-review h2 { font-size: 28px; font-weight: 400; }
.subscription-disclosure { font-size: 12px; }
.subscription-disclosure ul { margin-top: 12px; color: #74665e; }
.subscription-payment-shell .portal-actions { display: grid; grid-template-columns: 1.8fr 1fr; }
.subscriptions-page main { padding-top: 96px; }
.subscription-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; padding-block: 54px; align-items: center; }
.subscription-intro h1 { font: 400 clamp(38px, 4.5vw, 62px)/1.12 Georgia, serif; letter-spacing: -.035em; }
.subscription-intro h1 em { color: #662e3a; }
.subscription-intro-cn { font: 20px/1.5 'Songti SC', SimSun, serif; margin-top: 22px; }
.subscription-intro p:not(.eyebrow):not(.subscription-intro-cn) { font-size: 12px; color: #74665e; margin-block: 18px 12px; line-height: 1.9; }
.subscription-intro figure { margin: 0; position: relative; }
.subscription-intro figure img { width: 100%; height: 360px; object-fit: cover; }
.subscription-intro figcaption { position: absolute; bottom: 14px; left: 18px; font-size: 8px; letter-spacing: .1em; color: white; }
.subscription-plans { padding-block: 36px 60px; }
.billing-choice { display: flex; border: 1px solid #d8c9bd; padding: 4px; flex-shrink: 0; }
.billing-choice button { min-height: 44px; padding: 10px 22px; background: none; font-size: 12px; }
.billing-choice button[aria-pressed="true"] { background: #662e3a; color: white; }
.billing-explanation, #subscriptionStatus { font-size: 12px; color: #74665e; margin-bottom: 18px; }
#subscriptionStatus:empty { display: none; }
.plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.plan-card { border: 1px solid #dfd2c7; padding: 30px; display: flex; flex-direction: column; }
.plan-highlight { background: #f3e9df; border-color: #996a64; }
.plan-card h3 { font: 36px Georgia, serif; }
.plan-card h3 span { font: 12px Arial, sans-serif; color: #74665e; margin-left: 8px; }
.plan-description { font-size: 12px; color: #74665e; margin-top: 16px; line-height: 1.9; }
.plan-price { margin-top: 24px; color: #662e3a; }
.plan-price strong { font: 40px Georgia, serif; }
.plan-price > span { font-size: 12px; }
.plan-billing { font-size: 11px; color: #74665e; margin: 8px 0 24px; min-height: 34px; }
.plan-card ul { display: grid; gap: 13px; padding-top: 24px; border-top: 1px solid #dfd2c7; margin: 0 0 28px; font-size: 12px; }
.plan-card .btn { margin-top: auto; width: 100%; font-size: 12px; padding-inline: 12px; }
.subscription-plan-note { text-align: center; font-size: 11px; color: #74665e; margin-top: 24px; }
.subscription-plan-note a { display: block; margin-top: 12px; color: #662e3a; }
.subscription-details { display: grid; grid-template-columns: 1fr 1.3fr; gap: 60px; padding-block: 30px 70px; }
.subscription-details h2 { font: 30px Georgia, serif; }
.subscription-details h2 span { display: block; font: 14px Arial, sans-serif; color: #74665e; margin-top: 15px; }
.quiet-faq details { border-bottom: 1px solid #dfd2c7; }
.quiet-faq summary { cursor: pointer; padding: 22px 0; font-size: 13px; }
.quiet-faq p { padding: 0 0 20px; font-size: 12px; line-height: 1.9; color: #74665e; }
@media (max-width: 1100px) { .subscriptions-page main { padding-top: 84px; } .plan-card { padding: 24px; } }
@media (max-width: 800px) {
  .checkout-grid { grid-template-columns: 1fr; }
  .checkout-total-card { position: static; }
  .subscription-intro { gap: 24px; }
  .subscription-intro figure img { height: 330px; }
  .plan-grid { grid-template-columns: 1fr; }
  .plan-card { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; padding: 26px; }
  .plan-card > .eyebrow, .plan-card > h3, .plan-card > .plan-description { grid-column: 1; }
  .plan-card .plan-price { grid-column: 2; grid-row: 2; margin-top: 0; text-align: right; }
  .plan-card .plan-billing { grid-column: 2; grid-row: 3; text-align: right; }
  .plan-card ul, .plan-card .btn { grid-column: 1/-1; }
  .plan-card ul { margin-top: 22px; }
}
@media (max-width: 640px) {
  .portal-shell { margin-top: 104px; margin-bottom: 40px; width: calc(100% - 32px); }
  .portal-card, .checkout-card { padding: 22px 18px; }
  .portal-heading h1, .checkout-heading h1 { font-size: 31px; }
  .portal-heading h1 > span, .checkout-heading h1 > span { font-size: 13px; }
  .checkout-heading > .muted { font-size: 12px; }
  .purchase-steps { gap: 18px; font-size: 10px; padding-bottom: 18px; }
  .purchase-steps li { gap: 6px; }
  .checkout-item { grid-template-columns: 76px minmax(0, 1fr); gap: 14px; }
  .checkout-item > img { width: 76px; height: 100px; }
  .checkout-item > strong { grid-column: 2; font-size: 16px; }
  .checkout-item h3 { font-size: 18px; }
  .checkout-section-heading h2 { font-size: 20px; }
  .checkout-section-heading { flex-wrap: wrap; }
  .cart-remove { margin-left: 5px; font-size: 10px; }
  .account-address-form { padding: 16px 12px; }
  .account-form.profile-form { grid-template-columns: 1fr; gap: 12px; }
  .account-sections { gap: 20px; margin-block: 20px; }
  .account-sections a { font-size: 12px; }
  .account-page .portal-heading .btn { padding: 8px 12px; margin-top: 14px; min-height: 40px; font-size: 11px; }
  .membership-card { padding: 24px 18px; }
  .membership-summary { grid-template-columns: 1fr 1fr; gap: 22px 14px; }
  .membership-summary > div:nth-child(2) { border-right: 0; }
  .membership-summary > div:last-child { grid-column: 1/-1; }
  .membership-summary strong { font-size: 28px; }
  .membership-summary span { font-size: 10px; }
  .membership-tier { font-size: 10px; padding: 7px 9px; }
  .membership-heading h2 { font-size: 18px; }
  .member-actions { grid-template-columns: 1fr; gap: 12px; }
  .member-actions a { padding: 22px; }
  .auth-shell { display: flex; flex-direction: column; }
  .auth-editorial { padding: 22px; }
  .auth-editorial .eyebrow { margin-bottom: 10px; }
  .auth-editorial h2 { font-size: 27px; }
  .auth-editorial h2 br { display: none; }
  .auth-editorial > p:not(.eyebrow) { margin: 10px 0 0; }
  .auth-editorial img, .auth-editorial ul { display: none; }
  .auth-card { padding: 26px 22px; }
  .subscriptions-page main { padding-top: 78px; }
  .subscription-intro { grid-template-columns: 1fr; padding-block: 30px; gap: 24px; }
  .subscription-intro h1 { font-size: 39px; }
  .subscription-intro-cn { font-size: 17px; margin-top: 16px; }
  .subscription-intro figure img { height: 190px; }
  .subscription-intro p:not(.eyebrow):not(.subscription-intro-cn) { display: none; }
  .subscription-intro .text-link { margin-top: 14px; }
  .subscription-plans { padding-top: 18px; }
  .billing-choice { margin-top: 22px; width: fit-content; }
  .plan-card { padding: 24px 20px; }
  .plan-card .eyebrow { grid-column: 1/-1; font-size: 8px; }
  .plan-card h3 { font-size: 30px; }
  .plan-card h3 span { display: block; margin: 7px 0 0; }
  .plan-price strong { font-size: 32px; }
  .plan-description { font-size: 11px; }
  .plan-billing { font-size: 10px; }
  .subscription-details { grid-template-columns: 1fr; gap: 20px; padding-bottom: 40px; }
  .subscription-payment-shell .portal-actions { grid-template-columns: 1fr; }
  .subscription-review { padding: 20px; }
}
/* Delivery choice and final review */
button.text-link { border: 0; background: transparent; padding: 4px 0; min-height: 44px; color: #713749; font: inherit; font-size: .86rem; text-align: left; cursor: pointer; }
.checkout-gift > summary { cursor: pointer; font-size: 1rem; color: #613947; padding-block: 8px; min-height: 48px; }
.checkout-gift > summary span { display: inline-block; }
.checkout-gift[open] > summary { margin-bottom: 12px; }
.checkout-review-link { display: none; }
.checkout-shell.is-empty .checkout-review-link { display: none; }
@media (max-width: 800px) { .checkout-review-link { display: flex; justify-content: space-between; margin: -4px 0 22px; font-size: 14px; } }
.delivery-picker { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--border, #e8e0d8); min-width: 0; }
.delivery-picker h2 { font-size: 1.2rem; margin-bottom: 8px; }
.delivery-lead { padding: 12px 16px; border-radius: 8px; background: #f3ebe5; color: #613947; font-size: .9rem; }
.delivery-picker-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 20px; margin: 18px 0; }
.delivery-picker input[type="date"] { box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; min-height: 48px; background: #fff; padding: 10px; border: 1px solid #d9cfc6; border-radius: 6px; font: inherit; color: #332a2c; }
.delivery-windows { min-width: 0; border: 0; padding: 0; margin: 0; }
.delivery-windows legend { font-size: .85rem; margin-bottom: 8px; }
.delivery-windows [data-windows] { display: flex; flex-wrap: wrap; gap: 8px; }
.delivery-window { display: flex; align-items: center; gap: 7px; border: 1px solid #d9cfc6; border-radius: 6px; min-height: 48px; padding: 8px 12px; cursor: pointer; font-size: .88rem; }
.delivery-window:has(input:checked) { background: #f4e7e9; border-color: #713749; }
.delivery-window input { width: 16px; height: 16px; accent-color: #713749; }
.delivery-selection { color: #613947; font-weight: 600; margin-top: 16px; }
.delivery-picker-help { font-size: .8rem; }
.checkout-delivery-review { display: grid; gap: 7px; margin: 20px 0; padding: 16px; background: #f7f1ec; border-radius: 8px; overflow-wrap: anywhere; }
.checkout-delivery-review span, .checkout-delivery-review small { font-size: .76rem; color: #817070; }
.checkout-delivery-review strong { font-size: .88rem; line-height: 1.6; }
.checkout-gift textarea { display: block; width: 100%; box-sizing: border-box; border: 1px solid #d9cfc6; border-radius: 6px; padding: 12px; font: inherit; resize: vertical; }
.checkout-gift .form-group { margin-top: 16px; }
.checkout-gift label { font-size: .88rem; margin-bottom: 8px; display: block; }
.checkout-gift small { color: #817070; font-size: .76rem; }
@media (max-width: 600px) { .delivery-picker-fields { grid-template-columns: minmax(0, 1fr); gap: 16px; } .delivery-picker { padding-top: 22px; } }

/* Keep shopping and account pages on the same desktop scale as the storefront. */
@media (min-width: 1101px) {
  .help-shell { max-width: 1600px; padding-top: 160px; }
  .help-intro { max-width: 72ch; font-size: 18px; }
  .help-cards p:not(.eyebrow), .studio-story p:not(.eyebrow), .studio-contact-info p { font-size: 17px; }
  .help-shell h1 span, .help-cards h2 span, .studio-contact-grid h2 span { font-size: 19px; }
  .studio-contact-form label { font-size: 16px; }
  .product-shell { padding-top: 144px; }
  .product-layout { gap: clamp(40px, 4vw, 80px); grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); }
  .product-gallery > img { max-height: 840px; }
  .product-copy { max-width: 720px; }
  .product-copy h1 { font-size: clamp(42px, 3.6vw, 60px); }
  .product-name-zh { font-size: 22px; }
  .product-detail-price { font-size: 38px; }
  .product-description { font-size: 18px; max-width: 60ch; }
  .product-specs { font-size: 17px; }
  #productStatus { font-size: 16px; }
  .portal-shell { width: min(1480px, calc(100% - 2 * var(--desktop-gutter))); margin-top: 144px; }
  .checkout-shell { width: min(1680px, calc(100% - 2 * var(--desktop-gutter))); }
  .checkout-grid { grid-template-columns: minmax(0, 1fr) minmax(350px, .6fr); gap: 32px; }
  .checkout-card { padding: clamp(24px, 2.3vw, 40px); }
  .portal-heading h1, .checkout-heading h1 { font-size: 48px; }
  .portal-heading h1 > span, .checkout-heading h1 > span { font-size: 19px; }
  .portal-kicker { font-size: 13px; }
  .muted { font-size: 16px; }
  .purchase-steps { font-size: 15px; }
  .checkout-section-heading h2, .checkout-total-card h2 { font-size: 28px; }
  .checkout-section-heading a { font-size: 15px; }
  .checkout-total-card h2 span { font-size: 16px; }
  .checkout-total-card { top: 120px; }
  .checkout-item { grid-template-columns: 116px minmax(0, 1fr) auto; gap: 22px; }
  .checkout-item > img { width: 116px; height: 145px; }
  .checkout-item h3 { font-size: 24px; }
  .checkout-item h3 small, .checkout-item p { font-size: 16px; }
  .cart-quantity > span { font-size: 16px; }
  .cart-remove, .checkout-points button { font-size: 15px; }
  .cart-feedback, .checkout-totals { font-size: 17px; }
  .checkout-grand-total { font-size: 26px; }
  .checkout-distance, .checkout-points, .checkout-payment, .account-status { font-size: 16px; }
  .checkout-payment small, .checkout-secure-note { font-size: 14px; }
  .checkout-empty p { font-size: 17px; }
  .form-group label, .checkout-save-address { font-size: 16px; }
  .form-group input, .form-group select, .form-group textarea, #savedAddress, #subscriptionSavedAddress { font-size: 17px; }
  .account-form.profile-form { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .account-form.profile-form > .full { grid-column: 1 / -1; }
  .address-cancel, .address-actions button { font-size: 15px; }
  .account-shell { width: min(1600px, calc(100% - 2 * var(--desktop-gutter))); }
  .account-sections a { font-size: 17px; }
  .membership-tier, .membership-summary span { font-size: 15px; }
  .membership-summary strong { font-size: 42px; }
  .membership-progress, .points-history, .member-actions > a > span, .member-rules { font-size: 16px; }
  .membership-rule, .membership-ledger > div { font-size: 15px; }
  .member-actions strong { font-size: 26px; }
  .account-order p, .account-order .btn { font-size: 16px; }
  .auth-shell { width: min(1240px, calc(100% - 2 * var(--desktop-gutter))); }
  .auth-card, .auth-editorial { padding: 48px; }
  .auth-editorial h2 { font-size: 44px; }
  .auth-editorial > p:not(.eyebrow), .auth-switch { font-size: 16px; }
  .auth-editorial ul { font-size: 15px; }
  .auth-card h1 { font-size: 38px; }
  .subscription-payment-shell { width: min(1200px, calc(100% - 2 * var(--desktop-gutter))); }
  .subscription-disclosure, .subscription-disclosure > p { font-size: 16px; }
  .subscriptions-page main { padding-top: 104px; }
  .subscription-intro h1 { font-size: clamp(48px, 4.5vw, 76px); }
  .subscription-intro-cn { font-size: 25px; }
  .subscription-intro p:not(.eyebrow):not(.subscription-intro-cn) { font-size: 17px; max-width: 58ch; }
  .subscription-intro figure img { height: clamp(360px, 25vw, 500px); }
  .subscription-intro figcaption { font-size: 12px; }
  .billing-choice button { font-size: 16px; }
  .billing-explanation, #subscriptionStatus { font-size: 16px; }
  .plan-grid { gap: 28px; }
  .plan-card { padding: clamp(28px, 2.3vw, 44px); }
  .plan-card h3 { font-size: 42px; }
  .plan-card h3 span, .plan-price > span { font-size: 16px; }
  .plan-description, .plan-card ul, .plan-card .btn { font-size: 17px; }
  .plan-price strong { font-size: 50px; }
  .plan-billing, .subscription-plan-note { font-size: 15px; }
  .subscription-details h2 { font-size: 36px; }
  .subscription-details h2 span { font-size: 18px; }
  .quiet-faq summary { font-size: 18px; }
  .quiet-faq p { font-size: 17px; }
  .delivery-picker-help, .checkout-delivery-review span, .checkout-delivery-review small, .checkout-gift small { font-size: 15px; }
  .delivery-window, .checkout-delivery-review strong { font-size: 17px; }
}
@media (min-width: 1101px) and (max-width: 1399px) {
  .checkout-page .account-form.profile-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Findings from the September screenshot review. */
.product-copy > .product-description { margin-top: 24px; }
.membership-heading h2 span { white-space: nowrap; }
@media (max-width: 640px) {
  .product-layout { margin-top: 18px; }
  .product-gallery > img { aspect-ratio: 1; max-height: 350px; }
  .product-copy > .eyebrow { margin-bottom: 10px; }
  .product-copy h1 { margin-block: 10px; }
  .product-detail-price { margin-block: 16px; }
  .product-copy > .btn { min-height: 50px; font-size: 15px; }
  .product-description { font-size: 15px; }
  .product-specs { font-size: 14px; }
  .account-sections { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 12px; overflow: visible; }
  .account-sections a { display: flex; align-items: center; font-size: 13px; padding-block: 10px; }
  .membership-heading { align-items: flex-start; gap: 12px; }
  .membership-heading h2 { font-weight: 400; }
  .membership-heading h2 span { display: block; margin-top: 5px; font: 14px/1.5 var(--font-secondary); }
  .membership-summary span { font-size: 12px; }
  .membership-rule, .member-actions > a > span, .member-rules { font-size: 13px; }
  .plan-card > .plan-description { grid-column: 1 / -1; font-size: 13px; margin-top: 16px; }
  .plan-card .plan-billing { grid-column: 1 / -1; grid-row: auto; text-align: left; font-size: 12px; min-height: 0; margin-bottom: 12px; }
  .plan-card ul { margin-top: 8px; font-size: 13px; }
  .plan-card .btn { font-size: 14px; }
  .plan-card .eyebrow { font-size: 10px; }
  .billing-explanation, .subscription-plan-note { font-size: 13px; }
  .checkout-item { padding-block: 18px; }
  .checkout-item > img { grid-row: 1 / 3; }
  .checkout-item > strong { margin-top: -8px; }
  .checkout-item p, .cart-remove, .checkout-section-heading a { font-size: 13px; }
  .form-group label, .account-status { font-size: 14px; }
  .checkout-totals, .checkout-payment { font-size: 14px; }
  .checkout-payment small, .checkout-secure-note { font-size: 12px; }
  .account-form.profile-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .account-form.profile-form > * { grid-column: 1 / -1; }
  .account-form.profile-form > .form-group:has(input[autocomplete="address-level1"]),
  .account-form.profile-form > .form-group:has(input[autocomplete="postal-code"]) { grid-column: auto; }
}
