/* V3.4: shared card imagery, measured rhythm and accessible motion. */
:root{--scene-ink:#15384c;--scene-copy:#466277}
main .section-head,main .v31-heading{text-align:center;align-items:center;justify-content:center}
main .section-head p,main .v31-heading p{max-width:1080px;margin-left:auto;margin-right:auto}
main .scene-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid #d5e5ed;border-radius:22px;background:#f8fbfd!important;box-shadow:0 8px 28px #203e5607;min-height:0!important;transition:border-color .3s,box-shadow .3s!important}
main .scene-card::before{content:'';position:absolute!important;inset:0!important;width:auto!important;height:auto!important;border:0!important;border-radius:inherit;background:linear-gradient(90deg,#fbfdff 5%,#f8fbfce8 49%,#eef6fb82 100%),var(--card-image) center/cover!important;opacity:1!important;z-index:-1!important;transform:translate3d(var(--image-x,0px),var(--image-y,0px),0) scale(1.05);transition:transform .7s cubic-bezier(.2,.7,.2,1);pointer-events:none}
main .scene-card::after{content:'';position:absolute!important;inset:auto 24px 0!important;height:2px!important;width:auto!important;background:linear-gradient(90deg,#31aac5,#7673d5,#ee5476)!important;transform:scaleX(.2);transform-origin:left;opacity:.55;transition:transform .6s,opacity .6s;pointer-events:none}
main .scene-card:hover,main .scene-card:focus-within{border-color:#8cc4d8;box-shadow:0 14px 34px #2f678d16}
main .scene-card:hover::after,main .scene-card:focus-within::after{transform:scaleX(1);opacity:1}
main .scene-card h3,main .scene-card>b,main .scene-card div>h3{color:var(--scene-ink)!important}
main .scene-card p,main .scene-card li{color:var(--scene-copy)!important;line-height:1.9}
main .scene-card small,main .scene-card>span,main .scene-card .cap-more{color:#45647b!important}
main .scene-card .fx-light{display:none!important}
main .scene-card.motion-tilt{transform:none!important}
main .scene-card>i,main .scene-card>.service-icon,main .scene-card>.cap-icon{background:#ffffffdb!important;border:1px solid #d7e7ef;color:#087f9c!important}
main .partner-types .mission{gap:22px}
main .partner-types .alliance-scene{padding:152px 28px 25px!important;min-height:370px!important;background:#fff!important}
main .partner-types .alliance-scene::before{background:linear-gradient(180deg,#eaf4ff05 0%,#f9fcff10 22%,#fff 46%,#fff 100%),var(--card-image) center top/100% auto no-repeat!important;transform:translate3d(var(--image-x,0px),var(--image-y,0px),0) scale(1.035)}
main .partner-types .alliance-scene>b{position:absolute;top:25px;left:26px;width:48px;height:48px;display:grid;place-items:center;background:#fffffff0;border:1px solid #fff;border-radius:15px;color:#0a7699!important;box-shadow:0 5px 18px #254c6f0b}
main .partner-types .alliance-scene>b svg{width:25px;height:25px}
main .partner-types .alliance-scene>small{position:absolute;top:36px;right:25px;padding:4px 10px;border-radius:20px;background:#fffffff2;color:#284f67!important}
main .partner-types .alliance-scene h3{font-size:24px;line-height:1.45;margin:0 0 12px!important}
main .partner-types .alliance-scene p{font-size:14px;margin:0!important}
.scene-caption{margin-top:20px;padding-top:13px;border-top:1px solid #e3edf2;font-size:12px;letter-spacing:.06em;color:#257a96}
main .iteration-grid .scene-card,main .role.scene-card,main .mission .scene-card:not(.alliance-scene){padding:28px!important}
main .iteration-grid .scene-card{min-height:235px!important}
main .order-card.scene-card,main .promise.scene-card{padding:26px!important;min-height:210px!important}
main .iteration-steps .scene-card{padding:24px!important;min-height:145px!important}
main .v31-cap-grid>.scene-card{padding:30px!important;min-height:210px!important}
main .v31-direction-grid>.scene-card{min-height:285px!important;padding:30px!important}
main .v31-direction-grid>.scene-card>b{margin-top:24px!important}
main .gateway-scene{padding:25px!important}
main .gateway-scene::before{background:linear-gradient(90deg,#f4fbfff5,#edf7ffb0),var(--card-image) center/cover!important}
main .gateway-scene small{color:#44677d!important}
main .cooperation-agreement{background:linear-gradient(115deg,#f2f9fdf5,#f2f4ffe8),url('team-collaboration.webp') center/cover;border:1px solid #d9e8f0;border-radius:24px;padding:34px;margin-top:30px;text-align:left}
main .cooperation-agreement h3{font-size:28px;line-height:1.5;color:#15384c}
main .cooperation-agreement>p{max-width:1050px;color:#466277;line-height:1.9}
.agreement-grid{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:28px;margin:25px 0}
.agreement-grid>div{border-top:1px solid #bcd5e1;padding-top:17px}.agreement-grid b{color:#173f55;font-size:17px}.agreement-grid p{font-size:14px;line-height:1.9;color:#466277;margin:10px 0}
.common-purpose{padding:78px 0;background:linear-gradient(180deg,#fff,#f5f9fc)}
.purpose-banner{position:relative;isolation:isolate;overflow:hidden;padding:48px 54px;border-radius:26px;background:linear-gradient(100deg,#0c3049f5 5%,#123b55e6 62%,#164660a0),url('leasing-digital-scene.webp') center/cover;color:white}
.purpose-banner:after{content:'';position:absolute;right:-15%;bottom:-180px;width:700px;height:400px;border:1px solid #91dbe54a;border-radius:50%;transform:rotate(-18deg);pointer-events:none}
.purpose-copy{max-width:1040px;padding-right:80px}.purpose-banner h2{color:#fff!important;font-size:38px;line-height:1.5;margin:12px 0 20px}.purpose-banner .kicker{color:#a3e0ee!important}.purpose-banner p{color:#dcebf3!important;line-height:2;font-size:15px}.purpose-banner .purpose-verse{font-size:19px;color:#ffe1b5!important;letter-spacing:.13em;margin:14px 0}.purpose-seal{position:absolute;right:45px;top:50px;border:1px solid #ebc79685;color:#ffe1b5;border-radius:8px;padding:14px 11px;line-height:1.5;font-family:serif;font-size:23px}
.ethos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:22px}.ethos-grid article{padding:28px}.ethos-grid span{font-size:12px;color:#23758e}.ethos-grid h3{font-size:22px;margin:16px 0 12px}.ethos-grid p{font-size:14px;margin:0}
.scene-card.scene-arrived{animation:scene-arrive .65s both;animation-delay:var(--arrival-delay,0ms)}
@keyframes scene-arrive{from{opacity:.25;translate:0 18px}to{opacity:1;translate:0 0}}
a:focus-visible,button:focus-visible{outline:3px solid #1597b8;outline-offset:5px}
@media(min-width:1100px){main .section-head h2,main .v31-heading h2{max-width:none}main .page-hero-content{max-width:1600px;width:calc(100% - 80px)}main .page-hero-content h1{max-width:none}}
@media(max-width:1000px){.agreement-grid{grid-template-columns:1fr}.ethos-grid{grid-template-columns:1fr}.purpose-banner{padding:32px}.purpose-copy{padding-right:55px}.purpose-banner h2{font-size:30px}.purpose-seal{right:24px;top:38px;font-size:18px}.common-purpose{padding:55px 0}main .partner-types .mission{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){main .partner-types .mission{grid-template-columns:1fr}main .partner-types .alliance-scene{min-height:0!important;padding:145px 24px 25px!important}main .iteration-grid .scene-card,main .order-card.scene-card,main .promise.scene-card,main .v31-direction-grid>.scene-card,main .v31-cap-grid>.scene-card{min-height:0!important}main .cooperation-agreement{padding:25px}.purpose-copy{padding-right:0}.purpose-seal{display:none}.purpose-banner{padding:27px}.purpose-banner h2{font-size:28px}.purpose-banner .purpose-verse{font-size:16px}.ethos-grid{gap:16px}.agreement-grid{gap:12px}main .scene-card::before{transform:none!important}.common-purpose{padding:45px 0}}
@media(prefers-reduced-motion:reduce){main .scene-card,main .scene-card::before,main .scene-card::after{animation:none!important;transition:none!important;transform:none!important}}
