﻿/* Shared application details */
.use-proof .sp-heading h2,.use-faq .sp-heading h2{max-width:950px}.use-number-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #4b4e4c}.use-number-grid article{min-height:300px;padding:25px;border-right:1px solid #4b4e4c}.use-number-grid strong{font:700 clamp(44px,5vw,72px) var(--sans);letter-spacing:-.07em;color:var(--acid)}.use-number-grid small{font-size:.28em}.use-number-grid h3{margin:70px 0 10px;font-size:18px}.use-number-grid p{margin:0;color:#a9adaa;font-size:11px}.use-case-split{display:grid;grid-template-columns:1.15fr .85fr;min-height:820px;background:var(--acid)}.use-case-split>figure{position:relative;overflow:hidden}.use-case-split>figure img{height:100%;object-fit:cover}.use-case-split figcaption{position:absolute;left:15px;bottom:15px;padding:10px;color:#fff;background:#111;font:700 8px var(--sans)}.use-case-split>div{display:flex;flex-direction:column;justify-content:center;padding:80px 5vw}.use-case-split>div>p:first-child{font:600 9px var(--sans);letter-spacing:.15em}.use-case-split h2{margin:28px 0;font-size:clamp(55px,6vw,86px);line-height:1.02;letter-spacing:-.07em}.use-case-split>div>p:nth-of-type(2){font-size:13px;line-height:2}.use-case-split dl{margin:25px 0;border-top:1px solid rgba(17,19,19,.4)}.use-case-split dl div{display:grid;grid-template-columns:110px 1fr;padding:12px 0;border-bottom:1px solid rgba(17,19,19,.4)}.use-case-split dt{font:600 9px var(--sans)}.use-case-split dd{margin:0;font-size:11px}.use-case-split a{align-self:flex-start;padding:15px 18px;color:#fff;background:#111;font-size:11px;font-weight:800}.use-faq-list{border-top:1px solid var(--ink)}.use-faq-list details{border-bottom:1px solid var(--ink)}.use-faq-list summary{display:grid;grid-template-columns:75px 1fr;padding:28px 0;cursor:pointer;list-style:none;font-size:18px;font-weight:800}.use-faq-list summary span{font:600 9px var(--sans);color:#777}.use-faq-list details p{max-width:850px;margin:0 0 28px 75px;font-size:13px;line-height:2}

