/* ===== Work page base layer (GB design system, scoped) ===== */
body.gb-work-tpl .gb-app, body.gb-work-tpl .gb-app *{box-sizing:border-box;}
/* Lift only the direct children of decorative containers above their own
   absolute backgrounds (matches the design). A blanket "* {z-index:1}" was
   wrong: it pushed every image/card child above its own ::after gradient
   overlays and created a stacking context on every element. */
body.gb-work-tpl .gb-app .bp-grid > *,
body.gb-work-tpl .gb-app .cta-band > *,
body.gb-work-tpl .gb-app .dmodal-panel > *{position:relative;z-index:1;}
body.gb-work-tpl .gb-app a{color:inherit;text-decoration:none;transition:color var(--dur);}
/* Buttons must keep their own .btn-* color. The generic "a{color:inherit}"
   above outranked the bare ".btn-*" color rules and made button text (esp.
   the outline CTAs) render dark; these a.btn-* rules outrank it without
   touching other link colors (e.g. .textlink). */
body.gb-work-tpl .gb-app a.btn-pink,
body.gb-work-tpl .gb-app a.btn-blue,
body.gb-work-tpl .gb-app a.btn-outline,
body.gb-work-tpl .gb-app a.case-visit{color:#fff;}
body.gb-work-tpl .gb-app a.btn-white,
body.gb-work-tpl .gb-app a.btn-outline-navy{color:var(--gb-navy);}
body.gb-work-tpl .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-sans);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;border:none;border-radius:var(--radius-pill);padding:16px 30px;min-height:48px;cursor:pointer;white-space:nowrap;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),background var(--dur),border-color var(--dur),color var(--dur);}
body.gb-work-tpl .btn svg{width:17px;height:17px;}
body.gb-work-tpl .btn:active{transform:translateY(1px);}
body.gb-work-tpl .btn-pink{background:var(--gb-pink);color:#fff;box-shadow:var(--shadow-pink-glow);}
body.gb-work-tpl .btn-pink:hover{box-shadow:0 16px 40px -10px rgba(255,24,148,.6);transform:translateY(-2px);}
body.gb-work-tpl .btn-pink:active{background:var(--gb-pink-600);}
body.gb-work-tpl .btn-outline{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.45);}
body.gb-work-tpl .btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08);}
body.gb-work-tpl .btn-lg{padding:19px 38px;font-size:15px;min-height:56px;}
body.gb-work-tpl .btn-sm{padding:11px 20px;font-size:12.5px;min-height:44px;}
body.gb-work-tpl .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);}
body.gb-work-tpl .reveal.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){body.gb-work-tpl .reveal{opacity:1;transform:none;transition:none;}}

