:root{--navy:#0b315c;--blue:#126fb8;--blue2:#075da8;--sky:#eaf5fc;--ink:#1d3852;--muted:#5d7184;--line:#d9e5ed;--wood:#d9c09c;--shadow:0 8px 22px rgba(14,67,105,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;line-height:1.7;background:#f8fafc}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.wrap{width:min(1120px,calc(100% - 48px));margin:auto}
header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:3px solid #d8c19d;box-shadow:0 3px 12px #193e5c12}.head{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:260px;height:52px;object-fit:contain;object-position:left center}.nav{display:flex;align-items:center;gap:clamp(10px,1.5vw,21px);font-size:12px;font-weight:900;white-space:nowrap}.nav a:hover{color:var(--blue)}.nav .nav-cta{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d93636,#c91f27);color:#fff;border:1px solid #c91f27;border-radius:999px;padding:13px 22px;min-height:48px;box-sizing:border-box;font-size:15px;font-weight:900;line-height:1.25;white-space:nowrap;text-decoration:none}.menu-btn{display:none;border:1px solid var(--line);background:#eef7fd;border-radius:7px;padding:6px 11px;color:var(--blue);font-size:20px}
.hero{min-height:410px;overflow:hidden;background:linear-gradient(90deg,rgba(236,247,252,.96) 0%,rgba(236,247,252,.88) 46%,rgba(236,247,252,.10) 100%),url('tokai-sky.jpg') center/cover}.hero-inner{min-height:410px;display:flex;align-items:center;position:relative}.hero-copy{width:65%;position:relative;z-index:2;padding:34px 0}.eyebrow{display:inline-block;background:#0c4c87;color:#fff;padding:5px 16px;font-size:12px;font-weight:900;letter-spacing:.04em;transform:skew(-10deg)}.hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;color:#0b315c;font-size:clamp(34px,4.1vw,49px);line-height:1.32;letter-spacing:-.03em;margin:10px 0}.hero p{font-size:14px;font-weight:800;line-height:1.8;margin:0;max-width:650px}.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.hero-tags span{background:#fff;border:1px solid #d6e7f3;border-radius:10px;padding:6px 11px;font-size:11px;font-weight:900;color:#124d7d;box-shadow:0 3px 10px #1d5d8815}.hero-btn{display:inline-flex;margin-top:18px;background:linear-gradient(135deg,#147fc6,#064b91);color:#fff;border-radius:30px;padding:12px 25px;font-size:13px;font-weight:900;box-shadow:0 7px 16px #075da833}.hero-person{position:absolute;right:1%;bottom:0;width:37%;height:88%;object-fit:contain;object-position:center bottom;mix-blend-mode:multiply}
section{padding:34px 0}.section-title{text-align:center;margin:0 0 20px}.section-title h2{font-size:27px;color:#103c6a;line-height:1.4;margin:0;font-weight:900}.section-title small{display:block;color:#087d76;font-size:10px;letter-spacing:.22em;font-weight:900}.section-title p{font-size:13px;margin:7px 0 0;color:#435c70}.services{background:linear-gradient(rgba(255,255,255,.94),rgba(247,251,253,.96)),url('tokai-sky.jpg') center top/100% auto no-repeat;position:relative}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-card{border:1px solid #d9e6ef;border-radius:12px;overflow:hidden;background:white;box-shadow:var(--shadow)}.service-card img{width:100%;height:155px;object-fit:cover;object-position:center 45%;display:block}.service-body{padding:16px 18px 18px}.service-body h3{font-size:19px;color:#123f70;margin:0 0 6px;line-height:1.45}.service-body p{font-size:14px;line-height:1.75;margin:0 0 7px}.service-body ul{padding-left:20px;margin:6px 0 0;font-size:12px;line-height:1.9;color:#405a70}
.price-section{background:linear-gradient(135deg,#f0f7fc,#fff 65%,#f9f4eb)}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.price-card{background:#fff;border:1px solid #d6e4ee;border-radius:11px;padding:17px 12px;text-align:center;box-shadow:0 5px 14px #173c5b0c}.price-card span{display:inline-block;background:#eaf4fb;color:#15598f;border-radius:20px;padding:3px 12px;font-size:10px;font-weight:900}.price-card h3{font-size:14px;margin:8px 0;color:#193f64}.price-card strong{display:block;color:#075da8;font-size:23px;line-height:1.3}.price-card strong small{font-size:15px}.price-card p{font-size:10px;color:#63798a;margin:5px 0 0}.price-note{background:#fff;border-left:4px solid #c9a36d;padding:12px 16px;margin:16px 0 0;font-size:11px;line-height:1.8;color:#52697c}
.support-section{background:#fff}.support-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:start}.support-left{display:flex;flex-direction:column;gap:18px}.consult-panel{min-height:235px;border-radius:12px;border:1px solid #d9e5ed;background:linear-gradient(90deg,#eef7fd 0%,rgba(239,248,255,.97) 54%,rgba(239,248,255,.08) 100%),url('consultation-reference.jpg') right center/auto 100% no-repeat;padding:17px 20px}.consult-panel h3{font-size:18px;color:#123f70;margin:0 0 9px}.consult-panel ul{list-style:none;padding:0;margin:0;max-width:65%}.consult-panel li{font-size:11px;font-weight:800;margin:5px 0}.consult-panel li:before{content:"✓";display:inline-grid;place-items:center;border:2px solid #1684be;color:#16845f;border-radius:50%;width:15px;height:15px;font-size:10px;margin-right:8px}.strengths h3{font-size:20px;color:#123f70;margin:0 0 8px}.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#f0f7fc;border-radius:10px;border:1px solid #dcebf5;padding:10px 5px}.strength{text-align:center;padding:5px 9px;border-right:1px solid #dcebf5}.strength:last-child{border:0}.strength .ico{font-size:25px;color:#0877ba;line-height:1.2}.strength strong{display:block;color:#123f70;font-size:13px}.strength p{font-size:10px;color:#3e586d;line-height:1.5;margin:2px 0 0}
.contact{border:1px solid #cbdce8;border-radius:13px;background:linear-gradient(160deg,#f4faff,#fff);box-shadow:0 2px 8px #0b426414;padding:16px}.contact h3{text-align:center;color:#123f70;font-size:19px;margin:0}.contact-lead{text-align:center;font-size:11px;margin:2px 0 12px;color:#5d7184}.field{display:grid;grid-template-columns:112px 1fr;align-items:center;gap:8px;margin:8px 0}.field span{font-size:11px;font-weight:900;color:#1d3448}.contact .field>span{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;column-gap:4px}.contact .field>span b{display:inline-block;justify-self:start;white-space:nowrap;font-size:9px;background:#df4545;color:#fff;border-radius:3px;padding:1px 4px;margin:0}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid #c9d5df;border-radius:5px;background:white;padding:8px;font:inherit;font-size:12px;color:#263f54}.field textarea{height:75px;resize:vertical}.agree{display:flex;align-items:center;justify-content:center;gap:6px;text-align:left;font-size:10px;color:#31516d;margin:10px}.agree input[type=checkbox]{display:inline-block;flex:0 0 16px;width:16px;height:16px;margin:0;vertical-align:middle}.send{display:block;border:0;border-radius:7px;background:linear-gradient(135deg,#147dc2,#064b91);color:white;font-weight:900;padding:10px 20px;width:75%;margin:0 auto;cursor:pointer}.form-note{font-size:9px;color:#71879a;text-align:center;margin:7px 0 0}.hidden{display:none}
.area{background:linear-gradient(90deg,rgba(220,241,255,.55),rgba(255,255,255,.12)),url('tokai-sky.jpg') center/cover;border-top:4px solid #d8c19d;border-bottom:4px solid #d8c19d;padding:19px 0}.area-inner{display:flex;align-items:center;justify-content:center;gap:20px;color:#123f70}.area-badge{background:#0d4e8d;color:#fff;padding:8px 18px;border-radius:7px;font-weight:900}.area strong{font-size:20px}.area p{margin:0;font-size:12px;font-weight:800}.flow-section{background:#f5f9fc}.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.flow-grid>div{background:#fff;border:1px solid #dce8f0;border-radius:10px;text-align:center;padding:15px 12px}.flow-grid b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#0c568f;color:#fff}.flow-grid h3{font-size:14px;color:#123f70;margin:8px 0 3px}.flow-grid p{font-size:10px;margin:0;color:#50687b}.faq-section{background:#fff}.faq-section details{max-width:850px;margin:8px auto;border:1px solid #dce6ed;border-radius:8px;padding:12px 16px;background:#fbfdff}.faq-section summary{font-weight:900;color:#17436d;cursor:pointer;font-size:13px}.faq-section details p{font-size:12px;margin:8px 0 0;color:#536a7c}.bottom-cta{background:linear-gradient(110deg,#0e3d6d,#075da8);color:#fff;padding:27px 0}.bottom-cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.bottom-cta small{letter-spacing:.2em;font-weight:900;color:#b9e0fa}.bottom-cta h2{font-size:22px;margin:2px 0}.bottom-cta p{font-size:12px;margin:0}.bottom-cta a{background:#fff;color:#075da8;border-radius:30px;padding:13px 22px;font-weight:900;white-space:nowrap}footer{background:#092e54;color:#e8f4fb;padding:20px 0;border-top:6px solid #d8c19d;font-size:11px}.foot{display:flex;justify-content:space-between;gap:15px;align-items:center}.foot b{font-size:16px}.foot p{margin:2px 0}.foot a{color:#fff}
@media(max-width:950px){.nav{gap:9px;font-size:10px}.brand img{width:220px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card img{height:145px}.price-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.wrap{width:calc(100% - 28px)}.head{min-height:60px;flex-wrap:wrap;padding:5px 0}.brand img{width:205px;height:45px}.menu-btn{display:block}.nav{display:none;width:100%;flex-wrap:wrap;padding:5px 0 10px;white-space:normal}.nav.open{display:flex}.hero,.hero-inner{min-height:460px}.hero-copy{width:100%;padding:26px 0 190px}.hero h1{font-size:32px}.hero p{font-size:11px}.hero-person{width:58%;height:55%;right:0}.hero-tags{max-width:85%;gap:5px}.hero-tags span{font-size:9px;padding:5px 7px}.hero-btn{font-size:11px;padding:10px 15px}.services-grid{grid-template-columns:1fr;gap:14px}.service-card{display:block}.service-card img{height:155px;min-height:0}.service-body{padding:14px 15px}.service-body h3{font-size:17px}.service-body p{font-size:13px}.service-body ul{font-size:11px}.price-grid{grid-template-columns:repeat(2,1fr);gap:8px}.price-card{padding:12px 6px}.price-card strong{font-size:19px}.support-grid{grid-template-columns:1fr}.consult-panel{min-height:205px;background-position:right center}.consult-panel ul{max-width:72%}.field{grid-template-columns:1fr;gap:3px}.field span{font-size:10px}.send{width:100%}.area-inner{gap:10px;flex-wrap:wrap}.area strong{font-size:17px}.area p{font-size:10px}.flow-grid{grid-template-columns:repeat(2,1fr)}.bottom-cta .wrap{display:block;text-align:center}.bottom-cta h2{font-size:18px}.bottom-cta a{display:inline-block;margin-top:14px}.foot{display:block;text-align:center}}
@media(max-width:420px){.hero h1{font-size:28px}.hero-copy{padding-bottom:170px}.hero-person{width:62%;height:50%}.hero-tags{max-width:100%}.section-title h2{font-size:23px}.consult-panel{background-size:auto 72%;background-position:right bottom}.consult-panel ul{max-width:100%}.consult-panel li{font-size:9px}.strength strong{font-size:11px}.strength p{font-size:9px}}

/* final polish */
.agree a{color:#075da8;text-decoration:underline;font-weight:800}
.nav-cta{background:linear-gradient(135deg,#147fc6,#064b91);color:#fff;border-radius:8px;padding:10px 15px;font-weight:900}
:focus-visible{outline:3px solid #e0a83d;outline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Photo-led greenery accents and improved readability */
.section-title h2{letter-spacing:.02em}
.service-card{transition:transform .18s ease,box-shadow .18s ease}
.service-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(14,67,105,.14)}
.service-card img{background:#e7f0e8}
.services .section-title{position:relative;padding:10px 0 12px}
.services .section-title:before,.services .section-title:after{content:"";position:absolute;top:0;width:110px;height:58px;background:url('tokai-sky.jpg') center/cover;border-radius:0 0 26px 26px;opacity:.5;z-index:0}
.services .section-title:before{left:0}
.services .section-title:after{right:0}
.services .section-title>*{position:relative;z-index:1}
@media(max-width:700px){.services .section-title:before,.services .section-title:after{width:58px;height:38px}.service-card img{height:150px}}
@media(prefers-reduced-motion:reduce){.service-card{transition:none}}

/* Official LEVEL ASSET identity */
.brand{display:flex;align-items:center;gap:9px;min-width:235px;color:#083b70;text-decoration:none}
.brand img{width:48px;height:48px;object-fit:contain}
.brand-name{display:flex;flex-direction:column;font-size:22px;font-weight:950;letter-spacing:-.04em;line-height:1.05;color:#07396d}
.brand-name small{font-size:10px;letter-spacing:.02em;margin-top:4px;color:#315675;font-weight:800}
@media(max-width:950px){.brand img{width:42px;height:42px}.brand-name{font-size:19px}}
@media(max-width:700px){.brand{min-width:0;gap:6px}.brand img{width:38px;height:38px}.brand-name{font-size:17px}.brand-name small{font-size:9px}}

/* Smaller, sharper photo treatment */
.hero-person{filter:saturate(1.03) contrast(1.02)}
.service-card img{image-rendering:auto}
.service-card{max-width:100%}
@media(max-width:700px){.hero-person{width:52%;height:50%;right:0}.hero-copy{padding-bottom:170px}}

/* Service photos: wider framing, high-resolution crop, consistent card display */
.service-card img{width:100%;height:150px;object-fit:cover;object-position:center center;display:block}
@media(max-width:950px){.service-card img{height:145px}}
@media(max-width:700px){.service-card img{height:165px}}

.service-note{margin:18px auto 0;padding:12px 16px;max-width:1000px;border-left:4px solid #2d8b55;background:#f1f7f3;color:#34536b;font-size:13px;line-height:1.8;border-radius:5px}

/* Readability improvements for older visitors */
body{font-size:18px;line-height:1.85}
.nav{font-size:14px}
.eyebrow{font-size:17px;padding:8px 14px}
.hero-copy h1{font-size:clamp(34px,4vw,48px);line-height:1.45}
.hero-copy p,.section-title p{font-size:18px;line-height:1.9}
.section-title h2{font-size:34px}
.section-title small{font-size:13px}
.service-body h3{font-size:23px}
.service-body p,.service-body li{font-size:17px;line-height:1.9}
.price-card{padding:26px 22px;min-height:190px}
.price-card span{font-size:16px;padding:8px 16px}
.price-card h3{font-size:22px}
.price-card strong{font-size:34px}
.price-card p{font-size:16px}
.price-note{font-size:16px;line-height:2}
.estimate-box{margin:28px auto 20px;padding:28px;max-width:1000px;background:#f1f7fc;border:2px solid #c9dceb;border-radius:14px}
.estimate-box h3{font-size:28px;margin:0 0 8px;color:#123f6b}
.estimate-lead{font-size:17px;margin:0 0 20px}
.estimate-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.estimate-fields label{display:flex;flex-direction:column;gap:8px;font-size:16px;font-weight:700}
.estimate-fields select,.estimate-fields input{width:100%;min-height:54px;padding:10px 12px;font:inherit;font-size:17px;border:1px solid #9fb9cc;border-radius:8px;background:#fff;color:#193a58}
.estimate-result{margin-top:22px;padding:22px;background:#fff;border-radius:10px;text-align:center;border:1px solid #d5e4ef}
.estimate-result span{display:block;font-size:18px;font-weight:700}
.estimate-result strong{display:block;font-size:42px;color:#075da8;line-height:1.5}
.estimate-result small{display:block;font-size:15px;color:#536b80}
.estimate-disclaimer{font-size:14px;line-height:1.8;color:#526b80;margin:14px 0 0}
@media(max-width:700px){body{font-size:17px}.section-title h2{font-size:29px}.price-card strong{font-size:32px}.estimate-fields{grid-template-columns:1fr}.estimate-box{padding:20px 16px}.estimate-box h3{font-size:25px}.estimate-result strong{font-size:36px}}

/* Accessibility and consistency pass: large, readable type for older visitors */
html{font-size:18px;scroll-padding-top:95px}
body{font-size:18px;line-height:1.9}
.nav{font-size:14px;gap:clamp(9px,1.2vw,18px)}
.hero h1{font-size:clamp(38px,4.3vw,54px);line-height:1.4}
.hero p{font-size:18px;line-height:1.95}
.eyebrow{font-size:16px;padding:8px 18px}
.hero-tags span{font-size:15px;padding:9px 14px}
.hero-btn{font-size:17px;padding:15px 28px}
.section-title h2{font-size:36px}
.section-title small{font-size:13px}
.section-title p{font-size:18px;line-height:1.8}
.services .section-title:before,.services .section-title:after{display:none}
.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.service-card img{height:210px}
.service-body{padding:20px 22px 22px}
.service-body h3{font-size:24px}
.service-body p{font-size:18px;line-height:1.9}
.service-body ul{font-size:17px;line-height:1.95}
.service-card-combined{grid-column:1/-1;display:grid;grid-template-columns: minmax(280px,.9fr) minmax(0,1.1fr);align-items:stretch}
.service-card-combined img{height:100%;min-height:320px;object-fit:cover}
.service-estimate-btn{display:inline-block;margin-top:18px;padding:13px 24px;background:#075da8;color:#fff;border-radius:8px;font-size:18px;font-weight:900;box-shadow:0 4px 12px #075da833}
.price-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.price-card{padding:24px 18px;min-height:200px}
.price-card span{font-size:15px;padding:7px 14px}
.price-card h3{font-size:21px}
.price-card strong{font-size:34px}
.price-card p{font-size:16px}
.price-note{font-size:16px;line-height:2}
.estimate-box h3{font-size:30px}
.estimate-lead{font-size:18px;line-height:1.9}
.estimate-fields label{font-size:17px}
.estimate-fields select,.estimate-fields input{font-size:18px;min-height:58px}
.estimate-result span{font-size:20px}
.estimate-result strong{font-size:44px}
.estimate-result small,.estimate-disclaimer{font-size:16px;line-height:1.9}
.consult-panel h3,.strengths h3,.contact h3{font-size:24px}
.consult-panel li,.strength strong{font-size:17px}
.strength p{font-size:15px;line-height:1.8}
.contact{padding:22px}
.contact-lead{font-size:16px;line-height:1.8}
.field{grid-template-columns:140px 1fr;gap:12px;margin:12px 0}
.field span{font-size:16px}
.field input,.field select,.field textarea{font-size:17px;min-height:52px;padding:12px}
.field textarea{height:110px}
.agree{font-size:15px}
.send{font-size:18px;min-height:54px}
.form-note{font-size:14px}
.area-badge{font-size:17px}
.area strong{font-size:24px}
.area p{font-size:16px}
.flow-grid h3{font-size:20px}
.flow-grid p{font-size:16px;line-height:1.8}
.faq-section summary{font-size:18px}
.faq-section details p{font-size:17px;line-height:1.9}
.bottom-cta h2{font-size:28px}
.bottom-cta p{font-size:17px}
.bottom-cta a{font-size:17px}
footer{font-size:15px;line-height:1.9}
@media(max-width:950px){
 .nav{font-size:12px;gap:8px}
 .service-card-combined{grid-template-columns:1fr}
 .service-card-combined img{height:240px;min-height:0}
}
@media(max-width:700px){
 html{font-size:17px}
 .hero,.hero-inner{min-height:520px}
 .hero-copy{padding:28px 0 210px}
 .hero h1{font-size:36px}
 .hero p{font-size:16px}
 .hero-tags span{font-size:14px}
 .hero-btn{font-size:16px}
 .section-title h2{font-size:30px}
 .section-title p{font-size:16px}
 .services-grid{grid-template-columns:1fr}
 .service-card-combined{grid-column:auto}
 .service-card img,.service-card-combined img{height:205px}
 .service-body h3{font-size:22px}
 .service-body p{font-size:17px}
 .service-body ul{font-size:16px}
 .service-estimate-btn{font-size:17px}
 .price-grid{grid-template-columns:1fr}
 .price-card{min-height:0;padding:20px}
 .price-card h3{font-size:20px}
 .price-card strong{font-size:32px}
 .price-card p{font-size:15px}
 .price-note{font-size:15px}
 .support-grid{grid-template-columns:1fr}
 .consult-panel li{font-size:15px}
 .strength-grid{grid-template-columns:1fr}
 .strength{border-right:0;border-bottom:1px solid #dcebf5}
 .strength:last-child{border-bottom:0}
 .strength strong{font-size:16px}
 .strength p{font-size:14px}
 .field{grid-template-columns:1fr}
 .field span{font-size:15px}
 .area strong{font-size:20px}
 .area p{font-size:15px}
 .flow-grid{grid-template-columns:1fr}
 .flow-grid h3{font-size:18px}
 .flow-grid p{font-size:15px}
 .faq-section summary{font-size:16px}
 .faq-section details p{font-size:15px}
 .bottom-cta h2{font-size:22px}
 .bottom-cta p{font-size:15px}
}

.company-profile{padding:56px 0 48px;background:#f3f8fc}
.company-card{max-width:920px;margin:0 auto;background:#fff;border:1px solid #d6e4ef;border-radius:14px;padding:30px 34px;box-shadow:0 8px 22px rgba(15,55,88,.06)}
.company-card h3{font-size:26px;color:#123f6b;margin:0 0 18px}
.company-card dl{margin:0}
.company-card dl>div{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:13px 0;border-top:1px solid #e3edf4}
.company-card dt{font-weight:800;color:#244b6e;font-size:17px}
.company-card dd{margin:0;font-size:17px;line-height:1.8;color:#334e67}
.company-card a{color:#075da8;text-decoration:underline}
@media(max-width:700px){.company-profile{padding:38px 0}.company-card{padding:22px 18px}.company-card h3{font-size:23px}.company-card dl>div{grid-template-columns:1fr;gap:4px;padding:12px 0}.company-card dt,.company-card dd{font-size:16px}}

/* Hero portrait scale adjusted to match the user's reference screenshot */
.hero-inner{overflow:hidden;min-height:460px}
.hero-person{
  width:56% !important;
  height:100% !important;
  right:0 !important;
  bottom:0 !important;
  object-fit:contain !important;
  object-position:right bottom !important;
  max-width:none !important;
}
@media(max-width:700px){
  .hero-inner{min-height:500px}
  .hero-person{
    width:68% !important;
    height:64% !important;
    right:0 !important;
    bottom:0 !important;
    object-fit:contain !important;
    object-position:right bottom !important;
  }
}

/* Final requested photo restoration and enlargement */
.hero-person{
  right:0 !important;
  bottom:0 !important;
  width:66% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:18% center !important;
  mix-blend-mode:normal !important;
}
.hero{background-image:linear-gradient(90deg,rgba(236,247,252,.98) 0%,rgba(236,247,252,.90) 39%,rgba(236,247,252,.08) 76%),url('tokai-sky.jpg') !important}
.hero-copy{width:58%;z-index:3}
.expert-note{margin:12px 0 0;padding:10px 14px;background:#e8f6ef;border-radius:8px;color:#245b45;font-size:16px;line-height:1.8;font-weight:700}
.strength p{overflow-wrap:anywhere}
@media(max-width:950px){
 .hero-person{width:68% !important;object-position:18% center !important}
 .hero-copy{width:62%}
}
@media(max-width:700px){
 .hero{background-image:linear-gradient(180deg,rgba(236,247,252,.98) 0%,rgba(236,247,252,.90) 48%,rgba(236,247,252,.08) 100%),url('tokai-sky.jpg') !important}
 .hero-inner{min-height:610px}
 .hero-copy{width:100%;padding-bottom:265px}
 .hero-person{width:100% !important;height:48% !important;right:0 !important;bottom:0 !important;object-fit:contain !important;object-position:center bottom !important}
 .expert-note{font-size:15px}
}

/* Final layout refinements requested by the user */
.hero{overflow:hidden}
.hero-inner{display:flex;align-items:center;min-height:410px}
.hero-copy{width:68%;max-width:760px;padding-right:22px;z-index:3}
.hero-person{
  width:30% !important; /* reduced to roughly 70% of the former display width */
  height:54% !important;
  right:0 !important;
  bottom:0 !important;
  object-fit:contain !important;
  object-position:right bottom !important;
  mix-blend-mode:normal !important;
}
.specialist-network-visual{width:100%;margin:22px auto 26px;padding:0}
.specialist-network-visual img{display:block;width:100%;height:auto;max-width:1201px;margin:0 auto;border-radius:12px}
.expert-note{font-size:16px;line-height:1.85;margin:14px 0 0;padding:12px 16px}
.hero-btn,.service-estimate-btn,.send,.bottom-cta a,.area-badge{
 background:#c62828 !important;
 background-image:linear-gradient(135deg,#e04444,#b71c1c) !important;
 color:#fff !important;
 box-shadow:0 5px 14px rgba(183,28,28,.22) !important;
}
@media(max-width:950px){
 .hero-copy{width:76%}
 .hero-person{width:30% !important;height:48% !important}
}
@media(max-width:700px){
 .hero-inner{min-height:540px;display:block}
 .hero-copy{width:100%;padding:28px 0 205px}
 .hero-person{width:30% !important;height:36% !important;right:0 !important;bottom:0 !important;object-fit:contain !important}
 .specialist-network-visual{margin:16px auto 20px}
 .expert-note{font-size:15px}
}

button,.button,.btn,.cta-button,.hero-btn,.service-estimate-btn,.send{
 background:#c62828 !important;color:#fff !important;border-color:#b71c1c !important;
}


/* Accessibility and full-width layout: final pass */
:root{--content-max:1480px}
html{font-size:18px;scroll-behavior:smooth}
body{font-size:18px;line-height:1.85;color:#243b50}
.wrap{width:min(1480px,calc(100% - 64px));margin-left:auto;margin-right:auto}
section{padding:56px 0}
.section-title{margin-bottom:30px}
.section-title h2{font-size:clamp(30px,3vw,40px)}
.section-title small{font-size:14px}
.section-title p{font-size:19px;line-height:1.8}
.hero-copy h1{font-size:clamp(38px,4.1vw,58px);line-height:1.35}
.hero-copy>p{font-size:20px;line-height:1.9}
.hero-tags span{font-size:17px;padding:12px 16px}
.hero-btn,.service-estimate-btn,.send,.nav-cta,.bottom-cta a{
 font-size:19px;padding:17px 28px;border-radius:999px;
}
.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.service-card img{height:auto;max-height:300px;object-fit:contain;object-position:center;background:#f5f9fc}
.service-body{padding:24px 26px 28px}
.service-body h3{font-size:26px;line-height:1.5;margin-bottom:12px}
.service-body p{font-size:19px;line-height:1.9;margin-bottom:12px}
.service-body ul{font-size:18px;line-height:1.95}
.strengths h3{font-size:28px;margin-bottom:16px}
.strength-grid{padding:18px 10px}
.strength{padding:14px 18px}
.strength .ico{font-size:32px}
.strength strong{font-size:21px}
.strength p{font-size:17px;line-height:1.8}
.expert-note{font-size:19px;line-height:1.9;padding:18px 22px}
.specialist-network-visual img{max-width:100%;border-radius:14px}
.service-estimate-btn{display:block;width:max-content;max-width:100%;margin:28px auto 0;text-align:center}
.service-estimate-btn,.hero-btn,.send,.nav-cta,.bottom-cta a{background:#c62828!important;color:#fff!important;border-radius:999px!important}
.price-card,.price-box,.estimate-panel{font-size:18px}
.price-card h3,.price-box h3{font-size:22px}
input,select,textarea{font-size:18px!important;min-height:52px}
label{font-size:18px!important;line-height:1.7}
button{font-size:18px}
.faq,.faq p,.faq summary{font-size:18px;line-height:1.9}
.company-card dt,.company-card dd{font-size:18px}
.hero-person{width:60%!important;height:100%!important;object-fit:contain!important;object-position:right bottom!important}
@media(max-width:900px){
 .wrap{width:calc(100% - 40px)}
 .services-grid{grid-template-columns:1fr}
 .hero-copy h1{font-size:38px}
 .hero-copy>p{font-size:18px}
 .service-body h3{font-size:24px}
 .service-body p,.service-body ul{font-size:18px}
 .strength-grid{grid-template-columns:1fr}
 .strength{border-right:0;border-bottom:1px solid #dcebf5}
 .strength:last-child{border-bottom:0}
}
@media(max-width:700px){
 html{font-size:17px}
 .wrap{width:calc(100% - 32px)}
 section{padding:42px 0}
 .hero-inner{min-height:640px}
 .hero-copy{padding:28px 0 260px;width:100%}
 .hero-copy h1{font-size:34px}
 .hero-copy>p{font-size:17px}
 .hero-person{width:90%!important;height:42%!important;right:0!important;bottom:0!important;object-fit:contain!important}
 .hero-btn,.service-estimate-btn,.send{font-size:18px;padding:15px 22px}
 .service-card img{max-height:none;width:100%;height:auto;object-fit:contain}
 .service-body{padding:20px}
 .service-body h3{font-size:23px}
 .service-body p,.service-body ul{font-size:17px}
 .expert-note{font-size:17px}
 .specialist-network-visual{overflow-x:auto}
 .specialist-network-visual img{width:100%;height:auto}
}


/* Final requested layout adjustments - November 14 */
/* Hero portrait reduced and positioned at the far right */
.hero-inner{min-height:520px;}
.hero-copy{width:66%;max-width:820px;padding-right:20px;}
.hero-person{width:31%!important;height:82%!important;right:1%!important;bottom:0!important;object-fit:contain!important;object-position:right bottom!important;mix-blend-mode:multiply!important;}
/* Combined photo/report service: image fills the full card height */
.service-card-combined{display:grid;grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);align-items:stretch;}
.service-card-combined>img{width:100%;height:100%;min-height:100%;max-height:none;object-fit:cover;object-position:center;align-self:stretch;}
.service-card-combined .service-body{display:flex;flex-direction:column;justify-content:center;}
.service-card-combined .service-estimate-btn{align-self:center;margin:28px auto 0;}
/* Consultation/strengths on the left, specialist network diagram on the right */
.support-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"left network" "contact contact";align-items:stretch;gap:26px;}
.support-left{grid-area:left;min-width:0;}
.specialist-network-visual{grid-area:network;align-self:center;width:100%;margin:0;padding:0;}
.specialist-network-visual img{width:100%;height:auto;max-width:none;object-fit:contain;border-radius:14px;}
.contact{grid-area:contact;width:100%;max-width:100%;}
/* Remove decorative cloud-like ornaments around section headings */
.services .section-title:before,.services .section-title:after{display:none!important;}
/* Large, accessible buttons: red, rounded, centered, without decorative chevrons */
.hero-btn,.service-estimate-btn,.send,.bottom-cta a,.nav-cta,.area-badge{background:#c62828!important;background-image:linear-gradient(135deg,#df3a3a,#b71c1c)!important;color:#fff!important;border-radius:999px!important;}
.service-estimate-btn{display:block;width:max-content;max-width:100%;margin:28px auto 0;text-align:center;}
.hero-btn{display:flex;width:max-content;max-width:100%;justify-content:center;align-items:center;}
@media(max-width:900px){
 .hero-inner{min-height:500px;}
 .hero-copy{width:68%;}
 .hero-person{width:30%!important;height:72%!important;}
 .support-grid{grid-template-columns:1fr;grid-template-areas:"left" "network" "contact";}
 .specialist-network-visual{max-width:850px;margin:0 auto;}
}
@media(max-width:700px){
 .hero-inner{min-height:640px;}
 .hero-copy{width:100%;padding:28px 0 260px;}
 .hero-person{width:68%!important;height:40%!important;right:0!important;bottom:0!important;object-fit:contain!important;}
 .service-card-combined{display:block;}
 .service-card-combined>img{width:100%;height:auto;min-height:0;max-height:none;object-fit:contain;}
 .support-grid{grid-template-areas:"left" "network" "contact";}
 .specialist-network-visual{overflow:visible;}
 .specialist-network-visual img{width:100%;height:auto;}
}


/* Final readability and alignment refinements */
.hero,.hero-inner{min-height:470px;}
.hero-copy{width:52%;}
.hero-person{width:55%!important;height:95%!important;right:0!important;bottom:0!important;object-fit:contain!important;object-position:right bottom!important;mix-blend-mode:normal!important;filter:brightness(1.04) saturate(1.04) contrast(1.03)!important;}
.hero-btn,.service-estimate-btn,.send,.nav-cta,.bottom-cta a{border-radius:999px!important;}
.hero-btn{display:flex;width:max-content;justify-content:center;align-items:center;margin-left:0;}
.service-estimate-btn{display:flex;width:max-content;justify-content:center;align-items:center;margin:28px auto 0!important;}
.support-section{padding:36px 0 42px;}
.support-grid{display:flex!important;flex-direction:column!important;align-items:center!important;gap:28px!important;}
.support-left{width:min(100%,1180px);margin:0 auto;display:grid;grid-template-columns:1fr;gap:22px;}
.consult-panel{min-height:270px;padding:24px 28px;background-size:auto 100%;}
.consult-panel h3{font-size:28px!important;line-height:1.45;margin-bottom:14px;}
.consult-panel ul{max-width:64%;}
.consult-panel li{font-size:19px!important;line-height:1.65;margin:8px 0;}
.strengths h3{font-size:30px!important;margin:0 0 16px;}
.strength-grid{padding:20px 12px;}
.strength{padding:12px 16px;}
.strength .ico{font-size:32px;}
.strength strong{font-size:20px!important;line-height:1.5;}
.strength p{font-size:17px!important;line-height:1.75;margin-top:8px;}
.expert-note{font-size:18px!important;line-height:1.8;padding:18px 22px;margin-top:16px;}
.specialist-network-visual{width:100vw!important;max-width:none!important;margin:0 calc(50% - 50vw)!important;padding:0!important;overflow:visible!important;}
.specialist-network-visual img{display:block;width:100%!important;max-width:none!important;height:auto!important;object-fit:contain!important;border-radius:0!important;}
/* The diagram is intentionally full-bleed; keep its complete contents visible. */
@media(max-width:700px){
 .hero-copy{width:100%;padding-bottom:205px;}
 .hero-person{width:68%!important;height:48%!important;right:0!important;bottom:0!important;object-fit:contain!important;}
 .support-left{width:calc(100% - 28px);}
 .consult-panel{min-height:250px;background-size:auto 75%;background-position:right bottom;}
 .consult-panel ul{max-width:100%;}
 .consult-panel li{font-size:16px!important;}
 .strength-grid{grid-template-columns:1fr!important;}
 .strength{border-right:0;border-bottom:1px solid #dcebf5;padding:14px;}
 .strength:last-child{border-bottom:0;}
 .strength strong{font-size:18px!important;}
 .strength p{font-size:16px!important;}
 .expert-note{font-size:16px!important;}
 .specialist-network-visual{width:100vw!important;margin-left:calc(50% - 50vw)!important;}
}

/* CLEAN FINAL OVERRIDE — remove conflicting legacy layout rules */
.hero{overflow:hidden;}
.hero-inner{
  position:relative; display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  align-items:center; gap:clamp(24px,3vw,48px);
  min-height:500px; padding-top:28px; padding-bottom:28px;
}
.hero-copy{position:relative !important; z-index:2; width:auto !important; max-width:none !important; padding:24px 0 !important; min-width:0;}
.hero-copy h1{font-size:clamp(36px,3.5vw,54px); line-height:1.38; overflow-wrap:anywhere;}
.hero-copy>p{font-size:clamp(17px,1.25vw,20px); line-height:1.85;}
.hero-person{
  position:relative !important; inset:auto !important; display:block;
  width:100% !important; height:auto !important; max-width:100%; max-height:460px;
  object-fit:contain !important; object-position:center center !important;
  mix-blend-mode:normal !important; filter:brightness(1.08) saturate(1.08) contrast(1.04) !important;
  border-radius:4px;
}
.hero-btn{margin:22px auto 0 !important;}

/* Keep the consultation and strengths block centered and readable. */
.support-section{padding:48px 0 54px !important; overflow:hidden;}
.support-grid{display:flex !important; flex-direction:column !important; align-items:center !important; gap:28px !important;}
.support-left{display:grid !important; grid-template-columns:minmax(0,1fr) !important; width:min(100%,1180px) !important; margin:0 auto !important; gap:22px !important;}
.consult-panel{min-height:280px !important; padding:26px 30px !important; background-size:auto 100% !important; background-position:right center !important;}
.consult-panel h3{font-size:clamp(24px,2vw,30px) !important;}
.consult-panel ul{max-width:64% !important;}
.consult-panel li{font-size:clamp(17px,1.35vw,20px) !important; line-height:1.75 !important; margin:8px 0 !important;}
.strengths h3{font-size:clamp(26px,2.2vw,32px) !important;}
.strength-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important; padding:22px 12px !important;}
.strength{padding:16px 18px !important;}
.strength strong{font-size:clamp(18px,1.4vw,22px) !important;}
.strength p{font-size:clamp(16px,1.15vw,18px) !important; line-height:1.8 !important;}
.expert-note{font-size:clamp(17px,1.25vw,19px) !important; line-height:1.85 !important; padding:18px 22px !important;}
.specialist-network-visual{display:block !important; width:100vw !important; max-width:none !important; margin:0 calc(50% - 50vw) !important; padding:0 !important; overflow:visible !important;}
.specialist-network-visual img{display:block !important; width:100% !important; max-width:none !important; height:auto !important; object-fit:contain !important; border-radius:0 !important;}
.contact{width:min(100%,1180px) !important; margin:0 auto !important;}

/* Restore predictable service card image sizing and prevent cropping. */
.service-card-combined{display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important; align-items:stretch !important;}
.service-card-combined>img{display:block !important; width:100% !important; height:100% !important; min-height:360px !important; max-height:none !important; object-fit:cover !important; object-position:center !important;}
.service-card-combined .service-body{display:flex; flex-direction:column; justify-content:center; min-width:0;}
.service-estimate-btn{margin:28px auto 0 !important;}

@media(max-width:900px){
 .hero-inner{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); min-height:430px; gap:20px;}
 .hero-copy h1{font-size:clamp(32px,4.4vw,42px);}
 .consult-panel ul{max-width:70% !important;}
}
@media(max-width:700px){
 .wrap{width:calc(100% - 32px) !important;}
 .hero-inner{display:flex !important; flex-direction:column; align-items:stretch; gap:12px; min-height:0; padding-top:24px; padding-bottom:20px;}
 .hero-copy{width:100% !important; padding:10px 0 0 !important;}
 .hero-copy h1{font-size:34px;}
 .hero-copy>p{font-size:17px;}
 .hero-person{width:min(100%,520px) !important; max-height:310px; height:auto !important; margin:0 auto; object-fit:contain !important;}
 .hero-btn{margin:18px auto 0 !important;}
 .support-left{width:calc(100% - 28px) !important;}
 .consult-panel{min-height:260px !important; padding:20px !important; background-size:auto 72% !important; background-position:right bottom !important;}
 .consult-panel ul{max-width:100% !important;}
 .consult-panel li{font-size:16px !important;}
 .strength-grid{grid-template-columns:1fr !important;}
 .strength{border-right:0 !important; border-bottom:1px solid #dcebf5 !important;}
 .strength:last-child{border-bottom:0 !important;}
 .specialist-network-visual{width:100vw !important; margin-left:calc(50% - 50vw) !important;}
 .service-card-combined{display:block !important;}
 .service-card-combined>img{width:100% !important; height:auto !important; min-height:0 !important; max-height:none !important; object-fit:contain !important;}
 .service-card-combined .service-body{display:block;}
}


/* FINAL STRUCTURAL FIX based on recorded browser playback */
.support-section{width:100%; overflow-x:clip !important;}
.support-section>.wrap.support-grid{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  width:min(100% - 48px, 1480px) !important;
  max-width:1480px !important;
  margin-inline:auto !important;
  gap:30px !important;
}
.support-grid>.support-left{
  display:flex !important;
  flex-direction:column !important;
  align-self:stretch !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}
.support-grid>.specialist-network-visual{
  display:block !important;
  position:relative !important;
  flex:0 0 100vw !important;
  width:100vw !important;
  min-width:100vw !important;
  max-width:100vw !important;
  align-self:center !important;
  margin:0 0 0 calc(50% - 50vw) !important;
  padding:0 !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}
.support-grid>.specialist-network-visual img{
  display:block !important;
  width:100% !important;
  min-width:100% !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:0 !important;
}
.support-grid>.contact{
  display:block !important;
  flex:0 0 auto !important;
  width:100% !important;
  max-width:1180px !important;
  min-width:0 !important;
  align-self:center !important;
  margin:0 auto !important;
  box-sizing:border-box !important;
}
@media(max-width:700px){
 .support-section>.wrap.support-grid{
   width:calc(100% - 28px) !important;
   gap:22px !important;
 }
 .support-grid>.specialist-network-visual{
   flex-basis:100vw !important;
   width:100vw !important;
   min-width:100vw !important;
   margin-left:calc(50% - 50vw) !important;
 }
 .support-grid>.contact{
   width:100% !important;
 }
}


/* Header request CTA: blue, larger, immediately after company navigation */
.nav .nav-request{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#1684c8,#07529a) !important;
  color:#fff !important;
  border:1px solid #07529a;
  border-radius:999px;
  padding:13px 22px;
  min-height:48px;
  font-size:15px;
  font-weight:900;
  line-height:1.25;
  box-shadow:0 5px 13px rgba(7,82,154,.20);
  white-space:nowrap;
  text-decoration:none;
}
.nav .nav-request:hover{
  background:linear-gradient(135deg,#0872b6,#063f7d) !important;
  color:#fff !important;
  transform:translateY(-1px);
}
@media(max-width:950px){
  .nav .nav-request{font-size:13px;padding:11px 16px;min-height:44px}
}
@media(max-width:700px){
  .nav .nav-request{width:100%;justify-content:center;margin:4px 0 2px;font-size:16px;min-height:48px}
}

@media(max-width:950px){.nav .nav-cta{font-size:13px;padding:11px 16px;min-height:44px}}
