*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#123d30;color:#f8f4e9;font:16px/1.95 -apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN',sans-serif}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #e4ce9c;outline-offset:5px}header{display:flex;align-items:center;gap:28px;padding:24px 5%;border-bottom:1px solid #ffffff30}header a{font-size:13px;text-decoration:none}.brand{font:26px Georgia,serif;letter-spacing:.12em;margin-right:auto}.wrap{width:min(1100px,calc(100% - 48px));margin-inline:auto}.section{padding-block:85px}h1,h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500;line-height:1.65;letter-spacing:.025em}h1{font-size:clamp(30px,4.4vw,60px);margin:15px 0 24px}h2{font-size:clamp(27px,3.3vw,43px);margin:10px 0 28px}h3{font-size:20px;line-height:1.7}.eyebrow{font-size:12px;letter-spacing:.14em;color:#c6d2b9}.case-intro{padding-block:65px 45px}.lead{max-width:750px}.case-tags{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.case-tags span{border:1px solid #bcc6a4;padding:5px 13px;border-radius:30px;font-size:12px}.case-hero{margin:0;background:#0e3026;text-align:center}.case-hero img{display:block;width:min(1100px,100%);height:auto;margin:auto}.case-hero figcaption{padding:12px;font-size:12px}.case-nav{display:flex;flex-wrap:wrap;gap:22px;padding-top:28px;font-size:13px}.request-grid,.revision-stories{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:35px}.request-grid article{border-top:1px solid #abc5ae;padding-top:20px}.request-grid p,.revision-stories p{font-size:14px}.light{background:#f5f2e8;color:#173f31}.light .eyebrow{color:#526950}.points{display:grid;grid-template-columns:1fr 1fr;gap:32px 50px}.points article{border-top:1px solid #b9c5b1;padding-top:20px}.point-no{font:24px Georgia,serif;color:#5f7654}.points h3{margin:10px 0}.points p{font-size:15px}.revision-diagram{display:grid;grid-template-columns:1fr 50px 1fr;align-items:center;gap:12px;margin:38px 0;text-align:center}.revision-diagram>div{padding:25px 15px;border:1px solid #b9c8b1;border-radius:12px}.revision-diagram span{font-size:13px}.revision-diagram strong{font:46px/1.6 Georgia,serif;display:block}.revision-diagram p{margin:0;font-size:12px}.revision-diagram .revision-arrow{font-size:28px}.revision-result{background:#e8efdc;color:#153d30}.case-dates{margin-top:45px;padding-top:25px;border-top:1px solid #b9c5b1}.case-dates ol{padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.case-dates b,.case-dates span{display:block;font-size:13px}.case-samples{display:grid;grid-template-columns:1fr 1fr;gap:24px}.case-samples figure{margin:15px 0;background:white;padding:15px}.case-samples img{width:100%;height:auto;display:block}.case-samples figcaption{font-size:13px;padding:10px 0}.case-contact{text-align:center}.case-contact p{max-width:650px;margin:20px auto}.button{display:inline-block;background:#d8e7c2;color:#143e30;padding:18px 28px;margin:15px;text-decoration:none;border-radius:4px;font-weight:700}.back{display:block;font-size:13px;margin-top:20px}footer{font:14px Georgia,serif;padding-bottom:110px}.floating{position:fixed;bottom:20px;right:20px;padding:14px 20px;border-radius:40px;background:#05763d;color:white;text-decoration:none;box-shadow:0 4px 20px #0004;font-size:14px}.skip-link{position:fixed;top:-100px}.skip-link:focus{top:0;background:white;color:#123d30;padding:12px;z-index:5}@media(max-width:700px){header{gap:15px;padding:18px}.brand{font-size:19px}header a{font-size:11px}.section{padding-block:52px}.wrap{width:calc(100% - 36px)}.case-intro{padding-block:42px 30px}.points,.request-grid,.revision-stories,.case-samples{grid-template-columns:1fr;gap:20px}.points p{font-size:14px}.revision-diagram{grid-template-columns:1fr 24px 1fr;gap:6px}.revision-diagram>div{padding:18px 8px}.revision-diagram strong{font-size:33px}.revision-diagram span{font-size:11px}.revision-diagram p{font-size:11px}.case-dates ol{grid-template-columns:1fr 1fr}.case-nav{gap:18px;font-size:12px}.floating{font-size:12px;right:14px;bottom:14px}.button{font-size:14px;padding:16px 19px;margin-inline:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:360px){h2{font-size:23px}h1{font-size:28px}}