/* ===== Work page styles (scoped under body.gb-work-tpl) ===== */
html {scroll-behavior:smooth;}
body.gb-work-tpl {background:#0A1729;color:#fff;}
body.gb-work-tpl .wfull {max-width:1480px;margin:0 auto;padding:0 52px;}
body.gb-work-tpl .nbr {white-space:nowrap;}
body.gb-work-tpl .gb-app ::selection {background:var(--gb-pink);color:#fff;}
@keyframes marq{to{transform:translateX(-50%);}}
@keyframes cuebob{0%,100%{transform:translateY(0);opacity:.55;}50%{transform:translateY(9px);opacity:1;}}
@keyframes glowdrift{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(36px,-26px) scale(1.1);}}
body.gb-work-tpl .scroll-prog {position:fixed;top:0;left:0;height:3px;width:0;z-index:300;background:linear-gradient(90deg,var(--gb-pink),var(--gb-blue-500));box-shadow:0 0 14px rgba(255,24,148,.55);transition:width .1s linear;}
body.gb-work-tpl .sec {padding:120px 0;position:relative;}
body.gb-work-tpl .sec-sm {padding:84px 0;}
body.gb-work-tpl .eyebrow2 {font-family:var(--font-sans);font-weight:800;font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gb-pink);margin:0 0 22px;display:inline-flex;align-items:center;gap:12px;}
body.gb-work-tpl .eyebrow2::before {content:"";width:34px;height:1.5px;background:var(--gb-pink);display:inline-block;}
body.gb-work-tpl .kicker {font-family:var(--font-display);text-transform:uppercase;font-weight:700;line-height:.92;letter-spacing:.01em;margin:0;font-size:clamp(34px,4.6vw,60px);color:#fff;}
body.gb-work-tpl .kicker .pk {color:var(--gb-pink);}
body.gb-work-tpl .kicker .bl {color:var(--gb-blue-300);}
body.gb-work-tpl .lede {font-size:clamp(16px,1.35vw,19px);line-height:1.62;color:#AEC0DA;max-width:60ch;}
body.gb-work-tpl .blueprint {position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(140,180,235,.05) 1px,transparent 1px) 0 0/46px 46px,linear-gradient(90deg,rgba(140,180,235,.05) 1px,transparent 1px) 0 0/46px 46px;}
body.gb-work-tpl .hero {position:relative;overflow:hidden;min-height:92vh;display:flex;align-items:center;
    background:radial-gradient(70% 80% at 78% 18%,rgba(0,146,214,.30),transparent 64%),radial-gradient(60% 70% at 0% 100%,rgba(255,24,148,.16),transparent 60%),linear-gradient(150deg,#0A1729 0%,#102A50 52%,#0C2348 100%);}
body.gb-work-tpl .hero::after {content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 60% at 78% 42%,rgba(0,146,214,.34),transparent 70%),linear-gradient(rgba(173,216,255,.05) 1px,transparent 1px) 0 0/30px 30px,linear-gradient(90deg,rgba(173,216,255,.05) 1px,transparent 1px) 0 0/30px 30px;}
body.gb-work-tpl .hero .blueprint {-webkit-mask-image:radial-gradient(80% 78% at 50% 30%,#000,transparent 82%);mask-image:radial-gradient(80% 78% at 50% 30%,#000,transparent 82%);}
body.gb-work-tpl .hero .glow {position:absolute;border-radius:50%;filter:blur(20px);pointer-events:none;animation:glowdrift 16s ease-in-out infinite;}
body.gb-work-tpl .hero .glow.a {width:520px;height:520px;top:-160px;right:-80px;background:radial-gradient(circle,rgba(0,146,214,.4),transparent 64%);}
body.gb-work-tpl .hero .glow.b {width:460px;height:460px;bottom:-200px;left:-120px;background:radial-gradient(circle,rgba(255,24,148,.28),transparent 64%);animation-delay:-6s;}
body.gb-work-tpl .hero .mark-wm {position:absolute;right:-6%;top:50%;transform:translateY(-50%);width:58%;max-width:760px;opacity:.05;pointer-events:none;}
body.gb-work-tpl .hero .wfull {position:relative;z-index:2;padding-top:34px;padding-bottom:34px;}
body.gb-work-tpl .hero h1 {font-family:var(--font-display);text-transform:uppercase;font-weight:700;line-height:.85;letter-spacing:.004em;margin:0;font-size:clamp(42px,7vw,116px);color:#fff;max-width:20ch;}
body.gb-work-tpl .hero h1 .pk {color:var(--gb-pink);}
body.gb-work-tpl .hero .sub {margin:24px 0 0;max-width:66ch;font-size:clamp(16px,1.4vw,20px);line-height:1.55;color:#B9C8DE;}
body.gb-work-tpl .hero .hero-cta {margin-top:28px;display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
body.gb-work-tpl .hero .hero-meta {margin-top:30px;display:flex;gap:34px;flex-wrap:wrap;align-items:flex-start;}
body.gb-work-tpl .hero .hm {display:flex;flex-direction:column;gap:5px;}
body.gb-work-tpl .hero .hm .n {font-family:var(--font-display);font-weight:700;font-size:clamp(26px,2.8vw,38px);line-height:.9;color:#fff;}
body.gb-work-tpl .hero .hm .n .pk {color:var(--gb-pink);}
body.gb-work-tpl .hero .hm .l {font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#7E91AE;font-weight:700;max-width:25ch;line-height:1.35;}
body.gb-work-tpl .hero .hm-div {width:1px;height:40px;background:rgba(140,170,210,.22);}
body.gb-work-tpl .scrollcue {position:absolute;right:48px;bottom:22px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;color:#7E91AE;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;}
body.gb-work-tpl .scrollcue svg {width:20px;height:20px;animation:cuebob 1.8s ease-in-out infinite;}
body.gb-work-tpl .cmarq {background:#08111F;border-top:1px solid rgba(120,160,210,.12);border-bottom:1px solid rgba(120,160,210,.12);padding:20px 0;overflow:hidden;position:relative;display:block;}
body.gb-work-tpl .cmarq .mlabel {display:block;width:100%;text-align:center;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#6E81A0;font-weight:800;margin-bottom:14px;}
body.gb-work-tpl .cmarq-mask {overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);}
body.gb-work-tpl .cmarq-track {display:flex;align-items:center;gap:40px;width:max-content;animation:marq 42s linear infinite;}
body.gb-work-tpl .cmarq:hover .cmarq-track {animation-play-state:paused;}
body.gb-work-tpl .cmarq-track img {width:108px;height:32px;object-fit:contain;object-position:center;opacity:.55;filter:grayscale(1);transition:opacity var(--dur),filter var(--dur);flex:none;}
body.gb-work-tpl .cmarq-track img:hover {opacity:1;filter:none;}
body.gb-work-tpl .disc {background:#0A1729;padding-top:90px;}
body.gb-work-tpl .disc-head {display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;margin-bottom:30px;}
body.gb-work-tpl .disc-list {border-top:1px solid rgba(120,160,210,.16);}
body.gb-work-tpl .disc-row {display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:28px;padding:34px 8px;border-bottom:1px solid rgba(120,160,210,.16);cursor:pointer;position:relative;transition:padding-left var(--dur) var(--ease-out);}
body.gb-work-tpl .disc-row .dn {font-family:var(--font-sans);font-weight:800;font-size:13px;letter-spacing:.1em;color:#60769A;}
body.gb-work-tpl .disc-row .dnm {font-family:var(--font-display);text-transform:uppercase;font-weight:700;font-size:clamp(30px,5vw,64px);line-height:.92;letter-spacing:.01em;color:#fff;transition:color var(--dur),transform var(--dur) var(--ease-out);}
body.gb-work-tpl .disc-row .dmeta {display:flex;flex-direction:column;align-items:flex-end;gap:8px;text-align:right;}
body.gb-work-tpl .disc-row .ddesc {font-size:13.5px;color:#8DA0BD;max-width:30ch;line-height:1.5;}
body.gb-work-tpl .disc-row .darrow {width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(140,170,210,.3);display:flex;align-items:center;justify-content:center;color:#fff;transition:all var(--dur) var(--ease-out);flex:none;}
body.gb-work-tpl .disc-row .darrow svg {width:20px;height:20px;}
body.gb-work-tpl .disc-row:hover {padding-left:24px;}
body.gb-work-tpl .disc-row:hover .dnm {color:var(--gb-pink);}
body.gb-work-tpl .disc-row:hover .darrow {background:var(--gb-pink);border-color:var(--gb-pink);transform:rotate(-45deg);box-shadow:var(--shadow-pink-glow);}
body.gb-work-tpl .disc-row::before {content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gb-pink);transform:scaleY(0);transform-origin:center;transition:transform var(--dur) var(--ease-out);}
body.gb-work-tpl .disc-row:hover::before {transform:scaleY(1);}
/* "View Work" hover label: anchored to the bottom-right so it sits level with
   the arrow circle instead of floating over the middle of the description. */
body.gb-work-tpl .disc-row::after {content:"View Work";position:absolute;right:84px;top:auto;bottom:50px;transform:translateX(8px);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gb-pink);opacity:0;transition:opacity var(--dur),transform var(--dur);pointer-events:none;}
body.gb-work-tpl .disc-row:hover::after {opacity:1;transform:translateX(0);}
body.gb-work-tpl .dmodal {position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .3s var(--ease-out);}
body.gb-work-tpl .dmodal.open {opacity:1;pointer-events:auto;}
body.gb-work-tpl .dmodal-back {position:absolute;inset:0;background:rgba(6,12,24,.74);backdrop-filter:blur(6px);}
body.gb-work-tpl .dmodal-panel {position:relative;width:min(960px,100%);max-height:88vh;overflow:auto;background:linear-gradient(160deg,#0E2647,#0A1B33);border:1px solid rgba(120,160,210,.22);border-radius:20px;padding:42px 44px 44px;box-shadow:0 50px 120px -40px rgba(0,0,0,.8);transform:translateY(18px) scale(.98);transition:transform .35s var(--ease-out);}
body.gb-work-tpl .dmodal.open .dmodal-panel {transform:none;}
body.gb-work-tpl .dmodal-panel>* {position:relative;z-index:1;}
body.gb-work-tpl .dmodal-x {position:absolute;top:18px;right:18px;z-index:2;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid rgba(120,160,210,.24);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--dur);}
body.gb-work-tpl .dmodal-x:hover {background:var(--gb-pink);border-color:var(--gb-pink);}
body.gb-work-tpl .dmodal-x svg {width:20px;height:20px;}
body.gb-work-tpl .dmodal-eyebrow {font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gb-pink);margin:0 0 14px;}
body.gb-work-tpl .dmodal-title {font-family:var(--font-display);text-transform:uppercase;font-weight:700;font-size:clamp(30px,4vw,52px);line-height:.94;color:#fff;margin:0 0 14px;letter-spacing:.01em;}
body.gb-work-tpl .dmodal-desc {font-size:16px;line-height:1.6;color:#AEC0DA;margin:0 0 24px;max-width:64ch;}
body.gb-work-tpl .dmodal-points {list-style:none;margin:0 0 30px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:13px 26px;}
body.gb-work-tpl .dmodal-points li {display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;color:#C6D4E6;}
body.gb-work-tpl .dmodal-points li svg {width:18px;height:18px;color:var(--gb-pink);flex:none;margin-top:1px;}
body.gb-work-tpl .dmodal-worklabel {font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#6E81A0;margin:0 0 14px;display:flex;align-items:center;gap:14px;}
body.gb-work-tpl .dmodal-worklabel::after {content:"";flex:1;height:1px;background:rgba(120,160,210,.2);}
body.gb-work-tpl .dmodal-stats {display:flex;flex-wrap:wrap;gap:13px;margin:0 0 30px;}
body.gb-work-tpl .dmodal-stats:empty {display:none;}
body.gb-work-tpl .dmodal-stat {flex:1;min-width:118px;background:rgba(255,255,255,.04);border:1px solid rgba(120,160,210,.18);border-radius:12px;padding:15px 16px;}
body.gb-work-tpl .dmodal-stat b {display:block;font-family:var(--font-display);font-weight:700;font-size:32px;line-height:1;color:var(--gb-pink);letter-spacing:.01em;}
body.gb-work-tpl .dmodal-stat span {display:block;margin-top:6px;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:#9FB2CE;font-weight:700;line-height:1.32;}
body.gb-work-tpl .dmodal-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:30px;}
body.gb-work-tpl .dm-card {display:flex;flex-direction:column;background:rgba(255,255,255,.03);border:1px solid rgba(120,160,210,.18);border-radius:12px;overflow:hidden;transition:transform var(--dur),border-color var(--dur);}
body.gb-work-tpl .dm-card:hover {transform:translateY(-4px);border-color:rgba(255,24,148,.4);}
body.gb-work-tpl .dm-shot {aspect-ratio:16/10;overflow:hidden;background:#0f2a4d;position:relative;display:block;}
body.gb-work-tpl .dm-shot img {width:100%;height:100%;object-fit:contain;display:block;}
body.gb-work-tpl .dm-ph {position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(120% 120% at 12% 0%,rgba(0,146,214,.32),transparent 56%),linear-gradient(155deg,#0f3f6b,#0b1f3e);}
body.gb-work-tpl .dm-ph svg {width:40px;height:40px;color:rgba(255,255,255,.55);}
body.gb-work-tpl .dm-lbl {padding:13px 15px;font-family:var(--font-display);text-transform:uppercase;font-weight:700;font-size:14px;color:#fff;letter-spacing:.01em;display:flex;justify-content:space-between;align-items:center;gap:8px;}
body.gb-work-tpl .dm-lbl svg {width:14px;height:14px;color:var(--gb-pink);flex:none;}
body.gb-work-tpl .dmodal-cta {display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
@media(max-width:600px) {
  body.gb-work-tpl .dmodal-grid, body.gb-work-tpl .dmodal-points {grid-template-columns:1fr;}
  body.gb-work-tpl .dmodal-panel {padding:34px 24px 30px;}
  body.gb-work-tpl .disc-row::after {display:none;}
}
body.gb-work-tpl .cases {background:linear-gradient(180deg,#0A1729,#0B1D38);}
body.gb-work-tpl .case {display:grid;grid-template-columns:1fr 1fr;gap:62px;align-items:center;margin-top:96px;}
/* The cases are <article> elements; the live theme/Elementor sets an explicit
   height on generic <article>, which collapsed the case grid row to the
   (shorter) mockup column and made the copy column overflow into the next
   case. Force auto height so each case sizes to its tallest column. */
body.gb-work-tpl .case {height:auto !important;}
body.gb-work-tpl .case:first-of-type {margin-top:54px;}
body.gb-work-tpl .case:not(:first-of-type) {margin-top:80px;border-top:1px solid rgba(120,160,210,.18);padding-top:84px;}
body.gb-work-tpl .case:not(:first-of-type)::before {content:"";position:absolute;top:-1px;left:0;width:84px;height:3px;background:var(--gb-pink);box-shadow:var(--shadow-pink-glow);}
body.gb-work-tpl .case {position:relative;}
body.gb-work-tpl .case.flip .case-visual {order:2;}
body.gb-work-tpl .case-visual {position:relative;}
body.gb-work-tpl .case-frame {border-radius:14px;overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.14);box-shadow:0 50px 100px -40px rgba(0,0,0,.8);transition:transform .5s var(--ease-out);}
body.gb-work-tpl .case:hover .case-frame {transform:translateY(-6px);}
body.gb-work-tpl .case-bar {display:flex;align-items:center;gap:12px;padding:12px 16px;background:#F1EFEA;border-bottom:1px solid var(--gb-line);}
body.gb-work-tpl .case-bar .dots {display:flex;gap:6px;}
body.gb-work-tpl .case-bar .dots i {width:10px;height:10px;border-radius:50%;display:block;}
body.gb-work-tpl .case-bar .dots i:nth-child(1) {background:#E2675F;}
body.gb-work-tpl .case-bar .dots i:nth-child(2) {background:#E9B44B;}
body.gb-work-tpl .case-bar .dots i:nth-child(3) {background:#5FB87A;}
body.gb-work-tpl .case-bar .url {flex:1;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--gb-line);border-radius:99px;padding:6px 13px;font-size:12px;color:var(--gb-ink-2);font-weight:600;}
body.gb-work-tpl .case-bar .url svg {width:12px;height:12px;color:var(--gb-concrete);}
body.gb-work-tpl .case-shot {overflow:hidden;position:relative;background:#0f2a4d;}
body.gb-work-tpl .case-shot img {width:100%;height:auto;display:block;}
body.gb-work-tpl .case-badge {position:absolute;top:14px;left:14px;z-index:3;display:inline-flex;align-items:center;gap:6px;background:var(--gb-pink);color:#fff;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;border-radius:99px;box-shadow:var(--shadow-pink-glow);}
body.gb-work-tpl .case-badge svg {width:12px;height:12px;}
body.gb-work-tpl .case-copy .cidx {font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.16em;color:var(--gb-blue-300);margin:0 0 18px;}
body.gb-work-tpl .case-copy h3 {font-family:var(--font-display);text-transform:uppercase;font-weight:700;font-size:clamp(34px,4.2vw,58px);line-height:.94;letter-spacing:.01em;color:#fff;margin:0 0 18px;}
body.gb-work-tpl .case-copy .ctags {display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;}
body.gb-work-tpl .case-copy .ctag {font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#CFE0F2;background:rgba(120,160,210,.16);border:1px solid rgba(120,160,210,.22);border-radius:99px;padding:6px 12px;}
body.gb-work-tpl .case-copy p {font-size:16px;line-height:1.65;color:#AEC0DA;margin:0 0 18px;max-width:52ch;}
body.gb-work-tpl .case-copy .cresult {display:flex;gap:13px;align-items:flex-start;font-size:14.5px;line-height:1.5;color:#fff;background:linear-gradient(120deg,rgba(255,24,148,.12),rgba(0,146,214,.07));border:1px solid rgba(255,24,148,.26);border-radius:13px;padding:16px 18px;margin:0 0 26px;max-width:52ch;}
body.gb-work-tpl .case-copy .cresult svg {width:20px;height:20px;color:var(--gb-pink);flex:none;margin-top:1px;}
body.gb-work-tpl .case-copy .cactions {display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
body.gb-work-tpl .case-visit {display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#fff;padding:13px 22px;border-radius:99px;background:var(--gb-pink);box-shadow:var(--shadow-pink-glow);transition:transform var(--dur),box-shadow var(--dur);}
body.gb-work-tpl .case-visit svg {width:15px;height:15px;}
body.gb-work-tpl .case-visit:hover {transform:translateY(-2px);box-shadow:0 16px 40px -10px rgba(255,24,148,.6);}
body.gb-work-tpl .case-ghost {display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#9FB2CE;transition:color var(--dur);}
body.gb-work-tpl .case-ghost:hover {color:#fff;}
body.gb-work-tpl .wall {background:#0A1729;}
body.gb-work-tpl .filter-row {display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:32px 0 0;}
body.gb-work-tpl .filter-chips {display:flex;gap:10px;flex-wrap:wrap;}
body.gb-work-tpl .chip {font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#B9C8DE;background:rgba(120,160,210,.08);border:1.5px solid rgba(120,160,210,.24);border-radius:99px;padding:11px 19px;cursor:pointer;transition:all var(--dur) var(--ease-out);font-family:var(--font-sans);min-height:44px;}
body.gb-work-tpl .chip:hover {border-color:#fff;color:#fff;}
body.gb-work-tpl .chip[aria-pressed="true"] {background:var(--gb-pink);border-color:var(--gb-pink);color:#fff;box-shadow:var(--shadow-pink-glow);}
body.gb-work-tpl .filter-count {font-size:12.5px;color:#6E81A0;font-weight:600;margin-left:auto;}
body.gb-work-tpl .wall-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:34px;}
body.gb-work-tpl .wcard {display:flex;flex-direction:column;background:rgba(255,255,255,.03);border:1px solid rgba(120,160,210,.16);border-radius:13px;overflow:hidden;transition:transform var(--dur) var(--ease-out),border-color var(--dur),box-shadow var(--dur);position:relative;}
body.gb-work-tpl .wcard:hover {transform:translateY(-6px);border-color:rgba(255,24,148,.45);box-shadow:0 30px 60px -28px rgba(0,0,0,.7);}
body.gb-work-tpl .wcard.hide {display:none;}
body.gb-work-tpl .wbar {display:flex;align-items:center;gap:10px;padding:10px 14px;background:#0E1F3A;border-bottom:1px solid rgba(120,160,210,.14);}
body.gb-work-tpl .wbar .wd {display:flex;gap:5px;}
body.gb-work-tpl .wbar .wd i {width:8px;height:8px;border-radius:50%;background:rgba(160,185,215,.4);display:block;}
body.gb-work-tpl .wbar .wu {flex:1;display:flex;align-items:center;gap:6px;font-size:11px;color:#8DA0BD;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
body.gb-work-tpl .wbar .wu svg {width:11px;height:11px;color:#5E769A;flex:none;}
body.gb-work-tpl .wshot {position:relative;overflow:hidden;background:#0f2a4d;display:block;}
body.gb-work-tpl .wshot:has(.wstyl), body.gb-work-tpl .wshot:has(.aithumb) {aspect-ratio:16/10;}
body.gb-work-tpl .aithumb {position:absolute;inset:0;overflow:hidden;padding:14px 15px;display:flex;flex-direction:column;background:radial-gradient(120% 120% at 8% 0%,rgba(0,146,214,.30),transparent 56%),linear-gradient(155deg,#103f6b 0%,#0b1f3e 72%);}
body.gb-work-tpl .aithumb::before {content:none;}
body.gb-work-tpl .aithumb.at-blue {background:radial-gradient(120% 120% at 6% 0%,rgba(0,146,214,.36),transparent 56%),linear-gradient(150deg,#0f3f6b,#0b1f3e);}
body.gb-work-tpl .aithumb.at-teal {background:radial-gradient(120% 120% at 8% 100%,rgba(40,190,170,.3),transparent 56%),linear-gradient(150deg,#0c3a44,#0b1d33);}
body.gb-work-tpl .aithumb.at-pink {background:radial-gradient(120% 120% at 92% 0%,rgba(255,24,148,.3),transparent 56%),linear-gradient(150deg,#3a1330,#0e1a30);}
body.gb-work-tpl .aithumb.at-violet {background:radial-gradient(120% 120% at 10% 0%,rgba(128,92,235,.34),transparent 58%),linear-gradient(150deg,#241a4d,#0d1530);}
body.gb-work-tpl .aithumb.at-amber {background:radial-gradient(120% 120% at 90% 100%,rgba(224,158,64,.26),transparent 56%),linear-gradient(150deg,#33260f,#0e1a2e);}
body.gb-work-tpl .brandtile {position:absolute;inset:0;overflow:hidden;}
body.gb-work-tpl .brandtile > img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
body.gb-work-tpl .brandtile .bt-veil {position:absolute;inset:0;}
body.gb-work-tpl .brandtile .bt-in {position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;color:var(--ink,#fff);}
body.gb-work-tpl .brandtile .bt-top {position:absolute;top:13px;left:15px;font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;opacity:.78;}
body.gb-work-tpl .brandtile .bt-mark {font-weight:600;font-size:clamp(22px,3vw,33px);letter-spacing:.16em;line-height:1;text-transform:uppercase;}
body.gb-work-tpl .brandtile .bt-mark small {display:block;font-size:.32em;letter-spacing:.42em;margin-top:7px;opacity:.92;}
body.gb-work-tpl .brandtile.bt-sans .bt-mark {font-family:var(--font-sans);font-weight:800;letter-spacing:.05em;}
body.gb-work-tpl .brandtile .bt-logo {width:210px;max-width:66%;height:auto;display:block;}
body.gb-work-tpl .brandtile .bt-tag {margin-top:13px;font-family:var(--font-sans);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;opacity:.85;}
body.gb-work-tpl .brandtile .bt-pal {position:absolute;bottom:0;left:0;right:0;display:flex;height:7px;z-index:2;}
body.gb-work-tpl .brandtile .bt-pal i {flex:1;display:block;}
body.gb-work-tpl .wshot:has(.brandtile) {aspect-ratio:16/10;}
body.gb-work-tpl .aithumb .ait-top {position:relative;display:flex;align-items:center;gap:7px;font-size:9.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gb-blue-300);}
body.gb-work-tpl .aithumb .ait-top svg {width:13px;height:13px;}
body.gb-work-tpl .aithumb .ait-top .live {margin-left:auto;display:inline-flex;align-items:center;gap:5px;color:#84E2B2;font-size:9px;letter-spacing:.08em;}
body.gb-work-tpl .aithumb .ait-top .live i {width:6px;height:6px;border-radius:50%;background:#5FD08C;display:block;box-shadow:0 0 7px #5FD08C;}
body.gb-work-tpl .aithumb .ait-body {position:relative;flex:1;display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:0;}
body.gb-work-tpl .aithumb .bub {max-width:88%;padding:8px 11px;border-radius:12px;font-size:11px;line-height:1.3;font-weight:500;}
body.gb-work-tpl .aithumb .bub.user {align-self:flex-end;background:rgba(255,255,255,.13);color:#E6EEF8;border-bottom-right-radius:4px;}
body.gb-work-tpl .aithumb .bub.ai {align-self:flex-start;background:linear-gradient(120deg,rgba(255,24,148,.2),rgba(0,146,214,.16));border:1px solid rgba(255,24,148,.3);color:#fff;border-bottom-left-radius:4px;}
body.gb-work-tpl .aithumb .bub .nm {display:flex;align-items:center;gap:5px;font-size:8.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--gb-pink);margin-bottom:3px;}
body.gb-work-tpl .aithumb .bub .nm svg {width:10px;height:10px;}
body.gb-work-tpl .aithumb .ait-quote {position:relative;align-self:flex-start;width:88%;background:rgba(7,17,33,.72);border:1px solid rgba(120,160,210,.26);border-radius:11px;padding:9px 12px;}
body.gb-work-tpl .aithumb .ait-quote .qrow {display:flex;justify-content:space-between;font-size:10px;color:#AEC0DA;padding:2px 0;}
body.gb-work-tpl .aithumb .ait-quote .qtot {display:flex;justify-content:space-between;align-items:center;margin-top:5px;padding-top:7px;border-top:1px solid rgba(120,160,210,.22);}
body.gb-work-tpl .aithumb .ait-quote .qlbl {display:flex;align-items:center;gap:6px;font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#8DA0BD;font-weight:700;}
body.gb-work-tpl .aithumb .aibadge {background:var(--gb-pink);color:#fff;font-size:8px;font-weight:800;letter-spacing:.06em;padding:2px 5px;border-radius:5px;}
body.gb-work-tpl .aithumb .ait-quote .qval {font-family:var(--font-display);font-weight:700;font-size:20px;color:#fff;line-height:1;}
body.gb-work-tpl .aithumb .ait-wave {position:relative;display:flex;align-items:center;gap:10px;background:rgba(7,17,33,.66);border:1px solid rgba(120,160,210,.24);border-radius:99px;padding:7px 12px;}
body.gb-work-tpl .aithumb .ait-wave .mic {width:28px;height:28px;border-radius:50%;background:var(--gb-pink);display:flex;align-items:center;justify-content:center;flex:none;box-shadow:var(--shadow-pink-glow);}
body.gb-work-tpl .aithumb .ait-wave .mic svg {width:14px;height:14px;color:#fff;}
body.gb-work-tpl .aithumb .ait-wave .bars {display:flex;align-items:center;gap:2px;height:26px;flex:1;}
body.gb-work-tpl .aithumb .ait-wave .bars i {flex:1;height:30%;background:linear-gradient(180deg,var(--gb-blue-300),var(--gb-pink));border-radius:2px;animation:wavebar 1.1s ease-in-out infinite;animation-delay:calc(var(--i,0)*-0.09s);}
@keyframes wavebar{0%,100%{height:18%}50%{height:92%}}
@media(prefers-reduced-motion:reduce) {
  body.gb-work-tpl .aithumb .ait-wave .bars i {animation:none;height:55%;}
}
body.gb-work-tpl .aithumb .ppill {display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.06);border:1px solid rgba(120,160,210,.2);border-radius:9px;padding:8px 12px;font-size:11.5px;color:#D6E2F0;font-weight:600;}
body.gb-work-tpl .aithumb .ppill svg {width:14px;height:14px;color:var(--gb-blue-300);flex:none;}
body.gb-work-tpl .aithumb .ppill b {color:#fff;font-weight:700;}
body.gb-work-tpl .aithumb .kbsearch {display:flex;align-items:center;gap:8px;background:rgba(7,17,33,.6);border:1px solid rgba(120,160,210,.24);border-radius:99px;padding:8px 13px;font-size:11px;color:#8DA0BD;font-weight:600;}
body.gb-work-tpl .aithumb .kbsearch svg {width:13px;height:13px;color:var(--gb-blue-300);flex:none;}
body.gb-work-tpl .wshot > img {width:100%;height:auto;display:block;transition:transform .55s var(--ease-out);}
body.gb-work-tpl .wcard:hover .wshot > img {transform:scale(1.04);}
body.gb-work-tpl .wshot.is-live::after {content:"Visit Live Site \2197";position:absolute;left:50%;bottom:13px;transform:translateX(-50%) translateY(10px);background:var(--gb-pink);color:#fff;font-weight:800;font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;padding:7px 14px;border-radius:99px;opacity:0;transition:opacity .25s,transform .25s;box-shadow:var(--shadow-pink-glow);white-space:nowrap;z-index:4;}
body.gb-work-tpl .wcard:hover .wshot.is-live::after {opacity:1;transform:translateX(-50%);}
@media(hover:none) {
  body.gb-work-tpl .wshot.is-live::after {opacity:1;transform:translateX(-50%);}
}
body.gb-work-tpl .wstyl {position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:18px 20px;background:radial-gradient(120% 110% at 12% 0%,rgba(0,146,214,.22),transparent 58%),linear-gradient(160deg,#143a66,#0b1d38);}
body.gb-work-tpl .wstyl.ai {background:radial-gradient(120% 110% at 12% 0%,rgba(0,146,214,.34),transparent 56%),linear-gradient(155deg,#0f3f6b,#0b1f3e);}
body.gb-work-tpl .wstyl .wsnote {position:absolute;left:20px;top:16px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.66);}
body.gb-work-tpl .wstyl .wsicon {position:absolute;right:14px;top:14px;width:30px;height:30px;color:rgba(255,255,255,.4);}
body.gb-work-tpl .wstyl .wsd {font-family:var(--font-display);text-transform:uppercase;font-weight:700;color:#fff;font-size:21px;line-height:1;}
body.gb-work-tpl .wstyl .wschip {margin-top:10px;display:inline-flex;align-items:center;gap:7px;align-self:flex-start;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:99px;padding:6px 12px;font-size:11px;color:#fff;font-weight:600;}
body.gb-work-tpl .wstyl .wschip svg {width:12px;height:12px;color:var(--gb-blue-300);}
body.gb-work-tpl .wmod {position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:54%;max-width:150px;height:auto;opacity:.95;}
body.gb-work-tpl .wfoot {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;}
body.gb-work-tpl .wfoot > span:first-child {display:flex;flex-direction:column;gap:2px;min-width:0;}
body.gb-work-tpl .wfoot .wt {font-family:var(--font-display);text-transform:uppercase;font-weight:700;font-size:16px;color:#fff;letter-spacing:.01em;line-height:1.04;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.gb-work-tpl .wfoot .wtag {font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#A9BAD2;font-weight:700;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.gb-work-tpl .wfoot .wproj {font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--gb-blue-300);font-weight:700;margin-top:2px;line-height:1.4;}
body.gb-work-tpl .wfoot .wgo {width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(140,170,210,.28);display:flex;align-items:center;justify-content:center;color:#fff;flex:none;transition:all var(--dur);}
body.gb-work-tpl .wfoot .wgo svg {width:15px;height:15px;}
body.gb-work-tpl .wcard:hover .wgo {background:var(--gb-pink);border-color:var(--gb-pink);}
body.gb-work-tpl .wall-foot {margin-top:40px;text-align:center;font-size:15px;color:#AEC0DA;}
body.gb-work-tpl .wall-foot strong {color:#fff;}
body.gb-work-tpl .wall-foot .textlink {color:var(--gb-blue-300);}
body.gb-work-tpl .media {background:linear-gradient(180deg,#0B1D38,#08111F);}
body.gb-work-tpl .bento {display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-auto-rows:230px;gap:18px;margin-top:48px;}
body.gb-work-tpl .mtile {position:relative;overflow:hidden;border-radius:16px;border:1px solid rgba(120,160,210,.16);display:block;background:#0f2a4d;}
body.gb-work-tpl .mtile img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out);}
body.gb-work-tpl .mtile:hover img {transform:scale(1.06);}
body.gb-work-tpl .mtile::after {content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,17,31,.05) 30%,rgba(8,17,31,.82));}
body.gb-work-tpl .mtile .minner {position:absolute;inset:0;z-index:2;padding:22px 24px;display:flex;flex-direction:column;justify-content:flex-end;}
body.gb-work-tpl .mtile .mtype {font-size:10.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--gb-pink);margin:0 0 7px;}
body.gb-work-tpl .mtile .mt {font-family:var(--font-display);text-transform:uppercase;font-weight:700;font-size:22px;line-height:1.02;color:#fff;margin:0;letter-spacing:.01em;}
body.gb-work-tpl .mtile .mdesc {font-size:12.5px;color:#C6D4E6;margin:7px 0 0;line-height:1.45;max-width:34ch;}
body.gb-work-tpl .mtile .play {position:absolute;left:24px;top:22px;z-index:3;width:48px;height:48px;border-radius:50%;background:rgba(255,24,148,.92);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-pink-glow);transition:transform var(--dur);}
body.gb-work-tpl .mtile .play svg {width:20px;height:20px;color:#fff;fill:#fff;margin-left:2px;}
body.gb-work-tpl .mtile:hover .play {transform:scale(1.1);}
body.gb-work-tpl .m-a {grid-row:span 2;}
body.gb-work-tpl .m-f {grid-column:1 / -1;grid-row:span 2;}
body.gb-work-tpl .bento .mtile:nth-child(2) img, body.gb-work-tpl .bento .mtile:nth-child(4) img, body.gb-work-tpl .bento .mtile:nth-child(5) img, body.gb-work-tpl .bento .mtile:nth-child(6) img {object-position:center top;}
body.gb-work-tpl .media-strip {margin-top:34px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;color:#AEC0DA;font-size:14px;padding-top:28px;border-top:1px solid rgba(120,160,210,.14);}
body.gb-work-tpl .media-strip .ico {width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;flex:none;}
body.gb-work-tpl .media-strip .ico svg {width:18px;height:18px;color:var(--gb-pink);}
body.gb-work-tpl .media-strip .textlink {color:var(--gb-blue-300);}
body.gb-work-tpl .proof {background:var(--gb-paper);color:var(--fg1);}
body.gb-work-tpl .proof .eyebrow2 {color:var(--gb-pink-600);}
body.gb-work-tpl .proof .eyebrow2::before {background:var(--gb-pink-600);}
body.gb-work-tpl .proof .kicker {color:var(--gb-navy);}
body.gb-work-tpl .proof .lede {color:var(--fg2);}
body.gb-work-tpl .proof-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;}
body.gb-work-tpl .tcard {background:#fff;border:1px solid var(--gb-line);border-radius:18px;padding:32px 30px 28px;box-shadow:var(--shadow-card);position:relative;overflow:hidden;display:flex;flex-direction:column;}
body.gb-work-tpl .tcard::before {content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--gb-pink),var(--gb-blue-500));}
body.gb-work-tpl .tcard .qmark {font-family:var(--font-display);font-weight:700;font-size:46px;line-height:1;color:rgba(255,24,148,.18);margin-bottom:6px;}
body.gb-work-tpl .tcard .stars {display:flex;gap:3px;color:var(--gb-pink);margin-bottom:16px;}
body.gb-work-tpl .tcard .stars svg {width:17px;height:17px;fill:currentColor;}
body.gb-work-tpl .tcard blockquote {margin:0 0 24px;font-size:15.5px;line-height:1.56;color:var(--gb-navy);font-weight:500;}
body.gb-work-tpl .tcard blockquote .pk {color:var(--gb-pink);}
body.gb-work-tpl .tcard .attr {display:flex;align-items:center;gap:13px;margin-top:auto;}
body.gb-work-tpl .tcard .attr>span {display:flex;flex-direction:column;min-width:0;}
body.gb-work-tpl .tcard .av {width:50px;height:50px;border-radius:50%;object-fit:cover;flex:none;}
body.gb-work-tpl .tcard .nm {font-weight:800;font-size:13px;letter-spacing:.02em;color:var(--gb-navy);text-transform:uppercase;}
body.gb-work-tpl .tcard .rl {font-size:12.5px;color:var(--fg2);margin-top:2px;}
body.gb-work-tpl .proof-foot {margin-top:40px;display:flex;justify-content:center;}
body.gb-work-tpl .faq {background:#0A1729;}
body.gb-work-tpl .faq-grid {display:grid;grid-template-columns:.74fr 1.26fr;gap:56px;align-items:start;}
body.gb-work-tpl .faq-list {border-top:1px solid rgba(120,160,210,.18);}
body.gb-work-tpl .faq-item {border-bottom:1px solid rgba(120,160,210,.18);}
body.gb-work-tpl .faq-q {display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;background:none;border:none;cursor:pointer;padding:24px 2px;text-align:left;font-family:inherit;min-height:44px;}
body.gb-work-tpl .faq-q .qtext {font-family:var(--font-display);text-transform:uppercase;font-weight:700;font-size:clamp(17px,1.7vw,21px);color:#fff;letter-spacing:.02em;line-height:1.15;}
body.gb-work-tpl .faq-q .qico {flex:none;width:32px;height:32px;border-radius:50%;border:1.5px solid rgba(140,170,210,.3);display:flex;align-items:center;justify-content:center;color:#fff;transition:all var(--dur);}
body.gb-work-tpl .faq-q .qico svg {width:16px;height:16px;}
body.gb-work-tpl .faq-item.open .qico {background:var(--gb-pink);border-color:var(--gb-pink);transform:rotate(45deg);}
body.gb-work-tpl .faq-a {display:grid;grid-template-rows:0fr;transition:grid-template-rows .34s var(--ease-out);}
body.gb-work-tpl .faq-a>div {overflow:hidden;min-height:0;}
body.gb-work-tpl .faq-a p {font-size:14.5px;line-height:1.66;color:#9FB2CE;margin:0;padding:0 2px;max-width:68ch;}
body.gb-work-tpl .faq-item.open .faq-a {grid-template-rows:1fr;}
body.gb-work-tpl .faq-item.open .faq-a p {padding-bottom:24px;}
body.gb-work-tpl .final {position:relative;overflow:hidden;text-align:center;padding:140px 0;background:radial-gradient(66% 84% at 50% 44%,rgba(0,146,214,.22),transparent 62%),radial-gradient(50% 60% at 8% 100%,rgba(255,24,148,.2),transparent 60%),linear-gradient(158deg,#0A1729 0%,#11315C 56%,#0C2348 100%);}
body.gb-work-tpl .final .glow {position:absolute;width:520px;height:520px;border-radius:50%;pointer-events:none;filter:blur(20px);animation:glowdrift 18s ease-in-out infinite;}
body.gb-work-tpl .final .glow.a {top:-180px;left:-120px;background:radial-gradient(circle,rgba(0,146,214,.3),transparent 62%);}
body.gb-work-tpl .final .glow.b {bottom:-220px;right:-140px;background:radial-gradient(circle,rgba(255,24,148,.24),transparent 62%);animation-delay:-7s;}
body.gb-work-tpl .final .wfull {position:relative;z-index:2;}
body.gb-work-tpl .final h2 {font-family:var(--font-display);text-transform:uppercase;font-weight:700;line-height:.9;letter-spacing:.01em;font-size:clamp(46px,6.6vw,104px);margin:0 auto;max-width:26ch;color:#fff;}
body.gb-work-tpl .final h2 .pk {color:var(--gb-pink);display:block;}
body.gb-work-tpl .final p {max-width:620px;margin:28px auto 0;font-size:18px;line-height:1.6;color:#B9C8DE;}
body.gb-work-tpl .final .fcta {display:flex;gap:14px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:40px;}
body.gb-work-tpl .final .ftiny {margin-top:24px;font-size:13px;color:#7E91AE;}
body.gb-work-tpl .final .ftiny a {color:#fff;font-weight:700;border-bottom:1px solid rgba(255,255,255,.4);}
@media(max-width:1040px) {
  body.gb-work-tpl .wfull {padding:0 30px;}
  body.gb-work-tpl .case, body.gb-work-tpl .proof-grid, body.gb-work-tpl .faq-grid {grid-template-columns:1fr;gap:38px;}
  body.gb-work-tpl .case.flip .case-visual {order:0;}
  body.gb-work-tpl .case-copy {max-width:640px;}
  body.gb-work-tpl .wall-grid {grid-template-columns:1fr 1fr;}
  body.gb-work-tpl .bento {grid-template-columns:1fr 1fr;grid-auto-rows:210px;}
  body.gb-work-tpl .m-a {grid-row:span 1;grid-column:1 / -1;}
  body.gb-work-tpl .m-f {grid-column:1 / -1;}
  body.gb-work-tpl .hero .mark-wm {opacity:.04;}
}
@media(max-width:720px) {
  body.gb-work-tpl .sec {padding:76px 0;}
  body.gb-work-tpl .wfull {padding:0 22px;}
  body.gb-work-tpl .hero {min-height:auto;padding:40px 0 30px;}
  body.gb-work-tpl .hero .hero-meta {gap:22px;}
  body.gb-work-tpl .hero .hm-div {display:none;}
  body.gb-work-tpl .scrollcue {display:none;}
  body.gb-work-tpl .disc-row {grid-template-columns:54px 1fr;gap:14px;padding:24px 4px;}
  body.gb-work-tpl .disc-row .dmeta {display:none;}
  body.gb-work-tpl .disc-row .ddesc {display:none;}
  body.gb-work-tpl .di-float {display:none;}
  body.gb-work-tpl .wall-grid {grid-template-columns:1fr;}
  body.gb-work-tpl .bento {grid-template-columns:1fr;grid-auto-rows:200px;}
  body.gb-work-tpl .m-a, body.gb-work-tpl .m-f {grid-column:auto;}
  body.gb-work-tpl .tcard {padding:26px 22px;}
  body.gb-work-tpl .cmarq-track {gap:30px;}
  body.gb-work-tpl .final {padding:88px 0;}
}
@media(max-width:760px) {
  html, body.gb-work-tpl {overflow-x:hidden;}
  body.gb-work-tpl .reveal {opacity:1!important;transform:none!important;}
  body.gb-work-tpl [data-parallax], body.gb-work-tpl [data-tilt] {transform:none!important;}
  body.gb-work-tpl .sec {padding:52px 0;}
  body.gb-work-tpl .sec-sm {padding:46px 0;}
  body.gb-work-tpl .wfull {padding:0 20px;}
  body.gb-work-tpl .kicker {font-size:clamp(28px,8vw,40px);}
  body.gb-work-tpl .eyebrow2 {margin:0 0 13px;}
  body.gb-work-tpl .lede {margin-top:14px;}
  body.gb-work-tpl .hero {min-height:auto;padding:34px 0 26px;}
  body.gb-work-tpl .hero .mark-wm {display:none;}
  body.gb-work-tpl .hero h1 {font-size:clamp(36px,10.5vw,56px);line-height:.92;}
  body.gb-work-tpl .hero .hero-meta {margin-top:24px;gap:18px 24px;}
  /* Hero CTAs: full width, stacked, identical size/padding (color is the only
     difference between the pink and outline buttons). !important is required to
     beat the shared gb-mobile.css, which forces width:auto and a smaller btn-lg
     padding on .hero-cta buttons with !important. */
  body.gb-work-tpl .hero .hero-cta {flex-direction:column;align-items:stretch !important;gap:12px;}
  body.gb-work-tpl .hero .hero-cta .btn {width:100% !important;}
  body.gb-work-tpl .hero .hero-cta .btn-sm,
  body.gb-work-tpl .hero .hero-cta .btn-lg {padding:19px 38px !important;font-size:15px !important;min-height:56px !important;}
  body.gb-work-tpl .scrollcue {display:none;}
  body.gb-work-tpl .disc-row {grid-template-columns:46px 1fr auto;gap:12px;padding:22px 4px;}
  body.gb-work-tpl .disc-row .dmeta {display:flex;align-items:center;}
  body.gb-work-tpl .disc-row .ddesc {display:none;}
  body.gb-work-tpl .disc-row::after {display:none;}
  body.gb-work-tpl .case {margin-top:44px;gap:26px;}
  body.gb-work-tpl .case:first-of-type {margin-top:28px;}
  body.gb-work-tpl .case:not(:first-of-type) {margin-top:40px;padding-top:42px;}
  body.gb-work-tpl .wall-grid, body.gb-work-tpl .bento, body.gb-work-tpl .proof-grid {display:flex;
      grid-template-columns:none;
      grid-auto-rows:auto;
      overflow-x:auto;
      -webkit-overflow-scrolling:touch;
      scroll-snap-type:x mandatory;
      gap:14px;
      margin:18px -20px 0;
      padding:2px 20px 18px;
      scrollbar-width:thin;
      scrollbar-color:var(--gb-pink) rgba(255,255,255,.10);}
  body.gb-work-tpl .wall-grid::-webkit-scrollbar, body.gb-work-tpl .bento::-webkit-scrollbar, body.gb-work-tpl .proof-grid::-webkit-scrollbar {height:5px;}
  body.gb-work-tpl .wall-grid::-webkit-scrollbar-thumb, body.gb-work-tpl .bento::-webkit-scrollbar-thumb, body.gb-work-tpl .proof-grid::-webkit-scrollbar-thumb {background:var(--gb-pink);border-radius:9px;}
  body.gb-work-tpl .wall-grid::-webkit-scrollbar-track, body.gb-work-tpl .bento::-webkit-scrollbar-track, body.gb-work-tpl .proof-grid::-webkit-scrollbar-track {background:rgba(255,255,255,.10);border-radius:9px;}
  body.gb-work-tpl .wall-grid>.wcard {flex:0 0 84%;scroll-snap-align:start;}
  body.gb-work-tpl .proof-grid>.tcard {flex:0 0 80%;scroll-snap-align:start;}
  body.gb-work-tpl .proof-grid {gap:12px;}
  body.gb-work-tpl .bento>.mtile {flex:0 0 80%;scroll-snap-align:start;height:240px;}
  body.gb-work-tpl .dmodal-cta {flex-direction:column;align-items:stretch;gap:10px;}
  body.gb-work-tpl .dmodal-cta .btn {width:100%;white-space:normal;line-height:1.25;text-align:center;}
  body.gb-work-tpl .dmodal-title {font-size:clamp(26px,8vw,38px);}
}
@media(prefers-reduced-motion:reduce) {
  body.gb-work-tpl .cmarq-track, body.gb-work-tpl .hero .glow, body.gb-work-tpl .final .glow {animation:none;}
}

/* ===== Header offset (transparent Elementor header) ===== */
body.gb-work-tpl{--gb-header-h:130px;}
@media (max-width:920px){body.gb-work-tpl{--gb-header-h:120px;}}
@media (max-width:760px){body.gb-work-tpl{--gb-header-h:100px;}}
body.gb-work-tpl #content, body.gb-work-tpl .site-content{padding-top:0!important;margin-top:0!important;}
body.gb-work-tpl .gb-app{margin-top:calc(-1 * var(--gb-header-h)) !important;}
body.gb-work-tpl .hero{padding-top:calc(var(--gb-header-h) + 24px) !important;}
