*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:#123a60;background:#f7f9fc;font-family:'Yu Gothic',Meiryo,sans-serif;line-height:1.85}a{color:inherit;text-decoration:none}button{font:inherit}.draft{background:#083c68;color:#fff;text-align:center;padding:5px 16px;font-size:11px;letter-spacing:.04em}header{display:flex;align-items:center;justify-content:space-between;padding:14px 5%;background:#f7f9fc;position:sticky;top:0;z-index:10;border-bottom:1px solid #083c6814}.logo{position:relative;display:block;width:196px;height:48px;overflow:hidden}.logo img{position:absolute;width:100%;top:-43%;left:0}nav{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:bold}.nav-cta{border:1px solid #083c68;border-radius:5px;padding:9px 18px}.menu{display:none}.hero{display:grid;grid-template-columns:45% 55%;min-height:690px;padding:0 0 0 8%;overflow:hidden}.hero-copy{padding:60px 22px 65px 0}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:.16em;color:#1466a0;margin:0 0 20px}h1{font-size:clamp(42px,4.8vw,76px);letter-spacing:-.03em;line-height:1.35;margin:0 0 24px}h1 em{font-style:normal;color:#176da8}h2{font-size:clamp(28px,3vw,44px);line-height:1.55;letter-spacing:-.02em;margin:0 0 26px}h3{font-size:20px;line-height:1.65}.lead{font-size:17px}.button{display:inline-flex;gap:26px;align-items:center;justify-content:space-between;background:#09558c;color:#fff;border-radius:5px;padding:15px 23px;font-size:14px;font-weight:bold;margin:14px 0}.button:hover{background:#083c68}.small{font-size:12px;color:#5b7085;line-height:1.8}.hero-map{position:relative;margin:32px 0 32px 20px;border-radius:120px 0 0 10px;overflow:hidden;box-shadow:0 16px 45px #123a6018}.hero-map>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:53% 50%;filter:saturate(.65)}.map-caption{position:absolute;bottom:30px;left:25px;right:20px;background:#fffffff2;padding:18px 20px;border-radius:5px;font-size:15px;font-weight:bold}.map-caption small{display:block;font-size:10px;font-weight:normal;margin-top:6px}.dot{display:inline-block;background:#176da8;width:9px;height:9px;border-radius:50%;margin-right:8px}.section{padding:86px max(7%,calc((100vw - 1120px)/2));border-top:1px solid #123a6020}.intro{display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.intro>.eyebrow{grid-column:1/-1}.intro-body p{margin-top:0}.text-link{font-size:14px;font-weight:bold;border-bottom:1px solid;padding-bottom:5px}.layers{background:#eaf2fa;display:grid;grid-template-columns:1fr 1fr;gap:70px}.legend{border-top:1px solid #123a6030}.legend>div{display:flex;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid #123a6030;font-size:14px}.legend span{width:32px;height:5px;border-radius:5px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin:44px 0}.steps b{font-size:42px;color:#88a9ca;font-weight:normal}.steps h3{margin:10px 0}.steps p{font-size:14px}details{border-top:1px solid #123a6030;padding:18px 0}details:last-child{border-bottom:1px solid #123a6030}summary{cursor:pointer;font-weight:bold;font-size:15px}details p{font-size:14px;max-width:900px}.safety{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;background:#083c68;color:#fff}.safety .eyebrow,.safety .small{color:#c4d9ed}.safety h3{margin-top:0}.sponsor .lead{max-width:700px}.stats{display:flex;gap:90px;margin:32px 0 18px}.stats strong{font-size:54px;font-weight:normal;line-height:1.2}.stats strong span{font-size:19px;margin-left:7px}.stats p{font-size:13px;margin:8px 0}.plans{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:35px 0 20px}.plans article{border:1px solid #bdcfe0;background:white;padding:30px}.plans h3{margin:0 0 18px}.price{font-size:42px;line-height:1.3}.price span{font-size:13px;margin-left:8px}.proposal{font-size:11px;display:inline-block;background:#f3edce;padding:3px 9px}.plans ul{padding-left:20px;font-size:14px}.news-row{display:flex;gap:25px;border-top:1px solid #123a6030;padding:20px 0}.news-row span{font-size:12px;white-space:nowrap;margin-top:4px}.news-row p{margin:0;font-size:14px}.contact{background:#eaf2fa;text-align:center}footer{padding:45px 7%;display:flex;justify-content:space-between;gap:30px;background:#f7f9fc}footer strong{font-size:23px}footer p{font-size:13px}footer a{display:block;font-size:12px;margin-bottom:8px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e6ad35;outline-offset:5px}@media(max-width:900px){nav{gap:15px;font-size:11px}.hero{padding-left:5%;grid-template-columns:48% 52%;min-height:620px}.hero-map{margin-left:0}.hero-copy{padding-top:45px}.section{padding:65px 6%}.intro,.layers,.safety{gap:30px}.steps{gap:25px}.stats{gap:45px}.price{font-size:34px}}@media(max-width:650px){header{padding:12px 5%}.logo{width:160px;height:40px}.menu{display:block;border:1px solid #083c68;background:none;border-radius:4px;font-size:12px;padding:5px 10px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#f7f9fc;padding:20px 6%;flex-direction:column;align-items:stretch;gap:20px;font-size:14px}nav.open{display:flex}.hero{display:flex;flex-direction:column;padding:0;min-height:0}.hero-copy{padding:36px 7% 20px}.hero h1{font-size:48px}.hero h1 br:nth-of-type(2){display:none}.hero-map{height:340px;min-height:340px;margin:10px 0 28px 7%;border-radius:70px 0 0 6px}.map-caption{bottom:20px;left:16px;padding:14px;font-size:12px}.intro,.layers,.safety{display:block}.intro-body{margin-top:20px}.legend{margin-top:25px}.section{padding:50px 7%}.steps{display:block;margin:20px 0}.steps article{display:grid;grid-template-columns:48px 1fr;gap:0 18px;padding:22px 0;border-top:1px solid #123a6020}.steps b{grid-row:1/3;font-size:33px}.steps h3{margin:0;font-size:18px}.steps p{margin:9px 0 0}.plans{grid-template-columns:1fr}.plans article{padding:24px}.stats{gap:30px}.stats strong{font-size:40px}.stats strong span{font-size:15px}.stats p{font-size:11px}.safety h3{margin-top:25px}.news-row{gap:14px}footer{display:block}footer>div+div{margin-top:25px}.draft{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.sponsor-example{margin:35px 0}.sponsor-example img{display:block;width:100%;height:auto;border:1px solid #bdcfe0;border-radius:12px}.sponsor-example figcaption{font-size:12px;color:#5b7085;margin-top:8px}

