/* 2026-10-02: subdued navy/white palette, upright typography */
:root{--navy:#153b64;--deep:#09203d;--pale:#eff4f8;--ink:#22364c;--line:#dce4ec;--yellow:#d5e5ef}
body{background:#f2f5f8;background-image:none}
.display,.display b,.hero-rank .rank-of{font-style:normal}
.display{font-weight:800;letter-spacing:.015em;font-kerning:normal}
.display b{font-weight:800;letter-spacing:.035em}
.hero-rank>span{letter-spacing:.025em;margin-left:.08em}
.hero-rank b{letter-spacing:.025em}
.hero-intro br{display:block}
.cta,.cta strong{font-weight:800;letter-spacing:.015em}
.speed-number strong>span,.giant b{letter-spacing:.025em}
.side-phone,.contact-phone a{letter-spacing:.025em}
.flow-list h3,.faq-list summary{font-weight:800;letter-spacing:.015em}
h2{text-align:center;text-wrap:balance}
.point h2,.flow-section h2,.benefit-heading h2{line-height:1.4}
.benefit-heading,.flow-section>.eyebrow{text-align:center}
.point h2{margin-bottom:8px}
.page-shell{box-shadow:0 0 36px #09203d08}
.side-message span{background:none}
.side-offer,.side-contact{border:1px solid #cedbe6;box-shadow:none}
.side-right nav a{background:#fff;color:var(--navy);border:1px solid #d7e0e8;box-shadow:none}
.side-right nav a:hover{background:var(--pale)}
.side-right nav a[aria-current="location"]{background:#ffd34e;color:#111;border-color:#e6b836;border-left:6px solid #111;font-weight:800}
.side-right .side-contact:has(a[aria-current="location"]){border:2px solid #e6b836;background:#fff9e6}
.side-offer strong b{color:var(--navy)}
.cta{background:#ffd34e;color:#111;border-bottom-color:#d0a633;box-shadow:0 4px 12px #09203d0d}
.cta:hover{background:#ffdc6b}
.mobile-header>a:last-child{background:#ffd34e;color:#111}
.hero-audience,.side-audience{background:#ffd34e;color:#111}
.side-audience{padding:12px 6px;border-radius:3px}
.estimate-heading>.eyebrow{display:inline-block;background:#ffd34e;color:#111;padding:9px 14px;border-radius:3px}
.hero-visual{position:relative;background:#071b38 url('assets/hero-night-network.png') center/cover no-repeat}
.hero-heading{background:linear-gradient(100deg,#071b38b8 0%,#071b3833 80%)}
.hero-years,.hero-rank,.hero-intro{color:#fff;text-shadow:0 2px 7px #020b2370}
.hero-years{padding-top:14px;line-height:1;transform:translateY(10px)}
.hero-years b{display:inline-block;font-size:88px;line-height:.9;margin-right:.08em;letter-spacing:.02em}
.hero-rank{margin-top:-15px}
.hero-medal{background:none;border-radius:0;padding:0;opacity:1;box-shadow:none;width:170px;right:17px;top:22px}
.hero-brand{position:relative}
.hero-benefits{background:#071b38e8;border-top:1px solid #b0d2e033;color:#fff}
.hero-benefits>div{border-color:#b0d2e04d}
.hero-benefits strong{color:#ffd34e;text-shadow:none}
.hero-benefits span{color:#dce9f2}
.hero-action>.display{color:var(--navy)}
.section-intro{background:linear-gradient(100deg,#071b38bb,#071b3877),url('assets/hero-night-network.png') center 30%/cover no-repeat;color:#fff}
.section-intro .eyebrow,.section-intro h2,.section-intro .three-title,.section-intro .three-title b{color:#fff}
.section-intro h2{font-size:64px;line-height:1.4;margin:16px 0 18px}
.three-title .three-emphasis,.section-intro .three-title .three-emphasis b{color:#ffd34e}
.three-title .three-emphasis{display:inline-block;font-size:46px;white-space:nowrap;line-height:1}
.three-title .three-emphasis b{font-size:72px}
.three-title .three-suffix{display:inline-block;white-space:nowrap}
.point-label,.point-speed .point-label{background:#ffd34e;color:#111;border-top:1px solid #f1c444;border-bottom:1px solid #f1c444}
.point-label{position:relative;z-index:1}
.point-label::after{content:"";position:absolute;left:34px;bottom:-14px;width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:14px solid #ffd34e;pointer-events:none}
.point-label b{color:#111}
.point-label>span:first-child,.point-label b{font-size:34px;line-height:1}
.point-label>span:last-child{font-size:21px;line-height:1.45;text-align:right}
.point-cost,.point-speed,.point-day{background:#f4f7fa;color:var(--ink)}
.point .point-inner{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#f8fafcb8,#edf3f8c2),url('assets/point-network-pattern.png') center/100% 100% no-repeat}
.point-inner::before{content:"POINT " attr(data-point);position:absolute;z-index:-1;top:8px;left:50%;transform:translateX(-50%);font-family:"Barlow Condensed","Noto Sans JP",sans-serif;font-size:170px;font-weight:800;letter-spacing:.03em;line-height:1;color:#153b640a;white-space:nowrap;pointer-events:none}
.benefit-labels span{border:1px solid #153b64;background:#153b64;color:#fff}
.cost-visual{display:block;position:relative;margin:8px 0 18px;padding:22px 0 12px}
.cost-visual>div{width:100%;text-align:center}
.cost-visual>div>p:first-child{font-size:28px;margin-top:0;margin-bottom:8px}
.cost-heading{position:relative}
.cost-heading h2{width:100%;text-align:center}
.cost-heading img{position:absolute;top:50%;right:-8px;width:150px;transform:translateY(-50%) rotate(10deg)}
.point-speed{background:#f0f5f9;color:var(--ink)}
.point-speed h2,.point-speed h2 span{color:var(--navy)}
.speed-number strong{color:var(--navy)}
.speed-number{display:block;text-align:center;margin-top:24px}
.speed-number>span{display:block;font-size:32px;margin-bottom:8px}
.speed-value{display:flex;align-items:baseline;justify-content:center;gap:12px;color:var(--navy)}
.speed-max{font-size:89px;line-height:1;white-space:nowrap}
.point-speed .micro{color:#626f7d}
.tenant-photo figcaption{background:#fffffff0;color:var(--navy);box-shadow:none}
.day-number strong b{color:var(--navy);text-shadow:none}
.day-number{display:block;text-align:center}
.day-number-main{display:flex;align-items:baseline;justify-content:center;gap:14px}
.day-number-main>span{font-size:42px;line-height:1}
.point-day .day-number>.day-available{display:block;font-size:32px;margin:10px 0 0;line-height:1.4}
.day-tags span{background:#ffd34e;color:#111}
.benefit-heading h2 span{background:none}
.building-photo figcaption{background:#12395de8}
.cta-band{background:linear-gradient(100deg,#071b38d9,#071b3888),url('assets/hero-night-network.png') center 30%/cover no-repeat;color:#fff}
.cta-band>p{color:#fff}
.proof-section{background:#ffd000;color:#101c30;border-top:5px solid #101c30;border-bottom:5px solid #101c30}
.proof-section .eyebrow,.proof-section h2,.proof-section h2 span{color:#101c30}
.proof-numbers{display:block;margin:25px 0 22px;text-align:center}
.proof-numbers>div:first-child{border:0}
.proof-numbers>div>span{display:inline-block;padding:7px 24px;background:#101c30;color:#fff;font-size:22px;font-weight:700;margin-bottom:10px}
.proof-numbers strong{display:block;font-size:38px;color:#101c30;line-height:1.05}
.proof-numbers strong b{display:block;font-size:158px;margin:0;letter-spacing:.035em}
.proof-numbers strong span{font-size:38px;display:block;margin-top:10px}
.proof-numbers strong b .proof-comma{display:inline;font-size:.55em;margin:0;letter-spacing:.01em}
.proof-section .micro{color:#39412a}
.flow-list li>span{background:#e0ebf3;color:var(--navy)}
.estimate-section{background:#143452}
.estimate-heading h2 span{color:#fff}
.preview-note{background:#f2f6f9;border-left-color:#739bb5}
@media(max-width:600px){
  .hero-medal{padding:0;width:116px;right:12px;top:18px}
  .hero-years{padding-top:10px;transform:translateY(8px)}
  .hero-years b{font-size:66px}
  .section-intro h2{font-size:46px}
  .three-title .three-emphasis{font-size:40px}
  .three-title .three-emphasis b{font-size:60px}
  .point-inner::before{font-size:120px;top:18px}
  .point-label>span:first-child,.point-label b{font-size:28px}
  .point-label::after{left:21px}
  .point-label>span:last-child{font-size:18px}
  .cost-visual>div>p:first-child{font-size:24px}
  .cost-heading img{width:100px}
  .day-number-main{gap:10px}
  .day-number-main>span{font-size:29px}
  .point-day .day-number>.day-available{font-size:26px;margin-top:10px}
  .speed-number>span{font-size:24px}
  .speed-max{font-size:65px}
  .speed-value{gap:8px}
  .proof-numbers>div>span{font-size:19px}
  .proof-numbers strong b{font-size:120px}
  .proof-numbers strong span{font-size:32px}
}
@media(max-width:360px){.proof-numbers strong b{font-size:103px}.proof-numbers strong span{font-size:29px}.point-inner::before{font-size:104px}}
@media(max-width:360px){.hero-medal{width:96px;right:9px;top:18px}.hero-rank>span{margin-left:.06em;letter-spacing:.02em}}
@media(max-width:360px){.speed-max,.speed-number strong{font-size:54px}.speed-number strong b{font-size:105px}.speed-number strong>span{font-size:23px}.speed-value{gap:6px}}
@media(max-width:360px){.cost-heading img{width:62px}.point-day .day-number>.day-available{font-size:24px}}
@media(max-width:360px){.three-title .three-prefix{display:block;margin-bottom:8px}}
