:root{--paper:#f4f5f3;--paper2:#eceeeb;--ink:#171a1d;--muted:#686d70;--sage:#2e63d5;--sage-dark:#234ea8;--line:#d9dddc;--white:#fff;--serif:"Libre Baskerville",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}.shell{width:min(1440px,calc(100% - 10vw));margin-inline:auto}.nav{height:88px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;background:rgba(245,245,240,.93);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border:2px solid var(--sage);transform:rotate(45deg);display:grid;place-items:center;font-size:9px;font-weight:700;letter-spacing:-.04em}.brand-mark::first-line{transform:rotate(-45deg)}.brand-copy{display:flex;flex-direction:column;gap:2px}.brand-copy strong{font-size:12px;letter-spacing:.18em}.brand-copy small{font-size:7px;letter-spacing:.2em;color:var(--muted)}.nav nav{display:flex;gap:34px;font-size:9px;text-transform:uppercase;letter-spacing:.11em}.nav nav a{padding:38px 0 34px;position:relative}.nav nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:26px;height:1px;background:var(--ink)}.nav-cta{justify-self:end;background:var(--sage);color:white;padding:15px 22px;font-size:9px;letter-spacing:.12em;font-weight:600}.nav-cta span,.button span{margin-left:16px}.hero{min-height:690px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:5vw;padding-top:70px;padding-bottom:65px}.eyebrow,.section-label{font-size:9px;letter-spacing:.25em;font-weight:600;color:var(--sage-dark)}.section-label span{display:inline-grid;place-items:center;width:25px;height:25px;border:1px solid var(--line);border-radius:50%;margin-right:12px;letter-spacing:0;color:var(--ink)}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(44px,5.4vw,78px);line-height:1.18;margin:28px 0 22px}h1 em,h2 em{font-weight:400}.hero-title{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--sage-dark);font-weight:600}.hero-copy{max-width:590px;font-size:14px;line-height:1.8;color:var(--muted)}.hero-actions{display:flex;gap:14px;margin-top:30px}.button{display:inline-block;background:var(--sage);color:white;padding:15px 20px;font-size:9px;letter-spacing:.12em;font-weight:600}.button.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}.hero-visual{height:570px;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.hero-visual:before{content:"";position:absolute;width:470px;height:470px;border-radius:50%;background:#e8eef9;left:50%;top:52%;transform:translate(-50%,-50%)}.hero-visual img{position:relative;z-index:3;width:min(96%,540px);height:540px;object-fit:contain;object-position:center bottom;mix-blend-mode:normal;filter:drop-shadow(0 18px 28px rgba(34,37,31,.12))}.portrait-orbit{position:absolute;width:520px;height:360px;border:1px solid #c9d6f1;border-radius:50%;z-index:1;transform:rotate(-18deg)}.portrait-grid{position:absolute;inset:12% 0 0;background-image:linear-gradient(#dbe4f5 1px,transparent 1px),linear-gradient(90deg,#dbe4f5 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to right,transparent,#000 30%,#000 70%,transparent);opacity:.45}.visual-note{position:absolute;z-index:5;font-size:7px;letter-spacing:.2em;color:var(--sage-dark);line-height:1.8}.note-one{right:0;top:35px}.note-two{left:0;bottom:55px}.section{padding-top:110px;padding-bottom:110px}.about{border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin-top:32px}.about h2,.section-head h2,.approach h2,.solve h2,.contact h2{font-size:clamp(38px,4.2vw,62px);line-height:1.12;margin:0}.prose{font-family:var(--serif);font-size:14px;line-height:1.9;color:var(--muted)}.prose p{margin:0 0 20px}.prose .emphasis{color:var(--ink);font-weight:700}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.section-head h2{margin-top:24px}.head-rule{height:1px;background:var(--line);flex:1;margin-bottom:8px}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:55px}.project-grid article{background:#fafaf7;border:1px solid var(--line);transition:transform .45s ease}.project-grid article:hover{transform:translateY(-6px)}.project-art{height:245px;margin:12px;position:relative;overflow:hidden;padding:18px;font-size:9px}.art-one{background:#edf1f8}.art-two{background:#242724;color:#fff}.art-three{background:#e9e7e0}.art-four{background:#e8eef9}.flow-lines{position:absolute;inset:50px 25px;background:linear-gradient(90deg,transparent 49%,#6f8fd7 50%,transparent 51%),linear-gradient(transparent 49%,#6f8fd7 50%,transparent 51%);background-size:70px 70px;border:1px solid #c4d0e9}.ai-node{position:absolute;inset:0;margin:auto;width:100px;height:100px;border:1px solid #7895d5;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:28px}.api-shape{position:absolute;width:120px;height:150px;background:linear-gradient(145deg,#416bc5,#a9bbe4);right:30px;bottom:20px;transform:skewY(-18deg)}.logic-grid{position:absolute;inset:45px;background:repeating-linear-gradient(90deg,#6f8fd7 0 1px,transparent 1px 32px),repeating-linear-gradient(#6f8fd7 0 1px,transparent 1px 32px)}.card-copy{padding:8px 18px 22px;position:relative}.card-copy h3{font-family:var(--serif);font-size:16px;margin:8px 30px 10px 0}.card-copy p{font-size:11px;line-height:1.65;color:var(--muted);min-height:72px}.card-copy b{position:absolute;right:18px;top:9px;font-weight:400}.technical{font-size:9px;color:var(--muted);letter-spacing:.05em;margin-top:30px}.approach{background:var(--paper2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.approach-inner{display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw}.approach h2{margin-top:25px}.manifesto{border-top:1px solid var(--line)}.manifesto p{font-family:var(--serif);font-size:clamp(18px,2.2vw,31px);line-height:1.4;margin:0;padding:25px 0;border-bottom:1px solid var(--line);display:flex;gap:22px}.manifesto i{font-family:var(--sans);font-style:normal;font-size:9px;color:var(--sage-dark);padding-top:9px}.manifesto .final{font-style:italic;color:var(--sage-dark);padding-top:35px;border-bottom:0}.method h2{font-size:38px;margin:22px 0 50px}.steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative}.steps:before{content:"";position:absolute;top:24px;left:7%;right:7%;border-top:1px dashed #c8d1e3}.steps>div{text-align:center;padding:0 28px;position:relative}.steps b{display:grid;place-items:center;margin:auto;width:48px;height:48px;border-radius:50%;background:var(--paper);border:1px solid var(--line);font-size:9px;position:relative;z-index:2}.step-icon{font-family:var(--serif);font-size:25px;margin:24px 0 15px;color:var(--sage-dark)}.steps h3{font-family:var(--serif);font-size:15px}.steps p{font-size:10px;line-height:1.7;color:var(--muted)}.solve{background:#eef2f8}.solve-head{display:grid;grid-template-columns:1fr .8fr;gap:10vw;align-items:end}.solve-head h2{margin-top:24px}.solve-head>p{font-family:var(--serif);font-size:14px;line-height:1.8;color:var(--muted)}.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.problem-grid article{padding:35px 30px;min-height:270px;border-right:1px solid var(--line)}.problem-grid article:last-child{border-right:0}.problem-grid span{font-size:9px;color:var(--sage-dark)}.problem-icon{font-size:26px;margin:35px 0 25px;color:var(--sage-dark)}.problem-grid h3{font-family:var(--serif);font-size:16px}.problem-grid p{font-size:10px;line-height:1.7;color:var(--muted)}.contact{padding-top:70px;padding-bottom:70px}.contact-card{background:#eef1f6;border:1px solid var(--line);padding:55px 60px;display:grid;grid-template-columns:1.2fr .8fr;overflow:hidden}.contact h2{font-size:clamp(34px,4vw,56px);margin:20px 0}.contact p{font-family:var(--serif);max-width:650px;color:var(--muted);font-size:13px;line-height:1.8}.contact small{display:block;margin-top:14px;font-size:8px;color:var(--muted)}.contact-art{position:relative;min-height:270px}.contact-art:before,.contact-art:after{content:"";position:absolute;border:1px solid #cbd5e8;border-radius:50%}.contact-art:before{width:280px;height:280px;right:-10px;top:0}.contact-art:after{width:190px;height:190px;right:35px;top:45px}.hand-system{position:absolute;z-index:2;right:75px;top:80px;width:120px;height:120px;border-radius:50%;background:var(--sage);color:white;display:grid;place-items:center;font-size:50px}.footer{display:grid;grid-template-columns:1.4fr .6fr .6fr 1fr;gap:5vw;border-top:1px solid var(--line);padding-top:45px;padding-bottom:35px;position:relative}.footer>div:not(.brand):not(.copyright){display:flex;flex-direction:column;gap:9px;font-size:9px;color:var(--muted)}.footer>div strong{font-size:8px;letter-spacing:.15em;color:var(--ink);margin-bottom:8px}.footer-end p{margin:0}.copyright{position:absolute;left:0;bottom:0;font-size:8px;color:var(--muted)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:clip}@media(prefers-reduced-motion:no-preference){[data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms),transform 1s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms)}[data-reveal].is-visible{opacity:1;transform:none}.hero-visual{transform:translate3d(0,var(--hero-parallax,0),0)}}@media(max-width:1050px){.nav{grid-template-columns:1fr auto}.nav nav{display:none}.hero{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr 1fr}.project-art{height:280px}.footer{grid-template-columns:1.2fr .8fr .8fr}}@media(max-width:760px){.shell{width:min(100% - 36px,1440px)}.nav{height:72px}.brand-copy small{display:none}.nav-cta{padding:12px}.hero{grid-template-columns:1fr;padding-top:55px}.hero-visual{height:440px}.hero-visual img{height:420px;width:min(96%,430px);object-fit:contain;object-position:center bottom}.about-grid,.approach-inner,.solve-head,.contact-card{grid-template-columns:1fr}.project-grid,.problem-grid{grid-template-columns:1fr}.project-art{height:260px}.steps{grid-template-columns:1fr 1fr;gap:45px 0}.steps:before{display:none}.problem-grid article{border-right:0;border-bottom:1px solid var(--line)}.contact-card{padding:40px 30px}.contact-art{min-height:220px}.footer{grid-template-columns:1fr 1fr}.footer .brand,.footer-end{grid-column:1/-1}.section{padding-top:80px;padding-bottom:80px}}@media(max-width:480px){h1{font-size:39px}.hero-actions{flex-direction:column;align-items:flex-start}.project-grid,.steps{grid-template-columns:1fr}.hero-visual:before{width:340px;height:340px}.portrait-orbit{width:360px;height:280px}.footer{grid-template-columns:1fr}.footer .brand,.footer-end{grid-column:auto}}


/* Hero rework — matched to supplied reference */
.hero{min-height:760px;grid-template-columns:.92fr 1.08fr;gap:2.5vw;padding-top:58px;padding-bottom:38px}
.hero-copy-wrap{position:relative;z-index:8;align-self:center;padding-bottom:18px}
.hero-copy-wrap h1{font-size:clamp(46px,5.15vw,76px);line-height:1.17;margin:30px 0 26px;max-width:720px}
.hero-copy{max-width:610px;font-size:14px;line-height:1.85}
.hero-actions{margin-top:34px}
.hero-visual{height:660px;align-self:end;overflow:visible;isolation:isolate}
.hero-visual:before{width:500px;height:500px;top:49%;background:#e8eef9;z-index:0}
.hero-visual img{position:absolute;z-index:4;width:min(112%,650px);height:650px;left:50%;bottom:-2px;transform:translateX(-50%);object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 28px rgba(34,37,31,.11))}
.portrait-orbit{width:610px;height:410px;top:26%;left:50%;transform:translateX(-50%) rotate(-18deg);z-index:2}
.portrait-grid{inset:17% -5% 5%;z-index:1;background-size:42px 42px;opacity:.52;mask-image:linear-gradient(to right,transparent,#000 22%,#000 82%,transparent)}
.note-one{right:-2%;top:62px;z-index:6}
.note-two{left:-3%;bottom:70px;z-index:6}
@media(max-width:1050px){.hero{grid-template-columns:.9fr 1.1fr;gap:1vw}.hero-visual{height:590px}.hero-visual img{width:min(116%,570px);height:570px}.hero-visual:before{width:440px;height:440px}.portrait-orbit{width:520px;height:360px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:55px;padding-bottom:50px}.hero-copy-wrap{padding-bottom:0}.hero-visual{height:500px;margin-top:20px;overflow:hidden}.hero-visual img{width:min(108%,500px);height:500px}.hero-visual:before{width:380px;height:380px}.portrait-orbit{width:450px;height:320px}.portrait-grid{inset:14% 0 0}.note-one{right:3%;top:30px}.note-two{left:3%;bottom:35px}}
@media(max-width:480px){.hero-visual{height:420px}.hero-visual img{height:420px;width:min(112%,420px)}.hero-visual:before{width:320px;height:320px}.portrait-orbit{width:370px;height:270px}}

/* What I Build — project image interaction */
.project-art{isolation:isolate;background:#f7f8f4!important;overflow:hidden}
.project-art>span{position:absolute;top:18px;left:18px;z-index:4;padding:5px 7px;background:rgba(250,250,247,.9);border:1px solid rgba(215,217,209,.85);backdrop-filter:blur(5px)}
.project-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;display:block;z-index:2;transform:scale(1);transform-origin:center;transition:transform .65s cubic-bezier(.16,1,.3,1);will-change:transform}
.project-grid article:hover .project-image{transform:scale(1.72)}
.project-grid article:hover{z-index:4}
@media (hover:none){.project-grid article:hover .project-image{transform:scale(1)}}

/* What I Build — desktop pop-out hover */
@media (hover:hover) and (pointer:fine) and (min-width:761px){
  .work,.project-grid,.project-grid article{overflow:visible}
  .project-grid article{position:relative;isolation:auto}
  .project-art{overflow:hidden;transition:overflow 0s linear .18s}
  .project-image{transition:transform .72s cubic-bezier(.16,1,.3,1),filter .45s ease;transform-origin:center center}
  .project-grid article:hover{z-index:100;transform:translateY(-6px)}
  .project-grid article:hover .project-art{overflow:visible;z-index:101;transition-delay:0s}
  .project-grid article:hover .project-image{transform:scale(2.35);z-index:102;filter:drop-shadow(0 28px 38px rgba(34,37,31,.24));background:#f7f8f4}
  .project-grid article:hover .project-art>span{z-index:103}
}

/* What I Build — centered screen pop-out preview */
@media (hover:hover) and (pointer:fine) and (min-width:761px){
  .project-grid article:hover .project-image{transform:none;filter:none}
  .project-grid article:hover .project-art{overflow:hidden}
  .project-image.is-project-previewing{opacity:0;transition:opacity .18s ease}
  .project-preview-popout{position:fixed;left:50%;top:50%;width:min(78vw,1180px);height:min(78vh,760px);object-fit:contain;object-position:center;z-index:10000;pointer-events:none;background:rgba(250,250,247,.98);border:1px solid rgba(215,217,209,.9);box-shadow:0 34px 90px rgba(34,37,31,.28);transform:translate(-50%,-50%) scale(.34);opacity:0;transition:transform .62s cubic-bezier(.16,1,.3,1),opacity .22s ease;border-radius:2px}
  .project-preview-popout.is-open{transform:translate(-50%,-50%) scale(1);opacity:1}
}

/* What I Build refinements: image-only hover trigger + consistent tile number color */
.project-art.art-two>span{color:var(--ink)!important}
@media (hover:hover) and (pointer:fine) and (min-width:761px){
  .project-grid article:hover{transform:none;z-index:auto}
  .project-grid article:hover .project-art{overflow:hidden;z-index:auto}
  .project-grid article:hover .project-image{transform:none;filter:none}
  .project-image{cursor:zoom-in}
}

/* What I Build — click-to-zoom refinement */
.project-art.art-two>span{color:var(--ink)!important}
@media (hover:hover) and (pointer:fine) and (min-width:761px){
  .project-grid article:hover{transform:none!important;z-index:auto!important}
  .project-grid article:hover .project-art{overflow:hidden!important;z-index:auto!important}
  .project-grid article:hover .project-image{transform:none!important;filter:none!important}
  .project-image{cursor:zoom-in}
  .project-image.is-project-previewing{opacity:.28;cursor:zoom-out}
  .project-preview-popout{cursor:zoom-out}
}

/* 2026 personal-brand palette refresh — neutral + cobalt */
.hero h1 em{color:var(--sage-dark)}
.hero-visual:before{background:#e8eef9}
.project-art{background:#fafaf8!important}
.project-art>span{color:var(--ink);background:rgba(250,250,248,.94);border-color:var(--line)}
.contact-card{background:#eef1f6}
.footer{background:#1c2022;color:#f7f8f8;box-shadow:0 0 0 100vmax #1c2022;clip-path:inset(0 -100vmax)}
.footer .brand-copy strong,.footer>div strong{color:#f7f8f8}
.footer .brand-copy small,.footer>div:not(.brand):not(.copyright),.footer .copyright{color:#aeb5ba}
.footer a{color:#cbd1d5;transition:color .25s ease}
.footer a:hover{color:#fff}
.footer .brand-mark{border-color:#5f83d9;color:#f7f8f8}

/* Lead capture contact */
.contact-card.lead-card{grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:start;background:#eef1f5;padding:64px 68px}
.contact-intro h2{margin:20px 0 22px}.contact-intro>p{max-width:540px}.lead-flow{display:flex;align-items:center;gap:12px;margin-top:38px;font-size:8px;letter-spacing:.16em;color:var(--muted)}.lead-flow span{border:1px solid var(--line);padding:10px 12px;background:rgba(255,255,255,.45)}.lead-flow i{font-style:normal;color:#2e63d5}
.lead-form{background:#fafaf8;border:1px solid var(--line);padding:30px;display:grid;gap:18px;position:relative;z-index:2}.form-heading{display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--line)}.form-heading span{font-family:var(--serif);font-size:20px}.form-heading small{font-size:7px;letter-spacing:.18em;color:#2e63d5}.lead-form label{display:grid;gap:8px;font-size:8px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink);font-weight:600}.lead-form input,.lead-form select,.lead-form textarea{width:100%;border:1px solid var(--line);background:#fff;color:var(--ink);font:400 12px/1.5 var(--sans);padding:13px 14px;outline:none;border-radius:0;transition:border-color .25s ease,box-shadow .25s ease}.lead-form textarea{resize:vertical;min-height:118px}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:#2e63d5;box-shadow:0 0 0 2px rgba(46,99,213,.08)}.lead-form input::placeholder,.lead-form textarea::placeholder{color:#959a9d;text-transform:none}.lead-submit{border:0;cursor:pointer;justify-self:start}.form-note,.form-status{margin:0!important;font-family:var(--sans)!important;font-size:8px!important;line-height:1.6!important}.form-status{color:#2e63d5!important;min-height:13px}
@media(max-width:760px){.contact-card.lead-card{grid-template-columns:1fr;gap:38px;padding:40px 30px}.lead-flow{flex-wrap:wrap}.lead-form{padding:24px}.form-heading{align-items:flex-start;gap:10px;flex-direction:column}}

/* Featured System case study */
.featured-system{background:#1c2022;color:#f7f8f8;padding:112px 0;box-shadow:0 0 0 100vmax #1c2022;clip-path:inset(0 -100vmax)}
.featured-system .section-label{color:#cbd1d5}.featured-system .section-label span{color:#7ea0ee}.featured-kicker{display:flex;justify-content:space-between;align-items:center;margin-bottom:54px}.featured-kicker>span{font-size:8px;letter-spacing:.2em;color:#8e969b}.featured-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:64px;align-items:center}.featured-copy h2{font-family:var(--serif);font-size:clamp(38px,4.4vw,70px);line-height:1.02;font-weight:400;margin:15px 0 25px}.featured-copy h2 em{color:#7ea0ee;font-weight:400}.featured-type{font-size:8px;letter-spacing:.2em;color:#aeb5ba}.featured-copy>p:not(.featured-type):not(.featured-note){font-size:13px;line-height:1.8;color:#c6ccd0;max-width:520px}.featured-points{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:32px;border-top:1px solid #3a4145;border-left:1px solid #3a4145}.featured-points span{padding:16px 18px;border-right:1px solid #3a4145;border-bottom:1px solid #3a4145;font-size:9px;letter-spacing:.06em;color:#e5e8ea}.featured-note{margin-top:20px;font-size:8px!important;line-height:1.6!important;color:#899196!important;max-width:520px}.featured-visual{margin:0;overflow:hidden;border:1px solid #343b40;background:#111619}.featured-visual img{display:block;width:100%;height:auto;transition:transform .5s ease}.featured-visual:hover img{transform:scale(1.015)}
@media(max-width:900px){.featured-grid{grid-template-columns:1fr;gap:42px}.featured-system{padding:84px 0}.featured-visual{order:2}}
@media(max-width:560px){.featured-kicker{align-items:flex-start;gap:18px;flex-direction:column}.featured-points{grid-template-columns:1fr}.featured-system{padding:70px 0}}

/* Featured System — same centered slow click-to-zoom behavior as project tiles */
.featured-zoom-image{cursor:zoom-in;transition:opacity .25s ease}
.featured-zoom-image.is-project-previewing{opacity:.28;cursor:zoom-out}
@media (max-width:760px){.featured-zoom-image{cursor:default}}

/* Featured System — proof-first content refinement */
.featured-summary{margin-bottom:0}
.featured-analysis{display:grid;gap:22px;margin-top:32px;padding-top:26px;border-top:1px solid #3a4145}
.featured-analysis>div>span{display:block;margin-bottom:9px;font-size:8px;letter-spacing:.18em;color:#d5b68b;font-weight:700}
.featured-analysis p{margin:0;font-size:11px;line-height:1.7;color:#b9c0c4;max-width:500px}
.featured-scope{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;border-top:1px solid #3a4145;border-bottom:1px solid #3a4145}
.featured-scope>div{padding:18px 16px 18px 0;border-right:1px solid #3a4145}
.featured-scope>div+div{padding-left:18px}.featured-scope>div:last-child{border-right:0}
.featured-scope strong{display:block;font-family:var(--serif);font-size:30px;font-weight:400;line-height:1;color:#f7f8f8;margin-bottom:8px}
.featured-scope span{display:block;font-size:7px;line-height:1.5;letter-spacing:.16em;color:#9fa7ac}
.featured-visual{position:relative}
.featured-visual figcaption{position:absolute;left:18px;bottom:16px;padding:8px 10px;background:rgba(17,22,25,.78);border:1px solid rgba(126,160,238,.28);backdrop-filter:blur(8px);font-size:7px;letter-spacing:.16em;color:#dce4f8;pointer-events:none;transition:opacity .25s ease}
.featured-visual:hover figcaption{opacity:.65}
@media(max-width:560px){.featured-scope{grid-template-columns:1fr}.featured-scope>div,.featured-scope>div+div{padding:14px 0;border-right:0;border-bottom:1px solid #3a4145}.featured-scope>div:last-child{border-bottom:0}.featured-visual figcaption{position:static;display:block;background:transparent;border:0;padding:10px 0 0}}


/* Section 02 + 03 zoom refinement — remove side margins and preserve rounded corners */
.project-preview-popout{
  width:auto !important;
  height:auto !important;
  max-width:min(94vw, 1440px) !important;
  max-height:88vh !important;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  border-radius:18px !important;
  box-shadow:0 34px 90px rgba(17,26,29,.32) !important;
  overflow:hidden !important;
}
.project-art,
.project-image,
.featured-visual,
.featured-visual img{
  border-radius:16px;
}


/* Direct email CTA */
.conversation-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;margin-top:28px;padding:15px 24px;border-radius:999px;background:#2e63d5;color:#fff;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.12em;text-decoration:none;border:1px solid #2e63d5;transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease,box-shadow .3s ease}
.conversation-btn:hover{background:#234ea8;border-color:#234ea8;transform:translateY(-2px);box-shadow:0 10px 30px rgba(46,99,213,.22)}
.conversation-arrow{font-size:16px;line-height:1;transition:transform .3s ease}
.conversation-btn:hover .conversation-arrow{transform:translate(3px,-3px)}
@media(max-width:560px){.conversation-btn{width:100%;padding:15px 18px}}


/* Contact social actions */
.contact-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.contact-actions .conversation-btn{
  margin-top:0;
}
.linkedin-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:15px 22px;
  border:1px solid #cbd1d5;
  border-radius:999px;
  background:transparent;
  color:#171a1d;
  font-family:var(--sans);
  font-size:10px;
  font-weight:600;
  letter-spacing:.12em;
  text-decoration:none;
  transition:border-color .3s ease,color .3s ease,transform .3s ease,background .3s ease,box-shadow .3s ease;
}
.linkedin-btn:hover{
  border-color:#2e63d5;
  color:#2e63d5;
  background:rgba(255,255,255,.45);
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(46,99,213,.10);
}
.linkedin-arrow{
  font-size:16px;
  line-height:1;
  transition:transform .3s ease;
}
.linkedin-btn:hover .linkedin-arrow{
  transform:translate(3px,-3px);
}
@media(max-width:560px){
  .contact-actions{align-items:stretch}
  .contact-actions .conversation-btn,
  .linkedin-btn{width:100%}
}


/* LinkedIn icon treatment */
.linkedin-icon-btn{
  width:48px;
  height:48px;
  padding:0;
  flex:0 0 48px;
  border-radius:50%;
}
.linkedin-icon{
  width:21px;
  height:21px;
  fill:currentColor;
}
.footer-linkedin{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  margin-top:4px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  transition:border-color .25s ease,color .25s ease,transform .25s ease;
}
.footer-linkedin:hover{
  border-color:#2e63d5;
  color:#2e63d5;
  transform:translateY(-2px);
}
.footer-linkedin-icon{
  width:14px;
  height:14px;
  fill:currentColor;
}
@media(max-width:560px){
  .contact-actions .linkedin-icon-btn{
    width:48px;
    max-width:48px;
    align-self:flex-start;
  }
}


/* Use supplied LinkedIn artwork */
.linkedin-icon-btn{
  overflow:hidden;
  border-color:transparent;
  background:transparent;
}
.linkedin-icon-btn:hover{
  background:transparent;
  border-color:transparent;
}
.linkedin-icon{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  border-radius:50%;
}
.footer-linkedin{
  overflow:hidden;
  padding:0;
  border-color:transparent;
}
.footer-linkedin-icon{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  border-radius:50%;
}

/* Section 01 — background to brand positioning */
.position-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.25fr) minmax(230px,.7fr);gap:clamp(34px,5vw,84px);align-items:start;margin-top:clamp(36px,5vw,72px)}
.position-heading h2{margin:0;max-width:620px}
.position-story{max-width:700px}
.position-story p{margin:0 0 22px;color:var(--muted,#686d70);line-height:1.8}
.position-story .position-lead{color:var(--ink,#171a1d);font-size:clamp(18px,1.5vw,23px);line-height:1.55}
.position-story strong{color:var(--ink,#171a1d);font-weight:600}
.position-journey{border-top:1px solid var(--line,#d9dddc);padding-top:22px}
.journey-stat{display:flex;align-items:flex-end;gap:14px;padding-bottom:24px;border-bottom:1px solid var(--line,#d9dddc)}
.journey-stat strong{font-family:var(--serif);font-size:clamp(44px,5vw,72px);line-height:.9;font-weight:400;letter-spacing:-.05em;color:var(--accent,#2e63d5)}
.journey-stat span,.journey-company{font-family:var(--sans);font-size:9px;line-height:1.45;letter-spacing:.14em;font-weight:600}
.journey-company{padding:24px 0 14px;color:var(--muted,#686d70)}
.journey-path{list-style:none;margin:0;padding:0}
.journey-path li{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line,#d9dddc);font-family:var(--sans);font-size:12px;letter-spacing:.02em}
.journey-path li span{color:var(--accent,#2e63d5);font-size:9px;letter-spacing:.12em}
.position-manifesto{margin-top:clamp(48px,7vw,96px);padding:26px 0;border-top:1px solid var(--line,#d9dddc);border-bottom:1px solid var(--line,#d9dddc);display:flex;align-items:center;justify-content:space-between;gap:28px;font-family:var(--sans);font-size:clamp(11px,1.1vw,14px);letter-spacing:.12em}
.position-manifesto span{color:var(--muted,#686d70)}
.position-manifesto strong{color:var(--accent,#2e63d5);font-weight:600}
@media(max-width:980px){.position-layout{grid-template-columns:1fr 1fr}.position-heading{grid-column:1/-1}.position-story{max-width:none}}
@media(max-width:700px){.position-layout{grid-template-columns:1fr;gap:34px}.position-heading{grid-column:auto}.position-manifesto{align-items:flex-start;flex-direction:column;gap:10px}}


/* Compact vertical rhythm — reduce whitespace between major sections */
.section{
  padding-top:clamp(64px,7vw,104px) !important;
  padding-bottom:clamp(64px,7vw,104px) !important;
}

/* Keep the hero visually generous while tightening the transition below it */
.hero{
  padding-bottom:clamp(54px,6vw,88px) !important;
}

/* Avoid compounded whitespace where consecutive sections meet */
.section + .section{
  padding-top:clamp(48px,5.5vw,82px) !important;
}

/* Contact should stay comfortably separated from the footer */
.contact.section{
  padding-bottom:clamp(64px,7vw,100px) !important;
}

@media(max-width:700px){
  .section{
    padding-top:56px !important;
    padding-bottom:56px !important;
  }
  .section + .section{
    padding-top:44px !important;
  }
  .hero{
    padding-bottom:50px !important;
  }
}

/* Position: tighter three-column balance with centered, justified narrative */
.position-layout{
  grid-template-columns:minmax(250px,.85fr) minmax(430px,1.35fr) minmax(250px,.85fr)!important;
  gap:clamp(28px,4vw,62px)!important;
  align-items:center!important;
}
.position-heading,.position-journey{align-self:center}
.position-story{
  width:100%;
  max-width:640px!important;
  justify-self:center;
  align-self:center;
}
.position-story p,.position-story .position-lead{
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
  -webkit-hyphens:auto;
}
.position-journey{width:100%}
@media(max-width:980px){
  .position-layout{grid-template-columns:1fr 1fr!important;align-items:start!important}
  .position-heading{grid-column:1/-1}
  .position-story{max-width:none!important;justify-self:stretch}
}
@media(max-width:700px){
  .position-layout{grid-template-columns:1fr!important}
  .position-story p,.position-story .position-lead{
    text-align:left;
    hyphens:none;
    -webkit-hyphens:none;
  }
}

/* Evidence-first + reference-inspired navigation */
.position-human{margin-top:28px!important;padding-top:20px;border-top:1px solid var(--line,#d9dddc);color:var(--ink,#171a1d)!important;font-size:13px;line-height:1.7!important}
.featured-proof{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:28px 0 30px;padding:24px 0;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.featured-proof span{display:block;margin-bottom:10px;font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.14em;opacity:.65}
.featured-proof p,.featured-proof li{font-size:12px;line-height:1.65}.featured-proof p{margin:0}.featured-proof ul{list-style:none;margin:0;padding:0}.featured-proof li{padding-left:14px;position:relative}.featured-proof li:before{content:"—";position:absolute;left:0;opacity:.55}
.project-card[data-reveal]:nth-child(2){transition-delay:90ms}.project-card[data-reveal]:nth-child(3){transition-delay:180ms}.project-card[data-reveal]:nth-child(4){transition-delay:270ms}
.page-scroll-control{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;align-items:center;gap:11px;min-height:42px;padding:0 15px;border:1px solid rgba(23,26,29,.18);border-radius:999px;background:rgba(244,245,243,.88);color:#171a1d;backdrop-filter:blur(14px);font-family:var(--sans);font-size:8px;font-weight:600;letter-spacing:.13em;cursor:pointer;box-shadow:0 8px 28px rgba(17,26,29,.08);transition:.3s ease}
.page-scroll-control:hover{transform:translateY(-2px);border-color:#2e63d5;color:#2e63d5;background:rgba(255,255,255,.95)}
.scroll-control-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid currentColor;border-radius:50%;font-size:12px;transition:transform .35s ease}.page-scroll-control.is-back-to-top .scroll-control-icon{transform:rotate(180deg)}
@media(max-width:760px){.featured-proof{grid-template-columns:1fr}.page-scroll-control{right:14px;bottom:14px}.page-scroll-control #scroll-control-label{display:none}}


/* Scroll control reliability fix */
.page-scroll-control{
  pointer-events:auto !important;
  touch-action:manipulation;
  user-select:none;
  -webkit-user-select:none;
}
.page-scroll-control.is-back-to-top .scroll-control-icon{
  transform:none !important;
}

.case-study-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:14px;
  color:inherit;
  text-decoration:none;
  font-family:var(--sans);
  font-size:9px;
  font-weight:600;
  letter-spacing:.13em;
}
.case-study-link span{transition:transform .25s ease}
.case-study-link:hover span{transform:translateX(4px)}
.additional-case-study{padding-top:48px!important}.case-preview-card{display:grid;grid-template-columns:1.45fr .55fr;gap:50px;margin-top:34px;padding:clamp(30px,4vw,58px);border:1px solid var(--line,#d9dddc);border-radius:20px;background:#1c2022;color:#f4f5f3;text-decoration:none;transition:.35s ease}.case-preview-card:hover{transform:translateY(-4px);box-shadow:0 26px 70px rgba(17,26,29,.16)}.case-preview-type,.case-preview-side>span,.case-preview-side small{font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.14em;color:#aeb4b6}.case-preview-copy h2{margin:18px 0 22px;font-family:var(--serif);font-weight:400;font-size:clamp(34px,4.3vw,64px);line-height:1.05;letter-spacing:-.04em}.case-preview-copy p{max-width:720px;margin:0;color:#aeb4b6;font-size:14px;line-height:1.75}.case-preview-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.case-preview-tags span{padding:7px 10px;border:1px solid rgba(255,255,255,.17);border-radius:999px;font-family:var(--sans);font-size:9px}.case-preview-side{display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,.16);padding-left:34px}.case-preview-side strong{margin-top:auto;font-family:var(--serif);font-size:70px;font-weight:400;line-height:.9;color:#2e63d5}.case-preview-side small{margin-top:9px}.case-preview-side b{margin-top:32px;font-family:var(--sans);font-size:9px;letter-spacing:.13em}@media(max-width:700px){.case-preview-card{grid-template-columns:1fr}.case-preview-side{border-left:0;border-top:1px solid rgba(255,255,255,.16);padding:26px 0 0}.case-preview-side strong{margin-top:30px}}

/* Featured systems — looping gallery */
.featured-gallery-section{overflow:hidden}
.featured-gallery-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;
  margin-bottom:30px;
}
.featured-gallery-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
}
.featured-case-label{
  font-family:var(--sans);
  font-size:9px;
  font-weight:600;
  letter-spacing:.14em;
  color:var(--muted,#686d70);
}
.featured-case-trigger{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 17px;
  border:1px solid var(--line,#d9dddc);
  border-radius:999px;
  color:var(--ink,#171a1d);
  text-decoration:none;
  font-family:var(--sans);
  font-size:9px;
  font-weight:600;
  letter-spacing:.12em;
  transition:.3s ease;
}
.featured-case-trigger:hover{
  background:#2e63d5;
  border-color:#2e63d5;
  color:#fff;
}
.featured-gallery-copy{
  display:grid;
  grid-template-columns:minmax(280px,.9fr) minmax(380px,1.1fr);
  column-gap:clamp(40px,7vw,110px);
  row-gap:18px;
  align-items:end;
  margin-bottom:34px;
}
.featured-gallery-copy .featured-type{
  grid-column:1;
  margin:0 0 8px;
}
.featured-gallery-copy h2{
  grid-column:1;
  margin:0;
}
.featured-gallery-copy .featured-summary{
  grid-column:2;
  grid-row:1/3;
  align-self:end;
  max-width:700px;
  margin:0;
}
.featured-gallery-copy .featured-analysis{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin-top:14px;
}
.featured-carousel{
  position:relative;
  width:100%;
  margin-top:8px;
}
.featured-gallery-track{
  display:flex;
  align-items:center;
  gap:22px;
  width:max-content;
  transform:translateX(0);
  transition:transform .85s cubic-bezier(.22,.8,.22,1);
  will-change:transform;
}
.featured-gallery-slide{
  display:block;
  width:min(78vw,1080px);
  flex:0 0 min(78vw,1080px);
  opacity:.38;
  transform:scale(.94);
  transform-origin:center;
  transition:opacity .65s ease,transform .65s ease;
  text-decoration:none;
}
.featured-gallery-slide.is-active{
  opacity:1;
  transform:scale(1);
}
.featured-gallery-slide img{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  border-radius:20px;
  box-shadow:0 28px 75px rgba(17,26,29,.18);
}
.featured-gallery-nav{
  position:absolute;
  top:50%;
  z-index:5;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:50%;
  background:rgba(17,26,29,.68);
  color:#fff;
  backdrop-filter:blur(12px);
  cursor:pointer;
  transform:translateY(-50%);
  transition:.25s ease;
}
.featured-gallery-nav:hover{background:#2e63d5;border-color:#2e63d5}
.featured-gallery-prev{left:16px}
.featured-gallery-next{right:16px}
.featured-gallery-progress{
  display:flex;
  justify-content:center;
  gap:7px;
  margin-top:22px;
}
.featured-gallery-progress span{
  width:28px;
  height:2px;
  background:#cfd4d3;
  transition:.3s ease;
}
.featured-gallery-progress span.is-active{background:#2e63d5;width:46px}
.featured-gallery-copy.is-changing{
  opacity:.25;
  transform:translateY(5px);
}
.featured-gallery-copy{
  transition:opacity .25s ease,transform .25s ease;
}
@media(max-width:800px){
  .featured-gallery-head{align-items:flex-start;flex-direction:column}
  .featured-gallery-actions{align-items:flex-start}
  .featured-gallery-copy{grid-template-columns:1fr}
  .featured-gallery-copy .featured-type,
  .featured-gallery-copy h2,
  .featured-gallery-copy .featured-summary,
  .featured-gallery-copy .featured-analysis{grid-column:1;grid-row:auto}
  .featured-gallery-copy .featured-analysis{grid-template-columns:1fr}
  .featured-gallery-slide{width:88vw;flex-basis:88vw}
}

/* Julius-inspired editorial showcase v2 */
.featured-showcase-viewport{
  width:100vw;
  margin-left:calc(50% - 50vw);
  overflow:hidden;
  position:relative;
  padding:12px 0 20px;
  cursor:grab;
  touch-action:pan-y;
}
.featured-showcase-viewport.is-dragging{cursor:grabbing}
.featured-showcase-track{
  display:flex;
  align-items:center;
  gap:clamp(22px,3vw,48px);
  width:max-content;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.featured-gallery-slide{
  flex:0 0 min(76vw,1180px)!important;
  width:min(76vw,1180px)!important;
  opacity:.34!important;
  transform:scale(.91)!important;
  transition:opacity .5s ease,transform .6s cubic-bezier(.22,.8,.22,1),filter .5s ease!important;
  filter:saturate(.72);
}
.featured-gallery-slide.is-active{
  opacity:1!important;
  transform:scale(1)!important;
  filter:saturate(1);
}
.featured-gallery-slide img{
  width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px;
  box-shadow:0 28px 80px rgba(17,26,29,.18);
  pointer-events:none;user-select:none;
}
.featured-drag-hint{
  position:absolute;right:4vw;bottom:36px;
  padding:10px 13px;border-radius:999px;
  background:rgba(17,26,29,.76);color:#fff;
  backdrop-filter:blur(12px);
  font-family:var(--sans);font-size:8px;font-weight:600;letter-spacing:.13em;
  pointer-events:none;
}
.featured-index{
  display:flex;align-items:center;justify-content:center;gap:12px;
  margin-top:10px;font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.12em;color:var(--muted,#686d70)
}
.featured-index i{display:block;width:72px;height:1px;background:var(--line,#d9dddc);position:relative}
.featured-index i:after{content:"";position:absolute;left:0;top:0;width:50%;height:1px;background:#2e63d5;transition:transform .45s ease}
.featured-index.is-second i:after{transform:translateX(100%)}
@media(max-width:760px){
 .featured-gallery-slide{flex-basis:86vw!important;width:86vw!important}
 .featured-drag-hint{display:none}
}
@media(prefers-reduced-motion:reduce){
 .featured-gallery-slide,.featured-index i:after,.featured-gallery-copy{transition:none!important}
}

/* Featured systems — split editorial + thumbnail gallery */
.featured-thumb-section{overflow:hidden}
.featured-thumb-layout{
  display:grid;
  grid-template-columns:minmax(330px,.82fr) minmax(520px,1.18fr);
  gap:clamp(42px,6vw,96px);
  align-items:start;
  margin-top:34px;
}
.featured-thumb-copy{position:sticky;top:120px;max-width:570px}
.featured-thumb-copy .featured-case-label{display:block;margin-bottom:25px}
.featured-thumb-copy .featured-type{margin:0 0 12px}
.featured-thumb-copy h2{margin:0 0 24px}
.featured-thumb-copy .featured-summary{margin:0 0 30px;max-width:540px}
.featured-thumb-copy .featured-analysis{
  display:grid;grid-template-columns:1fr 1fr;gap:22px;
  padding-top:24px;border-top:1px solid var(--line,#d9dddc);margin-bottom:28px
}
.featured-thumb-copy .featured-analysis span{
  font-family:var(--sans);font-size:8px;font-weight:700;letter-spacing:.14em;color:#2e63d5
}
.featured-thumb-copy .featured-analysis p{margin:8px 0 0;font-size:12px;line-height:1.65;color:var(--muted,#686d70)}
.featured-main-frame{
  position:relative;overflow:hidden;border-radius:20px;background:#11181e;
  cursor:zoom-in;box-shadow:0 24px 70px rgba(17,26,29,.14)
}
.featured-main-frame img{
  display:block;width:100%;aspect-ratio:16/10;object-fit:cover;
  transition:opacity .28s ease,transform 1.2s cubic-bezier(.18,.72,.22,1)
}
.featured-main-frame:hover img{transform:scale(1.025)}
.featured-main-frame.is-changing img{opacity:.18;transform:scale(.985)}
.featured-zoom-cue{
  position:absolute;right:18px;bottom:18px;padding:9px 12px;border-radius:999px;
  background:rgba(15,20,24,.76);color:#fff;backdrop-filter:blur(10px);
  font-family:var(--sans);font-size:8px;font-weight:600;letter-spacing:.12em
}
.featured-thumbnails{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px
}
.featured-thumbnail{
  appearance:none;border:1px solid var(--line,#d9dddc);background:transparent;
  padding:7px;border-radius:13px;text-align:left;cursor:pointer;opacity:.52;
  transition:opacity .35s ease,border-color .35s ease,transform .35s ease
}
.featured-thumbnail:hover{opacity:.8;transform:translateY(-2px)}
.featured-thumbnail.is-active{opacity:1;border-color:#2e63d5}
.featured-thumbnail img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
.featured-thumbnail span{
  display:flex;gap:10px;padding:10px 5px 5px;font-family:var(--sans);
  font-size:8px;font-weight:600;letter-spacing:.1em;color:var(--ink,#171a1d)
}
.featured-thumbnail b{color:#2e63d5}
.featured-lightbox{
  position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  padding:4vw;background:rgba(10,14,17,0);backdrop-filter:blur(0);
  pointer-events:none;transition:background .7s ease,backdrop-filter .7s ease
}
.featured-lightbox img{
  max-width:94vw;max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:20px;
  box-shadow:0 38px 110px rgba(0,0,0,.42);opacity:0;
  transform:scale(.72);transition:opacity .75s ease,transform 1.15s cubic-bezier(.16,.78,.2,1)
}
.featured-lightbox.is-open{pointer-events:auto;background:rgba(10,14,17,.86);backdrop-filter:blur(13px)}
.featured-lightbox.is-open img{opacity:1;transform:scale(1)}
.featured-lightbox-close{
  position:absolute;top:24px;right:28px;width:44px;height:44px;border:1px solid rgba(255,255,255,.3);
  border-radius:50%;background:rgba(20,25,29,.55);color:#fff;font-size:25px;cursor:pointer;z-index:2
}
@media(max-width:960px){
 .featured-thumb-layout{grid-template-columns:1fr}
 .featured-thumb-copy{position:relative;top:auto;max-width:720px}
}
@media(max-width:600px){
 .featured-thumb-copy .featured-analysis,.featured-thumbnails{grid-template-columns:1fr}
 .featured-thumb-layout{gap:34px}
}
@media(prefers-reduced-motion:reduce){
 .featured-main-frame img,.featured-lightbox,.featured-lightbox img,.featured-thumbnail{transition:none!important}
}

/* Featured systems polish — Julius-inspired thumbnail rail */
.featured-thumb-gallery{
  min-width:0;
  overflow:hidden;
  align-self:center;
}
.julius-thumb-rail{
  display:flex!important;
  grid-template-columns:none!important;
  gap:clamp(16px,2vw,26px)!important;
  margin-top:0!important;
  width:max-content;
  padding:10px clamp(20px,3vw,44px) 26px 4px;
  transform:translate3d(0,0,0);
  will-change:transform;
  cursor:grab;
  touch-action:pan-y;
}
.julius-thumb-rail.is-dragging{cursor:grabbing}
.julius-thumb-rail .featured-thumbnail{
  flex:0 0 clamp(300px,34vw,510px);
  width:clamp(300px,34vw,510px);
  padding:0!important;
  border:0!important;
  border-radius:18px!important;
  overflow:hidden;
  background:#11181e!important;
  opacity:.34;
  transform:scale(.92);
  transform-origin:center;
  filter:saturate(.72);
  box-shadow:0 22px 60px rgba(17,26,29,.13);
  transition:opacity .55s ease,transform .7s cubic-bezier(.22,.8,.22,1),filter .55s ease,box-shadow .55s ease!important;
}
.julius-thumb-rail .featured-thumbnail.is-active{
  opacity:1;
  transform:scale(1);
  filter:saturate(1);
  box-shadow:0 30px 78px rgba(17,26,29,.20);
}
.julius-thumb-rail .featured-thumbnail:hover{
  opacity:.82;
  transform:scale(.955);
}
.julius-thumb-rail .featured-thumbnail.is-active:hover{opacity:1;transform:scale(1.012)}
.julius-thumb-rail .featured-thumbnail img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  border-radius:18px!important;
  display:block;
  pointer-events:none;
  user-select:none;
}
.featured-thumb-copy .featured-case-trigger{
  color:#fff!important;
  background:#2e63d5!important;
  border-color:#2e63d5!important;
}
.featured-thumb-copy .featured-case-trigger span{color:#fff!important}
.featured-thumb-copy .featured-case-trigger:hover{
  background:#234ea8!important;
  border-color:#234ea8!important;
  color:#fff!important;
}
@media(max-width:960px){
 .featured-thumb-gallery{overflow:visible}
 .julius-thumb-rail{width:100%;overflow-x:auto;scroll-snap-type:x mandatory;padding-right:8vw}
 .julius-thumb-rail .featured-thumbnail{flex-basis:min(78vw,500px);width:min(78vw,500px);scroll-snap-align:start}
}
@media(max-width:600px){
 .julius-thumb-rail{display:flex!important}
 .julius-thumb-rail .featured-thumbnail{flex-basis:82vw;width:82vw}
}

.featured-thumbnail{text-decoration:none;color:inherit}
.case-study-nav{max-width:1440px;width:calc(100% - 48px);margin:22px auto 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:12px 0 18px;border-bottom:1px solid var(--line,#d9dddc);font-family:var(--sans,Arial,sans-serif);font-size:9px;font-weight:600;letter-spacing:.12em}
.case-study-nav a{color:var(--ink,#171a1d);text-decoration:none;transition:color .25s ease}
.case-study-nav a:last-child{text-align:right}.case-study-nav a:hover{color:#2e63d5}.case-study-nav span{color:var(--muted,#686d70)}
@media(max-width:650px){.case-study-nav{width:calc(100% - 32px);grid-template-columns:1fr 1fr}.case-study-nav span{display:none}}

/* Client-appeal cohesion polish */
.case-study-page .case-nav{justify-content:flex-start!important}
.featured-thumb-copy .featured-summary{max-width:520px}
.method h2{max-width:760px}

/* Full-width case-study navigation shell */
.case-study-nav{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:16px max(24px,calc((100vw - 1440px)/2)) 18px!important;
  box-sizing:border-box;
  border-top:1px solid var(--line,#d9dddc);
  border-bottom:1px solid var(--line,#d9dddc);
}
@media(max-width:650px){
  .case-study-nav{
    width:100%!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
}


/* Main navigation — full-bleed shell with protected brand area */
.site-header,
.header{
  width:100%!important;
  max-width:none!important;
  left:0!important;
  right:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  background:rgba(244,245,243,.96)!important;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(217,221,220,.92)!important;
  z-index:1000!important;
}

/* If the header itself carries the shell class, restore grid alignment with viewport padding. */
.site-header,
.header{
  padding-left:max(24px,calc((100vw - 1440px)/2))!important;
  padding-right:max(24px,calc((100vw - 1440px)/2))!important;
}

/* Prevent logo/brand from visually blending with sections behind the sticky nav. */
.site-header .brand,
.header .brand{
  position:relative;
  z-index:2;
  isolation:isolate;
}

/* Ensure any existing inner header shell doesn't constrain the background itself. */
.site-header .shell,
.header .shell,
.site-header .nav-shell,
.header .nav-shell{
  width:100%!important;
  max-width:1440px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Avoid double horizontal padding when an inner shell is present. */
.site-header > .shell,
.header > .shell,
.site-header > .nav-shell,
.header > .nav-shell{
  padding-left:0!important;
  padding-right:0!important;
}

@media(max-width:700px){
  .site-header,
  .header{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}


/* Main page actual header element: <header class="nav shell"> */
header.nav.shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  left:0!important;
  right:0!important;
  box-sizing:border-box!important;
  padding-left:max(24px,calc((100vw - 1440px)/2))!important;
  padding-right:max(24px,calc((100vw - 1440px)/2))!important;
  background:rgba(244,245,243,.97)!important;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(217,221,220,.95)!important;
  z-index:1000!important;
}
header.nav.shell .brand{
  position:relative;
  z-index:2;
}
@media(max-width:700px){
  header.nav.shell{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}

/* Case Study 01 — header aligned with Case Study 02 */
.case-header{
  position:sticky;
  top:0;
  z-index:1000;
  width:100%;
  max-width:none;
  margin:0;
  background:rgba(244,245,243,.97);
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(217,221,220,.95);
}
.case-header-inner{
  width:100%;
  max-width:1440px;
  min-height:76px;
  margin:0 auto;
  padding:0 24px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.case-header .brand{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--ink,#171a1d);
  text-decoration:none;
  flex:0 0 auto;
}
.case-anchor-nav{
  display:flex;
  align-items:center;
  gap:clamp(18px,2.5vw,36px);
}
.case-anchor-nav a{
  color:var(--ink,#171a1d);
  text-decoration:none;
  font-family:var(--sans,"DM Sans",sans-serif);
  font-size:10px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:color .25s ease;
}
.case-anchor-nav a:hover{color:#2e63d5}
#architecture,#workflow-logic,#outcomes,.anchor-target{scroll-margin-top:112px}
@media(max-width:700px){
  .case-header-inner{min-height:68px;padding:0 16px}
  .case-header .brand-copy small{display:none}
  .case-anchor-nav{gap:13px}
  .case-anchor-nav a{font-size:8px;letter-spacing:.05em}
}
@media(max-width:480px){
  .case-header .brand-copy{display:none}
  .case-anchor-nav{gap:11px}
}

/* Case-study scroll control cohesion */
.page-scroll-control{
  position:fixed;
  right:clamp(18px,2.5vw,38px);
  bottom:clamp(18px,2.5vw,34px);
  z-index:900;
  display:flex;
  align-items:center;
  gap:11px;
  min-height:42px;
  padding:0 16px;
  border:1px solid rgba(23,26,29,.16);
  border-radius:999px;
  background:rgba(244,245,243,.94);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  color:var(--ink,#171a1d);
  box-shadow:0 12px 34px rgba(17,26,29,.10);
  font-family:var(--sans,"DM Sans",sans-serif);
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  cursor:pointer;
  pointer-events:auto;
  touch-action:manipulation;
  user-select:none;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.page-scroll-control:hover{
  transform:translateY(-2px);
  border-color:#2e63d5;
  background:#fafaf8;
}
.scroll-control-icon{
  font-size:15px;
  line-height:1;
}
@media(max-width:600px){
  .page-scroll-control{
    right:14px;
    bottom:14px;
    min-height:40px;
    padding:0 13px;
  }
}


/* =========================================================
   UNIFIED SITE HEADER — main page is the visual source of truth
   ========================================================= */
header.nav.shell,
header.nav.shell.unified-site-header{
  position:sticky!important;
  top:0!important;
  z-index:1000!important;
  width:100%!important;
  max-width:none!important;
  min-height:76px!important;
  margin:0!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:32px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  padding-left:max(24px,calc((100vw - 1440px)/2))!important;
  padding-right:max(24px,calc((100vw - 1440px)/2))!important;
  background:rgba(244,245,243,.97)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  backdrop-filter:blur(16px)!important;
  border-top:0!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:1px solid rgba(217,221,220,.95)!important;
}

/* Exact brand treatment across every page */
header.nav.shell .brand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex:0 0 auto!important;
  color:var(--ink,#171a1d)!important;
  text-decoration:none!important;
  position:relative!important;
  z-index:2!important;
  isolation:isolate!important;
}
header.nav.shell .brand-mark{
  color:inherit!important;
}
header.nav.shell .brand-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
header.nav.shell .brand-copy strong,
header.nav.shell .brand-copy small{
  color:inherit!important;
}

/* Same navigation typography, line treatment and hover behavior */
header.nav.shell .nav-links{
  display:flex!important;
  align-items:center!important;
  gap:clamp(18px,2.5vw,36px)!important;
}
header.nav.shell .nav-links a{
  position:relative!important;
  color:var(--ink,#171a1d)!important;
  text-decoration:none!important;
  font-family:var(--sans,"DM Sans",sans-serif)!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  transition:color .25s ease!important;
}
header.nav.shell .nav-links a::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:100%!important;
  bottom:-8px!important;
  height:1px!important;
  background:#2e63d5!important;
  transition:right .28s ease!important;
}
header.nav.shell .nav-links a:hover{
  color:#2e63d5!important;
}
header.nav.shell .nav-links a:hover::after{
  right:0!important;
}

/* Main-page CTA styling reused on case-study headers */
header.nav.shell .nav-cta{
  flex:0 0 auto!important;
}

@media(max-width:700px){
  header.nav.shell,
  header.nav.shell.unified-site-header{
    min-height:68px!important;
    gap:14px!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  header.nav.shell .nav-links{
    gap:13px!important;
  }
  header.nav.shell .nav-links a{
    font-size:8px!important;
    letter-spacing:.05em!important;
  }
  header.nav.shell .brand-copy small{
    display:none!important;
  }
}
@media(max-width:560px){
  header.nav.shell .nav-cta{
    display:none!important;
  }
}
@media(max-width:440px){
  header.nav.shell .brand-copy{
    display:none!important;
  }
}

/* Compact cohesion pass — 2026-10 */
.position-story p{font-size:14px!important;line-height:1.75!important}
.position-story .position-lead{font-size:15px!important}
.method h2{font-size:clamp(34px,4.2vw,58px)!important}
@media(min-width:901px){
  .position.section,.work.section,.featured-system.section,.method.section,.contact.section{padding-top:clamp(64px,7vw,92px)!important;padding-bottom:clamp(64px,7vw,92px)!important}
}


/* Centered page scroll control — shared across all portfolio pages */
.portfolio-scroll-control{
  position:fixed;
  left:50%;
  bottom:28px;
  transform:translateX(-50%) translateY(0);
  z-index:1200;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:10px 16px;
  border:1px solid rgba(217,221,220,.95);
  border-radius:999px;
  background:rgba(244,245,243,.92);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  color:#171a1d;
  font:600 9px/1 "DM Sans",sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 8px 26px rgba(17,26,29,.08);
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .35s ease,transform .35s ease,visibility .35s ease;
}
.portfolio-scroll-control.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(-50%) translateY(12px);
}
.portfolio-scroll-control .scroll-top-label{display:none}
.portfolio-scroll-control.is-back-to-top .scroll-read-label{display:none}
.portfolio-scroll-control.is-back-to-top .scroll-top-label{display:inline}
@media(max-width:760px){
  .portfolio-scroll-control{bottom:18px}
}
@media(prefers-reduced-motion:reduce){
  .portfolio-scroll-control{transition:none}
}

/* The former right-side control is retired. */
.page-scroll-control{display:none!important;}

/* Featured Systems gallery navigation */
.featured-gallery-arrows{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:14px}
.featured-gallery-arrow{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9dddc;border-radius:50%;background:rgba(250,250,248,.96);color:#171a1d;font:500 18px/1 "DM Sans",sans-serif;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.featured-gallery-arrow:hover{transform:translateY(-2px);background:#fff;border-color:#bfc5c3}
.featured-gallery-arrow:focus-visible{outline:2px solid #2e63d5;outline-offset:3px}
@media(max-width:760px){.featured-gallery-arrows{justify-content:center;margin-top:16px}.featured-gallery-arrow{width:40px;height:40px}}


/* Featured Systems: arrows live inside the scrolling carousel */
#featured-thumbnails{
  position:relative;
}
.featured-gallery-arrows{display:none!important}
.featured-gallery-overlay-controls{
  position:sticky;
  left:0;
  top:50%;
  width:100%;
  height:0;
  z-index:20;
  pointer-events:none;
  transform:translateY(-50%);
}
.featured-gallery-overlay-controls .featured-gallery-arrow{
  position:absolute;
  top:0;
  width:42px;
  height:42px;
  border:1px solid rgba(217,221,220,.95);
  border-radius:50%;
  background:rgba(250,250,248,.92);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  color:#171a1d;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  pointer-events:auto;
  box-shadow:0 8px 24px rgba(17,26,29,.10);
  transform:translateY(-50%);
}
.featured-gallery-overlay-controls .featured-gallery-prev{left:14px}
.featured-gallery-overlay-controls .featured-gallery-next{right:14px}
.featured-gallery-overlay-controls .featured-gallery-arrow:hover{
  background:#fff;
  border-color:#bfc5c3;
}
@media(max-width:760px){
  .featured-gallery-overlay-controls .featured-gallery-arrow{width:38px;height:38px}
  .featured-gallery-overlay-controls .featured-gallery-prev{left:8px}
  .featured-gallery-overlay-controls .featured-gallery-next{right:8px}
}


/* Featured Systems navigation — centered underneath the image carousel */
.featured-gallery-overlay-controls{display:none!important}
.featured-gallery-below-controls{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  height:auto;
  margin-top:18px;
  transform:none;
  pointer-events:auto;
  z-index:20;
}
.featured-gallery-below-controls .featured-gallery-arrow{
  position:static;
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(217,221,220,.95);
  border-radius:50%;
  background:rgba(250,250,248,.96);
  color:#171a1d;
  font:500 18px/1 "DM Sans",sans-serif;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(17,26,29,.08);
  transform:none;
}
.featured-gallery-below-controls .featured-gallery-arrow:hover{
  background:#fff;
  border-color:#bfc5c3;
  transform:translateY(-2px);
}
@media(max-width:760px){
  .featured-gallery-below-controls{margin-top:14px}
  .featured-gallery-below-controls .featured-gallery-arrow{width:40px;height:40px}
}


/* Keep working Featured Systems arrows visually contained beneath carousel images */
.featured-carousel-shell{
  position:relative;
}
.featured-gallery-below-controls{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  margin:14px auto 0;
  padding:0;
  position:relative;
  left:auto;
  right:auto;
  top:auto;
  bottom:auto;
  transform:none;
}
.featured-gallery-below-controls .featured-gallery-arrow{
  flex:0 0 auto;
  position:static;
  margin:0;
  transform:none;
}
.featured-gallery-below-controls .featured-gallery-arrow:hover{
  transform:translateY(-2px);
}


/* Featured Systems — dedicated carousel navigation bar */
.featured-carousel-shell{position:relative}
.featured-gallery-below-controls{
  width:min(420px,calc(100% - 24px));
  min-height:52px;
  margin:16px auto 0;
  padding:6px 8px;
  display:grid;
  grid-template-columns:44px 1fr 44px;
  align-items:center;
  gap:8px;
  position:relative;
  inset:auto;
  transform:none;
  border:1px solid rgba(217,221,220,.95);
  border-radius:999px;
  background:rgba(250,250,248,.92);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  box-shadow:0 8px 24px rgba(17,26,29,.06);
}
.featured-gallery-below-controls .featured-gallery-arrow{
  position:static;
  width:40px;
  height:40px;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#171a1d;
  font:500 18px/1 "DM Sans",sans-serif;
  cursor:pointer;
  box-shadow:none;
  transform:none;
}
.featured-gallery-below-controls .featured-gallery-arrow:hover{
  background:#eceeeb;
  transform:none;
}
.featured-gallery-position{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#686d70;
  font:600 9px/1 "DM Sans",sans-serif;
  letter-spacing:.12em;
}
.featured-gallery-position b{color:#171a1d;font-weight:600}
.featured-gallery-position i{
  display:block;
  width:54px;
  height:1px;
  background:#d9dddc;
}
@media(max-width:760px){
  .featured-gallery-below-controls{
    width:min(300px,calc(100% - 24px));
    min-height:48px;
    grid-template-columns:38px 1fr 38px;
    margin-top:12px;
  }
  .featured-gallery-below-controls .featured-gallery-arrow{width:36px;height:36px}
  .featured-gallery-position i{width:34px}
}


/* Featured carousel nav — minimal transparent treatment */
.featured-gallery-below-controls{
  width:auto;
  min-height:0;
  margin:14px auto 0;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  position:relative;
  inset:auto;
  transform:none;
  border:0!important;
  border-radius:0;
  background:transparent!important;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  box-shadow:none!important;
}
.featured-gallery-below-controls .featured-gallery-arrow{
  position:static;
  width:42px;
  height:42px;
  margin:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0!important;
  border-radius:50%;
  background:transparent!important;
  color:#f7f8f8!important;
  font:500 21px/1 "DM Sans",sans-serif;
  cursor:pointer;
  box-shadow:none!important;
  transform:none;
  transition:opacity .2s ease,transform .2s ease;
}
.featured-gallery-below-controls .featured-gallery-arrow:hover{
  background:transparent!important;
  color:#f7f8f8!important;
  opacity:.72;
  transform:translateY(-1px);
}
.featured-gallery-below-controls .featured-gallery-arrow:focus-visible{
  outline:1px solid #f7f8f8;
  outline-offset:3px;
}
.featured-gallery-position{display:none!important}
@media(max-width:760px){
  .featured-gallery-below-controls{
    width:auto;
    min-height:0;
    margin-top:12px;
    gap:16px;
  }
  .featured-gallery-below-controls .featured-gallery-arrow{
    width:40px;
    height:40px;
  }
}

/* Featured Systems — thumbnails and navigation share one center axis */
.featured-gallery-below-controls{
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* LinkedIn contact CTA — same visual language as Start a Conversation */
.linkedin-conversation-btn{
  margin-top:12px;
  width:max-content;
}
.footer-linkedin{
  width:auto!important;
  height:auto!important;
  border:0!important;
  border-radius:0!important;
  display:inline!important;
  background:transparent!important;
  color:inherit!important;
  text-decoration:none;
}
.footer-linkedin:hover{
  text-decoration:underline;
  text-underline-offset:4px;
}


/* =========================================================
   Cohesion + client-appeal precision pass
   ========================================================= */

/* Keep section rhythm consistent without reintroducing excess whitespace. */
.position.section,
.work.section,
.featured-system.section,
.method.section,
.contact.section{
  scroll-margin-top:84px;
}

/* Featured Systems: consistent hierarchy and cleaner reading measure. */
.featured-copy{
  max-width:760px;
}
#featured-title{
  text-wrap:balance;
}
#featured-summary{
  max-width:700px;
  text-wrap:pretty;
}
#featured-analysis p{
  text-wrap:pretty;
}

/* Workflow imagery stays dominant and consistent. */
#featured-thumbnails .featured-thumbnail{
  border-radius:18px;
  overflow:hidden;
}
#featured-thumbnails .featured-thumbnail img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Contact: intentional vertical CTA hierarchy. */
.contact-actions,
.contact-buttons,
.contact-cta{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
.linkedin-conversation-btn{
  margin-top:0!important;
}

/* Footer: keep social navigation quiet and textual. */
.footer-linkedin,
.footer-linkedin-text{
  width:auto!important;
  height:auto!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  text-decoration:none;
}
.footer-linkedin:hover,
.footer-linkedin-text:hover{
  text-decoration:underline;
  text-underline-offset:4px;
}

/* Case-study disclosure used where needed. */
.case-status-note{
  padding-top:18px;
  padding-bottom:42px;
  color:#686d70;
  font-size:11px;
  line-height:1.7;
  border-top:1px solid #d9dddc;
}
.case-status-note p{
  max-width:760px;
  margin:0;
}

/* Mobile polish: prioritize readability and full-width workflow evidence. */
@media(max-width:760px){
  .hero h1{
    text-wrap:balance;
  }
  .position-story p,
  .card-copy p,
  #featured-summary,
  #featured-analysis p{
    font-size:14px;
    line-height:1.7;
  }
  #featured-thumbnails .featured-thumbnail{
    border-radius:14px;
  }
  .featured-gallery-below-controls{
    margin-top:10px!important;
  }
  .contact-actions,
  .contact-buttons,
  .contact-cta{
    width:100%;
  }
}