/* Parking 窶・operational / caution */
.parking-hero{min-height:100svh;display:grid;grid-template-columns:.82fr 1.18fr;padding-top:82px;color:#fff;background:#0b0c0c}.parking-copy{display:flex;flex-direction:column;justify-content:center;padding:70px 5vw}.parking-copy>p:first-child{font:600 9px var(--sans);letter-spacing:.17em;color:var(--acid)}.parking-copy h1{margin:38px 0;font-size:clamp(62px,7vw,104px);line-height:.94;letter-spacing:-.075em}.parking-copy h1 span{display:block;white-space:nowrap}.parking-copy h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.5px var(--acid)}.parking-copy>p:nth-of-type(2){max-width:480px;color:#b7bbb8;font-size:14px;line-height:2}.parking-copy>div{display:flex;align-items:end;gap:20px;margin-top:35px;padding-top:20px;border-top:1px solid #454846}.parking-copy strong{font:700 56px var(--sans);color:var(--acid)}.parking-copy small{font-size:.3em}.parking-copy>div span{padding-bottom:8px;font:600 9px/1.5 var(--sans);letter-spacing:.1em}.parking-hero figure{position:relative;overflow:hidden;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}.parking-hero figure img{height:100%;object-fit:cover}.parking-hero figcaption{position:absolute;right:15px;bottom:15px;padding:10px;color:#111;background:var(--acid);font:700 8px var(--sans)}.parking-failure{display:grid;grid-template-columns:.9fr 1.1fr;padding:110px max(32px,calc((100vw - 1320px)/2));background:var(--acid)}.parking-failure>div>p{font:600 9px var(--sans);letter-spacing:.15em}.parking-failure h2{font-size:clamp(48px,5.5vw,80px);line-height:1.03;letter-spacing:-.07em}.parking-failure ol{margin:0;padding:0;list-style:none;border-top:1px solid rgba(17,19,19,.45)}.parking-failure li{display:grid;grid-template-columns:50px 1fr;gap:5px;padding:20px 0;border-bottom:1px solid rgba(17,19,19,.45)}.parking-failure li b{grid-row:1/3;font:600 9px var(--sans)}.parking-failure li strong{font-size:17px}.parking-failure li span{font-size:11px}.parking-process ol{display:grid;grid-template-columns:repeat(5,1fr);padding:0;list-style:none;border-top:1px solid var(--ink)}.parking-process li{min-height:270px;padding:25px;border-right:1px solid var(--line)}.parking-process li span{font:600 9px var(--sans);color:#777}.parking-process h3{margin:75px 0 12px;font-size:17px}.parking-process li p{font-size:11px;color:#747975}

/* Bridge 窶・evidence / infrastructure */
.bridge-hero{position:relative;min-height:100svh;padding-top:82px;color:#fff;background:#0b0c0c;overflow:hidden}.bridge-hero>figure{position:absolute;inset:82px 0 0 42%;overflow:hidden}.bridge-hero>figure::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b0c0c,transparent 35%)}.bridge-hero>figure img{height:100%;object-fit:cover}.bridge-hero figcaption{position:absolute;z-index:2;right:15px;bottom:15px;padding:10px;color:#111;background:var(--acid);font:700 8px var(--sans)}.bridge-hero>div{position:relative;z-index:2;width:60%;padding:18vh 0 0 6vw}.bridge-hero>div>p:first-child{font:600 9px var(--sans);letter-spacing:.17em;color:var(--acid)}.bridge-hero h1{margin:40px 0;font-size:clamp(65px,7.6vw,112px);line-height:.94;letter-spacing:-.075em}.bridge-hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.5px var(--acid)}.bridge-hero>div>p:last-child{max-width:500px;color:#b8bcba;font-size:14px;line-height:2}.bridge-hero aside{position:absolute;z-index:3;left:6vw;bottom:35px;display:flex;align-items:end;gap:18px}.bridge-hero aside span{padding:10px;background:var(--acid);color:#111;font:700 10px var(--sans)}.bridge-hero aside strong{font:700 24px var(--sans)}.bridge-hero aside small{padding-bottom:3px;font-size:9px;color:#999}.bridge-cycle{display:grid;grid-template-columns:.75fr 1.25fr;padding:120px max(32px,calc((100vw - 1320px)/2));background:var(--paper)}.bridge-cycle>div:first-child p,.bridge-case>div>p:first-child{font:600 9px var(--sans);letter-spacing:.15em}.bridge-cycle h2{font-size:clamp(48px,5vw,76px);line-height:1.03;letter-spacing:-.07em}.bridge-cycle-flow{display:flex;align-items:center}.bridge-cycle-flow article{flex:1;min-height:230px;padding:25px;border:1px solid var(--ink)}.bridge-cycle-flow article b{font:600 9px var(--sans);color:#777}.bridge-cycle-flow h3{margin-top:95px;font-size:16px}.bridge-cycle-flow i{padding:12px;font-style:normal}.bridge-test{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;border-top:1px solid #4b4e4c;padding-top:35px}.bridge-test>strong{font:700 clamp(70px,11vw,160px)/.8 var(--sans);letter-spacing:-.09em;color:var(--acid)}.bridge-test>span{writing-mode:vertical-rl;font:600 9px var(--sans);letter-spacing:.15em;color:#777}.bridge-test>div{padding-left:45px;color:#b0b4b1;font-size:12px}.bridge-public{display:grid;grid-template-columns:.4fr 1.6fr}.bridge-public>div:last-child{display:grid;grid-template-columns:1.1fr .9fr;gap:45px}.bridge-public h2{margin:0;font-size:clamp(58px,6.5vw,94px);line-height:1;letter-spacing:-.07em}.bridge-public dl{margin:0;border-top:1px solid var(--ink)}.bridge-public dl div{display:grid;grid-template-columns:120px 1fr;padding:14px 0;border-bottom:1px solid var(--line)}.bridge-public dt{font:600 9px var(--sans)}.bridge-public dd{margin:0;font-size:12px}.bridge-public>div>p{grid-column:2;font-size:12px}.bridge-case{display:grid;grid-template-columns:.8fr 1.2fr;min-height:780px;background:var(--acid)}.bridge-case>div{display:flex;flex-direction:column;justify-content:center;padding:80px 5vw}.bridge-case h2{font-size:clamp(58px,6vw,90px);line-height:1;letter-spacing:-.07em}.bridge-case>div>p:nth-of-type(2){font-size:13px;line-height:2}.bridge-case a{align-self:flex-start;margin-top:20px;padding:15px 18px;color:#fff;background:#111;font-size:11px;font-weight:800}.bridge-case figure{position:relative;overflow:hidden}.bridge-case figure img{height:100%;object-fit:cover}.bridge-case figcaption{position:absolute;right:15px;bottom:15px;padding:10px;color:#111;background:var(--acid);font:700 8px var(--sans)}.bridge-ref-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:10px}.bridge-ref-grid figure{height:400px;overflow:hidden}.bridge-ref-grid img{height:100%;object-fit:cover}.bridge-reference .sp-note{margin-top:15px}

/* Truck 窶・before/after / motion */
.truck-hero{min-height:100svh;display:grid;grid-template-columns:.78fr 1.22fr;padding-top:82px;background:var(--acid)}.truck-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px 5vw}.truck-hero-copy>p:first-child,.truck-impact>div>p:first-child,.truck-cost>div>p:first-child{font:600 9px var(--sans);letter-spacing:.17em}.truck-hero h1{margin:38px 0;font-size:clamp(60px,6.8vw,100px);line-height:.94;letter-spacing:-.075em}.truck-hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.8px #111}.truck-hero-copy>p:nth-of-type(2){max-width:470px;font-size:14px;line-height:2}.truck-hero-copy>div{display:flex;align-items:end;gap:20px;margin-top:35px;padding-top:20px;border-top:1px solid rgba(17,19,19,.4)}.truck-hero-copy strong{font:700 55px var(--sans)}.truck-hero-copy small{font-size:.3em}.truck-hero-copy>div span{padding-bottom:7px;font:600 9px/1.4 var(--sans)}.truck-hero-images{display:grid;grid-template-columns:1fr 1fr}.truck-hero-images figure{position:relative;overflow:hidden}.truck-hero-images img{height:100%;object-fit:cover}.truck-hero-images figcaption{position:absolute;left:0;bottom:0;padding:10px 14px;color:#fff;background:#111;font:700 9px var(--sans)}.truck-question{display:grid;grid-template-columns:.4fr 1.6fr}.truck-question>div:last-child{display:grid;grid-template-columns:1.1fr .9fr;gap:60px}.truck-question h2{grid-column:1/-1;margin:0;font-size:clamp(58px,6.7vw,96px);line-height:1;letter-spacing:-.07em}.truck-question>div>p{margin:0;font-size:14px;line-height:2}.truck-targets{display:flex;flex-wrap:wrap;align-content:flex-start;gap:7px}.truck-targets span{padding:9px 11px;border:1px solid var(--ink);font:600 8px var(--sans);letter-spacing:.1em}.truck-impact{display:grid;grid-template-columns:1.15fr .85fr;min-height:800px;color:#fff;background:#111}.truck-impact figure{position:relative;overflow:hidden}.truck-impact figure img{height:100%;object-fit:cover}.truck-impact figcaption{position:absolute;left:15px;bottom:15px;padding:10px;color:#111;background:var(--acid);font:700 8px var(--sans)}.truck-impact>div{display:flex;flex-direction:column;justify-content:center;padding:70px 5vw}.truck-impact h2{font-size:clamp(55px,5.5vw,82px);line-height:1.02;letter-spacing:-.07em}.truck-impact ul{padding:0;list-style:none;border-top:1px solid #4b4e4c}.truck-impact li{display:grid;grid-template-columns:45px 1fr;padding:17px 0;border-bottom:1px solid #4b4e4c}.truck-impact li b{font:600 9px var(--sans);color:var(--acid)}.truck-impact li span{font-size:13px}.truck-gallery-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-auto-rows:320px;gap:9px}.truck-gallery-grid figure{position:relative;overflow:hidden}.truck-gallery-grid figure:first-child{grid-row:span 2}.truck-gallery-grid img{height:100%;object-fit:cover}.truck-gallery-grid figcaption{position:absolute;left:0;bottom:0;padding:10px;color:#111;background:var(--acid);font:700 8px var(--sans)}.truck-cost{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;padding:110px max(32px,calc((100vw - 1320px)/2));background:var(--acid)}.truck-cost h2{font-size:clamp(55px,6vw,88px);line-height:1.02;letter-spacing:-.07em}.truck-cost>p{font-size:14px;line-height:2}

@media(max-width:960px){.parking-hero,.truck-hero{padding-top:70px}.bridge-hero{padding-top:70px}.parking-failure,.bridge-cycle,.bridge-public,.truck-question{grid-template-columns:1fr}.parking-failure ol,.bridge-cycle-flow,.bridge-public>div:last-child,.truck-question>div:last-child{margin-top:35px}.parking-process ol{grid-template-columns:repeat(3,1fr)}.use-case-split,.bridge-case,.truck-impact{grid-template-columns:1fr}.use-case-split>figure,.bridge-case figure,.truck-impact figure{min-height:65vw}.bridge-public>div:last-child{grid-template-columns:1fr}.bridge-public>div>p{grid-column:1}.bridge-hero>div{width:75%}.truck-hero-images{min-height:700px}.truck-cost{grid-template-columns:1fr}.truck-cost>p{margin-top:30px}}
@media(max-width:640px){.parking-hero,.truck-hero{display:block;min-height:0}.parking-copy,.truck-hero-copy{min-height:650px;padding:120px 20px 80px}.parking-copy h1,.truck-hero h1{font-size:55px}.parking-hero figure{height:80vw;clip-path:none}.truck-hero-images{min-height:0;height:120vw}.parking-failure,.bridge-cycle,.truck-cost{padding:80px 20px}.parking-failure h2,.bridge-cycle h2{font-size:48px}.use-number-grid,.parking-process ol{grid-template-columns:1fr 1fr}.use-number-grid article{min-height:230px}.use-number-grid h3{margin-top:45px}.parking-process li{min-height:220px}.parking-process h3{margin-top:50px}.use-case-split>figure,.bridge-case figure,.truck-impact figure{min-height:80vw}.use-case-split>div,.bridge-case>div,.truck-impact>div{padding:70px 20px}.use-faq-list summary{grid-template-columns:45px 1fr;font-size:16px}.use-faq-list details p{margin-left:45px}.bridge-hero{min-height:820px}.bridge-hero>figure{inset:70px 0 0 25%}.bridge-hero>div{width:100%;padding:150px 20px 0}.bridge-hero h1{font-size:57px}.bridge-hero aside{left:20px}.bridge-cycle-flow{display:block}.bridge-cycle-flow i{display:block;text-align:center}.bridge-test{grid-template-columns:1fr}.bridge-test>span{writing-mode:initial;margin-top:12px}.bridge-test>div{padding:25px 0 0}.bridge-public{padding-inline:20px}.bridge-public h2{font-size:52px}.bridge-ref-grid{display:block}.bridge-ref-grid figure{height:70vw;margin-top:10px}.truck-question>div:last-child{display:block}.truck-question h2{font-size:51px}.truck-question>div>p,.truck-targets{margin-top:30px}.truck-gallery-grid{display:block}.truck-gallery-grid figure{height:75vw;margin-top:10px}}
