@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@500;600;700&family=Noto+Sans+JP:wght@400;500;700;900&display=swap');
:root{--ink:#253229;--olive:#53654c;--cream:#f0eee5;--light:#dce1d2;font-family:'Noto Sans JP',sans-serif;color:var(--ink);background:var(--cream);scroll-behavior:smooth}*{box-sizing:border-box}html,body{margin:0;min-width:320px}body{overflow-x:hidden}a{color:inherit}.skip{position:absolute;left:-9999px;top:4px;padding:8px;background:#fff;z-index:10}.skip:focus{left:8px}.notice{margin:0;background:#243229;color:#fff;padding:8px 4vw;font-size:10px;line-height:1.7}.mast{min-height:68px;padding:12px 4vw;display:flex;gap:20px;justify-content:space-between;align-items:center;background:#fff;font:700 11px 'DM Sans',sans-serif;letter-spacing:.14em}.mast a{text-decoration:none}.mast a:last-child{border-bottom:1px solid;padding-bottom:5px}.logo{font-size:22px;letter-spacing:-.05em;white-space:nowrap}.logo span{font-size:11px;border:1px solid;border-radius:50%;padding:7px;margin-left:6px;vertical-align:middle;letter-spacing:0}
.hero{display:grid;grid-template-columns:minmax(350px,39%) minmax(0,61%);min-height:650px}.hero-text{background:var(--olive);color:#fff;padding:48px clamp(28px,4vw,70px) 55px;display:flex;flex-direction:column;align-items:flex-start}.kicker{font:700 11px 'DM Sans',sans-serif;letter-spacing:.16em;margin:0 0 52px}.industry{margin:0;padding:9px 0;border-top:1px solid #e5eadb;border-bottom:1px solid #e5eadb;font-size:clamp(16px,1.4vw,20px);font-weight:900;line-height:1.5}.hero h1{font-size:clamp(72px,7vw,105px);line-height:1.1;letter-spacing:-.1em;margin:45px 0 25px;font-weight:900}.hero h1 strong{color:#d6e4ae}.lead{font-size:clamp(16px,1.7vw,23px);font-weight:700;line-height:1.7;margin:0 0 27px}.hero-text>a{display:inline-block;border-bottom:2px solid #fff;padding-bottom:8px;text-decoration:none;font-weight:700;font-size:13px;margin-top:auto}.hero-text>a span{margin-left:20px}.hero-photo{margin:0;position:relative;min-height:650px;overflow:hidden}.hero-photo img{width:100%;height:100%;position:absolute;inset:0;display:block;object-fit:cover;object-position:48% center}.hero-photo figcaption{position:absolute;right:20px;bottom:20px;background:#f0eee5dd;padding:8px 12px;font:700 10px 'DM Sans',sans-serif;letter-spacing:.12em}
.scene{padding:100px 6vw 110px;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.scene-heading span,.disclaimer span{font:700 11px 'DM Sans',sans-serif;letter-spacing:.18em}.scene h2,.disclaimer h2{font-size:clamp(43px,4.4vw,66px);line-height:1.35;letter-spacing:-.08em;margin:25px 0}.scene-heading p{font-size:14px;line-height:2;max-width:36em}.scene-notes{align-self:center;border-top:1px solid #7e8976}.scene-notes details{border-bottom:1px solid #7e8976}.scene-notes summary{list-style:none;cursor:pointer;font-size:18px;font-weight:900;padding:28px 8px;display:flex;justify-content:space-between;gap:20px}.scene-notes summary::-webkit-details-marker{display:none}.scene-notes summary:focus-visible{outline:3px solid var(--olive);outline-offset:2px}.scene-notes details[open] summary span{transform:rotate(45deg)}.scene-notes details p{font-size:14px;line-height:2;margin:0;padding:0 8px 27px}.disclaimer{background:var(--ink);color:var(--cream);padding:100px 6vw;display:grid;grid-template-columns:1fr minmax(260px,35%);gap:5vw;align-items:end}.disclaimer h2{margin-bottom:0}.disclaimer p{font-size:13px;line-height:2}.disclaimer a{display:inline-block;text-decoration:none;border-bottom:1px solid;padding-bottom:8px;margin-top:25px;font-size:13px}footer{background:#17241d;color:var(--cream);padding:23px 6vw;font:700 11px 'DM Sans',sans-serif;letter-spacing:.15em}
@media(max-width:950px){.hero{grid-template-columns:1fr}.hero-text{padding:36px 6vw 38px;min-height:0}.kicker{margin-bottom:22px}.hero h1{font-size:clamp(62px,12vw,95px);margin:25px 0 18px}.lead{margin-bottom:23px}.hero-text>a{margin-top:0}.hero-photo{min-height:0;height:48vw}.hero-photo img{object-position:50% center}.scene{padding:80px 6vw;gap:5vw}.disclaimer{padding:80px 6vw}}
@media(max-width:600px){.notice{font-size:9px}.mast{min-height:60px;padding:10px 5vw}.mast>span{display:none}.logo{font-size:19px}.hero-text{padding:23px 5vw 26px}.kicker{font-size:9px;margin-bottom:15px}.industry{font-size:16px}.hero h1{font-size:clamp(58px,16vw,77px);margin:18px 0 14px}.lead{font-size:15px;margin-bottom:20px}.hero-photo{height:70vw;min-height:270px}.hero-photo figcaption{font-size:8px;right:10px;bottom:10px}.scene{display:block;padding:65px 5vw}.scene h2{font-size:clamp(39px,10vw,52px)}.scene-notes{margin-top:38px}.scene-notes summary{font-size:16px;padding:23px 4px}.disclaimer{display:block;padding:70px 5vw}.disclaimer h2{font-size:clamp(42px,11vw,57px)}.disclaimer>div:last-child{margin-top:40px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}

/* Put the service name beside the inspection scene; show the scene first on narrow screens. */
.hero h1{font-size:clamp(44px,4.2vw,61px);letter-spacing:-.065em;margin:36px 0 24px;white-space:nowrap}
.hero h1 strong{display:inline-block;color:#d6e4ae}
@media(max-width:950px){.hero-photo{order:-1}.hero h1{font-size:clamp(44px,8vw,70px);margin:22px 0 16px}}
@media(max-width:600px){.hero h1{font-size:clamp(35px,9vw,50px);margin:17px 0 13px}.industry{font-size:13px}.hero-text{padding-top:22px}}
