/* KIMURA A: cinematic motion over the existing WordPress blocks. */
/* Preserve the logo's intrinsic height, including in the WPVibe preview. */
body .kbl-site .kbl-brand{height:auto;}
/* Clip decorative layers without creating a focus-scroll container. */
body .kbl-site .kbl-hero{isolation:isolate;overflow:clip;}
body .kbl-site .kbl-hero::after{content:"";position:absolute;inset:27px;width:auto;height:auto;border:1px solid rgba(230,203,151,.16);border-radius:0;pointer-events:none;animation:none;transform:none;}
body .kbl-site .kbl-cinema-light{position:absolute;inset:-60%;z-index:0;pointer-events:none;background:linear-gradient(110deg,transparent 35%,rgba(249,220,164,.11) 48%,transparent 60%);opacity:0;}
body .kbl-site .kbl-cinema-line{display:block;overflow:hidden;}
body .kbl-site .kbl-cinema-line>span{display:block;}
body .kbl-site .kbl-cinema-toggle{position:absolute;right:43px;bottom:35px;z-index:2;display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 12px;border:1px solid rgba(230,203,151,.35);border-radius:0;background:rgba(7,25,43,.66);color:#e5dfd1;font:400 11px/1.6 "Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;letter-spacing:.07em;cursor:pointer;}
body .kbl-site .kbl-cinema-toggle:hover{background:#203c55;}
body .kbl-site .kbl-cinema-toggle:focus-visible{outline:3px solid #dcc18b;outline-offset:4px;}
body .kbl-site .kbl-cinema-toggle::before{content:"";width:7px;height:9px;border-left:2px solid currentColor;border-right:2px solid currentColor;}
body .kbl-site .kbl-cinema-toggle[aria-pressed="true"]::before{height:0;width:0;border:5px solid transparent;border-left:7px solid currentColor;border-right:0;}
@media (prefers-reduced-motion:no-preference){
  body .kbl-site .kbl-hero::before{content:"";position:absolute;inset:-3%;z-index:0;background:inherit;pointer-events:none;transform-origin:70% 48%;}
  body .kbl-site.kbl-cinema-ready .kbl-hero::before{animation:kbl-cinema-image 19s ease-in-out infinite alternate;}
  body .kbl-site.kbl-cinema-ready .kbl-cinema-light{animation:kbl-cinema-light 16s ease-in-out infinite;}
  body .kbl-site .kbl-hero::after{animation:kbl-cinema-frame 1.7s .15s cubic-bezier(.2,.7,.2,1) both;}
  body .kbl-site .kbl-hero :is(.kbl-kicker,h1,.kbl-lead,.wp-block-buttons,.kbl-caption){animation:kbl-classic-enter 1.1s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--kbl-enter-delay,0ms);}
  body .kbl-site.kbl-cinema-ready .kbl-hero h1{animation:none;}
  body .kbl-site.kbl-cinema-ready .kbl-cinema-line>span{animation:kbl-cinema-title 1.35s .18s cubic-bezier(.2,.7,.2,1) both;}
  body .kbl-site.kbl-cinema-ready .kbl-cinema-line:nth-child(2)>span{animation-delay:.35s;}
  .kbl-site .kbl-hero h1{--kbl-enter-delay:90ms;}
  .kbl-site .kbl-hero .kbl-lead{--kbl-enter-delay:650ms;}
  .kbl-site .kbl-hero .wp-block-buttons{--kbl-enter-delay:850ms;}
  .kbl-site .kbl-hero .kbl-caption{--kbl-enter-delay:950ms;}
  body .kbl-site .kbl-soft-reveal{transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1);transition-delay:var(--kbl-arrival-delay,0ms);}
  body .kbl-site .kbl-soft-pending{opacity:0;transform:translateY(20px);}
  body .kbl-site .kbl-soft-pending:focus-within{opacity:1;transform:none;transition-delay:0ms;}
  body .kbl-site .wp-block-button__link{transition:transform .35s ease,background-color .35s ease,border-color .35s ease,box-shadow .35s ease;}
  body .kbl-site .wp-block-button__link::after{transition:transform .35s ease;}
  body .kbl-site .kbl-nav a{transition:color .25s ease,border-color .25s ease,background-color .25s ease;}
  body .kbl-site .kbl-service h3,body .kbl-site .kbl-article-link h3{transition:transform .4s ease;}
  body .kbl-site .kbl-service::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--gold);transform:scaleY(0);transform-origin:bottom;transition:transform .55s ease;}
  @media(hover:hover) and (pointer:fine){
    body .kbl-site .wp-block-button__link:hover{transform:translateY(-2px);box-shadow:0 7px 18px rgba(7,25,43,.12);}
    body .kbl-site .wp-block-button__link:hover::after{transform:translateX(5px);}
    body .kbl-site .kbl-service:hover::before{transform:scaleY(1);}
    body .kbl-site .kbl-service:hover h3,body .kbl-site .kbl-article-link:hover h3{transform:translateX(4px);}
    body .kbl-site .kbl-price.kbl-soft-reveal:not(.kbl-soft-pending):hover{transform:translateY(-3px);transition-delay:0ms;}
  }
  body .kbl-site .kbl-service:focus-within::before{transform:scaleY(1);}
  @media(max-width:640px){body .kbl-site .kbl-soft-reveal{--kbl-arrival-delay:0ms!important;}body .kbl-site .kbl-soft-pending{transform:translateY(12px);}body .kbl-site.kbl-cinema-ready .kbl-hero::before{animation-name:kbl-cinema-image-mobile;}}
}
body .kbl-site.kbl-cinema-paused .kbl-hero::before,body .kbl-site.kbl-cinema-paused .kbl-cinema-light{animation-play-state:paused!important;}
body .kbl-site.kbl-cinema-paused .kbl-hero::after,body .kbl-site.kbl-cinema-paused .kbl-hero :is(.kbl-kicker,h1,.kbl-lead,.wp-block-buttons,.kbl-caption),body .kbl-site.kbl-cinema-paused .kbl-cinema-line>span{animation:none!important;opacity:1;transform:none;clip-path:none;}
body .kbl-site.kbl-cinema-paused .kbl-soft-reveal{transition:none;}
body .kbl-site.kbl-cinema-paused .kbl-soft-pending{opacity:1;transform:none;}
@keyframes kbl-classic-enter{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
@keyframes kbl-cinema-title{from{opacity:0;transform:translateY(105%);}to{opacity:1;transform:translateY(0);}}
@keyframes kbl-cinema-image{from{transform:scale(1.015) translate(-.35%,.25%);}to{transform:scale(1.065) translate(.6%,-.4%);}}
@keyframes kbl-cinema-image-mobile{from{transform:scale(1.01);}to{transform:scale(1.035);}}
@keyframes kbl-cinema-light{0%,100%{opacity:0;transform:translateX(-16%);}35%,65%{opacity:1;}90%{opacity:0;transform:translateX(16%);}}
@keyframes kbl-cinema-frame{from{clip-path:inset(0 0 100% 0);}to{clip-path:inset(0);}}
@media(max-width:640px){body .kbl-site .kbl-hero::after{inset:16px;}body .kbl-site .kbl-cinema-toggle{right:24px;bottom:24px;}body .kbl-site.kbl-cinema-ready .kbl-hero-inner{padding-bottom:100px;}body .kbl-site .kbl-cinema-line{overflow:visible;}}
@media(max-width:340px){body .kbl-site .kbl-nav p{font-size:11px;}body .kbl-site .kbl-nav a{padding-inline:0;}}
@media(prefers-reduced-motion:reduce){body .kbl-site .kbl-soft-pending{opacity:1;transform:none;}body .kbl-site .kbl-hero::before{animation:none;transform:none;}body .kbl-site .kbl-cinema-light,body .kbl-site .kbl-cinema-toggle{display:none;}body .kbl-site .kbl-cinema-line>span{opacity:1;transform:none;}}
@media print{body .kbl-site .kbl-soft-pending{opacity:1!important;transform:none!important;}body .kbl-site .kbl-cinema-light,body .kbl-site .kbl-cinema-toggle{display:none;}}
