/* Idea to Software: native header and CTA, original screenshots and scoped layout. */
.sdx-its{--its-accent:#087b9e;--its-pale:#e9f5f8;--its-border:#b9d4de;max-width:90rem}
.sdx-its__header{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:clamp(2rem,4vw,4rem)}
.page-header.page-header--simple:has(.sdx-its__header) .page-header__copy{max-width:none}
.page-header.page-header--simple:has(.sdx-its__header) .page-header__inner{max-width:90rem;width:100%;margin-inline:auto}
.page-header.page-header--simple:has(.sdx-its__header) h1{font-size:clamp(2.25rem,3.3vw,3.5rem);line-height:1.08}
.sdx-its__header .page-header__intro{font-size:1.02rem;line-height:1.75}
.sdx-its__tags{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;padding:0;margin:1.4rem 0 0}
.sdx-its__tags li{font-size:.7rem;line-height:1.45;padding:.4rem .65rem;border:1px solid #9ddbea66;border-radius:2rem;background:#b5e8f509;color:#d4f2fb}
.sdx-its__header .sdx-portfolio__back{margin-top:1.3rem}
.sdx-its__body{display:grid;gap:clamp(3rem,6vw,5.5rem);padding-top:0}
.sdx-its p{line-height:1.8}
.sdx-its h3{font-size:clamp(1.1rem,1.6vw,1.4rem);line-height:1.35;margin:0}
.sdx-its__context{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:clamp(2rem,4vw,4rem);align-items:start}
.sdx-its__context h2{margin-bottom:1.4rem}
.sdx-its__context p+p{margin-top:1rem}
.sdx-its__role{position:relative;padding:clamp(1.5rem,3vw,2.5rem);border:1px solid var(--its-border);border-top:3px solid var(--its-accent);border-radius:1.2rem;background:linear-gradient(145deg,#e1f1f5,#f7fbfd)}
.sdx-its__role>i{display:grid;place-items:center;width:2.8rem;height:2.8rem;background:#cde8ef;border-radius:.7rem;margin-bottom:1.3rem;font-size:1.5rem;color:var(--its-accent)}
.sdx-its__role h3{margin-bottom:1rem}
.sdx-its__role p{font-size:.95rem;color:var(--portfolio-muted)}
.sdx-its__role a{display:inline-flex;gap:.5rem;margin-top:1.4rem;font-size:.85rem;font-weight:700;line-height:1.6}
.sdx-its__scope{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin:1.7rem 0 0;padding:1.5rem 0 0;border-top:1px solid var(--its-border)}
.sdx-its__scope dt{font-size:.8rem;color:var(--its-accent);margin-bottom:.4rem}
.sdx-its__scope dd{font-size:.85rem;line-height:1.6;margin:0;color:var(--portfolio-muted)}
.sdx-its__heading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,4vw,4rem);align-items:start;margin-bottom:2rem}
.sdx-its__heading p{color:var(--portfolio-muted)}
.sdx-its__heading p+p{margin-top:1rem}
.sdx-its__flow{padding:clamp(1.5rem,3vw,3rem);border:1px solid #275b6d;border-radius:1.4rem;background:radial-gradient(ellipse at 100% 0,#217e9255,transparent 65%),#082d38;color:#effaff;box-shadow:0 1.5rem 3rem #073a4710}
.sdx-its__flow .sdx-its__heading p{color:#c0dce5}
.sdx-its__flow ol{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;list-style:none;padding:0;margin:0}
.sdx-its__flow li{position:relative;padding:1.15rem .9rem;border:1px solid #83bed04a;background:#b3e6f409;border-radius:.7rem}
.sdx-its__flow li>span{color:#83cfdf;font-size:.7rem}
.sdx-its__flow li h3{font-size:1rem;margin:.7rem 0 .5rem}
.sdx-its__flow li p{font-size:.76rem;line-height:1.6;color:#c0dce5}
.sdx-its__flow li:not(:last-child):after{content:'→';position:absolute;right:-.85rem;top:43%;color:#95cdda}
.sdx-its__chapter{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:center;gap:clamp(2rem,4vw,4rem)}
.sdx-its__chapter-copy{display:grid;gap:1.2rem}
.sdx-its__chapter h2{font-size:clamp(1.7rem,2.4vw,2.45rem)}
.sdx-its__chapter-copy>p{color:var(--portfolio-muted)}
.sdx-its .sdx-its__detail{border-left:2px solid var(--its-accent);padding-left:1rem;font-size:.9rem;line-height:1.75}
.sdx-its__chapter--report,.sdx-its__chapter--extranet{grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr)}
.sdx-its__chapter--report .sdx-its__chapter-copy,.sdx-its__chapter--extranet .sdx-its__chapter-copy{grid-column:2;grid-row:1}
.sdx-its__chapter--report .sdx-its__figure,.sdx-its__chapter--extranet .sdx-its__figure{grid-column:1;grid-row:1}
.sdx-its__figure{margin:0;min-width:0}
.sdx-its__zoom{position:relative;display:block;overflow:hidden;border:1px solid #679aaa80;border-radius:.8rem;background:#eef4f6;box-shadow:0 1rem 2.5rem #12343a1a;cursor:zoom-in;isolation:isolate}
.sdx-its__zoom img{display:block;width:100%;height:auto;object-fit:contain}
.sdx-its__zoom-label{position:absolute;right:.75rem;bottom:.75rem;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid #7dc2dc66;border-radius:.5rem;background:#072f3df2;color:#fff;font-size:.7rem;font-weight:600;box-shadow:0 .2rem .8rem #0002}
.sdx-its__zoom:hover .sdx-its__zoom-label{background:var(--its-accent)}
.sdx-its__figure figcaption{font-size:.75rem;line-height:1.65;color:var(--portfolio-muted);padding-top:.9rem}
.sdx-its__header .sdx-its__figure figcaption{color:#bddde7}
.sdx-its__header .sdx-its__zoom{border-color:#669bad;box-shadow:0 1.5rem 3.5rem #0004}
.sdx-its__inspection{padding:clamp(1.3rem,3.5vw,3.5rem);border-radius:1.5rem;border:1px solid var(--its-border);background:linear-gradient(145deg,#e8f5f9,#f7fafd)}
.sdx-its__report-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;list-style:none;padding:0;margin:0 0 2rem}
.sdx-its__report-points li{display:flex;align-items:center;gap:.6rem;font-size:.85rem;font-weight:600}
.sdx-its__report-points i{font-size:1.15rem;color:var(--its-accent)}
.sdx-its__inspection .sdx-its__figure{margin-inline:auto}
.sdx-its .sdx-its__roadmap{font-size:.8rem;line-height:1.7;margin-top:1.5rem;color:var(--portfolio-muted)}
.sdx-its__chapter--embedded{padding-block:1.2rem;border-block:1px solid var(--its-border)}
.sdx-its__engineering{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}
.sdx-its__engineering article{padding:clamp(1.3rem,2.4vw,2rem);border:1px solid var(--its-border);border-radius:1rem;background:linear-gradient(135deg,#fff,#f0f7fa)}
.sdx-its__engineering i{display:inline-block;color:var(--its-accent);font-size:1.45rem;margin-bottom:1.1rem}
.sdx-its__engineering h3{font-size:1.12rem;margin-bottom:.8rem}
.sdx-its__engineering p{font-size:.9rem;color:var(--portfolio-muted)}
.sdx-its__gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.5rem}
.sdx-its__gallery article{min-width:0}
.sdx-its__gallery h3{font-size:1rem;margin-bottom:1rem}
.sdx-its__gallery img{aspect-ratio:1.65;object-fit:contain}
.sdx-its__gallery .sdx-its__zoom-label{font-size:0;padding:.45rem}
.sdx-its__gallery .sdx-its__zoom-label i{font-size:.9rem}
.sdx-its__result{padding:clamp(1.7rem,4vw,4rem);border-radius:1.4rem;background:radial-gradient(ellipse at 100% 0,#218b9b66,transparent 65%),#08323e;color:#effaff}
.sdx-its__result>p{margin-top:1.5rem;color:#c6e1ec;font-size:1.05rem}
.sdx-its__result-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid #9ec4da40}
.sdx-its__result-points h3{font-size:1.12rem;margin-bottom:.6rem;color:#9fdaeb}
.sdx-its__result-points p{font-size:.9rem;color:#c6e1ec}
@media(max-width:1100px){.sdx-its__header{grid-template-columns:1fr}.sdx-its__flow ol{grid-template-columns:repeat(3,minmax(0,1fr))}.sdx-its__flow li:nth-child(3):after{content:none}.sdx-its__chapter,.sdx-its__chapter--report,.sdx-its__chapter--extranet{grid-template-columns:1fr}.sdx-its__chapter .sdx-its__chapter-copy,.sdx-its__chapter .sdx-its__figure{grid-column:auto;grid-row:auto}.sdx-its__engineering{grid-template-columns:repeat(2,minmax(0,1fr))}.sdx-its__gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.page-header.page-header--simple:has(.sdx-its__header) h1{font-size:clamp(1.85rem,8vw,2.35rem)}.sdx-its__context,.sdx-its__heading{grid-template-columns:1fr;gap:1.5rem}.sdx-its__flow ol{grid-template-columns:repeat(2,minmax(0,1fr))}.sdx-its__flow li:nth-child(3):after{content:'→'}.sdx-its__flow li:nth-child(2n):after{content:none}.sdx-its__report-points,.sdx-its__result-points,.sdx-its__gallery{grid-template-columns:1fr}.sdx-its__gallery img{aspect-ratio:auto}.sdx-its__gallery .sdx-its__zoom-label{font-size:.7rem}.sdx-its__result-points{gap:1.4rem}.sdx-its__header .page-header__intro{font-size:1rem}.sdx-its__zoom-label{right:.5rem;bottom:.5rem}}
@media(max-width:479px){.sdx-its__engineering,.sdx-its__scope{grid-template-columns:1fr}.sdx-its__flow{padding:1.2rem}.sdx-its__flow li{padding:.85rem .65rem}.sdx-its__tags li{font-size:.65rem}.sdx-its__zoom-label{font-size:.62rem;padding:.4rem .55rem}}
