:root{
  --paper:#F6F2EA;
  --ink:#16191B;
  --deep:#1D2B3A;
  --mist:#DCE4E6;
  --grey:#7C7A74;
  --white:#fff;
  --bengara:#C1553C;
  --take:#7FA88B;
  --karashi:#E3C16B;
  --shikon:#453A5A;
  --asagi:#A9C6C9;

  --pad:8.3333vw;
  --padw:8.3333vw;
  --r:clamp(14px,1.6vw,31px);

  --fs-body:clamp(15px,1.18vw,23px);
  --fs-small:clamp(14px,1.18vw,18px);
  --fs-eyebrow:clamp(12px,1.05vw,17px);
  --fs-h2:clamp(24px,2.85vw,55px);
  --fs-h1:clamp(28px,4.6vw,88px);
  --fs-case:clamp(17px,1.53vw,29px);
  --fs-svc:clamp(22px,2.3vw,44px);
  --fs-lead:clamp(17px,1.84vw,31px);

  --fs-wm:16.8vw;

  --ease:cubic-bezier(.2,.8,.2,1);
}
@media (min-width:1200px){ :root{ --padw:4.1667vw; } }

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"Zen Kaku Gothic New","Outfit",system-ui,-apple-system,sans-serif;
  font-size:var(--fs-body);line-height:1.85;font-weight:400;
  letter-spacing:.01em;overflow-x:hidden;
}
html[lang=en] body{font-family:"Outfit","Zen Kaku Gothic New",system-ui,sans-serif;line-height:1.6;letter-spacing:-.005em}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,p,figure,ul{margin:0;padding:0}
ul{list-style:none}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
:focus-visible{outline:2px solid var(--bengara);outline-offset:3px}

[lang=ja] .h2,[lang=ja] .wm,[lang=ja] .stm__title,[lang=ja] .svc__title,
[lang=ja] .tm__title,[lang=ja] .cta__title,[lang=ja] .case__title,[lang=ja] .ncard__title,
[lang=ja] .qa__q,[lang=ja] .banner__text{

     word-break:auto-phrase 는 일본어를 문절 경계에서 끊는다 — 「読ん|でおく」 같은 낱말 중간 끊김을 막는다. */
  line-break:strict;text-wrap:balance;word-break:auto-phrase}

.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--deep);color:var(--paper);padding:10px 18px;border-radius:500px}
.skip:focus{left:var(--padw);top:10px}

.wrap{padding-inline:var(--pad)}
.wrap-w{padding-inline:var(--padw)}
.narrow{max-width:66.667vw;margin-inline:auto}
@media (max-width:1199px){ .narrow{max-width:none} }
@media (min-width:1600px){ .narrow{max-width:58.333vw} }

.eyebrow{font-size:var(--fs-eyebrow);letter-spacing:.14em;line-height:1.1;margin-bottom:10px}
html[lang=en] .eyebrow{text-transform:uppercase;letter-spacing:.08em}
.h2{font-size:var(--fs-h2);line-height:1.45;font-weight:500;letter-spacing:.005em}
html[lang=en] .h2{line-height:1.1;font-weight:600;letter-spacing:-.015em}

.btn{display:inline-flex;align-items:center;position:relative}
.btn__label{
  display:inline-flex;align-items:center;justify-content:center;
  height:max(52px,4.583vw);padding-inline:max(22px,2.08vw);border-radius:500px;
  background:var(--deep);color:var(--paper);
  font-size:var(--fs-small);font-weight:500;line-height:1;white-space:nowrap;
  transition:transform .45s var(--ease);
}
.btn__circle{
  width:max(52px,4.583vw);height:max(52px,4.583vw);border-radius:50%;
  background:var(--bengara);color:var(--paper);
  display:flex;align-items:center;justify-content:center;
  transition:transform .45s var(--ease);
}
.btn__circle svg{width:34%;transition:transform .45s var(--ease)}
.btn:hover .btn__label{transform:translateX(var(--cw,60px))}
.btn:hover .btn__circle{transform:translateX(calc(-1 * var(--lw,200px)))}
.btn:hover .btn__circle svg{transform:rotate(-45deg)}

