/* Public release: homepage geometry retained; bilingual product layouts follow the new artwork. */
.product-view{--product-unit:min(1px,.052083333vw);font-family:Harmony,sans-serif;font-weight:300}
.product-page button:focus-visible{outline:3px solid #245f38;outline-offset:5px}
.products-heading h1{font-size:calc(46 * var(--product-unit));font-weight:500;line-height:1.4}
.products-heading p{font-family:Acumin,Harmony,sans-serif;font-size:calc(35 * var(--product-unit));font-weight:100;line-height:1.3}
.overview-page{aspect-ratio:1920/990.5}
.products-grid{margin:4.6vw 3.25% 0;gap:3.4%}
.catalog-card-copy{top:15%;left:2%;right:2%}.catalog-title{font-size:calc(26 * var(--product-unit));line-height:1.35;white-space:nowrap}.catalog-en{font-size:calc(12 * var(--product-unit));line-height:1.3}.catalog-sub{font-size:calc(14 * var(--product-unit));line-height:1.3;margin-top:.6vw!important}.catalog-card-copy>span+span{margin-top:.15vw}
.product-back span:first-child{font-size:calc(36 * var(--product-unit));font-weight:500;line-height:1.2;letter-spacing:4px}.product-back span:last-child{font-size:calc(25 * var(--product-unit));line-height:1.2}
.overview-page>.product-back{bottom:6.5%}
.detail-intro{margin:2.5vw 2.5vw 0;height:52.5vw}
.detail-product-photo h1{font-size:2.45vw;font-weight:300;line-height:1.35}.detail-product-photo .poster-en{font-size:1.15vw;line-height:1.3;margin-top:.2vw}.detail-product-photo .poster-sub{font-size:1.3vw;line-height:1.4;margin-top:1.25vw}
.detail-problem{padding:6.2vw 3.5vw 0}.detail-problem .copy-zh{font-size:2.1vw;line-height:1.3}.detail-problem .copy-en{font-size:1.15vw;line-height:1.3}.problem-signals{margin-top:4.3vw;font-size:2.05vw;line-height:1.5}.problem-signals p+p{margin-top:1.5vw}.problem-conclusion{bottom:5.5vw}
.detail-science{height:56.5vw}.science-circle{width:42.5%;height:110%;left:53%;top:-7.3%;clip-path:ellipse(40% 26% at 50% 51%)}
.science-copy{top:12%;left:3.5%;right:auto;width:65%;text-align:left}.science-copy>.bilingual+ .bilingual{margin-top:3.2vw}.science-copy h2{font-size:2.55vw;font-weight:400;line-height:1.2;margin:0}.science-copy .copy-zh{font-size:2.25vw;line-height:1.3}.science-copy h2.copy-zh{font-size:2.55vw}.science-copy .copy-en{font-size:1.35vw;line-height:1.2;margin:0}.science-copy p+p,.science-copy p:last-child{margin-top:0}
.audience-heading{font-size:3.3vw;font-weight:700;line-height:1.1}.audience-row figcaption{padding:1.3vw .4vw;min-height:9.5vw}.audience-row figcaption .copy-zh{font-size:1.8vw;line-height:1.3}.audience-row figcaption .copy-en{font-size:.95vw;line-height:1.25}.audience-copy{font-size:1.85vw;line-height:1.8}.audience-copy p+p{margin-top:3vw}.audience-english{font-size:1.5vw;line-height:1.8;margin-top:3vw}.audience-english p+p{margin-top:0}.audience-chinese p+p{margin-top:3vw}
.ending-copy{font-size:3.7vw;line-height:1.2;font-weight:300}.detail-ending .product-back span:first-child{font-size:2.7vw}.detail-ending .product-back span:last-child{font-size:2vw}
.toast{pointer-events:none}.editor-launch,.editor{display:none!important}
/* Time labels use explicit positions, rather than overlapping text line boxes. */
.life-time{top:12%;width:48%;height:80%}
.life-time .life-hour{display:flex;align-items:baseline;gap:.055em;white-space:nowrap}
.life-time .life-hour>span{display:inline}
.life-time .life-minute{position:absolute;left:1.2em;top:.58em;margin:0;white-space:nowrap}
.product-page .product-back,.product-page .detail-ending .product-back{--back-unit:min(1px,.059630292vw);width:calc(130 * var(--back-unit));min-height:calc(66 * var(--back-unit));padding:calc(11 * var(--back-unit)) calc(18 * var(--back-unit));border-radius:calc(12 * var(--back-unit));align-items:flex-start;gap:2px}
.product-page .product-back>span:first-child,.product-page .detail-ending .product-back>span:first-child{font-family:Harmony,sans-serif;font-size:calc(17 * var(--back-unit));font-weight:500;line-height:1.4;letter-spacing:3px}
.product-page .product-back>span:last-child,.product-page .detail-ending .product-back>span:last-child{font-family:Harmony,sans-serif;font-size:calc(15 * var(--back-unit));font-weight:500;line-height:1.3;letter-spacing:0}
@media(min-width:1921px){.product-view{--product-unit:1px}.catalog-title{font-size:1.35vw}.catalog-en{font-size:.625vw}.catalog-sub{font-size:.73vw}}
@media(max-width:760px){
 .life-time{top:8%}.life-time .life-minute{margin:0;top:.58em}
 .life-time [data-type="lifeTime"]{font-size:26px;line-height:1}
 .modern-life .life-card-city{font-size:14px;top:50%;line-height:1.25}
 .modern-life .life-card-caption{font-size:14px!important;bottom:6%;line-height:1.25}
 .product-page .product-back,.product-page .detail-ending .product-back{width:110px;min-height:60px;padding:10px 16px;border-radius:12px}
 .product-page .product-back>span:first-child,.product-page .detail-ending .product-back>span:first-child{font-size:14px;letter-spacing:2px}
 .product-page .product-back>span:last-child,.product-page .detail-ending .product-back>span:last-child{font-size:12px}
 .overview-page{aspect-ratio:auto}.products-heading h1{font-size:25px;line-height:1.5}.products-heading p{font-size:20px;line-height:1.4}.products-grid{margin:35px 0 0;gap:22px 12px}.catalog-card-copy{top:10%;left:3%;right:3%}.catalog-title{font-size:13px;white-space:normal}.catalog-en{font-size:9px;line-height:1.25}.catalog-sub{font-size:10px;margin-top:8px!important}.catalog-card-copy>span+span{margin-top:4px}
 .product-back span:first-child{font-size:21px;letter-spacing:3px}.product-back span:last-child{font-size:16px}.overview-page>.product-back{bottom:30px}
 .detail-intro{margin:20px 6% 0;height:auto}.detail-product-photo h1{font-size:21px}.detail-product-photo .poster-en{font-size:11px;margin-top:4px}.detail-product-photo .poster-sub{font-size:13px;margin-top:10px}
 .detail-problem{padding:55px 22px 0;min-height:430px}.detail-problem .copy-zh{font-size:19px;line-height:1.5}.detail-problem .copy-en{font-size:12px;line-height:1.5}.problem-signals{font-size:19px;margin-top:26px}.problem-signals p+p{margin-top:12px}.problem-conclusion{bottom:26px;left:22px}
 .detail-science{height:auto;min-height:680px}.science-land{height:100%;width:150%;left:-25%;object-fit:cover;filter:brightness(.75)}.science-circle{width:70%;height:330px;left:27%;top:auto;bottom:-35px;object-fit:fill}.science-copy{position:relative;left:auto;right:auto;top:auto;width:auto;padding:28px 22px 225px}.science-copy>.bilingual+.bilingual{margin-top:24px}.science-copy .copy-zh{font-size:18px;line-height:1.5}.science-copy h2.copy-zh{font-size:25px}.science-copy .copy-en{font-size:13px;line-height:1.5}.science-copy br{display:none}
 .audience-heading{font-size:27px}.audience-row figcaption{padding:13px 8px;min-height:75px}.audience-row figcaption .copy-zh{font-size:15px}.audience-row figcaption .copy-en{font-size:10px}.audience-copy{font-size:17px;line-height:1.85}.audience-copy br{display:none}.audience-chinese p+p{margin-top:22px}.audience-english{font-size:14px;line-height:1.8;margin-top:24px}.audience-english p+p{margin-top:12px}
 .ending-copy{font-size:26px;line-height:1.4}.detail-ending .product-back span:first-child{font-size:21px}.detail-ending .product-back span:last-child{font-size:16px}
}

/* Crop inside the embedded collage boundary, then clip the complete layer to a true circle. */
.detail-science .science-circle{position:absolute;width:34%;height:auto;aspect-ratio:1;left:57.25%;top:20.5%;bottom:auto;overflow:hidden;border-radius:50%;clip-path:circle(50%);isolation:isolate;z-index:-1}
.detail-science .science-circle>img{position:absolute;display:block;max-width:none;width:128.20513%;height:200.80321%;left:-14.10256%;top:-51.40562%;object-fit:fill}
@media(max-width:760px){.detail-science .science-circle{width:56%;height:auto;left:34%;top:auto;bottom:45px}}

/* Captions follow each exported card: Chinese immediately followed by its English line. */
.audience-row figcaption.audience-caption{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5vw}
.audience-caption .caption-pair{width:100%}
.audience-caption .caption-pair p{margin:0}
.audience-caption .copy-en{margin-top:.15vw!important}
@media(max-width:760px){.audience-row figcaption.audience-caption{gap:7px}.audience-caption .copy-en{margin-top:2px!important}}

.social-dialog{position:fixed;inset:0;width:min(440px,calc(100vw - 32px));max-height:calc(100svh - 40px);margin:auto;padding:36px 26px 28px;border:0;border-radius:20px;background:#f6f6f1;color:#285337;text-align:center;font:15px/1.6 Harmony,sans-serif;box-shadow:0 20px 90px #0004;overflow:auto}
.social-dialog::backdrop{background:#14281dcc;backdrop-filter:blur(5px)}
.social-dialog h2{font-size:23px;font-weight:500;margin:4px 0 12px}.social-dialog p{margin:0}.social-eyebrow{font-size:11px;letter-spacing:3px}.social-close{position:absolute;top:10px;right:14px;border:0;background:transparent;color:#285337;font:30px/1 Harmony,sans-serif;padding:5px;cursor:pointer}.social-close:focus-visible,.wechat-open:focus-visible{outline:2px solid #285337;outline-offset:4px}
.wechat-code{position:relative;width:min(260px,65vw);aspect-ratio:1;margin:18px auto 22px;overflow:hidden;border-radius:15px;background:#fff}.wechat-code img{position:absolute;display:block;left:-13.1%;top:-13.1%;width:355.51%;height:auto;max-width:none}
.wechat-open{display:inline-block;padding:12px 22px;background:#2c9b59;color:white;border-radius:10px;text-decoration:none;font-weight:500}.social-dialog .social-help{font-size:12px;line-height:1.7;color:#6c7b69;margin-top:16px}
body:has(.social-dialog[open]){overflow:hidden}

/* Supplied high-resolution golden product export already contains its titles. */
.catalog-product .export-copy,.detail-product-photo .export-copy{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;top:0!important;left:0!important;right:auto!important}

/* Inset the promotional artwork crop to omit its green outside border. */
.wechat-code img{left:-14.46809%;top:-14.46809%;width:363.82979%;height:auto}

/* Keep the supplied gold artwork intact; align the other poster titles to its original height. */
.product-detail:not(.product-gold) .detail-product-photo figcaption{top:15.45%}
