*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#faf9f5;color:#202d2b;font-family:"Yu Gothic",Meiryo,sans-serif;font-size:18px;line-height:1.9}a{color:#145a51;text-underline-offset:5px}a:hover{color:#0a3832}a:focus-visible,button:focus-visible{outline:3px solid #b65427;outline-offset:5px}.review{padding:10px 24px;background:#193c38;color:white;font-size:13px;text-align:center}header{max-width:1120px;margin:auto;padding:28px 24px;border-bottom:1px solid #d3dbd6}nav{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:15px}nav a{padding:7px 0}nav a[aria-current=page]{font-weight:bold;text-decoration-thickness:3px}.wrap{max-width:1040px;margin:auto;padding:52px 24px 80px}article{max-width:760px;margin:auto}h1{font-size:clamp(30px,4vw,48px);line-height:1.45;letter-spacing:.015em;font-weight:700;margin:0 0 32px}h2{font-size:27px;line-height:1.6;margin:56px 0 20px;border-top:1px solid #cfd8d2;padding-top:28px}h3{font-size:20px;line-height:1.7;margin:30px 0 12px}p{margin:0 0 24px}article>p:first-of-type{font-size:20px}li{margin:10px 0}ul,ol{padding-left:1.5em}.eyebrow{font-size:13px;letter-spacing:.1em;color:#46625a;margin-bottom:18px}.figure{margin:30px 0}img{display:block;max-width:100%;height:auto}figcaption{font-size:13px;color:#4a6059;margin-top:12px}.table-wrap{max-width:100%;overflow-x:auto;margin:24px 0}table{border-collapse:collapse;font-size:15px;min-width:580px;width:100%}td,th{padding:14px;border:1px solid #cad5cd;text-align:left;vertical-align:top}th{background:#edf2ef}.cta,button{display:inline-block;padding:14px 22px;min-height:48px;border:0;background:#193c38;color:#fff;border-radius:3px;font:inherit;cursor:pointer;text-decoration:none}.cta:hover{color:#fff;background:#28574e}.note{font-size:14px;background:#edf2ef;padding:20px;margin:32px 0}footer{max-width:1040px;padding:24px;margin:auto;border-top:1px solid #cfd8d2;font-size:13px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:30px 0}.card{display:block;padding:24px;background:#edf2ef;border:1px solid #d0dbd3;text-decoration:none}.card strong{font-size:22px}.card span{display:block;color:#344c45;margin-top:10px;font-size:15px}[hidden]{display:none!important}@media(max-width:640px){body{font-size:16px}header{padding:20px}nav{gap:4px 18px;font-size:14px}.wrap{padding:34px 20px 60px}h2{font-size:23px;margin-top:42px}article>p:first-of-type{font-size:18px}.cards{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* v7: approved local finish */
body{background:#f7f6f0}body[data-page=service] article{max-width:960px}h1{font-size:clamp(38px,5vw,66px);line-height:1.35;letter-spacing:.03em}.hero-lead{font-size:22px!important;line-height:1.8}.hero-art{margin:40px 0 64px}.hero-art img{width:100%;border-radius:6px;aspect-ratio:3/2;object-fit:cover}.price-line{border-left:3px solid #b46940;padding-left:24px}.price-line strong{font-size:44px}.price-line strong span{font-size:22px}.price-line small{font-size:14px}.feature-section{margin:60px 0}.feature-section h2{margin-top:16px}.caption{font-size:13px;color:#465b52;margin-top:12px}.engineer-name{font-size:26px;letter-spacing:.12em}.application{margin:64px 0 24px;padding:40px;background:#fff;border:1px solid #d1dbd1;border-radius:8px}.application h2{border:0;padding:0;margin:12px 0 24px}.form-mode{padding:16px;background:#f3eee3;font-size:14px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}.fields label{display:block;font-size:16px;font-weight:bold}.fields label span{display:block;color:#56645c;font-size:12px;font-weight:normal}.fields .full{grid-column:1/-1}input,select,textarea{font:inherit;width:100%;border:1px solid #7d9084;padding:12px;background:#fff;border-radius:3px;color:#202d2b;margin-top:8px;min-width:0}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b65427;outline-offset:3px}textarea{resize:vertical}.consent{display:flex;align-items:flex-start;gap:12px;font-size:14px;margin:24px 0}.consent input{width:22px;height:22px;flex-shrink:0;margin:4px 0}.field-help{font-size:13px;margin-top:16px}#form-errors{padding:20px;border-left:4px solid #9a341d;background:#fff0eb;margin-bottom:24px}#form-errors p{margin:0}#confirmation{overflow-wrap:anywhere}#confirmation dt{font-size:14px;color:#465b52;margin-top:18px}#confirmation dd{margin:4px 0 0;white-space:pre-wrap}.button-row{display:flex;flex-wrap:wrap;gap:16px}.secondary{background:#edf2ef;color:#193c38;border:1px solid #193c38}.application button{max-width:100%}@media(max-width:640px){.application{padding:24px 18px;margin-top:42px}.fields{grid-template-columns:1fr}.hero-lead{font-size:18px!important}.price-line strong{font-size:38px}.hero-art{margin:28px 0 40px}.feature-section img{min-height:220px}.button-row{display:grid}}
.application fieldset{border:0;padding:0;margin:0;min-width:0}

/* mobile-heading-v7 */
@media(max-width:640px){h1{font-size:32px;line-height:1.5}}

/* v13: approved consultation goal; service page only */
body[data-page=service] .wrap{max-width:1240px}body[data-page=service] article{max-width:1120px}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center}.hero-grid h1{font-size:clamp(34px,3.7vw,52px);line-height:1.5;letter-spacing:0}.hero-grid .hero-lead{font-size:19px!important}.hero-grid .hero-art{margin:0}.hero-grid .hero-art img{aspect-ratio:1/1;object-fit:cover}.hero-grid .price-line{font-size:16px;line-height:1.8}.hero-grid .caption{margin:0}.reading-section{max-width:880px;margin:72px auto}.reading-section h2{font-size:29px}.reading-section>.eyebrow{margin-bottom:-34px}.reading-section>.eyebrow+h2{padding-top:32px}.work-examples{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:26px 0}.work-examples>div{border-top:3px solid #78978b;padding-top:6px}.work-examples h3{font-size:19px;margin-top:16px}.work-examples p{font-size:16px;line-height:1.9}.process-list{padding-left:1.4em}.process-list span{display:block}.price-section{background:#eaf0e8;padding:8px 32px 20px}.price-section h2{border:0}.application{max-width:880px;margin:48px auto}.consult-intro{margin-bottom:24px}.consult-intro h2{border-top:0}.reading-section .engineer-name{margin-top:28px}@media(max-width:760px){.hero-grid{grid-template-columns:1fr;gap:24px}.hero-grid h1{font-size:32px;line-height:1.5}.hero-grid .hero-lead{font-size:17px!important}.hero-grid .hero-art{max-width:480px;margin:0 auto}.hero-grid .hero-art img{aspect-ratio:3/2}.reading-section{margin:46px auto}.reading-section h2{font-size:23px}.work-examples{grid-template-columns:1fr;gap:8px}.work-examples p{margin-bottom:18px}.price-section{padding:4px 20px 20px}}
