/* Editorial hierarchy: generous display titles, calm readable supporting text. */
:root { --serif: 'Avenir Next','Trebuchet MS','Helvetica Neue',sans-serif; --sans:'Avenir Next','Trebuchet MS','Helvetica Neue','PingFang SC','Hiragino Maru Gothic ProN','Microsoft YaHei',sans-serif; }
body { line-height:1.75; }
html[lang='zh-Hans'] { --serif:'PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif; --sans:'Avenir Next','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif; }
html[lang='ja'] { --serif:'Hiragino Maru Gothic ProN','Hiragino Sans','Yu Gothic',sans-serif; --sans:'Avenir Next','Hiragino Maru Gothic ProN','Hiragino Sans','Yu Gothic',sans-serif; }
html[lang='zh-Hans'] h1,html[lang='zh-Hans'] h2,html[lang='ja'] h1,html[lang='ja'] h2 { font-family:var(--serif);font-weight:500;letter-spacing:.015em;line-height:1.3; }
html[lang='zh-Hans'] h3,html[lang='ja'] h3 { font-family:var(--sans);font-weight:600;letter-spacing:.01em;line-height:1.5; }
.hero h1 { font-size:clamp(3.4rem,6.6vw,7.2rem); }
.hero-copy { max-width:38rem;font-size:1.06rem;line-height:1.9; }
.section-heading h2,.water-knowledge h2 { font-size:clamp(3rem,5.8vw,6rem);letter-spacing:-.04em; }
.section-heading>p { max-width:29rem;font-size:1.06rem;line-height:1.9; }
.eyebrow,.section-index {font-size:.875rem;line-height:1.6;letter-spacing:.12em;}
.product-info span,.document-list em,.origin-facts dd,.form-note,.award-gallery-heading>p {font-size:.875rem;line-height:1.7;}
.products {background:#fff;}
.hero::after,.hero-grain,.cursor-aura {display:none!important;}
.comparison-labelled {width:100%;background:#fff;}
.research-visual .comparison-english span {margin:0;color:#17343d;font-size:inherit;letter-spacing:0;text-transform:none;}
@media(prefers-reduced-motion:reduce){.origin .origin-media{min-height:18rem;aspect-ratio:16/10;background:url('./assets/water-cycle.webp') center / contain no-repeat #f4f9fa;}}
.comparison-english {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;text-align:center;padding:0 .8rem 1.2rem;color:#17343d;font-family:var(--sans);font-size:clamp(.875rem,1.5vw,1.2rem);line-height:1.5;}
.research-visual .comparison-labelled img {width:100%;height:auto;object-fit:contain;}
.origin .origin-media {display:flex;align-items:center;min-height:0;background:#f4f9fa;padding:2rem 1rem 5rem;}
.origin .origin-media video {position:relative;width:100%;height:auto;min-height:0;max-height:38rem;object-fit:contain;}
.origin-media::after {display:none;}
.origin-caption {bottom:1.3rem;left:1rem;right:1rem;color:#17343d;}
.origin-caption span {color:inherit;}
.heading-phrase {display:block;max-width:100%;text-wrap:balance;}
h1,h2,h3 {text-wrap:balance;overflow-wrap:normal;word-break:normal;}
html[lang='zh-Hans'] h1,html[lang='zh-Hans'] h2,html[lang='ja'] h1,html[lang='ja'] h2 {max-width:none;letter-spacing:0;line-height:1.4;}
#water-knowledge::before {background:rgba(8,31,32,.12);}
.water-knowledge-heading {padding:1.5rem;background:rgba(13,40,39,.68);color:#fff;border-radius:1.25rem;}
@media(max-width:720px){html[lang='zh-Hans'] h1,html[lang='zh-Hans'] h2,html[lang='ja'] h1,html[lang='ja'] h2{font-size:clamp(1.6rem,6.8vw,2.35rem)!important;line-height:1.5;max-width:100%;width:100%}.origin .origin-media{min-height:0;padding:.8rem .5rem 4rem;background-size:contain}.origin .origin-media video{object-fit:contain;height:auto;max-height:none}.origin-caption{font-size:.875rem}.water-knowledge-heading{padding:1rem}}
.recognition {display:block;}
.recognition::before {content:none;}
.recognition .award-gallery {margin-top:1.5rem;overflow:visible;}
.recognition .award-gallery-track {grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;overflow:visible;scroll-snap-type:none;}
.recognition .award-gallery-card {min-height:0;width:100%;}
.recognition .award-gallery-image {height:clamp(13rem,21vw,23rem);min-height:0;flex:none;padding:1rem;}
.recognition .award-gallery-meta {grid-template-columns:3.5rem 1fr;min-height:6rem;gap:.75rem;padding:1rem;}
.recognition .award-gallery-meta span {font-size:1rem;line-height:1.6;}
.water-knowledge {position:relative;isolation:isolate;background:#e9f4f6;overflow:hidden;}
.knowledge-flow {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;}
.water-knowledge::before {content:'';position:absolute;inset:0;background:rgba(240,248,250,.76);z-index:-1;}
.water-knowledge-grid article {background:rgba(255,255,255,.89);border:1px solid rgba(112,158,171,.3);padding:1.8rem 2rem;}
.water-knowledge-grid {gap:1.5rem;}
.flow-control {margin-top:2rem;padding:.65rem 1rem;border:1px solid #547782;background:rgba(255,255,255,.9);color:#17343d;font:inherit;font-size:.875rem;cursor:pointer;min-height:44px;}
@media(max-width:720px){.recognition .award-gallery-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.recognition .award-gallery-image{height:10rem;padding:.5rem}.recognition .award-gallery-meta{grid-template-columns:1fr;gap:.25rem;padding:.8rem;min-height:7rem}.recognition .award-gallery-meta span{font-size:.875rem}.water-knowledge-grid article{padding:1.4rem}.water-knowledge::before{background:rgba(240,248,250,.8)}}
.collection-campaign {margin:2rem 0 0;position:relative;}
.collection-campaign>img {display:block;width:100%;height:auto;}
.campaign-awards {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.25rem;padding:1.5rem 2rem 2rem;background:#f4f9fa;border-radius:1.5rem 1.5rem 0 0;}
.campaign-award {appearance:none;display:flex;align-items:center;justify-content:center;min-width:0;height:clamp(7rem,12vw,11rem);padding:.65rem;background:#fff;border:1px solid #dce9eb;border-radius:.65rem;cursor:zoom-in;box-shadow:0 .35rem 1rem #244c5810;transition:transform .2s;}
.campaign-award img {width:100%;height:100%;object-fit:contain;}
.campaign-award:hover {transform:translateY(-3px);}
.campaign-award:focus-visible {outline:3px solid #277184;outline-offset:4px;}
@media(max-width:720px){.campaign-awards{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;padding:1rem}.campaign-award{height:7.5rem;padding:.4rem}}
.collection-campaign figcaption {font-size:.875rem;letter-spacing:.08em;line-height:1.8;padding:1rem 0;color:var(--blue-deep);}
.collection-lineup {display:grid;grid-template-columns:1.35fr 1.3fr .9fr .78fr .78fr .78fr .78fr;gap:1.5rem;align-items:start;border-bottom:1px solid var(--line-dark);padding:3rem 0;}
.collection-item {min-width:0;}
.collection-image {height:clamp(16rem,25vw,28rem);display:flex;align-items:flex-end;justify-content:center;padding-bottom:2rem;}
.collection-image img {max-width:100%;width:auto;height:var(--product-height);object-fit:contain;object-position:center bottom;transition:transform .6s ease;}
.collection-item:hover img {transform:translateY(-.6rem);}
.collection-item h3 {font-family:var(--sans)!important;font-size:clamp(1.3rem,2vw,2rem);font-weight:500!important;margin:1rem 0 .5rem;white-space:nowrap;}
.collection-item p {font-size:.875rem;line-height:1.7;color:var(--blue-deep);margin:0;}
.collection-note {font-size:.875rem;color:#536b73;line-height:1.7;max-width:60rem;}
.media-trilingual {font-family:var(--sans);font-size:.875rem;letter-spacing:.08em;margin:0 0 1.8rem;line-height:1.8;}
.ambient-control {display:inline-flex;gap:.7rem;align-items:center;margin-top:1.4rem;padding:.7rem 1rem;color:white;background:rgba(9,35,40,.25);border:1px solid rgba(255,255,255,.55);border-radius:2rem;font:inherit;font-size:.875rem;cursor:pointer;min-height:44px;}
.ambient-control[aria-pressed='true'] {background:rgba(9,35,40,.65);}
.water-knowledge {background:#edf6f9;}
.water-knowledge-heading {max-width:60rem;margin-bottom:4rem;}
.water-knowledge-heading h2 {margin:1rem 0 1.5rem;font-family:var(--serif);font-weight:400;line-height:1.1;}
.water-knowledge-heading>p:last-child {font-size:1.1rem;}
#water-knowledge .water-knowledge-heading h2,#water-knowledge .water-knowledge-heading p {color:#fff;}
#water-knowledge .knowledge-flow {filter:none;opacity:1;}
#water-knowledge .water-knowledge-grid article {background:rgba(239,247,246,.92);border:1px solid rgba(220,239,234,.55);border-radius:1.1rem;}
body {font-weight:400;letter-spacing:.005em;}
html body h1,html body h2 {font-family:var(--serif);font-weight:400;letter-spacing:.015em;line-height:1.35;}
html body h3 {font-family:var(--sans);font-weight:500;letter-spacing:.01em;line-height:1.5;}
html[lang='zh-Hans'] body h1,html[lang='zh-Hans'] body h2,html[lang='ja'] body h1,html[lang='ja'] body h2 {font-weight:400;}
.water-knowledge-heading h2 {font-size:clamp(2rem,4.7vw,4.7rem);}
.water-knowledge-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:3rem 5rem;}
.water-knowledge-grid article {border-top:1px solid #b4cdd5;padding-top:1.5rem;}
.journal-number {font-family:var(--serif);font-size:2.8rem;color:#6b99a9;line-height:1;}
.water-knowledge-grid h3 {font-size:1.65rem;margin:1.5rem 0 1rem;}
.water-knowledge-grid p {max-width:42rem;font-size:1rem;line-height:1.95;color:#3d5e69;}
.water-references {display:flex;flex-wrap:wrap;gap:2rem;margin-top:3rem;font-size:.875rem;text-decoration:underline;}
.desktop-nav {gap:1.1rem;}
@media(max-width:1100px){.collection-lineup{grid-template-columns:repeat(4,1fr);gap:2rem}.collection-image{height:21rem}.collection-item:nth-child(-n+2){grid-column:span 2}.collection-item:nth-child(-n+2) .collection-image{height:24rem}}
@media(max-width:720px){.hero h1{font-size:clamp(2.3rem,9vw,3.7rem)}.section-heading h2,.water-knowledge h2{font-size:clamp(2.5rem,10vw,4rem)}.collection-lineup{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.3rem;padding-top:1rem}.collection-item:nth-child(-n+2){grid-column:auto}.collection-image,.collection-item:nth-child(-n+2) .collection-image{height:16rem}.collection-item h3{font-size:1.5rem}.collection-item p{font-size:.875rem}.water-knowledge-grid{grid-template-columns:1fr;gap:2rem}.water-knowledge-heading{margin-bottom:2.5rem}.media-trilingual{font-size:.8rem;letter-spacing:.03em}.hero{min-height:58rem}.hero-content{margin-top:7rem}.award-gallery-meta span{font-family:var(--sans);font-size:1rem;line-height:1.6}}
@media(prefers-reduced-motion:reduce){.collection-image img{transition:none}.collection-item:hover img{transform:none}}
