:root{
  --ink:#08172f;
  --muted:#4e5664;
  --paper:#f6f3ee;
  --white:#fffdfa;
  --navy:#06162d;
  --gold:#a57936;
  --hair:rgba(8,23,47,.13);
  --line:rgba(8,23,47,.18);
  --soft:0 22px 70px rgba(8,23,47,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#020d1e}
@view-transition{navigation:auto}::view-transition-group(root){animation-duration:.68s;animation-timing-function:cubic-bezier(.78,0,.2,1)}::view-transition-old(root){animation:vt-old .68s cubic-bezier(.78,0,.2,1) both}::view-transition-new(root){animation:vt-new .68s cubic-bezier(.78,0,.2,1) both}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 20% 0%,#fff 0,#f5f0e7 34%,#e9eef4 100%);
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,system-ui,sans-serif;
  line-height:1.75;
}
a{color:inherit;text-decoration:none}
html:not(.page-ready) body{background:#020d1e}html:not(.page-ready) body>*:not(script){opacity:0}html.page-start body>*:not(script):not(.page-transition){opacity:0}.page-transition{opacity:1!important}html.page-start .page-transition{transform:translateX(0)}
.page-transition{position:fixed;z-index:9999;inset:0;background:linear-gradient(120deg,#020d1e,#09294a);pointer-events:none;transform:translateX(102%);overflow:hidden}.page-transition:before{content:"";position:absolute;width:84vw;height:84vw;right:-28vw;top:-47vw;border:1px solid rgba(222,180,109,.52);border-radius:50%}.page-transition:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 40px,rgba(255,255,255,.035) 41px 42px);transform:perspective(600px) rotateX(58deg) translateY(-36%)}.transition-line{position:absolute;z-index:2;left:9vw;top:50%;width:0;height:1px;background:#dbb06d;transition:width .5s .13s ease}.transition-word{position:absolute;z-index:2;left:9vw;top:calc(50% - 80px);font-family:Georgia,"Times New Roman",serif;font-size:clamp(80px,15vw,220px);line-height:1;color:#fff;letter-spacing:.04em;opacity:0;transform:translateY(30px);transition:opacity .3s .18s ease,transform .55s .18s cubic-bezier(.2,.8,.2,1)}.transition-copy{position:absolute;z-index:2;left:9vw;top:calc(50% + 26px);font-size:11px;letter-spacing:.2em;color:#dbb06d;opacity:0;transform:translateY(18px);transition:opacity .3s .28s ease,transform .5s .28s cubic-bezier(.2,.8,.2,1)}.page-leave .page-transition{transform:translateX(0);transition:transform .55s cubic-bezier(.78,0,.2,1)}.page-leave .transition-line{width:min(48vw,600px)}.page-leave .transition-word,.page-leave .transition-copy{opacity:1;transform:translateY(0)}.page-enter .page-transition{animation:page-reveal .82s .08s cubic-bezier(.78,0,.2,1) forwards}.page-enter .transition-line{animation:line-fade .55s .08s ease forwards}.page-enter .transition-word{animation:word-out .55s ease forwards}.page-enter .transition-copy{animation:word-out .45s .06s ease forwards}

.concept-header{
  position:absolute;
  z-index:30;
  inset:0 0 auto 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:42px clamp(24px,5vw,64px);
  pointer-events:none;
}
.concept-logo{
  pointer-events:auto;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(30px,3.2vw,42px);
  line-height:1;
  letter-spacing:.04em;
  color:var(--ink);
}
.hamburger{
  pointer-events:auto;
  width:40px;
  height:34px;
  border:0;
  background:transparent;
  display:grid;
  gap:7px;
  padding:2px;
  cursor:pointer;
}
.hamburger span{height:1px;background:var(--ink);display:block}
.overlay-menu{position:absolute;right:clamp(24px,5vw,64px);top:92px;width:min(360px,calc(100vw - 48px));padding:16px 24px;background:rgba(255,253,250,.96);border:1px solid var(--hair);box-shadow:var(--soft);opacity:0;pointer-events:none;transform:translateY(-10px);transition:.25s ease}
.overlay-menu.open{opacity:1;pointer-events:auto;transform:translateY(0)}
.overlay-menu a{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--hair);font-family:Georgia,"Times New Roman",serif;font-size:18px}.overlay-menu a:last-child{border-bottom:0}.overlay-menu small{color:var(--gold)}

.concept-hero{
  position:relative;
  min-height:875px;
  margin:18px;
  border-radius:22px;
  overflow:hidden;
  background:#faf8f4;
  box-shadow:0 0 0 1px rgba(8,23,47,.08),0 24px 60px rgba(8,23,47,.15);
}
.hero-art{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(90deg,rgba(255,253,250,.88) 0%,rgba(255,253,250,.66) 31%,rgba(255,253,250,.10) 64%,rgba(255,253,250,.18) 100%),
    url("nbl-hero-tokyo-v2.png") center center / cover no-repeat;
  transform:scale(1.035);
  animation:hero-kenburns 18s ease-in-out infinite alternate;
}
.hero-light{position:absolute;z-index:1;pointer-events:none;border-radius:50%;mix-blend-mode:screen;filter:blur(20px);opacity:0}
.hero-light-one{width:34vw;height:34vw;left:28%;top:19%;background:radial-gradient(circle,rgba(255,255,255,.74),rgba(255,255,255,0) 70%);animation:light-drift 8s ease-in-out infinite}
.hero-light-two{width:24vw;height:24vw;right:8%;bottom:18%;background:radial-gradient(circle,rgba(190,207,222,.32),rgba(190,207,222,0) 70%);animation:light-drift 11s 1.5s ease-in-out infinite reverse}
.concept-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 54% 61%,rgba(129,151,166,.18),transparent 30%),
    linear-gradient(90deg,transparent 0 38%,rgba(255,255,255,.18) 47%,transparent 60%);
}
.concept-hero:after{
  content:"";
  position:absolute;
  left:52px;
  right:52px;
  bottom:118px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--hair),var(--hair),transparent);
}
.gold-arc{
  position:absolute;
  border:1px solid rgba(165,121,54,.34);
  border-color:rgba(165,121,54,.34) transparent transparent rgba(165,121,54,.34);
  border-radius:50%;
  pointer-events:none;
}
.arc-one{
  width:1120px;
  height:690px;
  left:-70px;
  top:-130px;
  transform:rotate(-11deg);
}
.arc-two{
  width:900px;
  height:430px;
  right:-240px;
  bottom:-160px;
  transform:rotate(10deg);
  opacity:.45;
}
.city-fog{
  position:absolute;
  left:28%;
  right:12%;
  bottom:214px;
  height:170px;
  opacity:.45;
  background:
    linear-gradient(to top,rgba(133,151,164,.28),transparent 75%),
    repeating-linear-gradient(90deg,transparent 0 21px,rgba(8,23,47,.11) 22px 23px,transparent 24px 55px);
  filter:blur(.15px);
  mask-image:linear-gradient(90deg,transparent,#000 18%,#000 80%,transparent);
}
.city-fog i{
  position:absolute;
  bottom:0;
  width:28px;
  background:rgba(74,94,110,.2);
  border-top:1px solid rgba(8,23,47,.12);
}
.city-fog i:nth-child(1){left:5%;height:54px}.city-fog i:nth-child(2){left:13%;height:90px}.city-fog i:nth-child(3){left:24%;height:120px}.city-fog i:nth-child(4){left:36%;height:75px}.city-fog i:nth-child(5){left:49%;height:132px}.city-fog i:nth-child(6){left:61%;height:68px}.city-fog i:nth-child(7){left:73%;height:102px}.city-fog i:nth-child(8){left:85%;height:78px}
.tokyo-tower{
  position:absolute;
  left:51%;
  top:245px;
  width:148px;
  height:330px;
  opacity:.64;
  filter:drop-shadow(0 12px 18px rgba(8,23,47,.13));
}
.tokyo-tower span{position:absolute;left:50%;transform:translateX(-50%)}
.tokyo-tower span:nth-child(1){top:0;width:2px;height:78px;background:#9a2e2b}
.tokyo-tower span:nth-child(2){top:70px;width:34px;height:96px;border-left:2px solid #b96550;border-right:2px solid #b96550;clip-path:polygon(48% 0,52% 0,100% 100%,0 100%)}
.tokyo-tower span:nth-child(3){top:148px;width:92px;height:118px;border-left:3px solid #c17959;border-right:3px solid #c17959;border-bottom:1px solid #b57a62;clip-path:polygon(38% 0,62% 0,100% 100%,0 100%)}
.tokyo-tower span:nth-child(4){top:242px;width:140px;height:88px;border-left:4px solid #c88660;border-right:4px solid #c88660;border-bottom:2px solid #b27858;clip-path:polygon(28% 0,72% 0,100% 100%,0 100%)}

.concept-copy.reveal{
  position:absolute;
  z-index:5;
  left:8.5%;
  top:31%;
  max-width:520px;
  opacity:0;
  transform:translateY(26px);
  animation:copy-in 1.05s .3s cubic-bezier(.2,.8,.2,1) forwards;
}
.concept-copy h1{
  margin:0 0 10px;
  color:var(--ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(42px,5.3vw,68px);
  font-weight:400;
  line-height:1.08;
  letter-spacing:.055em;
}
.subline{
  margin:0;
  color:var(--gold);
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
  letter-spacing:.02em;
}
.short-rule{display:block;width:34px;height:1px;background:var(--gold);margin:24px 0}
.scope,.founded{
  margin:0 0 14px;
  font-family:Georgia,"Times New Roman",serif;
  color:var(--ink);
  font-size:18px;
}
.founded{font-size:16px;color:#3d4350}

.architectural-building.reveal{
  position:absolute;
  z-index:4;
  right:5.5%;
  top:58px;
  width:min(42vw,520px);
  height:620px;
  transform:perspective(900px) rotateY(-10deg) rotateX(2deg);
  opacity:0;
  transform:perspective(900px) rotateY(-10deg) rotateX(2deg) translateX(30px);
  animation:building-in 1.3s .2s cubic-bezier(.2,.8,.2,1) forwards, float 8s 1.5s ease-in-out infinite;
}
.architectural-building:before{
  content:"";
  position:absolute;
  inset:10px 30px 42px 40px;
  border:2px solid rgba(8,23,47,.72);
  background:
    linear-gradient(108deg,rgba(255,255,255,.34),rgba(255,255,255,.02)),
    repeating-linear-gradient(90deg,transparent 0 46px,rgba(8,23,47,.38) 47px 48px),
    repeating-linear-gradient(0deg,transparent 0 68px,rgba(8,23,47,.36) 69px 70px);
  clip-path:polygon(22% 0,100% 11%,100% 82%,55% 100%,0 88%,0 16%);
}
.architectural-building:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:170px;
  background:
    linear-gradient(18deg,transparent 0 44%,rgba(8,23,47,.22) 45%,transparent 46%),
    linear-gradient(-14deg,transparent 0 54%,rgba(8,23,47,.18) 55%,transparent 56%),
    repeating-linear-gradient(90deg,transparent 0 38px,rgba(8,23,47,.12) 39px 40px);
  opacity:.8;
}
.building-lines{
  position:absolute;
  inset:0;
  background:
    linear-gradient(98deg,transparent 0 49%,rgba(8,23,47,.22) 50%,transparent 51%),
    linear-gradient(14deg,transparent 0 52%,rgba(8,23,47,.16) 53%,transparent 54%),
    repeating-linear-gradient(90deg,transparent 0 29px,rgba(8,23,47,.11) 30px 31px);
}
.floor{position:absolute;right:16%;width:74%;height:12px;border:1px solid rgba(8,23,47,.45);background:rgba(255,255,255,.6)}
.floor-a{top:185px}.floor-b{top:312px}.floor-c{top:438px}

.side-scroll{
  position:absolute;
  left:36px;
  bottom:150px;
  writing-mode:vertical-rl;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.24em;
  font-family:Georgia,"Times New Roman",serif;
}
.side-scroll span{display:block;width:1px;height:34px;background:var(--gold);margin-top:16px}
.slide-number{
  position:absolute;
  right:32px;
  top:370px;
  color:var(--gold);
  font-family:Georgia,"Times New Roman",serif;
  font-size:22px;
}
.slide-number span{
  display:block;
  width:4px;
  height:4px;
  margin:15px auto 0;
  border-radius:50%;
  background:rgba(8,23,47,.35);
}

.service-strip.reveal{
  position:absolute;
  z-index:8;
  left:7%;
  right:4.5%;
  bottom:95px;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  background:rgba(255,255,255,.82);
  border:1px solid rgba(8,23,47,.1);
  box-shadow:0 18px 44px rgba(8,23,47,.08);
  backdrop-filter:blur(18px);
  opacity:0;
  transform:translateY(36px);
  animation:strip-in 1s .68s cubic-bezier(.2,.8,.2,1) forwards;
}
.service-strip a{
  min-height:132px;
  padding:24px 20px 18px;
  display:grid;
  grid-template-rows:38px 1fr auto;
  justify-items:center;
  align-items:center;
  text-align:center;
  border-right:1px solid rgba(8,23,47,.12);
  color:var(--ink);
  transition:.25s ease;
}
.service-strip a:last-child{border-right:0}
.service-strip a:hover{background:#fff;transform:translateY(-5px)}
.service-strip a i,.service-strip a span,.service-strip a em{opacity:0;animation:item-in .55s cubic-bezier(.2,.8,.2,1) forwards}
.service-strip a:nth-child(1) i,.service-strip a:nth-child(1) span,.service-strip a:nth-child(1) em{animation-delay:.95s}
.service-strip a:nth-child(2) i,.service-strip a:nth-child(2) span,.service-strip a:nth-child(2) em{animation-delay:1.04s}
.service-strip a:nth-child(3) i,.service-strip a:nth-child(3) span,.service-strip a:nth-child(3) em{animation-delay:1.13s}
.service-strip a:nth-child(4) i,.service-strip a:nth-child(4) span,.service-strip a:nth-child(4) em{animation-delay:1.22s}
.service-strip a:nth-child(5) i,.service-strip a:nth-child(5) span,.service-strip a:nth-child(5) em{animation-delay:1.31s}
.service-strip span{font-family:Georgia,"Times New Roman",serif;font-size:16px;line-height:1.35}
.service-strip em{
  justify-self:end;
  color:var(--gold);
  font-family:Georgia,"Times New Roman",serif;
  font-style:normal;
  font-size:18px;
}
.service-strip i{position:relative;display:block;width:44px;height:34px}
.service-strip i:before,.service-strip i:after{content:"";position:absolute}
.icon-building:before,.icon-tower:before,.icon-house:before,.icon-highrise:before{
  inset:4px 12px 0;
  border:1px solid rgba(8,23,47,.58);
  background:repeating-linear-gradient(0deg,transparent 0 7px,rgba(8,23,47,.38) 8px 9px);
}
.icon-building:after,.icon-tower:after,.icon-house:after,.icon-highrise:after{left:2px;right:2px;bottom:0;height:1px;background:rgba(8,23,47,.35)}
.icon-tower:before{inset:0 7px 0 15px;transform:skewY(-12deg)}
.icon-house:before{inset:7px 10px 0;clip-path:polygon(50% 0,100% 35%,100% 100%,0 100%,0 35%)}
.icon-highrise:before{inset:0 14px 0 8px;height:34px}
.icon-boat:before{left:4px;right:4px;bottom:7px;height:9px;border-bottom:2px solid rgba(8,23,47,.58);clip-path:polygon(0 0,70% 0,100% 100%,12% 100%)}
.icon-boat:after{left:18px;top:5px;width:14px;height:10px;border:1px solid rgba(8,23,47,.5);border-bottom:0;transform:skewX(-18deg)}

.concept-night{
  position:relative;
  height:150px;
  margin:-18px 18px 0;
  border-radius:0 0 20px 20px;
  overflow:hidden;
  background:
    radial-gradient(circle at 48% -20%,rgba(74,101,126,.35),transparent 48%),
    linear-gradient(180deg,#07182f,#031125);
}
.concept-night:after{content:"";position:absolute;inset:-20% -10%;background:linear-gradient(105deg,transparent 35%,rgba(206,161,95,.14) 48%,transparent 61%);animation:night-sheen 8s linear infinite}
.concept-night:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(90deg,transparent 0 25px,rgba(255,255,255,.05) 26px 27px),
    repeating-linear-gradient(0deg,transparent 0 25px,rgba(255,255,255,.035) 26px 27px);
  opacity:.25;
  transform:perspective(500px) rotateX(58deg) translateY(-58px);
}
.concept-night span{
  position:absolute;
  right:42px;
  top:38px;
  color:#d0a768;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
}
.concept-night i{position:absolute;right:49px;width:4px;height:4px;border-radius:50%;background:white;opacity:.8}
.concept-night i:nth-child(2){top:78px}.concept-night i:nth-child(3){top:96px;opacity:.55}.concept-night i:nth-child(4){top:114px;opacity:.35}

.eyebrow{margin:0 0 12px;color:var(--gold);font-family:Georgia,"Times New Roman",serif;letter-spacing:.18em;text-transform:uppercase;font-size:12px}
h1,h2,h3{line-height:1.22;margin:0;color:var(--navy)}
h2{font-size:clamp(28px,4vw,46px);letter-spacing:-.03em}
h3{font-size:21px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid var(--gold);border-radius:999px;font-weight:700;letter-spacing:.06em;transition:.25s ease}
.primary{background:var(--navy);color:white;border-color:var(--navy)}
.primary:hover{background:var(--gold);border-color:var(--gold);transform:translateY(-2px)}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--hair);padding:1px;margin:70px clamp(22px,6vw,88px) 0;box-shadow:var(--soft)}
.stats article{background:var(--white);padding:28px;text-align:center}
.stats strong{display:block;font-size:34px;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-weight:400}
.stats span{color:var(--muted);font-size:13px}
.section{padding:72px clamp(22px,6vw,88px)}
.split{display:grid;grid-template-columns:.75fr 1.25fr;gap:48px}
.section-title p,.feature p,.detail-copy p{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.card,.feature,.profile,.property-card,.reserve-form,.page-hero,.detail-copy{background:var(--white);border:1px solid rgba(8,23,47,.1);box-shadow:0 16px 46px rgba(8,23,47,.08)}
.card{padding:30px}.card span{color:var(--gold);font-family:Georgia,"Times New Roman",serif}.card p{color:var(--muted)}
.feature{margin:20px clamp(22px,6vw,88px);padding:44px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(135deg,var(--navy),#22395b);color:white}.feature h2,.feature p{color:white}
.profile{display:grid;gap:0}.profile div{display:grid;grid-template-columns:220px 1fr;border-bottom:1px solid var(--hair);padding:18px 24px}.profile dt{color:var(--muted)}.profile dd{margin:0;font-weight:600}
.company-page-link{margin:28px 0 0;text-align:right}
.home-philosophy{position:relative;overflow:hidden;display:grid;grid-template-columns:1.2fr .65fr;gap:8vw;padding:126px clamp(22px,10vw,150px);background:linear-gradient(135deg,#f5f0e8,#eef1f0)}.philosophy-mark{position:absolute;right:2%;top:-18%;font-family:Georgia,"Times New Roman",serif;font-size:min(53vw,720px);line-height:1;color:rgba(8,23,47,.035)}.philosophy-copy{position:relative;z-index:1;max-width:780px}.philosophy-copy h2,.care-copy h2,.asset-message h2,.home-section-head h2,.home-cta h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:.02em}.philosophy-copy h2{font-size:clamp(40px,5.5vw,76px);margin:0 0 32px}.philosophy-copy>p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:17px}.philosophy-aside{position:relative;z-index:1;align-self:end;padding:26px 0;border-top:1px solid var(--gold);font-family:Georgia,"Times New Roman",serif}.philosophy-aside span{color:var(--gold);font-size:24px}.philosophy-aside p{font-size:23px;line-height:1.5}
.scroll-scene{--scroll-shift:0px}.home-philosophy:after{content:"";position:absolute;width:82vw;height:82vw;right:-43vw;bottom:-58vw;border:1px solid rgba(165,121,54,.38);border-radius:50%;opacity:0;transform:translate3d(0,calc(var(--scroll-shift) * -.10),0) scale(.72);transition:opacity 1s ease,transform 1.3s cubic-bezier(.2,.8,.2,1)}.home-philosophy.scene-active:after{opacity:1;transform:translate3d(0,calc(var(--scroll-shift) * -.10),0) scale(1)}.philosophy-mark{transform:translateY(calc(var(--scroll-shift) * -.15));transition:transform .08s linear}.care-image{clip-path:inset(0 100% 0 0);transition:clip-path 1.4s cubic-bezier(.2,.8,.2,1)}.care-section.scene-active .care-image{clip-path:inset(0 0 0 0)}.care-copy{opacity:0;transform:translateX(55px);transition:opacity .8s .32s ease,transform 1s .32s cubic-bezier(.2,.8,.2,1)}.care-section.scene-active .care-copy{opacity:1;transform:translateX(0)}
.care-section{display:grid;grid-template-columns:1.08fr .92fr;min-height:650px;background:var(--white)}.care-image{overflow:hidden}.care-image img{display:block;width:100%;height:100%;min-height:650px;object-fit:cover;transition:transform 1.2s ease}.care-image:hover img{transform:scale(1.04)}.care-copy{align-self:center;padding:70px clamp(28px,7vw,112px) 70px 8vw}.care-copy h2{font-size:clamp(34px,4.2vw,58px);margin:0 0 28px}.care-copy>p:not(.eyebrow){color:var(--muted)}.text-link{display:inline-flex;gap:18px;align-items:center;margin-top:18px;padding-bottom:7px;border-bottom:1px solid var(--gold);font-family:Georgia,"Times New Roman",serif}.text-link span{color:var(--gold);font-size:20px}
.asset-message{position:relative;overflow:hidden;padding:115px clamp(22px,10vw,150px);color:#fff;background:radial-gradient(circle at 75% 30%,rgba(76,111,134,.48),transparent 30%),linear-gradient(120deg,#031126,#0c2943)}.asset-message:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 44px,rgba(255,255,255,.035) 45px 46px),repeating-linear-gradient(0deg,transparent 0 44px,rgba(255,255,255,.025) 45px 46px);transform:perspective(500px) rotateX(52deg) translateY(-44px)}.asset-inner{position:relative;z-index:1;max-width:790px}.asset-message h2{font-size:clamp(40px,5.2vw,72px);margin:0 0 32px;color:#fff}.asset-message .eyebrow{color:#e1b36c}.asset-message p:not(.eyebrow){max-width:660px;color:rgba(255,255,255,.76);font-size:17px}.asset-number{position:absolute;z-index:1;right:8%;bottom:12%;font-family:Georgia,"Times New Roman",serif;font-size:clamp(44px,8vw,116px);line-height:.72;color:rgba(227,183,113,.18)}.asset-number small{font-size:12px;letter-spacing:.23em}
.asset-message:after{content:"";position:absolute;inset:-10% -25%;background:linear-gradient(105deg,transparent 37%,rgba(222,174,99,.17) 49%,transparent 61%);transform:translateX(-78%);transition:transform 1.7s cubic-bezier(.2,.8,.2,1)}.asset-message.scene-active:after{transform:translateX(70%)}.asset-message:before{transform:perspective(500px) rotateX(52deg) translateY(calc(-44px + var(--scroll-shift) * -.10));transition:transform .1s linear}.asset-number{transform:translateY(calc(var(--scroll-shift) * -.18));transition:transform .1s linear}.asset-inner{opacity:0;transform:translateY(52px);transition:opacity .8s ease,transform 1s cubic-bezier(.2,.8,.2,1)}.asset-message.scene-active .asset-inner{opacity:1;transform:translateY(0)}
.home-properties{padding:105px clamp(22px,6vw,88px);background:#f7f5f0}.home-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.home-section-head h2{font-size:clamp(34px,4.2vw,58px);margin:0}.home-section-head>p{max-width:290px;color:var(--muted);font-size:13px}.home-property-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px}.home-property{position:relative;min-height:440px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:28px;color:#fff;background:#10233d}.home-property:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,11,24,.88),rgba(2,11,24,.05) 70%);z-index:1}.home-property>div:not(.property-photo),.home-property b{position:relative;z-index:2}.home-property span{font-size:11px;letter-spacing:.15em;color:#e0b46f}.home-property h3{margin:5px 0 2px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:27px;font-weight:400}.home-property p{margin:0;color:rgba(255,255,255,.72);font-size:13px}.home-property b{position:absolute;top:23px;right:26px;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:21px;color:#e0b46f}.property-photo{position:absolute;inset:0}.property-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.home-property:hover .property-photo img{transform:scale(1.06)}.property-sketch{background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.2)),url("nbl-hero-tokyo-v2.png") 69% center/cover no-repeat}.property-city{background:linear-gradient(145deg,rgba(15,35,61,.05),rgba(15,35,61,.4)),url("nbl-property-night-v1.png") 71% center/cover no-repeat;filter:saturate(.7)}.properties-action{text-align:center;margin:42px 0 0}
.home-properties .home-property{opacity:0;transform:translateY(85px) rotate(.8deg);transition:opacity .8s ease,transform 1s cubic-bezier(.2,.8,.2,1)}.home-properties.scene-active .home-property{opacity:1;transform:translateY(0) rotate(0)}.home-properties.scene-active .property-two{transition-delay:.13s}.home-properties.scene-active .property-three{transition-delay:.26s}.home-properties .home-section-head{transform:translateX(calc(var(--scroll-shift) * -.06));transition:transform .1s linear}
.voices-section{padding:102px clamp(22px,6vw,88px);background:var(--white)}.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.voice-card{padding:34px 31px;background:#faf8f3;border-top:1px solid var(--gold)}.voice-card span{font-family:Georgia,"Times New Roman",serif;font-size:58px;line-height:.55;color:var(--gold)}.voice-card p{min-height:114px;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.75}.voice-card small{font-size:10px;letter-spacing:.12em;color:var(--muted)}
.voice-card{opacity:0;transform:translateY(55px);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.8,.2,1)}.voices-section.scene-active .voice-card{opacity:1;transform:translateY(0)}.voices-section.scene-active .voice-card:nth-child(2){transition-delay:.13s}.voices-section.scene-active .voice-card:nth-child(3){transition-delay:.26s}.home-cta{position:relative;overflow:hidden}.home-cta:before{content:"";position:absolute;width:58vw;height:58vw;left:-29vw;top:-45vw;border:1px solid rgba(165,121,54,.38);border-radius:50%;transform:scale(.3);transition:transform 1.3s cubic-bezier(.2,.8,.2,1)}.home-cta.scene-active:before{transform:scale(1)}.home-cta>*{position:relative;z-index:1}
.vision-stage{--stage-progress:0;height:260vh;background:#020f22;position:relative}.vision-sticky{position:sticky;top:0;height:100vh;overflow:hidden;color:#fff;background:radial-gradient(circle at 60% 47%,rgba(32,84,122,.72),transparent 28%),linear-gradient(140deg,#020b18,#071e39)}.vision-grid{position:absolute;inset:-28%;background:repeating-linear-gradient(90deg,transparent 0 55px,rgba(255,255,255,.055) 56px 57px),repeating-linear-gradient(0deg,transparent 0 55px,rgba(255,255,255,.04) 56px 57px);transform:perspective(750px) rotateX(60deg) translateY(calc(-220px + var(--stage-progress) * 270px)) scale(1.2);opacity:.56}.vision-orbit{position:absolute;border:1px solid rgba(224,179,104,.52);border-radius:50%;pointer-events:none}.orbit-a{width:min(82vw,1120px);height:min(82vw,1120px);right:-31vw;top:-27vw;transform:rotate(calc(-18deg + var(--stage-progress) * 110deg)) scale(calc(.66 + var(--stage-progress) * .42));opacity:calc(.16 + var(--stage-progress) * .76)}.orbit-b{width:52vw;height:52vw;left:-26vw;bottom:-34vw;transform:rotate(calc(35deg - var(--stage-progress) * 130deg)) scale(calc(.75 + var(--stage-progress) * .5));opacity:calc(.1 + var(--stage-progress) * .58)}.vision-kicker{position:absolute;top:9%;left:clamp(24px,7vw,112px);font-size:11px;letter-spacing:.23em;color:#dcb36e;opacity:calc(.1 + var(--stage-progress) * 1);transform:translateY(calc((1 - var(--stage-progress)) * 40px))}.vision-copy{position:absolute;z-index:2;top:50%;left:clamp(24px,9vw,150px);transform:translateY(-50%)}.vision-number{display:block;margin-bottom:18px;font-family:Georgia,"Times New Roman",serif;letter-spacing:.16em;color:#dcb36e;opacity:calc(.1 + var(--stage-progress) * 1);transform:translateY(calc((1 - var(--stage-progress)) * 60px))}.vision-copy h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(64px,11vw,168px);font-weight:400;letter-spacing:-.07em;line-height:.76;opacity:calc(.15 + var(--stage-progress) * .85);transform:translateX(calc((1 - var(--stage-progress)) * -17vw));white-space:nowrap}.vision-copy h2 em{font-style:normal;color:#dcb36e;font-size:.57em;letter-spacing:-.035em}.vision-copy p{margin:31px 0 0;color:rgba(255,255,255,.74);font-family:Georgia,"Times New Roman",serif;font-size:clamp(16px,1.7vw,23px);line-height:1.7;opacity:calc(var(--stage-progress) * 1.5);transform:translateY(calc((1 - var(--stage-progress)) * 65px))}.vision-building{position:absolute;z-index:1;width:min(51vw,810px);height:min(63vh,650px);right:7vw;top:19vh;overflow:hidden;box-shadow:0 36px 105px rgba(0,0,0,.48);transform:translateX(calc((1 - var(--stage-progress)) * 44vw)) scale(calc(.63 + var(--stage-progress) * .43)) rotateY(calc((1 - var(--stage-progress)) * -18deg));transform-origin:center right}.vision-building:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,15,31,.45),transparent 44%),linear-gradient(0deg,rgba(2,15,31,.45),transparent 45%)}.vision-building img{width:100%;height:100%;object-fit:cover}.vision-building small{position:absolute;z-index:2;left:20px;bottom:16px;color:#fff;font-size:10px;letter-spacing:.16em}.vision-pin{position:absolute;z-index:3;width:10px;height:10px;border:2px solid #dcb36e;border-radius:50%;background:#06172f;box-shadow:0 0 0 7px rgba(220,179,110,.14);opacity:calc(var(--stage-progress) * 1.4)}.pin-one{top:27%;left:61%;transform:translateY(calc((1 - var(--stage-progress)) * -90px))}.pin-two{top:53%;left:38%;transform:translateY(calc((1 - var(--stage-progress)) * 110px));transition-delay:.13s}.pin-three{top:71%;left:70%;transform:translateY(calc((1 - var(--stage-progress)) * -75px));transition-delay:.25s}.vision-side{position:absolute;z-index:3;right:clamp(22px,3vw,54px);bottom:8%;display:grid;justify-items:end;gap:8px}.vision-side span{writing-mode:vertical-rl;font-family:Georgia,"Times New Roman",serif;font-size:10px;letter-spacing:.2em;color:#dcb36e}.vision-side i{display:block;width:1px;height:58px;background:linear-gradient(#dcb36e,transparent);transform:scaleY(calc(.25 + var(--stage-progress) * .75));transform-origin:top}.vision-side b{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:12px;color:rgba(255,255,255,.35)}.vision-side b:nth-of-type(1){color:#dcb36e}
.home-cta{padding:110px 22px;text-align:center;background:linear-gradient(135deg,#eee8de,#f8f5ef)}.home-cta h2{font-size:clamp(36px,5vw,64px);margin:0 0 34px}.home-cta .primary{min-width:190px}
.footer-rich{position:relative;display:grid;grid-template-columns:1.4fr 1fr 1fr .8fr;gap:35px;padding:72px clamp(22px,6vw,88px) 34px;background:linear-gradient(135deg,#031024,#0a2340);overflow:hidden}.footer-rich:before{content:"";position:absolute;width:600px;height:600px;right:-180px;bottom:-410px;border:1px solid rgba(212,166,96,.3);border-radius:50%}.footer-rich>*{position:relative;z-index:1}.footer-brand{display:grid;grid-template-columns:42px 1fr;column-gap:12px;align-items:center}.footer-brand img{width:38px;filter:drop-shadow(0 0 12px rgba(255,255,255,.12))}.footer-brand strong{font-family:Georgia,"Times New Roman",serif;font-size:38px;letter-spacing:.08em}.footer-brand p{grid-column:1/-1;margin:12px 0 0;font-family:Georgia,"Times New Roman",serif;color:#d5a864}.footer-rich small{display:block;margin-bottom:15px;color:#d5a864;font-size:10px;letter-spacing:.17em}.footer-rich p{margin:0;color:rgba(255,255,255,.74)}.footer-rich a{margin-bottom:8px;font-family:Georgia,"Times New Roman",serif}.footer-links{display:grid;align-content:start}.footer-copy{grid-column:1/-1;margin-top:38px!important;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);font-size:10px!important;letter-spacing:.16em}
.reason-section{padding:78px clamp(22px,6vw,88px);background:linear-gradient(135deg,#eef1f2,#fbf8f2)}.reason-intro{max-width:720px;margin-bottom:36px}.reason-intro p:last-child{color:var(--muted)}.reason-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.reason-card{padding:34px 28px;background:var(--white);border:1px solid var(--hair);box-shadow:0 16px 40px rgba(8,23,47,.06)}.reason-card span,.boat-details span{font-family:Georgia,"Times New Roman",serif;font-size:22px;color:var(--gold)}.reason-card h3{margin:14px 0}.reason-card p{color:var(--muted);font-size:14px}
.boat-page{background:#f5f2ea}.boat-hero{min-height:640px;position:relative;overflow:hidden;padding:104px clamp(22px,10vw,150px);background:radial-gradient(circle at 76% 18%,rgba(242,211,151,.32),transparent 22%),linear-gradient(140deg,#eff2f0 0%,#d4e0e1 49%,#23465c 100%)}.boat-hero:after{content:"";position:absolute;inset:54% 0 0;background:repeating-linear-gradient(175deg,rgba(255,255,255,.12) 0 1px,transparent 2px 29px);opacity:.55;animation:water-move 9s linear infinite}.boat-hero-copy{position:relative;z-index:2;max-width:510px}.boat-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(56px,8vw,112px);font-weight:400;letter-spacing:.02em}.boat-hero-copy>p:not(.eyebrow){max-width:430px;color:#253849}.boat-silhouette{position:absolute;z-index:1;right:8%;bottom:19%;width:min(47vw,700px);height:290px;border-bottom:5px solid #09243a;transform:skewX(-9deg);animation:boat-float 6s ease-in-out infinite}.boat-silhouette:before{content:"";position:absolute;right:10%;bottom:0;width:73%;height:84px;background:#faf9f3;clip-path:polygon(0 0,100% 0,86% 66%,17% 100%)}.boat-silhouette:after{content:"";position:absolute;right:28%;bottom:82px;width:42%;height:118px;background:rgba(250,249,243,.9);clip-path:polygon(16% 0,100% 37%,100% 100%,0 100%)}.boat-silhouette i{position:absolute;z-index:2;border-top:2px solid #11354d}.boat-silhouette i:nth-child(1){width:34%;right:29%;bottom:168px;transform:rotate(-5deg)}.boat-silhouette i:nth-child(2){width:26%;right:43%;bottom:126px}.boat-silhouette i:nth-child(3){width:100%;bottom:-2px}.boat-intro{display:grid;grid-template-columns:1fr 1fr;gap:56px}.boat-copy{color:var(--muted)}.boat-details{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 clamp(22px,6vw,88px) 76px;background:var(--hair);box-shadow:var(--soft)}.boat-details article{padding:34px 30px;background:var(--white)}.boat-details h3{margin:12px 0}.boat-details p{color:var(--muted)}
.service-hero{min-height:390px;padding:94px clamp(22px,10vw,150px);display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;background:linear-gradient(135deg,#e9edf0,#fff8ed)}.service-hero:after{content:"";position:absolute;width:58vw;height:58vw;right:-14vw;top:-27vw;border:1px solid rgba(165,121,54,.35);border-radius:50%}.service-hero h1{position:relative;z-index:1;font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,6vw,76px);font-weight:400}.service-hero p{position:relative;z-index:1;margin:10px 0 0}.service-sales{background:linear-gradient(135deg,#f8f3eb,#e3ebee)}.service-leasing{background:linear-gradient(135deg,#edf1ec,#dde6e1)}.service-management{background:linear-gradient(135deg,#f2f0ea,#e0e5e7)}.service-development{background:linear-gradient(135deg,#f3eee5,#dce5e8)}.service-lodging{background:linear-gradient(135deg,#e8eff0,#d5e0db)}.service-content{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;padding:78px clamp(22px,10vw,150px)}.service-copy{max-width:690px}.service-copy h2{margin-bottom:24px}.service-copy p{color:var(--muted);font-size:17px}.service-points{align-self:start;padding:30px;background:var(--navy);color:white}.service-points span{font-family:Georgia,"Times New Roman",serif;color:#d7ae72}.service-points h3{margin:12px 0 18px;color:white}.service-points ul{margin:0;padding-left:18px;color:rgba(255,255,255,.78)}.service-points li{margin:9px 0}
.service-subnav{display:grid;grid-template-columns:repeat(5,1fr);margin:0 clamp(22px,6vw,88px);transform:translateY(-22px);position:relative;z-index:3;background:rgba(255,253,250,.97);border:1px solid var(--hair);box-shadow:0 12px 28px rgba(8,23,47,.08)}.service-subnav a{min-height:72px;display:flex;align-items:center;gap:10px;padding:12px 16px;border-right:1px solid var(--hair);font-family:Georgia,"Times New Roman",serif;font-size:14px;line-height:1.2}.service-subnav a:last-child{border-right:0}.service-subnav a[aria-current="page"]{background:var(--navy);color:#fff}.service-subnav small{color:var(--gold);font-size:12px}.service-subnav a[aria-current="page"] small{color:#e2bb7b}
.footer{display:flex;justify-content:space-between;gap:24px;padding:36px clamp(22px,6vw,88px);background:#111722;color:white}.footer a{display:block;color:rgba(255,255,255,.82)}

.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px clamp(18px,4vw,56px);background:rgba(8,23,47,.94);color:white;backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.12)}
.brand{display:flex;align-items:center;gap:14px;min-width:max-content}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.42);color:var(--gold);font-family:Georgia,"Times New Roman",serif;font-size:28px}
.brand strong{display:block;letter-spacing:.08em}.brand small{display:block;color:rgba(255,255,255,.62);font-size:11px;letter-spacing:.14em}
.nav{display:flex;gap:26px;font-size:14px;letter-spacing:.08em}.nav a{opacity:.86}.nav a:hover{opacity:1;color:var(--gold)}
.page-hero{margin:50px clamp(22px,6vw,88px) 20px;padding:54px}
.property-grid{padding:28px clamp(22px,6vw,88px) 90px}.property-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;padding:28px}.property-visual{min-height:340px;background:linear-gradient(135deg,#e9edf2,#fff7e9);position:relative;overflow:hidden}.mini-sketch{position:absolute;inset:38px;border:1px solid rgba(8,23,47,.2);background:repeating-linear-gradient(90deg,transparent 0 34px,rgba(8,23,47,.22) 35px 36px),repeating-linear-gradient(0deg,transparent 0 34px,rgba(8,23,47,.15) 35px 36px)}
.property-card dl{display:grid;gap:10px;margin:22px 0}.property-card dl div{display:grid;grid-template-columns:90px 1fr}.property-card dt{color:var(--muted)}
.detail-hero{padding:70px clamp(22px,6vw,88px);display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.detail-copy{padding:42px}.facts{padding-left:20px;color:var(--muted)}.large{height:600px}
.sketch-building{position:relative;height:520px;border:1px solid rgba(8,23,47,.2);background:rgba(255,255,255,.26);box-shadow:var(--soft);transform:rotate(-1deg)}
.sketch-building:before,.sketch-building:after{content:"";position:absolute;inset:18px;border:1px solid rgba(8,23,47,.32)}
.sketch-building:after{inset:44px;border-color:rgba(165,121,54,.5)}
.grid{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 54px,rgba(8,23,47,.22) 55px 56px),repeating-linear-gradient(0deg,transparent 0 54px,rgba(8,23,47,.18) 55px 56px)}
.reserve{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px}.reserve-form{padding:32px;display:grid;gap:16px}.reserve-form label{display:grid;gap:6px;font-weight:700;color:var(--navy)}input,textarea{width:100%;border:1px solid var(--hair);border-radius:12px;padding:13px 14px;font:inherit;background:#fff}
.reveal{opacity:1;transform:none;transition:opacity .8s ease,transform .8s ease}.js .section .reveal,.js .stats.reveal,.js .feature.reveal,.js .page-hero.reveal,.js .property-card.reveal,.js .detail-copy.reveal,.js .reserve-form.reveal{opacity:0;transform:translateY(24px)}.js .reveal.visible{opacity:1;transform:none}.delay{transition-delay:.16s}
@keyframes float{0%,100%{transform:perspective(900px) rotateY(-10deg) rotateX(2deg) translateY(0)}50%{transform:perspective(900px) rotateY(-10deg) rotateX(2deg) translateY(14px)}}
@keyframes hero-kenburns{from{transform:scale(1.035) translate3d(0,0,0)}to{transform:scale(1.09) translate3d(-1.2%,-.6%,0)}}
@keyframes copy-in{to{opacity:1;transform:translateY(0)}}
@keyframes building-in{to{opacity:.18;transform:perspective(900px) rotateY(-10deg) rotateX(2deg) translateX(0)}}
@keyframes strip-in{to{opacity:1;transform:translateY(0)}}
@keyframes item-in{to{opacity:1;transform:translateY(0)}}
@keyframes light-drift{0%,100%{opacity:.12;transform:translate3d(-3%,-2%,0) scale(.9)}50%{opacity:.62;transform:translate3d(6%,4%,0) scale(1.12)}}
@keyframes night-sheen{from{transform:translateX(-70%)}to{transform:translateX(70%)}}
@keyframes boat-float{0%,100%{transform:skewX(-9deg) translateY(0)}50%{transform:skewX(-9deg) translateY(12px)}}
@keyframes water-move{from{background-position:0 0}to{background-position:0 116px}}
@keyframes page-reveal{from{transform:translateX(0)}to{transform:translateX(-104%)}}@keyframes word-out{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-24px)}}@keyframes line-fade{from{width:min(48vw,600px);opacity:1}to{width:min(48vw,600px);opacity:0}}
@keyframes vt-old{to{opacity:0;transform:translateX(-2.2%) scale(.988)}}@keyframes vt-new{from{opacity:0;transform:translateX(2.2%) scale(1.012)}to{opacity:1;transform:translateX(0) scale(1)}}
.property-city{background-image:linear-gradient(145deg,rgba(15,35,61,.05),rgba(15,35,61,.4)),url("nbl-ark-tower-night-v2.png")}

.brand-mark{overflow:hidden;background:#0b1c35;border-color:rgba(255,255,255,.32)}.brand-mark img{width:31px;height:31px;object-fit:contain}.concept-logo{display:flex;align-items:center;gap:11px}.home-logo-mark{display:grid;place-items:center;width:36px;height:36px;background:var(--navy);border-radius:50%;box-shadow:0 6px 18px rgba(8,23,47,.18)}.home-logo-mark img{width:24px;height:24px;object-fit:contain}.concept-logo>span:last-child{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,"Times New Roman",serif}
h1,h2,h3,.brand strong,.nav,.overlay-menu,.service-subnav{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,"Times New Roman",serif}
.service-hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,"Times New Roman",serif}.service-depth{padding:96px clamp(22px,10vw,150px) 115px;background:linear-gradient(135deg,#f6f2ea,#eef2f3)}.service-depth-intro{max-width:770px}.service-depth-intro h2{margin:0 0 26px;font-size:clamp(34px,4.5vw,60px);font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,"Times New Roman",serif;font-weight:400}.service-depth-intro>p:last-child{color:var(--muted);font-size:17px}.service-depth-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}.service-depth-grid article{padding:32px 28px;background:rgba(255,253,250,.85);border-top:1px solid var(--gold);box-shadow:0 14px 36px rgba(8,23,47,.055)}.service-depth-grid span{font-family:Georgia,"Times New Roman",serif;font-size:21px;color:var(--gold)}.service-depth-grid h3{margin:16px 0;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,"Times New Roman",serif;font-size:24px;font-weight:400}.service-depth-grid p{margin:0;color:var(--muted);font-size:15px}.service-depth-cta{margin:44px 0 0;text-align:center}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
@media (max-width:900px){.service-depth{padding:68px 28px 75px}.service-depth-grid{grid-template-columns:1fr}.service-depth-cta .button{width:auto}}

/* Unified inner-page banner system */
.page-hero,.service-hero,.boat-hero{min-height:430px;height:430px;margin:0;border-radius:0;box-shadow:none}.page-hero{display:flex;flex-direction:column;justify-content:flex-end;padding:76px clamp(22px,10vw,150px)}.boat-hero{padding-top:76px;padding-bottom:76px}.page-hero h1,.service-hero h1,.boat-hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,"Times New Roman",serif}
@media (max-width:900px){.page-hero,.service-hero,.boat-hero{min-height:360px;height:360px}.page-hero{padding:58px 28px}.boat-hero{padding:58px 28px}.boat-silhouette{bottom:2%;transform:scale(.57) skewX(-9deg)}}
@media (max-width:520px){.page-hero,.service-hero,.boat-hero{min-height:330px;height:330px}.boat-hero h1{font-size:48px}.boat-silhouette{width:500px;right:-30%;bottom:-1%;transform:scale(.46) skewX(-9deg)}}

/* Mobile: keep inner-page identity and navigation on one horizontal bar */
@media (max-width:900px){
  .site-header{flex-direction:row;align-items:center;padding:15px 20px;gap:14px;min-height:70px}
  .brand{flex:0 0 auto}.brand small{display:none}.brand strong{font-size:14px}.brand-mark{width:36px;height:36px}.brand-mark img{width:27px;height:27px}
  .nav{width:auto;max-width:calc(100vw - 142px);margin-left:auto;white-space:nowrap;overflow-x:auto;overflow-y:hidden;gap:17px;padding:4px 0;scrollbar-width:none;font-size:12px}.nav::-webkit-scrollbar{display:none}
  .concept-hero{min-height:1020px}.service-strip{bottom:46px}.concept-night{height:110px}
}
@media (max-width:520px){
  .concept-hero{min-height:1010px}.concept-copy{top:105px}.service-strip{bottom:38px}.service-strip a{min-height:65px}
}

/* Mobile home services: never allow horizontal clipping */
@media (max-width:900px){
  .concept-hero .service-strip{display:flex!important;flex-direction:column!important;left:20px!important;right:20px!important;bottom:38px!important;width:auto!important;max-width:none!important;overflow:hidden!important}
  .concept-hero .service-strip a{width:100%!important;min-height:58px!important;display:grid!important;grid-template-columns:46px minmax(0,1fr) 34px!important;grid-template-rows:1fr!important;align-items:center!important;gap:8px!important;padding:9px 15px!important;text-align:left!important;border-right:0!important;border-bottom:1px solid rgba(8,23,47,.12)!important;transform:none!important}
  .concept-hero .service-strip a:last-child{border-bottom:0!important}.concept-hero .service-strip a i{justify-self:center!important}.concept-hero .service-strip a span{font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif!important;font-size:13px!important;line-height:1.25!important;overflow-wrap:anywhere}.concept-hero .service-strip a em{justify-self:end!important;font-variant-numeric:tabular-nums}
}
@media (max-width:520px){.concept-hero{min-height:980px}.concept-hero .service-strip{left:16px!important;right:16px!important;bottom:26px!important}.concept-hero .service-strip a{min-height:57px!important}.concept-hero .service-strip a span{font-size:12px!important}}

/* Company profile: a clean, consistent Japanese corporate sans-serif system */
.company-layout{font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}.company-layout .page-hero{background:linear-gradient(135deg,#f4f4f1,#e9eef0)}.company-layout .page-hero h1,.company-layout h2,.company-layout h3{font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-weight:400;letter-spacing:.025em}.company-layout .page-hero h1{font-size:clamp(42px,5vw,66px)}.company-layout .profile{box-shadow:none}.company-layout .profile div{padding:21px 26px}.company-layout .profile dt{font-size:13px;letter-spacing:.08em}.company-layout .profile dd{font-weight:500}.company-layout .reason-section{background:#f0f3f3}.company-layout .reason-card{box-shadow:none}.company-layout .reason-card h3{font-size:22px}.company-layout .reason-card p{line-height:1.9}
.company-layout .stats{background:rgba(8,23,47,.12);box-shadow:none}.company-layout .stats article{background:#fffdfa}.company-layout .stats strong{font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-weight:400;font-variant-numeric:tabular-nums;letter-spacing:0}.company-layout .stats span{font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;letter-spacing:.04em}.footer-contact a{font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif!important;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:.02em}.footer-address p{font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-variant-numeric:tabular-nums}
@media (max-width:520px){
  .company-layout .page-hero{height:250px;min-height:250px;padding:42px 28px}.company-layout .page-hero h1{font-size:34px}.company-layout .page-hero p{font-size:14px;line-height:1.65}
  .company-layout .stats{grid-template-columns:repeat(2,1fr)!important;margin:26px 20px 0}.company-layout .stats article{padding:23px 10px;min-height:126px;display:flex;flex-direction:column;justify-content:center}.company-layout .stats strong{font-size:31px;line-height:1.15}.company-layout .stats span{margin-top:8px;font-size:11px;line-height:1.35}.company-layout .stats article:last-child strong{font-size:28px}.company-layout .stats article:last-child span{font-size:10px}
}

@media (max-width:900px){
  .concept-header{padding:34px 28px}.concept-hero{min-height:890px;margin:0;border-radius:0}.concept-copy{left:28px;right:28px;top:145px;max-width:none}.concept-copy h1{font-size:34px}.subline{font-size:15px}.scope,.founded{font-size:13px}
  .tokyo-tower{left:28%;top:320px;width:92px;height:230px;transform:scale(.86)}
  .architectural-building{right:-52px;top:230px;width:300px;height:360px;opacity:.86}
  .city-fog{left:0;right:0;bottom:334px;height:130px;opacity:.5}
  .service-strip{left:28px;right:28px;bottom:38px;display:block;background:rgba(255,255,255,.9)}
  .service-strip a{min-height:64px;grid-template-columns:52px 1fr 34px;grid-template-rows:1fr;text-align:left;justify-items:start;padding:10px 16px;border-right:0;border-bottom:1px solid rgba(8,23,47,.12)}
  .service-strip a:last-child{border-bottom:0}.service-strip span{font-size:14px}.service-strip em{justify-self:end}.slide-number{display:none}.side-scroll{display:none}.concept-night{height:105px;margin:0;border-radius:0}.arc-one{width:650px;height:500px;left:40px;top:-110px}.arc-two{right:-350px}
  .stats{grid-template-columns:repeat(2,1fr);margin-top:42px}.split,.property-card,.detail-hero,.reserve{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.feature{align-items:flex-start;flex-direction:column}.profile div{grid-template-columns:1fr;gap:5px}
  .reason-list,.boat-details,.boat-intro{grid-template-columns:1fr}.boat-hero{min-height:690px;padding-top:88px}.boat-silhouette{right:-8%;bottom:10%;width:620px;transform:scale(.75) skewX(-9deg);transform-origin:bottom right}
  .service-content{grid-template-columns:1fr;gap:28px;padding-top:50px;padding-bottom:50px}
  .service-subnav{grid-template-columns:1fr;transform:none;margin:0 22px}.service-subnav a{min-height:50px;border-right:0;border-bottom:1px solid var(--hair)}.service-subnav a:last-child{border-bottom:0}
  .home-philosophy,.care-section{grid-template-columns:1fr}.home-philosophy{padding-top:84px;padding-bottom:74px}.philosophy-aside{max-width:320px}.care-image img{min-height:420px}.care-copy{padding:64px 28px}.asset-message{padding-top:82px;padding-bottom:82px}.asset-number{right:4%;bottom:7%}.home-section-head{align-items:flex-start;flex-direction:column}.home-property-grid,.voice-grid{grid-template-columns:1fr}.home-property{min-height:350px}.footer-rich{grid-template-columns:1fr 1fr}
  .vision-stage{height:155vh}.vision-copy{left:28px;top:27%;transform:none}.vision-copy h2{font-size:clamp(50px,13vw,96px);white-space:normal}.vision-building{width:82vw;height:44vh;right:-7vw;top:48vh}.vision-side{display:none}.vision-orbit{transform:none}.orbit-a{right:-35vw;top:26vh}.orbit-b{left:-35vw;bottom:-26vw}
  .site-header{position:relative;align-items:flex-start;flex-direction:column}.nav{width:100%;overflow:auto;gap:18px;padding-bottom:4px}
}
@media (max-width:520px){
  .concept-logo{font-size:30px}.hamburger{width:32px}.concept-copy{top:125px}.concept-copy h1{font-size:32px;letter-spacing:.04em}
  .concept-hero{min-height:812px}.architectural-building{right:-98px;top:265px;width:300px;height:330px}.tokyo-tower{left:31%;top:370px}.service-strip{bottom:34px}
  .stats{grid-template-columns:1fr}.button{width:100%}.property-card,.page-hero,.detail-copy,.reserve-form{padding:24px}.footer{flex-direction:column}
  .footer-rich{grid-template-columns:1fr;padding-top:54px}.voice-card p{min-height:0}.asset-message h2 br,.home-cta h2 br{display:none}
  .vision-stage{height:auto}.vision-sticky{height:740px;position:relative}.vision-grid{transform:perspective(750px) rotateX(60deg) translateY(-170px) scale(1.2)}.vision-copy h2{transform:none;font-size:56px}.vision-copy p,.vision-number,.vision-kicker{opacity:1;transform:none}.vision-building{transform:none;width:94vw;height:300px;right:-11vw;top:388px}.vision-orbit{opacity:.48}.vision-building .vision-pin{opacity:1;transform:none}
}

/* Narrow screens: a deliberate compact header, never a wrapped or clipped menu. */
.inner-menu-toggle,.inner-mobile-menu{display:none}
@media (max-width:1100px){
  .site-header{position:relative!important;display:flex!important;flex-direction:row!important;align-items:center!important;min-height:72px!important;padding:15px 20px!important;gap:14px!important}
  .site-header .nav{display:none!important}
  .site-header .brand{min-width:0;flex:1 1 auto}.site-header .brand small{display:none!important}.site-header .brand strong{font-size:16px!important;white-space:nowrap}
  .inner-menu-toggle{display:grid;flex:0 0 42px;place-content:center;gap:5px;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;cursor:pointer}
  .inner-menu-toggle span{display:block;width:18px;height:1px;background:currentColor;transition:transform .25s ease,opacity .2s ease}.inner-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.inner-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.inner-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .inner-mobile-menu{position:absolute;z-index:50;top:calc(100% - 1px);right:0;left:0;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 20px 16px;background:rgba(8,23,47,.98);border-top:1px solid rgba(255,255,255,.12);box-shadow:0 18px 30px rgba(1,8,19,.24);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .22s ease,transform .22s ease,visibility .22s}
  .inner-mobile-menu.open{display:grid;opacity:1;visibility:visible;transform:translateY(0)}.inner-mobile-menu a{padding:12px 0;color:#fff;border-bottom:1px solid rgba(255,255,255,.14);font-size:14px;letter-spacing:.04em;text-decoration:none}.inner-mobile-menu a:nth-last-child(-n+2){border-bottom:0}.inner-mobile-menu a[aria-current="page"]{color:#d2ad72}
  .concept-hero{min-height:1035px!important}.concept-hero .service-strip{display:flex!important;flex-direction:column!important;left:20px!important;right:20px!important;bottom:38px!important;width:auto!important;max-width:none!important;overflow:hidden!important}.concept-hero .service-strip a{width:100%!important;min-height:58px!important;display:grid!important;grid-template-columns:46px minmax(0,1fr) 34px!important;grid-template-rows:1fr!important;align-items:center!important;gap:8px!important;padding:9px 15px!important;text-align:left!important;border-right:0!important;border-bottom:1px solid rgba(8,23,47,.12)!important;transform:none!important}.concept-hero .service-strip a:last-child{border-bottom:0!important}.concept-hero .service-strip a span{font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif!important;font-size:13px!important;line-height:1.25!important;overflow-wrap:anywhere}
}
@media (max-width:900px){
  .company-layout .stats{grid-template-columns:repeat(2,1fr)!important;margin:26px 20px 0}.company-layout .stats article{min-height:126px;padding:23px 10px;display:flex;flex-direction:column;justify-content:center}.company-layout .stats strong{font-family:Arial,"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif!important;font-size:31px;line-height:1.15;font-variant-numeric:tabular-nums}.company-layout .stats span{margin-top:8px;font-size:11px;line-height:1.35}.footer-contact a{font-family:Arial,"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif!important;font-variant-numeric:tabular-nums!important;letter-spacing:0!important}
}

/* Restore the quieter first-edition wordmark and keep the source Tokyo Tower image unobstructed. */
.concept-logo{display:block!important;font-family:Georgia,"Times New Roman",serif!important;letter-spacing:.04em!important}
.brand-mark{overflow:visible!important;background:transparent!important;font-family:Georgia,"Times New Roman",serif!important;font-size:28px!important;font-weight:400}.brand-mark img{display:none!important}
.home-logo-mark{display:none!important}.tokyo-tower{display:none!important}
.footer-brand>img{display:none!important}.footer-brand:before{content:"N";display:grid;place-items:center;width:40px;height:40px;margin-bottom:12px;border:1px solid rgba(255,255,255,.48);font-family:Georgia,"Times New Roman",serif;font-size:27px;font-weight:400;line-height:1;color:#fff}

/* Mobile scroll choreography: reveal each layer only as it approaches the screen. */
@media (max-width:900px) and (prefers-reduced-motion:no-preference){
  .js .scroll-scene .philosophy-copy,.js .scroll-scene .philosophy-aside,.js .scroll-scene .asset-inner,.js .scroll-scene .home-section-head,.js .scroll-scene .properties-action,.js .scroll-scene .home-cta-copy,.js .scroll-scene .home-cta h2,.js .scroll-scene .home-cta p,.js .scroll-scene .home-cta .button{opacity:0;will-change:opacity,transform;transform:translate3d(0,42px,0);transition:opacity .72s ease,transform .95s cubic-bezier(.2,.8,.2,1)}
  .js .scroll-scene .philosophy-aside{transition-delay:.14s}.js .scroll-scene .asset-inner{transition-delay:.06s}.js .scroll-scene .properties-action{transition-delay:.42s}.js .scroll-scene .home-cta p{transition-delay:.1s}.js .scroll-scene .home-cta .button{transition-delay:.2s}
  .js .scroll-scene .care-image{clip-path:inset(0 100% 0 0);will-change:clip-path;transition:clip-path 1.05s cubic-bezier(.2,.8,.2,1)}
  .js .scroll-scene .care-copy{opacity:0;transform:translate3d(0,44px,0);will-change:opacity,transform;transition:opacity .7s .18s ease,transform .9s .18s cubic-bezier(.2,.8,.2,1)}
  .js .scroll-scene .home-property{opacity:0;transform:translate3d(0,58px,0) scale(.985);will-change:opacity,transform;transition:opacity .68s ease,transform .9s cubic-bezier(.2,.8,.2,1)}
  .js .scroll-scene .home-property:nth-child(2){transition-delay:.12s}.js .scroll-scene .home-property:nth-child(3){transition-delay:.24s}
  .js .scroll-scene .voice-card{opacity:0;transform:translate3d(0,46px,0);will-change:opacity,transform;transition:opacity .64s ease,transform .84s cubic-bezier(.2,.8,.2,1)}
  .js .scroll-scene .voice-card:nth-child(2){transition-delay:.12s}.js .scroll-scene .voice-card:nth-child(3){transition-delay:.24s}
  .js .scroll-scene.scene-active .philosophy-copy,.js .scroll-scene.scene-active .philosophy-aside,.js .scroll-scene.scene-active .asset-inner,.js .scroll-scene.scene-active .home-section-head,.js .scroll-scene.scene-active .properties-action,.js .scroll-scene.scene-active .home-cta-copy,.js .scroll-scene.scene-active .home-cta h2,.js .scroll-scene.scene-active .home-cta p,.js .scroll-scene.scene-active .home-cta .button,.js .scroll-scene.scene-active .care-copy,.js .scroll-scene.scene-active .home-property,.js .scroll-scene.scene-active .voice-card{opacity:1;transform:translate3d(0,0,0) scale(1)}
  .js .scroll-scene.scene-active .care-image{clip-path:inset(0 0 0 0)}
}

/* NBL identity: black, white and the brand red. */
:root{--ink:#101010;--muted:#555;--paper:#f5f5f3;--white:#fff;--navy:#080808;--gold:#d71920;--hair:rgba(0,0,0,.14);--line:rgba(0,0,0,.2);--soft:0 22px 70px rgba(0,0,0,.14)}
html,html:not(.page-ready) body{background:#090909}body{background:linear-gradient(135deg,#fff 0%,#f4f4f2 55%,#ececec 100%)}
.page-transition{background:linear-gradient(120deg,#050505,#1a1a1a)}.page-transition:before{border-color:rgba(215,25,32,.7)}.transition-line{background:#d71920}.transition-copy{color:#ef3840}
.gold-arc,.home-philosophy:after,.home-cta:before,.service-hero:after{border-color:rgba(215,25,32,.48) transparent transparent rgba(215,25,32,.48)}.home-philosophy:after,.home-cta:before{border-color:rgba(215,25,32,.38)}
.concept-night,.vision-stage{background:#090909}.concept-night:after,.asset-message:after{background:linear-gradient(105deg,transparent 37%,rgba(215,25,32,.26) 49%,transparent 61%)}
.asset-message,.vision-sticky{background:radial-gradient(circle at 75% 30%,rgba(215,25,32,.22),transparent 32%),linear-gradient(130deg,#070707,#1b1b1b)}.asset-message .eyebrow,.vision-kicker,.vision-number,.vision-copy h2 em,.vision-side span,.vision-side b:nth-of-type(1){color:#ef3840}.vision-orbit{border-color:rgba(215,25,32,.6)}.vision-pin{border-color:#ef3840;background:#111;box-shadow:0 0 0 7px rgba(215,25,32,.16)}
.feature,.service-points,.site-header{background:#090909}.feature{background:linear-gradient(135deg,#050505,#222)}.service-points span,.service-subnav small{color:#d71920}.service-subnav a[aria-current="page"]{background:#d71920}.service-subnav a[aria-current="page"] small{color:#fff}
.footer,.footer-rich{background:linear-gradient(135deg,#050505,#181818)}.footer-rich:before{border-color:rgba(215,25,32,.45)}.footer-brand p,.footer-rich small{color:#ef3840}.inner-mobile-menu{background:rgba(9,9,9,.98)!important}.inner-mobile-menu a[aria-current="page"]{color:#ef3840}
.home-philosophy{background:linear-gradient(135deg,#fff,#f1f1f0)}.reason-section{background:linear-gradient(135deg,#f0f0ef,#fff)}.company-layout .page-hero,.service-hero,.service-sales,.service-leasing,.service-management,.service-development,.service-lodging{background:linear-gradient(135deg,#fff,#e8e8e8)}
.property-city{background-image:linear-gradient(145deg,rgba(0,0,0,.06),rgba(0,0,0,.5)),url("nbl-ark-tower-night-v2.png")}.home-property span,.home-property b{color:#ef3840}.button.primary{background:#d71920!important;color:#fff!important}.button.primary:hover{background:#a90e17!important}

/* Use the original geometric mark prominently at every scale. */
.concept-logo{display:flex!important;align-items:center!important;gap:14px!important;font-family:Georgia,"Times New Roman",serif!important;color:#101010!important}.concept-logo>span:last-child{font-size:clamp(34px,3.7vw,48px);letter-spacing:.04em}.home-logo-mark{display:grid!important;place-items:center;width:68px;height:68px;border-radius:0;background:#090909;box-shadow:0 10px 22px rgba(0,0,0,.18)}.home-logo-mark img{display:block!important;width:54px;height:54px;object-fit:contain}
.brand-mark{display:grid!important;place-items:center;width:62px!important;height:62px!important;overflow:hidden!important;background:#090909!important;border:1px solid rgba(255,255,255,.42)!important}.brand-mark img{display:block!important;width:50px!important;height:50px!important;object-fit:contain}.footer-brand>img{display:block!important;width:62px!important;height:62px!important;object-fit:contain;filter:none!important}.footer-brand:before{display:none!important;content:none!important}.footer-brand{grid-template-columns:72px 1fr!important}.footer-brand strong{font-size:42px!important}
@media (max-width:900px){.home-logo-mark{width:58px;height:58px}.home-logo-mark img{width:46px;height:46px}.concept-logo>span:last-child{font-size:35px}.brand-mark{width:50px!important;height:50px!important}.brand-mark img{width:40px!important;height:40px!important}.site-header{min-height:78px!important}.site-header .brand strong{font-size:17px!important}}

.hero-art,.property-photo img,.vision-building img{filter:grayscale(1) contrast(1.08)}.property-city{filter:grayscale(1) contrast(1.08)!important}
.boat-page{background:#f4f4f2}.boat-hero{background:radial-gradient(circle at 76% 18%,rgba(215,25,32,.16),transparent 22%),linear-gradient(140deg,#fff 0%,#dedede 50%,#161616 100%)}.boat-silhouette{border-bottom-color:#d71920}.boat-silhouette i{border-top-color:#111}.boat-hero-copy>p:not(.eyebrow){color:#333}
