/* Selected showcase reference: two large previews, nine module cards. */
.capability-card{text-align:left;font:inherit;color:inherit;cursor:pointer;width:100%}
.capabilities-extra button{font:inherit;color:inherit;text-align:left;cursor:pointer}
.capabilities-extra button:hover{color:var(--red);text-decoration:underline;text-underline-offset:4px}
.capabilities-extra button:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.capabilities-more{font-size:15px;line-height:1.5;color:var(--muted)}
dialog.capability-modal{width:min(1320px,calc(100% - 48px));padding:0;overflow:hidden;max-height:90dvh}
.capability-modal #modal-content{overflow-y:auto;max-height:90dvh;padding:36px;overscroll-behavior:contain}
.capability-modal .modal-close{z-index:2;background:white;border:1px solid var(--line);border-radius:50%}
.capability-dialog .eyebrow{margin:0 48px 10px 0}
.capability-modal .capability-dialog h2{font-size:clamp(26px,2.3vw,36px);line-height:1.2;margin:0 42px 14px 0}
.capability-dialog-intro{max-width:900px;font-size:18px;line-height:1.5}
.capability-dialog-body{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:30px;align-items:start;margin-top:26px}
.capability-dialog-visual{margin:0;position:sticky;top:0;min-width:0}
.capability-dialog-visual img{display:block;width:100%;height:auto;border-radius:12px}
.capability-dialog-visual figcaption{font-size:11px;line-height:1.4;color:var(--muted);margin-top:9px}
.capability-dialog-copy{min-width:0}
.capability-dialog-copy .benefits-grid{display:grid;grid-template-columns:1fr;gap:20px;margin:0}
.capability-dialog-copy .benefit{gap:12px}
.capability-dialog-copy .benefit h4{font-size:16px;line-height:1.35}
.capability-dialog-copy .benefit p{font-size:14px;line-height:1.5;margin:5px 0 0}
.capability-dialog-cta{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.capability-dialog-cta .button{margin-top:0;width:100%;font-size:15px}
.capability-dialog-cta p{font-size:12px;text-align:center;margin:10px 0 0}
@media(max-width:900px){.capability-dialog-body{grid-template-columns:1fr;gap:24px}.capability-dialog-visual{position:static}.capability-modal #modal-content{padding:30px}.capability-dialog-visual img{max-width:720px;margin-inline:auto}}
@media(max-width:600px){dialog.capability-modal{width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.capability-modal #modal-content{height:100dvh;max-height:100dvh;padding:30px 20px}.capability-dialog h2{font-size:27px}.capability-dialog-intro{font-size:16px}.capability-dialog-body{margin-top:20px;gap:24px}.capability-dialog-copy .benefits-grid{gap:19px}.capabilities-extra button{min-height:32px}}
.capabilities-overview{position:relative;overflow:hidden;background:#fafbfd;padding:38px 0 34px}
.capabilities-overview:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(145deg,#fff0f4,#eff3f7);opacity:.55;clip-path:polygon(0 49%,18% 58%,40% 100%,0 100%,0 0,100% 0,100% 48%,84% 40%,80% 0,0 0)}
.capabilities-overview .container{position:relative;width:min(1600px,94%)}
.capabilities-heading{text-align:center;margin-bottom:24px}
.capabilities-heading h2{font-size:clamp(30px,3.2vw,52px);font-weight:900;letter-spacing:-.04em;color:#080a0c}
.capabilities-heading p{font-size:clamp(17px,1.5vw,24px);line-height:1.4;margin-top:9px}
.capabilities-heading .capabilities-hint{font-size:clamp(14px,1.05vw,17px);line-height:1.5;margin-top:12px;color:var(--muted)}
.capabilities-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.capability-card{grid-column:span 2;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:12px;align-items:center;padding:12px 14px 12px 20px;min-height:120px;border:1px solid #e1e6ed;border-radius:16px;background:#ffffffed;transition:border-color .2s,box-shadow .2s,transform .2s}
.capability-card:hover{border-color:#e8003560;box-shadow:0 10px 28px #26344810;transform:translateY(-2px)}
.capability-card:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.capability-copy{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:12px;row-gap:7px;align-self:center;min-width:0}
.capability-icon{display:block;width:32px;height:36px;color:var(--red);grid-column:1;grid-row:1 / span 2}
.capability-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.capability-copy h3{grid-column:2;font-size:clamp(15px,1.1vw,18px);font-weight:750;line-height:1.25;letter-spacing:-.025em}
.capability-copy p{grid-column:2;font-size:clamp(12px,.87vw,14px);line-height:1.4}
.capability-preview{position:relative;overflow:hidden;border-radius:10px;border:1px solid #e4e9ef;background:white;width:100%;pointer-events:none}
.capability-preview img{position:absolute;max-width:none;height:auto}
.capability-featured{grid-column:span 3;grid-template-columns:minmax(0,.57fr) minmax(0,1fr);gap:20px;padding:16px 16px 16px 36px;min-height:264px}
.capability-featured .capability-copy{display:block}
.capability-featured .capability-icon{width:62px;height:62px;padding:14px;border:1px solid #ffd5e0;background:#fff6f8;border-radius:17px;margin-bottom:16px}
.capability-featured h3{font-size:clamp(20px,1.6vw,26px);margin-bottom:9px}
.capability-featured p{font-size:clamp(13px,1vw,16px);line-height:1.45}
.capability-arrow{display:block;font-size:40px;line-height:1;margin-top:18px;color:var(--red)}
.capability-featured .capability-preview{box-shadow:0 7px 20px #2634480a}
.capabilities-extra{display:flex;align-items:center;gap:22px;margin-top:16px;padding:18px 32px;background:#fff0f4;border-radius:16px}
.capabilities-extra .capability-icon{flex:0 0 32px;height:32px}
.capabilities-extra strong{color:var(--red);font-size:21px;padding-right:30px;border-right:1px solid #ddd8df;white-space:nowrap}
.capabilities-extra>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:clamp(15px,1.35vw,21px)}
.capabilities-extra a:hover{color:var(--red);text-decoration:underline;text-underline-offset:4px}
.capabilities-extra a:focus-visible,.capabilities-more a:focus-visible{outline:2px solid var(--red);outline-offset:4px;border-radius:2px}
.capabilities-more{text-align:center;margin-top:17px}
.capabilities-more a{display:inline-flex;align-items:center;gap:14px;color:var(--red);min-height:44px;font-size:17px;line-height:1.4;text-decoration:underline;text-underline-offset:6px}
.capabilities-more a:hover{color:var(--red-hover)}
.capabilities-more span{font-size:24px}
@media(max-width:1200px){.capability-card{padding:12px;gap:10px;min-height:110px}.capability-copy{grid-template-columns:26px minmax(0,1fr);column-gap:9px}.capability-icon{width:26px;height:30px}.capability-featured{padding:16px 16px 16px 24px;min-height:235px;gap:15px}.capability-featured .capability-icon{width:52px;height:52px;padding:11px;margin-bottom:13px}.capabilities-extra{padding:17px 24px;gap:18px}.capabilities-extra strong{padding-right:22px;font-size:19px}}
@media(max-width:1000px){.capabilities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.capability-card,.capability-featured{grid-column:span 1}.capability-copy h3{font-size:17px}.capability-copy p{font-size:13px}.capability-featured{grid-template-columns:1fr;gap:16px;padding:22px;align-content:start}.capability-featured .capability-copy{position:relative;padding-left:64px;min-height:60px}.capability-featured .capability-icon{position:absolute;left:0;top:0}.capability-featured h3{font-size:21px}.capability-featured p{font-size:14px}.capability-arrow{display:none}.capability-featured .capability-preview{max-width:none}.capabilities-extra>div{gap:9px;font-size:16px}.capabilities-extra{gap:14px}}
@media(max-width:600px){.capabilities-overview{padding:30px 0}.capabilities-overview .container{width:calc(100% - 40px)}.capabilities-heading{text-align:left;margin-bottom:22px}.capabilities-heading h2{font-size:30px;line-height:1.13}.capabilities-heading p{font-size:17px;line-height:1.45;margin-top:12px}.capabilities-grid{grid-template-columns:1fr;gap:12px}.capability-card{padding:14px;min-height:114px;gap:12px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.capability-copy{grid-template-columns:26px minmax(0,1fr);gap:7px 9px}.capability-copy h3{font-size:16px}.capability-copy p{font-size:12px}.capability-featured{grid-template-columns:1fr;padding:18px;gap:14px}.capability-featured h3{font-size:21px}.capability-featured p{font-size:14px}.capabilities-extra{display:grid;grid-template-columns:26px 1fr;padding:17px 18px;gap:12px}.capabilities-extra .capability-icon{width:26px;height:28px}.capabilities-extra strong{border:0;padding:0;font-size:19px}.capabilities-extra>div{grid-column:1 / -1;font-size:15px;gap:8px}.capabilities-extra a{min-height:32px;display:inline-flex;align-items:center}.capabilities-more a{font-size:15px;gap:9px}.capabilities-more{margin-top:13px}}
@media(prefers-reduced-motion:reduce){.capability-card{transition:none}.capability-card:hover{transform:none}}
