/* GLV Work v6.14: compact portfolio index; public Work page only. */
body.page-work .project-list {
 display:grid; grid-template-columns:minmax(0,1fr); gap:24px;
 width:min(calc(100% - 32px),1440px); margin:0 auto; padding:40px 0 56px;
 align-items:stretch;
}
body.page-work .project-list > .project-case {
 display:flex; flex-direction:column; min-width:0; min-height:0;
 border-radius:20px; overflow:hidden; position:relative;
 opacity:1!important; visibility:visible!important; transform:none!important;
 animation:none!important; transition:box-shadow .2s ease;
}
body.page-work .project-meta {
 flex:none; height:auto; min-height:58px; padding:14px 20px; gap:12px;
 border-bottom:1px solid rgb(128 128 128 / .25);
}
body.page-work .project-meta span {flex:none; font-size:11px;}
body.page-work .project-meta p {
 min-width:0; max-width:none; font-size:10px; line-height:1.5;
 letter-spacing:.04em; text-align:right; overflow-wrap:anywhere;
}
body.page-work .project-stage {
 flex:none; width:100%; aspect-ratio:4 / 3; min-height:0; height:auto;
 padding:20px; border:0; overflow:hidden;
 background:rgb(0 0 0 / .04);
}
body.page-work .project-image {position:absolute; inset:0; display:block;}
body.page-work .project-image img {
 display:block; width:100%; height:100%; object-fit:contain;
 transform:none!important; transition:none!important;
}
body.page-work .project-stage > div {
 width:100%; min-height:0; height:100%; padding:22px;
 backdrop-filter:none;
}
body.page-work .project-stage > div::before {width:130px;height:130px;top:-60px;right:-45px;border-width:28px;}
body.page-work .project-stage div span {font-size:11px;line-height:1.5;margin-bottom:12px;}
body.page-work .project-stage b {font-size:130px;}
body.page-work .project-copy {
 flex:1; min-width:0; min-height:0; padding:22px; gap:0;
}
body.page-work .project-copy-icon {display:none;}
body.page-work .project-copy h2 {
 margin:0; font-size:22px; line-height:1.25; letter-spacing:-.035em;
 overflow-wrap:anywhere;
}
body.page-work .project-copy > p {
 margin:14px 0 22px; font-size:15px; line-height:1.6; opacity:.88;
 display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3;
 overflow:hidden;
}
/* The existing case-overview link opens the full description and feature list. */
body.page-work .project-copy > ul {display:none;}
body.page-work .project-copy .portfolio-actions {
 margin-top:auto; padding-top:0; border-color:rgb(128 128 128 / .35);
}
body.page-work .portfolio-actions a {
 min-height:46px; padding:8px 0; font-size:13px; line-height:1.45;
 border-color:rgb(128 128 128 / .35); overflow-wrap:anywhere;
}
body.page-work .portfolio-actions .ui-icon {flex:none; font-size:19px;}
body.page-work .project-list a:focus-visible {outline:3px solid currentColor;outline-offset:-4px;}
body.page-work .work-system-intro {padding-top:24px; padding-bottom:0;}
body.page-work .work-system-intro .system-showcase {
 aspect-ratio:auto; height:280px; box-shadow:none;
 opacity:1!important; transform:none!important;
}
body.page-work .work-system-intro .system-showcase picture {transform:none!important;}
body.page-work .work-system-intro .system-showcase figcaption {backdrop-filter:none;}
body.page-work .work-note {padding-top:32px;padding-bottom:64px;}
@media(min-width:760px) {
 body.page-work .project-list {grid-template-columns:repeat(2,minmax(0,1fr));width:min(calc(100% - 56px),1440px);}
 body.page-work .work-system-intro .system-showcase {height:300px;}
}
@media(min-width:1200px) {
 body.page-work .project-list {grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:min(calc(100% - 80px),1440px);}
}
@media(hover:hover) and (pointer:fine) {
 body.page-work .project-case:hover {box-shadow:0 10px 28px rgb(13 14 16 / .12);}
 body.page-work .portfolio-actions a:hover {text-decoration:underline;text-underline-offset:4px;}
}
@media(prefers-reduced-motion:reduce) {
 body.page-work .project-list > .project-case {transition:none;}
}

