/* Commercial systems shown through their customer-facing logic. */
#gs-portfolio .gs-cases .gs-case>.crm-system-banner{background:radial-gradient(ellipse at 85% 20%,#527a7070,transparent 65%),#152f30}
#gs-portfolio .gs-cases .gs-case>.loyalty-system-banner{background:radial-gradient(ellipse at 85% 30%,#81925270,transparent 65%),#213a2b}
#gs-portfolio .gs-cases .gs-case>:is(.crm-system-banner,.loyalty-system-banner)>.case-hero-caption{max-width:52%}
#gs-portfolio .crm-banner-map{position:absolute;right:5%;top:55px;width:40%;display:flex;align-items:center;justify-content:space-between;gap:8px;z-index:2;color:#d6e6db}
#gs-portfolio .crm-banner-map>span{font:7px/1.5 var(--mono);letter-spacing:.05em;border:1px solid #8bb4a266;border-radius:30px;padding:14px 10px;white-space:nowrap}
#gs-portfolio .crm-banner-map>i{height:1px;flex:1;background:#b89e74;min-width:15px;position:relative}
#gs-portfolio .crm-banner-map>i::after{content:'';position:absolute;right:0;top:-2px;width:5px;height:5px;border-radius:50%;background:#dbc6a0}
#gs-portfolio .crm-banner-map>div{position:absolute;top:85px;left:0;right:0;display:flex;gap:8px;flex-wrap:wrap}
#gs-portfolio .crm-banner-map b{font:6px/1.5 var(--mono);letter-spacing:.06em;color:#9fbca9;border-bottom:1px solid #82a98d40;padding:7px 0;margin-right:10px}
#gs-portfolio .loyalty-banner-art{position:absolute;right:7%;top:35px;width:34%;padding:20px;border:1px solid #a8bf7e80;border-radius:7px;background:linear-gradient(135deg,#a8bd8b20,#203f2b70);z-index:2;transform:rotate(-4deg);box-shadow:0 20px 30px #0a291c40;color:#d6e4ba}
#gs-portfolio .loyalty-banner-art>span{font:6px/1.6 var(--mono);letter-spacing:.1em;color:#b6cb97}
#gs-portfolio .loyalty-banner-art>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #aec58c50;padding:18px 0}
#gs-portfolio .loyalty-banner-art b{font:italic 38px/1 'Cormorant Garamond',Georgia,serif;font-weight:400;color:#dcc59c}
#gs-portfolio .loyalty-banner-art small{display:block;font:5px/1.6 var(--mono);letter-spacing:.08em;margin-top:14px;color:#b6ca98}
#gs-portfolio .crm-showcase,#gs-portfolio .loyalty-showcase{padding:24px;border:1px solid #587667;border-radius:7px;background:#102b27;min-width:0;box-shadow:0 20px 35px #071e2820}
#gs-portfolio .crm-showcase-head>span{font:7px/1.6 var(--mono);letter-spacing:.1em;color:#a8c4ab}
#gs-portfolio .crm-showcase-head>h4{font:500 25px/1.12 var(--display);letter-spacing:-.045em;margin:12px 0 13px;color:#edf3e4}
#gs-portfolio .crm-showcase-head>p{font:11px/1.85 var(--body);color:#b5c8b4;max-width:44ch}
#gs-portfolio .crm-switches{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:23px 0}
#gs-portfolio .crm-switches>button{background:#ffffff05;color:#adc6af;border:1px solid #567b6255;padding:12px 4px;font:9px/1.4 var(--body);cursor:pointer;transition:background .25s,color .25s;border-radius:3px}
#gs-portfolio .crm-switches>button[aria-pressed=true]{background:#d9dfc7;color:#36523b;border-color:#d9dfc7}
#gs-portfolio .crm-trigger{display:flex;align-items:center;gap:12px;position:relative;border:1px solid #668e6b70;background:#274a3733;padding:14px;border-radius:4px;margin-bottom:24px}
#gs-portfolio .crm-trigger>span{width:30px;height:30px;border:1px solid #7e9f7250;border-radius:50%;display:grid;place-items:center;color:#cbb188;flex:none}
#gs-portfolio .crm-trigger small{font:6px var(--mono);letter-spacing:.09em;color:#a6c295}
#gs-portfolio .crm-trigger b{display:block;font:500 12px/1.4 var(--body);color:#d2e1c8;margin-top:7px}
#gs-portfolio .crm-trigger>i{position:absolute;bottom:-25px;left:28px;height:24px;width:1px;background:#9bb580}
#gs-portfolio .crm-trigger>i::after{content:'';position:absolute;bottom:0;left:-2px;width:5px;height:5px;background:#d2b98e;border-radius:50%}
#gs-portfolio .crm-message{background:#f1f2e7;border-radius:5px;overflow:hidden;box-shadow:0 15px 30px #041c1725}
#gs-portfolio .crm-message-top{display:flex;justify-content:space-between;align-items:center;padding:13px 17px;border-bottom:1px solid #c7d4ba;color:#5a734b;font:6px/1.5 var(--mono);letter-spacing:.07em}
#gs-portfolio .crm-message-body{padding:24px}
#gs-portfolio .crm-message-body>small{font:6px/1.5 var(--mono);letter-spacing:.08em;color:#667e52}
#gs-portfolio .crm-message-body>strong{display:block;font:500 34px/1.03 var(--display);letter-spacing:-.05em;color:#3c5837;margin:18px 0}
#gs-portfolio .crm-message-body>p{font:11px/1.85 var(--body);color:#5a7448;max-width:35ch;margin:14px 0 22px}
#gs-portfolio .crm-message-action{display:flex;justify-content:space-between;gap:20px;background:#416747;color:#f3f7eb;padding:13px 15px;font:10px var(--body);border-radius:2px}
#gs-portfolio .crm-message-action i{font-style:normal}
#gs-portfolio .crm-message-footer{display:flex;justify-content:space-between;gap:15px;padding:13px 17px;background:#dde5ce;font:5px var(--mono);letter-spacing:.1em;color:#637e4a}
#gs-portfolio .crm-purpose{margin-top:23px;border-top:1px solid #719a6a50;padding-top:18px}
#gs-portfolio .crm-purpose>span{font:6px var(--mono);letter-spacing:.1em;color:#b8cea6}
#gs-portfolio .crm-purpose>p{font:12px/1.75 var(--body);color:#d6e7c9;margin-top:10px;max-width:37ch}
#gs-portfolio .crm-evidence-note{font:8px/1.8 var(--body);color:#a6be9a;margin-top:23px;border-top:1px solid #70926940;padding-top:17px}
#gs-portfolio .crm-results-note{font:9px/1.8 var(--body);color:#c1d0ad;margin:16px 0 0}
#gs-portfolio .crm-message.is-changing{animation:crm-message-enter .45s cubic-bezier(.2,.7,.2,1)}
@keyframes crm-message-enter{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
/* A distinct retention visual: recognition, followed by purposeful contact. */
#gs-portfolio .loyalty-showcase{background:#17352a;border-color:#65804f}
#gs-portfolio .loyalty-switches{display:grid;gap:0;margin-top:22px;border-top:1px solid #71965b60}
#gs-portfolio .loyalty-switches>button{display:flex;align-items:center;gap:15px;background:none;border:0;border-bottom:1px solid #71965b60;color:#b4cba2;padding:15px 0;text-align:left;font:11px var(--body);cursor:pointer;transition:color .3s}
#gs-portfolio .loyalty-switches>button>span{font:7px var(--mono);color:#8dab75}
#gs-portfolio .loyalty-switches>button[aria-pressed=true]{color:#e4cd9f}
#gs-portfolio .loyalty-switches>button[aria-pressed=true]::after{content:'↗';margin-left:auto;font:17px Georgia}
#gs-portfolio .loyalty-explanation{min-height:135px;margin-top:23px}
#gs-portfolio .loyalty-explanation>span{font:6px var(--mono);letter-spacing:.1em;color:#adc993}
#gs-portfolio .loyalty-explanation>h5{font:500 19px/1.2 var(--display);letter-spacing:-.025em;color:#e0ebce;margin:12px 0}
#gs-portfolio .loyalty-explanation>p{font:11px/1.85 var(--body);color:#b2ca9c;max-width:40ch}
#gs-portfolio :is(.crm-showcase,.loyalty-showcase) button:focus-visible{outline:3px solid #c3a06e;outline-offset:4px}
/* The personal introduction becomes a small, useful conversation. */
#gs-portfolio .welcome-person-interactive{padding-bottom:50px;transform:perspective(1100px) rotateY(var(--person-x,0deg)) rotateX(var(--person-y,0deg));transition:transform .65s ease}
#gs-portfolio .welcome-person-interactive .welcome-shape{bottom:55px;transition:background .8s,border-radius .8s,transform .8s}
#gs-portfolio .welcome-person-interactive .welcome-name{padding-bottom:30px}
#gs-portfolio .welcome-person-interactive .welcome-name>em{font-size:25px;min-height:58px;color:#745637;transition:opacity .3s,transform .6s}
#gs-portfolio .welcome-focus-controls{position:absolute;bottom:0;left:2%;right:2%;display:flex;gap:8px;transform:translateZ(15px)}
#gs-portfolio .welcome-focus-controls>button{flex:1;padding:13px 6px;font:10px/1.5 var(--body);cursor:pointer;border:1px solid #c6d2bb;background:#f4f5ec;color:#5f784c;border-radius:30px;transition:background .3s,color .3s,border-color .3s}
#gs-portfolio .welcome-focus-controls>button[aria-pressed=true]{background:#b78662;border-color:#b78662;color:#fff}
#gs-portfolio .welcome-focus-controls>button:focus-visible{outline:3px solid #719b7b;outline-offset:4px}
#gs-portfolio .welcome-margin-note{position:absolute;right:-20px;top:0;font:italic 17px/1.15 'Cormorant Garamond',Georgia,serif;color:#7a8c65;transform:rotate(8deg)}
#gs-portfolio [data-person-focus='1'] .welcome-shape{background:#d4dfcb;border-radius:55% 45% 42% 58% / 47% 53% 47% 53%;transform:rotate(4deg)}
#gs-portfolio [data-person-focus='2'] .welcome-shape{background:#cfded7;border-radius:42% 58% 52% 48% / 53% 43% 57% 47%;transform:rotate(-2deg)}
#gs-portfolio .welcome-person-interactive.is-changing .welcome-name>em{animation:person-principle .5s ease}
#gs-portfolio .welcome-person-interactive.is-changing .welcome-scribble path{animation:person-line 1.1s ease both;stroke-dasharray:600}
#gs-portfolio .welcome-focus-response{border-left:2px solid #b68a61;padding-left:17px;margin-top:24px;max-width:47ch}
#gs-portfolio .welcome-focus-response>span{font:7px var(--mono);letter-spacing:.09em;color:#6a7d57}
#gs-portfolio .welcome-focus-response>p{font:12px/1.8 var(--body);color:#4d6846;margin-top:10px;min-height:65px}
#gs-portfolio .welcome-focus-response>a{display:inline-block;font:10px/1.7 var(--body);color:#7c603e;margin-top:10px;border-bottom:1px solid #bfb28c;padding-bottom:5px}
#gs-portfolio .personal-welcome .welcome-copy>p:not(.welcome-intro){font-size:11px;max-width:47ch}
#gs-portfolio .personal-welcome .welcome-grid{gap:9%;padding-bottom:5px}
@keyframes person-principle{from{opacity:.25;transform:rotate(-5deg) translateY(6px)}to{opacity:1;transform:rotate(-5deg)}}
@keyframes person-line{from{stroke-dashoffset:600}to{stroke-dashoffset:0}}
@media(max-width:1000px){#gs-portfolio .crm-showcase,#gs-portfolio .loyalty-showcase{padding:19px}#gs-portfolio .crm-banner-map>span{font-size:5px;padding:12px 7px}#gs-portfolio .crm-message-body>strong{font-size:29px}#gs-portfolio .welcome-margin-note{right:-5px;font-size:15px}#gs-portfolio .welcome-focus-response>p{min-height:0}}
@media(max-width:700px){#gs-portfolio .gs-cases .gs-case>:is(.crm-system-banner,.loyalty-system-banner)>.case-hero-caption{max-width:90%}#gs-portfolio .crm-banner-map{top:20px;left:20px;right:20px;width:auto;max-width:290px;opacity:.65}#gs-portfolio .crm-banner-map>span{font-size:5px;padding:8px}#gs-portfolio .crm-banner-map>div{display:none}#gs-portfolio .loyalty-banner-art{right:20px;left:auto;top:12px;width:55%;padding:10px;opacity:.5}#gs-portfolio .loyalty-banner-art>span{font-size:4px}#gs-portfolio .loyalty-banner-art>div{padding:9px 0}#gs-portfolio .loyalty-banner-art b{font-size:23px}#gs-portfolio .loyalty-banner-art>small{display:none}#gs-portfolio .crm-showcase,#gs-portfolio .loyalty-showcase{padding:20px}#gs-portfolio .crm-showcase-head>h4{font-size:25px}#gs-portfolio .crm-showcase-head>p{font-size:11px}#gs-portfolio .crm-switches>button{font-size:8px;padding:12px 4px}#gs-portfolio .crm-message-body{padding:20px}#gs-portfolio .crm-message-body>strong{font-size:30px}#gs-portfolio .crm-evidence-note{font-size:8px}#gs-portfolio .loyalty-explanation{min-height:155px}#gs-portfolio .welcome-person-interactive{width:90%;min-height:350px;transform:none!important}#gs-portfolio .welcome-person-interactive .welcome-name>b{font-size:86px}#gs-portfolio .welcome-person-interactive .welcome-name>em{font-size:24px}#gs-portfolio .welcome-focus-controls{left:0;right:0;gap:6px}#gs-portfolio .welcome-focus-controls>button{font-size:9px;padding:13px 5px}#gs-portfolio .welcome-margin-note{font-size:13px;top:2px;right:-7px}#gs-portfolio .welcome-focus-response>p{font-size:12px}#gs-portfolio .welcome-focus-response>a{font-size:10px}#gs-portfolio .personal-welcome .welcome-copy>p:not(.welcome-intro){font-size:12px}}
@media(prefers-reduced-motion:reduce){#gs-portfolio .crm-message.is-changing,#gs-portfolio .welcome-person-interactive.is-changing .welcome-name>em,#gs-portfolio .welcome-person-interactive.is-changing .welcome-scribble path{animation:none}#gs-portfolio .welcome-person-interactive,#gs-portfolio .welcome-person-interactive .welcome-shape,#gs-portfolio .welcome-name>em{transition:none;transform:none}}
#gs-portfolio #case-panel-4,#gs-portfolio #case-panel-5{align-items:start}
#gs-portfolio .crm-system-banner::before{content:'CRM';position:absolute;left:25px;top:-35px;font:600 180px/1 var(--display);letter-spacing:-.08em;color:#a6c7bc08;pointer-events:none}
#gs-portfolio .loyalty-system-banner::before{content:'RETURN';position:absolute;left:25px;top:-5px;font:600 115px/1 var(--display);letter-spacing:-.07em;color:#b7cf9009;pointer-events:none}
#gs-portfolio .welcome-focus-controls>button[aria-pressed=true]{background:#8e603f;border-color:#8e603f}
@media(max-width:700px){#gs-portfolio .crm-system-banner::before{font-size:120px;top:10px;left:12px}#gs-portfolio .loyalty-system-banner::before{font-size:70px;top:10px;left:12px}}
#gs-portfolio .gs-case .crm-results-note{font:9px/1.8 var(--body);color:#c1d0ad;margin-top:16px}
#gs-portfolio .gs-case .crm-evidence-note{font:8px/1.8 var(--body);color:#a6be9a}
@media(max-width:700px){#gs-portfolio .welcome-focus-response>.welcome-focus-controls{position:static;transform:none;margin:14px 0 13px;gap:5px}#gs-portfolio .welcome-focus-response .welcome-focus-controls>button{font-size:9px;padding:11px 4px}#gs-portfolio .welcome-person-interactive{padding-bottom:0}#gs-portfolio .welcome-person-interactive .welcome-shape{bottom:20px}}