.btn--light .btn__label{background:var(--paper);color:var(--deep)}
.btn--light .btn__circle{background:var(--bengara);color:var(--paper)}
.btn--dark .btn__label{background:var(--paper);color:var(--deep)}
.btn--dark .btn__circle{background:var(--deep);color:var(--paper)}

.link-arrow{display:inline-flex;align-items:center;gap:.5em;font-size:var(--fs-small);font-weight:500;line-height:1}
.link-arrow svg{width:.9em;transition:transform .35s var(--ease)}
.link-arrow:hover svg{transform:translate(3px,-3px)}

.hdr{position:fixed;inset:0 0 auto 0;z-index:60;padding-top:65px;pointer-events:none}
.hdr.is-scrolled .hdr__in{transform:translateY(-25px)}
.hdr__in{position:relative;transition:transform .4s var(--ease);height:max(52px,4.583vw);display:flex;align-items:center;justify-content:center}
.hdr__logo{position:absolute;left:var(--padw);top:50%;transform:translateY(-50%);pointer-events:auto;
  display:flex;align-items:center;gap:11px;
  transition:opacity .35s var(--ease),transform .35s var(--ease)}
.hdr__cta{position:absolute;right:var(--padw);top:50%;transform:translateY(-50%);pointer-events:auto;
  transition:opacity .35s var(--ease),transform .35s var(--ease)}
.hdr.is-scrolled .hdr__logo,.hdr.is-scrolled .hdr__cta{opacity:0;transform:translateY(calc(-50% - 10px));pointer-events:none}

.mark{width:38px;height:38px;flex:none;color:var(--deep)}
.mark svg{width:100%;height:100%}
.mark-name{font-size:17px;line-height:1.08;font-weight:500;letter-spacing:.02em;color:var(--deep);white-space:nowrap}
.mark-name b{display:block;font-weight:500}

