body.kt-lower-page{margin:0;background:var(--kt-ink-900);color:var(--kt-white);font-family:var(--kt-font-jp)}
body.kt-lower-page *{box-sizing:border-box}
body.kt-lower-page a{color:inherit;text-decoration:none}
body.kt-lower-page img{max-width:100%;height:auto}
.kt-site{min-height:100vh;background:var(--kt-ink-900);color:var(--kt-white);overflow-x:hidden}
/* Lower pages: overflow:hidden on a sticky ancestor creates a scroll container and prevents the COMPANY subnav from following the viewport. */
body.kt-lower-page{overflow-x:clip}
body.kt-lower-page .kt-lower-site{overflow:visible;overflow-x:clip}
.kt-site a:focus-visible,.kt-site button:focus-visible,.kt-site summary:focus-visible{outline:2px solid var(--kt-accent-text);outline-offset:3px}
.kt-lower-main{padding-top:84px}

/* PC lower header */
.kt-lower-header{position:fixed;left:0;right:0;top:0;z-index:80;height:84px;display:flex;align-items:stretch;background:rgba(12,18,25,.96);border-bottom:1px solid rgba(255,255,255,.09);backdrop-filter:blur(10px)}
.kt-lower-header__logo{display:flex;align-items:center;flex:none;width:242px;padding-left:28px}
.kt-lower-header__logo img{display:block;width:178px;filter:brightness(0) invert(1)}
.kt-lower-header__nav{display:flex;align-items:stretch;margin-left:auto;min-width:0}
.kt-lower-header__nav-link{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:112px;padding:0 16px;transition:color .22s var(--kt-ease),background .22s var(--kt-ease)}
.kt-lower-header__nav-link small,.kt-lower-header__action small{font-family:var(--kt-font-en);font-size:8px;font-weight:600;letter-spacing:.22em;color:var(--kt-text-45)}
.kt-lower-header__nav-link strong,.kt-lower-header__action strong{margin-top:4px;font-size:12px;font-weight:700;letter-spacing:.04em;white-space:nowrap}
.kt-lower-header__nav-link:after{content:"";position:absolute;left:20px;right:20px;bottom:0;height:2px;background:var(--kt-accent-base);transform:scaleX(0);transform-origin:left;transition:transform .22s var(--kt-ease)}
.kt-lower-header__nav-link:hover,.kt-lower-header__nav-link.is-current{color:var(--kt-accent-text)}
.kt-lower-header__nav-link.is-current:after,.kt-lower-header__nav-link:hover:after{transform:scaleX(1)}
.kt-lower-header__actions{display:flex;flex:none;height:84px;border-left:1px solid rgba(255,255,255,.10)}
.kt-lower-header__action{display:flex;align-items:center;justify-content:space-between;gap:18px;width:148px;padding:0 20px;border-right:1px solid rgba(255,255,255,.10);transition:background .25s var(--kt-ease),color .25s var(--kt-ease)}
.kt-lower-header__action span{display:flex;flex-direction:column}
.kt-lower-header__action i{position:relative;width:15px;height:1px;background:currentColor;opacity:.8;transition:transform .25s var(--kt-ease)}
.kt-lower-header__action i:after{content:"";position:absolute;right:0;top:-2px;width:5px;height:5px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
.kt-lower-header__action--contact{background:var(--kt-accent-fill)}
.kt-lower-header__action--contact small{color:rgba(255,255,255,.85)}
.kt-lower-header__action--contact:hover{background:var(--kt-accent-base)}
.kt-lower-header__action--recruit{background:#131C26}
.kt-lower-header__action--recruit:hover{color:var(--kt-accent-text)}
.kt-lower-header__action:hover i{transform:translateX(3px)}

/* SP global UI */
.kt-sp-header,.kt-sp-drawer,.kt-sp-cta{display:none}

/* Shared lower layout */
.kt-lower-container{width:min(100% - 176px,1264px);margin:0 auto}
.kt-breadcrumb{display:flex;flex-wrap:nowrap;align-items:center;gap:10px;overflow:auto;padding:32px 0 0;color:var(--kt-text-45);font-size:11px;white-space:nowrap;scrollbar-width:none}
.kt-breadcrumb::-webkit-scrollbar{display:none}
.kt-breadcrumb a{transition:color .2s var(--kt-ease)}
.kt-breadcrumb a:hover{color:var(--kt-accent-text)}
.kt-breadcrumb i{font-style:normal;color:rgba(255,255,255,.22)}
.kt-page-title{padding:34px 0 44px;border-bottom:1px solid var(--kt-line)}
.kt-page-title__eyebrow{display:flex;align-items:center;gap:16px;font-family:var(--kt-font-en);font-size:13px;font-weight:700;letter-spacing:.34em;color:var(--kt-accent-text)}
.kt-page-title__eyebrow:before{content:"";width:54px;height:2px;background:var(--kt-accent-base)}
.kt-page-title h1{margin:18px 0 0;font-size:48px;line-height:1.25;letter-spacing:.04em;font-weight:900}
.kt-page-title__lead{max-width:760px;margin:22px 0 0;color:var(--kt-text-72);font-size:18px;line-height:2}
.kt-lower-grid{display:grid;grid-template-columns:180px minmax(0,1fr);gap:78px;align-items:start;padding:72px 0 120px}

/* COMPANY local navigation */
.kt-company-subnav{position:-webkit-sticky;position:sticky;top:120px;display:flex;flex-direction:column;gap:28px;align-self:start;height:max-content;z-index:2}
.kt-company-subnav__link{position:relative;display:block;padding-left:16px}
.kt-company-subnav__link:before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:2px;background:var(--kt-accent-base);transform:scaleY(0);transform-origin:top;transition:transform .2s var(--kt-ease)}
.kt-company-subnav__link small{display:block;font-family:var(--kt-font-en);font-size:9px;font-weight:600;letter-spacing:.22em;color:var(--kt-text-45);transition:color .2s var(--kt-ease)}
.kt-company-subnav__link strong{display:block;margin-top:7px;font-size:18px;line-height:1.55;font-weight:500;color:var(--kt-text-72);transition:color .2s var(--kt-ease),font-weight .2s var(--kt-ease)}
.kt-company-subnav__link:hover small,.kt-company-subnav__link.is-current small{color:var(--kt-accent-text)}
.kt-company-subnav__link:hover strong,.kt-company-subnav__link.is-current strong{color:#fff;font-weight:700}
.kt-company-subnav__link.is-current:before{transform:scaleY(1)}
.kt-company-accordion{display:none}

/* Footer */
.kt-footer{position:relative;overflow:hidden;padding:76px 88px 44px;background:var(--kt-ink-900)}
.kt-footer__media{position:absolute;inset:0;display:block;pointer-events:none;background-image:var(--kt-footer-bg-pc);background-size:cover;background-position:top center;background-repeat:no-repeat}
.kt-footer:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,18,25,.90),rgba(12,18,25,.84) 46%,rgba(12,18,25,.94))}
.kt-footer__inner{position:relative;z-index:2}
.kt-footer__top{display:flex;justify-content:space-between;gap:72px}
.kt-footer__brand{flex:0 0 300px}
.kt-footer__brand .kt-footer__logo{display:block;width:220px;filter:brightness(0) invert(1)}
.kt-footer__address{margin:26px 0 0;color:var(--kt-text-72);font-size:12px;line-height:1.9}
.kt-footer__sns{display:flex;gap:14px;margin-top:26px}
.kt-footer__sns-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.28);transition:opacity .2s,transform .2s}
.kt-footer__sns-link img{display:block;width:19px;height:19px;object-fit:contain;filter:none}
.kt-footer__sns-link--line img{width:20px;height:20px}
.kt-footer__sns-link[aria-label="X"] img{width:16px;height:16px}
.kt-footer__sns-link:hover{opacity:.78;transform:translateY(-1px)}
.kt-footer__nav{display:grid;grid-template-columns:repeat(4,150px);gap:60px;margin-left:auto}
.kt-footer__group{min-width:0}
.kt-footer__group .kt-footer__group-title{display:block;padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.16);font-size:12px;font-weight:700;letter-spacing:.08em;color:#fff}
.kt-footer__nav-link{display:flex!important;gap:7px;align-items:baseline;font-size:12px!important;line-height:2!important;color:var(--kt-text-72)!important;transition:color .2s var(--kt-ease)}
.kt-footer__nav-link span{color:var(--kt-accent-text)}
.kt-footer__nav-link:hover,.kt-footer__group a.kt-footer__group-title:hover{color:var(--kt-accent-text)!important}
.kt-footer__bottom{display:flex;justify-content:space-between;gap:40px;align-items:center;margin-top:56px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);font-size:11px;color:var(--kt-text-62)}
.kt-footer__utility{display:flex;gap:28px;flex-wrap:wrap;justify-content:flex-end}
.kt-footer__utility a{color:var(--kt-text-72);transition:color .2s}
.kt-footer__utility a:hover{color:#fff}
.kt-footer__utility a.kt-footer__utility-external{display:inline-flex;align-items:baseline;gap:4px}
.kt-footer__utility-external span{font-family:var(--kt-font-en);font-size:.9em;font-weight:600;line-height:1;color:var(--kt-accent-text)}

@media(max-width:1499px) and (min-width:1024px){
  .kt-footer:after{background:linear-gradient(180deg,rgba(12,18,25,.78) 0%,rgba(12,18,25,.82) 52%,rgba(12,18,25,.89) 100%)}
  .kt-lower-header__logo{width:210px;padding-left:22px}.kt-lower-header__logo img{width:160px}
  .kt-lower-header__nav-link{min-width:94px;padding:0 10px}.kt-lower-header__nav-link strong{font-size:11px}.kt-lower-header__action{width:128px;padding:0 14px}
  .kt-lower-container{width:min(100% - 96px,1180px)}
  .kt-lower-grid{grid-template-columns:160px minmax(0,1fr);gap:52px}
  .kt-footer{padding:64px 48px 40px}.kt-footer__top{display:block}.kt-footer__nav{grid-template-columns:repeat(2,minmax(160px,220px));gap:34px 60px;margin:48px 0 0 auto;max-width:520px}.kt-footer__bottom{align-items:flex-start}.kt-footer__utility{max-width:520px}
}

@media(max-width:1023px){
  .kt-lower-header{display:none}.kt-lower-main{padding-top:var(--kt-header-h-sp);padding-bottom:calc(var(--kt-cta-h-sp) + env(safe-area-inset-bottom))}
  .kt-sp-header{position:fixed;left:0;right:0;top:0;z-index:80;height:var(--kt-header-h-sp);display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:rgba(12,18,25,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
  .kt-sp-header__logo{display:block;width:152px}.kt-sp-header img{display:block;width:100%;filter:brightness(0) invert(1)}
  .kt-sp-menu{appearance:none;width:44px;height:44px;flex:none;border:1px solid rgba(255,255,255,.24);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;cursor:pointer}.kt-sp-menu span{display:block;width:18px;height:1.5px;background:#fff}.kt-sp-menu span:nth-child(2){background:var(--kt-accent-base)}
  .kt-sp-drawer{position:fixed;inset:0;z-index:90;display:block;background:#0C1219;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility .3s ease;overflow-y:auto;overflow-x:hidden}.kt-sp-drawer.is-open{opacity:1;visibility:visible;pointer-events:auto}.kt-sp-drawer__circle{position:absolute;border-radius:50%;pointer-events:none}.kt-sp-drawer__circle--blue{left:-170px;top:-60px;width:420px;height:420px;border:1px solid rgba(47,128,237,.28)}.kt-sp-drawer__circle--white{left:-150px;top:-30px;width:380px;height:380px;border:1px solid rgba(255,255,255,.08)}.kt-sp-drawer__circle--bottom{right:-120px;bottom:-140px;width:340px;height:340px;border:1px solid rgba(255,255,255,.07)}
  .kt-sp-drawer__head{position:relative;display:flex;justify-content:space-between;align-items:center;height:62px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.1)}.kt-sp-drawer__title{font-family:var(--kt-font-en);font-size:11px;font-weight:500;letter-spacing:.32em;color:var(--kt-accent-text)}.kt-sp-drawer__close{width:44px;height:44px;border:1px solid rgba(255,255,255,.24);background:transparent;position:relative;cursor:pointer}.kt-sp-drawer__close span{position:absolute;left:12px;top:21px;width:18px;height:1.5px;background:#fff}.kt-sp-drawer__close span:first-child{transform:rotate(45deg)}.kt-sp-drawer__close span:last-child{transform:rotate(-45deg)}
  .kt-sp-drawer nav{position:relative;padding:8px 18px 40px}.kt-sp-drawer nav a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 4px;border-bottom:1px solid rgba(255,255,255,.1)}.kt-sp-drawer__text{display:block}.kt-sp-drawer nav small{display:block;margin-bottom:8px;font-family:var(--kt-font-en);font-size:10px;font-weight:500;color:var(--kt-accent-text);letter-spacing:.26em}.kt-sp-drawer nav strong{display:block;font-size:17px;font-weight:700;letter-spacing:.1em}.kt-sp-drawer__line{flex:none;width:26px;height:1px;background:rgba(255,255,255,.4)}
  .kt-sp-cta{position:fixed;left:0;right:0;bottom:0;z-index:85;display:grid;grid-template-columns:1fr 1fr;min-height:var(--kt-cta-h-sp);padding-bottom:env(safe-area-inset-bottom);background:#0C1219;border-top:1px solid rgba(255,255,255,.12)}.kt-sp-cta a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:var(--kt-cta-h-sp);font-size:16px;font-weight:700;letter-spacing:.08em;background:var(--kt-accent-fill);box-sizing:border-box}.kt-sp-cta a:first-child{border-right:1px solid rgba(255,255,255,.12)}.kt-sp-cta a:after{content:"";display:block;flex:none;width:18px;height:1px;background:rgba(255,255,255,.9)}.kt-sp-cta a:last-child{background:var(--kt-navy)}.kt-sp-cta a:last-child:after{background:var(--kt-accent-text)}
  .kt-lower-container{width:calc(100% - 44px)}
  .kt-breadcrumb{padding-top:24px;font-size:10px;gap:8px}
  .kt-page-title{padding:22px 0 28px}.kt-page-title__eyebrow{gap:12px;font-size:11px;letter-spacing:.28em}.kt-page-title__eyebrow:before{width:34px}.kt-page-title h1{margin-top:14px;font-size:34px}.kt-page-title__lead{margin-top:18px;font-size:15px;line-height:1.9}
  .kt-lower-grid{display:block;padding:0 0 80px}.kt-company-subnav{display:none}
  .kt-company-accordion{display:block;margin:0 0 46px;border-top:1px solid var(--kt-line);border-bottom:1px solid var(--kt-line)}.kt-company-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 2px;cursor:pointer;list-style:none}.kt-company-accordion summary::-webkit-details-marker{display:none}.kt-company-accordion summary span{display:block}.kt-company-accordion summary small{display:block;font-family:var(--kt-font-en);font-size:8.5px;font-weight:600;letter-spacing:.24em;color:var(--kt-accent-text)}.kt-company-accordion summary strong{display:block;margin-top:3px;font-size:13.5px;font-weight:700}.kt-company-accordion summary i{position:relative;width:15px;height:15px}.kt-company-accordion summary i:before,.kt-company-accordion summary i:after{content:"";position:absolute;left:0;top:7px;width:15px;height:1px;background:var(--kt-text-72)}.kt-company-accordion summary i:after{transform:rotate(90deg);transition:transform .2s}.kt-company-accordion[open] summary i:after{transform:none}.kt-company-accordion__body{padding:0 0 8px}.kt-company-accordion__body a{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-top:1px solid rgba(255,255,255,.07)}.kt-company-accordion__body a small{display:block;font-family:var(--kt-font-en);font-size:8.5px;letter-spacing:.2em;color:var(--kt-text-45)}.kt-company-accordion__body a strong{display:block;margin-top:3px;font-size:15px}.kt-company-accordion__body a.is-current small{color:var(--kt-accent-text)}.kt-company-accordion__body em{font-family:var(--kt-font-en);font-size:8px;font-style:normal;letter-spacing:.18em;color:var(--kt-accent-text)}
  .kt-footer{padding:60px 22px 32px}.kt-footer__media{background-image:var(--kt-footer-bg-sp);background-position:top center}.kt-footer:after{background:linear-gradient(180deg,rgba(12,18,25,.91),rgba(12,18,25,.87) 52%,rgba(12,18,25,.96))}.kt-footer__top{display:block}.kt-footer__brand{width:auto}.kt-footer__brand .kt-footer__logo{width:200px}.kt-footer__address{font-size:12px;line-height:1.95}.kt-footer__tel,.kt-footer__fax{display:block}.kt-footer__sep{display:none}.kt-footer__sns{gap:12px;margin-top:24px}.kt-footer__sns-link{width:44px;height:44px}.kt-footer__nav{display:block;margin-top:44px}.kt-footer__group + .kt-footer__group{margin-top:30px}.kt-footer__group .kt-footer__group-title{padding-bottom:10px;margin-bottom:8px}.kt-footer__nav-link{font-size:15px!important;line-height:2.2!important}.kt-footer__bottom{display:block;margin-top:42px}.kt-footer__utility{display:block;margin-top:20px}.kt-footer__utility a{display:block;margin-top:10px}.kt-footer__copyright{display:block}
}

/* v0.62: lower header visual sync to the Claude reference */
@media(min-width:1500px){
  .kt-lower-header__logo{width:260px;padding-left:42px}
  .kt-lower-header__logo img{width:186px}
  .kt-lower-header__nav-link{min-width:118px;padding:0 15px}
  .kt-lower-header__nav-link small,.kt-lower-header__action small{font-size:9px;letter-spacing:.21em}
  .kt-lower-header__nav-link strong{margin-top:5px;font-size:13px;letter-spacing:.045em}
  .kt-lower-header__action strong{margin-top:5px;font-size:16px;letter-spacing:.045em}
  .kt-lower-header__action{padding:0 20px;gap:18px}
  .kt-lower-header__action--contact{width:158px;background:var(--kt-accent-base)}
  .kt-lower-header__action--recruit{width:136px;background:var(--kt-navy)}
  .kt-lower-header__action i{width:18px}
  .kt-lower-header__action--contact:hover{background:var(--kt-accent-fill)}
}


/* v0.64 | Lower PageHeader: sync with 20260921 company/pc.html PageHeader. */
@media(min-width:1280px){
  .kt-lower-header{
    height:84px;align-items:center;gap:40px;padding:0 0 0 40px;
    background:rgba(12,18,25,.74);border-bottom:1px solid rgba(255,255,255,.09);
  }
  .kt-lower-header__logo{display:block;flex:none;width:190px;padding:0}
  .kt-lower-header__logo img{display:block;width:100%;height:auto}
  .kt-lower-header__nav{display:flex;align-items:center;gap:34px;flex:none;margin-left:auto}
  .kt-lower-header__nav-link{
    display:block;min-width:0;padding:6px 0;
    border-bottom:1.5px solid transparent;
    text-align:left;
  }
  .kt-lower-header__nav-link:after{display:none}
  .kt-lower-header__nav-link small{
    display:block;margin:0 0 5px;font-size:9px;font-weight:500;letter-spacing:.24em;color:rgba(76,154,255,.72)
  }
  .kt-lower-header__nav-link strong{
    display:block;margin:0;font-size:13px;font-weight:500;letter-spacing:.10em;color:#fff;white-space:nowrap
  }
  .kt-lower-header__nav-link.is-current{border-bottom-color:var(--kt-accent-base)}
  .kt-lower-header__nav-link.is-current small,
  .kt-lower-header__nav-link.is-current strong{color:var(--kt-accent-base);font-weight:700}
  .kt-lower-header__nav-link:hover{border-bottom-color:var(--kt-accent-base);color:inherit}
  .kt-lower-header__nav-link:hover small,
  .kt-lower-header__nav-link:hover strong{color:var(--kt-accent-text)}
  .kt-lower-header__nav-link.is-current:hover small,
  .kt-lower-header__nav-link.is-current:hover strong{color:var(--kt-accent-base)}

  .kt-lower-header__actions{display:flex;flex:none;align-self:stretch;height:auto;border-left:0}
  .kt-lower-header__action{
    display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
    gap:4px;width:auto;padding:0 30px;border-right:0;
  }
  .kt-lower-header__action span{display:contents}
  .kt-lower-header__action small{
    display:block;margin:0;font-size:10px;font-weight:500;letter-spacing:.24em;color:rgba(255,255,255,.90)
  }
  .kt-lower-header__action strong{
    display:block;margin:0;font-size:18px;font-weight:700;letter-spacing:.08em;color:#fff;white-space:nowrap
  }
  .kt-lower-header__action i{display:none}
  .kt-lower-header__action--contact{width:auto;background:var(--kt-accent-fill)}
  .kt-lower-header__action--contact:hover{background:var(--kt-accent-base);color:#fff}
  .kt-lower-header__action--recruit{width:auto;background:var(--kt-navy)}
  .kt-lower-header__action--recruit:hover{background:#2A3F6B;color:#fff}
}

/* v0.66 | SP COMPANY PAGES + lower-site Drawer sync to Claude DS reference. */
@media(max-width:1023px){
  /* CompanySubnav SP: use the DS spacing, current marker and right rule. */
  .kt-company-accordion{
    margin:0 0 56px;
    border-top:0;
    border-bottom:1px solid var(--kt-line);
  }
  .kt-company-accordion summary{
    min-height:var(--kt-tap-min);
    padding:18px 22px;
    border-top:0;
  }
  .kt-company-accordion summary small{
    font-size:10px;
    font-weight:500;
    letter-spacing:.26em;
  }
  .kt-company-accordion summary strong{
    margin-top:8px;
    font-size:18px;
    font-weight:700;
    letter-spacing:.08em;
  }
  .kt-company-accordion summary i{
    width:14px;
    height:14px;
  }
  .kt-company-accordion summary i:before{
    left:0;top:6.5px;width:14px;height:1.5px;
    background:var(--kt-accent-base);
  }
  .kt-company-accordion summary i:after{
    left:6.5px;top:0;width:1.5px;height:14px;
    background:var(--kt-accent-base);
    transform:none;
    opacity:1;
    transition:opacity var(--kt-dur-fast,.18s) ease;
  }
  .kt-company-accordion[open] summary i:after{opacity:0}
  .kt-company-accordion__body{padding:0}
  .kt-company-accordion__body a{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:var(--kt-tap-min);
    padding:14px 22px;
    border-top:1px solid var(--kt-line-soft);
    border-left:2px solid transparent;
  }
  .kt-company-accordion__body a.is-current{
    border-left-color:var(--kt-accent-base);
  }
  .kt-company-accordion__body a small{
    display:block;
    font-size:9px;
    font-weight:500;
    letter-spacing:.22em;
    color:var(--kt-accent-text);
  }
  .kt-company-accordion__body a strong{
    display:block;
    margin-top:6px;
    font-size:16px;
    font-weight:500;
    letter-spacing:.06em;
    color:#fff;
  }
  .kt-company-accordion__body a.is-current strong{font-weight:700}
  .kt-company-accordion__body a > i{
    display:block;
    flex:none;
    width:18px;
    height:1px;
    background:var(--kt-accent-base);
  }
  .kt-company-accordion__body em{display:none}

  /* Drawer items are supplied as the five-item DS set in sp-drawer.php. */
  .kt-sp-drawer__title{color:var(--kt-accent-base)}
  .kt-sp-drawer nav a{color:#fff}
  .kt-sp-drawer nav small{color:var(--kt-accent-base)}
}

/* v0.69 | Keep footer navigation top-aligned with the company block on tablet / narrow desktop. */
@media(max-width:1499px) and (min-width:1024px){
  .kt-footer__top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:40px;
  }
  .kt-footer__brand{
    flex:0 0 260px;
  }
  .kt-footer__nav{
    width:min(100%,520px);
    max-width:520px;
    margin:0 0 0 auto;
    align-self:flex-start;
    grid-template-columns:repeat(2,minmax(160px,220px));
    gap:34px 60px;
  }
}


/* v0.42 shared lower-page primary CTA
 * Visual base = service detail primary CTA (blue / two-line / white arrow).
 */
.kt-lower-primary-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:100px;
  padding:24px 28px;
  box-sizing:border-box;
  background:var(--kt-accent-fill);
  color:#fff;
  text-decoration:none;
  transition:background-color .25s var(--kt-ease),color .25s var(--kt-ease);
}
.kt-lower-primary-cta>span{display:flex;flex-direction:column;gap:6px;min-width:0}
.kt-lower-primary-cta small{
  display:block;
  font-family:var(--kt-font-en);
  font-size:10px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.28em;
  color:rgba(255,255,255,.74);
}
.kt-lower-primary-cta strong{
  display:block;
  font-size:17px;
  font-weight:700;
  line-height:1.5;
  letter-spacing:.05em;
  color:#fff;
}
.kt-lower-primary-cta i{
  position:relative;
  display:block;
  flex:none;
  width:48px;
  height:1px;
  background:#fff;
  color:#fff;
  transition:transform .25s var(--kt-ease);
}
.kt-lower-primary-cta i::after{
  content:"";
  position:absolute;
  right:0;
  top:-3px;
  width:7px;
  height:7px;
  border-top:1px solid currentColor;
  border-right:1px solid currentColor;
  transform:rotate(45deg);
}
@media (hover:hover) and (pointer:fine){
  .kt-lower-primary-cta:hover{background:var(--kt-accent-base);color:#fff}
  .kt-lower-primary-cta:hover i{transform:translateX(4px)}
}
.kt-lower-primary-cta:focus-visible{outline:2px solid var(--kt-accent-text);outline-offset:3px}
@media(max-width:767px){
  .kt-lower-primary-cta{min-height:78px;padding:18px 20px;gap:18px}
  .kt-lower-primary-cta small{font-size:9px}
  .kt-lower-primary-cta strong{font-size:18px}
  .kt-lower-primary-cta i{width:34px}
}
@media(prefers-reduced-motion:reduce){
  .kt-lower-primary-cta,.kt-lower-primary-cta i{transition:none!important}
}


/* 2026-10-12 | Shared photo-only navy overlay for the standard (non-recruit) site.
 * TOP already has its own BUSINESS/SERVICE/RECRUIT overlays.
 * Tint photographs only: never apply this to logos, characters, signage graphics,
 * product cutouts, vehicle stock photos, icons, or the independent recruitment site.
 * Main color matches the TOP overlays; opacity depends on the role of each image.
 * This does NOT alter photo color data, image sources, or image sizing.
 */
body.kt-lower-page {
  --kt-lower-photo-navy: rgba(8, 16, 28, .04);
}
body.kt-service-detail-page {
  --kt-lower-photo-navy: rgba(8, 16, 28, .02);
}

/* Company 3-photo composition; history photos; shop detail hero; service photography. */
body.kt-company-preview-page .kt-company-about__visual,
body.kt-history-page .kt-history-item__image,
body.kt-shop-detail-page .kt-shop-detail-hero,
body.kt-service-detail-page .sdf-ph,
body.kt-service-detail-page .ig-ph,
body.kt-service-detail-page .og-img,
body.kt-service-detail-page .opt-ph,
body.kt-service-detail-page .bc-img,
body.kt-service-detail-page .sdslot.el-img {
  position: relative;
  overflow: hidden;
}
body.kt-company-preview-page .kt-company-about__visual::after,
body.kt-history-page .kt-history-item__image::after,
body.kt-shop-detail-page .kt-shop-detail-hero::after,
body.kt-service-detail-page .sdf-ph::after,
body.kt-service-detail-page .ig-ph::after,
body.kt-service-detail-page .og-img::after,
body.kt-service-detail-page .opt-ph::after,
body.kt-service-detail-page .bc-img::after,
body.kt-service-detail-page .sdslot.el-img::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--kt-lower-photo-navy);
}

/* Service-detail hero already uses ::after for text contrast; use ::before
 * so its original gradient and its overlaid text remain unchanged. */
body.kt-service-detail-page .sdi-ph::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--kt-lower-photo-navy);
}
