:root{--ink:#252927;--muted:#626762;--gold:#b69a64;--gold-light:#e3cea2;--paper:#fff;--soft:#f3f2ee;--line:#dedfd8;--dark:#242c29;font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;color:var(--ink);background:var(--paper);font-size:16px}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #96732d;outline-offset:5px}button,a.button{text-decoration:none}p{line-height:1.9;margin:0 0 1rem}h1,h2,h3{margin:0;font-weight:600;overflow-wrap:anywhere}h1,h2{font-family:'Noto Serif JP','Yu Mincho','Hiragino Mincho ProN',serif}h1{font-size:clamp(2.2rem,3.8vw,3.8rem);line-height:1.6;letter-spacing:.025em}h2{font-size:clamp(1.7rem,2.7vw,2.6rem);line-height:1.55;letter-spacing:.025em}h3{font-size:1.13rem;line-height:1.7}figure{margin:0}img{max-width:100%;display:block}button{cursor:pointer}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:860px}.small,small{font-size:.875rem;color:var(--muted);line-height:1.8}.eyebrow{font-size:.875rem;letter-spacing:.12em;font-weight:600;color:#766140;margin:0 0 18px}.lead{font-size:1.0625rem;line-height:2;color:#535b55;margin:22px 0 30px}.section{padding:72px 0}.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:32px}.section-desc{max-width:360px;color:var(--muted);font-size:.9375rem;margin:0}.section-action{text-align:center;margin-top:30px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;min-height:56px;padding:16px 25px;line-height:1.6;font-size:.9375rem;font-weight:600;border:1px solid transparent;transition:background .2s,color .2s}.gold{background:var(--gold-light);color:#2d3028}.gold:hover{background:#d3bb89}.outline{border-color:#a4a89d;background:transparent;color:var(--ink)}.outline:hover{background:#e7e8df}.button span{font-size:1.25rem}.site-header{min-height:90px;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:16px 3.2%;border-bottom:1px solid var(--line);background:#fff;position:relative;z-index:10}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:600;font-size:1.12rem;white-space:nowrap}.brand small{display:block;font-size:.75rem;font-weight:400;margin-top:4px;color:var(--muted)}.mark{display:grid;place-items:center;width:43px;height:48px;border:1px solid #a38e67;font-family:serif;font-size:1.6rem;color:#736143}.main-nav{display:flex;align-items:center;gap:22px}.main-nav a{font-size:.875rem;white-space:nowrap;text-decoration:none;padding:10px 0}.main-nav a[aria-current=page]{color:#806636;border-bottom:1px solid #a38e67}.main-nav .nav-contact{padding:13px 18px;background:var(--dark);color:#fff}.menu-toggle{display:none}.skip{position:absolute;top:-100px;left:16px;z-index:30;background:white;padding:16px}.skip:focus{top:8px}.hero{display:grid;grid-template-columns:47% 53%;min-height:590px}.hero-copy{padding:68px 6% 60px max(48px,calc((100vw - 1200px)/2));display:flex;flex-direction:column;align-items:start;justify-content:center}.hero h1{font-size:clamp(2.5rem,3.8vw,4rem);white-space:nowrap}.hero h1 span{color:#8c774b}.hero .small{margin:16px 0 0}.hero-image{position:relative;min-width:0;background:#29332d}.hero-image>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,25,17,.6),transparent 45%)}.hero-image figcaption{position:absolute;bottom:25px;left:28px;color:#fff;font-size:.8125rem;z-index:1}.vertical-note{position:absolute;right:30px;top:35px;writing-mode:vertical-rl;letter-spacing:.2em;color:#fff;text-shadow:0 1px 8px #000;z-index:1;font-family:serif}.home-cost{padding-top:28px}.cost-note{display:flex;gap:22px;align-items:center;background:#f3eee3;border-left:3px solid #a68b59;padding:26px 32px}.cost-note .icon{flex-shrink:0;width:46px;height:46px}.cost-note h3{font-size:1.15rem}.cost-note p{font-size:.875rem;margin:5px 0 0;color:var(--muted)}.mobile{display:none}.grid{display:grid;gap:20px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.five{grid-template-columns:repeat(5,minmax(0,1fr))}.card{padding:28px;border:1px solid var(--line);background:#fff}.card .icon{margin-bottom:18px;width:36px;height:36px}.card p{font-size:.9375rem;color:var(--muted);margin:12px 0 0}.card p:empty{display:none}.compact .card{display:flex;align-items:center;gap:18px;padding:20px}.compact .icon{margin:0;flex-shrink:0;width:32px;height:32px}.compact h3{font-size:1rem}.five .card{padding:24px 18px}.five h3{font-size:1rem}.five p{font-size:.875rem}.property-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.image-card{border:1px solid var(--line);background:#fff;overflow:hidden}.image-card>div:not(.icon-scene){padding:18px 22px}.image-card p{font-size:.9375rem;color:var(--muted);margin:8px 0 0}.photo{position:relative;overflow:hidden}.photo>img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.photo figcaption{font-size:.75rem;color:#fff;background:rgba(28,38,31,.77);position:absolute;bottom:0;right:0;padding:5px 10px;max-width:100%;line-height:1.6}.property-grid .photo>img{aspect-ratio:2.5}.property-grid .photo figcaption{font-size:.75rem}.icon-scene{aspect-ratio:2.5;background:#e9e9e1;display:grid;place-items:center}.icon-scene .icon{width:64px;height:64px;opacity:.85}.case-card{background:#fff;border:1px solid var(--line)}.case-card>div{padding:20px}.case-card .small{font-size:.75rem;margin-bottom:6px}.case-card h3{font-size:1.08rem}.case-card p:not(.small){font-size:.875rem;color:var(--muted);margin:12px 0 0}.safety-overview{display:grid;grid-template-columns:1fr 1fr;gap:30px}.safety-overview>.photo img{height:100%;object-fit:cover}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0}.steps li{position:relative;background:#fff;border-top:2px solid #b39a69;padding:20px 14px}.step-num{display:block;color:#9a8052;font-family:Georgia,serif;font-size:2rem;margin-bottom:12px}.steps .icon{width:30px;height:30px;margin-bottom:12px}.steps h3{font-size:.9375rem}.closing{background:var(--dark);color:#fff;padding:68px 0}.closing-inner{display:flex;justify-content:space-between;align-items:center;gap:45px}.closing .eyebrow{color:#dbc496}.closing h2{font-size:clamp(1.5rem,2.5vw,2.2rem)}.closing p:not(.eyebrow){color:#d6dbd5;margin-top:18px;font-size:.9375rem}.closing .small{font-size:.8125rem!important}.site-footer{padding:48px 0 25px;background:#f7f7f4}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:30px}.footer-top p{font-size:.875rem;color:var(--muted);margin:0}.footer-nav{display:flex;flex-wrap:wrap;gap:16px 28px;padding:24px 0;border-block:1px solid var(--line)}.footer-nav a{font-size:.875rem;text-decoration:none}.footer-nav a:hover,.main-nav a:hover{text-decoration:underline}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;font-size:.8125rem;color:var(--muted)}.breadcrumb{display:flex;flex-wrap:wrap;gap:15px;font-size:.8125rem;color:var(--muted);padding-top:25px}.breadcrumb a{text-decoration:none}.page-intro{padding:45px 0 50px}.page-intro h1{font-size:clamp(2rem,3.2vw,3.25rem)}.page-intro .lead{max-width:710px;margin-bottom:0}.page-intro.with-photo{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}.with-photo h1{font-size:clamp(2rem,3vw,3rem)}.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.split h3{margin:0 0 14px}.split p{color:var(--muted)}.split .button{margin-top:12px}.case-detail{padding:70px 0}.case-detail h2{margin-bottom:20px}.case-lead{font-size:1.13rem!important;color:var(--ink)!important}.case-facts{margin:26px 0 0}.case-facts dt{font-size:.8125rem;color:#806b43;border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.case-facts dd{margin:8px 0 0;line-height:1.9;font-size:.9375rem}.case-sub{width:65%;margin:20px 0 0 auto}.case-sub img{aspect-ratio:2}.media-note{background:#fff;border-left:3px solid #af9461;padding:20px;margin-top:25px}.media-note h3{font-size:1rem}.media-note p,.media-note a{font-size:.875rem}.steps.detailed{grid-template-columns:1fr 1fr;gap:28px}.detailed li{display:grid;grid-template-columns:auto 1fr;gap:8px 20px;padding:28px;background:var(--soft)}.detailed .step-num{grid-row:1/3;margin:0;font-size:2.8rem}.detailed .icon{margin:0}.detailed h3{font-size:1.2rem;margin-bottom:12px}.detailed p{font-size:.9375rem;color:var(--muted);margin:0}.faq-list article{border-top:1px solid var(--line);padding:27px 0}.faq-list article:last-child{border-bottom:1px solid var(--line)}.faq-list h2{font-family:inherit;font-size:1.13rem;display:flex;gap:20px;line-height:1.8}.faq-list h2 span{font-family:Georgia,serif;color:#957a47;font-size:1.6rem;line-height:1.25}.faq-list p{display:flex;gap:22px;margin:18px 0 0;color:var(--muted)}.faq-list p span{font-family:Georgia,serif;color:#9b8a69;font-size:1.25rem}.form-page{padding-bottom:80px}.form-reassurance{margin:28px 0;color:#5b6359}.form-reassurance p{font-size:.9375rem;margin:6px 0}.required-note{font-size:.875rem;margin-top:30px}.required,.optional{display:inline-block;font-size:.75rem;padding:1px 6px;font-weight:400;margin-left:8px;vertical-align:middle;line-height:1.8}.required{background:#ece1ce;color:#6f552a}.optional{background:#eaece7;color:#626960}fieldset{border:0;border-top:1px solid var(--line);padding:30px 0;margin:25px 0}legend{padding:0 16px 0 0;font-size:1.25rem;font-weight:600}legend span{font-family:Georgia,serif;color:#a68b59;margin-right:12px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:25px}.full{grid-column:1/-1}label{font-size:.9375rem;font-weight:600;display:block}input:not([type=checkbox]),select,textarea{width:100%;display:block;padding:14px 15px;border:1px solid #b9beb5;background:#fff;border-radius:0;margin-top:10px;min-height:52px;color:var(--ink)}input::placeholder,textarea::placeholder{color:#747a74;font-weight:400}label small{display:block;font-size:.8125rem;font-weight:400;margin-top:8px}textarea{resize:vertical;line-height:1.8}.upload-label{margin-top:24px}input[type=file]{font-size:.875rem;background:var(--soft);padding:20px}.photo-preview{display:flex;gap:15px;flex-wrap:wrap;margin-top:15px}.photo-preview figure{width:150px}.photo-preview img{height:100px;object-fit:cover;width:100%}.photo-preview figcaption{font-size:.75rem;overflow-wrap:anywhere}.error{color:#9f2929;font-size:.9375rem}.privacy-note{background:var(--soft);padding:25px}.privacy-note h2{font-size:1.1rem;font-family:inherit;margin-bottom:12px}.privacy-note p{font-size:.875rem;color:var(--muted);margin:0}.consent{display:flex;gap:12px;align-items:start;margin:26px 0;font-weight:400;line-height:1.8}.consent input{width:20px;height:20px;flex-shrink:0;margin-top:3px;accent-color:#7d6a44}.submit{min-width:300px}.form-footnote{font-size:.8125rem;color:var(--muted);margin-top:18px}.success-box{padding:38px;border:1px solid #ab976a;background:var(--soft);overflow-wrap:anywhere}.success-box h2{margin-bottom:25px}.success-box .button{margin-top:25px}.trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}button:disabled{opacity:.6;cursor:wait}
@media(min-width:1500px){.hero-copy{padding-left:max(60px,calc((100vw - 1300px)/2))}}
@media(max-width:1200px){.main-nav{gap:14px}.brand{font-size:1rem}.site-header{padding-inline:24px;gap:18px}.main-nav a{font-size:.8125rem}.brand small{font-size:.75rem}.hero-copy{padding-left:40px}.wrap{width:calc(100% - 64px)}.five{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(2,minmax(0,1fr))}.safety-overview{grid-template-columns:.9fr 1.1fr}.compact .card{padding:16px;gap:12px}.split{gap:35px}}
@media(max-width:1000px){.site-header{min-height:80px}.menu-toggle{display:flex;flex-direction:column;align-items:center;gap:2px;background:none;border:0;font-size:.75rem;padding:5px 10px}.menu-toggle span:first-child{font-size:1.5rem}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:12px 24px 25px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 15px 18px #0001;max-height:calc(100dvh - 80px);overflow:auto}.main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.main-nav a{padding:13px;font-size:.9375rem;border-bottom:1px solid #e3e3dc}.main-nav .nav-contact{margin-top:12px}.hero h1{font-size:2.7rem}.hero{min-height:560px}.hero-copy{padding-left:32px}.hero .lead{font-size:1rem}.section-head{gap:25px}.section-desc{max-width:300px}.safety-overview{grid-template-columns:1fr}.safety-overview>.photo img{max-height:380px}.steps{grid-template-columns:repeat(3,1fr)}.page-intro.with-photo{gap:28px}.closing-inner{flex-direction:column;align-items:start}.property-grid .photo>img,.icon-scene{aspect-ratio:2}.footer-top{align-items:start}.compact h3{font-size:.9375rem}}
@media(max-width:680px){.wrap{width:calc(100% - 40px)}.site-header{padding:13px 20px;min-height:78px}.brand{font-size:1rem;gap:10px}.brand small{font-size:.75rem}.mark{width:35px;height:42px;font-size:1.3rem}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:42px 24px 35px}.hero h1{font-size:clamp(2rem,8vw,3rem);line-height:1.65;white-space:normal}.hero .lead{font-size:1rem;margin:18px 0 26px}.hero-image{height:300px}.hero-image figcaption{left:20px;bottom:18px;font-size:.75rem}.vertical-note{font-size:.8125rem;right:18px;top:20px}.eyebrow{font-size:.8125rem;margin-bottom:14px}.home-cost{padding-top:20px}.cost-note{padding:22px 18px;gap:14px;align-items:start}.cost-note .icon{width:30px;height:30px}.cost-note h3{font-size:1rem}.cost-note p{font-size:.8125rem}.section{padding:48px 0}.section-head{display:block;margin-bottom:25px}h2{font-size:1.7rem}.section-desc{max-width:none;margin-top:18px;font-size:.9375rem}.grid,.three,.two,.four,.five,.property-grid{grid-template-columns:1fr}.grid{gap:16px}.property-grid .photo>img,.icon-scene{aspect-ratio:2.4}.image-card>div:not(.icon-scene){padding:16px 20px}.icon-scene .icon{width:58px;height:58px}.card{padding:25px}.five .card{padding:25px}.five h3{font-size:1.13rem}.five p{font-size:.9375rem}.compact .card{padding:20px}.compact h3{font-size:1rem}.case-card>div{padding:22px}.case-card h3{font-size:1.2rem}.case-card p:not(.small){font-size:.9375rem}.section-action{margin-top:24px}.button{width:100%;padding:16px 20px;gap:18px;font-size:.9375rem;min-height:58px}.hero .button{width:auto;max-width:100%}.steps{grid-template-columns:1fr;gap:12px}.steps li{display:flex;align-items:center;gap:18px;padding:18px;border-top:0;border-left:2px solid #b39a69}.steps .step-num{font-size:1.6rem;margin:0}.steps .icon{margin:0;width:28px;height:28px}.steps h3{font-size:1rem}.closing{padding:46px 0}.closing-inner{gap:25px}.closing-inner>div:last-child{width:100%}.closing h2{font-size:1.55rem}.closing p:not(.eyebrow){font-size:.875rem}.site-footer{padding-top:35px}.footer-top{flex-direction:column}.footer-top p{font-size:.8125rem}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:20px 12px}.footer-nav a{font-size:.8125rem}.footer-bottom{align-items:start;flex-direction:column;font-size:.75rem}.breadcrumb{font-size:.75rem;padding-top:20px;gap:10px}.page-intro{padding:30px 0 40px}.page-intro h1,.with-photo h1{font-size:2rem}.page-intro .lead{font-size:1rem;margin-top:20px}.page-intro.with-photo{grid-template-columns:1fr;gap:28px}.split{grid-template-columns:1fr;gap:28px}.case-detail{padding:45px 0}.case-sub{width:80%;margin-top:15px}.case-detail h2{font-size:1.9rem}.case-lead{font-size:1.0625rem!important}.steps.detailed{grid-template-columns:1fr;gap:20px}.steps.detailed li{display:grid;grid-template-columns:50px 1fr;padding:25px 20px}.detailed .step-num{font-size:2.2rem}.detailed h3{font-size:1.1rem}.faq-list h2{font-size:1.0625rem;gap:14px}.faq-list p{font-size:.9375rem;gap:17px}.faq-list article{padding:24px 0}.fields{grid-template-columns:1fr;gap:22px}.form-page{padding-bottom:50px}.form-page .cost-note{padding:20px 15px}.form-reassurance p{font-size:.875rem}.privacy-note{padding:20px}.submit{min-width:0}.success-box{padding:25px}.photo-preview figure{width:120px}.form-page .mobile{display:block}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Photographic explanations on the overview page. */
.visual-uses .photo>img{aspect-ratio:1.65}.visual-uses .image-card>div{padding:24px}.use-support{margin-top:20px}.use-support .card{display:grid;grid-template-columns:40px 1fr;column-gap:16px;padding:22px 26px}.use-support .card .icon{grid-row:1/3;margin:0}.use-support .card p{margin-top:5px}.benefits-visuals{display:grid;grid-template-columns:1fr 1fr;gap:28px}.benefit-photo-group{background:var(--soft)}.benefit-photo-group>.photo>img{aspect-ratio:2.1}.benefit-mini{gap:0;padding:8px 22px}.benefit-mini .card{background:transparent;border:0;border-bottom:1px solid var(--line);padding:19px 0}.benefit-mini .card:last-child{border-bottom:0}.process-visual{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}.process-visual>.photo img{height:100%;object-fit:cover}.process-visual .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.process-visual .steps li{display:grid;grid-template-columns:42px 1fr;gap:8px 10px;align-items:center;padding:18px}.process-visual .step-num{font-size:1.65rem;margin:0}.process-visual .steps .icon{margin:0;width:28px;height:28px;justify-self:end}.process-visual .steps li>div{grid-column:1/-1}.process-visual .steps h3{font-size:.9375rem}
@media(max-width:680px){.benefits-visuals,.process-visual{grid-template-columns:1fr;gap:22px}.visual-uses .photo>img{aspect-ratio:1.75}.visual-uses .image-card>div{padding:22px}.use-support .card{padding:22px}.benefit-photo-group>.photo>img{aspect-ratio:1.8}.benefit-mini{padding-inline:20px}.benefit-mini .card{padding:20px 0}.process-visual>.photo img{aspect-ratio:1.6;height:auto}.process-visual .steps{grid-template-columns:1fr;gap:12px}.process-visual .steps li{display:flex;padding:18px;gap:18px}.process-visual .steps li>div{grid-column:auto}.process-visual .steps h3{font-size:1rem}}
/* Interior pages: forest, ochre and slate distinguish information groups. */
.detail-page{--detail-green:#315447;--detail-green-pale:#e9f0eb;--detail-blue:#eaf0f3;--detail-gold:#f4ebd9;background:#fcfcf9}.detail-page main>.wrap:first-child{width:100%;background:linear-gradient(110deg,#edf2ec 0%,#f4efe4 100%);padding-inline:max(48px,calc((100% - 1200px)/2))}.detail-page .page-intro{padding-top:34px;padding-bottom:44px;gap:48px;grid-template-columns:1.15fr 1fr}.detail-page .page-intro h1{font-size:clamp(2rem,3.05vw,3.1rem);line-height:1.6}.detail-page .page-intro .photo{border-radius:3px;box-shadow:14px 14px 0 rgba(143,157,129,.2)}.detail-page .page-intro .photo>img{aspect-ratio:1.4;min-height:290px;object-fit:cover}.detail-page .page-intro .eyebrow{display:inline-block;padding:7px 13px;background:var(--detail-green);color:white;border-radius:2px;letter-spacing:.08em;margin-bottom:15px}.detail-page .page-intro .lead{margin-top:18px;font-size:1rem;line-height:1.95}.detail-page .breadcrumb{font-size:.875rem}.detail-page .section-head{border-left:4px solid #ad9158;padding-left:22px}.detail-page .section-head h2{font-size:clamp(1.65rem,2.5vw,2.3rem)}.detail-page .section-head .eyebrow{color:#446451}.detail-page .section.soft{background:var(--detail-green-pale)}.detail-page .card{border:0;border-top:3px solid #819b89;box-shadow:0 3px 14px #25382d07;border-radius:3px;padding:28px}.detail-page .card:nth-child(3n+2){border-top-color:#b49b65;background:#fcf9f2}.detail-page .card:nth-child(3n){border-top-color:#839cab;background:#f4f7f9}.detail-page .card .icon{box-sizing:content-box;background:#e8efe9;padding:11px;border-radius:50%;width:30px;height:30px}.detail-page .card h3{color:#294c3d;font-size:1.15rem}.detail-page .card p{color:#505d55;line-height:1.95}.detail-page .image-card{border:0;background:white;box-shadow:0 3px 20px #173c2410;border-bottom:3px solid #8a9b7d}.detail-page .property-grid .photo>img{aspect-ratio:1.65}.detail-page .image-card>div{padding:22px}.detail-page .image-card:nth-child(even)>div{background:#f4efe4}.detail-page .image-card h3{color:#355442}.detail-page .cost-note{margin-top:32px;border-left-width:5px;background:#f1e6ce;padding:30px 32px}.detail-page .cost-note h3{font-size:1.25rem;color:#55451f}.detail-photo-grid{gap:24px}.detail-photo-card{border-radius:4px;overflow:hidden;background:white;box-shadow:0 3px 18px #19362710;border:1px solid #e2e7dd;display:flex;flex-direction:column}.detail-photo-card .photo>img{aspect-ratio:1.7}.detail-card-copy{padding:24px;flex:1;border-top:4px solid #7d9a83;background:#f0f5f0}.detail-photo-card:nth-child(3n+2) .detail-card-copy{background:#f8f2e7;border-top-color:#b69a64}.detail-photo-card:nth-child(3n) .detail-card-copy{background:#edf3f6;border-top-color:#8a9eaa}.detail-card-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.detail-card-heading .icon{width:32px;height:32px}.card-number{font-family:Georgia,serif;color:#8b977f;font-size:1.8rem}.detail-photo-card h3{font-size:1.15rem;color:#2e4b3c;margin-bottom:12px}.detail-photo-card p{font-size:.9375rem;line-height:1.95;color:#4e5b54;margin:0}.detail-page .split>div>h3{padding-left:13px;border-left:3px solid #b3975e;color:#315447}.detail-page .case-detail{background:#fcfcf9}.detail-page .case-detail.soft{background:#edf2ed}.detail-page .case-detail:nth-of-type(odd) .case-facts{background:#f5eedf}.detail-page .case-facts{padding:8px 24px 24px;background:white;border-radius:3px;border-left:4px solid #97a88b}.detail-page .case-facts dt{font-weight:600;color:#385d48;border-top-color:#d7dfd2}.detail-page .case-facts dd{color:#46554c}.detail-page .case-detail .eyebrow{color:#42684e;font-weight:700}.detail-page .case-detail .case-lead{border-bottom:2px solid #ccb889;padding-bottom:18px}.detail-page .case-detail .photo{box-shadow:0 4px 16px #22392b12;border-radius:3px}.detail-page .case-sub{width:78%;margin-top:20px}.case-extra{width:65%;margin-top:20px}.case-extra .photo>img{aspect-ratio:2}.phase-list{display:grid;gap:32px}.phase{display:grid;grid-template-columns:42% 58%;background:white;border:1px solid #dce3d8;border-radius:4px;overflow:hidden}.phase-picture{position:relative;display:flex;flex-direction:column;background:#315447;color:white}.phase-picture .photo{flex:1}.phase-picture .photo>img{height:100%;min-height:210px;object-fit:cover}.phase-label{padding:22px 26px}.phase-label>span{font-family:Georgia,serif;color:#e9d7ad;font-size:1rem;letter-spacing:.08em}.phase-label h3{margin-top:8px;font-size:1.15rem}.phase:nth-child(2) .phase-picture{background:#695a3a}.phase:nth-child(3) .phase-picture{background:#3f5864}.phase-steps{list-style:none;margin:0;padding:12px 32px;display:grid;align-content:center}.phase-steps li{display:flex;gap:20px;padding:27px 0;border-bottom:1px solid #dce2d6}.phase-steps li:last-child{border:0}.phase-number{font-family:Georgia,serif;color:#9b834d;font-size:2rem;line-height:1.3;flex-shrink:0}.phase-steps h3{color:#315447;font-size:1.16rem;margin-bottom:10px}.phase-steps p{font-size:.9375rem;color:#536056;line-height:1.95;margin:0}.faq-section{background:#f1f4ef}.faq-group{display:grid;grid-template-columns:290px 1fr;gap:32px;margin-bottom:48px;align-items:start}.faq-group:last-child{margin-bottom:0}.faq-category{background:#315447;color:white;border-radius:3px;overflow:hidden}.faq-category>div{padding:24px}.faq-category h2{font-family:inherit;font-size:1.35rem;line-height:1.6}.faq-category p{font-size:.875rem;color:#e3ece5;margin:14px 0 0}.faq-category .photo>img{aspect-ratio:1.5}.faq-group:nth-child(2) .faq-category{background:#6d603f}.faq-group:nth-child(3) .faq-category{background:#425c67}.detail-page .faq-list{display:grid;gap:16px}.detail-page .faq-list article{background:white;border:1px solid #dde5d8;padding:24px 28px;border-radius:3px}.detail-page .faq-list h3{display:flex;gap:15px;font-size:1.08rem;line-height:1.8;color:#294c3d}.detail-page .faq-list h3>span{font-family:Georgia,serif;color:#8d743f;font-size:1.6rem;line-height:1.4;flex-shrink:0}.detail-page .faq-list p{gap:18px;margin-top:14px;padding-top:16px;border-top:1px dashed #d7dfd0;font-size:.9375rem;color:#505d54}.detail-page .faq-list p>span{flex-shrink:0}.page-contact .form-page{max-width:940px}.page-contact fieldset{padding:28px 32px 32px;background:white;border:1px solid #dbe3d4;border-top:4px solid #7f9a85;box-shadow:0 3px 20px #294c3d07;margin:40px 0;border-radius:3px}.page-contact fieldset:nth-of-type(2){background:#faf6ed;border-top-color:#b49b65}.page-contact fieldset:nth-of-type(3){background:#f0f5f6;border-top-color:#859fab}.page-contact legend{background:#315447;color:white;padding:9px 17px;font-size:1.13rem;border-radius:2px}.page-contact legend span{color:#ead8ad}.page-contact input:not([type=checkbox]),.page-contact textarea,.page-contact select{border-radius:3px}.page-contact .required{background:#e4d3ae;color:#514322}.page-contact .form-reassurance{padding:22px 26px;background:#e9f0e7;border-radius:3px;margin-bottom:25px;color:#345641}.page-contact .privacy-note{background:#e7eee9;border-left:4px solid #839b88}.page-contact .submit{background:#315447;color:#fff}.page-contact .submit:hover{background:#243e33}.detail-page .closing{background:#2b473a}.detail-page .button.outline{color:#315447;border-color:#81947a}.detail-page .button.outline:hover{background:#dce8da}
@media(max-width:1000px){.detail-page main>.wrap:first-child{padding-inline:32px}.detail-page .page-intro{gap:28px}.detail-page .page-intro h1{font-size:2.2rem}.detail-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-group{grid-template-columns:240px 1fr;gap:22px}.phase-steps{padding:10px 24px}.detail-page .page-intro .photo>img{min-height:260px}}
@media(max-width:680px){.detail-page main>.wrap:first-child{padding-inline:20px}.detail-page .page-intro{grid-template-columns:1fr;gap:26px;padding:30px 0 38px}.detail-page .page-intro h1{font-size:1.95rem}.detail-page .page-intro .photo{box-shadow:7px 7px 0 #8f9d812b;margin-right:7px}.detail-page .page-intro .photo>img{aspect-ratio:1.65;min-height:0}.detail-page .page-intro .eyebrow{font-size:.8125rem}.detail-page .section-head{padding-left:16px}.detail-page .section-head h2{font-size:1.65rem}.detail-photo-grid{grid-template-columns:1fr;gap:22px}.detail-card-copy{padding:22px}.detail-photo-card .photo>img{aspect-ratio:1.75}.detail-page .cost-note{padding:22px 18px}.detail-page .cost-note h3{font-size:1.1rem}.detail-page .case-facts{padding:5px 20px 22px}.detail-page .case-sub{width:90%}.case-extra{width:82%}.phase{grid-template-columns:1fr}.phase-picture .photo>img{min-height:0;height:auto;aspect-ratio:1.8}.phase-label{padding:20px 22px}.phase-steps{padding:0 22px}.phase-steps li{padding:24px 0;gap:16px}.phase-steps h3{font-size:1.1rem}.faq-group{grid-template-columns:1fr;gap:18px;margin-bottom:38px}.faq-category .photo>img{aspect-ratio:2.2}.faq-category>div{padding:22px}.faq-category h2{font-size:1.3rem}.detail-page .faq-list article{padding:22px 20px}.detail-page .faq-list h3{font-size:1.0625rem;gap:12px}.detail-page .faq-list p{gap:15px}.page-contact fieldset{padding:24px 18px;margin-top:32px}.page-contact legend{font-size:1rem;padding:8px 12px}.page-contact .form-reassurance{padding:18px}.detail-page .breadcrumb{font-size:.8125rem}}
/* Homepage palette: restore the original charcoal green and muted brass. */
.home-page{--ink:#26352d;--muted:#5b685f;--gold:#ab9059;--gold-light:#d6bc83;--soft:#e9eee7;--line:#cbd3c6;--dark:#1c2823;background:#f5f5ef;color:var(--ink)}
.home-page .site-header{background:#f6f6f0;border-bottom:1px solid #d3d9cd}.home-page .mark{border-color:#79866d;color:#4c604c}.home-page .brand small{color:#64715f}.home-page .main-nav .nav-contact{background:#293d30;color:#fff}.home-page .main-nav a[aria-current=page]{color:#756034;border-color:#ab9059}
.home-page .hero{background:#1c2823;color:#f5f4eb}.home-page .hero-copy{background:linear-gradient(135deg,#263a2e 0%,#1c2823 75%)}.home-page .hero .eyebrow{color:#dbc18b}.home-page .hero h1{font-weight:500;letter-spacing:.045em}.home-page .hero h1 span{color:#dbc38c}.home-page .hero .lead{color:#d4ddd1}.home-page .hero .small{color:#bccabb}.home-page .hero-image>img{filter:brightness(.88) saturate(.82)}.home-page .hero-image:after{background:linear-gradient(0deg,#14211999,transparent 55%),linear-gradient(90deg,#1c282344,transparent 25%)}.home-page .gold{background:#d6bc83;color:#1d2b20;border-color:#d6bc83}.home-page .gold:hover{background:#e2cb99;border-color:#e2cb99}.home-page .hero .button{box-shadow:0 5px 22px #071a1326}
.home-page .home-cost{padding-block:28px}.home-page .cost-note{background:#e9e3d4;border-left:3px solid #ac915a;padding:28px 32px}.home-page .cost-note h3{color:#4d4d32}.home-page .cost-note p{color:#646750}.home-page .section-head .eyebrow{color:#827043}.home-page .section-head h2{font-weight:500;color:#293e30}.home-page .section-desc{color:#5a695e}.home-page .section-action .outline{border-color:#899780;color:#354b38;background:transparent}.home-page .section-action .outline:hover{background:#dce4d5}.home-page .photo>img{filter:saturate(.88)}.home-page .photo figcaption{background:#213829dc;color:#f4f1e5}
.home-page main>.section:nth-of-type(2){background:#e9eee6;border-block:1px solid #d9e0d3}.home-page .property-grid{gap:24px}.home-page .property-grid .image-card{background:#f6f6ef;border:0;border-bottom:3px solid #93a184;box-shadow:0 4px 18px #25382a09}.home-page .property-grid .image-card>div{padding:20px 22px}.home-page .property-grid h3{font-weight:500;color:#344832;letter-spacing:.035em}.home-page .property-grid .image-card:nth-child(even){background:#f0ecdf;border-bottom-color:#b1a17a}
.home-page main>.section:nth-of-type(3){background:#f5f4ed}.home-page .visual-uses .image-card{border:0;background:#e6ebe1;border-bottom:3px solid #899e80;box-shadow:0 6px 22px #253b2910}.home-page .visual-uses .image-card:nth-child(2){background:#e6eceb;border-bottom-color:#8a9d97}.home-page .visual-uses .image-card:nth-child(3){background:#eee7d8;border-bottom-color:#b2a071}.home-page .visual-uses h3{color:#304833}.home-page .visual-uses p{color:#576351}.home-page .use-support .card{background:transparent;border:1px solid #cdd6c5;border-left:3px solid #829576}.home-page .use-support h3{color:#43553c}.home-page .use-support p{color:#616e59}
.home-page main>.section:nth-of-type(4){background:#2b3e32;color:#eff2e8}.home-page main>.section:nth-of-type(4) .eyebrow{color:#d5bf8d}.home-page main>.section:nth-of-type(4) h2{color:#f4f3e9}.home-page main>.section:nth-of-type(4) .section-desc{color:#c6d2c1}.home-page .benefit-photo-group{background:#344b3a;border:1px solid #5a6b50}.home-page .benefit-mini .card{background:transparent;border-bottom-color:#5b6d52}.home-page .benefit-mini h3{color:#eef1e6;font-weight:500}.home-page .benefit-mini .icon{filter:brightness(0) saturate(100%) invert(86%) sepia(18%) saturate(444%) hue-rotate(1deg) brightness(91%) contrast(87%)}.home-page main>.section:nth-of-type(4) .outline{border-color:#b6b58c;color:#e5d6b0}.home-page main>.section:nth-of-type(4) .outline:hover{background:#415542}
.home-page main>.section:nth-of-type(5){background:#f1eee5}.home-page .case-card{background:#faf9f3;border:1px solid #d8d9cb;border-bottom:3px solid #a6ad91;box-shadow:0 5px 20px #38452e09}.home-page .case-card h3{color:#354b35;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:1.23rem;font-weight:600}.home-page .case-card .small{color:#7a7255}.home-page .case-card p:not(.small){color:#616954}
.home-page main>.section:nth-of-type(6){background:#dfe7db}.home-page .safety-overview>.photo{border:5px solid #f2f3e9;box-shadow:0 7px 24px #223e2d13}.home-page .safety-overview .card{background:#f0f3e9;border:1px solid #bdcbb5;border-left:3px solid #7e9876}.home-page .safety-overview h3{color:#3c533b;font-weight:500}.home-page main>.section:nth-of-type(7){background:#f4f2e9;border-top:1px solid #d1d9c8}.home-page .process-visual .steps li{background:#e8eddf;border-color:#a0ae88}.home-page .process-visual .step-num{color:#8a7543}.home-page .process-visual .steps h3{color:#3d5138}.home-page .process-visual>.photo{box-shadow:0 5px 24px #243b2912}
.home-page .closing{background:#1c2823;border-top:1px solid #59634a}.home-page .closing h2{color:#f4f2e7;font-weight:500}.home-page .closing .eyebrow{color:#d9bd80}.home-page .closing p:not(.eyebrow){color:#c8d1c1}.home-page .site-footer{background:#e9ede3}.home-page .footer-nav{border-color:#c4cdbb}.home-page .footer-bottom,.home-page .footer-top p{color:#626e57}
@media(max-width:1000px){.home-page .main-nav{background:#f6f6f0;border-color:#d3d9cd}.home-page .main-nav a{border-color:#d9dfd1}}
@media(max-width:680px){.home-page .home-cost{padding-block:20px}.home-page .cost-note{padding:22px 18px}.home-page .property-grid{gap:18px}.home-page .safety-overview>.photo{border-width:4px}.home-page .case-card h3{font-size:1.3rem}}
/* A denser, fully toned canvas without wide white section gaps. */
.home-page{background:#dce3d5}.home-page .site-header{background:#dce3d5;border-bottom-color:#b9c6ae}.home-page .home-cost{width:100%;padding:0;background:#d2d8c4}.home-page .cost-note{max-width:1200px;margin:0 auto;background:#d2d8c4;border:0;border-left:3px solid #a58b50;padding:23px 32px}.home-page .cost-note h3{color:#414930}.home-page .cost-note p{color:#556044}.home-page .section{padding:48px 0}.home-page .section-head{margin-bottom:26px}.home-page .section-action{margin-top:24px}.home-page main>.section:nth-of-type(2){background:#dce4d5;border-color:#c1cdb7}.home-page main>.section:nth-of-type(3){background:#c9d4c2}.home-page main>.section:nth-of-type(4){background:#2b3e32}.home-page main>.section:nth-of-type(5){background:#dcd5c3}.home-page main>.section:nth-of-type(6){background:#bfcdb8}.home-page main>.section:nth-of-type(7){background:#d5dccb;border-top-color:#acbca2}.home-page .property-grid .image-card{background:#c8d5bf;border-bottom-color:#7d916d;box-shadow:0 3px 12px #25382a0c}.home-page .property-grid .image-card:nth-child(even){background:#d6ceba;border-bottom-color:#9c8a60}.home-page .property-grid .image-card>div{padding:16px 20px}.home-page .visual-uses .image-card{background:#dde5d4;border-bottom-color:#809770}.home-page .visual-uses .image-card:nth-child(2){background:#d1ddda;border-bottom-color:#728e87}.home-page .visual-uses .image-card:nth-child(3){background:#e0d6be;border-bottom-color:#aa945f}.home-page .visual-uses .image-card>div{padding:20px}.home-page .use-support .card{background:#d6dfcf;border-color:#a8b89d;border-left-color:#6e855f;padding:18px 22px}.home-page .case-card{background:#e3decf;border-color:#bfc3ac;border-bottom-color:#8e9979}.home-page .case-card>div{padding:18px}.home-page .safety-overview>.photo{border-color:#dce5d4}.home-page .safety-overview .card{background:#d9e3d1;border-color:#a6b99b;border-left-color:#69845c}.home-page .process-visual .steps li{background:#c4d1b9;border-color:#879e72}.home-page .closing{padding:48px 0}.home-page .site-footer{background:#c6d1bb;padding:36px 0 24px}.home-page .footer-nav{border-color:#aebca1;padding-block:20px}.home-page .footer-top{padding-bottom:24px}.home-page .footer-bottom{margin-top:20px}
.detail-page{background:#dde4d7;--paper:#dde4d7;--line:#bdcbb4;--detail-green-pale:#cad6c2;--detail-blue:#d2dfe0;--detail-gold:#e1d5b9}.detail-page main>.wrap:first-child{background:linear-gradient(110deg,#c9d8c2,#dfd4bb)}.detail-page .section{padding:48px 0;background:#dce4d4}.detail-page .section.soft{background:#c5d3bb}.detail-page .section-head{margin-bottom:26px}.detail-page .card{background:#e1e8d9;border-top-color:#789067}.detail-page .card:nth-child(3n+2){background:#e7dec8;border-top-color:#aa8e53}.detail-page .card:nth-child(3n){background:#d8e3e5;border-top-color:#7e9b9d}.detail-page .image-card{background:#d1ddc7;border-bottom-color:#80966e}.detail-page .image-card:nth-child(even)>div{background:#ddd2b9}.detail-page .detail-photo-card{background:#d9e3d1;border-color:#b5c6aa}.detail-page .detail-card-copy{background:#d9e3d1;border-top-color:#779366}.detail-page .detail-photo-card:nth-child(3n+2) .detail-card-copy{background:#e6dac1;border-top-color:#af955f}.detail-page .detail-photo-card:nth-child(3n) .detail-card-copy{background:#d4e0e2;border-top-color:#7d969d}.detail-page .cost-note{background:#ddceaa;margin-top:24px;padding:24px 28px}.detail-page .case-detail{background:#d8dfce;padding:48px 0}.detail-page .case-detail.soft{background:#c6d5be}.detail-page .case-facts{background:#e3e8d9;border-color:#869c70}.detail-page .case-detail:nth-of-type(odd) .case-facts{background:#e2d7bd}.detail-page .media-note{background:#ded2b5}.detail-page .phase-list{gap:24px}.detail-page .phase{background:#e2e8db;border-color:#b3c1a6}.detail-page .phase:nth-child(2){background:#e5dbc5}.detail-page .phase:nth-child(3){background:#d6e1de}.detail-page .faq-section{background:#ccd8c3}.detail-page .faq-group{margin-bottom:34px}.detail-page .faq-list article{background:#e4eadb;border-color:#b6c6aa}.detail-page .faq-group:nth-child(2) .faq-list article{background:#e7dcc4}.detail-page .faq-group:nth-child(3) .faq-list article{background:#d8e3e1}.page-contact fieldset{background:#e4ebdc;border-color:#b7c9a9}.page-contact fieldset:nth-of-type(2){background:#e9dfc7;border-top-color:#a78e55}.page-contact fieldset:nth-of-type(3){background:#dae5e3;border-top-color:#799b94}.page-contact .form-reassurance{background:#c4d5bb}.page-contact .privacy-note{background:#c7d7c1}.detail-page .closing{padding:48px 0}.detail-page .site-footer{background:#c5d1b9;padding-top:36px}.detail-page .form-page{padding-bottom:48px}
@media(min-width:681px){.home-page .hero{min-height:545px}.home-page .hero-copy{padding-top:48px;padding-bottom:44px}.home-page .section-head h2{font-size:clamp(1.7rem,2.6vw,2.4rem)}}
@media(max-width:1000px){.home-page .main-nav{background:#dce3d5;border-color:#b9c6ae}}
@media(max-width:680px){.home-page .section,.detail-page .section{padding:34px 0}.home-page .home-cost{padding:0}.home-page .cost-note{padding:21px 20px}.home-page .hero-copy{padding-top:34px;padding-bottom:30px}.home-page .section-head,.detail-page .section-head{margin-bottom:22px}.home-page .section-action{margin-top:20px}.home-page .closing,.detail-page .closing{padding:36px 0}.detail-page .case-detail{padding:34px 0}.detail-page .cost-note{padding:22px 18px}.detail-page .faq-group{margin-bottom:28px}.page-contact fieldset{margin-top:28px}}
/* Supplied Haikachi identity: preserve the original artwork and its lettering. */
.haikachi-brand{display:block;width:238px;min-width:200px;height:78px;overflow:hidden;flex-shrink:0}.haikachi-brand>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 47%;mix-blend-mode:multiply}.site-header:has(.haikachi-brand){padding-top:6px;padding-bottom:6px}.haikachi-hero{background:#1c2823;color:#f5f4eb}.haikachi-banner{display:block;width:100%;background:#fff}.haikachi-banner>img{width:100%;height:auto;max-height:480px;object-fit:contain;display:block}.haikachi-introduction{display:flex;align-items:center;justify-content:space-between;gap:38px;padding-block:30px}.haikachi-introduction>div:first-child{display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center}.haikachi-introduction h1{font-size:clamp(1.6rem,2.35vw,2.4rem);line-height:1.65;font-weight:500;color:#e4cd99;white-space:nowrap}.haikachi-introduction p{font-size:.9375rem;line-height:1.9;margin:0;color:#cbd8c8}.haikachi-introduction p strong{font-weight:500;color:#f2ead5}.haikachi-introduction .button{white-space:nowrap}.site-footer .haikachi-brand{width:270px;height:92px}.page-contact .form-reassurance{margin-top:26px}.home-page .haikachi-hero+.home-cost{border-bottom:1px solid #b2bea2}
@media(max-width:1200px){.haikachi-brand{width:215px;min-width:190px;height:72px}.haikachi-introduction>div:first-child{display:block}.haikachi-introduction h1{font-size:1.8rem;margin-bottom:14px}.haikachi-introduction h1 br{display:none}}
@media(max-width:680px){.haikachi-brand{width:205px;min-width:0;height:68px}.site-header:has(.haikachi-brand){min-height:78px;padding-inline:18px}.haikachi-banner{padding:0}.haikachi-banner>img{min-height:0;max-height:none;object-fit:contain}.haikachi-introduction{display:block;padding-block:26px}.haikachi-introduction h1{font-size:1.65rem;white-space:normal;line-height:1.65}.haikachi-introduction h1 br{display:block}.haikachi-introduction p{font-size:.9375rem}.haikachi-introduction p br{display:none}.haikachi-introduction p strong{display:block;margin-bottom:10px}.haikachi-introduction .button{margin-top:22px;width:100%}.site-footer .haikachi-brand{width:240px;height:80px}}
.home-page .haikachi-photo-hero{grid-template-columns:48% 52%;min-height:580px}.home-page .haikachi-photo-hero .hero-copy{padding-top:44px;padding-bottom:44px}.home-page .haikachi-photo-hero .eyebrow{font-size:.8125rem;letter-spacing:.065em;line-height:1.8}.home-page .hero-philosophy{font-size:1rem;line-height:1.9;color:#e2d7b8;margin:18px 0 0}.home-page .hero-philosophy strong{font-weight:500}.home-page .haikachi-photo-hero .lead{font-size:1rem;margin:18px 0 24px;line-height:1.95}.home-page .haikachi-photo-hero .hero-image>img{object-position:52% center}.home-page .haikachi-photo-hero .hero-image figcaption{right:20px;left:20px;line-height:1.8;width:fit-content;max-width:calc(100% - 40px)}
@media(max-width:680px){.home-page .haikachi-photo-hero{grid-template-columns:1fr;min-height:0}.home-page .haikachi-photo-hero .hero-copy{padding:32px 24px}.home-page .haikachi-photo-hero .eyebrow{font-size:.75rem}.home-page .haikachi-photo-hero h1{font-size:2.55rem}.home-page .haikachi-photo-hero .hero-image{height:300px}.home-page .hero-philosophy{font-size:.9375rem}.home-page .haikachi-photo-hero .lead{font-size:.9375rem}.home-page .haikachi-photo-hero .hero-image figcaption{font-size:.75rem}}
