/* J36 technical dossier, translated from the v41 ImageGen composition into live content. */
.spec-story{background:#fff;color:#172944}
.spec-story-shell{display:grid;grid-template-columns:minmax(410px,36%) minmax(0,1fr);max-width:1700px;margin:auto}
.spec-story-rail{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 52% 63%,#254f78 0,#152d47 38%,#0b192b 76%);color:#fff}
.spec-story-rail:before{content:"";position:absolute;inset:auto -30% -14% -30%;height:42%;background:radial-gradient(ellipse at 50% 10%,#498ac05e,transparent 68%);transform:rotate(-10deg);z-index:-1}
.spec-story-rail-inner{position:sticky;top:88px;min-height:950px;display:flex;flex-direction:column;padding:94px clamp(30px,4vw,74px) 66px}
.spec-story-watermark{position:absolute;top:50px;left:27px;font-size:clamp(140px,17vw,280px);font-weight:800;line-height:1;letter-spacing:-.1em;color:#ffffff0c;pointer-events:none}
.spec-story-rail-copy{position:relative;z-index:1;padding-top:135px}
.spec-story-rail-copy h2{font-size:clamp(38px,3.2vw,54px);letter-spacing:-.055em;line-height:1.12}
.spec-story-rail-copy p{color:#d1dfef;font-size:17px;line-height:1.75;max-width:390px;margin-top:20px}
.spec-story-machine{position:relative;display:grid;place-items:center;flex:1;min-height:350px;margin:12px -38px -8px;filter:drop-shadow(4px 27px 22px #020d1da6)}
.spec-story-machine img{width:min(100%,650px);max-width:none;max-height:390px;object-fit:contain;clip-path:polygon(0 0,100% 0,100% 88%,85% 88%,85% 100%,0 100%);transition:transform .45s ease,filter .45s ease}
.spec-story-machine:hover img{transform:translateY(-8px) scale(1.025);filter:brightness(1.07)}
.spec-story-cta{position:relative;z-index:1;align-self:start;display:inline-flex;align-items:center;gap:18px;min-height:54px;padding:12px 24px;background:#1263ac;border:1px solid #69b5f5;border-radius:100px;color:#fff;font-weight:700;box-shadow:0 9px 30px #020d1d48;transition:transform .22s ease,background .22s ease,box-shadow .22s ease}
.spec-story-cta:hover{background:#2583d0;transform:translateY(-4px);box-shadow:0 15px 32px #020d1d70}
.spec-story-cta .arrow{font-size:23px;line-height:1}
.spec-story-content{padding:75px clamp(30px,5.3vw,84px) 83px;min-width:0}
.spec-story-heading{display:block}
.spec-story-heading h2{font-size:clamp(30px,2.65vw,42px);letter-spacing:-.05em}
.spec-story-heading p{font-size:14px;max-width:620px;line-height:1.7;color:#607289;margin-top:12px}
.spec-story-highlights{display:grid;grid-template-columns:1.2fr .65fr .8fr;gap:0;margin:47px 0 39px}
.spec-story-highlights>div{padding:0 23px;border-left:1px solid #cdd9e6}
.spec-story-highlights>div:first-child{padding-left:0;border-left:0}
.spec-story-highlights strong{display:block;color:#0756a3;font-size:clamp(29px,2.4vw,38px);line-height:1.15;white-space:nowrap;letter-spacing:-.055em}
.spec-story-highlights strong small{font-size:.62em}
.spec-story-highlights span{display:block;margin-top:8px;color:#4c6076;font-size:14px}
.spec-story-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:20px}
.spec-story-nav a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px 17px;border:1px solid #d7e3f1;border-radius:7px;background:#f2f7fd;color:#274561;font-size:14px;font-weight:700;transition:background .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease}
.spec-story-nav a:first-child{background:#e0efff;color:#0756a3;border-color:#bcd7f3}
.spec-story-nav a:hover{background:#176cb3;border-color:#176cb3;color:#fff;transform:translateY(-4px);box-shadow:0 8px 18px #196bb026}
.spec-story-nav a span{font-size:16px;font-weight:400}
.spec-story-groups{display:grid;gap:18px}
.spec-story-group{border:1px solid #dfebf6;border-radius:8px;overflow:hidden;background:#fff}
.spec-story-group h3{padding:15px 20px;background:#edf5fc;color:#174c81;font-size:18px;letter-spacing:-.02em}
.spec-story-group dl{margin:0;padding:1px 20px 5px}
.spec-story-row{display:grid;grid-template-columns:39% minmax(0,1fr);align-items:baseline;gap:12px;padding:11px 4px;border-bottom:1px solid #e1e9f0;font-size:14px;line-height:1.4;transition:background .2s ease,padding-left .2s ease}
.spec-story-row:last-child{border-bottom:0}
.spec-story-row:hover{background:#f0f7ff;padding-left:12px}
.spec-story-row dt{font-weight:600;color:#5b6f83}
.spec-story-row dd{margin:0;font-weight:600;color:#1c344f;overflow-wrap:anywhere}
.spec-story-note{margin-top:17px;color:#65798d;font-size:13px}
@media(max-width:1080px){.spec-story-shell{grid-template-columns:minmax(320px,38%) minmax(0,1fr)}.spec-story-rail-inner{padding:62px 28px 46px}.spec-story-rail-copy{padding-top:116px}.spec-story-content{padding:60px 35px 65px}.spec-story-heading{display:block}.spec-story-heading p{margin-top:13px;max-width:540px}.spec-story-highlights{margin:34px 0}.spec-story-highlights>div{padding-inline:14px}.spec-story-highlights strong{font-size:26px}.spec-story-nav a{padding:13px 10px;font-size:12px}}
@media(max-width:760px){.spec-story-shell{display:block}.spec-story-rail-inner{position:relative;top:auto;min-height:0;padding:45px 20px 35px}.spec-story-watermark{top:15px;left:10px;font-size:155px}.spec-story-rail-copy{padding-top:62px}.spec-story-rail-copy h2{font-size:35px}.spec-story-rail-copy p{font-size:14px;max-width:320px;margin-top:13px}.spec-story-machine{min-height:0;height:210px;margin:14px -10px -4px}.spec-story-machine img{width:min(100%,360px);max-height:230px}.spec-story-cta{min-height:47px;font-size:14px}.spec-story-content{padding:44px 20px 60px}.spec-story-heading h2{font-size:29px}.spec-story-heading p{font-size:13px}.spec-story-highlights{margin:29px 0 28px}.spec-story-highlights>div{padding-inline:10px}.spec-story-highlights strong{font-size:23px}.spec-story-highlights>div:first-child strong{font-size:20px}.spec-story-highlights span{font-size:11px}.spec-story-nav{gap:5px}.spec-story-nav a{font-size:11px;padding:10px 8px;min-height:49px}.spec-story-nav a span{display:none}.spec-story-group h3{font-size:16px;padding:13px 15px}.spec-story-group dl{padding-inline:13px}.spec-story-row{font-size:12px;grid-template-columns:36% minmax(0,1fr);padding:10px 2px}.spec-story-note{font-size:12px}}
@media(max-width:365px){.spec-story-highlights strong{font-size:20px}.spec-story-highlights>div:first-child strong{font-size:18px}.spec-story-nav a{font-size:10px}}
@media(prefers-reduced-motion:reduce){.spec-story-machine img,.spec-story-cta,.spec-story-nav a,.spec-story-row{transition:none}.spec-story-machine:hover img,.spec-story-cta:hover,.spec-story-nav a:hover{transform:none}}
