/* Blue Line V103 - authority through public production proof.
   Isolated enhancement. Existing typography, forms, motion, and route behavior stay intact. */
.bl103-authority{--v103-rule:rgba(120,211,255,.24);--v103-ease:cubic-bezier(.22,.68,0,1.01)}
.bl103-authority .v103-screen{margin:0;min-width:0;overflow:hidden;border:1px solid var(--v103-rule);border-radius:12px;background:#071827;box-shadow:0 24px 70px -35px rgba(0,0,0,.55)}
.bl103-authority .v103-screen::before,.bl103-authority .v103-screen::after{content:none}
.bl103-authority .v103-screen picture{display:block;line-height:0}
.bl103-authority .v103-screen img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;transform:none;filter:none;opacity:1;border-radius:0}
.bl103-authority .v103-browser{height:28px;display:flex;align-items:center;gap:6px;padding:0 12px;background:#0c2237;border-bottom:1px solid rgba(120,211,255,.13)}
.bl103-authority .v103-browser i{display:block;flex:0 0 6px;height:6px;border-radius:50%;background:#ff6669}
.bl103-authority .v103-browser i:nth-child(2){background:#ffd168}
.bl103-authority .v103-browser i:nth-child(3){background:#64d896}
.bl103-authority .v103-browser>span{flex:1;color:#b8cdda;font-size:10px;line-height:1;text-align:right;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bl103-authority .v103-screen figcaption{position:static;inset:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;margin:0;padding:10px 16px;background:#071827;color:#afc7d7;border:0;border-radius:0;font-size:11px;line-height:1.5;backdrop-filter:none;transform:none}
.bl103-authority .v103-expand{display:none;flex-shrink:0;min-height:38px;padding:6px 0 6px 12px;border:0;background:none;color:#8fdfff;font:600 11px var(--body);cursor:pointer}
.bl103-authority.v103-enhanced .v103-expand{display:inline-flex;gap:8px;align-items:center}
.bl103-authority .v103-expand span{transition:transform .2s ease}
.bl103-authority .v103-expand:hover span{transform:translate(2px,-2px)}
.bl103-authority .v103-expand:focus-visible,.bl103-authority .v103-proof-tabs button:focus-visible{outline:2px solid var(--sky);outline-offset:3px}
/* First screen: a clear promise next to inspectable work, not a workstation illustration. */
.bl103-authority .v103-home-opening{padding-top:clamp(40px,5vw,76px);padding-bottom:30px;background:#031321;overflow:hidden}
.bl103-authority .v103-home-opening::before,.bl103-authority .v103-home-opening::after{content:none}
.bl103-authority .v103-home-opening .bl100-home-hero-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(28px,4vw,64px);align-items:center}
.bl103-authority .v103-home-opening .bl100-hero-copy h1{font-size:clamp(3.75rem,6.85vw,7rem);line-height:.96;letter-spacing:-.065em;max-width:9.5ch}
.bl103-authority .v103-home-opening .bl100-hero-copy h1 span{display:block}
.bl103-authority .v103-home-opening .bl100-hero-copy h1 span:last-child{color:#8bdfff}
.bl103-authority .v103-home-opening .bl100-hero-copy>p:not(.bl103-local-note){font-size:clamp(1rem,1.23vw,1.16rem);max-width:37ch;line-height:1.7;margin:26px 0 24px}
.bl103-authority .v103-home-opening .bl100-actions{gap:16px 24px;flex-wrap:wrap}
.bl103-authority .v103-home-opening .bl103-local-note{font-size:11px;max-width:46ch;line-height:1.7;margin-top:23px;color:#9ab4c5}
.bl103-authority .v103-proof-stage{position:relative;min-width:0;isolation:isolate}
.bl103-authority .v103-stage-heading{display:flex;justify-content:space-between;gap:12px;padding-bottom:14px;color:#abcbdc;font-size:10px;line-height:1.3;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.bl103-authority .v103-stage-heading>span:last-child{display:flex;gap:8px;align-items:center}
.bl103-authority .v103-live-dot{width:5px;height:5px;border-radius:50%;background:#7bddff;box-shadow:0 0 10px rgba(120,211,255,.3)}
.bl103-authority .v103-proof-panels{min-width:0}
.bl103-authority .v103-proof-panel[hidden]{display:none!important}
.bl103-authority .v103-proof-panel{outline-offset:5px;animation:v103-enter .32s var(--v103-ease) both}
.bl103-authority .v103-hero-screen picture{height:auto;aspect-ratio:3/2;background:#071827}
.bl103-authority .v103-hero-screen img{width:100%;height:100%;object-fit:contain}
.bl103-authority .v103-hero-screen figcaption{display:none}
.bl103-authority .v103-project-route{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;color:#a2bece;text-decoration:none;font-size:11px;line-height:1.4}
.bl103-authority .v103-project-route strong{color:#f0f9ff;font-size:12px;font-weight:650}
.bl103-authority .v103-project-route b{display:inline-block;font-weight:400;margin-left:10px;transition:transform .2s}
.bl103-authority .v103-project-route:hover b{transform:translate(2px,-2px)}
.bl103-authority .v103-proof-tabs{display:flex;gap:4px;border-top:1px solid var(--v103-rule);padding-top:4px}
.bl103-authority .v103-proof-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;flex:1;min-width:0;min-height:52px;padding:8px 4px;border:0;border-radius:0;color:#9fb8c9;background:transparent;font:650 11px var(--body);cursor:pointer;transition:color .2s,background .2s}
.bl103-authority .v103-proof-tabs button:before{content:'';position:absolute;top:-5px;left:0;right:0;height:2px;background:#5acbff;transform:scaleX(0);transform-origin:left;transition:transform .24s}
.bl103-authority .v103-proof-tabs button[aria-selected=true]{color:#fff;background:rgba(120,211,255,.055)}
.bl103-authority .v103-proof-tabs button[aria-selected=true]:before,.bl103-authority .v103-proof-tabs button:hover:before{transform:scaleX(1)}
.bl103-authority .v103-proof-tabs button>span{color:#67c9f3;font-size:9px;letter-spacing:.08em}
.bl103-authority .v103-credentials{background:none;border:0;border-top:1px solid var(--v103-rule);border-radius:0;box-shadow:none;margin-top:42px;padding-top:22px;gap:24px}
.bl103-authority .v103-credentials>div{padding:0;border:0;align-items:center}
.bl103-authority .v103-credentials strong{font-size:32px;color:#dff5ff;text-shadow:none;letter-spacing:-.04em}
.bl103-authority .v103-credentials span{font-size:11px;max-width:145px;color:#94aebe}
/* Three work stories; a wide business feature followed by two complementary systems. */
.bl103-authority .v103-selected-work{background:#f3f7fb;color:#061830;padding-top:76px;padding-bottom:76px}
.bl103-authority .v103-selected-work::before,.bl103-authority .v103-selected-work::after{content:none}
.bl103-authority .v103-selected-work .bl100-section-intro{margin-bottom:38px}
.bl103-authority .v103-selected-work .bl100-section-intro h2{color:#061830;max-width:16ch}
.bl103-authority .v103-selected-work .bl100-section-intro p{color:#597082}
.bl103-authority .v103-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 36px}
.bl103-authority .v103-work-project{min-width:0}
.bl103-authority .v103-work-1660{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);column-gap:40px;row-gap:20px;align-items:center}
.bl103-authority .v103-work-1660 .v103-work-title{grid-column:1;grid-row:1;align-self:end}
.bl103-authority .v103-work-1660 .v103-work-screen{grid-column:2;grid-row:1/3}
.bl103-authority .v103-work-1660 .v103-work-footer{grid-column:1;grid-row:2;align-self:start;display:block;border:0;padding:0}
.bl103-authority .v103-work-title{margin-bottom:18px}
.bl103-authority .v103-work-title .bl100-kicker{font-size:10px;color:#15739d;margin-bottom:13px}
.bl103-authority .v103-work-title h3{font-family:var(--display);font-size:clamp(30px,3.3vw,48px);letter-spacing:-.055em;line-height:1.08;margin:0;color:#061830}
.bl103-authority .v103-work-title h3 a{color:inherit;text-decoration:none;display:flex;justify-content:space-between;gap:10px}
.bl103-authority .v103-work-title h3 span{color:#208ebc;font-size:.7em;transition:transform .2s}
.bl103-authority .v103-work-title h3 a:hover span{transform:translate(3px,-3px)}
.bl103-authority .v103-work-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;border-top:1px solid #cbdbe5;padding-top:17px;margin-top:20px}
.bl103-authority .v103-work-footer p{color:#536c7e;margin:0;font-size:14px;line-height:1.6;max-width:36ch}
.bl103-authority .v103-work-footer .bl100-text-link{font-size:12px;color:#0c4565;margin-top:10px}
.bl103-authority .v103-work-1660 .v103-work-footer p{font-size:18px;max-width:24ch;margin-bottom:16px}
.bl103-authority .v103-work-curiospark .v103-work-screen picture,.bl103-authority .v103-work-jwill .v103-work-screen picture{aspect-ratio:3/2}
.bl103-authority .v103-work-curiospark .v103-work-screen img,.bl103-authority .v103-work-jwill .v103-work-screen img{height:100%;object-fit:contain}
.bl103-authority .v103-selected-work .bl100-process-bridge{border-top:1px solid #ccdce5;margin-top:58px;padding-top:32px;color:#061830}
.bl103-authority .v103-selected-work .bl100-process-bridge p{color:#587185}
.bl103-authority .v103-selected-work .bl100-process-bridge .bl100-text-link{color:#0b5277}
/* Capability proof never clips content, even while the existing transition runs. */
.bl103-authority .v103-capabilities .bl100-capability-visual{aspect-ratio:auto;height:auto;border-radius:10px;box-shadow:0 20px 55px -30px #011120}
.bl103-authority .v103-capabilities .bl100-capability-visual img{aspect-ratio:3/2;height:auto;padding:0;object-fit:contain;background:#071827}
.bl103-authority .v103-capabilities .bl100-capability-visual figcaption{position:static;inset:auto;border:0;border-top:1px solid var(--v103-rule);border-radius:0;padding:16px}
/* Portfolio overview: the entire artwork is visible; no baked collage or scaled crop. */
.bl103-authority .v103-portfolio-opening{padding:58px 0 44px;background:#031321;color:#fff}
.bl103-authority .v103-portfolio-title{display:grid;grid-template-columns:1.45fr .6fr;gap:60px;align-items:end}
.bl103-authority .v103-portfolio-title h1{font:750 clamp(46px,5.8vw,88px)/1.02 var(--display);letter-spacing:-.065em;max-width:17ch;margin:18px 0 0;color:#fff}
.bl103-authority .v103-portfolio-intro{padding-bottom:5px}
.bl103-authority .v103-portfolio-intro p{font-size:16px;color:#a7bdcb;line-height:1.7;margin:0 0 22px}
.bl103-authority .v103-portfolio-intro .bl100-text-link{font-size:13px}
.bl103-authority .v103-proof-index{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:44px}
.bl103-authority .v103-proof-index-item{display:block;min-width:0;color:#fff;text-decoration:none}
.bl103-authority .v103-proof-index-meta{display:flex;justify-content:space-between;color:#8ebbd2;border-top:1px solid #244254;padding-top:12px;margin-bottom:14px;font-size:10px;letter-spacing:.05em;line-height:1.4}
.bl103-authority .v103-index-image{aspect-ratio:3/2;overflow:hidden;border-radius:6px;border:1px solid #213f53;background:#071827;transition:box-shadow .24s,border-color .24s}
.bl103-authority .v103-index-image picture{display:block;height:100%}
.bl103-authority .v103-index-image img{display:block;width:100%;height:100%;object-fit:contain;transform:none}
.bl103-authority .v103-proof-index-item>strong{display:block;padding-top:14px;font-size:18px;letter-spacing:-.025em}
.bl103-authority .v103-proof-index-item:hover .v103-index-image{border-color:#72d0f8;box-shadow:0 14px 40px -18px rgba(43,160,217,.35)}
.bl103-authority .bl100-portfolio-cases>.bl100-shell>.bl100-section-intro{margin-bottom:30px}
.bl103-authority .v103-case{padding:clamp(48px,6vw,88px) 0;scroll-margin-top:94px}
.bl103-authority .v103-case::after{content:none}
.bl103-authority .v103-case h3{font-size:clamp(42px,5vw,76px);letter-spacing:-.06em;line-height:1.02}
.bl103-authority .v103-case .bl100-case-lead{font-size:17px;line-height:1.65;max-width:50ch}
.bl103-authority .v103-case .bl100-case-facts{background:none;border:0;box-shadow:none;border-radius:0;gap:0;grid-template-columns:1fr 1fr}
.bl103-authority .v103-case .bl100-case-facts>div{padding:18px 20px 18px 0;border:0;border-top:1px solid #c2d3df;background:none}
.bl103-authority .v103-case .bl100-case-facts dt{color:#126f9b;font-size:10px;letter-spacing:.12em}
.bl103-authority .v103-case .bl100-case-facts dd{font-size:13px;line-height:1.6}
.bl103-authority .v103-case .bl100-case-outcome{border:0;border-left:2px solid #1685b5;border-radius:0;background:none;box-shadow:none;padding:4px 0 4px 20px;margin:22px 0;color:#061830}
.bl103-authority .v103-case .bl100-case-outcome span{color:#15769d}
.bl103-authority .v103-case .bl100-case-outcome strong{color:#0c253a;font-size:19px;line-height:1.4}
.bl103-authority .v103-case-1660{background:#f3f7fb}
.bl103-authority .v103-case-1660 .bl100-1660-case-head{margin-bottom:32px}
.bl103-authority .v103-1660-feature{max-width:1130px;margin-left:auto;margin-right:auto;border-radius:10px}
.bl103-authority .v103-case-1660 .bl100-1660-case-details{margin-top:40px}
.bl103-authority .v103-case-curiospark{background:#e5edf4}
.bl103-authority .v103-case-curiospark .bl100-case-study-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:44px;align-items:center}
.bl103-authority .v103-curiospark-feature{position:sticky;top:112px}
.bl103-authority .v103-case-jwill{background:#031321}
.bl103-authority .v103-case-jwill .bl100-case-study-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:56px;align-items:center}
.bl103-authority .v103-case-jwill .v103-jwill-feature{grid-column:2;grid-row:1}
.bl103-authority .v103-case-jwill .bl100-case-study-copy{grid-column:1;grid-row:1}
.bl103-authority .v103-case-jwill .bl100-case-facts>div{border-color:#254457}
.bl103-authority .v103-case-jwill .bl100-case-facts dt,.bl103-authority .v103-case-jwill .bl100-case-outcome span{color:#78d3ff}
.bl103-authority .v103-case-jwill .bl100-case-outcome strong{color:#e6f5ff}
/* Services remain four connected offers. No new pricing, promise, or content wall. */
.bl103-authority.bl100-services .bl100-service-chapter-grid{grid-template-columns:64px minmax(0,.88fr) minmax(0,1.12fr);gap:34px}
.bl103-authority.bl100-services .bl100-service-copy h3{font-size:clamp(38px,4vw,62px);line-height:1.04;letter-spacing:-.06em}
.bl103-authority.bl100-services .bl100-outcome{display:block;padding:10px 0 10px 18px;border:0;border-left:2px solid #178abe;box-shadow:none;background:none;border-radius:0;font-size:17px;color:inherit;text-transform:none;line-height:1.4;letter-spacing:-.02em}
.bl103-authority .v103-service-proof{align-self:center}
.bl103-authority .v103-service-case-link{display:flex;justify-content:space-between;gap:12px;padding:16px;color:#d3efff;border-top:1px solid #234559;font-size:12px;text-decoration:none}
.bl103-authority .v103-service-case-link:hover{background:#0d2840}
/* The new proof viewer is optional. The core image and project links work without it. */
.v103-proof-dialog{width:min(1220px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #31516b;border-radius:12px;background:#071827;color:#fff;box-shadow:0 25px 100px rgba(0,0,0,.5);overflow:auto}
.v103-proof-dialog::backdrop{background:rgba(1,9,17,.86)}
.v103-dialog-head{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:14px;background:#0a2237;border-bottom:1px solid #27475c;padding:12px 18px}
.v103-dialog-head strong{font:650 15px Inter,system-ui,sans-serif}
.v103-dialog-head button{min-height:44px;padding:10px 16px;border:1px solid #47677e;border-radius:5px;background:none;color:#fff;font:600 13px Inter,system-ui,sans-serif;cursor:pointer}
.v103-dialog-head button:focus-visible{outline:2px solid #78d3ff;outline-offset:3px}
.v103-proof-dialog picture,.v103-proof-dialog img{display:block;width:100%;height:auto;object-fit:contain}
.v103-dialog-caption{font:12px/1.5 Inter,system-ui,sans-serif;color:#bdd2df;margin:0;padding:14px 18px}
@keyframes v103-enter{from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:1050px){
 .bl103-authority .v103-home-opening .bl100-home-hero-grid{grid-template-columns:1fr 1.1fr;gap:28px}
 .bl103-authority .v103-home-opening .bl100-hero-copy h1{font-size:clamp(48px,6.8vw,76px)}
 .bl103-authority .v103-proof-tabs button{font-size:10px;gap:6px}
 .bl103-authority .v103-work-1660{grid-template-columns:minmax(180px,.44fr) minmax(0,1fr);gap:20px}
 .bl103-authority .v103-portfolio-title{grid-template-columns:1.3fr .7fr;gap:30px}
 .bl103-authority .v103-case-curiospark .bl100-case-study-grid,.bl103-authority .v103-case-jwill .bl100-case-study-grid{grid-template-columns:1fr;gap:36px}
 .bl103-authority .v103-curiospark-feature{position:relative;top:auto}
 .bl103-authority .v103-case-jwill .v103-jwill-feature,.bl103-authority .v103-case-jwill .bl100-case-study-copy{grid-row:auto;grid-column:auto}
 .bl103-authority .v103-case-curiospark .bl100-case-study-copy,.bl103-authority .v103-case-jwill .bl100-case-study-copy{max-width:860px}
 .bl103-authority.bl100-services .bl100-service-chapter-grid{grid-template-columns:48px 1fr;gap:24px}
 .bl103-authority .v103-service-proof{grid-column:2}
}
@media (max-width:760px){
 .bl103-authority .v103-home-opening{padding-top:34px;padding-bottom:28px}
 .bl103-authority .v103-home-opening .bl100-home-hero-grid{grid-template-columns:1fr;gap:34px}
 .bl103-authority .v103-home-opening .bl100-hero-copy h1{font-size:clamp(52px,10vw,76px);max-width:none}
 .bl103-authority .v103-home-opening .bl100-hero-copy>p:not(.bl103-local-note){max-width:45ch;margin:22px 0;font-size:16px}
 .bl103-authority .v103-home-opening .bl103-local-note{margin-top:20px}
 .bl103-authority .v103-proof-stage{width:100%;max-width:680px}
 .bl103-authority .v103-proof-tabs button{min-height:52px;font-size:11px}
 .bl103-authority .v103-credentials{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px;padding-top:22px}
 .bl103-authority .v103-credentials>div{display:block;padding:0;border:0}
 .bl103-authority .v103-credentials strong{display:block;font-size:29px;margin-bottom:9px}
 .bl103-authority .v103-credentials span{display:block;max-width:125px;font-size:10px;line-height:1.5}
 .bl103-authority .v103-selected-work{padding:50px 0}
 .bl103-authority .v103-work-grid{grid-template-columns:1fr;gap:42px}
 .bl103-authority .v103-work-1660{display:block;grid-column:auto}
 .bl103-authority .v103-work-title h3{font-size:34px}
 .bl103-authority .v103-work-1660 .v103-work-footer{display:flex;padding-top:17px;border-top:1px solid #cbdbe5}
 .bl103-authority .v103-work-1660 .v103-work-footer p{font-size:14px;max-width:36ch;margin:0}
 .bl103-authority .v103-screen figcaption{font-size:10px;gap:10px;padding:10px 12px}
 .bl103-authority .v103-screen figcaption>span{max-width:32ch}
 .bl103-authority .v103-expand{font-size:10px}
 .bl103-authority .v103-portfolio-opening{padding:38px 0 32px}
 .bl103-authority .v103-portfolio-title{grid-template-columns:1fr;gap:24px}
 .bl103-authority .v103-portfolio-title h1{font-size:clamp(42px,8.4vw,64px);max-width:18ch}
 .bl103-authority .v103-portfolio-intro p{font-size:15px;max-width:50ch;margin-bottom:15px}
 .bl103-authority .v103-proof-index{grid-template-columns:1fr;gap:0;margin-top:26px}
 .bl103-authority .v103-proof-index-item{display:grid;grid-template-columns:1fr 1fr;column-gap:14px;align-items:center;border-top:1px solid #264355;padding:16px 0}
 .bl103-authority .v103-proof-index-meta{border:0;margin:0;padding:0;font-size:9px}
 .bl103-authority .v103-index-image{display:none}
 .bl103-authority .v103-proof-index-item>strong{padding:0;font-size:15px;text-align:right}
 .bl103-authority .v103-case h3{font-size:42px}
 .bl103-authority .v103-case .bl100-case-lead{font-size:16px}
 .bl103-authority .v103-case .bl100-case-facts>div{padding:16px 15px 16px 0}
 .bl103-authority .v103-case .bl100-case-outcome strong{font-size:18px}
 .bl103-authority .v103-case .bl100-1660-case-head{gap:24px}
 .bl103-authority .v103-case-1660 .bl100-1660-case-details{margin-top:30px}
 .bl103-authority.bl100-services .bl100-service-chapter-grid{grid-template-columns:1fr;gap:24px}
 .bl103-authority .v103-service-proof{grid-column:1}
 .bl103-authority.bl100-services .bl100-service-copy h3{font-size:42px}
 .v103-proof-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:8px}
}
@media (prefers-reduced-motion:reduce){
 .bl103-authority .v103-proof-panel{animation:none}
 .bl103-authority .v103-proof-tabs button,.bl103-authority .v103-proof-tabs button:before,.bl103-authority .v103-project-route b,.bl103-authority .v103-expand span,.bl103-authority .v103-index-image,.bl103-authority .v103-work-title h3 span{transition:none;transform:none}
}
/* No dead controls when scripting is unavailable. Case-study links stay available. */
.bl103-authority:not(.v103-enhanced) .v103-proof-tabs{display:none}
/* Keep the retained process summary legible on the lighter proof section. */
.bl103-authority .v103-selected-work .bl100-process-bridge{background:transparent;border-radius:0;box-shadow:none}
.bl103-authority .v103-selected-work .bl100-process-bridge-steps span{color:#486579}
.bl103-authority .v103-selected-work .bl100-process-bridge-steps b{color:#0a4b70;background:#e0edf6;border-color:#9dcce3}
@media (hover:hover) and (pointer:fine){
 .bl103-authority .v103-screen{transition:border-color .24s ease,box-shadow .24s ease}
 .bl103-authority .v103-screen:hover{border-color:#4badd4;box-shadow:0 24px 65px -29px rgba(1,28,50,.55)}
}
@media (prefers-reduced-motion:reduce){.bl103-authority .v103-screen{transition:none}}