.pr-comparison{display:grid;grid-template-columns:1fr 1fr;gap:22px}.pr-comparison .sponsor-example{margin:20px 0}.pr-comparison h4{margin:0 0 12px;font-size:17px}@media(max-width:650px){.pr-comparison{grid-template-columns:1fr;gap:0}}

.pin-severity{display:grid;grid-template-columns:1fr 1fr;gap:24px}.pin-severity p{padding:18px;background:#fff;border:1px solid #bdcfe0}.severity-dot{display:inline-block;width:13px;height:13px;border-radius:50%;margin-right:9px}.severity-dot.red{background:#e53935}.severity-dot.yellow{background:#ffd400}.pin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:24px 0}.pin-images{display:flex;align-items:center;gap:8px}.pin-images img{width:65px;height:75px;object-fit:contain}.pin-guide h4{margin:12px 0 8px;font-size:17px}.pin-grid p,.other-pins p{font-size:13px;margin:0}.other-pins{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.other-pins article{display:flex;gap:14px;align-items:flex-start}.other-pins img{width:65px;height:80px;object-fit:contain}.sponsor-pin-sample{display:grid;place-items:center;min-width:55px;height:65px;background:#09558c;color:white;border-radius:28px 28px 28px 3px;font-size:25px}.other-pins h4{margin-top:0}@media(max-width:900px){.pin-grid{grid-template-columns:1fr 1fr}.other-pins{grid-template-columns:1fr}}@media(max-width:650px){.pin-severity{grid-template-columns:1fr;gap:0}.pin-images img{width:55px;height:65px}}



.grouped-legend{border-top:0}.legend-group{margin-bottom:24px}.legend-group h3{font-size:16px;margin:0;padding:0 0 9px;border-bottom:2px solid #123a60}.legend-item{display:flex;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid #123a6030;font-size:14px}.legend-item span{display:block;flex-shrink:0;width:32px;height:5px;border-radius:5px}

.unmarked-area-note{margin:24px 0 16px;padding:18px 20px;background:#fff;border-left:4px solid #09558c;border-radius:0 8px 8px 0;font-size:14px}.unmarked-area-note strong{display:block;margin-bottom:8px}.unmarked-area-note p{margin:0;line-height:1.9}

.coverage{background:#eef4fb}.coverage p{max-width:850px}.coverage h2{font-size:clamp(26px,3vw,38px)}

.photo-statement,.photo-night,.advertising-photo{position:relative;isolation:isolate;overflow:hidden;color:white}.photo-statement{min-height:450px;padding:65px 8%;display:flex;align-items:center}.photo-statement>img,.photo-night>img,.advertising-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.photo-statement::before,.photo-night::before,.advertising-photo::before{content:'';position:absolute;inset:0;z-index:-1}.photo-statement::before{background:linear-gradient(90deg,rgba(8,35,60,.88),rgba(8,35,60,.38))}.photo-statement>img{object-position:center 55%}.photo-statement .eyebrow,.photo-night .eyebrow,.advertising-photo .eyebrow{color:#d4e5f5}.photo-statement h2,.photo-night h2{margin-bottom:18px}.photo-pair{padding:0 7% 65px;display:grid;grid-template-columns:1.2fr 1fr;gap:30px}.photo-pair figure{margin:0}.photo-pair img{width:100%;height:290px;object-fit:cover;display:block;border-radius:10px}.photo-pair figcaption{font-size:12px;margin-top:9px;color:#5b7085}.coverage-photo{float:right;width:42%;margin:0 0 25px 35px}.coverage-photo img{width:100%;height:245px;object-fit:cover;border-radius:8px}.coverage::after{content:'';display:block;clear:both}.photo-night{padding:60px 8%;min-height:350px}.photo-night::before{background:rgba(6,27,51,.64)}.photo-night>img{object-position:center 54%}.advertising-photo{min-height:310px;padding:55px 7%}.advertising-photo::before{background:linear-gradient(90deg,rgba(7,34,61,.85),rgba(7,34,61,.25))}.advertising-photo h1{font-size:clamp(30px,4vw,49px);margin:0}.advertising-photo>img{object-position:center 55%}@media(max-width:650px){.photo-statement{min-height:360px;padding:42px 7%}.photo-pair{grid-template-columns:1fr;padding:0 7% 45px;gap:20px}.photo-pair img{height:230px}.coverage-photo{float:none;width:100%;margin:0 0 25px}.coverage-photo img{height:210px}.photo-night{padding:45px 7%}.advertising-photo{min-height:270px;padding:45px 7%}}

.ad-section-nav{display:flex;gap:16px;margin:25px 0 35px;flex-wrap:wrap}.ad-section-nav a{padding:12px 22px;border:1px solid #09558c;border-radius:5px;font-weight:bold}.ad-product-details{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;margin:30px 0}.ad-product-details h3{margin-top:0}.ad-product-details ul{padding-left:22px;font-size:15px}.ad-price-box{padding:25px;background:#fff;border:1px solid #bdcfe0;border-radius:8px;align-self:start}.ad-price-box .price{font-size:36px}.ad-conditions{padding:20px 24px;background:#eaf2fa;border-radius:8px}.ad-conditions h3{margin:0 0 8px}.ad-conditions p{margin:0}.side-pr-section{background:#eef4fb}.ad-common{padding-top:35px;padding-bottom:35px}.ad-common p{font-size:13px}@media(max-width:650px){.ad-product-details{grid-template-columns:1fr;gap:20px}.ad-price-box .price{font-size:32px}}

.source-intro h1{font-size:clamp(32px,4vw,54px)}.source-list article{display:flex;gap:26px;padding:25px 0;border-top:1px solid #bdcfe0}.source-list article>span{font-size:30px;color:#88a9ca}.source-list h3{margin:0 0 10px}.source-list p{margin:0}.source-tsunami{background:#eef4fb}@media(max-width:650px){.source-list article{gap:16px}}

/* Mobile maximum scale follows the 520px reference layout. */
@media(max-width:650px){
  .hero h1{font-size:clamp(27px,9.23vw,48px);line-height:1.35;overflow-wrap:normal}
  .hero-copy{padding-top:clamp(25px,6.92vw,36px);padding-bottom:20px}
  .hero .eyebrow{font-size:clamp(10px,2.3vw,12px)}
  .hero .lead{font-size:clamp(14px,3.27vw,17px);line-height:1.85}
  .hero .button{font-size:clamp(12px,2.69vw,14px);padding:clamp(12px,2.88vw,15px) clamp(16px,4.42vw,23px);gap:clamp(12px,5vw,26px);max-width:100%}
  .hero .small{font-size:clamp(10px,2.3vw,12px)}
  .hero-map{height:clamp(225px,65.38vw,340px);min-height:clamp(225px,65.38vw,340px)}
  .map-caption{font-size:clamp(10px,2.3vw,12px)}
  .logo{width:clamp(130px,30.77vw,160px);height:clamp(33px,7.69vw,40px)}
  .section h2{font-size:clamp(25px,5.38vw,28px)}
  .section{padding-top:clamp(38px,9.62vw,50px);padding-bottom:clamp(38px,9.62vw,50px)}
}

/* Shared website footer */
footer.site-footer{display:block;padding:58px 7% 24px;margin:0;background:linear-gradient(115deg,#082b47 0%,#103e5e 75%,#124f70 100%);color:#eff7fc;border-top:4px solid #1a8db5}
.site-footer-inner{max-width:1200px;margin:0 auto}
.site-footer-main{display:grid;grid-template-columns:1.4fr .8fr 1.1fr;gap:clamp(28px,5vw,72px);padding-bottom:42px}
.site-footer-logo{display:inline-flex!important;align-items:center;background:#f7fafc;padding:10px 12px;border-radius:10px;width:max-content;margin:0 0 20px!important}
.site-footer-logo>span{position:relative;display:block;width:196px;height:48px;overflow:hidden}
.site-footer-logo img{position:absolute;width:100%;max-width:none;top:-43%;left:0}
.site-footer .site-footer-tagline{font-size:23px;line-height:1.65;font-weight:700;letter-spacing:.06em;color:#fff;margin:0 0 12px}
.site-footer .site-footer-description{font-size:13px;line-height:1.9;color:#c0d6e5;margin:0 0 20px}
.site-footer-social{display:flex;flex-wrap:wrap;gap:10px}
.site-footer a{color:#d8e8f3;font-size:13px;line-height:1.7;text-decoration:none;transition:color .15s,background-color .15s}
.site-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
.site-footer a:focus-visible{outline:2px solid #88d6f5;outline-offset:5px;border-radius:3px}
.site-footer-social a{display:inline-flex;align-items:center;gap:20px;border:1px solid #608097;border-radius:30px;padding:7px 14px;margin:0;background:#ffffff05}
.site-footer-links h2{font-size:14px;line-height:1.6;font-weight:700;color:#fff;margin:4px 0 22px;padding:0;letter-spacing:.05em}
.site-footer-links>a{display:block;margin:0 0 13px}
.site-footer .site-footer-operator{font-size:12px;color:#aac6d8;margin:24px 0 0}
.site-footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px 24px;border-top:1px solid #ffffff28;padding-top:24px}
.site-footer-copyright{font-size:11px;letter-spacing:.02em;color:#b2cddd}
.site-footer-legal{display:flex;flex-wrap:wrap;gap:10px 20px}
.site-footer-legal a,.site-footer .site-footer-top{font-size:11px;margin:0}
.site-footer .site-footer-top{display:inline-flex;align-items:center;gap:10px}
@media(max-width:900px){.site-footer-main{grid-template-columns:1.2fr 1fr;gap:32px}.site-footer-brand{grid-column:1/-1}.site-footer-bottom{align-items:flex-start}.site-footer-legal{order:-1;flex-basis:100%}}
@media(max-width:520px){footer.site-footer{padding:36px 24px 22px}.site-footer-main{grid-template-columns:1fr;gap:28px;padding-bottom:28px}.site-footer-brand{grid-column:auto}.site-footer-links h2{margin:0 0 14px}.site-footer .site-footer-tagline{font-size:21px}.site-footer-bottom{gap:18px}.site-footer-legal{display:grid;gap:10px}.site-footer .site-footer-top{margin-left:auto}.site-footer-logo>span{width:180px;height:44px}}
@media(prefers-reduced-motion:reduce){.site-footer a{transition:none}}

/* Keep footer navigation independent of the collapsible header menu. */
.site-footer nav{position:static;inset:auto;background:transparent;padding:0;font-weight:400;flex-direction:row;align-items:center}
.site-footer nav.site-footer-links{display:block}
.site-footer nav.site-footer-legal{display:flex;gap:10px 20px}
@media(max-width:520px){.site-footer nav.site-footer-legal{display:grid;gap:10px}}

/* Uncropped footer logo and accessible social icon links. */
.site-footer-logo{padding:12px 14px}
.site-footer-logo>span{width:196px;height:auto;overflow:visible;line-height:0}
.site-footer-logo img{position:static;display:block;width:100%;height:auto;max-width:100%;object-fit:contain;transform:none}
.site-footer-social a{width:44px;height:44px;display:inline-flex;justify-content:center;align-items:center;padding:10px;border-radius:50%;margin:0}
.site-footer-social img{display:block;object-fit:contain;flex-shrink:0}
.site-footer-social a:hover{background:#ffffff18}
@media(max-width:520px){.site-footer-logo>span{width:180px;height:auto}}
