:root{--navy:#101d39;--gold:#b69b47;--sky:#edf5f9;--ink:#1c2c43;--muted:#526273;--line:#d5dfe4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9;background:#fff}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:5px}button,input{font:inherit}a,button,input,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #267aac;outline-offset:5px}h1,h2,h3,p{margin:0 0 24px}h1,h2,h3{line-height:1.55;letter-spacing:.035em}h2{font-size:clamp(26px,2.55vw,38px);font-weight:700}h3{font-size:20px}p:last-child{margin-bottom:0}.wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}.section{padding-block:100px}.pale{background:var(--sky)}.navy{background:var(--navy);color:white}.eyebrow{font-size:12px;letter-spacing:.19em;color:#746022;font-weight:700;margin-bottom:22px}.navy .eyebrow{color:#dacb96}.lead{font-size:19px;font-weight:600}.note{font-size:14px;color:var(--muted);line-height:1.8}.navy .note{color:#d0d8e3}.header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 4%;background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e8edf0}.brand{display:flex;align-items:center;text-decoration:none;gap:15px;flex-shrink:0}.brand img{width:95px;height:65px;object-fit:contain}.brand span{font-size:16px;font-weight:700}.brand small{display:block;font-weight:400;font-size:11px;letter-spacing:.04em}.header nav{display:flex;gap:24px;font-size:14px}.header nav a{text-decoration:none}.header nav a:hover{color:#866c20}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:19px 25px;min-height:56px;background:var(--navy);color:white;border:1px solid var(--navy);text-decoration:none;font-size:16px;font-weight:700;line-height:1.7;border-radius:3px;cursor:pointer;transition:background .2s}.button:hover{background:#293e5b}.button span{margin-left:auto}.compact{padding:13px 18px;font-size:14px}.text-link{display:block;width:fit-content;font-weight:600;margin-top:20px;font-size:15px}.hero{display:grid;grid-template-columns:1.08fr 1fr;min-height:650px;position:relative;background:#f8fafb}.hero-copy{padding:62px 30px 58px max(32px,calc((100vw - 1160px)/2));position:relative;z-index:1}.hero-label{font-size:14px;letter-spacing:.08em}.hero h1{font-size:clamp(30px,2.7vw,42px);letter-spacing:0;line-height:1.7;white-space:nowrap;margin-bottom:23px}.hero h1 span{background:linear-gradient(transparent 77%,#e6dbb9 77%)}.hero-sub{font-size:21px;font-weight:700;line-height:1.7}.hero-copy>p:not(.hero-sub){font-size:14px}.hero-actions{margin-top:30px}.hero-actions .button{font-size:14px}.hero .note{margin-top:18px}.hero-visual{position:relative;overflow:hidden}.hero-visual>img{height:100%;width:100%;object-fit:cover;object-position:60% center}.visual-caption{position:absolute;bottom:34px;right:30px;background:#fffffff2;padding:20px 28px;font-size:14px;letter-spacing:.1em;border-left:3px solid var(--gold)}.visual-caption strong{font-size:20px}.select{padding-block:56px}.select h2{font-size:22px;text-align:center;margin-bottom:26px}.select-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.select-grid a{display:grid;grid-template-columns:1fr auto;text-decoration:none;padding:25px 30px;border:1px solid var(--line);border-top:3px solid var(--gold);align-items:center}.select-grid a:last-child{border-top-color:#5e899f}.select-grid small{font-size:11px;letter-spacing:.15em;grid-column:1/-1;color:var(--muted)}.select-grid strong{font-size:24px}.select-grid span{font-size:14px;grid-column:1/-1}.select-grid b{font-size:13px;grid-column:2;grid-row:2}.problems{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:45px}.problems>div{border-top:1px solid #aac0cd;padding-top:24px}.problems h3{font-size:19px}.problems ul{padding-left:21px;margin:0}.problems li{padding:7px 0}.problems li::marker{color:var(--gold)}.method{text-align:center}.method .lead{font-weight:400;color:var(--muted)}.system-image{max-width:850px;width:100%;margin:-15px auto -22px}.equation{display:grid;grid-template-columns:1fr 60px 1fr;max-width:870px;margin:auto;align-items:center}.equation>div{padding:26px;background:#faf8f1;border-top:3px solid var(--gold)}.equation>div:last-child{background:var(--sky);border-color:#57849a}.equation h3{margin-bottom:12px;font-size:25px}.tag{font-size:15px;font-weight:700;color:#746022}.tag.blue{color:#345f78}.times{font-size:32px;color:var(--gold)}.method-result>span{display:block;margin:18px;font-size:30px;color:var(--gold)}.method-result h3{font-size:30px}.customer{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}.customer h2{font-size:30px}.customer p{color:#e0e7ee}.options{list-style:none;margin:0 0 28px;padding:0}.options li{padding:15px 0;border-bottom:1px solid #405069}.options li::before{content:'＋';color:#dacb96;margin-right:18px}.service{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.service h2{font-size:29px}.service-image img{aspect-ratio:1.13;object-fit:cover}.service-image span{display:block;font-size:11px;letter-spacing:.17em;margin-top:15px;color:var(--muted)}.service p{margin-bottom:22px}.service .button{font-size:14px;padding:17px 20px;width:100%}.service .note{margin-top:15px}.reverse .service-image{order:2}.business-types{font-size:14px;border-left:2px solid var(--gold);padding-left:18px}.opinion{display:grid;grid-template-columns:1.15fr 1fr;background:#f8f5eb;border-top:4px solid var(--gold);align-items:center}.opinion>div{padding:46px}.opinion h2{font-size:29px}.opinion-label{font-size:14px;font-weight:700}.opinion img{height:100%;object-fit:cover}.opinion p{font-size:15px}.faq{max-width:900px;padding-top:20px}.faq h2{margin-bottom:45px}.faq details{border-top:1px solid var(--line);padding:0 7px}.faq details:last-child{border-bottom:1px solid var(--line)}summary{padding:25px 28px 25px 40px;cursor:pointer;list-style:none;position:relative;font-weight:600}summary::-webkit-details-marker{display:none}summary:before{content:'Q';position:absolute;left:0;color:#816920;font-family:Georgia,serif;font-size:22px}summary:after{content:'＋';position:absolute;right:0}details[open] summary:after{content:'−'}.faq details p{padding:0 28px 25px 40px;color:var(--muted);margin:0}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;list-style:none;margin:42px 0 32px;padding:0}.flow li{border-top:1px solid #aac0cd;padding-top:22px}.flow span{font:36px Georgia,serif;color:#806c32}.flow h3{font-size:18px;margin:16px 0 8px}.flow p{font-size:14px}.flow-decision{background:white;text-align:center;padding:30px}.flow-decision strong{font-size:19px}.flow-decision p{font-size:14px;margin-top:10px}.story{background:linear-gradient(#fffffff0,#ffffffec),url('assets/arc-bridge-background.webp') center/cover}.story-grid{display:grid;grid-template-columns:340px 1fr;gap:95px;align-items:center}.story figure{margin:0}.story figure img{width:100%;height:auto}.story figcaption{padding-top:18px;font-size:14px}.story figcaption strong{display:block;font-size:23px;letter-spacing:.15em;margin-top:6px}.story h3{margin:30px 0 15px}.company{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-top:1px solid var(--line)}dl{margin:0}dl>div{display:grid;grid-template-columns:120px 1fr;border-bottom:1px solid var(--line);padding:20px 0}dt{font-size:14px;font-weight:700}dd{margin:0}.final-cta{text-align:center}.final-cta h2{font-size:36px}.final-cta h3{margin-top:32px}.gold{background:#d8be70;color:var(--navy);border-color:#d8be70}.gold:hover{background:#e7d392}.final-cta .text-link{margin:20px auto}.final-cta .note{margin-top:36px}.form-wrap{width:min(780px,calc(100% - 48px));margin:auto}.form-wrap>h2{font-size:34px}.form-notice{padding:16px 20px;border-left:3px solid var(--gold);background:white;font-size:14px}fieldset{border:0;padding:32px 0;margin:0;border-bottom:1px solid var(--line);min-width:0}legend{float:left;width:100%;font-size:18px;font-weight:700;margin-bottom:22px}legend+*{clear:both}.step{font-family:Georgia,serif;color:#756026;font-size:25px;margin-right:16px}.required,.optional{font-size:12px;font-weight:400;white-space:nowrap;margin-left:8px}.required{color:#914226}.optional{color:var(--muted)}.choices{display:grid;gap:12px}.two,.interests{grid-template-columns:1fr 1fr}.choices label{display:flex;gap:12px;align-items:center;background:white;border:1px solid #aabac5;padding:16px;line-height:1.6;cursor:pointer}.choices label:has(input:checked){border-color:var(--navy);background:#e0ebf2}.choices input,input[type=checkbox]{width:19px;height:19px;flex-shrink:0;accent-color:var(--navy)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field label{display:block;margin-bottom:8px;font-weight:600}.field input:not([type=file]){width:100%;min-height:52px;border:1px solid #94a7b4;background:white;padding:10px 12px;border-radius:3px}.field input[aria-invalid=true]{border:2px solid #a52828}.upload{margin-top:26px}.upload input{max-width:100%;font-size:14px}.upload input::file-selector-button{padding:12px;margin-right:12px;border:1px solid #94a7b4;background:white;color:var(--navy);border-radius:3px;cursor:pointer}.error{color:#a52828;font-size:14px;line-height:1.7;margin:7px 0 0}.error:empty{display:none}.consent{margin:30px 0}.consent label{display:flex;align-items:center;gap:10px;margin-top:18px}.consent>p,.consent>a{font-size:14px}.submit{width:100%}.submit:disabled{cursor:wait;opacity:.65}.status{margin-top:18px;white-space:pre-line;font-size:15px}.status:not(:empty){padding:20px;background:white;border-left:3px solid var(--gold)}.footer{display:flex;justify-content:space-between;align-items:center;padding-block:35px}.footer p{font-size:12px;margin:0}.footer .brand img{width:105px}.mobile,.mobile-cta{display:none}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:20px;background:white;z-index:30;padding:15px}.skip:focus{top:10px}
@media(min-width:1500px){.hero-copy{padding-right:50px}.hero{min-height:720px}}@media(max-width:1150px){.header nav{display:none}.hero h1{font-size:30px}.hero-copy{padding-left:32px}.hero{grid-template-columns:1.2fr 1fr}.select-grid b{grid-column:1/-1;grid-row:auto;margin-top:12px}.customer,.story-grid{gap:45px}.service{gap:35px}.opinion>div{padding:30px}.opinion h2{font-size:26px}.hero-actions .button{padding:16px}}@media(max-width:800px){html{scroll-padding-top:90px}.header{height:80px;padding:8px 24px}.brand img{width:77px;height:56px}.brand span{font-size:14px}.brand small{font-size:10px}.compact{font-size:12px;padding:10px;min-height:44px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 32px}.hero h1{font-size:38px}.hero-visual{height:340px}.hero-visual>img{object-position:center}.visual-caption{bottom:22px;right:25px}.section{padding-block:70px}.customer{grid-template-columns:1fr;gap:25px}.service{grid-template-columns:1fr;gap:30px}.service-image img{aspect-ratio:16/9}.reverse .service-image{order:0}.opinion{grid-template-columns:1fr}.opinion img{max-height:340px;width:100%;object-position:center}.problems{gap:30px}.story-grid{grid-template-columns:240px 1fr;gap:35px}.story h2{font-size:29px}.story p{font-size:15px}.company{grid-template-columns:1fr;gap:15px}.flow{grid-template-columns:1fr 1fr}.final-cta h2{font-size:30px}.faq{padding-top:20px}.footer .brand small{max-width:210px}.hero-copy>p:not(.hero-sub){font-size:16px}}
@media(max-width:540px){body{padding-bottom:84px;line-height:1.85}.wrap{width:calc(100% - 40px)}.header{height:74px;padding:7px 20px}.header>.button{display:none}.header .brand{gap:12px}.header .brand img{width:75px;height:54px}.brand small{font-size:11px}.hero-copy{padding:32px 20px 30px}.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:18px}.hero-label{font-size:12px!important;margin-bottom:18px}.hero h1{font-size:26px;white-space:normal;line-height:1.7;letter-spacing:-.025em}.hero-sub{font-size:18px}.hero-copy>p:not(.hero-sub){font-size:16px}.hero-copy>p br:not(.desktop){display:none}.desktop{display:none}.hero-actions{margin-top:24px}.hero-actions .button{font-size:15px;padding:15px 18px}.hero .note{font-size:13px!important}.hero-visual{height:250px}.visual-caption{padding:12px 17px;bottom:20px;right:20px;font-size:12px}.visual-caption strong{font-size:16px}.section{padding-block:60px}.select{padding-block:36px}.select h2{font-size:20px}.select-grid{grid-template-columns:1fr;gap:14px}.select-grid a{padding:18px 22px}.select-grid strong{font-size:22px}.select-grid b{grid-row:auto;grid-column:1/-1;font-size:14px;margin-top:10px}.select-grid span{font-size:14px}.problems{grid-template-columns:1fr;gap:28px;margin-top:28px}.problems h3{margin-bottom:12px}.problems li{font-size:16px}.method .lead{font-size:16px}.system-image{margin:0 auto 18px}.equation{grid-template-columns:1fr;gap:0}.equation>div{padding:22px}.equation h3{font-size:23px}.times{font-size:26px;line-height:1.8}.method-result h3{font-size:25px}.method-result p{font-size:16px}.customer h2,.service h2,.opinion h2{font-size:26px}.lead{font-size:18px}.service .button{font-size:15px}.opinion>div{padding:27px 22px}.opinion p{font-size:16px}.opinion .eyebrow{font-size:10px}.opinion img{height:240px}.opinion .button{font-size:15px;width:100%;padding:16px}.faq{padding-top:0}.faq h2{font-size:25px;margin-bottom:25px}.faq summary{font-size:16px;padding-left:30px}.faq details p{padding-left:30px;padding-right:10px}.flow{gap:22px 17px}.flow h3{font-size:16px}.flow span{font-size:30px}.flow-decision{padding:24px 16px}.flow-decision strong{font-size:17px}.story-grid{grid-template-columns:1fr;gap:36px}.story figure{width:72%;margin:auto}.story figure img{aspect-ratio:2/3}.story p{font-size:16px}.story h2{font-size:30px}.company dl>div{grid-template-columns:1fr;gap:8px}.company dd{font-size:16px}.final-cta h2{font-size:25px}.final-cta p{font-size:16px}.final-cta p br{display:none}.final-cta h3{font-size:21px}.final-cta .button{font-size:15px;padding:18px}.final-cta .note{font-size:13px}.mobile{display:block}.form-wrap{width:calc(100% - 40px)}.form-wrap>h2{font-size:29px}.two{grid-template-columns:1fr 1fr}.choices label{font-size:15px;padding:13px 11px;gap:8px}.interests,.form-grid{grid-template-columns:1fr}legend{font-size:17px}.step{margin-right:8px;font-size:23px}.consent label{align-items:flex-start;font-size:14px}.consent input{margin-top:4px}.consent .required{margin-left:0}.footer{display:block}.footer p{margin-top:20px}.footer .brand small{font-size:10px}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;background:#fffffff5;padding:10px 20px calc(10px + env(safe-area-inset-bottom));z-index:20;border-top:1px solid var(--line)}.mobile-cta .button{width:100%;padding:12px 22px;min-height:52px;font-size:16px}.mobile-cta.is-hidden{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Keep the hero's supporting copy and intentional mobile line breaks legible. */
.hero-copy>p.eyebrow{font-size:12px}
@media(max-width:540px){.hero-copy>p.eyebrow{font-size:10px;white-space:nowrap}.hero-copy>p.hero-sub br{display:block}.hero h1{font-size:28px}.hero-copy{padding-top:26px}.hero-copy>p:not(.hero-sub):not(.eyebrow):not(.hero-label):not(.note){font-size:16px}.hero-actions .button{gap:12px;padding-inline:14px}}

.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

/* Operator-provided replacement portrait: keep the complete 3:2 photo. */
.story figure img{aspect-ratio:3/2;height:auto;object-fit:contain}
@media(max-width:540px){.story figure{width:100%}}