.nav{pointer-events:auto;display:flex;align-items:center;gap:0;
  background:rgba(255,255,255,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-radius:500px;height:max(52px,4.583vw);padding:0 12px}
.nav a{display:inline-flex;align-items:center;height:calc(100% - 12px);padding:0 max(12px,1.35vw);
  border-radius:500px;font-size:var(--fs-small);line-height:1;white-space:nowrap;
  transition:background .3s var(--ease),color .3s var(--ease)}
.nav a:hover{background:var(--mist)}
.hdr__menu{display:none;position:absolute;right:var(--padw);top:50%;transform:translateY(-50%);
  pointer-events:auto;background:var(--mist);color:var(--ink);border-radius:500px;
  height:max(44px,3.6vw);padding:0 22px;font-size:var(--fs-small);font-weight:400}
@media (max-width:1199px){
  .hdr{padding-top:30px}
  .hdr.is-scrolled .hdr__in{transform:translateY(-8px)}
  .nav{display:none}
  .hdr__cta{display:none}
  .hdr__menu{display:inline-flex;align-items:center}
  .mark{width:32px;height:32px}
  .mark-name{font-size:15px}
  .hdr.is-scrolled .hdr__logo{opacity:0}
  .hdr.is-scrolled .hdr__menu{opacity:1;transform:translateY(-50%)}
}

.menu{position:fixed;inset:0;z-index:80;background:var(--mist);color:var(--deep);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;
  opacity:0;visibility:hidden;transition:opacity .4s var(--ease),visibility .4s}
.menu.is-open{opacity:1;visibility:visible}
.menu__top{position:absolute;top:30px;left:var(--pad);right:var(--pad);display:flex;align-items:center;justify-content:space-between}
.menu__close{background:var(--deep);color:var(--paper);border-radius:500px;height:44px;padding:0 22px;font-size:var(--fs-small)}
.menu__links{display:flex;flex-direction:column;align-items:center;gap:max(8px,1vw)}
.menu__links a{font-size:max(26px,3vw);line-height:1.5;font-weight:400}
.menu__cta{margin-top:max(40px,4vw)}

.banner{position:relative;padding-top:249px;margin-bottom:238px}
.banner__bg{position:absolute;left:0;right:0;top:324px;height:40.14vw;display:flex;z-index:0;overflow:hidden}
.banner__bg i{display:block;height:100%}
.banner__bg i:nth-child(1){width:39.86vw;border-top-left-radius:100% 100%;
  background:linear-gradient(140deg,#eae5d9 0%,#cfdcda 45%,#a9c6c9 100%)}
.banner__bg i:nth-child(2){width:40.07vw;border-radius:50%;
  background:linear-gradient(150deg,#f0eae0 0%,#d7e1df 55%,#b2cbcd 100%)}
.banner__bg i:nth-child(3){width:20vw;border-radius:0 100% 100% 0 / 0 50% 50% 0;
  background:linear-gradient(120deg,#e8e2d6 0%,#d0dbd9 50%,#a7c5c8 100%)}
.banner__logo{position:relative;z-index:2}

.wm{display:block;font-weight:500;line-height:.82;letter-spacing:.02em;color:var(--deep);white-space:nowrap;
  width:max-content;will-change:transform}
html[lang=en] .wm{font-weight:600;line-height:.76;letter-spacing:-.025em}
.wm--top{font-size:var(--fs-wm);margin-left:0}
.wm--btm{font-size:var(--fs-wm);margin-left:40vw}
html[lang=en]{--fs-wm:15.82vw}
.banner__media-1{position:absolute;z-index:3;left:83.33vw;top:319px;width:8.33vw;aspect-ratio:120/180;
  border-radius:var(--r);overflow:hidden;will-change:transform}
.banner__media-2{position:absolute;z-index:3;left:8.33vw;top:552px;width:20.83vw;aspect-ratio:3/2;
  border-radius:var(--r);overflow:hidden;will-change:transform}
.banner__media-1 img,.banner__media-2 img{width:100%;height:100%;object-fit:cover}
.banner__bottom{position:relative;z-index:3;margin-top:84px;display:flex;align-items:center;justify-content:center;gap:0}
.banner__scroll{position:relative;width:115px;height:115px;flex:none}
.banner__scroll svg.ring{position:absolute;left:50%;top:50%;width:131px;height:131px;transform:translate(-50%,-50%);
  animation:spin 26s linear infinite}
.banner__scroll text{font-size:11px;letter-spacing:.07em;fill:var(--ink);font-weight:500}
.banner__scroll-circle{position:absolute;left:50%;top:50%;width:63px;height:63px;margin:-31.5px 0 0 -31.5px;
  border-radius:50%;background:var(--deep);color:var(--paper);display:flex;align-items:center;justify-content:center}
.banner__scroll-circle svg{width:15px;height:23px;animation:scroll-bounce .8s cubic-bezier(.37,0,.63,1) infinite alternate}
@keyframes scroll-bounce{from{transform:translateY(-2.25px)}to{transform:translateY(2.25px)}}
.banner__text{position:absolute;left:62.5vw;top:53px;width:22vw;font-size:var(--fs-body)}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}

.intro{padding-block:0;margin-bottom:239px}
.intro__text{color:var(--grey);font-size:var(--fs-lead);line-height:1.85;font-weight:400;text-align:center;letter-spacing:.005em}
html[lang=en] .intro__text{font-weight:300;line-height:1.6;letter-spacing:-.02em}
.line{position:relative;display:block}
.line-double{position:absolute;inset:0;color:var(--ink);clip-path:inset(0 100% 0 0)}
.intro__cta{margin-top:38px;text-align:center}

.cases{margin-bottom:0}
.cases__head{text-align:center;margin-bottom:75px}
.cases__grid{display:grid;grid-template-columns:1fr 1fr;gap:0 8.33vw;padding-inline:var(--padw)}
.cases__col:nth-child(2){margin-top:12.7vw}
.case{display:block;margin-bottom:7.8vw}
.case__media{position:relative;border-radius:var(--r);overflow:hidden;background:#e6e1d8}
.case__media img{width:100%;height:100%;object-fit:cover}
.case__title{font-size:var(--fs-case);font-weight:500;line-height:1.45;margin-top:30px}
html[lang=en] .case__title{font-weight:600;line-height:1.1}
.tags{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}
.tag{display:inline-flex;align-items:center;gap:8px;background:var(--white);border-radius:500px;
  padding:9px 22px;font-size:var(--fs-small);line-height:1.6}
.tag i{width:max(20px,1.6vw);height:max(20px,1.6vw);display:block;flex:none}
.tag svg{width:100%;height:100%;fill:var(--ink)}
.cases__cta{display:flex;justify-content:center;margin-top:75px}

.case__badge{position:absolute;left:0;top:0;width:150px;height:150px;margin:-75px 0 0 -75px;
  pointer-events:none;opacity:0;transform:scale(.6);transition:opacity .3s var(--ease),transform .4s var(--ease);z-index:4}
.case:hover .case__badge{opacity:1;transform:scale(1)}
.case__badge .blob{position:absolute;inset:22px;fill:var(--asagi)}
.case__badge .ring{position:absolute;inset:0;animation:spin2 9s linear infinite}
.case__badge .ring text{font-size:12px;letter-spacing:.1em;fill:var(--white);font-weight:600}
.case__badge .arr{position:absolute;left:50%;top:50%;width:34px;height:34px;transform:translate(-50%,-50%);color:var(--ink)}
@keyframes spin2{to{transform:rotate(360deg)}}

.circle{margin-top:34px}
.circle__dome{height:900px;overflow:hidden;position:relative}
.circle__dome i{position:absolute;left:-50vw;top:0;width:200vw;height:200vw;background:var(--deep);border-radius:50%}
.circle__content{background:var(--deep);color:var(--paper);padding-top:1px;margin-top:-1px}

.stm{position:relative}
.stm__top,.stm__bottom{position:relative}
.stm__title{position:sticky;top:450px;z-index:1;text-align:center;
  font-size:var(--fs-h1);line-height:1.3;font-weight:500;letter-spacing:.02em;color:var(--paper);pointer-events:none}
html[lang=en] .stm__title{line-height:1.1;font-weight:600;letter-spacing:-.02em}
.stm__flow{overflow-x:clip}
.stm__m{position:relative;z-index:2;border-radius:var(--r);overflow:hidden}
.stm__m img{width:100%;height:100%;object-fit:cover}
.stm__m--1{width:17.92vw;aspect-ratio:258/372;margin-inline:auto;transform:rotate(-3deg)}
.stm__m--2{width:29.17vw;aspect-ratio:2/3;margin-left:75vw}
.stm__bottom{margin-top:181px}
.stm__m--3{width:45.83vw;aspect-ratio:3/2;margin-left:12.5vw}

.svcs{padding-inline:var(--padw);display:flex;flex-direction:column;gap:20px;margin-top:238px}
.svc{border-radius:var(--r);padding:max(26px,4.167vw) max(24px,4.167vw)}
.svc--bengara{background:var(--bengara);color:#fff}
.svc--take{background:var(--take);color:var(--ink)}
.svc--karashi{background:var(--karashi);color:var(--ink)}
.svc--shikon{background:var(--shikon);color:var(--paper)}
.svc--asagi{background:var(--asagi);color:var(--ink)}
.svc__head{display:flex;align-items:center;gap:max(14px,1.53vw)}
.svc__icon{width:max(44px,4.44vw);height:max(44px,4.44vw);flex:none}
.svc__icon svg{width:100%;height:100%;fill:currentColor}
.svc__title{font-size:var(--fs-svc);font-weight:500;line-height:1.3;letter-spacing:.01em}
html[lang=en] .svc__title{font-weight:600;line-height:1.1;letter-spacing:-.015em}
.svc__body{display:grid;grid-template-columns:70% 30%;gap:30px;margin-top:max(24px,2.5vw)}
.svc__text{max-width:720px;align-self:end}
@media (min-width:1441px){.svc__text{max-width:none;width:85.72%}}
@media (min-width:1600px){.svc__text{width:92.86%}}
.svc__link{margin-top:24px;display:inline-flex}
.svc__pills{display:flex;flex-direction:column;align-items:flex-start;gap:12px;align-self:end}
.pill{border:1px solid currentColor;border-radius:500px;padding:6px 22px;font-size:var(--fs-small);line-height:1.6}

.tm{padding-inline:var(--pad);display:grid;grid-template-columns:45% 1fr;gap:10vw;align-items:center;margin-top:239px}
.tm__media{border-radius:var(--r);overflow:hidden;aspect-ratio:2/3}
.tm__media img{width:100%;height:100%;object-fit:cover}
.tm__title{font-size:var(--fs-h2);font-weight:500;line-height:1.45;letter-spacing:.005em}
html[lang=en] .tm__title{font-weight:600;line-height:1.1;letter-spacing:-.015em}
.tm__text{margin-top:22px}
.tm__cta{margin-top:34px;display:inline-flex}

.t2m{position:relative;padding-block:0;margin-top:239px;margin-bottom:239px;display:grid;
  grid-template-columns:20.83vw 1fr 29.17vw;align-items:center;gap:0;padding-left:var(--padw);padding-right:0}
.t2m__small{width:20.83vw;aspect-ratio:300/416;border-radius:var(--r);overflow:hidden;align-self:start}
.t2m__content{padding-inline:4.17vw;max-width:37.5vw}
.t2m__large{width:29.17vw;aspect-ratio:2/3;border-radius:var(--r);overflow:hidden;justify-self:end}
.t2m img{width:100%;height:100%;object-fit:cover}
.t2m__text{margin-top:22px}
.t2m__cta{margin-top:34px;display:inline-flex}

.slider{overflow:hidden;margin-top:0}
.slider__head{text-align:center;margin-bottom:75px}
.slider__track{display:flex;align-items:flex-start;gap:50px;padding-left:8.33vw;transition:transform .35s var(--ease);will-change:transform}
.qa{flex:0 0 58.33vw;border:1px solid var(--ink);border-radius:var(--r);padding:max(24px,3.9vw);
  display:flex;flex-direction:column}
.qa--first{background:var(--deep);color:var(--paper);border-color:var(--deep)}
.qa__mark{width:82px;height:72px;margin-bottom:37px;display:flex;align-items:center;
  font-size:64px;line-height:1;font-weight:600;color:var(--asagi);letter-spacing:0}
.qa__q{font-size:var(--fs-case);font-weight:500;line-height:1.55;margin-bottom:18px}
html[lang=en] .qa__q{font-weight:600;line-height:1.25}
.qa__who{margin-top:38px;font-size:max(15px,1.25vw);line-height:1.6;letter-spacing:.12em}
html[lang=en] .qa__who{text-transform:uppercase;letter-spacing:.04em}
.slider__nav{display:flex;justify-content:flex-end;gap:12px;padding-inline:8.33vw;margin-top:66px}
.slider__nav button{width:max(52px,4.583vw);height:max(52px,4.583vw);border-radius:50%;background:var(--mist);
  color:var(--ink);display:flex;align-items:center;justify-content:center;transition:transform .3s var(--ease)}
.slider__nav button:hover{transform:scale(1.06)}
.slider__nav svg{width:38%}

.logos{margin-top:239px}
.logos__head{text-align:center;margin-bottom:75px}
.logos__row{display:flex;overflow:hidden;margin-bottom:0}
.logos__row+.logos__row{margin-top:20px}
.logos__set{display:flex;flex:none;align-items:center;gap:0}
.logos__set span{display:inline-flex;align-items:center;justify-content:center;
  height:80px;padding:0 34px;margin-inline:20px;flex:none;white-space:nowrap;
  border:1px solid rgba(22,25,27,.22);border-radius:500px;
  font-size:max(17px,1.45vw);line-height:1;letter-spacing:.02em;color:var(--ink)}
.logos__row--a .logos__set{animation:marq-l 33.6s linear infinite}
.logos__row--b .logos__set{animation:marq-r 33.6s linear infinite}
@keyframes marq-l{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@keyframes marq-r{from{transform:translateX(-100%)}to{transform:translateX(0)}}

.news{margin-top:239px;padding-inline:var(--pad)}
.news__head{text-align:center;margin-bottom:75px}
.news__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px}
.ncard{background:var(--white);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.ncard__media{aspect-ratio:360/198;overflow:hidden}
.ncard__media img{width:100%;height:100%;object-fit:cover}
.ncard__body{padding:57px 37px 47px;display:flex;flex-direction:column;flex:1}
.ncard__title{font-size:var(--fs-case);font-weight:500;line-height:1.5}
html[lang=en] .ncard__title{font-weight:600;line-height:1.15}
.ncard__text{margin-top:14px;font-size:var(--fs-small);line-height:1.8}
.ncard__cta{margin-top:auto;padding-top:26px}

.cta{margin-top:239px;padding-inline:var(--padw)}
.cta__in{position:relative;overflow:hidden;background:var(--mist);border-radius:var(--r);
  padding:60px max(24px,4.167vw);display:grid;grid-template-columns:20.83vw 1fr;gap:8.33vw;align-items:center}
.cta__media{border-radius:var(--r);overflow:hidden;aspect-ratio:300/359}
.cta__media img{width:100%;height:100%;object-fit:cover}
.cta__content{position:relative;z-index:2;max-width:37.5vw}
.cta__title{font-size:var(--fs-svc);font-weight:500;line-height:1.4;letter-spacing:.01em}
html[lang=en] .cta__title{font-weight:600;line-height:1.1;letter-spacing:-.015em}
.cta__text{margin-top:22px}
.cta__btn{margin-top:34px;display:inline-flex}
.cta__bg{position:absolute;right:4.17vw;bottom:0;width:36.67vw;height:18.33vw;z-index:1}
.cta__bg svg{width:100%;height:100%}

.foot{background:var(--deep);color:var(--paper);position:relative;z-index:1}
.page{background:var(--deep)}
main{display:block;background:var(--paper);position:relative;z-index:2;padding-bottom:239px;
  border-bottom-left-radius:var(--r);border-bottom-right-radius:var(--r)}
.foot__tiles{display:grid;grid-template-columns:repeat(5,1fr);padding-top:128px}
.tile{position:relative;height:243px;border:1px solid rgba(246,242,234,.6);border-radius:var(--r);
  margin-left:-1px;padding:25px;display:flex;flex-direction:column;justify-content:space-between;
  transition:background .35s var(--ease),color .35s var(--ease)}
.tile__icon{align-self:flex-end;width:44px;height:44px}
.tile__icon svg{width:100%;height:100%;fill:currentColor}
.tile__title{font-size:max(16px,1.3vw);font-weight:500;line-height:1.35}
.tile--bengara:hover{background:var(--bengara);color:#fff;border-color:var(--bengara)}
.tile--take:hover{background:var(--take);color:var(--ink);border-color:var(--take)}
.tile--karashi:hover{background:var(--karashi);color:var(--ink);border-color:var(--karashi)}
.tile--shikon:hover{background:var(--shikon);color:var(--paper);border-color:var(--shikon)}
.tile--asagi:hover{background:var(--asagi);color:var(--ink);border-color:var(--asagi)}
.foot__cols{display:grid;grid-template-columns:3fr 2fr 2fr 1fr 3fr;padding:87px var(--padw) 0}
.foot__hours{grid-column:1}
.foot__nav{grid-column:3}
.foot__info{grid-column:5}
.foot__hours p{margin-bottom:20px;font-size:var(--fs-small)}
.song{display:flex;align-items:center;gap:0;flex-wrap:wrap}
.song__a{margin-right:18px}
.song__dot{width:8px;height:8px;border-radius:50%;background:var(--bengara);margin-right:18px;flex:none}
.foot__nav a,.foot__info a{display:inline-flex;align-items:center;border-radius:500px;padding:5px 14px;margin-left:-14px;
  transition:background .3s var(--ease),color .3s var(--ease)}
.foot__nav a:hover,.foot__info a:hover{background:var(--bengara);color:#fff}
.foot__nav li{margin-bottom:18px}
.foot__info p{margin-bottom:24px}
.foot__social{display:flex;gap:27px;margin-top:20px}
.foot__social a{width:47px;height:47px;border-radius:50%;background:var(--paper);color:var(--deep);
  display:flex;align-items:center;justify-content:center;padding:0;margin:0;transition:background .3s var(--ease)}
.foot__social a:hover{background:var(--bengara);color:#fff}
.foot__social svg{width:22px;height:22px;fill:currentColor}
.foot__bottom{display:flex;justify-content:space-between;gap:40px;padding:104px var(--padw) 60px;font-size:var(--fs-small)}
.foot__bottom ul{display:flex;gap:26px;flex-wrap:wrap}
.foot__note{max-width:46ch;line-height:1.7;opacity:.82}
.lang{display:inline-flex;align-items:center;gap:8px}

@media (max-width:1199px){
  .banner{padding-top:18.9vw;margin-bottom:14vw}

  :root{--fs-wm:22vw}
  html[lang=en]{--fs-wm:20.5vw}
  .banner__logo{overflow-x:clip}
  .wm--btm{margin-left:21vw}
  .banner__bg{top:36vw;height:42vw}
  .banner__media-1{left:69.4vw;right:auto;top:3.1vw;width:22.2vw;aspect-ratio:200/330}
  .banner__media-2{left:8.33vw;top:55vw;width:33.4vw;aspect-ratio:300/205}
  .banner__bottom{margin-top:30vw;gap:0}
  .banner__text{position:absolute;left:54vw;top:-6vw;width:28vw;text-align:left}
  .intro{margin-bottom:120px}
  .cases__head{margin-bottom:70px}
  .cases__grid{grid-template-columns:1fr;gap:0}
  .cases__col:nth-child(2){margin-top:0}
  .case{margin-bottom:80px}
  .circle__dome{height:300px}
  .stm__gap{height:140px!important}
  .stm__title{top:38vh}
  .stm__bottom{margin-top:100px}
  .stm__m--1{width:52vw}
  .stm__m--2{width:64vw;margin-left:auto;margin-right:0}
  .stm__m--3{width:80vw;margin-left:0}
  .svcs{margin-top:140px;gap:16px}
  .svc__body{grid-template-columns:1fr;gap:26px}
  .svc__pills{flex-direction:row;flex-wrap:wrap}
  .tm{grid-template-columns:1fr;gap:40px;margin-top:140px}
  .tm__media{aspect-ratio:4/3;order:-1}
  .t2m{grid-template-columns:1fr;gap:40px;margin-top:140px;margin-bottom:140px}
  .t2m__small{width:60vw;order:1}
  .t2m__content{padding-inline:0;max-width:none;order:0}
  .t2m__large{width:100%;aspect-ratio:4/3;order:2;justify-self:stretch}
  .slider__track{gap:24px;padding-left:var(--pad)}
  .qa{flex:0 0 calc(100vw - 2 * var(--pad))}
  .slider__nav{padding-inline:var(--pad);margin-top:40px}
  .logos{margin-top:140px}
  .logos__set span{height:60px;padding:0 24px;margin-inline:12px;font-size:16px}
  .news{margin-top:140px}
  .news__grid{grid-template-columns:1fr;gap:26px}
  .ncard__body{padding:34px 26px}
  .cta{margin-top:140px}
  .cta__in{grid-template-columns:1fr;gap:34px;padding:34px}
  .cta__media{aspect-ratio:4/3}
  .cta__content{max-width:none}
  .cta__bg{display:none}
  main{padding-bottom:140px}
  .foot__tiles{grid-template-columns:repeat(3,1fr);padding-top:80px}
  .foot__cols{grid-template-columns:1fr;gap:50px;padding-top:70px}
  .foot__hours,.foot__nav,.foot__info{grid-column:1}
  .foot__bottom{flex-direction:column;padding-top:60px;gap:20px}
}
@media (max-width:767px){
  .foot__tiles{grid-template-columns:1fr}
  .tile{height:auto;flex-direction:row;align-items:center;justify-content:space-between;padding:20px 24px}
  .tile__icon{width:34px;height:34px;align-self:center}
  .banner{padding-top:40vw;margin-bottom:22vw}
  :root{--fs-wm:23vw}
  html[lang=en]{--fs-wm:20vw}
  .wm--btm{margin-left:19vw}
  .banner__media-1{left:auto;right:5vw;top:25vw;width:29vw;aspect-ratio:108/145}
  .banner__media-2{position:static;width:53vw;margin:8vw 0 0 8.8vw;aspect-ratio:200/130}
  .banner__bottom{margin-top:8vw;flex-direction:column;gap:7vw}
  .banner__text{position:static;width:auto;text-align:center;order:-1;padding-inline:9vw}
  .banner__bg{top:66vw;height:56vw}
  .stm__m--1{width:72vw}
  .stm__m--2{width:78vw}
  .stm__m--3{width:92vw}
  .news__grid{gap:20px}
  .qa__mark{font-size:48px;height:56px;margin-bottom:24px}
}
