@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap');
:root{--navy:#0b2537;--deep:#071a29;--ink:#153247;--muted:#607886;--line:#d6e2e7;--cyan:#8bdde7;--light:#eff5f6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'Noto Sans JP',system-ui,sans-serif;font-size:16px;line-height:1.85}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,a,summary{outline-offset:4px}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.skip{position:absolute;left:-9999px;z-index:20}.skip:focus{left:16px;top:16px;background:#fff;padding:8px 16px}.header{background:#fff;position:relative;z-index:10;box-shadow:0 1px 9px #102f3912}.header-inner{max-width:1320px;margin:auto;padding:0 28px;min-height:88px;display:flex;align-items:center;gap:35px}.brand img{width:240px;height:auto}.header nav{display:flex;gap:26px;margin-left:auto;font-size:14px;font-weight:700}.header nav a:hover,.text-link:hover,.proof-links a:hover{text-decoration:underline}.head-phone{background:var(--navy);color:#fff;padding:12px 20px;line-height:1.35;white-space:nowrap}.head-phone small{display:block;font-size:11px;color:#aad8e1}.head-phone strong{font-size:19px;letter-spacing:.03em}.hero{position:relative;min-height:660px;display:flex;align-items:center;overflow:hidden;background:var(--deep);color:#fff}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{background:url('assets/key-hero.webp') center center/cover no-repeat}.hero-shade{background:linear-gradient(90deg,#071a29ee 0%,#071a29bd 32%,#071a293b 67%,transparent 100%)}.hero-content{position:relative;z-index:1;padding:84px 0 90px}.eyebrow,.overline{font-size:12px;font-weight:800;letter-spacing:.17em;color:#29869a}.eyebrow{color:var(--cyan);margin:0 0 22px}.hero h1{font-size:clamp(38px,4.1vw,66px);font-weight:800;letter-spacing:.025em;line-height:1.36;margin:0}.hero h1 em{font-style:normal;color:#a7e4eb}.hero-lead{max-width:580px;font-size:17px;line-height:1.9;margin:28px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;gap:30px;justify-content:space-between;align-items:center;min-width:206px;padding:15px 22px;font-size:15px;font-weight:800}.button span{font-size:22px;font-weight:400}.button.primary{background:#b5eaf0;color:#082c40}.button.outline{border:1px solid #b6d7e0;color:#fff}.button:hover,.contact-mail:hover,.contact-phone:hover{filter:brightness(.94)}.hero-hours{font-size:13px;color:#c9dfe5;margin:15px 0 0}.hero-edge{position:absolute;right:24px;bottom:20px;font-size:10px;letter-spacing:.24em;color:#d0e5e6}.trustline{background:#123449;color:#fff}.trustline .wrap{display:flex;justify-content:space-between;gap:25px;padding:21px 0}.trustline span{font-size:13px;font-weight:700;letter-spacing:.04em}.trustline span+span{border-left:1px solid #7795a3;padding-left:35px}.section{padding:112px 0;scroll-margin-top:20px}.overline{margin:0 0 12px}.section h2,.image-break h2,.contact h2{font-size:clamp(32px,3.6vw,51px);line-height:1.42;letter-spacing:.02em;margin:0;font-weight:800}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:45px}.section-heading p{max-width:370px;margin:0 0 5px;color:var(--muted)}.troubles{background:#f5f8f9}.trouble-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.trouble-grid a{background:#fff;border:1px solid var(--line);min-height:295px;padding:27px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.trouble-grid a:hover{transform:translateY(-4px);box-shadow:0 12px 30px #0b25371a}.trouble-grid span{font-size:10px;color:#28859a;font-weight:800;letter-spacing:.13em}.trouble-grid h3{font-size:24px;line-height:1.46;margin:27px 0 10px}.trouble-grid p{font-size:14px;color:var(--muted);margin:0}.trouble-grid b{font-size:13px;color:#14758e;margin-top:auto;padding-top:23px}.service-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:90px}.lead{font-size:17px;line-height:2;color:#526e7e;margin:30px 0}.text-link,.proof-links a{color:#0c7892;border-bottom:1px solid #0c7892;font-size:14px;font-weight:800;padding-bottom:5px}.service-items{border-top:1px solid var(--line)}.service-items article{display:grid;grid-template-columns:55px 1fr;gap:15px;border-bottom:1px solid var(--line);padding:29px 0}.service-items article>span{color:#168298;font-weight:800;font-size:14px}.service-items h3{margin:0 0 8px;font-size:21px}.service-items p{margin:0;color:#5b7481;font-size:15px}.image-break{min-height:430px;background:var(--deep);color:white;display:grid;grid-template-columns:1fr 1fr}.image-break img{width:100%;height:430px;object-fit:cover}.image-break>div{align-self:center;max-width:550px;padding:55px 9%}.image-break .overline{color:#8bdde7}.image-break p:last-child{color:#c4d8df;line-height:2}.price{background:#edf4f5}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.price-card{padding:30px;background:#fff;border-top:3px solid #24879b}.price-card span{font-weight:800;color:#168298;font-size:13px}.price-card h3{font-size:21px;margin:18px 0 8px}.price-card p{margin:0;font-size:15px;color:#5c7582}.price-note{margin-top:17px;background:#dcebef;border-left:4px solid #278398;padding:24px 30px;display:flex;gap:28px;align-items:start}.price-note strong{min-width:230px}.price-note p{margin:0;font-size:14px;color:#425f6d}.proof{background:#0c293d;color:#fff}.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.proof .overline{color:#8bdde7}.proof p:not(.overline){color:#c5dbe2;line-height:2.1;margin:25px 0}.proof-links{display:flex;gap:25px;flex-wrap:wrap}.proof-links a{color:#b4e7ec;border-color:#b4e7ec}.proof-photos{display:grid;grid-template-columns:1.4fr 1fr;gap:10px;align-items:end}.proof-photos img{height:330px;width:100%;object-fit:cover}.proof-photos img:last-child{height:250px}.example-placeholder{border:1px solid var(--line);background:#f6f9f9;padding:30px;display:flex;gap:25px;align-items:center}.example-icon{border:1px solid #84b7c3;color:#238397;width:48px;height:48px;flex:none;display:grid;place-items:center;font-size:26px}.example-placeholder strong{font-size:18px}.example-placeholder p{color:var(--muted);margin:5px 0 0;font-size:14px}.flow{background:#f4f8f9}.flow ol{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.flow li{padding:25px;background:#fff;border:1px solid var(--line)}.flow li b{color:#138198;font-size:24px}.flow h3{font-size:18px;line-height:1.5;margin:15px 0 8px}.flow li p{font-size:14px;color:var(--muted);margin:0}.faq-grid{margin-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.faq details{border:1px solid var(--line);padding:20px 22px}.faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:10px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';color:#148198;font-size:20px}.faq details[open] summary:after{content:'−'}.faq details p{font-size:15px;color:var(--muted);margin-bottom:0}.area{background:#e6f0f2}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.area-grid p{margin:0 0 10px}.area-grid small{font-size:13px;color:var(--muted)}.contact{background:#0b273b;color:white;padding:85px 0}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}.contact .overline{color:#8bdde7}.contact p:not(.overline){color:#c4dbe2}.contact-phone{display:block;background:#b8eaf0;color:#0b2b40;padding:20px 27px}.contact-phone span{display:block;font-size:13px;font-weight:700}.contact-phone strong{display:block;font-size:clamp(25px,3vw,36px);white-space:nowrap}.contact-mail{margin-top:12px;display:flex;justify-content:space-between;border:1px solid #90b9c5;padding:17px 24px;font-size:15px;font-weight:700}.footer{background:#061925;color:#d8e5e9;padding:45px 0 23px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer-grid strong{font-size:18px}.footer-grid p{font-size:13px;color:#b3c9d1}.footer nav{display:flex;gap:25px;font-size:14px}.footer nav a:hover{text-decoration:underline}.copyright{border-top:1px solid #3b5a67;padding-top:18px;margin-top:30px;font-size:11px;color:#91acb7}.mobile-call{display:none}
@media(max-width:1050px){.header nav{display:none}.head-phone{margin-left:auto}.trouble-grid{grid-template-columns:repeat(2,1fr)}.service-layout,.proof-grid{gap:45px}}@media(max-width:700px){body{font-size:16px;padding-bottom:74px}.wrap{width:min(100% - 36px,1180px)}.header-inner{min-height:74px;padding:0 18px}.brand img{width:min(230px,49vw)}.head-phone{background:transparent;color:var(--navy);padding:0}.head-phone small{display:none}.head-phone strong{font-size:clamp(13px,4vw,17px)}.hero{min-height:720px;align-items:stretch}.hero-photo{background-position:63% top;background-size:auto 59%;background-repeat:no-repeat}.hero-shade{background:linear-gradient(0deg,#071a29 9%,#071a29 35%,#071a29b3 57%,#071a2900 84%)}.hero-content{padding:300px 0 40px}.hero h1{font-size:clamp(31px,9vw,44px)}.hero h1 br:nth-of-type(3){display:none}.hero-lead{font-size:14px;margin:17px 0}.hero-actions{gap:8px}.button{padding:11px 14px;min-width:0;font-size:13px}.button span{font-size:17px}.hero-hours{font-size:12px}.hero-edge{display:none}.trustline .wrap{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:14px 0}.trustline span,.trustline span+span{border:0;padding:0;font-size:11px}.trustline span:last-child{grid-column:1/-1}.section{padding:70px 0}.section-heading{display:block;margin-bottom:25px}.section-heading p{margin:18px 0 0}.section h2,.image-break h2,.contact h2{font-size:clamp(30px,8vw,40px)}.trouble-grid{gap:8px}.trouble-grid a{padding:18px;min-height:245px}.trouble-grid h3{font-size:19px;margin:17px 0 8px}.trouble-grid p{font-size:13px}.trouble-grid b{font-size:12px}.service-layout,.proof-grid,.area-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.lead{font-size:15px;margin:18px 0}.service-items article{padding:21px 0}.image-break{display:flex;flex-direction:column}.image-break img{height:250px}.image-break>div{padding:44px 18px}.price-grid,.flow ol{grid-template-columns:1fr;gap:9px}.price-card{padding:21px}.price-note{display:block;padding:20px}.price-note p{margin-top:7px}.proof-photos img{height:190px}.proof-photos img:last-child{height:150px}.example-placeholder{padding:18px;align-items:start;gap:12px}.example-placeholder strong{font-size:16px}.example-placeholder p{font-size:13px}.flow ol{margin-top:25px}.flow li{display:flex;gap:18px}.flow h3{margin:0}.faq-grid{grid-template-columns:1fr}.contact{padding:70px 0}.footer-grid{display:block}.footer nav{margin-top:30px;flex-wrap:wrap}.mobile-call{display:block;position:fixed;z-index:15;bottom:0;left:0;right:0;background:#b8eaf0;padding:8px 17px;box-shadow:0 -4px 25px #0925354d}.mobile-call a{display:block;text-align:center;color:#0a2b40;line-height:1.4}.mobile-call span{display:block;font-size:11px;font-weight:700}.mobile-call strong{font-size:22px;letter-spacing:.02em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.trouble-grid a{transition:none}}

.key-brand{font-size:clamp(36px,4vw,60px);font-weight:800;line-height:1.1;margin:0 0 23px;letter-spacing:-.04em}.key-brand span{color:#a7e4eb;font-size:1.18em}.key-brand small{font-size:16px;letter-spacing:.05em;margin-left:10px}.hero h1{font-size:clamp(32px,3.2vw,49px)}.hero{min-height:710px}.merger{padding:25px 0;border-bottom:1px solid #d6e2e7;background:#fff}.merger .wrap{display:grid;grid-template-columns:1fr 1.6fr;gap:25px;align-items:center}.merger strong{font-size:17px}.merger p{font-size:14px;line-height:1.8;margin:0;color:#607886}.service-items article{scroll-margin-top:30px}.hero-photo:after{content:'イメージ';position:absolute;right:15px;bottom:40px;font-size:11px;color:#fff;background:#071a2970;padding:1px 7px}@media(max-width:700px){.merger .wrap{display:block}.merger p{margin-top:7px}.hero h1{font-size:clamp(28px,8vw,39px)}.key-brand{font-size:38px;margin-bottom:19px}.key-brand small{font-size:13px}.hero-content{padding-top:275px}.hero-photo:after{bottom:auto;top:20px}.price-card p,.trouble-grid p,.flow li p{font-size:15px}}

.awareness{background:#fbf9f4;border-top:1px solid #e6d6b5}.awareness .overline{color:#8b5716}.aw-message{background:#fff0d4;border-left:4px solid #ba791b;padding:26px 30px;margin-bottom:25px}.aw-message>strong{font-size:21px}.aw-message p{font-size:16px;margin:12px 0}.aw-message a{font-size:14px;text-decoration:underline}.aw-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.aw-panel{background:#fff;border:1px solid #e0d8c9;padding:32px}.aw-number{font-size:13px;letter-spacing:.13em;color:#976118;font-weight:800}.aw-panel h3{font-size:26px;line-height:1.55;margin:13px 0 17px}.aw-panel p{font-size:16px}.aw-route{display:flex;flex-direction:column;align-items:center;background:#f2f6f7;padding:20px;margin:25px 0;gap:4px}.aw-route>div{border:1px solid #b9ccd4;padding:11px 20px;background:#fff;width:100%;text-align:center}.aw-route b,.aw-route small{display:block}.aw-route small{font-size:13px;color:#536b77}.aw-route>span{color:#607886;font-size:19px}.aw-question{padding-top:20px;border-top:1px solid #d6e2e7}.aw-fine,.aw-panel .aw-fine{font-size:13px;color:#61717b;line-height:1.9}.aw-case{margin:25px 0;padding:24px 20px;background:#fff4e3;border:1px solid #ecd3aa}.aw-case>small{font-size:13px}.aw-case>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0}.aw-case span{font-size:13px}.aw-case strong{display:block;font-size:30px;color:#8f461b;line-height:1.5}.aw-case p{font-size:13px;margin:0}.aw-cost{background:#fff;padding:34px;margin-top:24px;border:1px solid #e0d8c9}.aw-cost h3{font-size:26px;margin:0 0 25px;line-height:1.6}.aw-equation{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:16px;margin-bottom:25px}.aw-equation>div{text-align:center;background:#0d3045;color:#fff;padding:24px 15px}.aw-equation b{font-size:25px;display:block}.aw-equation small{font-size:14px;display:block;color:#c5e0e7}.aw-equation>span{font-size:25px}.aw-cost>p{max-width:950px}.aw-checklist{margin:35px 0}.aw-checklist h3{font-size:25px}.aw-checklist ul{padding:0;list-style:none;border-top:1px solid #d5cdbd}.aw-checklist li{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:20px 5px;border-bottom:1px solid #d5cdbd}.aw-checklist li b{color:#87541a}.aw-help{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff;border:1px solid #d6dcd9;padding:28px}.aw-help p{font-size:14px;margin:8px 0 0}.aw-help a{display:block;min-width:205px;border-left:1px solid #d6dcd9;padding-left:25px}.aw-help small{display:block;font-size:13px}.aw-help b{font-size:43px;line-height:1.3}.aw-help b span{font-size:14px}.aw-sources{padding:28px 0;font-size:14px}.aw-sources h3{margin-bottom:5px;font-size:18px}.aw-sources p{font-size:13px;margin-top:0;color:#607886}.aw-sources ul{padding-left:20px}.aw-sources li{margin:10px 0}.aw-sources a{text-decoration:underline;text-underline-offset:4px}.aw-pledge{border-top:1px solid #cbb995;padding:40px 0 0;max-width:850px}.aw-pledge h3{font-size:33px;line-height:1.55;margin:10px 0 18px}.aw-pledge>strong{font-size:14px}.aw-mobile{display:none}.aw-teaser{display:block;padding:14px 20px;background:#fff0d4;color:#664410;font-size:14px;font-weight:700;border:1px solid #ead4ad;margin-top:22px}.aw-teaser:hover{background:#ffe8bf}@media(max-width:700px){.aw-grid{grid-template-columns:1fr}.aw-panel,.aw-cost{padding:23px 20px}.aw-panel h3,.aw-cost h3{font-size:23px}.aw-message{padding:20px}.aw-message>strong{font-size:19px}.aw-equation{grid-template-columns:1fr;gap:5px;text-align:center}.aw-equation>div{padding:16px}.aw-equation>span{font-size:20px;line-height:1.1}.aw-equation b{font-size:22px}.aw-checklist li{grid-template-columns:1fr;gap:5px}.aw-help{display:block;padding:22px}.aw-help a{border-left:0;border-top:1px solid #d6dcd9;padding:16px 0 0;margin-top:20px;min-width:0}.aw-case strong{font-size:26px}.aw-pledge h3{font-size:29px}.aw-mobile{display:block}}

/* Trust, identification and estimate additions */
.advantages{background:#eaf2f4}.team-feature{display:grid;grid-template-columns:1fr 1.25fr;gap:48px;align-items:center;margin:42px 0}.team-feature figure,.work-gallery figure{margin:0;position:relative}.team-feature img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.team-feature h3{font-size:clamp(25px,3vw,36px);line-height:1.6}.team-feature figcaption,.work-gallery figcaption{font-size:12px;padding:7px 12px;background:#102f3d;color:#fff}.team-process{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px;font-weight:700}.team-process span{padding:10px;background:#fff}.strength-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.strength-grid article{background:white;padding:26px}.strength-grid article>span,.photo-guide-grid article>span{font-size:11px;color:#278296;font-weight:800;letter-spacing:.08em}.strength-grid h3{font-size:20px;line-height:1.65}.strength-grid p,.strength-grid small{font-size:14px}.estimate-band{margin:30px 0;background:#eaf5f6;border-left:4px solid #258ba0;padding:28px 32px}.estimate-band h3{margin:0;font-size:25px}.draft-pricing{margin:30px 0;border:1px dashed #a27a32;background:#fffaf0;padding:22px}.draft-pricing summary{cursor:pointer;font-weight:700}.draft-pricing table{width:100%;border-collapse:collapse;margin:20px 0}.draft-pricing caption{text-align:left;font-size:13px}.draft-pricing th,.draft-pricing td{text-align:left;padding:12px;border-bottom:1px solid #decfb0}.draft-pricing p{font-size:13px}.photo-guide{background:#f4f7f8}.photo-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.photo-guide-grid article{background:#fff;padding:24px}.photo-guide-grid svg{width:100%;height:auto;margin-bottom:20px}.photo-guide-grid h3{font-size:25px;margin:8px 0}.photo-guide-grid p{font-size:15px}.photo-note{padding:24px 0 30px}.photo-note h3{font-size:25px;line-height:1.6}.work-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work-gallery img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.qualification{margin-top:28px}.credential-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0}.credential-grid>div{background:#eef5f6;padding:22px}.credential-grid b{font-size:19px}.credential-grid p,.credential-sources{font-size:14px}.credential-sources a{text-decoration:underline}
@media(max-width:850px){.strength-grid{grid-template-columns:repeat(2,1fr)}.team-feature{gap:25px}.photo-guide-grid{gap:12px}.photo-guide-grid article{padding:16px}.credential-grid{grid-template-columns:1fr}}
@media(max-width:600px){.team-feature,.strength-grid,.photo-guide-grid{grid-template-columns:1fr}.team-feature{gap:15px}.team-feature img{height:auto;aspect-ratio:auto}.work-gallery{gap:8px}.work-gallery figcaption{padding:6px;font-size:10px}.estimate-band{padding:22px}.draft-pricing{padding:15px}.draft-pricing th,.draft-pricing td{padding:10px 5px;font-size:13px}.photo-guide-grid svg{max-height:210px}.photo-note h3{font-size:22px}.strength-grid article{padding:22px}}

/* Compact desktop composition; preserve the entire staff photograph. */
@media(min-width:701px){
.section{padding:64px 0}
.section-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:32px;margin-bottom:28px}
.section-heading p{max-width:none;margin:0}
.section h2,.image-break h2,.contact h2{font-size:clamp(30px,3vw,44px)}
.service-layout{grid-template-columns:1fr 1.2fr;gap:44px;align-items:start}
.service-items article{padding:20px 0}
.lead{margin:20px 0}
.trouble-grid a{min-height:250px;padding:23px}
.trouble-grid h3{margin-top:18px}
.team-feature{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:32px;margin:28px 0;align-items:center}
.team-feature h3{margin:12px 0 18px;font-size:clamp(25px,2.6vw,34px);line-height:1.5}
.team-feature>div>p:not(.overline){margin:0 0 20px}
.strength-grid{gap:12px}
.strength-grid article{padding:22px}
.strength-grid h3{margin:12px 0}
.strength-grid p{margin:0 0 12px}
.price-card{padding:24px}
.price-card h3{margin:12px 0 8px}
.proof-grid,.area-grid{gap:36px}
.proof-photos img,.proof-photos img:last-child{height:auto;object-fit:contain}
.proof-photos{align-items:center}
.contact{padding:56px 0}
.contact-grid{gap:36px}
.flow ol,.faq-grid{margin-top:26px}
.aw-panel{padding:26px}
.aw-route{flex-direction:row;gap:8px;padding:14px;margin:20px 0}
.aw-route>div{padding:10px 8px;flex:1;min-width:0}
.aw-route>span{font-size:0}
.aw-route>span:after{content:'→';font-size:18px}
.aw-route b{font-size:14px}
.aw-route small{font-size:11px}
.aw-help{padding:22px}
.aw-sources{padding:20px 0}
.aw-pledge{max-width:none;display:grid;grid-template-columns:1fr 1.2fr;column-gap:36px;padding-top:28px}
.aw-pledge .overline{grid-column:1/-1}
.aw-pledge h3{grid-column:1;grid-row:2 / span 2;margin:0;font-size:30px}
.aw-pledge>p:not(.overline){grid-column:2;margin:0 0 14px}
.aw-pledge>strong{grid-column:2}
}
@media(min-width:1600px){.wrap{width:min(1280px,calc(100% - 96px))}}
@media(max-width:700px){.section{padding:48px 0}.team-feature{margin:24px 0;gap:24px;grid-template-columns:1fr}.team-feature figure{width:100%;max-width:460px;margin-inline:auto}.team-feature h3{margin:12px 0 16px}.contact{padding:48px 0}}

/* Persistent, accessible telephone contact on desktop and mobile. */
body{padding-bottom:112px}
html{scroll-padding-bottom:125px}
.head-phone strong{font-size:27px}
.head-phone small{color:#d4edf1}
.head-phone .store-note{font-size:10px;margin-top:5px}
.button .hero-phone-label{font-size:13px;line-height:1.5}
.hero-phone-label strong{display:block;font-size:28px;letter-spacing:.025em}
.contact-phone small{display:block;font-size:12px;margin-top:7px}
.call-dock{position:fixed;z-index:50;inset:auto 0 0;background:#fff;border-top:4px solid #1d8ea3;box-shadow:0 -5px 24px #082d4426;color:#0b2537;padding:12px 24px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
.call-dock-inner{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:center;gap:30px}
.dock-intro{margin:0;font-size:12px;line-height:1.7}
.dock-intro strong{display:block;font-size:18px}
.dock-number{display:flex;align-items:center;justify-content:center;gap:10px;background:#0b354b;color:#fff;border-radius:6px;padding:7px 24px;font-weight:800;font-size:clamp(30px,3.2vw,43px);line-height:1.4;white-space:nowrap;letter-spacing:.015em}
.dock-number:hover{background:#13536b}
.dock-number svg{width:29px;height:29px;flex:none}
.dock-hours strong{display:block;font-size:19px}
.dock-hours strong span{font-size:13px;background:#e2f2f4;padding:3px 7px;margin-left:7px}
.dock-hours small{display:block;font-size:12px;margin-top:4px}
@media(max-width:1050px){.dock-intro{display:none}.call-dock-inner{gap:22px}}
@media(max-width:700px){
body{padding-bottom:calc(126px + env(safe-area-inset-bottom))}
html{scroll-padding-bottom:140px}
.head-phone strong{font-size:clamp(14px,3.6vw,20px)}
.head-phone .store-note{display:none}
.call-dock{padding:7px 14px;padding-bottom:calc(7px + env(safe-area-inset-bottom));border-top-width:3px}
.call-dock-inner{display:flex;flex-direction:column;gap:4px}
.dock-number{width:100%;max-width:440px;font-size:clamp(27px,8vw,36px);padding:4px 10px;line-height:1.3}
.dock-number svg{width:24px;height:24px}
.dock-hours{text-align:center;line-height:1.5}
.dock-hours strong{font-size:14px}
.dock-hours strong span{font-size:12px;padding:1px 5px}
.dock-hours small{font-size:11px;margin-top:1px}
.hero-phone-label strong{font-size:25px}
}
@media print{.call-dock{display:none}body{padding-bottom:0}}

/* October 3: expanded announcement and mobile readability. */
.merger{padding:30px 0}.merger .wrap{display:block;max-width:1180px}.merger strong{display:block;margin-bottom:14px;font-size:20px}.merger p+p{margin-top:12px}.heading-phrase{display:inline-block;white-space:nowrap}.team-feature h3,.area h2,.contact h2{line-height:1.4}
@media(max-width:700px){
.hero{display:block;min-height:0;overflow:visible}
.hero-photo{position:relative;inset:auto;width:100%;aspect-ratio:1672 / 941;background-size:contain;background-position:center;background-repeat:no-repeat}
.hero-shade{display:none}
.hero-photo:after{top:auto;bottom:8px;right:10px}
.hero-content{padding:26px 0 32px}
.hero h1{font-size:clamp(27px,7.5vw,39px)}
.team-feature h3{font-size:clamp(20px,5.7vw,30px);letter-spacing:0;line-height:1.4}
.area h2{font-size:clamp(24px,7vw,36px);letter-spacing:0;line-height:1.4}
.contact h2{font-size:clamp(19px,5.65vw,32px);letter-spacing:0;line-height:1.4}
.merger strong{font-size:18px}.merger p{font-size:14px;line-height:1.9}
}
