/* Kawasaki hero. Original right-side scene preserves character/background alignment. */
.kw-page .kkh{container-type:inline-size;position:relative;isolation:isolate;overflow:hidden;background:#effbff;color:#010d31;font-family:'KF Noto','Noto Sans JP',sans-serif;font-weight:900}
.kkh *{box-sizing:border-box}
.kkh-scene{position:relative;aspect-ratio:1122/1010;isolation:isolate;overflow:hidden;background:#c8f0ff}
.kw-page .kkh-background{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:54% bottom;z-index:0}
.kw-page .kkh-characters{position:absolute;left:42.7807%;top:9.901%;width:57.2193%;height:90.099%;max-width:none;object-fit:contain;z-index:3;pointer-events:none}
.kw-page .kkh-area{position:absolute;left:8%;top:6.5%;z-index:4;display:flex;align-items:center;justify-content:center;gap:1.1cqw;width:45.3%;margin:0;padding:.55cqw 1.6cqw .8cqw;border:.5cqw solid #fff;border-radius:8cqw;background:linear-gradient(105deg,#fff983,#ffff50);color:#07102d;font-size:3.5cqw;line-height:1.25;white-space:nowrap;transform:rotate(-2deg);box-shadow:0 .25cqw .8cqw #a7e4fc}
.kkh-pin{position:relative;display:block;width:2.75cqw;height:3.6cqw;flex:none;background:#f56700;clip-path:polygon(50% 0,80% 7%,98% 30%,100% 50%,88% 70%,50% 100%,12% 70%,0 50%,2% 30%,20% 7%)}
.kkh-pin:after{content:'';position:absolute;left:28%;top:20%;width:44%;height:34%;border-radius:50%;background:#fff77b}
.kkh-area:before,.kkh-area:after{content:'';position:absolute;width:1cqw;height:4.4cqw;top:-.8cqw;border:.15cqw solid #fff;border-radius:.2cqw;background:#fff21a}
.kkh-area:before{left:-3.2cqw;transform:rotate(-28deg);box-shadow:-1.9cqw 2cqw 0 -.1cqw #fff21a}
.kkh-area:after{right:-3.2cqw;transform:rotate(26deg);box-shadow:1.9cqw 2cqw 0 -.1cqw #fff21a}
.kw-page .kkh-title{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;max-width:none;margin:0;padding:0;border:0;background:none;font-family:inherit;font-weight:900;line-height:1.05;letter-spacing:-.04em;white-space:normal;pointer-events:none}
.kkh-line{position:absolute;left:3.8%;display:block;white-space:nowrap;line-height:1.05}
.kkh-ink{display:block;width:max-content;max-width:none;font:inherit;line-height:inherit;letter-spacing:inherit;color:#073676;background:none;-webkit-text-fill-color:currentColor;-webkit-text-stroke:0;text-shadow:none;filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff) drop-shadow(1px 1px 0 #fff) drop-shadow(-1px -1px 0 #fff)}
.kkh-region{top:17.1%;font-size:7.75cqw;letter-spacing:-.03em}
.kkh-speed{top:27.4%;font-size:10.7cqw;letter-spacing:-.04em}
.kkh-speed .kkh-ink{color:#0751d2}
.kkh-payment{top:41.8%;font-size:11.7cqw;letter-spacing:-.055em}
.kkh-payment .kkh-ink{color:#ff5900}
.kkh-payment-end{margin-top:.6cqw;font-size:12.6cqw}
/* Each glyph is painted only once. White edges are derived from its alpha behind it. */
@supports ((background-clip:text) or (-webkit-background-clip:text)){
 .kkh .kkh-ink{background-clip:text;-webkit-background-clip:text;background-repeat:no-repeat;-webkit-text-fill-color:transparent}
 .kkh-region .kkh-ink{background-image:linear-gradient(180deg,#073676 12%,#00082b 95%)}
 .kkh-speed .kkh-ink{background-image:linear-gradient(180deg,#056cff 5%,#003499 95%)}
 .kkh-payment .kkh-ink{background-image:linear-gradient(180deg,#ff8700 0%,#ff4100 100%)}
}
.kw-page .kkh-message{position:absolute;left:4.4%;top:74.4%;z-index:2;margin:0;color:#010929;font-size:5.5cqw;line-height:1.12;letter-spacing:-.04em;-webkit-text-fill-color:currentColor;-webkit-text-stroke:0;text-shadow:none}
.kkh-message>strong,.kkh-message>span{display:block;width:max-content;filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)}
.kkh-message>strong{font-size:7cqw;line-height:1.2;letter-spacing:-.06em;transform:scaleX(.93);transform-origin:left}
.kkh-message b{position:relative;isolation:isolate}
.kkh-message b:after{content:'';position:absolute;left:0;right:0;bottom:-.25cqw;height:.7cqw;border-radius:50%;background:#fff21a;transform:rotate(-2deg);z-index:-1}
.kkh-accent{position:absolute;z-index:1;width:1.5cqw;height:5cqw;background:#fff326;transform:rotate(39deg);border-radius:.2cqw}
.kkh-accent:after{content:'';position:absolute;left:3cqw;top:2cqw;width:1.5cqw;height:5cqw;background:#fff326;transform:rotate(33deg);border-radius:.2cqw}
.kkh-accent-one{left:32%;top:58%}.kkh-accent-two{right:13%;top:29%;height:4cqw}.kkh-accent-two:after{display:none}
.kw-page .kkh-services{position:relative;display:flex;list-style:none;margin:0 2.5% .6cqw;padding:1cqw 0 1.2cqw;border-radius:2.8cqw;background:linear-gradient(115deg,#fff,#f8f9fe);box-shadow:0 .3cqw .8cqw #0d356624}
.kkh-services li{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35cqw;width:33.333%;min-width:0;padding:0 1cqw;font-size:3.5cqw;line-height:1.3;letter-spacing:-.045em;white-space:nowrap}
.kkh-services li+li{border-left:.28cqw solid #d6dce7}
.kw-page .kkh-services img{display:block;width:auto;height:7cqw;max-width:80%;object-fit:contain}
.kkh-actions{display:flex;flex-direction:column;gap:.5cqw;margin:0 2.7%}
.kkh-actions>a{position:relative;display:flex;align-items:center;justify-content:center;gap:2cqw;width:100%;height:8.3cqw;min-height:44px;border-radius:999px;font-size:6cqw;line-height:1.1;font-weight:900;letter-spacing:.04em;text-decoration:none;white-space:nowrap}
.kw-page .kkh-estimate{color:#fff;background:linear-gradient(110deg,#ffb039 0%,#ff8006 27%,#ff5632 60%,#ff1c48 100%);box-shadow:0 .1cqw .6cqw #ec873627}
.kw-page .kkh-phone{height:7.3cqw;color:#003d96;background:#fff;border:.4cqw solid #0871dd;font-size:4.8cqw;letter-spacing:0}
.kkh-actions .icon{display:flex;flex:none;width:5.6cqw;height:5.6cqw;color:inherit}
.kkh-actions .icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:2;fill:none}
.kkh-phone .icon svg{fill:currentColor;stroke-width:1}
.kkh-actions .kkh-chevron{position:absolute;right:5.5%;top:50%;transform:translateY(-56%);font-family:Arial,sans-serif;font-size:6cqw;font-weight:500}
.kkh-actions a:focus-visible{outline:3px solid #062550;outline-offset:3px}
.kw-page .kkh-note{margin:.5cqw 2.7% 1.2cqw;color:#020e36;font-size:max(10px,1.9cqw);font-weight:500;line-height:1.5;text-align:center}
@media(min-width:769px){
 .kkh-scene{aspect-ratio:1200/540}
 .kw-page .kkh-background{object-position:center}
 .kw-page .kkh-characters{left:auto;right:0;top:0;width:42%;height:100%;object-position:right bottom}
 .kw-page .kkh-area{left:4.5%;top:5.3%;width:auto;gap:.7cqw;padding:.45cqw 1.6cqw;border-width:.3cqw;font-size:2.15cqw}
 .kkh-pin{width:1.8cqw;height:2.4cqw}
 .kkh-area:before,.kkh-area:after{width:.65cqw;height:2.8cqw}
 .kkh-area:before{left:-2cqw;box-shadow:-1.25cqw 1.3cqw 0 -.1cqw #fff21a}
 .kkh-area:after{right:-2cqw;box-shadow:1.25cqw 1.3cqw 0 -.1cqw #fff21a}
 .kkh-line{left:4%}
 .kkh-ink{filter:drop-shadow(1.5px 0 0 #fff) drop-shadow(-1.5px 0 0 #fff) drop-shadow(0 1.5px 0 #fff) drop-shadow(0 -1.5px 0 #fff) drop-shadow(1.5px 1.5px 0 #fff) drop-shadow(-1.5px -1.5px 0 #fff)}
 .kkh-region{top:20%;font-size:5.1cqw}
 .kkh-speed{top:35%;font-size:7.5cqw}
 .kkh-payment{top:53%;display:flex;gap:.1em;font-size:7.1cqw}
 .kkh-payment-end{margin:0;font-size:inherit}
 .kw-page .kkh-message{top:75%;font-size:2.7cqw;line-height:1.3}
 .kkh-message>strong{font-size:3.9cqw;line-height:1.15;transform:none}
 .kkh-message>span{display:inline-block}
 .kkh-accent-one{left:55%;top:58%;width:1cqw;height:3.3cqw}.kkh-accent-one:after{width:1cqw;height:3.3cqw;left:2cqw;top:1.3cqw}.kkh-accent-two{right:7%;top:24%;width:1cqw;height:3cqw}
 .kw-page .kkh-services{margin-top:.8cqw;padding:1cqw 0;border-radius:1.3cqw}
 .kkh-services li{flex-direction:row;gap:1cqw;font-size:2cqw}
 .kw-page .kkh-services img{height:4.5cqw;max-width:31%}
 .kkh-actions{flex-direction:row;gap:1cqw;margin-top:1cqw}
 .kkh-actions>a{height:6cqw;min-height:56px;gap:1cqw;font-size:3cqw}
 .kw-page .kkh-phone{height:6cqw;border-width:.2cqw;font-size:2.65cqw}
 .kkh-actions .icon{width:3cqw;height:3cqw}
 .kkh-actions .kkh-chevron{right:6%;font-size:3.5cqw}
 .kw-page .kkh-note{margin-top:.7cqw;margin-bottom:.9cqw;font-size:1.05cqw}
}
@media(forced-colors:active){.kkh .kkh-ink{-webkit-text-fill-color:CanvasText;color:CanvasText;background:none;filter:none}.kkh-actions>a{border:2px solid ButtonText}}

/* v3.0.27: source scene registration, heavier ink and proportional white outline. */
.kkh-artwork{position:absolute;inset:0;z-index:0;overflow:hidden}
.kw-page .kkh-background,.kw-page .kkh-characters{position:absolute;left:0;top:0;width:100%;height:auto;max-width:none;object-fit:fill;object-position:initial}
.kw-page .kkh-background{z-index:0}
/* Clip around the copy, not around hair or shoulders. Original sky/ribbon/platform stay attached. */
.kw-page .kkh-characters{z-index:1;clip-path:polygon(68% 0,100% 0,100% 72.04%,43.4% 72.04%,43.4% 70.7%,55% 69%,55% 66%,48% 65%,48% 57%,49% 54%,55% 52%,57% 46%,60% 42%,59% 39%,53.5% 36.3%,53.5% 35%,62% 35.3%,62% 30%,66% 28%,68% 24%)}
.kkh .kkh-ink{-webkit-text-stroke:.14cqw #043579;paint-order:stroke fill;filter:drop-shadow(.19cqw 0 0 white) drop-shadow(-.19cqw 0 0 white) drop-shadow(0 .19cqw 0 white) drop-shadow(0 -.19cqw 0 white) drop-shadow(.15cqw .15cqw 0 white) drop-shadow(-.15cqw -.15cqw 0 white)}
.kkh .kkh-speed .kkh-ink{-webkit-text-stroke-color:#064cc6}
.kkh .kkh-payment .kkh-ink{-webkit-text-stroke-color:#ff6100}
.kkh-message>strong,.kkh-message>span{-webkit-text-stroke:.055cqw #010929;paint-order:stroke fill;filter:drop-shadow(.16cqw 0 0 white) drop-shadow(-.16cqw 0 0 white) drop-shadow(0 .16cqw 0 white) drop-shadow(0 -.16cqw 0 white)}
.kkh-accent-two{display:none}
@media(min-width:769px){
 .kkh-scene{aspect-ratio:1200/600;background:#b9eaff url('assets/hero-background-aligned.webp') left top/100% auto no-repeat}
 .kkh-artwork{left:auto;right:0;width:55.55%;height:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 100%)}
 .kw-page .kkh-background,.kw-page .kkh-characters{left:0;right:auto;top:0;width:100%;height:auto;object-fit:fill}
 .kkh .kkh-ink{-webkit-text-stroke-width:.10cqw;filter:drop-shadow(.14cqw 0 0 white) drop-shadow(-.14cqw 0 0 white) drop-shadow(0 .14cqw 0 white) drop-shadow(0 -.14cqw 0 white) drop-shadow(.12cqw .12cqw 0 white) drop-shadow(-.12cqw -.12cqw 0 white)}
}
@media(forced-colors:active){.kkh .kkh-ink{-webkit-text-stroke:0;filter:none}}

/* v3.0.29: solid white outline behind the colored HTML glyphs. */
.kkh-word.kkh-payment-end{font-size:12.6cqw}
@media(min-width:769px){.kkh-word.kkh-payment-end{font-size:inherit}}
.kkh-word{position:relative;display:block;width:max-content;isolation:isolate;font:inherit;letter-spacing:inherit;line-height:inherit}
.kkh .kkh-word>.kkh-outline{position:absolute;inset:0;z-index:0;display:block;pointer-events:none;user-select:none;font:inherit;letter-spacing:inherit;line-height:inherit;white-space:inherit;color:#fff;-webkit-text-fill-color:#fff;-webkit-text-stroke:1.15cqw #fff;background:none;text-shadow:none;filter:none}
.kkh .kkh-word>.kkh-ink{position:relative;z-index:1;filter:none}
.kkh .kkh-message>strong,.kkh .kkh-message>span{filter:none;text-shadow:2px 0 #fff,-2px 0 #fff,0 2px #fff,0 -2px #fff,2px 2px #fff,-2px 2px #fff,2px -2px #fff,-2px -2px #fff}
@media(min-width:769px){
 .kkh .kkh-word>.kkh-outline{-webkit-text-stroke-width:.85cqw}
 .kkh .kkh-message>strong,.kkh .kkh-message>span{text-shadow:3px 0 #fff,-3px 0 #fff,0 3px #fff,0 -3px #fff,3px 3px #fff,-3px 3px #fff,3px -3px #fff,-3px -3px #fff}
}
@media(forced-colors:active){.kkh .kkh-word>.kkh-outline{display:none}.kkh .kkh-message>strong,.kkh .kkh-message>span{text-shadow:none}}

/* v3.0.31: mobile-only outline strength; layout and desktop remain unchanged. */
.kkh-message-outline{display:none}
@media(max-width:768px){
 .kkh .kkh-word>.kkh-outline{-webkit-text-stroke-width:1.5cqw}
 .kkh .kkh-message>strong,.kkh .kkh-message>span{position:relative;isolation:isolate;filter:none;text-shadow:none}
 .kkh .kkh-message-outline{position:absolute;inset:0;z-index:0;display:block;pointer-events:none;user-select:none;font:inherit;letter-spacing:inherit;line-height:inherit;white-space:inherit;color:#fff;-webkit-text-fill-color:#fff;-webkit-text-stroke:1.15cqw #fff;background:none;text-shadow:none;filter:none}
 .kkh .kkh-message-fill{position:relative;z-index:1;color:#010929;-webkit-text-fill-color:#010929;text-shadow:none;filter:none}
}
@media(forced-colors:active){.kkh .kkh-message-outline{display:none}.kkh .kkh-message-fill{-webkit-text-fill-color:CanvasText;color:CanvasText}}


/* v3.0.112: explicit region, within the existing badge. */
.kw-page .kkh-area{font-size:3cqw;text-align:center}
.kw-page .kkh-area small{font-size:.78em}
@media(min-width:768px){.kw-page .kkh-area{font-size:1.8cqw}}