/* GLV v6.15: an integrated, full-width hero and tighter section rhythm. */
body.page-work main {
 display:grid; grid-template-columns:minmax(0,1fr); gap:0;
 width:100%; max-width:none; margin:0; padding:0;
}
body.page-work main > * {grid-column:1 / -1; min-width:0;}
body.page-work .page-hero-work {
 width:100%; max-width:none; margin:0; padding:32px 20px 24px;
 border:0; background:#eef2ff; overflow:hidden;
}
body.page-work .page-hero-work .page-hero-decor {display:none;}
body.page-work .page-hero-work > .eyebrow {
 display:flex; align-items:center; gap:10px; margin:0 0 18px;
 color:#2457ff; font-size:11px; line-height:1.4; letter-spacing:.14em;
}
body.page-work .page-hero-work > .eyebrow::before {
 content:""; width:26px; height:2px; background:currentColor; flex:none;
}
body.page-work .page-hero-work .page-hero-grid {
 display:flex; flex-direction:column; align-items:flex-start; gap:20px;
}
body.page-work .page-hero-work h1 {
 max-width:12em; margin:0; color:#101a36;
 font-size:clamp(38px,5.2vw,68px); line-height:1.03;
 letter-spacing:-.055em; text-wrap:balance;
}
body.page-work .page-hero-work .page-hero-copy {
 width:100%; max-width:570px; padding:0; margin:0;
}
body.page-work .page-hero-work .page-hero-icon {display:none;}
body.page-work .page-hero-work .page-hero-intro {
 font-size:16px; line-height:1.65; color:#49556b; max-width:52ch;
}
body.page-work .page-hero-work .page-hero-copy > span {
 margin-top:20px; padding:0 0 0 12px; border:0; border-left:2px solid #2457ff;
 font-size:10px; line-height:1.8; color:#2147aa; letter-spacing:.055em;
}
body.page-work main > .work-system-intro {
 width:100%; max-width:none; margin:0; padding:0 20px 24px;
 background:#eef2ff; display:flex;
}
body.page-work .work-system-intro .system-showcase {
 width:100%; height:240px; aspect-ratio:auto; border:1px solid #233760;
 border-radius:18px; margin:0; box-shadow:0 12px 28px #0e224b12;
}
body.page-work .work-system-intro .system-showcase img {object-position:center;}
body.page-work .work-system-intro .system-showcase figcaption {
 left:14px; right:14px; bottom:14px; max-width:430px;
 padding:14px 16px; background:rgb(8 16 35 / .9); border-radius:12px;
}
body.page-work .work-system-intro .system-showcase figcaption strong {
 font-size:clamp(20px,2vw,27px); line-height:1.15; margin-top:8px;
}
body.page-work .work-system-intro .showcase-chips {
 top:14px; left:14px; right:14px; justify-content:flex-end; flex-wrap:wrap;
}
body.page-work .work-system-intro .showcase-chips span {
 backdrop-filter:none; background:#0e1932; padding:6px 8px;
}
body.page-work .project-list {padding-top:28px;padding-bottom:32px;gap:20px;}
body.page-work .work-note {
 width:min(calc(100% - 32px),1440px); margin:0 auto 32px;
 padding:24px; border:1px solid #dce1eb; border-radius:20px;
 display:flex; flex-direction:column; gap:14px; background:#fff;
}
body.page-work .work-note .kicker {margin:0;color:#2457ff;}
body.page-work .work-note h2 {margin:0;font-size:clamp(26px,2.8vw,38px);line-height:1.12;letter-spacing:-.04em;}
body.page-work .work-note > p:not(.kicker) {margin:0;font-size:15px;line-height:1.65;}
body.page-work .work-note .text-link {margin:0;min-height:44px;}
body.page-work .cta-band {
 padding:32px 20px; gap:22px; align-items:center;
 grid-template-columns:minmax(0,1fr);
}
body.page-work .cta-band h2 {font-size:clamp(30px,3.1vw,44px);line-height:1.08;max-width:22ch;}
body.page-work .cta-band .kicker {margin:0 0 12px;}
body.page-work .cta-band > div:last-child p {font-size:15px;margin:0 0 18px;line-height:1.65;}
body.page-work .cta-band .button {min-width:0;max-width:100%;}
body.page-work .cta-band-shape {display:none;}
@media(min-width:760px) {
 body.page-work .page-hero-work {padding:36px 28px 24px;}
 body.page-work main > .work-system-intro {padding:0 28px 28px;}
 body.page-work .work-system-intro .system-showcase {height:300px;}
 body.page-work .work-note {width:min(calc(100% - 56px),1440px);padding:28px;}
 body.page-work .cta-band {padding:40px 28px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:36px;}
}
@media(min-width:1000px) {
 body.page-work main {grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);}
 body.page-work main > .page-hero-work {
  grid-column:1; grid-row:1; padding:40px 32px 40px max(40px,calc((100vw - 1440px)/2));
  display:flex; flex-direction:column; justify-content:center;
 }
 body.page-work main > .work-system-intro {
  grid-column:2; grid-row:1;
  padding:24px max(40px,calc((100vw - 1440px)/2)) 24px 0;
 }
 body.page-work .work-system-intro .system-showcase {height:100%; min-height:340px;}
 body.page-work .page-hero-work .page-hero-intro {font-size:17px;}
 body.page-work .work-note {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 36px;align-items:start;
 }
 body.page-work .work-note .kicker {grid-column:1;grid-row:1;}
 body.page-work .work-note h2 {grid-column:1;grid-row:2 / 4;}
 body.page-work .work-note > p:not(.kicker) {grid-column:2;grid-row:1 / 3;}
 body.page-work .work-note .text-link {grid-column:2;grid-row:3;}
}
@media(min-width:1200px) {
 body.page-work .project-list {padding-top:32px;padding-bottom:32px;gap:24px;}
 body.page-work .work-note {width:min(calc(100% - 80px),1440px);}
 body.page-work .cta-band {padding:42px max(40px,calc((100% - 1440px)/2));}
}
