html,body{overflow-x:hidden}
body.home{
  background:linear-gradient(180deg,#fff 0%,#fff 20%,#f3f8fd 40%,#fff 58%,#eef5fc 76%,#fff 100%) !important;
}
img{max-width:100%;display:block}
.nowrap{white-space:nowrap}
.logo-link{display:inline-flex;align-items:center}

.ph.has-image{background:#d7e6f4}
.ph.has-image::after{display:none}
.ph.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.01)}
.hero-slider{position:absolute;inset:0;z-index:0;background:#9fc4dd}
.hero-slide{position:absolute;inset:0;opacity:0;transform:scale(1.04);transition:opacity 1.25s ease,transform 7s ease}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-slide > img:not(.hero-logo-brand){width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(1.14) contrast(1.06)}
.hero-success-mobile{display:none}
.hero-slide:nth-child(3) > img:not(.hero-logo-brand){object-position:center center}
.hero-logo-slide{
  background:
    radial-gradient(circle at 50% 44%,rgba(255,255,255,.95),rgba(224,241,250,.72) 42%,rgba(146,196,225,.52) 76%),
    linear-gradient(135deg,#eff9ff 0%,#cfe9f7 48%,#90c8e2 100%);
}
.hero-logo-slide::before{
  content:"";
  position:absolute;
  inset:-16% -10%;
  background:url(airflow.svg) center/cover no-repeat;
  opacity:.38;
  mix-blend-mode:screen;
}
.hero-logo-slide::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.54),rgba(255,255,255,0) 58%);
}
.hero-logo-haze{
  position:absolute;
  right:8%;
  top:50%;
  width:min(720px,50vw);
  aspect-ratio:1.6;
  transform:translateY(-50%);
  border-radius:999px;
  background:rgba(255,255,255,.44);
  filter:blur(8px);
  box-shadow:0 26px 70px rgba(31,63,110,.12);
}
.hero-logo-slide .hero-logo-brand{
  position:absolute;
  right:clamp(44px,8vw,160px);
  top:50%;
  width:min(720px,50vw);
  height:auto;
  transform:translateY(-50%);
  opacity:.82;
  object-fit:contain;
  filter:drop-shadow(0 24px 42px rgba(31,63,110,.16));
}
.hero .hero-veil{
  background:
    linear-gradient(90deg,rgba(255,255,255,.2) 0%,rgba(255,255,255,.06) 40%,rgba(255,255,255,0) 70%),
    linear-gradient(0deg,rgba(27,83,132,.2) 0%,rgba(27,83,132,0) 54%);
}
.hero .hero-air{opacity:.16}
.svc-card .ph.has-image img,.pillar .card .ph.has-image img{object-position:center}
.fields .f .ph.has-image img,.guide-card .ph.has-image img{object-position:center}
.svc-card,.pillar .card,.fields .f,.guide-card,.panel-link,.work-card{isolation:isolate}
.svc-card .ph.has-image img,.pillar .card .ph.has-image img,.fields .f .ph.has-image img,.guide-card .ph.has-image img{filter:saturate(.96) contrast(1.04)}
.hero .lead,.intro .big,.shead p,.panel-body p,.reason-card h3,.reason-card p,.ceo .body p,.cta p{line-break:strict;text-wrap:pretty}
.intro .big.intro-copy{display:flex;flex-direction:column;gap:8px;line-height:1.55;letter-spacing:0}
.intro .intro-line{display:block}
.intro .big .mut{color:#22344e;font-weight:800}
.intro .intro-answer{margin-top:8px;color:var(--navy)}
.intro .big em{background:none;-webkit-text-fill-color:var(--blue);color:var(--blue)}
.shead h2,.panel-body h2,.ceo .body h2,.cta h2{text-wrap:balance}

.hero-messages{position:relative;min-height:270px}
.hero-messages-static{min-height:0}
.hero-message{position:absolute;inset:0 auto auto 0;max-width:720px;opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease;pointer-events:none}
.hero-messages-static .hero-message{position:relative;inset:auto;max-width:min(760px,100%)}
.hero-message.is-active{opacity:1;transform:none;pointer-events:auto}
.hero-message h1{font-size:64px;font-weight:900;letter-spacing:.08em;line-height:1.34;margin-bottom:18px;text-shadow:0 8px 40px rgba(255,255,255,.75)}
.hero-message h1.en{font-size:88px;letter-spacing:.04em;line-height:1;margin-bottom:22px;white-space:nowrap}
.hero .hero-copy{color:var(--navy)}
.hero .vbar{color:#426f9d;text-shadow:0 2px 18px rgba(255,255,255,.75)}
.hero .vbar::before{background:#6691c4}
.hero .sub-catch{font-size:28px;color:var(--navy);text-shadow:0 4px 24px rgba(255,255,255,.72)}
.hero .lead{font-size:17px;color:#263e5b;text-shadow:0 2px 16px rgba(255,255,255,.72);max-width:650px}
.hero .acts a.main{background:var(--navy);color:#fff;box-shadow:0 16px 36px rgba(31,63,110,.2)}
.hero .acts a.sub{color:var(--navy);text-shadow:0 2px 14px rgba(255,255,255,.7)}
.hero .scroll-ind{color:var(--navy);text-shadow:0 2px 14px rgba(255,255,255,.7)}
.hero .scroll-ind::after{background:var(--navy)}
.hero-progress{display:flex;gap:12px;margin-top:28px}
.hero-progress span{width:42px;height:2px;background:rgba(31,63,110,.18);position:relative;overflow:hidden}
.hero-progress span::after{content:"";position:absolute;inset:0;background:var(--navy);transform:scaleX(0);transform-origin:left}
.hero-progress span.is-active::after{animation:heroProgress 5.2s linear forwards}
@keyframes heroProgress{to{transform:scaleX(1)}}

.air-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;opacity:.46;mix-blend-mode:screen}
.hero .air-canvas{opacity:.18}
.page-hero .air,.page-hero .air-canvas{display:none}
.ceo .air-canvas,.cta .air-canvas{opacity:.22}

body.home header.nav{
  position:fixed;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,0));
  border-bottom:1px solid transparent;
  transition:background .28s ease,box-shadow .28s ease,border-color .28s ease,padding .28s ease;
}
body.home header.nav .logo{filter:none;transition:filter .28s ease}
body.home header.nav .menu a:not(.cta){color:var(--navy);text-shadow:0 2px 14px rgba(255,255,255,.72)}
body.home header.nav .menu a.cta{background:var(--navy);color:#fff}
body.home header.nav.is-scrolled{
  padding-top:18px;
  padding-bottom:18px;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(12px);
  border-bottom-color:rgba(211,223,238,.78);
  box-shadow:0 14px 40px rgba(31,63,110,.09);
}
body.home header.nav.is-scrolled .logo{filter:none}
body.home header.nav.is-scrolled .menu a:not(.cta){color:var(--ink);text-shadow:none}
body.home header.nav.is-scrolled .menu a.cta{background:var(--navy);color:#fff}

.nav-toggle{
  display:none;
  width:44px;
  height:44px;
  border:1px solid rgba(31,63,110,.14);
  border-radius:50%;
  background:rgba(255,255,255,.86);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  cursor:pointer;
}
.nav-toggle span{width:18px;height:2px;border-radius:2px;background:var(--navy);transition:transform .2s ease,opacity .2s ease}
header.nav.menu-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
header.nav.menu-open .nav-toggle span:nth-child(2){opacity:0}
header.nav.menu-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.is-visible{opacity:1;transform:none}

.curveTop svg,.wave svg{animation:softWave 14s ease-in-out infinite;transform-origin:center}
@keyframes softWave{
  0%,100%{translate:0 0}
  50%{translate:-14px 0}
}

.form-status{
  min-height:28px;
  margin-top:20px;
  font-size:14px;
  line-height:1.7;
  text-align:center;
  color:var(--gray);
}
.form-status.is-success{color:#237254}
.form-status.is-error{color:#a33a3a}
.form-status a{text-decoration:underline;text-underline-offset:3px}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.top-panels{padding-top:98px;padding-bottom:122px;background:#fff}
.top-panels::before,.top-panels::after{display:none}
.panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.panel-link{position:relative;min-height:430px;overflow:hidden;background:#6d96c5;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center}
.panel-link::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,63,110,.16),rgba(31,63,110,.62));z-index:1}
.panel-bg{position:absolute;inset:0}
.panel-bg img{filter:saturate(.9) contrast(1.04);transition:transform 1.1s ease}
.panel-link:hover .panel-bg img{transform:scale(1.06)}
.panel-body{position:relative;z-index:2;padding:40px 34px;max-width:430px}
.panel-en{display:block;font-size:13px;letter-spacing:.34em;margin-bottom:18px;color:#dcebf7}
.panel-body h2{font-size:34px;font-weight:900;letter-spacing:.06em;margin-bottom:16px}
.panel-body p{font-size:14.5px;line-height:2;color:#edf5fb;margin-bottom:28px}
.panel-btn{display:inline-block;border:1px solid rgba(255,255,255,.82);border-radius:999px;padding:12px 28px;font-size:13px;font-weight:700}

.works-showcase{position:relative;padding-top:118px;padding-bottom:124px;background:#f3f7fb;overflow:hidden}
.works-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.72) 36%,rgba(239,246,252,.88)),
    url("images/field-jp-large-space.png") center/cover no-repeat;
  opacity:.92;
}
.works-showcase .wrap{max-width:none;padding-left:0;padding-right:0}
.works-showcase .shead{margin-bottom:56px;padding:0 24px}
.works-showcase .shead p{max-width:680px;margin-left:auto;margin-right:auto}
.works-slider{position:relative;display:block}
.works-track{min-width:0;overflow:hidden;scroll-snap-type:none;scrollbar-width:none;scroll-behavior:auto}
.works-slider.is-carousel .works-track{cursor:grab}
.works-track::-webkit-scrollbar{display:none}
.works-rail{display:flex;gap:24px;min-width:100%;padding:0 clamp(56px,12vw,180px) 16px;will-change:transform;transition:transform .92s cubic-bezier(.22,1,.36,1)}
.works-arrow{position:absolute;top:42%;z-index:5;width:62px;height:126px;border-radius:0;border:0;background:rgba(24,34,48,.82);color:#fff;font-size:46px;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 18px 46px rgba(31,63,110,.18);cursor:pointer;transition:background .2s ease,transform .2s ease}
.works-arrow.prev{left:0}
.works-arrow.next{right:0}
.works-arrow:hover{background:rgba(31,63,110,.94);transform:translateY(-2px)}
.works-arrow[disabled]{opacity:.34;cursor:default;transform:none;background:#fff;color:var(--navy)}
.work-card{width:clamp(360px,42vw,640px);flex:0 0 clamp(360px,42vw,640px);background:#6994c7;color:#fff;text-align:center;scroll-snap-align:start;box-shadow:0 24px 58px rgba(31,63,110,.16)}
.work-card img{width:100%;height:clamp(240px,24vw,350px);object-fit:cover;filter:saturate(1.03) contrast(1.04);cursor:zoom-in}
.work-card span{display:block;border-top:1px solid rgba(255,255,255,.82);font-size:16px;font-weight:700;letter-spacing:.04em;padding:16px 22px}
.field-card span{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 10px;text-align:left}
.field-card span em{font-family:"Cormorant Garamond",serif;font-style:normal;font-size:22px;color:#dcebf7;grid-row:1 / span 2}
.field-card span small{display:block;grid-column:2;font-size:12px;font-weight:500;letter-spacing:.02em;color:rgba(255,255,255,.84)}
.sign strong span{
  display:block;
  margin-top:4px;
  font-family:"Montserrat",sans-serif;
  font-size:11px;
  letter-spacing:.16em;
  color:var(--blue);
}

.reason-grid{gap:24px}
.reason-card{
  position:relative;
  min-height:172px;
  padding:34px 34px 34px 30px;
  border:1px solid rgba(211,223,238,.72);
  background:linear-gradient(135deg,#fff 0%,#f8fbfe 100%);
}
.reason-card::after{
  content:"";
  position:absolute;
  inset:auto 22px 18px auto;
  width:86px;
  height:86px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(125,180,230,.18),rgba(125,180,230,0) 70%);
  pointer-events:none;
}
.reason-card .ic{
  position:relative;
  flex:0 0 78px;
  height:78px;
  border-radius:18px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,0)),
    linear-gradient(135deg,var(--navy),var(--blue) 58%,var(--sky));
  box-shadow:0 18px 34px rgba(31,63,110,.22);
}
.reason-card .ic::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.3);
}
.reason-card .ic .ic-no{
  position:absolute;
  right:-8px;
  top:-10px;
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  color:var(--blue);
  font-family:"Montserrat",sans-serif;
  font-size:10px;
  font-weight:700;
  box-shadow:0 8px 20px rgba(31,63,110,.16);
}
.reason-card .ic svg{
  position:relative;
  z-index:1;
  width:38px;
  height:38px;
  stroke:#fff;
  fill:none;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.reason-card h3{font-size:18px;line-height:1.55;text-wrap:pretty}
.reason-card p{line-height:1.9;text-wrap:pretty}
.reason-card:hover{transform:translateY(-4px);box-shadow:0 24px 58px rgba(31,63,110,.11)}
.reason-card:hover .ic{transform:translateY(-2px) rotate(-1deg)}
.reason-card,.reason-card .ic{transition:transform .25s ease,box-shadow .25s ease}
.section-more{
  margin-top:38px;
  display:flex;
  justify-content:center;
}
.section-more a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 30px;
  border-radius:999px;
  border:1px solid rgba(31,63,110,.2);
  background:#fff;
  color:var(--navy);
  font-weight:800;
  font-size:14px;
  box-shadow:0 14px 34px rgba(31,63,110,.08);
  transition:transform .2s ease,background .2s ease,color .2s ease;
}
.section-more a::after{content:"→";margin-left:12px}
.section-more a:hover{transform:translateY(-2px);background:var(--navy);color:#fff}
.section-more-dark{justify-content:flex-start;margin-top:28px}
.section-more-dark a{background:rgba(255,255,255,.94)}

.zoomable-image{cursor:zoom-in}
.lightbox-open{overflow:hidden}
.image-lightbox{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:34px;background:rgba(12,27,47,.78);backdrop-filter:blur(8px)}
.image-lightbox.is-open{display:flex}
.image-lightbox img{max-width:min(1120px,92vw);max-height:82vh;object-fit:contain;box-shadow:0 28px 80px rgba(0,0,0,.34);background:#fff}
.image-lightbox .close{position:absolute;top:20px;right:22px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.94);color:var(--navy);font-size:28px;line-height:1;cursor:pointer}
.image-lightbox .caption{position:absolute;left:32px;right:32px;bottom:18px;text-align:center;color:#fff;font-size:13px;letter-spacing:.04em}

.sec.mist{background:#eef5fc}
.svc-card,.reason-card,.pillar .card,.r-card{border-radius:8px}
.svc-card .ph,.pillar .card .ph{border-radius:0}
.fields .f,.guide-card{border-radius:8px}

.ceo .inner{
  max-width:1180px;
  display:grid;
  grid-template-columns:minmax(340px,.9fr) minmax(0,1fr);
  gap:58px;
  align-items:center;
  text-align:left;
}
.ceo-visual{
  position:relative;
  min-height:440px;
  overflow:hidden;
  border-radius:8px;
  box-shadow:0 28px 70px rgba(10,28,52,.24);
}
.ceo-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(31,63,110,0),rgba(31,63,110,.26));
  pointer-events:none;
}
.ceo-visual img{
  width:100%;
  height:100%;
  min-height:440px;
  object-fit:cover;
  object-position:center;
  filter:saturate(1.06) contrast(1.05);
}
.ceo .body p{margin-left:0;margin-right:0}

@media(max-width:980px){
  .wrap{padding-left:32px;padding-right:32px}
  .svc-grid,.pillar,.fields{gap:22px}
  .reason-card{padding:32px 28px}
  .hero h1.en{font-size:62px}
  .hero-message h1{font-size:52px}
  .hero-message h1.en{font-size:68px}
  .hero .sub-catch{font-size:23px}
}

@media(max-width:1080px){
  header.nav{padding:16px 24px}
  body.home header.nav.is-scrolled{padding:14px 24px}
  header.nav .logo{height:28px}
  .nav-toggle{display:inline-flex;position:relative;z-index:61}
  header.nav .menu{
    position:fixed;
    top:72px;
    left:18px;
    right:18px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:12px;
    border-radius:22px;
    background:rgba(255,255,255,.97);
    border:1px solid rgba(211,223,238,.9);
    box-shadow:0 24px 60px rgba(31,63,110,.16);
    opacity:0;
    visibility:hidden;
    transform:translateY(-12px);
    transition:opacity .22s ease,visibility .22s ease,transform .22s ease;
  }
  header.nav.menu-open .menu{opacity:1;visibility:visible;transform:none}
  body.home header.nav.menu-open .menu a:not(.cta){color:var(--ink);text-shadow:none}
  header.nav .menu a{padding:14px 16px;color:var(--ink);font-size:14px}
  header.nav .menu a.cta{margin-top:6px;text-align:center;border-radius:18px}
}

@media(max-width:760px){
  .wrap{padding-left:22px;padding-right:22px}
  .hero{min-height:680px;height:100svh;align-items:center}
  .hero .hero-copy{padding:104px 24px 70px}
  .hero[data-hero-index="2"]{align-items:flex-start}
  .hero[data-hero-index="2"] .hero-copy{padding-top:178px;padding-bottom:0}
  .hero[data-hero-index="2"] .lead{max-width:330px}
  .hero.is-logo-active{align-items:flex-end}
  .hero.is-logo-active .hero-copy{padding-top:0;padding-bottom:86px}
  .hero.is-logo-active .hero-message h1.en{font-size:40px}
  .hero.is-logo-active .hero .sub-catch,
  .hero.is-logo-active .sub-catch{font-size:16px}
  .hero.is-logo-active .lead{font-size:13.5px;line-height:1.85}
  .hero-success-desktop{display:none}
  .hero-success-mobile{display:block;object-position:center center}
  .hero-success-slide::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(255,255,255,.28) 0%,rgba(255,255,255,.04) 34%,rgba(236,246,252,.32) 100%);
    pointer-events:none;
  }
  .hero-messages{min-height:370px}
  .hero-messages-static{min-height:0}
  .hero .vbar{font-size:10px;letter-spacing:.18em;margin-bottom:18px}
  .hero .vbar::before{width:30px}
  .hero h1.en{font-size:50px;line-height:1.05;letter-spacing:.02em}
  .hero-message h1{font-size:38px;line-height:1.45;letter-spacing:.04em}
  .hero-message h1.en{font-size:50px;line-height:1.05;letter-spacing:.02em}
  .hero .sub-catch{font-size:17px;letter-spacing:.12em;line-height:1.7}
  .hero .lead{font-size:14px;line-height:2;max-width:100%}
  .hero .acts{flex-direction:column;align-items:flex-start;gap:18px}
  .hero .acts a.main{padding:15px 34px}
  .hero-logo-haze{left:50%;right:auto;top:25%;width:82vw;opacity:.78;transform:translate(-50%,-50%)}
  .hero-logo-slide .hero-logo-brand{left:50%;right:auto;top:25%;width:82vw;opacity:.8;transform:translate(-50%,-50%)}
  .intro{padding:80px 0}
  .intro .big{font-size:24px;line-height:1.65}
  .intro .big.intro-copy{gap:6px}
  .intro .big .mut{font-size:22px}
  .intro .intro-answer{font-size:25px}
  .sec{padding:88px 0}
  .shead{margin-bottom:42px}
  .shead h2{font-size:30px}
  .shead p{font-size:14px;line-height:1.8}
  .svc-grid,.reason-grid,.fields,.guide-grid,.pillar{grid-template-columns:1fr}
  .panel-grid{grid-template-columns:1fr}
  .panel-link{min-height:320px}
  .svc-card,.pillar .card,.fields .f,.guide-card{border-radius:8px}
  .fields .f{height:330px}
  .works-showcase{padding-top:90px;padding-bottom:96px}
  .works-showcase .wrap{padding-left:0;padding-right:0}
  .works-rail{gap:18px;padding-inline:14vw}
  .works-arrow{top:43%;width:48px;height:100px;font-size:38px}
  .work-card{width:72vw;flex-basis:72vw}
  .work-card img{height:48vw;min-height:184px;max-height:260px}
  .work-card span{font-size:14px;padding:13px 16px}
  .reason-card,.r-card{display:block}
  .reason-card .ic{margin-bottom:18px}
  .r-card{padding:30px 26px}
  .r-card .rn{margin-bottom:12px}
  .flow{display:grid;grid-template-columns:1fr;gap:18px;margin:0 auto;max-width:320px}
  .flow::before{top:30px;bottom:30px;left:33px;right:auto;width:2px;height:auto;background:linear-gradient(180deg,var(--sky),var(--navy))}
  .flow .st{display:flex;align-items:center;text-align:left;gap:16px}
  .flow .st .d{margin:0;flex:0 0 66px}
  .ceo .inner{grid-template-columns:1fr;gap:34px;padding:0 24px;text-align:left}
  .ceo-visual{min-height:300px;order:-1}
  .ceo-visual img{min-height:300px}
  .ceo .body h2,.cta h2{font-size:29px}
  footer.ft .top{display:block}
  footer.ft .fnav{margin-top:34px;gap:36px}
  .page-hero{padding:92px 0 72px}
  .page-hero h1{font-size:34px}
  .lead-block,.intro-lead{font-size:15px;text-align:left}
  .range{grid-template-columns:1fr}
  .contact-direct .big{font-size:24px}
}

@media(max-width:520px){
  header.nav{padding-left:18px;padding-right:18px}
  .hero h1.en{font-size:43px}
  .hero-message h1,.hero-message h1.en{font-size:43px}
  .hero-slide:first-child > img:not(.hero-logo-brand){object-position:58% center}
  .hero-slide:nth-child(2) > img:not(.hero-logo-brand){object-position:67% center}
  .hero-success-mobile{object-position:center center}
  .hero[data-hero-index="2"] .hero-copy{padding-top:168px}
  .hero[data-hero-index="2"] .hero-message h1.en{font-size:38px}
  .hero[data-hero-index="2"] .sub-catch{font-size:15.5px}
  .hero[data-hero-index="2"] .lead{font-size:13px;line-height:1.78;max-width:300px}
  .hero.is-logo-active .hero-message h1.en{font-size:36px}
  .hero.is-logo-active .hero-copy{padding-bottom:78px}
  .hero-logo-haze{top:22%;width:86vw}
  .hero-logo-slide .hero-logo-brand{top:22%;width:86vw}
  .guide-card{height:250px}
  .works-rail{gap:16px;padding-inline:13vw}
  .works-arrow{width:44px;height:94px;font-size:34px}
  .work-card{width:74vw;flex-basis:74vw}
  .work-card img{height:50vw;min-height:176px}
  .cta a,.cta a.btn{width:100%;max-width:300px;padding-left:20px;padding-right:20px}
  footer.ft{padding-top:56px}
  footer.ft .fnav{display:grid;grid-template-columns:1fr 1fr}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
  .curveTop svg,.wave svg{animation:none}
  .air-canvas{display:none}
}
