html{scroll-padding-top:110px}.special-header{position:sticky;top:0;z-index:20;background:#fff;padding:22px 6%;display:flex;justify-content:space-between;gap:25px;align-items:center;border-bottom:1px solid #deded8}.special-brand{font-size:24px;font-weight:700;line-height:1.4}.special-brand span{color:#866a38}.special-brand small{display:block;font-size:11px;letter-spacing:.1em;margin-top:6px}.special-header nav{display:flex;gap:26px;font-size:13px}.special-header nav a:hover{color:#866a38}.special-hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:#171918;color:white}.special-copy{padding:70px 10%}.special-copy .eyebrow{color:#d2b77f}.special-copy h1{font-size:clamp(38px,4.5vw,68px);line-height:1.5;letter-spacing:.08em;margin-bottom:24px}.special-copy>p{color:#ddd}.special-copy>.button{margin-top:30px}.special-hero figure{margin:0;position:relative;min-width:0}.special-hero figure>img{height:100%;position:absolute;inset:0;object-fit:cover}.special-hero figcaption{position:absolute;bottom:16px;right:18px;font-size:11px;background:#171918bf;padding:5px 10px}.operator{margin-top:40px;display:flex;align-items:center;gap:18px;border-top:1px solid #555044;padding-top:24px}.operator img{width:104px;background:white;padding:9px;object-fit:contain}.operator p{font-size:11px;line-height:1.9}.operator strong{font-size:16px}.operator small{font-size:10px}.special-intro{text-align:center;padding:90px 7%;background:#f4f4f0}.special-intro h2{font-size:clamp(26px,3vw,40px);margin-bottom:24px}.special-intro>p:last-child{font-size:15px;color:#626660}.special-consult{padding:90px 8%;background:#f4f4f0;text-align:center}.special-consult h2{font-size:clamp(27px,3vw,42px);margin-bottom:24px}.special-consult>p{font-size:15px}.consult-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin:32px 0 20px}.contact-address{letter-spacing:.05em}.area{margin-top:20px;color:#626660}.special-footer{padding:45px 8%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:25px;background:#171918;color:#fff}.special-footer p{font-size:12px;margin-top:12px}.special-footer>a{font-size:14px;color:#d2b77f}.special-footer>small{width:100%;font-size:11px;color:#b8bbb4}
@media(max-width:800px){html{scroll-padding-top:135px}.special-header{padding:14px 6%;display:block}.special-brand{font-size:21px}.special-header nav{gap:18px;font-size:11px;margin-top:12px}.special-hero{grid-template-columns:1fr}.special-copy{padding:40px 7%}.special-hero figure{min-height:300px}.special-hero figure>img{object-position:center 58%}.special-intro,.special-consult{padding:55px 7%}.special-intro br,.special-consult p br{display:none}.consult-links{display:grid}.special-footer{padding:35px 7%}.operator{margin-top:28px}}

/* Supplied photographs and finish collection */
#dotcon .plus-pattern-image img,#dotcon .plus-pattern-image.rectangle img,#dotcon .plus-pattern-image.hexagon img{position:static;width:100%;height:100%;object-fit:cover;object-position:center;max-width:100%}
.special-hero figure>img{object-position:50% 55%}.finish-gallery{padding:90px 8%;background:#fff}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.gallery-heading h2{font-size:clamp(28px,3vw,44px)}.gallery-heading>p{font-size:14px;color:#626660}.finish-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.finish-grid figure{margin:0}.finish-grid img{aspect-ratio:1;object-fit:cover}.finish-grid h3{margin-top:20px;font-size:20px}.finish-grid p{font-size:14px;color:#626660;margin-top:8px}.provided-note{font-size:12px;color:#626660;margin-top:22px}.wide-finish{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;margin-top:65px;background:#f4f4f0}.wide-finish img{height:100%;min-height:320px;object-fit:cover}.wide-finish>div{padding:28px 28px 28px 0}.wide-finish h3{font-size:25px;line-height:1.7}.wide-finish p:not(.eyebrow){font-size:14px;margin:18px 0 24px}.special-header nav{gap:18px}
@media(max-width:800px){.special-header nav{flex-wrap:wrap;gap:8px 16px}.finish-gallery{padding:55px 7%}.gallery-heading{display:block}.gallery-heading>p{margin-top:20px}.finish-grid{grid-template-columns:1fr;gap:34px}.finish-grid img{aspect-ratio:1.3}.wide-finish{grid-template-columns:1fr;gap:0;margin-top:40px}.wide-finish>div{padding:26px}.wide-finish img{min-height:0;aspect-ratio:1.4}.special-hero figure{min-height:360px}}

/* Wide views: preserve the supplied photograph, without close cropping. */
.special-hero{grid-template-columns:1fr;min-height:0}.special-copy{padding:65px 8% 45px;display:grid;grid-template-columns:1.2fr 1fr;column-gap:50px}.special-copy .eyebrow,.special-copy h1{grid-column:1}.special-copy h1{font-size:clamp(38px,5vw,66px)}.special-copy>p:not(.eyebrow),.special-copy>.button,.special-copy>.operator{grid-column:2}.special-copy>p:not(.eyebrow){grid-row:2;align-self:center}.special-copy>.button{grid-row:3;justify-self:start;margin-top:0}.special-copy>.operator{grid-row:4;margin-top:26px}.special-hero figure{margin:0 8% 55px;min-height:0}.special-hero figure>img{position:static;width:100%;height:auto;max-height:560px;object-fit:contain;background:#171918}.special-hero figcaption{font-size:10px}
.photo-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.photo-buttons button{font:inherit;font-size:14px;padding:12px 26px;border:1px solid #b39a66;background:transparent;color:#242721;cursor:pointer;border-radius:2px}.photo-buttons button[aria-pressed=true]{background:#242721;color:#ead6a9;border-color:#242721}.photo-buttons button:focus-visible{outline:3px solid #ac8540;outline-offset:4px}.selected-photo{margin:0!important;background:#f3f2ed;display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);align-items:center}.selected-photo[hidden]{display:none!important}.selected-photo img{display:block;width:100%!important;height:auto!important;max-height:480px;object-fit:contain!important;background:#e9e7df}.selected-photo figcaption{padding:30px!important;font-size:15px!important}.selected-photo strong{font-size:24px}.selected-photo figcaption p{margin-top:16px;color:#626660;line-height:1.9}.performance{padding:85px 8%;background:#1b1e1b;color:#f5f4ef}.performance h2{font-size:clamp(30px,3vw,44px);line-height:1.5}.performance .eyebrow{color:#d2b77f}.performance-lead{color:#c3c7bf;margin:24px 0 35px}.performance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.performance article{border-top:1px solid #8e7952;padding-top:24px}.product-tag{font-size:12px;color:#d2b77f}.performance h3{font-size:19px;margin:15px 0}.metric{font-size:54px!important;color:#ddc18a;line-height:1.4}.metric small{font-size:17px;margin-left:7px}.performance article>p:not(.metric){font-size:14px;color:#d0d2cb}.performance details{margin-top:24px;font-size:12px;color:#d0d2cb}.performance summary{cursor:pointer;padding:12px 0;color:#ddc18a}.performance details p{margin:10px 0}.performance details a{text-decoration:underline}.performance-extra{border-top:1px solid #55584d;margin-top:40px;padding-top:18px}.performance-extra p{font-size:14px;color:#d0d2cb}.performance .provided-note{color:#aaaFA5;font-size:11px}.dotcon-main-photo img{object-fit:contain!important;height:auto!important}.special-header nav{flex-wrap:wrap}
@media(max-width:800px){.special-copy{display:block;padding:40px 7%}.special-copy>.button{margin-top:25px}.special-hero figure{margin:0 7% 35px;min-height:0}.special-hero figure>img{height:auto;max-height:none}.selected-photo{grid-template-columns:1fr}.selected-photo figcaption{padding:22px!important}.selected-photo strong{font-size:21px}.photo-buttons{gap:8px}.photo-buttons button{padding:10px 16px}.performance{padding:55px 7%}.performance-grid{grid-template-columns:1fr;gap:32px}.metric{font-size:48px!important}}

/* Consultation draft: clear hierarchy and consistent rhythm. */
.special-copy{align-items:center;grid-template-columns:1fr 1fr;padding-top:60px;padding-bottom:45px}.hero-title h1{margin-bottom:0}.hero-information>p{font-size:16px;line-height:2;color:#ddd}.hero-information>.button{margin-top:24px}.hero-information .operator{margin-top:26px}.special-hero figure{max-width:1200px;width:84%;margin-left:auto;margin-right:auto}.special-intro{padding-bottom:65px}.benefit-links{max-width:1080px;margin:40px auto 0;display:grid;grid-template-columns:repeat(3,1fr);text-align:left;border-top:1px solid #c7baa0;border-bottom:1px solid #c7baa0}.benefit-links a{padding:26px;display:grid;gap:8px}.benefit-links a+a{border-left:1px solid #dcd6c9}.benefit-links span,.guide-grid span{color:#947743;font-size:12px;letter-spacing:.12em}.benefit-links strong{font-size:21px}.benefit-links small{font-size:12px;color:#6c6c61}.benefit-links a:hover{background:#eae7df}.consult-guide{padding:75px 8%;background:#f9f8f4}.consult-guide h2{font-size:clamp(28px,3vw,40px)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.guide-grid article{border-top:1px solid #bba373;padding-top:20px}.guide-grid h3{font-size:18px;margin:12px 0}.guide-grid p{font-size:14px;color:#626660;line-height:1.9}.photo-selector{max-width:1120px;margin:auto}.performance details{line-height:1.9}.performance a:focus-visible,.benefit-links a:focus-visible{outline:2px solid #bba373;outline-offset:4px}
@media(max-width:800px){.hero-information{margin-top:25px}.benefit-links{grid-template-columns:1fr}.benefit-links a{padding:20px}.benefit-links a+a{border-left:0;border-top:1px solid #dcd6c9}.guide-grid{grid-template-columns:1fr;gap:25px}.consult-guide{padding:55px 7%}.hero-title h1{font-size:40px}.special-copy{padding:38px 7%}.hero-information>p{font-size:14px}}

#dotcon .dotcon-main-photo{max-width:600px;width:100%;justify-self:center}#dotcon .dotcon-main-photo img{display:block;width:100%!important;height:auto!important;aspect-ratio:auto;object-fit:contain!important;transform:none!important;position:static!important}#dotcon .dotcon-main-photo figcaption{line-height:1.8}#dotcon .dotcon-main-photo small{font-size:11px;color:#686b63}

/* 景観を含む写真は拡大せず、追加事例は任意で表示 */
.dotcon-example-group{width:100%;max-width:500px;justify-self:center}.dotcon-more-example{margin-top:20px;border-top:1px solid #c7b17e;padding-top:14px}.dotcon-more-example>summary{cursor:pointer;color:#6f592a;font-size:14px;padding:8px 0}.dotcon-more-example[open]>summary{margin-bottom:16px}#dotcon .dotcon-example-group .dotcon-main-photo{margin:0;width:100%;max-width:500px}

.dotcon-stone-design{margin-top:26px;padding-top:22px;border-top:1px solid #d5c49f}.dotcon-stone-design h3{font-size:20px;margin:0 0 12px;color:#292b26}.dotcon-stone-design>p{font-size:14px;line-height:1.9;margin:0 0 18px}.dotcon-stone-details>summary{cursor:pointer;padding:14px 20px;background:#b5985b;color:#171a16;font-size:14px;font-weight:600;border-radius:3px}.dotcon-stone-details>summary:focus-visible{outline:3px solid #252923;outline-offset:4px}.dotcon-stone-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.dotcon-stone-grid figure{margin:0!important;background:#f4f3ee}.dotcon-stone-grid img{display:block;width:100%!important;height:235px!important;object-fit:contain!important;background:#e9e7e0;transform:none!important}.dotcon-stone-grid figcaption{padding:14px!important;font-size:12px!important;line-height:1.8}.dotcon-stone-grid figcaption p{font-size:12px;line-height:1.8;margin:8px 0}.dotcon-stone-grid small,.dotcon-stone-credit{font-size:11px!important;color:#686b63;line-height:1.8}.dotcon-stone-credit{margin-top:14px}@media(max-width:480px){.dotcon-stone-grid{grid-template-columns:1fr}.dotcon-stone-grid img{height:280px!important}}

/* メーカー提供のパートナー施工店ロゴ */
.special-header .special-brand{display:flex;align-items:center;gap:18px;flex-shrink:0;text-decoration:none}.special-header .partner-header-logo{display:block;width:230px;height:auto;object-fit:contain}.special-header .partner-sengi{font-size:22px;white-space:nowrap}.special-header .partner-sengi small{font-size:10px;color:#575b53;letter-spacing:.03em}.special-header{padding-top:14px;padding-bottom:14px}.special-header nav{justify-content:flex-end}@media(max-width:1100px){.special-header{flex-wrap:wrap}.special-header nav{gap:16px}}@media(max-width:600px){.special-header .partner-header-logo{width:190px}.special-header .special-brand{gap:12px}.special-header .partner-sengi{font-size:18px}.special-header .partner-sengi small{font-size:9px}.special-header nav{font-size:11px;gap:12px}}

/* 左はサイト名、右は独立したパートナーロゴ */
.special-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px}.special-header .special-brand{display:block;font-size:24px;line-height:1.4}.special-header .special-brand small{display:block}.special-header .partner-header-right{width:180px;height:auto;justify-self:end}.special-header nav{justify-content:center;gap:18px}@media(max-width:1100px){.special-header{grid-template-columns:1fr auto;gap:12px 20px}.special-header nav{grid-column:1 / -1;grid-row:2;justify-content:center}.special-header .partner-header-right{grid-column:2;grid-row:1}}@media(max-width:600px){.special-header{padding:12px 5%;gap:12px}.special-header .special-brand{font-size:21px}.special-header .special-brand small{font-size:9px;letter-spacing:.02em}.special-header .partner-header-right{width:135px}.special-header nav{gap:12px;font-size:11px}}

/* 円形バッジの比率に合わせたサイズ */
.special-header .partner-header-right{width:82px;height:82px;object-fit:contain}@media(max-width:600px){.special-header .partner-header-right{width:68px;height:68px}}

/* 導入は製品理解を優先し、施工案内はページ末尾へ */
.special-copy .hero-title h1{font-size:clamp(32px,4.2vw,62px);letter-spacing:.025em;line-height:1.5}.special-copy .hero-title .eyebrow{font-size:13px;letter-spacing:.08em}.hero-information>p{font-size:16px;line-height:2}.special-consult .operator{max-width:540px;margin:32px auto;border-top:1px solid #c6b383;padding:24px 0 0;text-align:left;justify-content:center}.special-consult .operator p{margin:0}.special-consult .operator strong{color:#383c32}.special-consult .operator small{color:#64685f}.special-consult .consult-links{margin-top:28px}@media(max-width:600px){.special-copy .hero-title h1{font-size:32px}.hero-information>p{font-size:14px}.special-copy .hero-title .eyebrow{font-size:11px}}

.verification-background{margin-top:46px;padding-top:30px;border-top:1px solid #665b44}.verification-background>h3{font-size:24px;line-height:1.6;margin:10px 0 24px}.verification-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.verification-grid article{padding:24px;background:#242824;border:1px solid #41473e}.verification-grid h4{font-size:18px;margin:14px 0}.verification-grid p{font-size:14px;line-height:1.9;color:#d0d2cb}.verification-grid .expert-names{font-size:21px;color:#e1c792;line-height:1.9;margin:16px 0}.verification-grid a{display:inline-block;color:#ddc18a;text-decoration:underline;font-size:13px;margin-top:16px}.verification-grid small{display:block;color:#aeb4a9;font-size:11px;margin-top:12px}.verification-grid ul{padding-left:20px;line-height:2}.verification-note{font-size:11px;line-height:1.9;color:#aeb4a9;margin-top:18px}@media(max-width:700px){.verification-grid{grid-template-columns:1fr}.verification-background>h3{font-size:21px}}

.technical-certificate{display:grid;grid-template-columns:220px minmax(0,1fr);gap:38px;align-items:center;border-top:1px solid #665b44;margin-top:42px;padding-top:34px}.certificate-preview{display:block;text-align:center;color:#ddc18a;font-size:13px}.certificate-preview img{display:block;width:100%;height:auto;box-shadow:0 8px 24px #0004}.certificate-preview span{display:block;margin-top:12px}.certificate-preview:focus-visible{outline:3px solid #ddc18a;outline-offset:6px}.technical-certificate h3{font-size:26px;line-height:1.6;margin:12px 0}.technical-certificate p{font-size:14px;line-height:1.9;color:#d0d2cb}.technical-certificate dl{font-size:13px;margin:20px 0}.technical-certificate dl>div{display:flex;gap:18px;margin:8px 0}.technical-certificate dt{min-width:70px;color:#ddc18a}.technical-certificate dd{margin:0}.technical-certificate .certificate-note{font-size:11px;color:#aeb4a9}.certificate-source{color:#ddc18a;font-size:13px;text-decoration:underline}@media(max-width:650px){.technical-certificate{grid-template-columns:1fr;gap:24px}.certificate-preview{width:190px;justify-self:center}.technical-certificate h3{font-size:23px}}

/* 説明から写真へ。PCでは幅を揃えた落ち着いた構成 */
.special-copy{max-width:1160px;margin:auto;width:100%;padding:58px 28px 32px;grid-template-columns:1.2fr 1fr;align-items:center;gap:40px}.special-copy .hero-title h1{font-size:clamp(32px,3.8vw,54px)}
.rain-comparison{max-width:1104px;margin:0 auto;padding:12px 28px 44px;width:100%;box-sizing:border-box}.rain-comparison-heading{margin-bottom:20px}.rain-comparison-heading h2{font-size:25px;line-height:1.6}.rain-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.special-hero .rain-comparison figure{margin:0;min-height:0;background:#242824}.special-hero .rain-comparison figure>img{display:block;position:static;width:100%;height:auto;max-height:none;object-fit:contain}.special-hero .rain-comparison figcaption{position:static;padding:15px 18px;background:transparent;font-size:14px;display:flex;gap:15px;align-items:center}.rain-comparison figcaption strong{color:#ddc18a;white-space:nowrap}.rain-comparison-note{font-size:11px;color:#afb6aa;line-height:1.8;margin-top:14px}
#dotcon.dotcon{display:flex;flex-direction:column;gap:36px;max-width:1160px;margin:0 auto;padding:72px 28px;box-sizing:border-box}#dotcon .dotcon-intro{max-width:760px;width:100%;align-self:center}#dotcon .dotcon-example-group{max-width:760px;align-self:center}#dotcon .dotcon-main-photo,#dotcon .dotcon-example-group .dotcon-main-photo{max-width:640px;margin:0 auto!important}#dotcon .dotcon-main-photo img{max-height:510px;object-fit:contain!important}#dotcon .dotcon-details,#dotcon .dotcon-plus-showcase{width:100%;grid-column:auto}
.selected-photo{grid-template-columns:1fr}.selected-photo figcaption{padding:24px 28px!important}.selected-photo img{max-height:460px;width:100%!important;object-fit:contain!important}.performance,.finish-gallery,.consult-guide{padding-left:max(28px,calc((100% - 1104px)/2));padding-right:max(28px,calc((100% - 1104px)/2))}.technical-certificate{display:flex;flex-direction:column;align-items:stretch;gap:24px}.technical-certificate .certificate-preview{width:220px;align-self:center}.wide-finish{grid-template-columns:1fr;gap:0}.wide-finish>div{grid-row:1;padding:32px}.wide-finish img{width:100%;height:auto;min-height:0;max-height:460px;object-fit:contain}
@media(max-width:750px){.special-copy{grid-template-columns:1fr;padding:34px 22px 20px;gap:20px}.rain-comparison{padding:12px 22px 32px}.rain-comparison-grid{grid-template-columns:1fr}.rain-comparison-heading h2{font-size:22px}.special-hero .rain-comparison figcaption{font-size:12px}#dotcon.dotcon{padding:48px 22px;gap:28px}.performance,.finish-gallery,.consult-guide{padding-left:22px;padding-right:22px}.performance-grid{grid-template-columns:1fr}.gallery-heading{display:block}.gallery-heading>p{margin-top:20px}}

#dotcon .dotcon-intro h1{font-size:clamp(38px,5vw,64px);line-height:1.5;letter-spacing:.04em;margin:20px 0}.former-hero-heading{font-size:clamp(30px,3.8vw,54px);line-height:1.5;letter-spacing:.025em;margin-bottom:24px}#top{scroll-margin-top:120px}

.header-brand-group{display:flex;align-items:center;gap:22px;min-width:0}.header-product-logos{display:flex;align-items:center;gap:16px;padding-left:22px;border-left:1px solid #ddd5c5}.header-product-logos>img{display:block;width:105px;height:auto;object-fit:contain}.header-product-logos .dotcon-plus-logo.compact{width:110px}@media(max-width:1250px){.special-header{grid-template-columns:1fr auto}.special-header nav{grid-column:1 / -1;grid-row:2}.special-header .partner-header-right{grid-column:2;grid-row:1}}@media(max-width:650px){.header-brand-group{flex-wrap:wrap;gap:10px}.header-product-logos{padding-left:0;border:0;gap:14px}.header-product-logos>img{width:82px}.header-product-logos .dotcon-plus-logo.compact{width:90px}.special-header .partner-header-right{align-self:start}}

.committee-original{margin-top:20px}.committee-original>summary{color:#ddc18a;cursor:pointer;text-decoration:underline;padding:12px 0}.document-image-scroll{overflow:auto;max-height:650px;background:#fff;border:1px solid #aaa;padding:6px}.document-image-scroll img{display:block;width:100%;min-width:620px;height:auto;max-width:none;margin:0 auto 12px}.committee-original[open]{grid-column:1/-1}

/* Decorative stone copy and footer contact readability */
.dotcon-stone-design{padding:28px;background:#f4f3ee;color:#292b26;border-top:2px solid #b99b61;border-radius:3px}
.dotcon-stone-design h3{font-size:26px;line-height:1.6;font-weight:700;margin-bottom:16px;color:#292b26}
.dotcon-stone-design>p{font-size:16px;line-height:1.9;color:#383c35}
.dotcon-stone-grid figcaption{color:#292b26}
.footer-contact{display:grid;gap:6px;margin-top:16px}
.special-footer .footer-contact a{display:flex;align-items:center;gap:12px;min-height:44px;width:fit-content;color:inherit;font-size:16px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.footer-contact span{font-size:11px;letter-spacing:.1em;min-width:38px;color:#d2b77f}
@media(max-width:480px){.dotcon-stone-design{padding:22px 18px}.dotcon-stone-design h3{font-size:22px}.dotcon-stone-design>p{font-size:15px}.special-footer .footer-contact a{font-size:14px}}


/* Product introduction and use cases */
#dotcon .product-opening{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;width:100%;padding-bottom:32px}
#dotcon .product-opening .dotcon-intro{max-width:none}
.opening-photo{margin:0;min-width:0}
#dotcon .opening-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;height:auto;max-height:none}
.opening-photo figcaption{font-size:12px;color:#c3c9c0;line-height:1.8;text-align:center;margin-top:20px}
.scene-section{width:100%;padding:48px 30px;background:#f6f5f0;color:#252923;border-radius:8px}
.scene-section>.eyebrow{color:#806437;margin-bottom:12px}
.scene-section h2{font-size:clamp(25px,3vw,36px);letter-spacing:.02em;line-height:1.6}
.scene-lead{margin-top:16px;font-size:16px;color:#50584e;line-height:1.9}
.scene-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:36px}
.scene-card{display:flex;flex-direction:column;min-width:0}
.scene-photo{width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;margin-bottom:22px;background:#e5e3dc}
#dotcon .scene-photo img{width:100%;height:100%;object-fit:cover;max-width:none}
#dotcon .scene-0 img{object-position:50% 80%;transform:scale(1.25)}
#dotcon .scene-2 img{object-position:75% 88%;transform:scale(1.75);transform-origin:75% 88%}
.scene-card h3{font-size:18px;color:#252923;line-height:1.6;margin:0 0 12px}
.scene-card>p{font-size:14px;line-height:1.9;color:#50584e;margin:0 0 20px}
.scene-card>a{margin-top:auto;display:flex;justify-content:space-between;align-items:center;min-height:46px;border-bottom:1px solid #a88c58;font-size:13px;font-weight:600;color:#604a26;gap:8px}
.scene-card>a:hover{color:#171918;background:#ebe6da}
.scene-note{font-size:11px;line-height:1.8;color:#65695f;margin-top:30px}
#scenes,#product-design,#rain-comparison{scroll-margin-top:150px}
@media(max-width:1000px){.scene-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.scene-photo{max-width:230px;align-self:center}.product-opening{gap:28px!important}}
@media(max-width:650px){#dotcon .product-opening{grid-template-columns:1fr;gap:28px;padding-bottom:8px}.opening-photo{max-width:330px;margin:auto}.scene-section{padding:30px 18px}.scene-grid{gap:28px 18px}.scene-card h3{font-size:16px}.scene-card>p{font-size:13px}.scene-card>a{font-size:12px}.scene-lead{font-size:14px}.scene-photo{margin-bottom:16px}}


/* Separate photographs for each use-case card. */
#dotcon .scene-photo img{object-position:center;transform:none;transform-origin:center}

/* Readable, touch-friendly finish selectors on both dark and light sections. */
.dotcon-site .photo-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 18px}
.dotcon-site .photo-buttons button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:58px;padding:14px 16px;border:2px solid #c2b38f;border-radius:6px;background:#f7f5ef;color:#272b25;font-size:17px;font-weight:700;line-height:1.5;box-shadow:none}
.dotcon-site .photo-buttons button[aria-pressed="true"]{background:#d2b77f;border-color:#d2b77f;color:#171918;box-shadow:inset 0 -3px 0 #90703c}
.dotcon-site .photo-buttons button[aria-pressed="true"]::before{content:'✓';font-size:16px}
.dotcon-site .photo-buttons button:hover{border-color:#967337;background:#e9dcc0;color:#171918}
.dotcon-site .photo-buttons button:focus-visible{outline:3px solid #b99b61;outline-offset:4px}
.dotcon-site .selected-photo figcaption{color:#272b25;background:#f3f2ed}
.dotcon-site .selected-photo figcaption strong{color:#272b25}
.dotcon-site .selected-photo figcaption p{color:#50564c}
@media(max-width:600px){.dotcon-site .photo-buttons{gap:8px}.dotcon-site .photo-buttons button{min-height:54px;padding:12px 6px;font-size:14px;gap:4px}.dotcon-site .photo-buttons button[aria-pressed="true"]::before{font-size:12px}}


/* Reference estimate: distinguish manufacturer figures from installed cost. */
.cost-guide{padding:72px max(28px,calc((100% - 1104px)/2));background:#fff;color:#252923}
.cost-guide>.eyebrow{color:#806437;margin-bottom:14px}
.cost-guide h2{font-size:clamp(26px,3vw,38px);line-height:1.6;letter-spacing:.025em}
.cost-lead{margin:20px 0 26px;max-width:780px;line-height:1.9}
.cost-guide>.button{white-space:normal;line-height:1.6}
.cost-notice{margin-top:30px;padding:26px 30px;background:#f5f3ed;border-left:3px solid #b99b61}
.cost-notice h3{font-size:19px;line-height:1.6;margin-bottom:14px}
.cost-notice p{font-size:14px;line-height:1.9;color:#4a5047}
.cost-notice p+p{margin-top:12px}
.cost-value{margin-top:24px;font-size:15px;line-height:1.9;max-width:820px}
.cost-consult{display:inline-block;padding:14px 0;color:#71572a;font-weight:600;text-decoration:underline;text-underline-offset:5px}
@media(max-width:650px){.cost-guide{padding:48px 22px}.cost-notice{padding:22px 18px}.cost-guide>.button{font-size:14px;padding:16px}.cost-consult{font-size:14px}}


/* Separate business and residential motivations. */
.purpose-section{width:100%;padding:32px 0 20px}
.purpose-section>.eyebrow{color:#d2b77f}
.purpose-section>h2{font-size:clamp(26px,3vw,38px);line-height:1.6;letter-spacing:.025em}
.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:30px}
.purpose-grid article{display:flex;flex-direction:column;padding:30px;background:#242924;border-top:2px solid #b99b61;border-radius:4px}
.purpose-label{font-size:13px;color:#ddc18a;margin-bottom:18px}
.purpose-grid h3{font-size:clamp(23px,2.5vw,30px);line-height:1.6;color:#fff;margin-bottom:18px}
.purpose-grid article>p:not(.purpose-label){font-size:15px;line-height:1.9;color:#e0e4dc}
#dotcon .purpose-grid ul{margin:22px 0;padding:0;list-style:none}
#dotcon .purpose-grid li{padding:8px 0;border:0;font-size:14px;line-height:1.7;color:#e0e4dc;display:block}
#dotcon .purpose-grid li::before{content:'・';color:#ddc18a}
.purpose-grid a{display:flex;justify-content:space-between;gap:14px;margin-top:auto;padding:15px 0;color:#ddc18a;border-bottom:1px solid #8e7952;font-size:15px;font-weight:600}
#business-scenes,#home-scene{scroll-margin-top:160px}
@media(max-width:700px){.purpose-grid{grid-template-columns:1fr;gap:20px}.purpose-grid article{padding:24px 20px}.purpose-section{padding-top:12px}}


/* Wide opening photograph: show the paving design without a circular crop. */
#dotcon .product-opening{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:36px}
#dotcon .opening-photo{max-width:none;width:100%;margin:0}
#dotcon .opening-photo img{aspect-ratio:1.5;border-radius:8px;width:100%;height:auto;object-fit:cover;object-position:center 75%}
#dotcon .opening-photo figcaption{text-align:left;margin-top:16px}
@media(max-width:750px){#dotcon .product-opening{grid-template-columns:1fr}#dotcon .opening-photo img{aspect-ratio:1.65}}


/* Shorter reading path with direct access to price and evidence. */
.explore-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;margin:0 0 8px}
.explore-links a{display:flex;align-items:center;gap:12px;min-height:64px;padding:16px;background:#f4f1e9;color:#272b25;border-radius:4px;font-size:15px;font-weight:700}
.explore-links small{color:#806437;font-size:11px}.explore-links span{margin-left:auto;color:#806437}.explore-links a:hover{background:#ddc18a}
#dotcon .opening-photo img{aspect-ratio:1.9;object-fit:cover;object-position:center bottom;border-radius:6px}
#about-dotcon{scroll-margin-top:150px}
@media(max-width:750px){.explore-links{grid-template-columns:1fr 1fr;gap:8px}.explore-links a{font-size:14px;padding:13px;min-height:56px}}

/* SENGI light presentation: photographs first, restrained black and gold. */
.dotcon-site{background:#fffefa;color:#242624;--warm-paper:#f7f5ef;--reading-ink:#50564e;--accent-ink:#796035}
.dotcon-site .special-header{background:#fffefa;border-bottom:1px solid #e6dfd1}
#dotcon.dotcon{background:transparent;color:#242624}
#dotcon .eyebrow,#dotcon .dotcon-sub,#dotcon li>span{color:#796035}
#dotcon .dotcon-intro>p:not(.eyebrow):not(.dotcon-name),#dotcon li p,#dotcon .dotcon-note{color:#50564e}
#dotcon .opening-photo figcaption,#dotcon .dotcon-photo figcaption{color:#60665c}
#dotcon .dotcon-photo figcaption strong,#dotcon .dotcon-plus-showcase h3,#dotcon .plus-pattern-title{color:#242624}
#dotcon .dotcon-plus-showcase>p:not(.dotcon-note){color:#50564e}
#dotcon .dotcon-plus-showcase .plus-image-credit{color:#666c62}
#dotcon .dotcon-details,#dotcon li{border-color:#dfd8cb}
#dotcon .dotcon-details{padding:28px;background:#f7f5ef;border-top:1px solid #d4bd8d;border-radius:6px}
#dotcon .dotcon-details ol{margin-top:12px}
#dotcon .plus-design-message{background:#f7f5ef;border-color:#b99b61}
#dotcon .plus-design-message h4{color:#242624}
#dotcon .plus-design-message p{color:#50564e}
.scene-section{background:#f5f2ea;border-radius:8px}
.explore-links a{background:#fff;border:1px solid #dfd5bf}
.dotcon-stone-design{background:#f7f5ef}
.dotcon-site .special-hero{background:#f5f3ed;color:#242624}
.special-copy .eyebrow{color:#796035}
.hero-information>p{color:#50564e}
.special-hero .rain-comparison figure{background:#fff;width:100%;border-radius:6px;overflow:hidden}
.special-hero .rain-comparison figure>img{background:#fff}
.rain-comparison figcaption strong{color:#796035}
.rain-comparison-note{color:#666c62}
.finish-gallery{background:#fffefa}
.dotcon-site .selected-photo,.dotcon-site .selected-photo figcaption{background:#f7f5ef}
.dotcon-site .selected-photo img{background:#fffefa}
.performance{background:#f5f3ed;color:#242624}
.performance .eyebrow,.performance .product-tag,.performance summary,.performance .metric{color:#796035}
.performance-lead,.performance article>p:not(.metric),.performance details,.performance-extra p,.performance .provided-note{color:#50564e}
.performance article,.performance-extra,.technical-certificate,.verification-background{border-color:#d3c5a9}
.verification-grid article{background:#fffefa;border-color:#e0d8c9}
.verification-grid p,.technical-certificate p{color:#50564e}
.verification-grid .expert-names,.verification-grid a,.technical-certificate dt,.certificate-source,.certificate-preview,.committee-original>summary{color:#796035}
.verification-grid small,.verification-note,.technical-certificate .certificate-note{color:#666c62}
.certificate-preview img{box-shadow:0 5px 20px #33281412}
.cost-guide{background:#fffefa}.consult-guide{background:#f7f5ef}.special-consult{background:#eee9dd}
.dotcon-site .button.gold{background:#d2b77f;color:#171918;border-color:#d2b77f}
.dotcon-site .button.gold:hover{background:#e0c997}
.dotcon-site .special-footer{background:#171918;color:#fff}
@media(max-width:650px){#dotcon .dotcon-details{padding:22px 18px}}


/* Finished scene first, actual examples on request. */
.opening-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.opening-actions .button{padding:13px 18px;min-height:50px;font-size:13px}.opening-actions .example-button{border-color:#b99b61;color:#66502d;background:#fff}
.actual-case-disclosure{width:100%;margin-top:24px}.actual-case-disclosure>summary,#installation-examples>summary{cursor:pointer;padding:18px 22px;border:1px solid #b99b61;background:#fff;color:#66502d;font-weight:600;list-style-position:inside}.actual-case-disclosure[open]>summary{margin-bottom:24px}
#installation-examples{scroll-margin-top:120px}#dotcon .opening-photo img{aspect-ratio:1.5;object-position:center}


.entry-strengths{font-size:13px;color:#66502d;margin:12px 0!important;line-height:1.9}.entry-proof{display:inline-block;margin-bottom:20px;font-size:13px;text-decoration:underline;text-underline-offset:4px}


.dotcon-strengths{margin:54px 0;padding:32px;background:#f7f4ec;border-radius:8px}.dotcon-strengths h2{font-size:clamp(24px,2.8vw,36px);color:#242821;line-height:1.6}#strength-title{scroll-margin-top:130px}.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:28px}.strength-grid article{border-top:2px solid #b99b61;padding-top:18px}.strength-grid article>span{font-size:11px;color:#806337}.strength-grid h3{font-size:20px;margin:12px 0;color:#242821}.strength-grid p,.paving-choice p{font-size:14px;color:#555b50;line-height:1.9}.strength-grid a{display:inline-block;font-size:12px;color:#806337;text-decoration:underline;margin-top:15px}.strength-note{font-size:11px!important;line-height:1.8;color:#707267!important;margin-top:24px!important}.paving-choice{margin-top:22px;border-top:1px solid #dcd6c8;padding-top:18px}.paving-choice summary{cursor:pointer;color:#66502d;font-size:14px;font-weight:600}.paving-choice p{margin-top:14px}@media(max-width:750px){.dotcon-strengths{padding:24px 20px}.strength-grid{grid-template-columns:1fr;gap:24px}}


/* Recognize the product and its benefits at a glance. */
#dotcon .product-definition{font-size:clamp(15px,1.5vw,19px);font-weight:600;color:#806337;line-height:1.7;border-left:3px solid #b99b61;padding-left:14px;margin:20px 0 16px}
#dotcon .dotcon-intro h1{font-size:clamp(32px,3.65vw,55px);font-weight:700;line-height:1.45;letter-spacing:-.025em;margin:18px 0 20px}#dotcon .dotcon-intro h1 span{color:#806337}#dotcon .dotcon-intro .dotcon-name{font-size:15px;letter-spacing:.09em}#dotcon .dotcon-intro .dotcon-note{font-size:12px;line-height:1.8;margin-top:16px}
.dotcon-strengths{padding:40px 32px}.dotcon-strengths h2{font-size:clamp(28px,3.2vw,44px);font-weight:700;letter-spacing:.01em}.strength-grid{gap:18px}.strength-grid article{background:#fff;border-top:4px solid #b99b61;padding:24px 20px;border-radius:0 0 6px 6px}.strength-grid h3{margin:16px 0}.strength-grid h3 strong{display:block;font-size:clamp(25px,2.5vw,36px);font-weight:700;color:#806337;letter-spacing:-.03em;line-height:1.4}.strength-grid h3 small{display:block;font-size:15px;font-weight:600;color:#33392f;margin-top:9px}.strength-grid p{font-size:13px}
@media(max-width:750px){#dotcon .dotcon-intro h1{font-size:clamp(30px,7.5vw,44px)}.dotcon-strengths{padding:28px 18px}.strength-grid h3 strong{font-size:30px}.strength-grid article{padding:22px}.dotcon-strengths h2{font-size:28px}}


/* Four benefits with enough space for each headline. */
.strength-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#flat-planning{scroll-margin-top:125px}@media(max-width:750px){.strength-grid{grid-template-columns:1fr}}


/* Let the finished photograph introduce the page before any long copy. */
#dotcon .product-opening.photo-first-opening{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px 40px;align-items:start}
.photo-first-opening>.finished-entry-photo{grid-column:1/-1;width:100%;position:relative}
.photo-first-opening>.finished-entry-photo img{width:100%;height:clamp(320px,40vw,540px);aspect-ratio:auto;object-fit:cover;object-position:center 48%;border-radius:8px}
.photo-first-opening>.finished-entry-photo figcaption{position:absolute;right:12px;bottom:10px;padding:4px 8px;background:#ffffffd9;border-radius:3px;color:#504f48!important}
#dotcon .photo-first-opening .dotcon-intro h1{font-size:clamp(29px,3vw,43px);margin:12px 0 16px}
.photo-first-opening .section-logo-heading{margin-bottom:12px}.photo-first-opening .section-logo-heading .eyebrow{margin-bottom:0}
#dotcon .photo-first-opening .product-definition{margin:12px 0;font-size:16px}
.photo-first-opening>.finished-entry{padding-top:24px}.photo-first-opening .finished-entry-message{font-size:clamp(21px,2.2vw,29px);margin-top:0!important}
@media(max-width:750px){#dotcon .product-opening.photo-first-opening{grid-template-columns:1fr;gap:20px}.photo-first-opening>.finished-entry-photo{grid-column:1}.photo-first-opening>.finished-entry-photo img{height:clamp(260px,75vw,400px);object-position:center}.photo-first-opening>.finished-entry{padding-top:0}#dotcon .photo-first-opening .dotcon-intro h1{font-size:clamp(29px,7vw,40px)}}


/* Photo-led introduction: one message, one next step. */
#dotcon.section{padding-top:28px}
#dotcon .product-opening.photo-first-opening{display:block;padding-bottom:0}
.photo-first-opening>.finished-entry-photo{isolation:isolate;overflow:hidden;border-radius:8px}
.photo-first-opening>.finished-entry-photo img{height:clamp(380px,43vw,590px);border-radius:0;object-position:center 48%}
.photo-first-opening>.finished-entry-photo:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(15,24,18,.72));z-index:1;pointer-events:none}
.opening-photo-copy{position:absolute;left:5%;right:5%;bottom:44px;z-index:2;color:white}
.opening-photo-copy>p{font-size:12px;letter-spacing:.1em;color:#f5ead1;margin-bottom:12px}
#dotcon .opening-photo-copy h1{font-size:clamp(26px,3.1vw,44px);font-weight:600;line-height:1.55;letter-spacing:.015em;margin:0;color:#fff}
.opening-photo-copy>a{display:inline-flex;gap:28px;align-items:center;margin-top:18px;font-size:13px;color:#fff;border-bottom:1px solid #d2b77f;padding-bottom:5px}
.photo-first-opening>.finished-entry-photo figcaption{z-index:3;font-size:10px!important;bottom:8px;right:10px;background:transparent;color:#fff!important}
.opening-brief{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:26px 0;border-bottom:1px solid #ded8ca}.opening-brief p{font-size:14px;color:#62675b;line-height:1.9}.opening-brief strong{font-size:18px;color:#30372d}.opening-brief .button{flex-shrink:0;font-size:13px}
.dotcon-strengths{margin-top:38px}.opening-real-cases{margin:24px 0 32px}.opening-real-cases .real-case-toggle>summary{background:#f7f4ec}
@media(max-width:750px){#dotcon.section{padding-top:16px}.photo-first-opening>.finished-entry-photo img{height:440px;object-position:57% center}.opening-photo-copy{bottom:44px;left:6%;right:6%}#dotcon .opening-photo-copy h1{font-size:clamp(24px,5.7vw,34px);line-height:1.6}.opening-photo-copy>p{font-size:10px}.opening-brief{display:block;padding:22px 0}.opening-brief strong{font-size:16px}.opening-brief .button{margin-top:18px}.dotcon-strengths h2{font-size:25px}}


/* Readable text; gold remains an accent on borders and buttons. */
.dotcon-site .strength-grid h3 strong,
.dotcon-site .performance .metric,
.dotcon-site .finished-entry-message{color:#252c26}
.dotcon-site .eyebrow,
.dotcon-site .strength-grid article>span,
.dotcon-site .strength-grid a,
.dotcon-site .performance .product-tag,
.dotcon-site .performance summary,
.dotcon-site .verification-grid a,
.dotcon-site .verification-grid .expert-names,
.dotcon-site .technical-certificate dt,
.dotcon-site .certificate-source,
.dotcon-site .certificate-preview,
.dotcon-site .committee-original>summary,
.dotcon-site .paving-choice summary{color:#594526}
.dotcon-site .opening-photo-copy>p{color:#fff;text-shadow:0 1px 4px #0009}
.dotcon-site .opening-photo-copy h1,
.dotcon-site .opening-photo-copy>a{color:#fff;text-shadow:0 1px 5px #0008}


/* Always-visible feature imagery */
.feature-photo-story{margin:48px 0 56px}.feature-photo-story>h2{font-size:clamp(26px,3vw,42px);line-height:1.4;color:#252c26;margin:12px 0 26px}.feature-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.feature-photo-grid article{min-width:0}.feature-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:12px}.feature-photo-grid h3{font-size:clamp(19px,1.6vw,24px);line-height:1.5;margin:18px 0 10px;color:#252c26}.feature-photo-grid p{font-size:15px;line-height:1.9;color:#485049}.feature-photo-note{font-size:12px;line-height:1.8;color:#62685e;margin-top:22px}@media(max-width:760px){.feature-photo-grid{grid-template-columns:1fr;gap:28px}.feature-photo-story{margin:32px 0}.feature-photo-grid h3{font-size:23px}}


/* Feature section title and supporting copy */
.feature-photo-heading{margin:0 0 28px;padding:0 0 22px;border-bottom:1px solid #d9cfba}.feature-photo-heading h2{margin:0;color:#252c26;font-size:clamp(32px,3.7vw,50px);font-weight:700;line-height:1.25;letter-spacing:.035em}.feature-photo-heading p{margin:12px 0 0;color:#596055;font-size:clamp(14px,1.35vw,17px);line-height:1.8}@media(max-width:760px){.feature-photo-heading{margin-bottom:22px;padding-bottom:18px}.feature-photo-heading h2{font-size:32px}.feature-photo-heading p{max-width:25em;font-size:14px}}


/* A single headline above the scene */
.photo-first-opening .opening-photo-copy{top:9%;bottom:auto;left:5%;right:5%}#dotcon .opening-photo-copy h1{font-size:clamp(34px,5.3vw,72px);line-height:1.3;letter-spacing:.045em;font-weight:600;color:#fff;text-shadow:0 2px 12px #0006}.photo-first-opening>.finished-entry-photo:after{inset:0;background:linear-gradient(to bottom,rgba(15,24,18,.48),rgba(15,24,18,.13) 32%,transparent 58%)}.photo-first-opening>.finished-entry-photo figcaption{text-shadow:0 1px 4px #0009}@media(max-width:750px){.photo-first-opening .opening-photo-copy{top:8%;left:6%;right:6%}#dotcon .opening-photo-copy h1{font-size:clamp(27px,6.8vw,44px);letter-spacing:.015em;line-height:1.4}}


/* Quiet editorial hero: one distinctive phrase, generous breathing room. */
.photo-first-opening .opening-photo-copy{top:10%;left:6%;right:6%;text-align:center}
#dotcon .opening-photo-copy h1{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:clamp(34px,4.8vw,66px);font-weight:500;letter-spacing:.14em;line-height:1.5;text-shadow:0 2px 16px rgba(0,0,0,.4)}
.photo-first-opening .opening-photo-copy:after{content:"";display:block;width:48px;height:2px;background:#c7ae72;margin:22px auto 0}
.photo-first-opening>.finished-entry-photo:after{background:linear-gradient(to bottom,rgba(17,27,24,.52),rgba(17,27,24,.16) 38%,transparent 68%)}
@media(max-width:750px){.photo-first-opening .opening-photo-copy{top:10%;left:4%;right:4%}#dotcon .opening-photo-copy h1{font-size:clamp(26px,6.6vw,42px);letter-spacing:.065em}.photo-first-opening .opening-photo-copy:after{width:34px;margin-top:16px}}


.feature-more{margin-top:28px;border:1px solid #c7ae72;border-radius:8px;overflow:hidden}.feature-more>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;list-style:none;background:#b79a5b;color:#171e19;padding:18px 24px;font-size:16px;font-weight:600}.feature-more>summary::-webkit-details-marker{display:none}.feature-more>summary span{font-size:24px;transition:transform .2s}.feature-more[open]>summary span{transform:rotate(45deg)}.feature-more>summary:focus-visible{outline:3px solid #253c42;outline-offset:-4px}.feature-more>.dotcon-strengths{margin:0;padding:24px;background:#faf8f2}.feature-more .strength-grid h3 strong{font-size:clamp(23px,2.4vw,32px)}@media(max-width:750px){.feature-more>summary{padding:16px;font-size:15px}.feature-more>.dotcon-strengths{padding:16px}}


/* Dotcon feature photos echo its circular openings; Plus stays rectangular. */
.feature-photo-grid article:nth-child(n+2)>img{aspect-ratio:1;width:100%;height:auto;border-radius:50%;object-fit:cover;object-position:50% 65%}
.feature-photo-grid article:first-child>img{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:12px}
.dotcon-site .selected-photo,.dotcon-site .selected-photo img{border-radius:0}
#dotcon .scene-photo{border-radius:0}


/* Three functions, headline only. */
.photo-first-opening .opening-photo-copy{top:8%;left:6%;right:6%;text-align:left}#dotcon .opening-photo-copy h1{font-size:clamp(32px,4.4vw,60px);line-height:1.6;letter-spacing:.055em}.opening-photo-copy h1 span{display:block}.photo-first-opening .opening-photo-copy:after{display:none}.photo-first-opening>.finished-entry-photo:after{background:linear-gradient(110deg,rgba(17,27,24,.58),rgba(17,27,24,.18) 57%,transparent)}@media(max-width:750px){.photo-first-opening .opening-photo-copy{top:9%;left:6%;right:5%}#dotcon .opening-photo-copy h1{font-size:clamp(25px,6.3vw,38px);line-height:1.7;letter-spacing:.025em}}


/* Separate the headline, lower-right functions, and external image caption. */
.photo-first-opening>.finished-entry-photo{overflow:visible;border-radius:0}.photo-first-opening>.finished-entry-photo:after{display:none}.hero-photo-frame{position:relative;isolation:isolate;overflow:hidden;border-radius:8px}.hero-photo-frame:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(120deg,rgba(17,27,24,.48),transparent 65%),linear-gradient(0deg,rgba(17,27,24,.55),transparent 48%)}.dotcon-site .hero-photo-frame>.hero-functions{position:absolute;z-index:2;bottom:7%;right:6%;left:auto;margin:0;text-align:right;font-size:clamp(19px,2.2vw,29px);font-weight:500;line-height:1.8;letter-spacing:.045em;color:#fff;text-shadow:0 1px 8px #0006}.hero-photo-frame>.hero-functions span{display:block}.photo-first-opening>.finished-entry-photo figcaption{position:static!important;display:block;padding:8px 0 0!important;margin:0;background:transparent!important;color:#6a6d66!important;text-align:right;font-size:11px!important;line-height:1.5;text-shadow:none;border-radius:0}@media(max-width:750px){.dotcon-site .hero-photo-frame>.hero-functions{right:6%;bottom:7%;font-size:19px;line-height:1.85}}


.feature-photo-grid article:nth-child(2)>img{object-position:64% 45%}.feature-photo-grid article:nth-child(3)>img{object-position:50% 55%}


.feature-more .strength-grid article{padding:22px;background:#fff;border-top:2px solid #b79a5b}.feature-more .strength-grid h3{font-size:24px;line-height:1.5;margin:14px 0}.feature-more .strength-grid .benefit-key{font-size:18px;font-weight:600;color:#27342c;line-height:1.65}.feature-more .strength-grid p{font-size:15px;line-height:1.9}.feature-more .benefit-condition{display:block;font-size:12px;line-height:1.8;color:#62685e;margin:12px 0 18px}.feature-more .strength-grid a{display:inline-block;font-size:14px;line-height:1.7;padding:8px 0;text-decoration:underline;text-underline-offset:4px}


/* Let the work and photographs lead the company introduction. */
body:not(.dotcon-site) #services .section-heading{margin-bottom:28px;gap:32px;align-items:center}
body:not(.dotcon-site) #services .section-heading .eyebrow{font-size:13px;letter-spacing:.14em;margin-bottom:14px}
body:not(.dotcon-site) #services .section-heading h2{font-size:clamp(28px,3.3vw,44px);line-height:1.3}
.business-tagline{font-size:15px;line-height:1.8;margin-top:14px;color:#62645c}
body:not(.dotcon-site) #services .heading-description p{font-size:14px;line-height:1.9}
.work-toggle .work-preview{display:block;width:180px;height:120px;object-fit:cover;flex-shrink:0;border-radius:3px}
.work-toggle .work-summary-text{flex:1}
@media(max-width:600px){.work-toggle{gap:14px}.work-toggle .work-preview{width:100px;height:84px}.work-toggle .work-summary-text{font-size:17px}.work-toggle small{font-size:12px;line-height:1.6}body:not(.dotcon-site) #services .section-heading{gap:18px;margin-bottom:24px}}


.opening-photo-copy .opening-benefit{margin:20px 0 0;color:#fff;font-size:clamp(15px,1.7vw,23px);line-height:1.8;font-weight:500;text-shadow:0 2px 12px #0009}
.opening-photo-copy .opening-benefit span{display:block;margin-top:8px;font-size:clamp(20px,2.3vw,31px);font-weight:700;line-height:1.5;letter-spacing:.035em}
@media(max-width:600px){.opening-photo-copy .opening-benefit{margin-top:12px;font-size:14px;line-height:1.7}}


html{scroll-padding-top:var(--anchor-offset,180px)}
main [id]{scroll-margin-top:0!important}


.contact-guide{padding:32px;background:#fff;border:1px solid #d9cfba;color:#30372f}.contact-guide h3{font-size:25px;line-height:1.6;margin-bottom:16px}.contact-guide>p,.contact-guide li{font-size:14px;line-height:1.9}.contact-guide ul{padding-left:22px;margin:20px 0}.contact-guide .button{margin-top:24px}.contact-guide .contact-mail-note{font-size:12px;margin-top:12px;overflow-wrap:anywhere}.contact-guide .eyebrow{margin-bottom:12px}


#scenes .scene-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}#dotcon #scenes .scene-photo{aspect-ratio:3/2;max-width:none;width:100%;border-radius:8px;margin-bottom:18px}#dotcon #scenes .scene-photo img{object-position:center}#scenes .scene-card h3{font-size:21px}#scenes .eyebrow{font-size:13px;letter-spacing:.1em}#scenes .scene-note{margin-top:24px}@media(max-width:600px){#scenes .scene-grid{grid-template-columns:1fr;gap:30px}#scenes .scene-card h3{font-size:19px}}


.scene-product-group+.scene-product-group{margin-top:42px;padding-top:34px;border-top:1px solid #d8cbb1}.scene-product-heading{margin:24px 0}.scene-product-name{display:block;font-size:23px;font-weight:700;color:#806337;letter-spacing:.02em;margin-bottom:8px}#scenes .scene-product-heading h3{font-size:24px;line-height:1.5;margin:0 0 8px}#scenes .scene-product-heading p{font-size:14px;color:#565b54;line-height:1.8}@media(max-width:600px){#scenes .scene-product-heading h3{font-size:21px}.scene-product-name{font-size:21px}}

#dotcon .opening-photo-copy h1{font-size:clamp(34px,4.8vw,66px);line-height:1.45;letter-spacing:.09em}.dotcon-site .opening-photo-copy .hero-functions{margin:22px 0 0;font-size:clamp(17px,1.9vw,26px);font-weight:500;line-height:1.9;letter-spacing:.035em;color:#fff;text-shadow:0 1px 8px #0008}.hero-functions span{display:inline-block}@media(max-width:750px){#dotcon .opening-photo-copy h1{font-size:clamp(26px,6.5vw,40px);letter-spacing:.03em}.dotcon-site .opening-photo-copy .hero-functions{margin-top:18px;font-size:18px;line-height:1.9}.hero-functions span{display:block}}
.official-water-card small{display:block;font-size:11px;color:#62685e;margin-top:10px}.official-water-card>a{display:inline-block;font-size:13px;text-decoration:underline;margin-top:8px;color:#594526}.feature-photo-grid article.official-water-card>img{aspect-ratio:1;object-fit:contain;background:white}

/* Manufacturer diagram and distinct water-performance measures. */
.feature-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.feature-photo-grid .official-water-card{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:38px;padding:30px;background:#fff;border:1px solid #dedbd2;border-radius:10px;align-items:center}
.official-water-figure img{display:block;width:100%;height:auto;object-fit:contain}
.official-water-figure small{font-size:11px;line-height:1.7;margin-top:14px;color:#64675e}
#dotcon .official-water-label{font-size:12px;letter-spacing:.04em;color:#655337;margin:0 0 8px}
#dotcon .official-water-copy h3{font-size:28px;margin:0 0 18px;line-height:1.5;color:#26352e}
.water-metrics{margin:0}.water-metrics>div{display:grid;grid-template-columns:95px 1fr;gap:14px;padding:16px 0;border-top:1px solid #e2e8e7}.water-metrics dt{font-weight:700;font-size:19px;color:#26748d;line-height:1.5;padding-top:6px}.water-metrics dt span{display:block;font-size:11px;font-weight:400;margin-top:4px}.water-metrics dd{margin:0}.water-metrics strong{font-size:34px;line-height:1.2;color:#263b40;font-weight:700}.water-metrics strong span{font-size:15px;margin-left:6px}.water-metrics dd p{font-size:13px!important;line-height:1.8!important;margin:6px 0 0!important;color:#4c5652!important}.water-metric-note{font-size:11px!important;line-height:1.8!important;color:#626b65!important;margin:14px 0 12px!important}.official-water-copy>a{font-size:13px;text-decoration:underline;text-underline-offset:4px;color:#594526}.feature-photo-grid article:nth-child(n+2)>img{max-width:360px;display:block;margin:0 auto 20px}
@media(max-width:700px){.feature-photo-grid{grid-template-columns:1fr}.feature-photo-grid .official-water-card{grid-template-columns:1fr;padding:20px;gap:22px}.official-water-figure{max-width:340px;margin:auto}#dotcon .official-water-copy h3{font-size:24px}.water-metrics>div{grid-template-columns:80px 1fr;gap:10px}.water-metrics strong{font-size:30px}.water-metrics strong span{font-size:13px}}

/* Specialist introduction beneath the opening photograph. */
.opening-brief strong{font-size:clamp(28px,3.4vw,44px);line-height:1.5;letter-spacing:.025em}.specialist-mobile-break{display:none}@media(max-width:750px){.opening-brief strong{font-size:clamp(25px,6.4vw,34px)}.specialist-mobile-break{display:block}}
/* Give the site name a clearer hierarchy beside the product marks. */
.special-header .special-brand{font-size:32px;line-height:1.25;white-space:nowrap;letter-spacing:-.025em}
.special-header .special-brand small{font-size:11px;letter-spacing:.04em;margin-top:8px}
@media(max-width:650px){.special-header .special-brand{font-size:28px}.special-header .special-brand small{font-size:9px}.header-brand-group{gap:12px}}
@media(max-width:380px){.special-header .special-brand{font-size:25px}}

/* Begin with the visitor's needs, then introduce the product. */
.site-concerns{margin:38px 0 12px;padding:44px 40px;background:#f4f2ec;border-radius:12px;display:grid;grid-template-columns:1fr 1.12fr;gap:28px 44px;color:#30372d}
.site-concerns .eyebrow{color:#74603c;font-size:13px;letter-spacing:.05em;margin:0 0 16px}
#dotcon .site-concerns h2{font-size:clamp(27px,3vw,38px);line-height:1.5;letter-spacing:.02em;margin:0 0 18px}
.concerns-intro>p:last-child{font-size:14px;line-height:1.9;color:#62675b;margin:0}
.concern-list{list-style:none;padding:0;margin:0;align-self:center;display:grid;gap:12px}
.concern-list li{position:relative;background:#fff;padding:16px 18px 16px 43px;font-size:15px;line-height:1.7;border-radius:6px}
.concern-list li:before{content:'✓';position:absolute;left:18px;color:#8b7040;font-weight:700}
.concerns-bridge{grid-column:1/-1;border-top:1px solid #ddd7c9;padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.concerns-bridge p{margin:0;font-size:15px;line-height:1.8}.concerns-bridge strong{font-size:22px;color:#30372d}
.concerns-bridge a{font-size:14px;font-weight:700;color:#68522c;text-underline-offset:6px;white-space:nowrap}.concerns-bridge a span{margin-left:12px}
.sengi-care .guide-grid h3{font-size:19px;line-height:1.6}.sengi-care .guide-grid p{line-height:1.95}
@media(max-width:750px){.site-concerns{padding:28px 20px;margin-top:24px;grid-template-columns:1fr;gap:24px}.concerns-intro br{display:none}.concern-list li{font-size:14px;padding-top:13px;padding-bottom:13px}.concerns-bridge{display:block}.concerns-bridge strong{font-size:20px}.concerns-bridge a{display:inline-block;margin-top:16px}}
#dotcon>.site-concerns{align-self:stretch;width:100%;box-sizing:border-box}
#concerns-title{scroll-margin-top:135px}@media(max-width:750px){#concerns-title{scroll-margin-top:245px}}

.hero-specialist-label{margin:0 0 18px;color:#30372d;font-size:clamp(24px,2.7vw,36px);font-weight:700;line-height:1.4;letter-spacing:.055em;text-align:center}
@media(max-width:750px){.hero-specialist-label{font-size:25px;margin-bottom:14px}}
#top{scroll-margin-top:260px}

/* A clear specialist identity above the hero photograph. */
.hero-specialist-label{display:flex;align-items:center;justify-content:center;gap:24px;margin:10px 0 26px;line-height:1.1;letter-spacing:0}
.specialist-product{font-size:clamp(52px,6.6vw,84px);font-weight:800;letter-spacing:-.045em;color:#27332d}
.specialist-title{font-size:clamp(22px,2.7vw,34px);font-weight:700;letter-spacing:.12em;color:#80612c;padding:10px 0 10px 24px;border-left:2px solid #c7aa6c;white-space:nowrap}
@media(max-width:750px){.hero-specialist-label{gap:17px;margin:8px 0 22px}.specialist-product{font-size:clamp(45px,10vw,62px)}.specialist-title{font-size:clamp(20px,4.5vw,28px);padding-left:17px;letter-spacing:.06em}}

/* Picture-led concerns: practical problems followed by aspirations. */
#dotcon>.site-concerns{display:block;padding:36px 36px 28px}
.concerns-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:30px;align-items:center;margin-bottom:26px}
.site-concerns .concerns-intro .eyebrow{grid-column:1/-1;margin-bottom:12px}
#dotcon .site-concerns h2{margin:0}.concerns-intro>p:last-child{max-width:440px}
.concern-photo-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.concern-photo-list li{padding:0;overflow:hidden;border-radius:8px;background:#fff}
.concern-photo-list li:before{content:none}
.concern-photo-list img{display:block;width:100%;height:auto;aspect-ratio:2.05;object-fit:cover}
.concern-photo-list li>span{display:block;padding:18px 20px;font-size:17px;font-weight:700;line-height:1.7}
.concern-photo-note{margin:13px 0 22px;font-size:11px;color:#707367;text-align:right;line-height:1.7}
@media(max-width:750px){#dotcon>.site-concerns{padding:26px 18px 24px}.concerns-intro{display:block}.concerns-intro>p:last-child{margin-top:16px}.concern-photo-list{grid-template-columns:1fr;gap:18px}.concern-photo-list img{aspect-ratio:1.8}.concern-photo-list li>span{font-size:15px;padding:14px 16px}.concern-photo-note{text-align:left}}
#dotcon .concern-photo-list li{display:block;border:0}
#dotcon .concern-photo-list img{width:100%;height:245px;min-height:0;object-fit:cover}
#dotcon .concern-photo-list li>span{width:auto;height:auto;margin:0;color:#30372d;background:none}
@media(max-width:750px){#dotcon .concern-photo-list img{height:190px}}

#dotcon .concern-photo-list li:last-child img{object-position:center 30%}

#dotcon .concern-photo-list .concern-detail{margin:0;padding:0 20px 18px;font-size:14px;line-height:1.85;color:#535d53}#dotcon .concern-detail small{display:block;font-size:11px;line-height:1.75;color:#73786f;margin-top:8px}@media(max-width:750px){#dotcon .concern-photo-list .concern-detail{padding:0 16px 16px;font-size:13px}}

/* Keep the four concern captions balanced; technical detail is optional. */
#dotcon .concern-photo-list li>span{min-height:92px;display:flex;align-items:center;box-sizing:border-box}
#dotcon .level-paving-note{margin:18px 0 0;padding:0;border:1px solid #d8d0bf;background:#fffdf8;border-radius:6px;width:100%;box-sizing:border-box}
#dotcon .level-paving-note summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px;font-size:14px;font-weight:700;color:#65502c;cursor:pointer;list-style:none}
#dotcon .level-paving-note summary::-webkit-details-marker{display:none}
#dotcon .level-paving-note summary::after{content:none}
#dotcon .level-paving-note summary>span{font-size:20px;transition:transform .15s}
#dotcon .level-paving-note[open] summary>span{transform:rotate(45deg)}
#dotcon .level-paving-note>div{padding:0 20px 18px}
#dotcon .level-paving-note p{margin:0;font-size:14px;line-height:1.9;color:#4d574f}
#dotcon .level-paving-note .level-condition{font-size:12px;margin-top:8px;color:#6b7168}
.mobile-menu-toggle{display:none}
@media(max-width:750px){
 .special-header{grid-template-columns:minmax(0,1fr) 44px 62px;padding:10px 5%;gap:8px;align-items:center}
 .header-brand-group{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;gap:7px}
 .special-header .special-brand{font-size:23px;line-height:1.15;letter-spacing:-.035em}
 .special-header .special-brand small{font-size:8px;margin-top:4px;letter-spacing:0}
 .special-header .header-product-logos{flex-direction:row;gap:10px;padding:0;border:0;align-items:center}
 .special-header .header-product-logos>img{width:55px;height:auto}
 .special-header .header-product-logos .dotcon-plus-logo.compact{width:60px}
 .special-header .partner-header-right{grid-column:2;grid-row:1;width:44px;height:44px;align-self:center}
 .special-header.nav-ready .mobile-menu-toggle{display:flex;grid-column:3;grid-row:1;align-items:center;justify-content:center;flex-direction:column;gap:2px;border:1px solid #ded6c5;border-radius:4px;background:#fffdf7;color:#51432c;padding:7px 4px;font:inherit;font-size:10px;min-height:44px;cursor:pointer}
 .mobile-menu-toggle>span{font-size:19px;line-height:1}
 .special-header nav{grid-column:1/-1;grid-row:2;margin:0;padding-top:10px;gap:0;justify-content:stretch}
 .special-header.nav-ready nav{display:none}
 .special-header.nav-ready.menu-open nav{display:grid;grid-template-columns:1fr 1fr}
 .special-header nav a{padding:12px 8px;border-top:1px solid #eee8db;font-size:12px}
 #concerns-title{scroll-margin-top:120px}
 #dotcon .concern-photo-list li>span{min-height:78px}
}

/* A short, visual introduction before the detailed benefits. */
#dotcon>.product-primer{width:100%;align-self:stretch;padding:56px 0 14px;box-sizing:border-box}
#dotcon .product-primer h2{font-size:clamp(27px,3vw,38px);line-height:1.5;margin:0 0 14px;color:#2e382f}
.primer-lead{font-size:16px;line-height:1.9;margin:0 0 26px;color:#586157}
.primer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.primer-grid>article{border:1px solid #e4dfd3;border-radius:10px;overflow:hidden;background:#fffefa;min-width:0}
#dotcon .primer-grid>article>img{display:block;width:100%;height:260px;object-fit:cover;object-position:center 65%}
.primer-copy{padding:24px}
#dotcon .primer-copy h3{font-size:28px;line-height:1.3;margin:0 0 18px;color:#29392f;display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}
.primer-copy h3 small{font-size:11px;font-weight:400;color:#667062}
#dotcon .primer-copy .primer-point{font-size:19px;font-weight:700;line-height:1.6;color:#3d493c;margin:0 0 10px}
.primer-copy>p:last-child{font-size:14px;line-height:1.9;margin:0;color:#596255}
.primer-note{font-size:11px;line-height:1.8;color:#777a70;margin-top:14px}
.special-consult .operator{display:flex;align-items:center;justify-content:center;gap:22px;max-width:610px;margin:32px auto 0;padding:24px 0 0}
.special-consult .operator>img{width:104px;flex:0 0 104px;height:auto}
.special-consult .operator-copy{text-align:left;min-width:0}
.special-consult .operator-copy p{margin:0;line-height:1.7;display:block}
.special-consult .operator-copy .operator-role{font-size:12px;color:#6c6048}
.special-consult .operator-copy .operator-name{font-size:20px;font-weight:700;margin:5px 0;color:#30372d}
.special-consult .operator-copy .operator-area{font-size:12px;color:#606858}
@media(max-width:750px){#dotcon>.product-primer{padding-top:34px}.primer-grid{grid-template-columns:1fr;gap:22px}#dotcon .primer-grid>article>img{height:210px}.primer-copy{padding:20px}.primer-lead{font-size:14px}.primer-lead br{display:none}#dotcon .primer-copy h3{font-size:26px}#dotcon .primer-copy .primer-point{font-size:17px}.special-consult .operator{gap:16px}.special-consult .operator>img{width:74px;flex-basis:74px}.special-consult .operator-copy .operator-name{font-size:17px}.special-consult .operator-copy .operator-area{font-size:11px}}

/* Shared gold separators make the main sections easier to scan. */
.section-divider::after{content:"";display:block;width:100%;height:2px;background:linear-gradient(to right,#ae8c4c 0 64px,#ddd4c1 64px 100%);margin-top:36px;flex-basis:100%;grid-column:1/-1;clear:both}
#dotcon>.product-primer.section-divider{padding-bottom:0}
#dotcon .primer-grid>article{border-bottom:3px solid #b69960}
@media(max-width:750px){.section-divider::after{margin-top:26px;background:linear-gradient(to right,#ae8c4c 0 44px,#ddd4c1 44px 100%)}}

/* Distinct section panels with a shared, immediately visible title band. */
.section-divider::after{display:none}
#dotcon>.section-divider,#dotcon>.dotcon-plus-showcase.section-divider{width:100%;box-sizing:border-box;padding:34px;margin:42px 0 0;border:1px solid #e1d9c8;border-radius:12px;align-self:stretch}
#dotcon>.site-concerns,#dotcon>.feature-photo-story,#dotcon>.dotcon-plus-showcase{background:#f4f1e9}
#dotcon>.product-primer,#dotcon>.scene-section{background:#fffefa}
.section-marker{display:flex;align-items:center;gap:14px;border-bottom:2px solid #b69a60;padding:0 0 16px;margin:0 0 26px;color:#65502d;font-size:18px;font-weight:700;letter-spacing:.055em;line-height:1.4}
.section-marker .section-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 45px;height:45px;background:#b29660;color:#fff;font-size:23px;font-weight:700;letter-spacing:.025em;border-radius:3px}
.cost-guide.section-divider,.sengi-care.section-divider{border-top:1px solid #ded4bf}
.sengi-care .section-marker{margin-bottom:26px}
#dotcon .feature-photo-heading{padding-top:0}
@media(max-width:750px){#dotcon>.section-divider,#dotcon>.dotcon-plus-showcase.section-divider{padding:22px 18px;margin-top:28px;border-radius:9px}.section-marker{gap:11px;font-size:16px;padding-bottom:13px;margin-bottom:22px}.section-marker .section-number{flex-basis:36px;height:36px;font-size:19px}#dotcon .product-primer h2{font-size:25px}#dotcon .primer-copy{padding:17px}#dotcon .primer-copy .primer-point{font-size:16px}}

/* Explicit product scope for the manufacturer's water data. */
.water-product-heading{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;padding-bottom:18px;border-bottom:1px solid #d7e0dc}
.water-product-heading>span{display:inline-block;background:#30483f;color:#fff;padding:8px 16px;font-size:23px;font-weight:700;line-height:1.3;border-radius:4px}
#dotcon .water-product-heading>p{font-size:15px;line-height:1.7;color:#3b5147;margin:0}
@media(max-width:700px){.water-product-heading{gap:12px;padding-bottom:16px}.water-product-heading>span{font-size:22px}#dotcon .water-product-heading>p{font-size:14px}}

/* Same-location conceptual renovation comparisons */
#dotcon .concern-photo-list .concern-comparison{grid-column:1/-1;padding:24px;background:#fff}
#dotcon .concern-comparison h3{margin:0 0 20px;font-size:23px;line-height:1.6;color:#30372d}
#dotcon .concern-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#dotcon .concern-pair figure{margin:0;min-width:0}
#dotcon .concern-pair figcaption{display:flex;align-items:center;gap:10px;padding:0 0 10px;font-size:12px;color:#5e675e;background:transparent}
#dotcon .concern-pair figcaption b{font-size:13px;letter-spacing:.08em;color:#6c746b}
#dotcon .concern-pair figure:last-child figcaption b{color:#46654f}
#dotcon .concern-pair img{height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
#dotcon .concern-result{font-size:19px;font-weight:700;color:#46654f;margin:18px 0 5px}
#dotcon .comparison-disclaimer{font-size:11px;line-height:1.7;color:#73786f;margin:0}
@media(max-width:750px){
#dotcon .concern-photo-list .concern-comparison{padding:16px}
#dotcon .concern-comparison h3{font-size:18px;margin-bottom:15px}
#dotcon .concern-pair{grid-template-columns:1fr;gap:16px}
#dotcon .concern-pair img{height:auto;aspect-ratio:3/2}
#dotcon .concern-pair figcaption{font-size:11px;gap:8px}
#dotcon .concern-result{font-size:17px}
}

#dotcon .concern-comparison .concern-pair img{object-position:center}
#dotcon .concern-comparison .concern-detail{padding:0;margin:8px 0;font-size:13px;line-height:1.8}

#dotcon .slope-explainer{margin-top:22px;padding:20px;background:#f4f5ef;border-radius:6px}
#dotcon .slope-diagram-title{font-size:19px;font-weight:700;margin:0 0 18px;color:#30372d}
#dotcon .slope-diagram-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
#dotcon .slope-diagram-grid figure{margin:0;min-width:0}
#dotcon .slope-diagram-grid figcaption{font-size:16px;font-weight:700;color:#30372d;background:none;padding:0}
#dotcon .slope-diagram-grid figcaption span{display:block;font-size:13px;font-weight:400;margin-top:5px}
#dotcon .slope-diagram-grid svg{display:block;width:100%;height:auto;margin-top:12px}
#dotcon .slope-diagram-note{font-size:11px;line-height:1.8;color:#697064;margin:12px 0 0}
@media(max-width:750px){#dotcon .slope-explainer{padding:14px}#dotcon .slope-diagram-grid{grid-template-columns:1fr;gap:20px}#dotcon .slope-diagram-title{font-size:17px}}

#dotcon .concern-cost-note{margin:22px 0 26px;padding:23px 26px;background:#fff;border-left:4px solid #b09a63;border-radius:0 6px 6px 0}
#dotcon .concern-cost-note h3{margin:0 0 10px;color:#30372d;font-size:21px;line-height:1.6}
#dotcon .concern-cost-note p{margin:0;font-size:15px;line-height:1.95;color:#50594d}
#dotcon .concern-cost-note strong{color:#374e3c}
@media(max-width:750px){#dotcon .concern-cost-note{padding:18px 16px}#dotcon .concern-cost-note h3{font-size:18px}#dotcon .concern-cost-note p{font-size:14px}}

#dotcon .concern-cost-action{margin-top:20px}
#dotcon .concern-cost-action .button{max-width:100%;box-sizing:border-box;white-space:normal;line-height:1.6}
#dotcon .concern-cost-note .concern-cost-caption{margin:10px 0 0;font-size:11px;line-height:1.7;color:#73786f}

/* Compact the comparisons without hiding or cropping the photographs. */
#dotcon .comparison-shared-note{font-size:11px;line-height:1.7;color:#73786f;margin:0 0 12px}
#dotcon .concern-photo-list{gap:16px}
#dotcon .concern-photo-list .concern-comparison{padding:18px 22px}
#dotcon .concern-comparison h3{margin-bottom:12px;font-size:21px}
#dotcon .concern-pair{gap:14px}
#dotcon .concern-pair figcaption{padding-bottom:7px}
#dotcon .concern-result{margin:12px 0 0;font-size:18px}
#dotcon .slope-explainer{margin-top:16px;padding:16px}
#dotcon .slope-diagram-title{margin-bottom:12px;font-size:18px}
#dotcon .concern-cost-note{margin:18px 0;padding:20px 22px}
#dotcon .concerns-bridge{margin-top:18px;padding-top:18px}
@media(max-width:750px){
#dotcon .concern-photo-list .concern-comparison{padding:14px}
#dotcon .concern-comparison h3{font-size:17px;margin-bottom:10px}
#dotcon .concern-pair{gap:12px}
#dotcon .concern-result{font-size:16px;margin-top:10px}
#dotcon .slope-explainer{padding:12px}
#dotcon .concern-cost-note{padding:16px}
}

/* Let the setting and message lead, instead of enlarging the hole pattern. */
#dotcon .feature-photo-grid .feature-lifestyle{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:center;padding:18px;background:#fffefa;border-radius:8px}
#dotcon .feature-photo-grid .feature-lifestyle>img{width:150px;max-width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center;border-radius:6px;margin:0}
#dotcon .feature-lifestyle-copy h3{font-size:19px;line-height:1.6;margin:0 0 8px}
#dotcon .feature-lifestyle-copy p{font-size:14px;line-height:1.8;margin:0}
#dotcon #scenes .dotcon-scene-group .scene-photo{max-width:300px;align-self:center;margin-left:auto;margin-right:auto}
#dotcon .primer-grid>article:first-child>img{object-fit:contain;object-position:center;height:auto;max-height:210px;width:100%;background:#f7f6f1}
@media(max-width:1100px){#dotcon .feature-photo-grid .feature-lifestyle{grid-column:1/-1;grid-template-columns:180px minmax(0,1fr)}#dotcon .feature-photo-grid .feature-lifestyle>img{width:180px}}
@media(max-width:600px){#dotcon .feature-photo-grid .feature-lifestyle{grid-template-columns:105px minmax(0,1fr);gap:14px;padding:14px}#dotcon .feature-photo-grid .feature-lifestyle>img{width:105px}#dotcon .feature-lifestyle-copy h3{font-size:16px;margin-bottom:6px}#dotcon .feature-lifestyle-copy p{font-size:13px}#dotcon #scenes .dotcon-scene-group .scene-photo{max-width:260px}#dotcon .primer-grid>article:first-child>img{max-height:180px}}

/* Round Dotcon photographs; retain enough context in the scene pair. */
#dotcon .feature-photo-grid .feature-lifestyle>img{aspect-ratio:1;border-radius:50%;object-fit:cover;object-position:center 15%}
#dotcon .primer-grid>article:first-child>img{width:210px;height:210px;max-height:none;aspect-ratio:1;border-radius:50%;object-fit:cover;object-position:center 15%;margin:22px auto 0}
#dotcon #scenes .dotcon-scene-group .scene-photo{width:100%;max-width:440px;aspect-ratio:1;border-radius:50%;margin:0 auto 18px}
#dotcon #scenes .dotcon-scene-group .scene-photo img{object-fit:cover;object-position:50% 0%}
@media(max-width:600px){
#dotcon .primer-grid>article:first-child>img{width:180px;height:180px;max-height:none}
#dotcon #scenes .dotcon-scene-group .scene-photo{max-width:360px}
}

/* Match the visual height and spacing of the two product introductions. */
#dotcon .primer-grid>article>img{display:block;width:260px;max-width:calc(100% - 40px);height:260px;max-height:none;object-fit:cover;object-position:center 15%;margin:22px auto 0;border-radius:8px}
#dotcon .primer-grid>article:first-child>img{width:260px;height:260px;max-height:none;aspect-ratio:1;border-radius:50%;margin:22px auto 0;object-fit:cover;object-position:center 15%}
@media(max-width:750px){#dotcon .primer-grid>article>img,#dotcon .primer-grid>article:first-child>img{width:220px;height:220px;max-height:none;margin:20px auto 0}}

/* Short benefit overview; details remain in their existing sections. */
#dotcon .appeal-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 28px}
#dotcon .appeal-overview article{padding:22px 20px;background:#fffefa;border-top:3px solid #b69960;border-radius:0 0 7px 7px;display:flex;flex-direction:column;min-width:0}
#dotcon .appeal-overview .appeal-label{font-size:12px;font-weight:700;color:#6d6249;letter-spacing:.08em}
#dotcon .appeal-overview h3{font-size:clamp(19px,1.7vw,25px);line-height:1.65;margin:12px 0 18px;color:#30372d;letter-spacing:0}
#dotcon .appeal-overview a{font-size:12px;line-height:1.8;color:#4c594c;text-decoration:underline;text-underline-offset:4px;margin-top:auto}
#dotcon .appeal-design-links{display:flex;flex-direction:column;gap:7px;margin-top:auto}
#water-mechanism{scroll-margin-top:var(--anchor-offset,150px)}
@media(max-width:900px){#dotcon .appeal-overview{gap:12px}#dotcon .appeal-overview article{padding:18px 14px}#dotcon .appeal-overview h3{font-size:18px}}
@media(max-width:650px){#dotcon .appeal-overview{grid-template-columns:1fr;gap:12px;margin-bottom:22px}#dotcon .appeal-overview article{padding:16px 18px}#dotcon .appeal-overview h3{font-size:20px;margin:7px 0 10px}#dotcon .appeal-overview h3 br{display:none}#dotcon .appeal-design-links{flex-direction:row;flex-wrap:wrap;gap:8px 18px}}

#dotcon .stone-context-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:32px;padding:26px;background:#f6f3eb;border-radius:10px;margin:16px 0}
#dotcon .stone-context-intro figure{margin:0;min-width:0}
#dotcon .stone-context-intro img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:center;border-radius:50%}
#dotcon .stone-context-intro figcaption{font-size:10px;line-height:1.7;color:#73786f;margin:12px 0 0}
#dotcon .stone-context-intro h3{font-size:clamp(23px,2.5vw,32px);line-height:1.6;margin:8px 0 16px;color:#30372d}
#dotcon .stone-context-intro p{font-size:15px;line-height:1.9;color:#4c594c}
#dotcon .stone-context-intro .eyebrow{font-size:11px;color:#776746;letter-spacing:.1em}
#dotcon .stone-context-intro .stone-context-small{font-size:12px;color:#73786f;margin-top:18px}
@media(max-width:650px){#dotcon .stone-context-intro{grid-template-columns:1fr;padding:20px;gap:18px}#dotcon .stone-context-intro figure{max-width:300px;margin:auto}#dotcon .stone-context-intro h3{font-size:23px;margin-bottom:10px}}

/* Official pebble example: avoid enlarging the small source photo. */
#dotcon .stone-context-intro{grid-template-columns:minmax(220px,300px) 1fr;gap:36px}
#dotcon .stone-context-intro figure{max-width:300px;margin-inline:auto}
@media(max-width:650px){#dotcon .stone-context-intro{grid-template-columns:1fr;gap:20px}}

@media(max-width:600px){#dotcon .opening-photo-copy .opening-benefit span{font-size:clamp(17px,4.5vw,23px);letter-spacing:.015em;margin-top:8px}}

.special-consult .line-consult{max-width:720px;margin:30px auto 0;padding:26px 30px;display:grid;grid-template-columns:1fr 160px;align-items:center;gap:28px;background:#fff;border:1px solid #d9dfd4;border-radius:12px;text-align:left}.special-consult .line-consult h3{font-size:21px;line-height:1.6;margin:0 0 10px;color:#283d31}.special-consult .line-consult p{font-size:14px;line-height:1.8;margin:0 0 18px;color:#535b53}.line-consult-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:48px;padding:12px 22px;background:#087d3f;color:white!important;border-radius:6px;font-weight:700;font-size:16px}.line-consult-button:hover{background:#066433}.line-consult-button:focus-visible{outline:3px solid #263e2c;outline-offset:4px}.line-consult figure{margin:0;text-align:center}.line-consult figure img{display:block;width:160px;height:160px;max-width:100%;object-fit:contain}.line-consult figcaption{font-size:10px;color:#626a62;margin-top:8px}@media(max-width:600px){.special-consult .line-consult{grid-template-columns:1fr;padding:24px 20px;text-align:center;gap:22px}.special-consult .line-consult h3{font-size:20px}.line-consult figure{justify-self:center}.line-consult-button{width:100%;justify-content:center;box-sizing:border-box}}

.special-consult .instagram-follow{max-width:720px;margin:32px auto 0;padding:24px 30px;background:#fff;border:1px solid #e4dcd4;border-radius:12px;display:grid;grid-template-columns:1fr 190px;gap:28px;align-items:center;text-align:left}.instagram-follow .instagram-label{font-size:12px;font-weight:700;letter-spacing:.15em;color:#995329;margin:0 0 12px}.special-consult .instagram-follow h3{font-size:21px;line-height:1.6;margin:0 0 10px;color:#303831}.instagram-follow .instagram-account{font-size:16px;color:#64645d;margin:0 0 20px}.instagram-button{display:inline-flex;align-items:center;gap:25px;min-height:48px;padding:12px 20px;border:1px solid #b87555;border-radius:6px;color:#723f2d;font-weight:700}.instagram-button:hover{background:#fff2eb}.instagram-follow figure{margin:0;text-align:center}.instagram-follow img{display:block;width:190px;height:auto;border-radius:8px}.instagram-follow figcaption{font-size:10px;color:#64645d;margin-top:8px}@media(max-width:600px){.special-consult .instagram-follow{grid-template-columns:1fr;text-align:center;padding:24px 20px;gap:20px}.instagram-follow figure{justify-self:center}.special-consult .instagram-follow h3{font-size:20px}}

.special-footer{position:relative}.special-footer .footer-social-qr{display:flex;justify-content:flex-end;gap:18px;margin:22px 0 12px;align-items:flex-start}.footer-social-qr>a{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11px;color:#e9e6dc;text-decoration:none}.footer-qr-image{display:block;position:relative;width:118px;height:118px;background:#fff;border-radius:6px;overflow:hidden}.footer-qr-image img{display:block;width:118px;height:118px;max-width:none;object-fit:contain}.instagram-qr-window img{position:absolute;width:218px;height:auto;left:-50px;top:-84px}.special-footer>small{display:block;clear:both}@media(max-width:600px){.special-footer .footer-social-qr{justify-content:flex-end;gap:16px}}
.special-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 30px}.special-footer>div:first-child{grid-column:1;grid-row:1 / 3}.special-footer>a{grid-column:2;grid-row:1;justify-self:end}.special-footer .footer-social-qr{grid-column:2;grid-row:2;align-self:end;justify-self:end;margin:0}.special-footer>small{grid-column:1 / -1;grid-row:3}@media(max-width:600px){.special-footer{grid-template-columns:minmax(0,1fr)}.special-footer>div:first-child{grid-column:1;grid-row:1}.special-footer>a{grid-column:1;grid-row:2;justify-self:start}.special-footer .footer-social-qr{grid-column:1;grid-row:3;justify-self:end}.special-footer>small{grid-row:4}}

/* Keep all three ways to contact Sengi equally easy to use. */
.special-consult .consult-links{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
.special-consult .consult-links .button{min-height:52px;justify-content:space-between}
@media(max-width:650px){.special-consult .consult-links{display:grid;grid-template-columns:1fr}.special-consult .consult-links .button{width:100%;font-size:15px;padding:15px 20px}.special-footer{overflow-wrap:anywhere}}

.opening-benefit .product-word{font:inherit;white-space:nowrap}

/* Individual official figures, kept within their native dimensions. */
.official-water-steps{display:grid;gap:16px;justify-items:center}
.official-water-steps figure{margin:0;width:100%;max-width:276px}
.official-water-steps figcaption{font-size:18px;font-weight:700;color:#297b94;margin-bottom:8px}
.official-water-steps img{width:100%;height:auto;max-width:276px;border-radius:0!important;aspect-ratio:auto!important;object-fit:contain}
.official-water-figure{width:100%}

/* Give the opening photograph more presence. */
.photo-first-opening>.finished-entry-photo img{height:clamp(560px,62vw,850px)}
@media(max-width:750px){.photo-first-opening>.finished-entry-photo img{height:580px}}

#dotcon .product-opening.photo-first-opening{width:min(calc(100vw - 24px),1440px);align-self:center;flex-shrink:0}
@media(max-width:750px){#dotcon .product-opening.photo-first-opening{width:calc(100vw - 20px)}}
