@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');
:root{--sea:#315e62;--ink:#211d1b;--muted:#66605c;--line:#dedad7;--dark:#2d2927;--accent:#9e5757;--paper:#fff;--soft:#f6f3f0}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.wrap{width:min(1240px,calc(100% - 72px));margin:auto}img{max-width:100%}
.announcement{height:32px;display:grid;place-items:center;background:#f4eeee;color:#534a47;font-size:10px;font-weight:700;letter-spacing:.16em}.site-header{background:var(--dark);color:#fff}.masthead{border-bottom:1px solid #ffffff36}.masthead-inner{height:84px;display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center}.masthead-kicker{font-size:10px;letter-spacing:.14em;font-weight:700;max-width:160px;line-height:1.5}.brand{font:700 clamp(35px,4vw,58px)/1 Georgia,'Times New Roman',serif;letter-spacing:-.075em;text-align:center}.brand:hover{text-decoration:none}.masthead-actions{display:flex;justify-content:flex-end;gap:22px;font-size:11px;letter-spacing:.1em;font-weight:700}.primary-nav{border-bottom:1px solid #ffffff52}.primary-inner,.topic-nav .wrap{display:flex;justify-content:center;align-items:center;gap:clamp(12px,2vw,30px);min-height:42px;white-space:nowrap;overflow:auto}.primary-nav a,.topic-nav a,.topic-nav strong{font-size:11px;font-weight:700;letter-spacing:.12em}.topic-nav{border-bottom:1px solid #ffffff52}.topic-nav .wrap{min-height:39px}.primary-nav a:hover,.topic-nav a:hover{color:#e5bdb6;text-decoration:none}
.editorial-home{padding-top:46px}.lead-grid{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:25px;border-bottom:1px solid var(--line);padding-bottom:48px}.lead-side{display:grid;gap:24px}.lead-story{display:block;min-width:0;text-align:center}.lead-story:hover{text-decoration:none}.lead-story img{display:block;width:100%;height:245px;object-fit:cover;background:var(--soft)}.lead-grid>.lead-story img{height:550px}.lead-copy{padding:17px 14px 0}.lead-story h2{font:700 clamp(21px,2.25vw,30px)/1.25 'Libre Baskerville',Georgia,serif;letter-spacing:-.025em;margin:9px auto 10px;max-width:690px}.lead-grid>.lead-story h2{font-size:clamp(30px,3vw,43px)}.eyebrow{display:block;color:#9e555b;text-transform:uppercase;font:700 11px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.11em}.story-credit{display:block;font-size:10px;letter-spacing:.11em;font-weight:700;color:#7a7470;margin-top:13px}.section{padding:46px 0 52px;border-bottom:1px solid var(--line)}.topics-section{padding:28px 0}.category-strip{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.category-strip a{padding:8px 14px;border:1px solid #bdb6b1;text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-weight:700}.category-strip a:hover{background:var(--dark);color:#fff;text-decoration:none}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin-bottom:25px;border-top:3px solid var(--ink);padding-top:13px}.section-heading h2{font:700 clamp(30px,3vw,43px)/1.1 'Libre Baskerville',Georgia,serif;letter-spacing:-.045em;margin:0}.section-heading>a{font-size:11px;font-weight:700;letter-spacing:.08em;color:#9e555b;white-space:nowrap}.stories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.story{display:block;min-width:0}.story:hover{text-decoration:none}.story>img,.story-no-image{display:block;width:100%;height:235px;object-fit:cover;background:var(--soft);margin-bottom:16px}.story h3{font:700 clamp(19px,1.8vw,25px)/1.32 'Libre Baskerville',Georgia,serif;letter-spacing:-.025em;margin:8px 0}.story p{font-size:13px;line-height:1.55;color:var(--muted);margin:7px 0}.theme-section .stories{grid-template-columns:repeat(4,minmax(0,1fr))}.theme-section .story>img{height:180px}.theme-section .story h3{font-size:19px}.theme-section .story p{display:none}.shop-callout{margin:45px 0;display:flex;align-items:center;justify-content:space-between;gap:30px;background:#ece5e0;padding:34px 42px}.shop-callout h2{font:700 31px/1.2 'Libre Baskerville',Georgia,serif;max-width:670px;margin:8px 0}.shop-callout p{font-size:14px;margin:0}.button{display:inline-block;background:var(--dark);color:#fff;padding:14px 19px;font-size:11px;font-weight:700;letter-spacing:.08em;white-space:nowrap}.button:hover{text-decoration:none;background:#614744}
.page{min-height:60vh;padding:52px 0 90px}.page h1{font:700 clamp(39px,5vw,67px)/1.08 'Libre Baskerville',Georgia,serif;letter-spacing:-.055em;max-width:950px;margin:12px 0 20px}.page .category-strip{margin:25px 0 42px}.listing-page .stories{row-gap:45px}.lede{font-size:19px;line-height:1.6;max-width:800px;color:#58524f}.shop-section{margin:52px 0 65px}.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:22px}.product-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff}.product-card>img{width:100%;height:230px;object-fit:contain;background:#fff;padding:12px}.product-mark{display:grid;place-items:center;width:100%;height:230px;background:var(--soft);font:700 33px Georgia,serif;color:#b7aaa3}.product-card>div:last-child{padding:16px;display:flex;flex-direction:column;flex:1}.product-card h3{font:700 16px/1.35 'Libre Baskerville',Georgia,serif;margin:8px 0 12px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.product-card p{font-size:13px;color:var(--muted)}.product-card a{margin-top:auto;display:inline-block;border-bottom:1px solid var(--ink);align-self:flex-start;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:8px 0}.product-card a:hover{text-decoration:none;color:var(--accent)}
.article-layout{padding:54px 0 100px;max-width:980px}.article-layout article{max-width:100%}.breadcrumb{font-size:11px;color:var(--accent);font-weight:700;letter-spacing:.13em;text-transform:uppercase}.article-layout h1{font:700 clamp(38px,5vw,65px)/1.13 'Libre Baskerville',Georgia,serif;letter-spacing:-.045em;max-width:900px;margin:18px 0}.article-layout .lede{font-size:20px;max-width:760px}.article-byline{font-size:11px;font-weight:700;letter-spacing:.12em;color:#716863;margin:20px 0 24px}.article-image{display:block;width:100%;height:auto;max-height:610px;object-fit:cover;margin:24px 0 35px}.disclosure{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;font-size:12px;color:#756d68;margin:22px 0}.prose{max-width:960px;margin:auto;font:18px/1.85 Georgia,serif}.prose h2{font:700 29px/1.27 'Libre Baskerville',Georgia,serif;letter-spacing:-.025em;margin:49px 0 18px}.prose h3{font:700 21px/1.4 'Libre Baskerville',Georgia,serif;margin:34px 0 12px}.prose p{margin:0 0 24px}.prose ul,.prose ol{padding-left:24px}.prose li{margin:11px 0}.prose a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.article-products,.related{margin-top:65px;padding-top:20px;border-top:3px solid var(--ink)}.article-products h2,.related h2{font:700 30px 'Libre Baskerville',Georgia,serif}.article-products .products{grid-template-columns:repeat(3,minmax(0,1fr))}.related .story>img{height:170px}.legal-page{max-width:800px}.legal-page p{font-size:18px}
footer{background:var(--dark);color:#fff;padding:55px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-brand{font:700 40px Georgia,serif;letter-spacing:-.06em}.footer-grid p{color:#c4bbb5;max-width:300px;font-size:14px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:9px}.footer-grid b{font-size:11px;letter-spacing:.12em;margin-bottom:8px}.footer-grid a{font-size:13px}.legal-line{font-size:11px;color:#aaa19b;border-top:1px solid #ffffff45;padding-top:18px;margin-top:45px}
@media(max-width:900px){.wrap{width:min(100% - 38px,1240px)}.masthead-kicker{display:none}.masthead-inner{display:flex;justify-content:center;position:relative}.masthead-actions{display:none}.primary-inner,.topic-nav .wrap{justify-content:flex-start}.lead-grid{grid-template-columns:1.6fr 1fr}.lead-grid>.lead-story img{height:450px}.lead-story img{height:190px}.theme-section .stories,.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.announcement{height:26px;font-size:9px}.masthead-inner{height:68px}.brand{font-size:41px}.primary-inner,.topic-nav .wrap{gap:18px;min-height:40px}.topic-nav{display:none}.editorial-home{padding-top:22px}.lead-grid{display:block;padding-bottom:26px}.lead-grid>.lead-story img{height:340px}.lead-grid>.lead-story h2{font-size:27px}.lead-side{grid-template-columns:1fr 1fr;gap:15px;margin-top:30px}.lead-side .lead-story img{height:115px}.lead-side .lead-story h2{font-size:16px}.lead-side .story-credit{display:none}.section{padding:34px 0}.stories,.theme-section .stories{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 14px}.story>img,.theme-section .story>img{height:125px}.story h3,.theme-section .story h3{font-size:16px}.story p{display:none}.section-heading h2{font-size:29px}.shop-callout{display:block;padding:24px;margin:28px 0}.shop-callout h2{font-size:25px}.shop-callout .button{margin-top:18px}.page{padding:38px 0 70px}.products{gap:12px}.product-card>img,.product-mark{height:150px}.product-card h3{font-size:14px}.product-card>div:last-child{padding:12px}.article-layout{padding:38px 0 80px}.article-layout h1{font-size:37px}.article-layout .lede{font-size:17px}.prose{font-size:17px}.prose h2{font-size:25px}.article-products .products{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
.brand img{display:block;width:min(345px,100%);height:auto;margin:auto}.footer-brand img{display:block;width:260px;height:auto}.share-tools{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:18px 0 26px}.share-tools span{font-size:10px;letter-spacing:.13em;font-weight:700;color:#6b625e}.pin-button{display:inline-block;background:#bd1e2d;color:#fff;padding:10px 15px;border-radius:3px;font-size:12px;font-weight:700}.pin-button:hover{background:#951825;color:#fff;text-decoration:none}.prose a{color:#94515a;text-decoration:underline;text-underline-offset:3px}.prose a:hover{color:#5f303b}
@media(max-width:620px){.brand img{width:260px}.footer-brand img{width:230px}}
.share-button{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:9px 12px;border:1px solid #d7d2d0;border-radius:3px;color:#29242b;background:#fff;font-size:12px;font-weight:700;line-height:1.2}.share-button:hover{background:#29242b;color:#fff;text-decoration:none}.share-button.pin{background:#bd1e2d;border-color:#bd1e2d;color:#fff}.share-button.pin:hover{background:#951825}.share-button.x{font-weight:800}.share-button.facebook{color:#1763a4}.share-button.linkedin{color:#0a6e99}.share-button.facebook:hover,.share-button.linkedin:hover{color:#fff}
.article-pagination{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:22px;margin-top:35px;font-size:13px;font-weight:700}.article-pagination a{max-width:45%;color:var(--accent)}@media(max-width:620px){.article-pagination{display:block}.article-pagination a{display:block;max-width:none;margin:15px 0}}
.sk-ad-slot[hidden]{display:none!important}.sk-ad-slot{margin:24px 0;max-width:100%;text-align:center;overflow:hidden}.sk-ad-preview{display:grid;place-items:center;background:#f5f1ee;border:1px dashed #c8bab3;color:#74675f;font-size:12px;letter-spacing:.04em}

.product-card img{aspect-ratio:1/1;object-fit:contain;width:100%;height:auto}.article-image{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto}.prose table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.prose th,.prose td{padding:.7rem;border:1px solid #ddd;text-align:left;vertical-align:top}.share-tools{gap:.55rem}.share-tools .share-button{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:0;border:1px solid #ddd;border-radius:50%;color:#202020;background:white}.share-tools .share-button svg{display:block;flex-shrink:0}.share-tools .share-button:hover{background:#f4f1ee;color:#202020}.share-tools .share-button:focus-visible{outline:3px solid #315e62;outline-offset:3px}.share-tools .pin{color:#bd081c}.share-tools .facebook{color:#1877f2}.share-tools .linkedin{color:#0a66c2}

.article-products .products{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.article-products .product-card{max-width:430px}.editorial-method{font-size:13px;line-height:1.6;color:#645d58;margin-top:24px}

/* Compact round social sharing buttons, top of article only. */
.share-tools{gap:8px;margin:16px 0 22px;align-items:center}
.share-tools .share-button{width:32px;min-width:32px;height:32px;border:0;border-radius:50%;padding:0;color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.10);transition:transform .15s ease,box-shadow .15s ease}
.share-tools .share-button svg{width:16px;height:16px}
.share-tools .share-button.pin{background:#bd081c;color:#fff}
.share-tools .share-button.x{background:#171717;color:#fff}
.share-tools .share-button.facebook{background:#1877f2;color:#fff}
.share-tools .share-button.linkedin{background:#0a66c2;color:#fff}
.share-tools .share-button:hover{color:#fff;transform:translateY(-2px);box-shadow:0 3px 7px rgba(0,0,0,.18)}
.share-tools .share-button.pin:hover{background:#a70719}
.share-tools .share-button.x:hover{background:#333}
.share-tools .share-button.facebook:hover{background:#1265d3}
.share-tools .share-button.linkedin:hover{background:#0858a8}
@media(prefers-reduced-motion:reduce){.share-tools .share-button{transition:none}.share-tools .share-button:hover{transform:none}}
.cookie-banner[hidden]{display:none!important}.cookie-banner{position:fixed;z-index:1000;left:18px;right:18px;bottom:18px;max-width:1080px;margin:auto;padding:20px 24px;background:#fff;color:#262329;border:1px solid #ded8d4;border-radius:12px;box-shadow:0 8px 35px #0002;display:flex;gap:24px;align-items:center;font:14px/1.55 Arial,sans-serif}.cookie-banner p{margin:6px 0 0}.cookie-banner a,.cookie-dialog a{text-decoration:underline}.cookie-actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}.cookie-actions button,button[data-cookie-settings]{cursor:pointer;font:600 13px/1.3 Arial,sans-serif}.cookie-actions button{padding:11px 14px;border:1px solid #4c4541;border-radius:6px;background:#fff;color:#262329;min-height:42px}.cookie-actions button:hover{background:#f2efec}.cookie-actions button:focus-visible,.cookie-category input:focus-visible{outline:3px solid #315e62;outline-offset:3px}.cookie-dialog{max-width:540px;width:calc(100% - 32px);max-height:85vh;overflow-y:auto;padding:28px;border:1px solid #ddd;border-radius:12px;font:15px/1.6 Arial,sans-serif;color:#262329}.cookie-dialog::backdrop{background:#0006}.cookie-dialog h2{margin-top:0;font-size:25px}.cookie-category{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:16px 0;border-top:1px solid #ddd}.cookie-category small{display:block;max-width:370px;font-size:13px}.cookie-category input{width:20px;height:20px;flex-shrink:0;accent-color:#315e62}button[data-cookie-settings]{border:0;background:none;color:inherit;text-align:left;padding:0;margin-top:8px;text-decoration:underline}.legal-page h2{margin-top:30px;font-size:24px}.legal-page p{font-size:17px;line-height:1.75}.legal-page a{text-decoration:underline}
@media(max-width:700px){.cookie-banner{left:10px;right:10px;bottom:10px;padding:16px;display:block;max-height:50vh;overflow:auto;font-size:13px}.cookie-banner .cookie-actions{margin-top:12px}.cookie-actions button{flex:1 1 auto}.cookie-dialog{padding:20px}.primary-inner{overflow-x:auto;justify-content:flex-start}.cookie-category small{max-width:80vw}}
.image-unavailable{display:flex;align-items:center;justify-content:center;min-height:140px;padding:20px;background:#f3f0ed;border:1px solid #e5dfd9;color:#6b625e;font:14px/1.5 Arial,sans-serif;text-align:center}.product-card .image-unavailable{aspect-ratio:1/1}
/* ============================================================================
   统一层：以下规则取代了原先 V2 → V10 层层叠加的补丁块。
   归档里有三种产品网格写法（div.article-product-grid[.product-count-N] /
   div.product-grid.article-product-grid / section.article-products），
   这里用一组选择器一次覆盖，避免后续版本再互相覆盖、堆 !important。
   ========================================================================== */
.footer-grid>div:first-child p{max-width:390px;line-height:1.7}

/* 栏目宽度：桌面外壳 1080px，正文测量宽 960px。 */
@media (min-width:901px){
  .article-layout{max-width:1080px}
  .article-layout .prose{max-width:960px}
}

/* 统一的分页导航（原先只写在各列表页的内联样式里）。 */
.pagination{display:flex;gap:10px;justify-content:center;margin:40px 0}
.pagination a{padding:8px 12px;border:1px solid #d8d2ca;text-decoration:none}
.pagination a.current{font-weight:700;border-color:#222}

/* 跳到正文（仅键盘聚焦时可见）。 */
.skip-link{position:absolute;left:-9999px;top:0;background:#fff;color:var(--ink);padding:10px 16px;z-index:2000;font-weight:700}
.skip-link:focus{left:8px;top:8px;outline:3px solid #315e62;outline-offset:2px}

/* 带说明文字的插图（旧模板文章把首图放在 figure 里）。 */
figure{margin:26px 0 30px}
figcaption{font-size:13px;line-height:1.6;color:var(--muted);margin-top:10px;text-align:center}

/* 产品推荐网格：所有写法共用同一套几何。 */
.article-product-grid,
.article-products .article-product-grid,
.article-layout .product-grid,
.article-products .products{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;align-items:stretch;width:100%;max-width:100%;margin:24px 0 36px}
.article-product-grid.product-count-2,
.article-layout .product-grid.product-count-2{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:780px;margin-left:auto;margin-right:auto}
.article-product-grid.product-count-1,
.article-layout .product-grid.product-count-1{
  grid-template-columns:minmax(0,1fr)!important;max-width:420px;margin-left:auto;margin-right:auto}

/* 卡片：等高、图片固定、文案内边距一致、链接压到底部。 */
.article-product-grid .product-card,
.article-layout .product-grid>.product-card,
.article-products .products>.product-card{
  display:flex!important;flex-direction:column;box-sizing:border-box;
  min-width:0;width:100%;max-width:none;height:100%;margin:0;overflow:hidden}
.article-product-grid .product-card img{
  display:block;width:100%;height:220px;aspect-ratio:auto;object-fit:contain;padding:12px;box-sizing:border-box;background:#fff}
.article-product-grid .product-card>div{display:flex;flex-direction:column;flex:1;min-width:0;padding:16px}
.article-product-grid .product-card h3{overflow-wrap:anywhere;font-size:17px;line-height:1.4;margin:0 0 12px}
.article-product-grid .product-card p{margin:0 0 14px;font-size:13px;color:var(--muted)}
.article-product-grid .product-card a,
.article-product-grid .product-card .button{
  margin-top:auto;align-self:flex-start;display:inline-block;text-align:left;white-space:normal;
  border-bottom:1px solid var(--ink);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:8px 0}
.article-product-grid .product-card a:hover{text-decoration:none;color:var(--accent)}

/* 商店页 */
.shop-page .category-strip{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 36px}
.shop-page .category-strip a{border:1px solid #cfc7c2;padding:12px 15px;text-decoration:none;color:inherit;font-size:12px;font-weight:700;text-transform:uppercase}
.shop-page .shop-section{scroll-margin-top:25px}
.shop-page .product-card h3{overflow-wrap:anywhere}

/* 更多指南清单 */
.more-guides-section{margin:54px 0 20px;padding-top:30px;border-top:1px solid var(--line)}
.more-guides-section h2{font:700 30px/1.15 'Libre Baskerville',Georgia,serif;margin:0 0 20px}
.more-guides-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
.more-guides-list a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font:700 16px/1.4 'Libre Baskerville',Georgia,serif;color:var(--ink)}
.more-guides-list a:hover{color:var(--accent);text-decoration:none}
.text-story{padding:18px;background:var(--soft);min-height:180px;display:flex!important;flex-direction:column;justify-content:flex-end}

@media(max-width:900px){
  .article-product-grid,.article-products .article-product-grid,.article-layout .product-grid,.article-products .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .shop-page .products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .article-product-grid,.article-product-grid.product-count-2,.article-product-grid.product-count-1,
  .article-layout .product-grid,.article-layout .product-grid.product-count-2,.article-layout .product-grid.product-count-1,
  .article-products .products{grid-template-columns:minmax(0,1fr)!important;max-width:none}
  .more-guides-list{grid-template-columns:1fr}
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
/* current-section highlight — only the main navigation, colour only (no underline) */
.primary-nav a[aria-current]{color:#e5bdb6}
/* THE SPACE EDIT is the label of that row, not a link: dimmer and smaller than the links beside it */
.topic-nav strong{color:#8b8480;font-size:10px;letter-spacing:.18em}
