:root{--cold:#dff7ff;--deep:#05090d;--smoke:#11171b}
body{background:var(--deep);font-family:"Helvetica Neue","Hiragino Sans","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
h1,h2,h3,.hero h1,.chapter h2,.merge h2,.page-hero h1,.section h2,.contact h2,.feature strong,.recommend,.price-card h3,.plan-card h3,.support-card h3{font-family:"Helvetica Neue","Hiragino Sans","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-weight:600;font-style:normal}
.hero h1,.chapter h2,.merge h2,.page-hero h1,.section h2,.contact h2{letter-spacing:-.045em;line-height:1.08}.page-home .hero h1{font-weight:500}
.hero h1,.page-hero h1{font-weight:500}
.eyebrow{font-family:"Arial Narrow","Avenir Next Condensed","Helvetica Neue",sans-serif;font-weight:700;letter-spacing:.22em}
.chapter-no,.step::before{font-family:"Arial Narrow","Avenir Next Condensed","Helvetica Neue",sans-serif;font-style:normal;font-weight:700;letter-spacing:-.06em}
.price,.plan-meta strong,.support-price{font-family:"Helvetica Neue","Hiragino Sans","Noto Sans JP",sans-serif;font-style:normal;font-weight:650;letter-spacing:-.035em}
.chapter .lead{font-weight:700}.hero-copy::after{font-family:"Arial Narrow","Avenir Next Condensed","Helvetica Neue",sans-serif}
.hero,.chapter,.page-hero,.section,.contact{isolation:isolate}
.hero::before,.page-hero::before,.chapter::after,.section::after,.contact::before{content:"";position:absolute;inset:0;pointer-events:none}
.hero::before,.page-hero::before{z-index:1;background:url("images/layers/led-reflection-v1.png") center/cover no-repeat;mix-blend-mode:screen;opacity:.07;filter:blur(1px)}
.page-hero::before{display:none}
.hero::after{z-index:1;background:linear-gradient(180deg,#02050840 0%,#05090d00 34%,#05090df2 90%),linear-gradient(90deg,#05090dd9 0%,#05090d30 72%)}
.hero img{filter:brightness(.58) saturate(.72) contrast(1.12);object-position:60% center}
.chapter::after,.section::after{z-index:0;background:url("images/layers/water-beads-v1.png") right center/auto 110% no-repeat;opacity:.055;mix-blend-mode:screen}
.chapter>.wrap,.section>.wrap{position:relative;z-index:1}
.chapter.tech::after{background-image:url("images/layers/led-reflection-v1.png");opacity:.16}
.chapter.thought::after{opacity:.06;filter:grayscale(1)}
.chapter.promise::after{opacity:.18}
.merge{background:radial-gradient(ellipse at 82% 18%,#b9eff515,transparent 28%),linear-gradient(180deg,#05090d,#091116 65%,#05090d)}
.merge::after{content:"";position:absolute;inset:0;background:url("images/layers/water-beads-v1.png") right bottom/auto 90% no-repeat;opacity:.12;mix-blend-mode:screen;pointer-events:none}
.page-service .page-hero{background-image:linear-gradient(90deg,#03080ced 0%,#03080c72 78%),url("images/real-finish-front.jpg");background-position:68% center}
.page-price .page-hero{background-image:linear-gradient(90deg,#03080cee 0%,#03080c72 78%),url("images/real-finish-rear.jpg");background-position:62% center}
.page-service .section:nth-of-type(5){background:#dcd9d1!important;color:#171816!important}
.page-service .section:nth-of-type(5)::after{display:none}
.page-price .section:nth-of-type(3){background:linear-gradient(150deg,#0a0f13,#151b1e 50%,#080c10)}
.page-price .section:nth-of-type(3)::after{opacity:.1}
.page-price main>.section:nth-of-type(2){display:none}
.page-price main>.section:nth-of-type(3){background:#f1efe9!important;color:#171816!important}
.page-price main>.section:nth-of-type(3)::after{display:none!important}
.page-price main>.section:nth-of-type(3)>.wrap>:not(.flyer-published){display:none!important}
.flyer-published{max-width:920px;margin:0 auto}
.flyer-published-head{text-align:center;max-width:700px;margin:0 auto 42px}
.flyer-published-head h2{margin:.25em 0;font-size:clamp(2rem,5vw,4rem)}
.flyer-published-head p:last-child{color:#525654}
.flyer-primary{margin:0 auto;max-width:820px}
.menu-sheet-open,.flyer-primary img{display:block;width:100%}
.menu-sheet-open{padding:0;border:0;background:none;cursor:zoom-in}
.flyer-primary img{height:auto;box-shadow:0 18px 60px #1113}
.flyer-primary figcaption{text-align:center;margin-top:12px;font-size:.82rem;letter-spacing:.08em;color:#666}
.flyer-published .contact-original{display:none}
.menu-sheet-dialog{width:min(100% - 24px,900px);max-width:none;height:min(94dvh,1100px);max-height:none;margin:auto;padding:54px 10px 18px;border:0;background:#171b1e;color:#fff;overflow:auto}
.menu-sheet-dialog::backdrop{background:#020508e8;backdrop-filter:blur(8px)}
.menu-sheet-dialog img{display:block;width:100%;height:auto;margin:auto}
.menu-sheet-close{position:fixed;z-index:2;top:max(12px,env(safe-area-inset-top));right:18px;border:1px solid #ffffff88;border-radius:999px;padding:9px 17px;background:#091017e8;color:#fff;font:700 .8rem/1 "Helvetica Neue","Hiragino Sans",sans-serif;cursor:pointer}
.plan-card::before{display:none!important}
.before-after{background:linear-gradient(180deg,#070b0e,#11191d)!important;color:#f4f0e8}
.before-after-head{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end;margin-bottom:42px}
.before-after-head h2{margin-bottom:0}.before-after-head>p{max-width:520px}
.before-after-visual{position:relative;margin:0;overflow:hidden;background:#071018;border-top:1px solid #ffffff45;border-bottom:1px solid #ffffff45}
.before-after-visual img{width:100%;aspect-ratio:15/8;object-fit:cover;filter:saturate(.78) contrast(1.08)}
.before-after-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#02070c22 0 49.7%,#dff7ff12 50.3% 100%);pointer-events:none}
.before-after-visual figcaption{position:absolute;z-index:1;inset:auto 0 0;display:flex;justify-content:space-between;padding:18px 22px;color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.2em;background:linear-gradient(transparent,#02070ccc)}
.before-after-note{margin-top:14px;color:#ffffff88;font-size:.75rem}
.before-after-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}
.ba-item{position:relative;margin:0;overflow:hidden;background:#05090d;border:1px solid #ffffff30}
.ba-item img{width:100%;aspect-ratio:9/13;object-fit:cover;filter:saturate(.82) contrast(1.06)}
.ba-item figcaption{position:absolute;inset:0 auto auto 0;display:grid;gap:2px;padding:16px 20px;background:linear-gradient(135deg,#03070de8,#03070d55 68%,transparent);color:#fff}
.ba-item figcaption small{font:800 .62rem/1 "Arial Narrow","Helvetica Neue",sans-serif;letter-spacing:.2em;color:#f06456}
.ba-item figcaption strong{font-size:1rem;letter-spacing:.08em}
.ba-item.after{border-color:#d7aa4a99}
.ba-item.after figcaption small{color:#efc45d}
.foam-story{padding:110px 0!important;background:linear-gradient(180deg,#070b0e,#10171b)!important;color:#fff}
.foam-story::after{display:none!important}.foam-visual{position:relative;margin:0;overflow:hidden;border:1px solid #ffffff2b}.foam-visual img{width:100%;aspect-ratio:16/9;object-fit:cover;filter:brightness(.72) saturate(.78) contrast(1.08)}
.foam-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#03080cdc 0%,#03080c6b 48%,transparent 76%),linear-gradient(180deg,transparent 60%,#03080c99)}
.foam-visual figcaption{position:absolute;z-index:1;left:5%;bottom:9%;max-width:560px}.foam-visual h2{margin:.2em 0 .35em;font-size:clamp(2.4rem,5.5vw,4.6rem)}.foam-visual figcaption>p:last-child{max-width:480px}
.contact::before{z-index:0;background:url("images/layers/led-reflection-v1.png") center/cover no-repeat;mix-blend-mode:screen;opacity:.16}
.contact>.wrap{position:relative;z-index:1}

@media(max-width:760px){
  .page-price main>.section:nth-of-type(3){padding:64px 0 84px!important}
  .flyer-published-head{margin-bottom:28px;text-align:left}
  .flyer-published-head h2{font-size:2rem}
  .flyer-primary{width:calc(100% + 20px);margin-left:-10px}
  .wrap{width:min(100% - 34px,1120px)}
  .site-header .header-inner{height:58px}.logo img{width:39px;height:39px}.logo span{font-size:.88rem}.logo small{font-size:.5rem}
  .hero{min-height:100svh;align-items:end}.hero img{object-position:57% center;transform:scale(1.08);filter:brightness(.48) saturate(.62) contrast(1.16)}
  .hero::before{background-position:56% center;background-size:auto 115%;opacity:.09;animation:light-drift 9s ease-in-out infinite alternate}
  .hero::after{background:linear-gradient(180deg,#02050850 0%,#05090d00 28%,#05090df7 88%),linear-gradient(90deg,#05090dbf 0%,#05090d1c 78%)}
  .hero-copy{padding-bottom:18svh}.hero h1{font-size:clamp(2.8rem,13.8vw,4.35rem);line-height:.98;letter-spacing:-.05em;margin:.32em 0;font-weight:500}.hero-lead{max-width:82%;font-size:.94rem;line-height:1.85}
  .chapter{padding:0 0 92px;min-height:100svh;display:block;background-color:#070b0e!important}
  .chapter-grid{display:flex;flex-direction:column;gap:0}.chapter-media,.thought .chapter-media{order:-1;width:calc(100% + 34px);margin-left:-17px;min-height:53svh;clip-path:none;border:0;box-shadow:none}
  .chapter-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#05090d00 52%,#070b0ef8 100%)}
  .chapter-media img{filter:brightness(.72) saturate(.65) contrast(1.15);transform:scale(1.04)}
  .chapter .reveal{margin-top:-9svh;position:relative;z-index:2}.chapter-no{font-size:5.8rem;line-height:.7}.chapter h2{font-size:clamp(2.35rem,10.8vw,3.7rem);letter-spacing:-.065em;line-height:1.08}.chapter .lead{font-size:1.08rem}
  .chapter.thought{color:#f4f0e8!important}.chapter.thought .eyebrow{color:#9fdce5}.chapter.thought::after{opacity:.12}.chapter.thought .chapter-media{filter:none}
  .chapter.tech{background-image:linear-gradient(180deg,#060a0d90,#060a0df7),url("images/tech.jpg")}.chapter.thought{background-image:linear-gradient(180deg,#060a0d90,#060a0df7),url("images/thought.jpg")}.chapter.promise{background-image:linear-gradient(180deg,#060a0d90,#060a0df7),url("images/real-finish-rear.jpg")}
  .merge{padding:95px 0 120px}.merge h2{font-size:clamp(2.25rem,10.5vw,3.6rem)}.link-grid{gap:1px;background:#ffffff20}.link-card{min-height:52svh;padding:25px 21px;background-position:center!important}.link-card strong{font-size:2rem}
  .page-hero{min-height:78svh;display:flex;align-items:end;padding:115px 0 74px;background-size:cover!important}.page-hero::before{display:none}.page-hero h1{font-size:clamp(2.75rem,12.2vw,4.2rem);letter-spacing:-.07em;line-height:1.04}.page-hero p{font-size:.95rem;line-height:1.9}
  .section{padding:82px 0}.section.white{background:#dcd9d1}.section.red{background:linear-gradient(180deg,#13191c,#070b0e)}.section h2{font-size:clamp(2.35rem,11vw,3.55rem);letter-spacing:-.065em}
  .before-after{padding-top:98px}.before-after-head{display:block;margin-bottom:30px}.before-after-head>p{font-size:.9rem}.before-after-visual{width:calc(100% + 34px);margin-left:-17px}.before-after-visual img{aspect-ratio:15/8;object-position:center}.before-after-visual figcaption{padding:16px 18px}.before-after-note{font-size:.68rem}
  .before-after-pair{display:grid;grid-template-columns:1fr;gap:26px;width:calc(100% + 16px);margin-left:-8px}
  .ba-item img{aspect-ratio:9/13.5}
  .ba-item.before{overflow:visible}
  .ba-item.before::after{content:"↓";position:absolute;z-index:2;right:14px;bottom:-24px;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#f06456;color:#fff;font-size:1.35rem;box-shadow:0 8px 22px #0008}
  .foam-story{padding:72px 0!important}.foam-visual{width:calc(100% + 34px);margin-left:-17px;border-left:0;border-right:0;overflow:visible}.foam-visual img{aspect-ratio:4/3;filter:brightness(.78) saturate(.8) contrast(1.06)}.foam-visual::after{background:linear-gradient(180deg,transparent 48%,#070b0ee8 100%)}.foam-visual figcaption{position:relative;left:auto;bottom:auto;margin:-42px 17px 0;padding:24px 0 4px}.foam-visual h2{font-size:clamp(2.2rem,10.5vw,3.3rem)}.foam-visual figcaption>p:last-child{font-size:.9rem}
  .two{gap:38px}.photo{width:calc(100% + 34px);max-width:none;margin-left:-17px;aspect-ratio:4/5;object-position:center;clip-path:none;box-shadow:none;filter:brightness(.72) saturate(.68) contrast(1.12)}
  .feature-grid,.price-grid,.plan-grid,.support-grid{border-top-color:#ffffff45}.section.white .feature-grid,.section.white .price-grid{border-top-color:#17181655}
  .feature,.price-card,.plan-card,.support-card{padding:32px 0!important}.price{font-size:3.2rem}.plan-card::before{opacity:.42}.support-card h3{font-size:1.35rem}
  .process{display:block}.step{min-height:105px;padding:26px 0}.step::before{font-size:2.7rem}
  .contact{padding:95px 0 145px;background-position:64% center}.contact h2{font-size:clamp(2.7rem,12vw,4.2rem)}
}

/* Final unified type scale: this stays last so page-specific experiments cannot override it. */
.page-home .hero h1,.page-service .page-hero h1,.page-price .page-hero h1{max-width:10.8em;font-size:var(--type-display);line-height:1.04;letter-spacing:-.055em;text-wrap:balance}
.page-home main h2,.page-service main h2,.page-price main h2{max-width:13em;font-size:var(--type-section);line-height:1.12;letter-spacing:-.045em;text-wrap:balance}
.page-home main h3,.page-service main h3,.page-price main h3,.page-home main .feature strong,.page-service main .feature strong,.page-price main .feature strong{font-size:var(--type-card);line-height:1.42;letter-spacing:-.025em;text-wrap:balance}
.page-home main p:not(.eyebrow),.page-service main p:not(.eyebrow),.page-price main p:not(.eyebrow),.page-home main li,.page-service main li,.page-price main li{max-width:40rem;font-size:var(--type-body);line-height:1.9;text-wrap:pretty}
@media(max-width:760px){.page-home .hero h1,.page-service .page-hero h1,.page-price .page-hero h1{max-width:9.4em;font-size:var(--type-display);line-height:1.08}.page-home main h2,.page-service main h2,.page-price main h2{max-width:11em;font-size:var(--type-section);line-height:1.16}.page-home main h3,.page-service main h3,.page-price main h3{font-size:var(--type-card)}.page-home main p:not(.eyebrow),.page-service main p:not(.eyebrow),.page-price main p:not(.eyebrow),.page-home main li,.page-service main li,.page-price main li{font-size:var(--type-body);line-height:1.82}}

/* Mobile hero trial: flat black headline, white supporting copy with shadow. */
@media(max-width:760px){
  .page-home .hero h1{
    color:#111!important;
    text-shadow:none!important;
    filter:none!important;
    -webkit-text-stroke:0!important;
    display:grid;
    gap:.02em;
    margin:.3em 0 .42em;
    font-weight:800!important;
    line-height:.98!important;
    letter-spacing:-.065em!important;
  }
  .page-home .hero h1::before{
    content:"";
    width:3.4rem;
    height:4px;
    margin-bottom:.2em;
    background:#ef4f40;
  }
  .page-home .hero h1 span{display:block}
  .page-home .hero h1 span:first-child{font-size:.82em}
  .page-home .hero h1 span:last-child{font-size:1.06em;white-space:nowrap}
  .page-home .hero-lead{
    color:#fff!important;
    text-shadow:0 2px 12px #000!important;
  }
}

/* Mobile hero trial: flat black headline, white supporting copy with shadow. */
@media(max-width:760px){
  .page-home .hero h1{
    color:#111!important;
    text-shadow:none!important;
    filter:none!important;
    -webkit-text-stroke:0!important;
  }
  .page-home .hero-lead{
    color:#fff!important;
    text-shadow:0 2px 12px #000!important;
  }
}

@media(max-width:760px){
  .page-home .hero h1{
    color:#111!important;
    text-shadow:none!important;
    filter:none!important;
    -webkit-text-stroke:0!important;
  }
}

@media(max-width:760px){
  .page-home .hero-copy::before{
    background:none;
    box-shadow:none;
    filter:none;
    text-shadow:none;
  }
  .page-home .hero h1{
    color:#111;
    text-shadow:none;
  }
  .page-home .hero-lead{
    color:#fff;
    border-top-color:#ffffff55;
    text-shadow:0 2px 12px #000;
  }
}


/* Keep the site's finish caption clear of lettering baked into the movie. */
@media(max-width:760px){
  .page-price .finish-film{display:block;min-height:0;background:#03070a}
  .page-price .finish-film video{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center}
  .page-price .finish-film::after{display:none}
  .page-price .finish-film .wrap{padding:26px 24px 42px;text-shadow:none}
  .page-price .finish-film .eyebrow{margin:0 0 10px}
  .page-price .finish-film strong{display:block;font-size:clamp(1.8rem,8.2vw,2.2rem);line-height:1.25;letter-spacing:-.035em;white-space:nowrap}
}
@media(max-width:760px){
  .page-home .hero::before,.page-home .hero-copy::before{display:none!important}
  .page-home .hero h1{max-width:none!important;font-size:clamp(2rem,8.4vw,2.2rem)!important;line-height:1.16!important;letter-spacing:-.035em!important;white-space:nowrap!important;text-wrap:nowrap!important}
  .page-home .hero-index,.page-home .hero .eyebrow,.page-home .hero h1,.page-home .hero-lead,.page-home .hero-copy::after{text-shadow:0 2px 8px #0205088c,0 0 2px #0205087a!important}
}
@media(max-width:760px){.page-home .hero h1{max-width:none!important;font-size:clamp(2rem,8.4vw,2.2rem)!important;line-height:1.16!important;letter-spacing:-.035em!important;white-space:nowrap!important;text-wrap:nowrap!important}}
@media(max-width:760px){
  .page-home .hero::before,.page-home .hero-copy::before{display:none!important}
  .page-home .hero-index,.page-home .hero .eyebrow,.page-home .hero h1,.page-home .hero-lead,.page-home .hero-copy::after{text-shadow:0 2px 10px #020508a8,0 0 3px #02050899}
}

/* Service standards: compact, report-like rhythm on narrow screens. */
.page-service .standard-section .feature-grid{column-gap:42px}
.page-service .standard-section .feature{padding-block:22px!important}
.page-service .standard-section .feature span{display:block;margin:5px 0 0 30px;color:#4e4e49;line-height:1.65}
@media(max-width:760px){
  .page-service .standard-section{padding-block:54px}
  .page-service .standard-section h2{margin-bottom:.7em;font-size:clamp(2.05rem,9vw,2.7rem)}
  .page-service .standard-section .feature-grid{display:block}
  .page-service .standard-section .feature,.page-service .standard-section .feature:nth-child(odd){padding:17px 0!important}
  .page-service .standard-section .feature strong{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:baseline;font-size:1.02rem;line-height:1.42}
  .page-service .standard-section .feature strong::before{margin:0;font-size:.62rem}
  .page-service .standard-section .feature span{margin:3px 0 0 30px;font-size:.82rem;line-height:1.6}
}

/* Price reservation: one clear route to the complete contact block below. */
.page-price .reservation-jump{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px;padding:18px 0;border-top:1px solid currentColor;border-bottom:1px solid currentColor;text-decoration:none;transition:padding .22s ease,color .22s ease}
.page-price .reservation-jump span{font-size:1.05rem;font-weight:800}
.page-price .reservation-jump small{display:flex;align-items:center;gap:10px;color:#a83c32;font-size:.72rem;font-weight:800;letter-spacing:.08em}
.page-price .reservation-jump small::after{content:"↓";display:grid;place-items:center;width:30px;height:30px;border:1px solid currentColor;border-radius:50%}
.page-price .reservation-jump:hover{padding-inline:8px;color:#a83c32}
.page-price #access{scroll-margin-top:82px}
@media(max-width:760px){.page-price .reservation-jump{margin-top:24px;padding:16px 0}.page-price .reservation-jump span{font-size:.95rem}.page-price .reservation-jump small{font-size:.62rem}.page-price #access{scroll-margin-top:66px}}

/* Home hero: clean copy grouping without the failed red rule or bottom-heavy vignette. */
.page-home .hero-index{display:none}
@media(max-width:760px){
  .page-home .hero::before{display:none!important}
  .page-home .hero::after{z-index:1;background:linear-gradient(180deg,#02050858 0%,transparent 16%)!important}
  .page-home .hero-copy{isolation:isolate}
  .page-home .hero-copy::before{content:"";position:absolute;z-index:-1;inset:-10px 0 -10px -8px;margin:0;padding:0;border:0;background:linear-gradient(90deg,#03070d5c 0%,#03070d38 52%,#03070d00 82%);filter:blur(6px);pointer-events:none}
  .page-home .hero-index{display:block;margin:0 0 16px;color:#ef5b4b;font:800 .59rem/1 "Arial Narrow","Helvetica Neue",sans-serif;letter-spacing:.2em}
  .page-home .hero h1{max-width:none;font-size:clamp(2.1rem,9.2vw,2.45rem);line-height:1.14;letter-spacing:-.04em;white-space:nowrap}
  .page-home .hero-lead{margin-top:20px;padding-top:14px}
}

/* Show the three chapter photographs in their original color and brightness. */
.page-home .chapter-media img{filter:none!important}
.page-home .chapter-media::after{display:none!important}
.page-home .chapter.promise .chapter-media{background:#35100f!important}

/* Service photographs are evidence: keep their original exposure and color. */
.page-service .photo,.page-service .foam-visual img{filter:none!important}

.hero-film,.water-window,.process-film,.finish-film{position:relative}
.video-play-fallback{position:absolute;z-index:8;left:50%;top:50%;transform:translate(-50%,-50%);min-width:9.5rem;padding:12px 18px;border:1px solid #ffffffb8;border-radius:999px;background:#05090ddd;color:#fff;font:800 .8rem/1 "Helvetica Neue","Hiragino Sans",sans-serif;letter-spacing:.04em;box-shadow:0 10px 32px #0008;backdrop-filter:blur(8px);cursor:pointer}
.video-play-fallback:active{transform:translate(-50%,-48%) scale(.98)}

/* Inner-page heroes: preserve the photograph and shade only the copy area. */
.page-service .page-hero{background-image:url("images/real-finish-front.jpg")!important}
.page-price .page-hero{background-image:url("images/real-finish-rear.jpg")!important}
.page-service .page-hero,.page-price .page-hero{background-size:cover;background-position:center;color:#fff}
.page-service .page-hero .wrap,.page-price .page-hero .wrap{position:relative;isolation:isolate}
.page-service .page-hero .wrap::before,.page-price .page-hero .wrap::before{content:"";position:absolute;z-index:-1;inset:-42px -70px;background:radial-gradient(ellipse 72% 76% at 28% 54%,#03080cf2 0%,#03080cd0 38%,#03080c72 63%,transparent 82%);filter:blur(8px);pointer-events:none}
@media(max-width:760px){.page-service .page-hero,.page-price .page-hero{background-position:center}.page-service .page-hero .wrap::before,.page-price .page-hero .wrap::before{inset:-34px -24px;background:radial-gradient(ellipse 82% 76% at 24% 55%,#03080cf0 0%,#03080cc8 42%,#03080c64 66%,transparent 84%);filter:blur(7px)}}

/* Unified type and motion system */
:root{
  --type-display:clamp(3.25rem,6.2vw,6.25rem);
  --type-section:clamp(2.35rem,4.4vw,4.25rem);
  --type-card:clamp(1.15rem,1.8vw,1.48rem);
  --type-body:clamp(.96rem,1.15vw,1.08rem);
}
.page-home .hero h1,.page-service .page-hero h1,.page-price .page-hero h1{
  max-width:10.8em;font-size:var(--type-display);line-height:1.04;letter-spacing:-.055em;text-wrap:balance
}
.page-home main h2,.page-service main h2,.page-price main h2{
  max-width:13em;font-size:var(--type-section);line-height:1.12;letter-spacing:-.045em;text-wrap:balance
}
.page-home main h3,.page-service main h3,.page-price main h3,
.page-home main .feature strong,.page-service main .feature strong,.page-price main .feature strong{
  font-size:var(--type-card);line-height:1.42;letter-spacing:-.025em;text-wrap:balance
}
.page-home main p:not(.eyebrow),.page-service main p:not(.eyebrow),.page-price main p:not(.eyebrow),
.page-home main li,.page-service main li,.page-price main li{
  max-width:40rem;font-size:var(--type-body);line-height:1.9;text-wrap:pretty
}
.page-home .hero-lead,.page-service .page-hero>*.wrap>p,.page-price .page-hero>*.wrap>p{max-width:34rem}

.motion-item{--motion-order:0;will-change:transform,opacity;transition-property:opacity,transform,filter;transition-duration:.68s;transition-delay:calc(var(--motion-order) * 55ms);transition-timing-function:cubic-bezier(.2,.78,.2,1)}
.motion-label{opacity:0;transform:translateX(-22px)}
.motion-heading{opacity:0;transform:translateX(-48px);filter:blur(2px)}
.motion-copy{opacity:0;transform:translateY(14px)}
.motion-card{opacity:0;transform:translateY(26px) scale(.985)}
.motion-item.is-motion-visible{opacity:1;transform:none;filter:none}
.motion-heading.is-motion-visible::after{transform:scaleX(1)}

@media(max-width:760px){
  :root{--type-display:clamp(2.55rem,11.2vw,3.65rem);--type-section:clamp(2rem,9vw,2.85rem);--type-card:clamp(1.05rem,5vw,1.3rem);--type-body:.94rem}
  .page-home .hero h1,.page-service .page-hero h1,.page-price .page-hero h1{max-width:9.4em;line-height:1.08}
  .page-home main h2,.page-service main h2,.page-price main h2{max-width:11em;line-height:1.16}
  .page-home main p:not(.eyebrow),.page-service main p:not(.eyebrow),.page-price main p:not(.eyebrow),.page-home main li,.page-service main li,.page-price main li{line-height:1.82}
  .motion-item{transition-duration:.54s;transition-delay:calc(var(--motion-order) * 38ms)}
  .motion-heading{transform:translateX(-26px);filter:blur(1px)}
  .motion-card{transform:translateY(18px) scale(.99)}
}
@media(prefers-reduced-motion:reduce){.motion-item,.motion-label,.motion-heading,.motion-copy,.motion-card{opacity:1;transform:none;filter:none;transition:none;will-change:auto}}
@keyframes light-drift{from{transform:translate3d(-2%,0,0) scale(1.02)}to{transform:translate3d(2%,1%,0) scale(1.08)}}
@media(prefers-reduced-motion:reduce){.hero::before,.page-hero::before{animation:none}}
.logo img{width:56px;height:56px;border:0!important;border-radius:0;object-fit:contain;object-position:center;box-shadow:none!important;filter:drop-shadow(0 0 10px #d5a23b36)}
@media(max-width:760px){.logo img{width:47px;height:47px}}
@media(max-width:760px){
  .page-home .hero{background:linear-gradient(#0205089a,#05090de8),url("images/real-finish-front.jpg") 56% center/cover no-repeat}
  .page-home .hero img{inset:auto;left:50%;top:5%;width:auto;height:78%;max-width:none;object-fit:contain;object-position:center;transform:translateX(-50%);filter:brightness(.62) saturate(.66) contrast(1.1);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 8%,#000 82%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 8%,#000 82%,transparent 100%)}
  .chapter.promise .chapter-media{background:linear-gradient(#05090d7d,#05090dcf),url("images/real-finish-rear.jpg") center/cover no-repeat}
  .chapter.promise .chapter-media img{inset:auto;left:50%;top:5%;width:auto;height:88%;max-width:none;object-fit:contain;transform:translateX(-50%)!important;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 8%,#000 88%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 8%,#000 88%,transparent 100%)}
}
.footer{position:relative;padding:0!important;background:radial-gradient(circle at 8% 15%,#18314a55,transparent 34%),linear-gradient(150deg,#071018,#030608 68%)!important;color:#e9edf0;border-top:1px solid #c79a4277!important}
.footer::before{content:"";display:block;height:3px;background:linear-gradient(90deg,#c79a42,transparent 42%)}
.footer-main{display:grid;grid-template-columns:1.5fr .65fr .85fr;gap:6vw;align-items:start;padding-top:72px;padding-bottom:66px}
.footer-brand{display:flex;align-items:center;gap:20px}.footer-brand img{width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 0 16px #c79a4238)}
.footer-brand small{display:block;margin-bottom:9px;color:#b8c2c8;font-size:.62rem;font-weight:800;letter-spacing:.22em}.footer-brand strong{display:block;font-size:clamp(1.25rem,2.3vw,2rem);line-height:1.4;letter-spacing:-.035em}
.footer-nav,.footer-contact{display:grid;gap:12px}.footer-nav a,.footer-contact a{text-decoration:none;color:#fff;font-weight:700}.footer-nav a::before{content:"↗";margin-right:8px;color:#c79a42}.footer-contact a:first-child{font-size:1.15rem;letter-spacing:.04em}.footer-contact span{color:#d5dde2;font-size:.8rem;font-weight:600}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;padding-bottom:calc(24px + var(--safe));border-top:1px solid #ffffff18;color:#74828a;font:700 .62rem/1.4 "Arial Narrow","Helvetica Neue",sans-serif;letter-spacing:.16em}.footer-bottom a{color:inherit;text-decoration:none;font-weight:inherit}.footer-bottom a:hover{color:#a6b0b6}
@media(max-width:760px){.footer-main{grid-template-columns:1fr;gap:38px;padding-top:58px;padding-bottom:46px}.footer-brand{align-items:flex-start}.footer-brand img{width:68px;height:68px}.footer-brand strong{font-size:1.35rem}.footer-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%;border-top:1px solid #ffffff1c;border-bottom:1px solid #ffffff1c;padding:18px 0}.footer-nav a{display:block;width:100%;font-size:.76rem;text-align:center}.footer-nav a::before{display:none}.footer-contact{gap:8px}.footer-contact a:first-child{font-size:1.25rem}.footer-bottom{display:grid;gap:9px;padding-bottom:calc(90px + var(--safe))}}
@media(max-width:760px){
  .page-home .hero{display:block;min-height:100svh;padding-top:76px;background:linear-gradient(180deg,#05090db5,#05090df8),url("images/real-finish-front.jpg") center/cover no-repeat}
  .page-home .hero img{position:relative;inset:auto;left:auto;top:auto;width:calc(100% - 34px);height:auto;max-width:none;margin:0 auto;object-fit:contain;transform:none;border:1px solid #ffffff24;filter:brightness(.7) saturate(.68) contrast(1.1);-webkit-mask-image:none;mask-image:none;box-shadow:0 24px 60px #0008}
  .page-home .hero::after{background:linear-gradient(180deg,#02050818 0%,#05090d00 34%,#05090df8 68%,#05090d 100%)}
  .page-home .hero-copy{position:absolute;inset:auto 0 0;padding-bottom:7svh}
  .page-home .hero h1{font-size:clamp(2.65rem,12.5vw,3.75rem)}
  .chapter.promise .chapter-media{min-height:39svh;width:calc(100% + 8px);margin-left:-4px;background:linear-gradient(#05090d8c,#05090de8),url("images/real-finish-rear.jpg") center/cover no-repeat}
  .chapter.promise .chapter-media img{position:absolute;inset:50% auto auto 50%;width:100%;height:auto;max-width:none;object-fit:contain;transform:translate(-50%,-50%)!important;-webkit-mask-image:linear-gradient(180deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(180deg,transparent,#000 10%,#000 90%,transparent)}
}
.hero-film{position:absolute;inset:0;z-index:0;overflow:hidden;background:#03070a}.hero-film video{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(1.08) saturate(1.02) contrast(1.04)}.hero-film-mobile{display:none}
.page-home .hero::after{background:radial-gradient(ellipse 34% 37% at 12% 61%,#03070deb 0%,#03070dcb 22%,#03070d72 43%,#03070d28 58%,transparent 76%),linear-gradient(180deg,#02050872 0%,transparent 16%)}
.page-home .hero-copy::after{text-shadow:0 2px 10px #000}
.ba-hold{position:relative;display:block;width:min(100%,720px);aspect-ratio:9/12;margin:0 auto;padding:0;border:1px solid #ffffff35;background:#04080b;color:#fff;overflow:hidden;cursor:pointer;touch-action:manipulation}.ba-layer{position:absolute;inset:0;display:block;transition:opacity .38s ease}.ba-layer img{width:100%;height:100%;object-fit:cover}.ba-layer b{position:absolute;top:18px;left:18px;padding:8px 13px;background:#05090ddb;font-size:.78rem;letter-spacing:.12em}.ba-after{opacity:0}.ba-hold.is-after .ba-after,.ba-hold:active .ba-after{opacity:1}.ba-hold.is-after .ba-before,.ba-hold:active .ba-before{opacity:0}.ba-instruction{position:absolute;z-index:3;left:50%;bottom:20px;transform:translateX(-50%);white-space:nowrap;padding:10px 16px;border:1px solid #ffffff66;border-radius:999px;background:#05090dcc;font-size:.72rem;font-weight:800;letter-spacing:.08em}
.ba-compare{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;margin:0}.ba-compare::after{content:"";position:absolute;z-index:3;top:0;bottom:0;left:50%;width:2px;transform:translateX(-50%);background:#c54a3c;box-shadow:0 0 18px #c54a3c66}.ba-panel{position:relative;aspect-ratio:4/5;overflow:hidden;background:#04080b;border:1px solid #ffffff2c}.ba-panel img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.9) contrast(1.04)}.ba-panel figcaption{position:absolute;z-index:2;left:16px;top:16px;display:grid;gap:1px;padding:8px 11px;background:#05090ddd;color:#fff;line-height:1.15}.ba-panel figcaption small{color:#c7a98c;font:800 .55rem/1.2 "Arial Narrow","Helvetica Neue",sans-serif;letter-spacing:.18em}.ba-panel figcaption b{font-size:.78rem;letter-spacing:.08em}.ba-panel-after figcaption{left:auto;right:16px;text-align:right}
.ba-panel::after{content:"";position:absolute;z-index:1;inset:-20%;background:linear-gradient(105deg,transparent 42%,#ffffff72 49%,transparent 56%);transform:translateX(-150%);pointer-events:none}.ba-compare.will-sharp::after{opacity:var(--ba-alpha,0);transform:translateX(-50%) scaleY(var(--ba-progress,0));transform-origin:center top}.ba-compare.will-sharp .ba-panel{opacity:var(--ba-alpha,0)}.ba-compare.will-sharp .ba-panel-before{transform:translateX(calc(-1 * var(--ba-offset,420px)))}.ba-compare.will-sharp .ba-panel-after{transform:translateX(var(--ba-offset,420px))}.ba-compare.will-sharp figcaption{opacity:var(--ba-label,0);transform:translateY(var(--ba-label-offset,-9px))}.ba-compare.is-sharp .ba-panel::after{animation:ba-sharp-sheen .5s cubic-bezier(.2,.75,.25,1) both}.ba-compare.is-sharp .ba-panel-after::after{animation-delay:.06s}@keyframes ba-sharp-sheen{from{transform:translateX(-150%)}to{transform:translateX(150%)}}
@media(max-width:760px){.ba-compare{gap:4px;width:calc(100% + 16px);margin-left:-8px}.ba-compare::after{width:1px}.ba-panel{aspect-ratio:3/4}.ba-panel img{object-position:center}.ba-panel figcaption{top:8px;left:8px;padding:6px 7px}.ba-panel-after figcaption{left:auto;right:8px}.ba-panel figcaption small{font-size:.46rem}.ba-panel figcaption b{font-size:.66rem}}
@media(max-width:960px) and (min-width:761px){.page-service .polishing-section .two{grid-template-columns:1fr;gap:38px}.page-service .polishing-section .two>div:first-child{position:static;width:min(100%,680px);margin-inline:auto}.page-service .polishing-section .two>div:last-child{width:min(100%,680px);margin-inline:auto}}
.page-service .polishing-section .photo{clip-path:none;box-shadow:none}
@media(prefers-reduced-motion:reduce){.ba-compare.will-sharp .ba-panel,.ba-compare.will-sharp::after,.ba-compare.will-sharp figcaption{transform:none;opacity:1}.ba-compare.is-sharp .ba-panel::after{animation:none}}
.water-story{background:linear-gradient(155deg,#0b1216,#03070a 72%)!important;color:#fff}.water-story::after{display:none}.water-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}.water-grid h2{font-size:clamp(2.7rem,6vw,5rem)}.water-window{position:relative;width:min(100%,560px);aspect-ratio:3/4;margin:auto;overflow:hidden;border-radius:2px;border:1px solid #ffffff30;box-shadow:0 28px 70px #0008}.water-window video{width:100%;height:100%;object-fit:cover;filter:brightness(.92) saturate(.92) contrast(1.08)}.water-window span,.process-film span{position:absolute;left:16px;bottom:14px;color:#fff;font:800 .58rem/1 "Arial Narrow","Helvetica Neue",sans-serif;letter-spacing:.18em;text-shadow:0 2px 10px #000}
.process-cinema{display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:start}.process-film{position:sticky;top:92px;aspect-ratio:4/5;overflow:hidden;background:#03070a;border:1px solid #ffffff2c}.process-film video{width:100%;height:100%;object-fit:cover;filter:brightness(.72) saturate(.72) contrast(1.08)}.process-cinema .process{display:block}.process-cinema .step{min-height:126px;transition:color .25s,background .25s}.process-cinema .step.is-current{color:#fff;background:linear-gradient(90deg,#d74e3d20,transparent)}
.process-story{background:linear-gradient(145deg,#10171b,#05090c)!important}.process-story::after{display:none}.process-phases{border-top:1px solid #ffffff35}.process-phase{display:grid;grid-template-columns:62px 1fr;gap:20px;padding:30px 0;border-bottom:1px solid #ffffff35}.process-phase>b{color:#e14b3c;font:800 2.5rem/.9 "Arial Narrow","Helvetica Neue",sans-serif}.process-phase small{color:#e14b3c;font-size:.58rem;font-weight:900;letter-spacing:.2em}.process-phase h3{margin:5px 0 8px;font-size:1.35rem}.process-phase p{margin:0;color:#c7cdd0;font-size:.9rem;line-height:1.75}
.concern-section{background:linear-gradient(145deg,#30100f,#691f1a)!important}.concern-section::after{display:none}.concern-section .recommend-grid{grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff55}.concern-section .recommend{min-height:100px;padding:22px 18px!important;border-right:1px solid #ffffff3d}.concern-note{max-width:680px;margin:28px 0 0;color:#f0d8d3;font-size:.9rem}
.finish-film{position:relative;min-height:68svh;display:grid;align-items:end;overflow:hidden;background:#03070a;color:#fff}.finish-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.92) saturate(.95) contrast(1.03)}.finish-film::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,#03070a20 58%,#03070ad4 100%)}.finish-film .wrap{position:relative;z-index:1;padding-bottom:9svh;text-shadow:0 2px 18px #020609cc}.finish-film strong{font-size:clamp(2.5rem,7vw,5.5rem);letter-spacing:-.05em}
@media(max-width:760px){
  .hero-film-wide{display:none}.hero-film-mobile{display:block;position:absolute;inset:0;width:100%;height:100%;margin:0;border:0;box-shadow:none}.hero-film-mobile video{object-fit:cover;object-position:50% 35%;filter:brightness(1.1) saturate(1.02) contrast(1.08)}
  .page-home .hero{padding-top:0;background:#03070a}
  .page-home .hero::after{z-index:1;background:radial-gradient(ellipse 58% 25% at 7% 70%,#03070dec 0%,#03070dce 23%,#03070d75 43%,#03070d2e 59%,transparent 78%),linear-gradient(180deg,#02050860 0%,transparent 16%)}
  .page-home .hero::before{z-index:2;inset:auto auto 7svh 18px;width:3px;height:31svh;background:linear-gradient(180deg,#ef5b4b,transparent);filter:none;opacity:1;animation:none}
  .page-home .hero-copy{z-index:3;inset:auto 0 0;padding:0 25px 8svh}
  .page-home .hero-copy::before{content:"01 / YOSHIMURAYA";display:block;margin:0 0 16px;padding-left:14px;border-left:3px solid #ef5b4b;color:#ef5b4b;font:800 .59rem/1 "Arial Narrow","Helvetica Neue",sans-serif;letter-spacing:.2em}
  .page-home .hero h1{font-size:clamp(3rem,14vw,4.2rem);line-height:.91;text-shadow:0 5px 28px #000}.page-home .hero-lead{margin-top:22px;padding-top:16px;border-top:1px solid #ffffff55;text-shadow:0 2px 12px #000}
  .page-home .scroll-hint{z-index:3;right:13px;bottom:8svh}
  .ba-hold{width:calc(100% + 10px);margin-left:-5px;aspect-ratio:9/12.5}.ba-instruction{bottom:14px;font-size:.68rem}
  .water-story{padding:72px 0!important}.water-grid{grid-template-columns:1fr;gap:30px}.water-grid h2{font-size:clamp(2.45rem,11vw,3.6rem)}.water-window{width:calc(100% + 28px);margin-left:-14px;aspect-ratio:9/13;border-left:0;border-right:0}
  .process-story{padding:68px 0!important}.process-story h2{margin-bottom:24px}.process-cinema{display:block}.process-film{position:relative;z-index:1;top:auto;width:calc(100% + 28px);margin-left:-14px;aspect-ratio:16/9;border-left:0;border-right:0}.process-film video{object-fit:cover;filter:brightness(.9) saturate(.88) contrast(1.08)}.process-phases{margin-top:20px}.process-phase{grid-template-columns:48px 1fr;gap:14px;padding:22px 0}.process-phase>b{font-size:2rem}.process-phase h3{font-size:1.22rem}.process-phase p{font-size:.82rem;line-height:1.65}
  .concern-section{padding:62px 0 66px!important}.concern-section h2{margin-bottom:24px;font-size:clamp(2.2rem,10vw,3rem)}.concern-section .recommend-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ffffff35;border:1px solid #ffffff35}.concern-section .recommend{min-height:92px;padding:16px!important;align-items:center;border:0!important;background:#220b0b99!important;font-size:.88rem;line-height:1.45}.concern-note{margin-top:20px;font-size:.78rem;line-height:1.7}
  .finish-film{min-height:70svh}.finish-film video{object-fit:cover}.finish-film strong{font-size:clamp(2.5rem,12vw,4rem)}
}
@media(max-width:520px){.concern-section .recommend-grid{grid-template-columns:1fr}.concern-section .recommend{min-height:68px}}
.page-price #access .contact-info{display:block;max-width:1040px}.page-price #access .contact-card-image{display:none}.page-price #access h2{font-size:clamp(2.6rem,5vw,4.3rem)}
.page-price #access .info-list{grid-template-columns:repeat(3,1fr);gap:0;margin:36px 0 44px;border-top:1px solid #17181644;border-bottom:1px solid #17181644}.page-price #access .info-row{position:relative;min-width:0;padding:24px 48px 24px 22px;border-bottom:0;border-right:1px solid #17181633;color:inherit;text-decoration:none;cursor:pointer;transition:background .22s ease,color .22s ease}.page-price #access .info-row:last-child{border-right:0}.page-price #access .info-row strong{display:block;font-size:clamp(1rem,2vw,1.45rem);overflow-wrap:anywhere}.page-price #access .info-row::after{content:"↗";position:absolute;right:18px;bottom:24px;color:#b13c31;font-weight:900;transition:transform .22s ease}.page-price #access .info-row:hover{background:#071b32;color:#fff}.page-price #access .info-row:hover small{color:#d8a73f}.page-price #access .info-row:hover::after{transform:translate(3px,-3px);color:#d8a73f}.page-price #access .info-row:focus-visible{outline:3px solid #d8a73f;outline-offset:-3px}
.page-price #access .map-panel{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 32px;padding:28px 32px}.page-price #access .map-panel strong{font-size:1.2rem}.page-price #access .map-panel p{margin:0;color:#d4dce2}.page-price #access .map-panel .button{grid-column:2;grid-row:1/3;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:12px 19px;font-size:.88rem;white-space:nowrap}
.page-price #access .map-panel .button{gap:12px;min-width:330px;padding:14px 24px;border:1px solid #ff786b;background:linear-gradient(180deg,#d8584b,#c8473b);box-shadow:0 7px 0 #852c25,0 16px 30px #0005;font-weight:900;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}
.page-price #access .map-panel .button::after{content:"↗";display:grid;place-items:center;width:27px;height:27px;border:1px solid #ffffffa8;border-radius:50%;font-size:.8rem}
.page-price #access .map-panel .button:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 9px 0 #852c25,0 19px 34px #0006}
.page-price #access .map-panel .button:active{transform:translateY(5px);box-shadow:0 2px 0 #852c25,0 7px 15px #0005}
.page-price #access .map-panel .button:focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(max-width:760px){.page-price #access .info-list{grid-template-columns:1fr;margin:26px 0 34px}.page-price #access .info-row{padding:18px 42px 18px 0;border-right:0;border-bottom:1px solid #17181633}.page-price #access .info-row::after{right:8px;bottom:20px}.page-price #access .info-row:last-child{border-bottom:0}.page-price #access .map-panel{display:block;padding:24px 20px}.page-price #access .map-panel p{margin:8px 0 20px}.page-price #access .map-panel .button{display:inline-flex;width:min(100%,420px);min-width:0;white-space:normal;text-align:center}}

/* Report-like hierarchy: keep headings and answers on a readable measure. */
.page-price .report-section>.wrap{width:min(940px,calc(100% - 96px))}
.page-price .report-section h2{max-width:820px;margin-bottom:1.05em}
.page-price .report-section .feature-grid{display:block;margin-left:clamp(28px,5vw,72px);border-top:1px solid #ffffff55}
.page-price .report-section .feature{padding:30px 0!important;border-bottom:1px solid #ffffff55!important}
.page-price .report-section .feature:nth-child(odd){padding-right:0!important}
.page-price .report-section .feature strong{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:baseline;font-size:clamp(1.15rem,2.2vw,1.45rem);line-height:1.45}
.page-price .report-section .feature strong::before{margin:0;font-size:.68rem}
.page-price .report-section .feature span{display:block;max-width:38rem;margin:10px 0 0 42px;color:#e4e3de;font-size:.94rem;line-height:1.9}
@media(max-width:760px){.page-price .report-section>.wrap{width:min(100% - 42px,940px)}.page-price .report-section h2{font-size:clamp(2rem,10vw,2.85rem)}.page-price .report-section .feature-grid{margin-left:14px}.page-price .report-section .feature{padding:24px 0!important}.page-price .report-section .feature strong{grid-template-columns:34px minmax(0,1fr);font-size:1.08rem}.page-price .report-section .feature span{margin:8px 0 0 34px;font-size:.87rem;line-height:1.8}}
@media(max-width:760px){.page-service .polishing-section{padding-bottom:34px}.page-service .before-after{padding-top:38px}.page-service .before-after-head{margin-bottom:24px}}
.chapter.promise::after,.merge::after{display:none}.merge{background:linear-gradient(155deg,#0a1115,#03070a 72%)}
@media(max-width:760px){.chapter.promise{padding:58px 0 48px}.chapter.promise .chapter-grid{gap:22px}.chapter.promise .chapter-media{min-height:22svh}.chapter.promise .chapter-media img{width:100%;height:100%;object-fit:cover;object-position:center 62%;-webkit-mask-image:none;mask-image:none}.merge{padding:60px 0 78px}.merge .eyebrow{margin-top:0}.merge-lines{margin:24px auto 30px}}
.page-home .hero h1{font-size:clamp(2.5rem,6.2vw,6rem);line-height:1.12;letter-spacing:-.055em}
@media(max-width:760px){.page-home .hero h1{font-size:clamp(2rem,8.7vw,2.75rem);line-height:1.18;letter-spacing:-.045em}}
.page-home .chapter::after{display:none}.page-home .chapter.tech{background:#0b1013!important}.page-home .chapter.thought{background:#e9e3d7!important}.page-home .chapter.promise{background:#35100f!important}.page-home .chapter-media{display:block}.page-home .chapter-grid{grid-template-columns:1fr 1.12fr}.page-home .chapter .reveal,.page-home .chapter.thought .reveal,.page-home .chapter.promise .reveal{max-width:none;margin:0;padding:0;background:none;border:0}
.page-home .chapter.thought,.page-home .chapter.thought .reveal,.page-home .chapter.thought h2,.page-home .chapter.thought p,.page-home .chapter.thought .lead{color:#171816!important}.page-home .chapter.thought .eyebrow{color:#a53d32!important}.page-home .chapter.thought .chapter-no{color:#6f2722!important;opacity:.18}.page-home .chapter.thought .lead{border-color:#171816!important}
@media(max-width:760px){.page-home .chapter{padding:64px 0;min-height:auto}.page-home .chapter-grid{grid-template-columns:1fr;gap:28px}.page-home .chapter-media,.page-home .chapter.promise .chapter-media{display:block;min-height:40svh;order:-1}.page-home .chapter.thought .chapter-media{order:-1}.page-home .chapter .reveal,.page-home .chapter.thought .reveal,.page-home .chapter.promise .reveal{padding:0 4px;background:none;border:0}.page-home .chapter-no{font-size:4rem}}

/* Final polish: one visual system across all three pages */
.page-service .section::after,.page-price .section::after{display:none}
.page-home .chapter{min-height:auto;padding:92px 0}.page-home .chapter-media{min-height:58svh;clip-path:none;border:1px solid #ffffff28;box-shadow:none}.page-home .chapter.thought .chapter-media{border-color:#17181626}.page-home .chapter h2{font-size:clamp(2.5rem,5vw,4.4rem)}
.footer-main{grid-template-columns:1.35fr .55fr .75fr;gap:4vw;padding-top:44px;padding-bottom:40px}.footer-brand{gap:16px}.footer-brand img{width:66px;height:66px}.footer-brand strong{font-size:1.15rem;white-space:nowrap}.footer-nav,.footer-contact{gap:8px}.footer-bottom{padding-top:15px;padding-bottom:18px}
.page-service .section,.page-price .section{padding:78px 0}.page-service .section h2,.page-price .section h2{font-size:clamp(2.35rem,4.8vw,4rem)}
.page-service .two>div:last-child{width:100%;max-width:36rem}.page-service .two>div:last-child>p:not(.eyebrow){margin:0 0 1.35em;font-size:1rem;line-height:2.05;text-wrap:pretty}
.page-service .polishing-section .two>div:last-child{justify-self:start}
.page-service .water-window{aspect-ratio:4/5;box-shadow:none}.page-service .foam-story,.page-service .water-story,.page-service .process-story{padding:76px 0!important}.page-service .before-after{padding-top:76px}.page-service .concern-section{padding:72px 0!important}
.page-price .contact-original{display:none}.price-consult-bridge{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:34px;padding:26px 28px;background:#071b32;color:#fff;border-left:3px solid #d8a73f}.price-consult-bridge small{display:block;margin-bottom:7px;color:#d8a73f;font-size:.58rem;font-weight:900;letter-spacing:.2em}.price-consult-bridge strong{display:block;font-size:1.12rem}.price-consult-bridge a{flex:0 0 auto;padding:12px 22px;border:0;border-radius:999px;background:linear-gradient(105deg,#833ab4 0%,#c13584 38%,#e1306c 66%,#f77737 100%);color:#fff;text-decoration:none;font-size:.82rem;font-weight:900;box-shadow:0 10px 28px #c1358445;transition:transform .25s ease,box-shadow .25s ease}.price-consult-bridge a:hover{transform:translateY(-2px);box-shadow:0 14px 34px #c1358460}
@media(max-width:760px){
  .page-home .chapter{padding:56px 0}.page-home .chapter-grid{gap:22px}.page-home .chapter-media,.page-home .chapter.promise .chapter-media{min-height:36svh}.page-home .chapter h2{font-size:clamp(2.2rem,9.8vw,3.15rem)}.page-home .chapter p{font-size:.9rem;line-height:1.8}
  .footer-main{grid-template-columns:1fr;gap:30px;padding-top:44px;padding-bottom:34px}.footer-brand img{width:62px;height:62px}.footer-brand strong{font-size:1.18rem;white-space:normal}.footer-nav,.footer-contact{gap:8px}
  .page-service .page-hero,.page-price .page-hero{min-height:64svh;padding-bottom:58px}.page-service .section,.page-price .section{padding:62px 0}.page-service .section h2,.page-price .section h2{font-size:clamp(2.15rem,9.8vw,3rem)}.page-service .two>div:last-child{max-width:34rem}.page-service .two>div:last-child>p:not(.eyebrow){font-size:.94rem;line-height:1.95}
  .page-service .before-after{padding-top:52px}.page-service .foam-story,.page-service .water-story,.page-service .process-story{padding:58px 0!important}.page-service .water-grid{gap:24px}.page-service .water-window{width:calc(100% + 28px);aspect-ratio:4/5}.page-service .concern-section{padding:56px 0!important}
  .price-consult-bridge{display:grid;gap:18px;margin-top:24px;padding:22px 18px}.price-consult-bridge strong{font-size:.95rem;line-height:1.65}.price-consult-bridge a{display:block;text-align:center}
  .footer-bottom{padding-bottom:calc(74px + var(--safe))}
}

/* Final unified type scale */
.page-home .hero h1,.page-service .page-hero h1,.page-price .page-hero h1{max-width:10.8em;font-size:var(--type-display);line-height:1.04;letter-spacing:-.055em;text-wrap:balance}
.page-home main h2,.page-service main h2,.page-price main h2{max-width:13em;font-size:var(--type-section);line-height:1.12;letter-spacing:-.045em;text-wrap:balance}
.page-home main h3,.page-service main h3,.page-price main h3,.page-home main .feature strong,.page-service main .feature strong,.page-price main .feature strong{font-size:var(--type-card);line-height:1.42;letter-spacing:-.025em;text-wrap:balance}
.page-home main p:not(.eyebrow),.page-service main p:not(.eyebrow),.page-price main p:not(.eyebrow),.page-home main li,.page-service main li,.page-price main li{max-width:40rem;font-size:var(--type-body);line-height:1.9;text-wrap:pretty}
@media(max-width:760px){.page-home .hero h1,.page-service .page-hero h1,.page-price .page-hero h1{max-width:9.4em;font-size:var(--type-display);line-height:1.08}.page-home main h2,.page-service main h2,.page-price main h2{max-width:11em;font-size:var(--type-section);line-height:1.16}.page-home main h3,.page-service main h3,.page-price main h3{font-size:var(--type-card)}.page-home main p:not(.eyebrow),.page-service main p:not(.eyebrow),.page-price main p:not(.eyebrow),.page-home main li,.page-service main li,.page-price main li{font-size:var(--type-body);line-height:1.82}}

/* Mobile hero trial: flat black headline, white supporting copy with shadow. */
@media(max-width:760px){
  .page-home .hero h1{
    color:#111!important;
    text-shadow:none!important;
    filter:none!important;
    -webkit-text-stroke:0!important;
  }
  .page-home .hero-lead{
    color:#fff!important;
    text-shadow:0 2px 12px #000!important;
  }
}
