:root{--bg:#EEEBE4;--card:#fff;--ink:#1B1815;--sec:#57514A;--muted:#857b70;--accent:#F14A28;--accent-dark:#bc361b;--line:#ded8cc;--soft:#faf8f4;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--bg);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
@supports(font-variation-settings:normal){body{font-family:InterVariable,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}}
button,a,summary{-webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}a:hover{color:var(--accent-dark)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}img{display:block;max-width:100%}.shell{width:min(1308px,calc(100% - 96px));margin-inline:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.035em;line-height:1.14}.icon{width:18px;height:18px;flex:0 0 auto;object-fit:contain}
.site-header{position:sticky;top:0;z-index:20;background:rgba(238,235,228,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.nav{height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;gap:10px;align-items:center;color:var(--accent);font-size:23px;font-weight:700;letter-spacing:-.04em}.brand img{width:31px;height:23px}.nav-links{display:flex;align-items:center;gap:34px;font-size:14px}.nav-links>a:not(.button):hover{text-decoration:underline;text-underline-offset:8px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--accent);color:#fff;border:1px solid var(--accent);padding:10px 25px;border-radius:9px;font-size:14px;font-weight:600}.button:hover{color:#fff;background:var(--accent-dark);border-color:var(--accent-dark)}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}
.intro{padding:30px 8px 26px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:.16em;line-height:1.45;text-transform:uppercase;color:var(--muted)}.intro h1{font-size:39px;margin-top:7px}.featured-stack{display:grid;gap:44px}
.feature{display:grid;grid-template-columns:1.12fr 1fr;gap:34px;padding:14px 28px 14px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);align-items:start}
.feature-copy{padding:13px 0 4px;min-width:0}.feature h2{font-size:34px;margin-top:7px}.feature-description{font-size:18px;line-height:1.45;margin-top:9px;max-width:52ch}.feature .status{margin-top:18px;font-size:13px}.feature-note{margin-top:8px;font-size:14px;line-height:1.5;color:var(--sec)}.status{font-size:12px;line-height:1.45;color:var(--sec)}
.media-button{appearance:none;display:block;position:relative;width:100%;padding:0;overflow:hidden;border:1px solid #e4e0d9;border-radius:10px;background:var(--soft);text-align:left;color:var(--ink)}
.feature-media{aspect-ratio:1.95;align-self:center}.media-image{width:100%;height:100%;object-fit:cover;transition:transform .22s ease}.media-button:hover .media-image{transform:scale(1.018)}.media-action{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:48px;width:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent);box-shadow:0 2px 10px #00000012}.media-action .icon{height:23px;width:23px;filter:brightness(0) invert(1)}.media-caption{position:absolute;bottom:0;left:0;right:0;padding:5px 9px;background:rgba(250,248,244,.95);font-size:10px;line-height:1.3;color:var(--sec)}.media-gitlab .media-image{object-position:50% 65%}.media-method .media-image{object-position:50% 79%}
.text-action{display:flex;gap:10px;align-items:center;border:0;padding:0;background:transparent;color:var(--accent-dark);margin-top:20px;font-size:14px;font-weight:500}.text-action .icon{background:var(--accent);padding:6px;width:30px;height:30px;border-radius:50%;filter:none}.text-action:hover{text-decoration:underline;text-underline-offset:3px}
details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;font-size:13px;line-height:1.5;font-weight:450}details>summary::-webkit-details-marker{display:none}summary .icon{width:15px;height:15px;transition:transform .16s}details[open]>summary .icon{transform:rotate(180deg)}details[open]>summary{color:var(--accent-dark)}.feature-details{border-top:1px solid var(--line);margin-top:20px;padding-top:13px}.expanded-copy{padding-top:16px;color:var(--sec);font-size:14px;line-height:1.6}.expanded-copy p+p{margin-top:12px}.expanded-copy a{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}.expanded-copy pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;background:var(--soft);padding:16px;border-radius:6px;max-height:400px;overflow:auto}.expanded-copy .evidence{margin-top:14px}.defs{margin:0}.def{display:block;margin-bottom:15px}.def dt{font-size:11px;letter-spacing:.09em;font-weight:650;text-transform:uppercase;color:var(--ink);margin-bottom:4px}.def dd{margin:0}.strip{display:flex;overflow:auto;gap:16px;padding-bottom:12px}.strip figure{margin:0;min-width:230px;max-width:300px;flex:0 0 78%}.strip img{width:100%;max-height:240px;object-fit:contain;cursor:zoom-in;background:var(--soft)}.strip figcaption{font-size:12px;margin-top:8px}.strip figcaption b{display:block;color:var(--ink)}.scrollhint{font-size:12px;margin-top:8px}.feature-method{grid-template-columns:1fr 1.24fr;padding:14px 14px 14px 28px;gap:30px}.feature-method .feature-copy{padding-top:9px}.feature-method .feature-media{aspect-ratio:2.22}.method-steps{display:grid;grid-template-columns:.8fr 1fr 1.45fr;gap:13px;padding:0;list-style:none;margin:20px 0 16px}.method-steps li{font-size:12px;font-weight:550;line-height:1.45}.method-steps span{display:block;font-size:10px;color:var(--accent);margin-bottom:4px}.feature-method .feature-details{margin-top:12px}
.selected-work{margin-top:38px}.section-heading{padding:0 8px 14px}.section-heading h2{font-size:28px;margin-top:3px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.project-card{display:grid;grid-template-columns:42% minmax(0,1fr);column-gap:14px;row-gap:0;background:var(--card);border:1px solid var(--line);border-radius:11px;padding:10px;min-width:0;align-items:start}.project-media{grid-row:1 / 3;aspect-ratio:1.32;align-self:stretch;min-height:126px}.project-media .media-action{width:33px;height:33px}.project-media .media-action .icon{width:18px;height:18px}.project-media .media-caption{font-size:9px;padding:4px 6px}.project-copy{min-height:100px;min-width:0}.project-copy h3{font-size:14px;letter-spacing:-.025em;line-height:1.22;margin-top:2px}.project-copy>p:not(.status){font-size:12px;line-height:1.45;margin-top:8px}.project-copy .status{font-size:10.5px;margin-top:9px;line-height:1.4}.project-details{grid-column:2;margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.project-details summary{font-size:11px;gap:5px}.project-details[open]{grid-column:1/-1}.project-details[open]>summary{padding-bottom:2px}.project-details .expanded-copy{font-size:13px}.media-rackcheck .media-image{object-fit:contain;background:#fff;padding:4px}.media-foreclosure .media-image{object-position:50% 5%}.media-secondlook .media-image{object-position:50% 70%}.media-rulepath .media-image{object-fit:cover;object-position:center}.more-projects{margin-top:21px;border-top:1px solid var(--line);padding-top:17px}.more-projects>summary{font-size:14px;color:var(--accent-dark)}.more-content{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:28px}.additional-list{padding:6px}.additional-list h3{font-size:18px}.plain{margin:14px 0 0;padding-left:19px;line-height:1.8;color:var(--sec);font-size:14px}.additional-project .project-card{grid-template-columns:44% 1fr}
.about{display:grid;grid-template-columns:1.6fr 1fr;gap:60px;margin-top:45px;padding:30px 8px;border-top:1px solid var(--line)}.about h2{font-size:22px;line-height:1.2;max-width:32ch;margin:7px 0 10px}.about p:not(.eyebrow){font-size:14px;color:var(--sec);max-width:66ch}.about-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;justify-content:center;font-size:14px}.about-links a{display:inline-flex;gap:7px;align-items:center}.about-links .icon{width:14px;height:14px}.footer{border-top:1px solid var(--line);padding-block:20px;display:flex;gap:24px;justify-content:space-between;font-size:11px;color:var(--muted)}
dialog{border:1px solid var(--line);border-radius:16px;padding:0;width:min(960px,calc(100vw - 48px));max-height:90dvh;background:var(--card);color:var(--ink);box-shadow:0 30px 100px #0003;overflow:auto}dialog::backdrop{background:#1b1815a8;backdrop-filter:blur(4px)}body:has(dialog[open]){overflow:hidden}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 28px 18px;border-bottom:1px solid var(--line)}.dialog-header h2{font-size:25px;margin-top:4px}.icon-button{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;background:var(--soft);padding:9px;flex-shrink:0}.icon-button:hover{background:var(--bg)}.dialog-body{padding:24px 28px}.dialog-video{display:block;width:100%;max-height:64dvh;background:#111}.video-caption{font-size:13px;color:var(--sec);padding:14px 28px 20px}.walkthrough-image{width:100%;height:310px;object-fit:contain;background:var(--soft);border-radius:8px;margin-bottom:20px}.walkthrough-image.long-image{object-fit:cover;object-position:50% 6%}.step-count{font-size:11px;text-transform:uppercase;color:var(--accent-dark);letter-spacing:.09em;margin-bottom:9px}.dialog-body h3{font-size:25px;margin:0 0 10px}.step-body{font-size:16px;color:var(--sec);max-width:76ch}.step-quote{border-left:3px solid var(--accent);margin:18px 0;padding:12px 18px;background:var(--soft);font-size:17px;line-height:1.5}.step-controls{margin-top:24px;display:flex;justify-content:space-between;align-items:center;gap:16px}.step-controls .button{min-width:100px}.step-controls .button:disabled{opacity:.4;pointer-events:none}.step-dots{font-size:12px;color:var(--muted)}.copy-line{margin-top:15px;display:flex;flex-wrap:wrap;align-items:center;gap:16px}.copy-line>a{color:var(--accent-dark);text-decoration:underline}.copy-result{font-size:12px;color:var(--sec)}textarea.copy-fallback{width:100%;min-height:95px;padding:12px;margin-top:12px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-size:13px}.enlarged-image{display:block;width:100%;height:auto}.media-error{padding:32px;color:var(--sec)}
@media(min-width:1600px){.shell{width:min(1370px,calc(100% - 120px))}.feature-media{aspect-ratio:2.08}}
@media(max-width:1150px){.shell{width:calc(100% - 56px)}.feature{gap:24px}.feature h2{font-size:29px}.feature-description{font-size:16px}.feature .status{font-size:12px}.feature-note{font-size:13px}.feature-media{aspect-ratio:1.7}.feature-method .feature-media{aspect-ratio:1.9}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-copy h3{font-size:16px}.project-copy>p:not(.status){font-size:13px}.project-copy .status{font-size:12px}.project-details summary{font-size:12px}}
@media(max-width:760px){.shell{width:calc(100% - 32px)}.nav{height:62px}.brand{font-size:21px}.nav-links{gap:16px;font-size:13px}.nav .button{padding:8px 14px}.intro{padding:26px 0 24px}.intro h1{font-size:32px}.intro .eyebrow{font-size:9px;max-width:40ch}.feature{grid-template-columns:1fr;padding:13px;gap:14px}.feature-copy{padding:5px 7px 7px}.feature h2{font-size:30px}.feature-media{aspect-ratio:1.85;max-height:none}.feature-method .feature-copy{order:2}.feature-method .feature-media{order:1;aspect-ratio:1.85}.feature-description{font-size:17px}.feature .status{font-size:12px}.featured-stack{gap:32px}.method-steps li{font-size:13px}.selected-work{margin-top:32px}.project-grid{grid-template-columns:1fr}.project-card{column-gap:15px;grid-template-columns:39% 1fr;padding:12px}.project-media{min-height:142px}.project-copy h3{font-size:16px}.project-copy>p:not(.status){font-size:14px}.project-copy .status{font-size:12px}.project-details summary{font-size:12px}.more-content,.about{grid-template-columns:1fr}.about{gap:22px;margin-top:30px;padding:25px 0}.about h2{font-size:23px}.footer{flex-direction:column;gap:4px;padding-block:18px}.section-heading{padding-inline:0}.section-heading h2{font-size:26px}dialog{width:calc(100vw - 24px);max-height:92dvh}.dialog-header,.dialog-body{padding:18px}.dialog-header h2{font-size:22px}.walkthrough-image{height:200px}.dialog-body h3{font-size:22px}.step-body{font-size:15px}.step-quote{font-size:15px}.video-caption{padding:14px 18px}.step-controls{gap:8px}.step-controls .button{min-width:90px;padding:9px 14px}}
@media(max-width:400px){.nav-links>a:first-child{display:none}.nav-links{gap:14px}.brand{font-size:19px}.intro h1{font-size:29px}.project-card{grid-template-columns:36% 1fr}.project-copy h3{font-size:15px}.project-copy>p:not(.status){font-size:13px}.media-caption{font-size:9px}.method-steps{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.media-method .media-image{object-position:50% 28%}.media-gitlab .media-image{object-position:50% 100%}.text-action .icon{background:transparent;padding:0;width:17px;height:17px}.nav-links>a[href="#work"]{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:9px}

/* Native featured players retain the selected preview layout. */
.inline-media{position:relative;overflow:hidden;border-radius:10px;min-width:0}
.inline-media>.media-button{height:100%;aspect-ratio:inherit}
.inline-media>video{display:block;width:100%;height:100%;object-fit:contain;background:var(--bg);border-radius:10px}
.inline-media>[hidden]{display:none!important}

/* Cover clicks play here; the larger viewer is always optional. */
.inline-media.is-playing,#gitlab .gitlab-player.is-playing{aspect-ratio:auto;height:auto}
.video-player{width:100%;min-width:0;background:var(--soft);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.video-stage{background:var(--soft);line-height:0}
.portfolio-video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--soft)}
.portfolio-video:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}
.video-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;padding:7px 10px;min-height:40px;font-size:11px;line-height:1.4}
.video-state{color:var(--sec)}
.video-actions{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px}
.video-control{appearance:none;border:0;background:transparent;color:var(--accent-dark);padding:5px 0;text-decoration:underline;text-underline-offset:3px;font-size:11px;cursor:pointer}
.video-player [hidden]{display:none!important}
.project-card.is-playing,.additional-project .project-card.is-playing{grid-template-columns:1fr}
.project-card.is-playing>.project-media{grid-column:1;grid-row:auto;min-height:0;aspect-ratio:auto;align-self:start}
.project-card.is-playing>.project-copy{margin-top:12px;min-height:0}
.project-card.is-playing>.project-details{grid-column:1}
.project-media.inline-media>.media-button{min-height:100%}
.scout-demo-link{display:inline-block;color:var(--accent-dark);font-size:13px;font-weight:550;text-decoration:underline;text-underline-offset:4px;margin-top:15px}
.scout-story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.scout-step{color:var(--accent-dark);font-size:11px;font-weight:650}
.scout-story h4{font-size:17px;letter-spacing:-.025em;margin:8px 0}
.scout-story p,.scout-disclosure{font-size:13px;color:var(--sec);line-height:1.65}
.scout-disclosure{margin-top:22px;border-top:1px solid var(--line);padding-top:16px}
@media(max-width:760px){.scout-story{grid-template-columns:1fr;gap:20px}.video-control{min-height:36px;display:inline-flex;align-items:center}.video-toolbar{padding:6px 10px}.video-state{font-size:11px}}



/* Build Simpul methodology */
.feature-method{grid-template-columns:1fr 1.24fr;padding:14px;gap:30px}
.feature-method>.feature-copy{padding:9px 0 4px 14px}
.engine-method{grid-column:1/-1;border-top:1px solid var(--line);margin-top:4px;padding:30px 14px 14px}
.engine-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:52px;align-items:end;margin-bottom:24px}
.engine-heading h3{font-size:27px;max-width:24ch;margin-top:5px}.engine-heading>p{color:var(--sec);font-size:14px;max-width:56ch}
.engine-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:18px;align-items:stretch}
.engine-tabs{display:flex;flex-direction:column;gap:8px}
.engine-tab{appearance:none;width:100%;border:1px solid transparent;border-radius:10px;background:transparent;padding:13px 14px;text-align:left;color:var(--sec);display:grid;grid-template-columns:28px 1fr;column-gap:9px;transition:background .16s,border-color .16s,transform .16s}
.engine-tab:hover{background:var(--soft);transform:translateX(2px)}.engine-tab.is-active{background:#fff6f1;border-color:#f2c6b9;color:var(--ink)}
.engine-tab>span{grid-row:1/3;color:var(--accent);font-size:10px;font-weight:700;padding-top:2px}.engine-tab strong{font-size:13px;line-height:1.25}.engine-tab small{font-size:11px;line-height:1.35;color:var(--muted);margin-top:3px}
.engine-panels{min-width:0}.engine-panel{height:100%;min-height:490px;background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:18px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:22px;align-items:center;animation:engineIn .22s ease both}.engine-panel[hidden]{display:none}.engine-visual{min-width:0}.engine-visual.single img{width:100%;max-height:380px;object-fit:contain}.engine-visual.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.engine-visual.pair img{width:100%;height:260px;object-fit:contain;background:#fff;border:1px solid #e7e1d7;border-radius:8px}
.engine-copy{padding:8px 8px 8px 0}.engine-kicker{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--accent-dark)}.engine-copy h4{font-size:22px;letter-spacing:-.03em;line-height:1.18;margin:7px 0 11px}.engine-copy>p:not(.engine-kicker){font-size:13px;line-height:1.62;color:var(--sec)}.engine-callout{border-left:2px solid var(--accent);padding:8px 0 8px 13px;margin-top:16px;color:var(--ink)!important;font-weight:550}
.engine-controls{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.engine-controls span{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 12px;font-size:11px;color:var(--sec)}.engine-controls strong{color:var(--ink)}
@keyframes engineIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:980px){.engine-layout{grid-template-columns:1fr}.engine-tabs{display:grid;grid-template-columns:1fr 1fr}.engine-panel{min-height:0}.engine-heading{gap:28px}}
@media(max-width:760px){.feature-method>.feature-copy{padding:5px 7px 7px}.engine-method{padding:24px 7px 5px}.engine-heading{grid-template-columns:1fr;gap:10px}.engine-heading h3{font-size:24px}.engine-layout{gap:12px}.engine-tabs{grid-template-columns:1fr 1fr}.engine-tab{padding:11px 9px;grid-template-columns:22px 1fr}.engine-tab small{display:none}.engine-panel{grid-template-columns:1fr;padding:12px;gap:14px}.engine-visual{order:1}.engine-copy{order:2;padding:2px}.engine-visual.pair img{height:170px}.engine-copy h4{font-size:20px}.engine-controls{gap:6px}.engine-controls span{font-size:10px;padding:6px 9px}}
@media(max-width:430px){.engine-tabs{grid-template-columns:1fr}.engine-visual.pair{grid-template-columns:1fr}.engine-visual.pair img{height:auto;max-height:230px}}

/* Expandable Build Simpul case study */
.explore-simpul{margin-top:20px}.feature-method .engine-method[hidden]{display:none!important}
.feature-method.is-expanded>.feature-copy{grid-column:1/-1;order:0}
.feature-method.is-expanded>.feature-media{grid-column:1/-1;order:1;aspect-ratio:16/9;width:100%;max-height:none}
.feature-method.is-expanded>.engine-method{order:2}
.feature-method .engine-layout{display:block}
.feature-method .engine-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:18px}
.feature-method .engine-panel{display:block;min-height:0;padding:20px}
.feature-method .engine-panel[hidden]{display:none!important}
.feature-method .engine-visual.single{width:min(100%,640px);margin-inline:auto}
.feature-method .engine-visual.single img{width:auto;height:auto;max-width:100%;max-height:400px;margin-inline:auto;object-fit:contain}
.feature-method .engine-copy{max-width:78ch;padding:24px 8px 8px;margin:auto}
.collapse-simpul{margin-top:20px}
@media(max-width:760px){.feature-method .engine-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-method .engine-panel{padding:8px}.feature-method .engine-copy{padding:18px 8px 8px}}

/* Keep supporting graphics compact at every viewport width. */
#gitlab .gitlab-explainers{grid-template-columns:repeat(2,minmax(0,220px));justify-content:center;gap:12px}
#gitlab .gitlab-explainers img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain}
@media(max-width:520px){#gitlab .gitlab-explainers{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}

/* Compact featured projects: reading and watching are separate actions. */
.featured-stack{gap:24px}
.feature-unified,.feature.feature-method.feature-unified{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);padding:22px;gap:24px 34px;align-items:center}
.feature-unified>.feature-media{grid-column:1;grid-row:1;aspect-ratio:16/9;width:100%;align-self:center}
.feature-unified>.feature-copy,.feature-method.feature-unified>.feature-copy{grid-column:2;grid-row:1;padding:0;order:initial}
.feature-unified h2{font-size:30px}.feature-unified .feature-description{font-size:17px}.feature-unified .feature-note{font-size:14px;max-width:57ch}.feature-unified .status{font-size:12px;margin-top:12px}
.feature-unified .media-image{object-fit:contain;object-position:center}
.project-toggle{display:flex;align-items:center;gap:8px;border:0;border-top:1px solid var(--line);background:transparent;width:100%;text-align:left;padding:13px 0 0;margin-top:18px;color:var(--accent-dark);font-size:13px;font-weight:550;cursor:pointer}
.project-toggle .icon{width:14px;height:14px;transition:transform .18s}.project-toggle[aria-expanded="true"] .icon{transform:rotate(180deg)}
.project-body,.feature-unified>.engine-method{grid-column:1/-1;border-top:1px solid var(--line);padding:24px 0 0;margin:0;min-width:0}
.project-body[hidden],.agent-panel[hidden],.feature-unified>.engine-method[hidden]{display:none!important}
.case-heading{margin-bottom:18px}.case-heading h3{font-size:25px;margin-top:6px}.case-heading>p:last-child{font-size:13px;color:var(--sec);margin-top:9px}
.case-tabs{display:flex;gap:8px;margin-bottom:16px}.case-tabs button{background:transparent;border:1px solid var(--line);border-radius:8px;padding:10px 16px;font-size:13px;color:var(--sec)}.case-tabs button[aria-selected="true"]{color:var(--ink);background:#fff6f1;border-color:#f2c6b9;font-weight:600}
.agent-panel{display:grid;grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:40px;align-items:center;padding:24px 34px;background:var(--soft);border:1px solid var(--line);border-radius:10px}
.agent-figure{margin:0;width:100%;max-width:320px;justify-self:center}.graphic-zoom{display:block;background:transparent;border:0;padding:0;width:100%;cursor:zoom-in}.graphic-zoom img{display:block;width:100%;height:auto;border-radius:6px}
.agent-figure figcaption{font-size:10px;color:var(--muted);margin-top:8px;text-align:center}.image-enlarge-link{border:0;background:transparent;color:var(--accent-dark);font-size:11px;text-decoration:underline;display:block;margin:4px auto 0}
.case-copy{max-width:50ch}.case-copy h4{font-size:27px;line-height:1.2;letter-spacing:-.025em;margin:9px 0 18px}.case-copy>p:not(.eyebrow){font-size:15px;color:var(--sec);line-height:1.65;margin-top:12px}.case-source{display:inline-block;margin-top:20px;color:var(--accent-dark);font-size:13px;text-decoration:underline;text-underline-offset:3px}
.case-evidence{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.case-evidence>summary{font-size:12px;color:var(--sec)}.case-evidence .expanded-copy{max-width:92ch}
.feature-method.feature-unified .engine-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;min-height:0;gap:30px;padding:24px}
.feature-method.feature-unified .engine-visual.single{width:100%;max-width:480px;justify-self:center;margin:0}.feature-method.feature-unified .engine-visual.single img{width:100%;max-height:330px;object-fit:contain}
.feature-method.feature-unified .engine-copy{padding:0;margin:0;max-width:52ch}.feature-method.feature-unified .engine-copy h4{font-size:24px}.feature-method.feature-unified .engine-copy>p:not(.engine-kicker){font-size:14px}
.feature-method.feature-unified .engine-heading{gap:30px}.feature-method.feature-unified .engine-heading h3{font-size:25px}
#media-dialog:has(.dialog-video){width:min(1100px,calc(100vw - 48px))}#media-dialog .dialog-video{max-height:72dvh;background:var(--soft)}
@media(max-width:980px){.feature-unified,.feature.feature-method.feature-unified{gap:24px;padding:18px}.feature-unified h2{font-size:26px}.agent-panel{gap:24px;padding:20px;grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr)}.case-copy h4{font-size:24px}}
@media(max-width:760px){.feature-unified,.feature.feature-method.feature-unified{grid-template-columns:1fr;padding:16px;gap:18px}.feature-unified>.feature-media,.feature-unified>.feature-copy,.feature-method.feature-unified>.feature-copy{grid-column:1;grid-row:auto;order:initial}.feature-unified>.feature-media{grid-row:1}.feature-unified>.feature-copy{grid-row:2}.feature-unified h2{font-size:28px}.project-body,.feature-unified>.engine-method{padding-top:20px}.agent-panel{grid-template-columns:1fr;gap:22px;padding:18px}.agent-figure{max-width:290px}.case-copy{max-width:none}.case-copy h4{font-size:23px}.case-tabs button{flex:1;padding:10px 8px;font-size:12px}.feature-method.feature-unified .engine-panel{grid-template-columns:1fr;padding:16px;gap:20px}.feature-method.feature-unified .engine-visual.single{max-width:420px}.feature-method.feature-unified .engine-copy h4{font-size:22px}.feature-method.feature-unified .engine-copy>p:not(.engine-kicker){font-size:14px}.feature-method.feature-unified .engine-copy{order:2}.feature-method.feature-unified .engine-visual{order:1}.feature-method.feature-unified .engine-heading{gap:12px}#media-dialog:has(.dialog-video){width:calc(100vw - 24px)}}

/* Active players include their toolbar below the original cover ratio. */
.feature-unified>.feature-media.is-playing{aspect-ratio:auto}


/* Keep media inside its grid track as case-study copy grows. */
.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.project-card,.additional-project .project-card{grid-template-columns:minmax(0,34%) minmax(0,1fr);gap:14px}
.project-card>.project-media{grid-column:1;grid-row:1;width:100%;max-width:100%;min-width:0;min-height:0;align-self:start;aspect-ratio:4/3}
.project-media.inline-media>.media-button{width:100%;max-width:100%;height:100%;min-width:0;min-height:0;aspect-ratio:auto}
.project-card>.project-copy{grid-column:2;grid-row:1;min-width:0;min-height:0;overflow-wrap:anywhere}
.project-copy h3{font-size:17px}.project-copy>p:not(.status){font-size:14px}.project-copy .status{font-size:12px}
.project-copy .button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.project-card>.project-details,.project-card>.project-details[open]{grid-column:1/-1;grid-row:2;min-width:0;margin-top:0}
.project-details summary{font-size:13px}.project-details .expanded-copy{font-size:15px;line-height:1.65;overflow-wrap:anywhere}
.project-card:has(>.project-details[open]){grid-column:1/-1;grid-template-columns:minmax(0,25%) minmax(0,1fr)}
.project-details .defs{max-width:90ch}
.project-card.is-playing,.additional-project .project-card.is-playing{grid-template-columns:minmax(0,1fr)}
.project-card.is-playing>.project-media{grid-column:1;grid-row:1;aspect-ratio:auto}
.project-card.is-playing>.project-copy{grid-column:1;grid-row:2}
.project-card.is-playing>.project-details{grid-column:1;grid-row:3}
@media(max-width:760px){.project-grid{grid-template-columns:minmax(0,1fr)}.project-card:has(>.project-details[open]){grid-template-columns:minmax(0,34%) minmax(0,1fr)}}
@media(max-width:480px){.project-card,.additional-project .project-card,.project-card:has(>.project-details[open]){grid-template-columns:minmax(0,1fr)}.project-card>.project-media{grid-column:1;grid-row:1;max-width:240px}.project-card>.project-copy{grid-column:1;grid-row:2}.project-card>.project-details,.project-card>.project-details[open]{grid-column:1;grid-row:3}.project-card.is-playing>.project-media{max-width:100%}}

/* Exact workflow diagrams replace decorative overview thumbnails. */
.project-card>.architecture-cover{aspect-ratio:auto;min-height:170px;display:flex;flex-direction:column;gap:15px;text-align:left;padding:16px;border:1px solid #d6ddd9;border-radius:8px;background:#f3f6f3;color:var(--ink);cursor:pointer;align-self:stretch;font:inherit}
.architecture-kicker{font-size:9px;line-height:1.5;letter-spacing:.08em;font-weight:700;color:#465d55}
.architecture-flow{display:flex;flex-direction:column;gap:12px}.architecture-flow>span{display:flex;align-items:baseline;gap:8px;font-size:12px;font-weight:600;line-height:1.4}.architecture-flow b{font-size:9px;color:#677f74;flex:none}.architecture-open{margin-top:auto;padding-top:8px;font-size:11px;font-weight:600;color:var(--accent-dark)}
.architecture-cover:hover{border-color:var(--accent-dark);background:#edf3ee}
.architecture-panel{border:1px solid var(--line);border-radius:12px;background:#f8f9f6;padding:24px;margin-bottom:24px}.architecture-panel-label{font-size:11px;font-weight:700;letter-spacing:.12em;color:#465d55;margin-bottom:20px}
.architecture-rows{margin:0;display:grid;gap:12px}.architecture-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:20px;padding:18px;border:1px solid #dce3de;border-left:4px solid #638574;border-radius:6px;background:white;align-items:center}.architecture-row dt{font-size:13px;color:var(--sec)}.architecture-row dd{margin:0;font-size:18px;font-weight:600;line-height:1.4;color:var(--ink);overflow-wrap:anywhere}.architecture-row.state-review{border-left-color:#c97733;background:#fff8ef}.architecture-row.state-human{border-left-color:#4b759d;background:#f2f7fc}.architecture-foot{margin-top:16px;font-size:12px;line-height:1.6;color:var(--sec)}
@media(max-width:600px){.architecture-panel{padding:16px}.architecture-row{grid-template-columns:minmax(0,1fr);gap:6px;padding:14px}.architecture-row dd{font-size:16px}.project-card>.architecture-cover{max-width:none;min-height:0}.architecture-flow>span{font-size:13px}}

.full-walkthrough{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.full-walkthrough>h4{font-size:23px}.full-walkthrough-step{margin-top:28px;max-width:92ch}.full-walkthrough-step>h4{font-size:19px;margin-bottom:10px}.full-walkthrough-step>.architecture-panel{margin-top:16px}.project-card{scroll-margin-top:90px}

/* Keep the complete Decision Review workflow visible at every viewport. */
#gitlab .decision-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
#gitlab .decision-tabs button{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;line-height:1.4;padding:12px;cursor:pointer}
#gitlab .decision-panel{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;padding:24px}
#gitlab .decision-panel .agent-figure{max-width:none;min-width:0}
#gitlab .decision-panel .case-copy h4{font-size:25px}
#gitlab .decision-panel .case-copy>p:not(.eyebrow){font-size:14px}
#gitlab .decision-footer{padding:6px 0 0}
#gitlab .decision-footer .case-source{margin:8px 20px 0 0}
#gitlab .decision-tabs button:focus-visible,#gitlab .decision-panel:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}
@media(max-width:760px){#gitlab .decision-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}#gitlab .decision-tabs button{flex-direction:row;align-items:baseline;gap:8px;padding:12px 10px;font-size:12px}#gitlab .decision-panel{grid-template-columns:minmax(0,1fr);padding:16px;gap:20px}#gitlab .decision-panel .case-copy h4{font-size:23px}}
