/* Cywift site: shared styles for subpages, header, footer and page template */
html{scroll-behavior:smooth;scroll-padding-top:48px}
body{margin:0;background:#161616}
a{color:#7BF0AF}
.cds--header{position:relative !important}
:root{--cy-screen:min(calc(100vh - 48px), 1280px)}

/* Keyframes */
@keyframes cy-dash{to{stroke-dashoffset:-24}}
@keyframes pg-asm{from{opacity:0;transform:translate(var(--dx,0px),var(--dy,24px)) scale(var(--s,1))}to{opacity:1;transform:none}}
@keyframes pg-rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes pg-spin{to{transform:rotate(360deg)}}
@keyframes pg-pulse{0%,100%{opacity:1}50%{opacity:.4}}
@keyframes pg-draw{to{stroke-dashoffset:0}}
@keyframes pg-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes cy-mega-in{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
@keyframes cy-mega-col{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* Header and mega menu */
.cy-nav{display:flex;height:48px;margin-left:8px}
.cy-nav-btn{display:inline-flex;align-items:center;gap:8px;height:48px;padding:0 16px;background:transparent;border:0;color:#c6c6c6;font:inherit;font-size:14px;letter-spacing:0.16px;cursor:pointer;box-shadow:inset 0 -3px 0 transparent;transition:background 110ms cubic-bezier(0.2,0,0.38,0.9),color 110ms,box-shadow 240ms cubic-bezier(0.2,0,0.38,0.9)}
.cy-nav-btn:hover{background:#353535;color:#f4f4f4}
.cy-nav-btn[aria-expanded="true"]{background:#262626;color:#f4f4f4;box-shadow:inset 0 -3px 0 #7BF0AF}
.cy-nav-btn.is-current{color:#f4f4f4;box-shadow:inset 0 -3px 0 #12894E}
.cy-nav-btn:focus-visible,.cy-burger:focus-visible,.cy-mega-link:focus-visible{outline:2px solid #7BF0AF;outline-offset:-2px}
.cy-burger{display:none;width:48px;height:48px;align-items:center;justify-content:center;background:transparent;border:0;color:#f4f4f4;cursor:pointer}
.cy-burger:hover{background:#353535}
.cy-mega{position:absolute;left:0;right:0;top:48px;background:#262626;border-top:1px solid #393939;border-bottom:1px solid #393939;box-shadow:0 24px 48px rgba(0,0,0,.55);animation:cy-mega-in 240ms cubic-bezier(0,0,0.38,0.9) both}
.cy-mega-col{display:flex;flex-direction:column;min-width:0;animation:cy-mega-col 420ms cubic-bezier(0,0,0.38,0.9) both}
.cy-mega-h{margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid #525252;font-size:12px;line-height:16px;letter-spacing:1.2px;text-transform:uppercase;color:#a8a8a8}
.cy-mega-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 12px;margin:0 -12px;color:#f4f4f4;text-decoration:none;font-size:16px;line-height:22px;box-shadow:inset 0 0 0 transparent;transition:background 110ms cubic-bezier(0.2,0,0.38,0.9),box-shadow 160ms cubic-bezier(0.2,0,0.38,0.9)}
.cy-mega-link:hover{background:#333333;box-shadow:inset 3px 0 0 #7BF0AF;color:#ffffff}
.cy-mega-arrow{display:inline-flex;color:#7BF0AF;opacity:0;transform:translateX(-8px);transition:opacity 160ms ease,transform 240ms cubic-bezier(0.2,0,0.38,0.9)}
.cy-mega-link:hover .cy-mega-arrow{opacity:1;transform:none}
.cy-mega-feature{gap:16px;padding:24px;background:#0E3B26;box-shadow:inset 0 3px 0 #7BF0AF;align-self:start}
@media (max-width:1055px){.cy-nav{display:none}.cy-burger{display:inline-flex}.cy-mega{display:none}}
@media (min-width:1056px){.cy-mobile-menu{display:none}}

/* Closing CTA and footer */
.cy-dots{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle, #7BF0AF 1.3px, transparent 1.9px);background-size:24px 24px;background-position:12px 12px;opacity:0;transition:opacity 500ms ease;-webkit-mask-image:radial-gradient(circle 280px at var(--mx,70%) var(--my,50%), #000 0%, rgba(0,0,0,.45) 45%, transparent 100%);mask-image:radial-gradient(circle 280px at var(--mx,70%) var(--my,50%), #000 0%, rgba(0,0,0,.45) 45%, transparent 100%)}
.cy-dots-zone:hover .cy-dots{opacity:1}
.cy-cta-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#E8FCF1;text-decoration:none;font-size:16px;transition:color 200ms ease}
.cy-cta-link:hover{color:#7BF0AF}
.cy-cta-link .cy-cta-arrow{display:inline-flex;transition:transform 240ms cubic-bezier(0.2,0,0.38,0.9)}
.cy-cta-link:hover .cy-cta-arrow{transform:translateX(6px)}
.cy-cta-link:focus-visible{outline:2px solid #7BF0AF;outline-offset:4px}
.cy-foot a{display:block;color:#c6c6c6;text-decoration:none;font-size:13px;line-height:24px}
.cy-foot a:hover{color:#ffffff;text-decoration:underline}
.cy-top-btn{width:44px;height:44px;border-radius:50%;background:#393939;color:#f4f4f4;border:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background 200ms ease,transform 200ms ease}
.cy-top-btn:hover{background:#525252;transform:translateY(-2px)}
.cy-top-btn:focus-visible{outline:2px solid #7BF0AF;outline-offset:2px}
@media (max-width:899px){.cy-foot-col{grid-column:span 6 !important}.cy-foot-info{grid-column:1 / -1 !important}}
@media (max-width:671px){.cy-final-cta{padding:40px 16px !important}.cy-foot{padding:32px 16px !important}}

/* Section themes */
.pg-dark{background:#161616;color:#f4f4f4;--ink:#7BF0AF;--fill:#262626;--fill2:#0E3B26;--acc:#7BF0AF;--line:#393939;--layer:#262626;--layer-hover:#333333;--muted:#c6c6c6;--accent-text:#7BF0AF;--tint:#0E3B26}
.pg-dark2{background:#1c1c1c;color:#f4f4f4;--ink:#7BF0AF;--fill:#262626;--fill2:#0E3B26;--acc:#7BF0AF;--line:#393939;--layer:#262626;--layer-hover:#333333;--muted:#c6c6c6;--accent-text:#7BF0AF;--tint:#0E3B26}
.pg-light{background:#F4F4F4;color:#161616;--ink:#0E3B26;--fill:#ECFDF3;--fill2:#A6EFC6;--acc:#12894E;--line:#e0e0e0;--layer:#ffffff;--layer-hover:#ECFDF3;--muted:#525252;--accent-text:#0E6B3D;--tint:#C6F5DB}
.pg-mint{background:#D3F9E4;color:#0E3B26;--ink:#0E3B26;--fill:#ECFDF3;--fill2:#A6EFC6;--acc:#12894E;--line:#A6EFC6;--layer:#ECFDF3;--layer-hover:#ffffff;--muted:#24513A;--accent-text:#0E3B26;--tint:#A6EFC6}
.pg-deep{background:#0E3B26;color:#E8FCF1;--ink:#7BF0AF;--fill:#12301F;--fill2:#12894E;--acc:#7BF0AF;--line:#24513A;--layer:#12301F;--layer-hover:#174a31;--muted:#B9F3D3;--accent-text:#7BF0AF;--tint:#12894E}
.pg-muted{color:var(--muted)}
.pg-acc{color:var(--accent-text)}
.pg-wrap{max-width:1584px;margin:0 auto;padding-left:48px;padding-right:48px;box-sizing:border-box}
.pg-eyebrow{margin:0;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:0.32px;color:var(--accent-text)}
.pg-h2{margin:0;font-size:clamp(30px, 3vw, 44px);line-height:1.2;font-weight:300}
.pg-serif{font-family:'IBM Plex Serif',Georgia,serif;font-weight:300}
.pg-rise{animation:pg-rise 700ms cubic-bezier(0.4,0.14,0.3,1) both}
@supports (animation-timeline: view()){
  .pg-reveal{animation:pg-rise linear both;animation-timeline:view();animation-range:entry 0% entry 45%}
}

/* Hero */
.pg-hero{position:relative;overflow:hidden;min-height:min(calc(100vh - 48px), 860px);display:flex;align-items:stretch}
.pg-hero-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px;align-items:center;width:100%;padding-top:72px;padding-bottom:72px}
.pg-crumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 24px;font-size:12px;color:var(--muted)}
.pg-crumbs a{color:var(--muted);text-decoration:none}
.pg-crumbs a:hover{color:var(--accent-text);text-decoration:underline}
.pg-hero-bg{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(var(--line) 1px, transparent 1.6px);background-size:32px 32px;opacity:.9}

/* Art */
.art{width:100%}
.art svg{display:block;width:100%;height:auto;overflow:visible}
.art .i{fill:none;stroke:var(--ink,#0E3B26);stroke-width:1.5}
.art .f{fill:var(--fill,#ECFDF3);stroke:var(--ink,#0E3B26);stroke-width:1.5}
.art .f2{fill:var(--fill2,#A6EFC6);stroke:var(--ink,#0E3B26);stroke-width:1.5}
.art .a{fill:var(--acc,#12894E)}
.art .w{fill:#ffffff;stroke:var(--ink,#0E3B26);stroke-width:1.5}
.art .t{fill:var(--ink,#0E3B26);font-family:'IBM Plex Mono',monospace;font-size:12px}
@media (max-width:671px){.pg-step-line{display:none}}
.art .k{animation:pg-asm 800ms cubic-bezier(0.4,0.14,0.3,1) both;transform-box:fill-box;transform-origin:center}
.art .spin{animation:pg-spin 8s linear infinite;transform-box:fill-box;transform-origin:center}
.art .pulse{animation:pg-pulse 2s ease-in-out infinite}
.art .dash{stroke-dasharray:5 6;animation:cy-dash 1.2s linear infinite}
.art .draw{stroke-dasharray:1;stroke-dashoffset:1;animation:pg-draw 1400ms cubic-bezier(0.4,0.14,0.3,1) forwards}
@supports (animation-timeline: view()){
  .art-view .k{animation-timeline:view();animation-range:entry 5% entry 80%;animation-delay:0s !important}
  .art-view .draw{animation:pg-draw linear forwards;animation-timeline:view();animation-range:entry 20% cover 45%}
}

/* Tiles and grids */
.pg-grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.pg-tile{position:relative;display:flex;flex-direction:column;gap:12px;padding:24px;background:var(--layer);color:inherit;text-decoration:none;box-shadow:inset 0 0 0 transparent;transition:background 240ms cubic-bezier(0.2,0,0.38,0.9),box-shadow 240ms cubic-bezier(0.2,0,0.38,0.9)}
.pg-tile:hover{background:var(--layer-hover);box-shadow:inset 0 3px 0 var(--acc)}
.pg-ico{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;background:var(--tint);color:var(--accent-text);transition:background 240ms,color 240ms,transform 240ms cubic-bezier(0.2,0,0.38,0.9)}
.pg-tile:hover .pg-ico{background:var(--acc);color:#0F1A15;transform:translateY(-3px)}
.pg-light .pg-tile:hover .pg-ico,.pg-mint .pg-tile:hover .pg-ico{color:#ffffff}
.pg-tile-arrow{display:inline-flex;margin-top:auto;color:var(--accent-text);transition:transform 240ms cubic-bezier(0.2,0,0.38,0.9)}
.pg-tile:hover .pg-tile-arrow{transform:translateX(6px)}
.pg-tile:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}

/* Related tiles with rising fill */
.pg-rel{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:32px;min-height:220px;padding:24px;background:var(--layer);color:inherit;text-decoration:none}
.pg-rel::before{content:'';position:absolute;inset:0;background:var(--tint);transform:scaleY(0);transform-origin:bottom;transition:transform 400ms cubic-bezier(0.4,0.14,0.3,1)}
.pg-rel:hover::before,.pg-rel:focus-visible::before{transform:scaleY(1)}
.pg-rel > *{position:relative}
.pg-rel .pg-tile-arrow{align-self:flex-end}
.pg-rel:hover .pg-tile-arrow{transform:translateX(10px)}
.pg-rel:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}

/* Steps */
.pg-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:32px;position:relative}
.pg-step-line{position:absolute;left:0;right:0;top:19px;height:2px;background:var(--acc);transform-origin:left;transform:scaleX(1)}
@supports (animation-timeline: view()){
  .pg-step-line{animation:pg-grow linear both;animation-timeline:view();animation-range:entry 20% cover 50%}
}
.pg-step-num{position:relative;z-index:1;display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:50%;background:var(--acc);color:#0F1A15;font-family:'IBM Plex Mono',monospace;font-size:14px}
.pg-light .pg-step-num,.pg-mint .pg-step-num{color:#ffffff}

/* Comparison */
.pg-cmp-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--line);transition:background 200ms ease}
.pg-cmp-row:hover{background:var(--layer)}
.pg-cmp-cell{padding:18px 16px;display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45}
.pg-cmp-win{color:var(--accent-text)}

/* Chips and filters */
.pg-chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border-radius:18px;border:1px solid var(--line);background:var(--layer);color:inherit;font:inherit;font-size:13px;cursor:pointer;transition:background 200ms,border-color 200ms,color 200ms}
.pg-chip:hover{border-color:var(--acc)}
.pg-chip[aria-pressed="true"]{background:var(--acc);border-color:var(--acc);color:#0F1A15}
.pg-light .pg-chip[aria-pressed="true"]{color:#ffffff}
.pg-chip:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.pg-tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:12px;background:var(--tint);color:var(--accent-text);font-size:12px}
.pg-deep .pg-tag,.pg-dark .pg-tag{color:#E8FCF1}

/* Cards */
.pg-card{position:relative;display:flex;flex-direction:column;background:var(--layer);color:inherit;text-decoration:none;transition:transform 240ms cubic-bezier(0.2,0,0.38,0.9),box-shadow 240ms;animation:pg-rise 500ms cubic-bezier(0.4,0.14,0.3,1) both}
.pg-card:hover{transform:translateY(-4px);box-shadow:inset 0 3px 0 var(--acc), -8px 8px 0 var(--tint)}
.pg-card-art{height:140px;background:var(--tint);position:relative;overflow:hidden}
.pg-card:focus-visible{outline:2px solid var(--acc);outline-offset:2px}

/* People */
.pg-avatar{display:inline-flex;width:72px;height:72px;border-radius:50%;align-items:center;justify-content:center;background:var(--acc);color:#0F1A15;font-size:22px;font-weight:600;transition:transform 300ms cubic-bezier(0.4,0.14,0.3,1)}
.pg-tile:hover .pg-avatar{transform:scale(1.08) rotate(-4deg)}

/* Market */
.pg-conn{display:flex;align-items:center;gap:12px;padding:18px 16px;background:var(--layer);transition:background 200ms,box-shadow 200ms,transform 200ms;animation:pg-rise 400ms cubic-bezier(0.4,0.14,0.3,1) both}
.pg-conn:hover{background:var(--layer-hover);box-shadow:inset 3px 0 0 var(--acc)}

/* Responsive */
@media (max-width:1055px){.pg-hero-grid{grid-template-columns:minmax(0,1fr)}.pg-hero{min-height:0}.pg-split{grid-template-columns:minmax(0,1fr) !important}.pg-split-art{order:-1}}
@media (max-width:671px){.pg-wrap{padding-left:16px;padding-right:16px}.pg-cmp-row{grid-template-columns:minmax(0,1fr)}.pg-cmp-head{display:none !important}.pg-cmp-cell{padding:8px 16px}}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none !important;transition:none !important}.art .draw{stroke-dashoffset:0}}

/* Hero buttons: equal heights */
.pg-hero-btns{align-items:stretch}
.pg-hero-btns .cds--btn{height:64px !important;min-height:64px !important;max-height:64px;padding-top:0 !important;padding-bottom:0 !important;align-items:center !important;box-sizing:border-box;min-width:240px}
/* Integration marketplace (IBM-style tiles) */
.mk-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 64px;align-items:start}
.mk-title{margin:0;font-size:clamp(34px,3.4vw,48px);font-weight:300;line-height:1.15;letter-spacing:0}
.mk-inline{color:var(--accent-text);text-decoration:none}
.mk-inline:hover{text-decoration:underline}
.mk-more{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-size:14px;color:var(--accent-text);text-decoration:none}
.mk-more:hover{text-decoration:underline}
.mk-more svg{transition:transform 240ms cubic-bezier(.2,0,.38,.9)}
.mk-more:hover svg{transform:translateX(4px)}
.mk-bar{display:flex;flex-wrap:wrap;gap:1px;align-items:stretch}
.mk-dd{width:260px}
.mk-search{flex:1;min-width:240px}
.mk-reset .cds--btn{height:48px !important;min-height:48px !important;padding-top:0 !important;padding-bottom:0 !important;align-items:center !important}
.mk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.mk-tile{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-height:196px;padding:16px;box-sizing:border-box;background:var(--layer);border:1px solid var(--line);color:inherit;text-decoration:none;overflow:hidden;outline:none;transition:background 240ms cubic-bezier(.2,0,.38,.9),border-color 240ms cubic-bezier(.2,0,.38,.9);animation:pg-rise 400ms cubic-bezier(0,0,.38,.9) both}
.mk-tile:hover,.mk-tile:focus-visible{background:#e8e8e8;border-color:var(--acc)}
.pg-dark .mk-tile:hover,.pg-dark .mk-tile:focus-visible{background:#333333}
.mk-tile:focus-visible{box-shadow:inset 0 0 0 1px var(--acc)}
.mk-txt{position:relative;display:grid}
.mk-a,.mk-b{grid-area:1/1;transition:opacity 240ms cubic-bezier(.2,0,.38,.9),transform 240ms cubic-bezier(.2,0,.38,.9)}
.mk-a{display:flex;flex-direction:column;gap:4px}
.mk-name{font-size:16px;line-height:1.35}
.mk-cat{font-size:13px;color:var(--muted)}
.mk-b{font-size:14px;line-height:1.45;opacity:0;transform:translateY(6px)}
.mk-tile:hover .mk-a,.mk-tile:focus-visible .mk-a{opacity:0;transform:translateY(-6px)}
.mk-tile:hover .mk-b,.mk-tile:focus-visible .mk-b{opacity:1;transform:none}
.mk-foot{display:flex;align-items:flex-end;justify-content:space-between}
.mk-ico{display:inline-flex;color:var(--ink)}
.mk-arrow{display:inline-flex;color:var(--accent-text);transition:transform 240ms cubic-bezier(.2,0,.38,.9)}
.mk-tile:hover .mk-arrow{transform:translateX(4px)}
.mk-line{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--acc);transform:scaleX(0);transform-origin:left;transition:transform 400ms cubic-bezier(.2,0,.38,.9)}
.mk-tile:hover .mk-line,.mk-tile:focus-visible .mk-line{transform:scaleX(1)}
@media (max-width:1055px){.mk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mk-head{grid-template-columns:minmax(0,1fr)}}
@media (max-width:671px){.mk-grid{grid-template-columns:minmax(0,1fr)}.mk-dd,.mk-search,.mk-reset{width:100%;flex:none}.pg-hero-btns .cds--btn{min-width:0;width:100%}}

/* Hero dots: always visible, drift and light up under the cursor */
.pg-hero-dots{position:absolute;inset:-24px;pointer-events:none;transform:translate3d(var(--px,0px),var(--py,0px),0);transition:transform 600ms cubic-bezier(.2,0,.38,.9)}
.pg-hero-dots .pg-hero-bg{inset:0}
.pg-hero .cy-dots{background-size:32px 32px;background-position:0 0;-webkit-mask-image:radial-gradient(circle 260px at calc(var(--mx,70%) + 24px) calc(var(--my,50%) + 24px), #000 0%, rgba(0,0,0,.4) 45%, transparent 100%);mask-image:radial-gradient(circle 260px at calc(var(--mx,70%) + 24px) calc(var(--my,50%) + 24px), #000 0%, rgba(0,0,0,.4) 45%, transparent 100%)}
/* Animated background shapes */
.pg-has-shapes{position:relative;overflow:hidden}
.pg-shapes{position:absolute;inset:0;pointer-events:none;opacity:.75;-webkit-mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.25) 45%,rgba(0,0,0,.25) 55%,#000 100%);mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.25) 45%,rgba(0,0,0,.25) 55%,#000 100%)}
.pg-light .pg-shapes,.pg-mint .pg-shapes{filter:invert(1);opacity:.35}
.pg-shapes > *{animation:pg-float 14s ease-in-out infinite;will-change:transform}
.pg-shapes > *:nth-child(3n+1){animation-duration:17s;animation-delay:-4s}
.pg-shapes > *:nth-child(3n+2){animation-duration:12s;animation-delay:-8s;animation-direction:reverse}
.pg-shapes > *:nth-child(4n){animation-name:pg-float-x}
@keyframes pg-float{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-10px,0)}}
@keyframes pg-float-x{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(8px,4px,0)}}
.mk-feat{min-height:220px;cursor:default;animation:none}
@media (max-width:1055px){.pg-shapes{display:none}}
/* Form labels readable on light sections */
.pg-light .cds--label,.pg-mint .cds--label,.pg-light .cds--form__helper-text,.pg-mint .cds--form__helper-text{color:#393939 !important}

/* Vendor logos */
.mk-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.mk-top .mk-txt{flex:1;min-width:0}
.mk-logo{flex:none;width:48px;height:32px;display:flex;align-items:flex-start;justify-content:flex-end}
.mk-logo img{max-width:48px;max-height:28px;width:auto;height:auto;display:block;object-fit:contain}

/* Shapes on any section */
.pg-has-shapes .pg-wrap,.pg-has-shapes .hx-grid{position:relative}
/* Hover tiles (text left, 6 tiles right) */
.hx-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);min-height:var(--cy-screen);border-bottom:1px solid var(--line)}
.hx-left{display:flex;flex-direction:column;justify-content:flex-end;gap:20px;padding:64px 48px}
.hx-title{margin:0;font-size:clamp(28px,2.6vw,38px);line-height:1.25;font-weight:300}
.hx-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));border-left:1px solid var(--line)}
.hx-tile{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:16px;padding:20px;min-height:280px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);outline:none;cursor:default;overflow:hidden;transition:background 240ms cubic-bezier(.2,0,.38,.9)}
.hx-tile:nth-child(3n){border-right:0}
.hx-tile:nth-child(n+4){border-bottom:0}
.hx-tile:hover,.hx-tile:focus-visible{background:#C6F5DB}
.pg-dark .hx-tile:hover,.pg-dark .hx-tile:focus-visible{background:#0E3B26}
.hx-tile:focus-visible{box-shadow:inset 0 0 0 2px var(--acc)}
.hx-name{position:relative;z-index:1;font-size:18px;line-height:1.3}
.hx-art{position:absolute;left:20px;right:20px;top:64px;bottom:92px;display:flex;align-items:center;justify-content:center;pointer-events:none}
.hx-art svg{width:100%;height:100%;max-height:170px;overflow:visible}
.hx-sp{opacity:0;transform:translate(var(--dx,0px),var(--dy,16px));transition:opacity 280ms cubic-bezier(.2,0,.38,.9),transform 560ms cubic-bezier(.4,.14,.3,1)}
.hx-tile:hover .hx-sp,.hx-tile:focus-visible .hx-sp{opacity:1;transform:none}
.hx-draw{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 900ms cubic-bezier(.4,.14,.3,1) 200ms}
.hx-tile:hover .hx-draw,.hx-tile:focus-visible .hx-draw{stroke-dashoffset:0}
.hx-foot{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.hx-desc{font-size:13px;line-height:1.45;color:var(--accent-text);max-width:240px;opacity:0;transform:translateY(8px);transition:opacity 300ms ease 120ms,transform 400ms cubic-bezier(.4,.14,.3,1) 120ms}
.hx-tile:hover .hx-desc,.hx-tile:focus-visible .hx-desc{opacity:1;transform:none}
.hx-arrow{flex:none;display:inline-flex;transition:transform 240ms cubic-bezier(.2,0,.38,.9)}
.hx-tile:hover .hx-arrow{transform:translateX(4px)}
@media (hover:none){.hx-sp{opacity:1;transform:none}.hx-draw{stroke-dashoffset:0}.hx-desc{opacity:1;transform:none}}
@media (max-width:1055px){.hx-grid{grid-template-columns:minmax(0,1fr)}.hx-left{padding:48px 24px}.hx-tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;border-left:0;border-top:1px solid var(--line)}.hx-tile:nth-child(3n){border-right:1px solid var(--line)}.hx-tile:nth-child(2n){border-right:0}.hx-tile:nth-child(n+4){border-bottom:1px solid var(--line)}}
@media (max-width:671px){.hx-tiles{grid-template-columns:minmax(0,1fr)}.hx-tile{border-right:0 !important}}
/* Cycle section */
.cyc-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:center;min-height:var(--cy-screen);padding-top:72px;padding-bottom:72px;box-sizing:border-box}
.cyc-scene{display:flex;justify-content:center;min-width:0}
.cyc-ring{position:relative;width:min(100%,560px);aspect-ratio:1}
.cyc-svg{position:absolute;inset:0;width:100%;height:100%}
.cyc-comet{transform-origin:260px 260px;transition:transform 900ms cubic-bezier(.4,.14,.3,1)}
.cyc-orbit{transform-origin:260px 260px;animation:pg-spin 14s linear infinite}
.cyc-st{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:8px;width:120px}
.cyc-node{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--layer);border:1px solid var(--line);color:var(--muted);transition:background 400ms ease,color 400ms ease,border-color 400ms ease,transform 400ms cubic-bezier(.4,.14,.3,1),box-shadow 400ms ease}
.cyc-st.is-past .cyc-node{border-color:var(--acc);color:var(--accent-text)}
.cyc-st.is-on .cyc-node{background:var(--acc);border-color:var(--acc);color:#0F1A15;transform:scale(1.14);box-shadow:0 0 0 8px rgba(123,240,175,.12)}
.pg-light .cyc-st.is-on .cyc-node{color:#ffffff}
.cyc-label{font-size:14px;color:var(--muted);transition:color 300ms ease}
.cyc-st.is-on .cyc-label{color:inherit;font-weight:600}
.cyc-center{position:absolute;left:50%;top:50%;width:42%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}
.cyc-c-title{font-size:24px;font-weight:300;color:var(--accent-text)}
.cyc-c-text{font-size:13px;line-height:1.45;color:var(--muted)}
@keyframes cyc-in-a{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes cyc-in-b{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.cyc-a > *{animation:cyc-in-a 500ms cubic-bezier(0,0,.38,.9) both}
.cyc-b > *{animation:cyc-in-b 500ms cubic-bezier(0,0,.38,.9) both}
.cyc-right{display:flex;flex-direction:column;gap:24px;min-width:0}
.cyc-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.cyc-tab{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:18px 16px;background:var(--layer);box-shadow:inset 0 3px 0 transparent;transition:background 240ms ease,box-shadow 240ms ease}
.cyc-tab:hover{background:var(--layer-hover)}
.cyc-tab[aria-selected="true"]{box-shadow:inset 0 3px 0 var(--acc);background:var(--layer-hover)}
.cyc-tab:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}
.cyc-tab-ico{display:inline-flex;color:var(--accent-text)}
.cyc-tab-v{font-size:34px;font-weight:300;line-height:1;color:var(--accent-text);white-space:nowrap;font-variant-numeric:tabular-nums}
.cyc-tab-l{font-size:13px;line-height:1.35;color:var(--muted)}
.cyc-detail{padding:16px;background:var(--layer);border:1px solid var(--line);border-top:0;min-height:56px;box-sizing:border-box;font-size:14px;line-height:1.5}
@media (max-width:1055px){.cyc-grid{grid-template-columns:minmax(0,1fr);gap:40px}.cyc-st{width:96px}.cyc-node{width:52px;height:52px}.cyc-label{font-size:12px}.cyc-c-title{font-size:18px}.cyc-c-text{display:none}}
@media (max-width:671px){.cyc-tabs{grid-template-columns:minmax(0,1fr)}}

.hx-left{justify-content:space-between !important}
.hx-label{margin:0;font-size:14px;font-weight:600;line-height:1.3}

/* Hover tiles: 4-up variant */
.hx-tiles.hx-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.hx-tiles.hx-4 .hx-tile:nth-child(3n){border-right:1px solid var(--line)}
.hx-tiles.hx-4 .hx-tile:nth-child(2n){border-right:0}
.hx-tiles.hx-4 .hx-tile:nth-child(n+3){border-bottom:0}
.hx-tiles.hx-4 .hx-tile:nth-child(-n+2){border-bottom:1px solid var(--line)}
/* Snake flow */
.sn-box{position:relative;width:min(100%,580px);aspect-ratio:520/540}
.sn-prog{transition:stroke-dashoffset 1100ms cubic-bezier(.4,.14,.3,1)}
.sn-st{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:14px}
.sn-st .cyc-node{width:56px;height:56px;flex:none}
.sn-txt{position:absolute;left:50%;top:calc(100% + 10px);transform:translateX(-50%);width:200px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.sn-up .sn-txt{top:auto;bottom:calc(100% + 10px)}
.sn-t{font-size:15px;color:var(--muted);transition:color 300ms ease}
.sn-d{font-size:12px;line-height:1.4;color:var(--muted);opacity:0;transition:opacity 300ms ease}
.sn-st.is-past .cyc-node{border-color:var(--acc);color:var(--accent-text)}
.sn-st.is-on .cyc-node{background:var(--acc);border-color:var(--acc);color:#0F1A15;transform:scale(1.14);box-shadow:0 0 0 8px rgba(123,240,175,.12)}
.sn-st.is-on .sn-t{color:inherit;font-weight:600}
.sn-st.is-on .sn-d{opacity:1}
@media (max-width:671px){.sn-txt{width:140px}.sn-d{display:none}}
/* Calculator */
.calc-grid{padding-top:96px;padding-bottom:96px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;min-height:var(--cy-screen);box-sizing:border-box}
.calc-inputs{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:8px}
.calc-in{display:flex;flex-direction:column;gap:6px;padding:16px 20px 14px;background:var(--layer)}
.calc-in-h{display:flex;justify-content:space-between;align-items:center;font-size:15px}
.calc-in-v{font-family:'IBM Plex Mono',monospace;font-size:14px;color:var(--accent-text)}
.calc-in-note{font-size:12px;color:var(--muted)}
.calc-in .cds--slider-container{width:100%}
.calc-in .cds--slider{max-width:none;min-width:0;flex:1}
.calc-in .cds--form-item{width:100%}
.calc-out{display:flex;flex-direction:column;gap:20px;padding:32px;background:var(--layer);box-shadow:-14px 14px 0 var(--tint),inset 0 3px 0 var(--acc);min-width:0}
.calc-big{font-size:clamp(52px,5vw,80px);font-weight:300;line-height:1;color:var(--accent-text);font-variant-numeric:tabular-nums}
.calc-delta{font-size:15px;color:var(--muted)}
.calc-delta.is-down{color:var(--accent-text)}
.calc-delta.is-up{color:#ff8389}
.calc-fair{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.calc-fair > div{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--layer)}
.calc-fair-l{font-size:11px;color:var(--muted)}
.calc-fair-v{font-size:16px;font-variant-numeric:tabular-nums}
.calc-bar{height:8px;background:var(--acc);transition:width 500ms cubic-bezier(.4,.14,.3,1)}
@media (max-width:1055px){.calc-grid{grid-template-columns:minmax(0,1fr)}.calc-fair{grid-template-columns:minmax(0,1fr)}}

.cyc-scene:has(.sn-box){flex-direction:column;align-items:center;gap:20px}
.sn-txt{width:auto;white-space:nowrap}
.sn-cap{width:min(100%,480px);display:flex;flex-direction:column;gap:6px;padding:16px 20px;background:var(--layer);border:1px solid var(--line);box-shadow:inset 3px 0 0 var(--acc)}
.sn-cap-t{font-size:16px;font-weight:600}
.sn-cap-d{font-size:14px;line-height:1.5;color:var(--muted)}

/* Evidence flow */
.ev-wrap{display:flex;flex-direction:column;gap:48px;padding-top:96px;padding-bottom:96px;min-height:var(--cy-screen);box-sizing:border-box;justify-content:center}
.ev-stage{display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr) 120px minmax(0,1fr);align-items:start}
.ev-col{display:flex;flex-direction:column;gap:12px;position:relative}
.ev-colh{position:absolute;top:-28px;left:0;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:1.4px;color:var(--muted)}
.ev-item{height:60px;display:flex;align-items:center;gap:12px;padding:0 14px;background:var(--layer);border:1px solid var(--line);box-sizing:border-box;transition:border-color 400ms ease,box-shadow 400ms ease,background 400ms ease}
.ev-item.is-on{border-color:var(--acc);box-shadow:inset 3px 0 0 var(--acc)}
.ev-logo{flex:none;width:44px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff;border-radius:2px;color:#161616;padding:2px 4px;box-sizing:border-box}
.ev-logo img{max-width:100%;max-height:100%;display:block}
.ev-seal{width:36px;height:36px;border-radius:50%;padding:0;background:transparent}
.ev-name{font-size:14px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ev-kind,.ev-pct{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--muted)}
.ev-fw.is-on .ev-pct{color:var(--accent-text)}
.ev-wires{width:120px;height:420px;display:block;overflow:visible}
.ev-engine{height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}
.ev-ring{position:relative;width:min(100%,280px);aspect-ratio:1}
.ev-ring-svg{position:absolute;inset:0;width:100%;height:100%}
.ev-spin{transform-origin:100px 100px;animation:pg-spin 3.2s linear infinite}
.ev-core{position:absolute;inset:18%;border-radius:50%;background:var(--layer);border:1px solid var(--acc);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;box-shadow:0 0 40px rgba(123,240,175,.12)}
.ev-core-t{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:1.4px;color:var(--accent-text)}
.ev-core-v{font-size:30px;font-weight:300;line-height:1;font-variant-numeric:tabular-nums}
.ev-core-l{font-size:11px;color:var(--muted)}
.ev-test{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--layer);border:1px solid var(--line);font-family:'IBM Plex Mono',monospace;font-size:11px;white-space:nowrap}
.ev-dot{width:6px;height:6px;border-radius:50%;background:var(--acc);animation:pg-pulse 1.2s ease-in-out infinite}
.ev-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.ev-stat{display:flex;flex-direction:column;gap:8px;padding:20px;background:var(--layer)}
@media (max-width:1055px){.ev-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 16px}.ev-wires{display:none}.ev-engine{grid-column:1 / -1;order:-1;height:auto}.ev-stats{grid-template-columns:minmax(0,1fr)}}
@media (max-width:671px){.ev-stage{grid-template-columns:minmax(0,1fr)}}

.ev-stage{grid-template-columns:minmax(0,1fr) 120px 280px 120px minmax(0,1fr)}
.ev-engine{position:relative}
.ev-ring{width:280px}
.ev-test{position:absolute;left:50%;top:calc(50% + 156px);transform:translateX(-50%)}
@media (max-width:1055px){.ev-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ev-test{position:static;transform:none}.ev-ring{width:min(100%,280px)}}

/* Journey */
.jr-wrap{display:flex;flex-direction:column;gap:56px;padding-top:96px;padding-bottom:96px;min-height:var(--cy-screen);box-sizing:border-box;justify-content:center}
.jr-stage{position:relative;height:300px}
.jr-track{position:absolute;left:4%;right:4%;top:200px;height:2px;background:var(--line)}
.jr-fill{position:absolute;left:0;top:0;bottom:0;background:var(--acc);transition:width 900ms cubic-bezier(.4,.14,.3,1)}
.jr-st{position:absolute;top:200px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center}
.jr-st .cyc-node{width:48px;height:48px}
.jr-label{position:absolute;top:calc(100% + 12px);white-space:nowrap;font-size:14px;color:var(--muted);transition:color 300ms ease}
.jr-st.is-past .cyc-node{border-color:var(--acc);color:var(--accent-text)}
.jr-st.is-on .cyc-node{background:var(--acc);border-color:var(--acc);color:#0F1A15;transform:scale(1.14);box-shadow:0 0 0 8px rgba(123,240,175,.12)}
.jr-st.is-on .jr-label{color:inherit;font-weight:600}
.jr-token{position:absolute;top:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;transition:left 900ms cubic-bezier(.4,.14,.3,1);z-index:2}
.jr-card{display:flex;flex-direction:column;gap:10px;width:260px;padding:14px;background:var(--layer);border:1px solid var(--acc);box-shadow:0 18px 40px rgba(0,0,0,.4)}
.jr-card-h{display:flex;align-items:center;gap:10px}
.jr-v{display:block;font-size:15px;font-weight:600}
.jr-vt{display:block;font-size:12px;color:var(--muted)}
.jr-status{display:flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--accent-text)}
.jr-status.is-alert{color:#ff8389}
.jr-status.is-alert .ev-dot{background:#fa4d56}
.jr-pin{width:2px;height:58px;background:linear-gradient(var(--acc),transparent)}
.jr-detail{display:flex;flex-direction:column;gap:8px;padding:20px 24px;background:var(--layer);border:1px solid var(--line);box-shadow:inset 3px 0 0 var(--acc);max-width:760px;margin:0 auto;width:100%;box-sizing:border-box}
.jr-d-step{font-size:20px;font-weight:300;color:var(--accent-text)}
.jr-d-text{font-size:15px;line-height:1.55;color:var(--muted)}
@media (max-width:1055px){.jr-label{display:none}.jr-st.is-on .jr-label{display:block}.jr-card{width:200px}}
@media (max-width:671px){.jr-card{width:160px;padding:10px}.jr-vt{display:none}}
.jr-token{align-items:flex-start;transition:left 900ms cubic-bezier(.4,.14,.3,1),transform 900ms cubic-bezier(.4,.14,.3,1)}
.jr-pin{transition:margin-left 900ms cubic-bezier(.4,.14,.3,1)}

/* Landing-style hero */
@keyframes lh-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes lh-pop{from{opacity:0;transform:translate(12px,-12px)}to{opacity:1;transform:none}}
@keyframes lh-check{0%,15%{opacity:0;transform:scale(.5)}25%,85%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
@keyframes lh-knob-rev{0%,40%{transform:translateX(36px)}50%,90%{transform:translateX(0)}100%{transform:translateX(36px)}}
@keyframes lh-track-rev{0%,40%{background:#12894E}50%,90%{background:#A6EFC6}100%{background:#12894E}}
@keyframes lh-blink{0%,100%{opacity:1}50%{opacity:.2}}
.pg-mint .lh-grid{color:#0E3B26}
.lh-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,25%);min-height:var(--cy-screen);border-bottom:1.5px solid #0E3B26}
.lh-main{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);min-width:0;overflow:hidden}
.lh-text{display:flex;flex-direction:column;justify-content:center;padding:88px 32px 64px 48px;min-width:0}
.lh-h1{margin:0;font-family:'IBM Plex Serif',Georgia,serif;font-weight:300;font-size:clamp(52px,5.6vw,96px);line-height:1.04;letter-spacing:-1px;color:#0E3B26}
.lh-rise{animation:lh-rise 700ms cubic-bezier(.4,.14,.3,1) both}
.lh-art{position:relative;min-height:0;overflow:hidden}
.lh-pop{animation:lh-pop 700ms cubic-bezier(.4,.14,.3,1) both}
.lh-asset{transition:transform 240ms cubic-bezier(.2,0,.38,.9),box-shadow 240ms cubic-bezier(.2,0,.38,.9)}
.lh-asset:hover{transform:translate(4px,-4px);box-shadow:-14px 14px 0 #A6EFC6 !important}
.lh-spin{animation:pg-spin 6s linear infinite}
.lh-ring{animation:pg-spin 14s linear infinite;transform-origin:50% 50%}
.lh-pulse{animation:pg-pulse 1.6s ease-in-out infinite}
.lh-blink{animation:lh-blink 1.2s ease-in-out infinite}
.lh-bar-pulse{animation:pg-pulse 2.4s ease-in-out infinite}
.lh-check{animation:lh-check 4.5s cubic-bezier(.4,.14,.3,1) infinite both}
.lh-knob-rev{animation:lh-knob-rev 5s cubic-bezier(.4,.14,.3,1) infinite}
.lh-track-rev{animation:lh-track-rev 5s cubic-bezier(.4,.14,.3,1) infinite}
.lh-cta-col{display:grid;grid-template-rows:1fr 1fr;border-left:1.5px solid #0E3B26}
.lh-cta{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:32px;min-height:240px;color:#0E3B26;text-decoration:none}
.lh-cta-2{border-top:1.5px solid #0E3B26}
.lh-cta::before{content:'';position:absolute;inset:0;background:#A6EFC6;transform:scaleY(0);transform-origin:bottom;transition:transform 400ms cubic-bezier(.4,.14,.3,1)}
.lh-cta:hover::before,.lh-cta:focus-visible::before{transform:scaleY(1)}
.lh-cta:focus-visible{outline:2px solid #0E3B26;outline-offset:-2px}
.lh-cta-art{position:absolute;left:32px;right:32px;top:128px;bottom:76px}
.lh-sp{opacity:0;transform:translate(var(--dx,0px),var(--dy,24px));transition:opacity 280ms cubic-bezier(.2,0,.38,.9),transform 560ms cubic-bezier(.4,.14,.3,1)}
.lh-cta:hover .lh-sp,.lh-cta:focus-visible .lh-sp{opacity:1;transform:none}
.lh-cta-arrow{display:inline-flex;transition:transform 400ms cubic-bezier(.4,.14,.3,1)}
.lh-cta:hover .lh-cta-arrow{transform:translateX(12px)}
@media (max-width:1055px){.lh-grid{grid-template-columns:minmax(0,1fr)}.lh-main{grid-template-columns:minmax(0,1fr)}.lh-art{display:none}.lh-cta-col{grid-template-rows:none;grid-template-columns:1fr 1fr;border-left:0;border-top:1.5px solid #0E3B26}.lh-cta-2{border-top:0;border-left:1.5px solid #0E3B26}.lh-text{padding:56px 24px}}
@media (max-width:671px){.lh-cta-col{grid-template-columns:minmax(0,1fr)}.lh-cta-2{border-left:0;border-top:1.5px solid #0E3B26}}
/* Three equal tiles */
.t3-wrap{display:flex;flex-direction:column;gap:48px;padding-top:96px;padding-bottom:96px;min-height:var(--cy-screen);box-sizing:border-box;justify-content:center}
.t3-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line)}
.t3-tile{min-height:460px;border-bottom:0 !important}
.t3-tile:nth-child(3n){border-right:0}
.t3-name{font-size:clamp(26px,2.4vw,36px);font-weight:300;line-height:1.15}
.t3-short{font-size:15px;line-height:1.5;color:var(--muted);max-width:340px}
.t3-art{top:150px;bottom:150px}
.t3-art svg{max-height:200px}
.t3-more{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;margin-top:auto;opacity:0;transform:translateY(10px);transition:opacity 300ms ease 200ms,transform 400ms cubic-bezier(.4,.14,.3,1) 200ms}
.t3-pt{display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height:1.4;color:#0E3B26}
.t3-pt svg{flex:none;margin-top:2px;color:#12894E}
.t3-tile:hover .t3-more,.t3-tile:focus-visible .t3-more{opacity:1;transform:none}
.t3-tile .hx-foot{margin-top:0}
@media (hover:none){.t3-more{opacity:1;transform:none}}
@media (max-width:1055px){.t3-grid{grid-template-columns:minmax(0,1fr)}.t3-tile{border-right:0 !important;border-bottom:1px solid var(--line) !important}.t3-art{display:none}.t3-tile{min-height:0}}

/* 4-up variant of the equal tiles */
.t3-grid.t3-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.t3-grid.t3-4 .t3-tile:nth-child(3n){border-right:1px solid var(--line)}
.t3-grid.t3-4 .t3-tile:nth-child(4n){border-right:0}
.t3-4 .t3-name{font-size:clamp(22px,2vw,30px)}
@media (max-width:1055px){.t3-grid.t3-4{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.t3-grid.t3-4 .t3-tile:nth-child(2n){border-right:0 !important}}
@media (max-width:671px){.t3-grid.t3-4{grid-template-columns:minmax(0,1fr)}}
/* Versus */
.vs-wrap{display:flex;flex-direction:column;gap:48px;padding-top:96px;padding-bottom:96px;min-height:var(--cy-screen);box-sizing:border-box;justify-content:center}
.vs-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.vs-panel{display:flex;flex-direction:column;background:var(--layer);border:1px solid var(--line)}
.vs-good{border-color:var(--acc);box-shadow:inset 0 3px 0 var(--acc)}
.vs-h{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line)}
.vs-ico{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;background:var(--tint);color:var(--accent-text)}
.vs-bad .vs-ico{background:#ffd7d9;color:#a2191f}
.vs-name{font-size:18px;flex:1}
.vs-meter{font-family:'IBM Plex Mono',monospace;font-size:12px;padding:4px 8px;background:var(--tint);color:var(--accent-text);font-variant-numeric:tabular-nums}
.vs-meter-bad{background:#ffd7d9;color:#a2191f}
.vs-diag{padding:12px 20px;border-bottom:1px solid var(--line);color:var(--ink)}
.vs-svg{display:block;width:100%;height:auto;max-height:200px}
.vs-rows{display:flex;flex-direction:column}
.vs-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:12px;padding:14px 20px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.45;transition:background 300ms ease,box-shadow 300ms ease;cursor:default}
.vs-row:last-child{border-bottom:0}
.vs-l{color:var(--muted)}
.vs-v{display:flex;gap:8px;align-items:flex-start}
.vs-x{display:inline-flex;color:#da1e28;flex:none;margin-top:2px}
.vs-ok{display:inline-flex;color:var(--acc);flex:none;margin-top:2px}
.vs-bad .vs-row.is-on{background:#fff1f1;box-shadow:inset 3px 0 0 #da1e28}
.vs-good .vs-row.is-on{background:var(--layer-hover);box-shadow:inset 3px 0 0 var(--acc)}
.vs-row.is-on .vs-l{color:inherit;font-weight:600}
@media (max-width:1055px){.vs-grid{grid-template-columns:minmax(0,1fr)}}

.pg-dark .vs-bad .vs-row.is-on,.pg-dark2 .vs-bad .vs-row.is-on{background:#2d1215}
.pg-dark .vs-bad .vs-ico,.pg-dark2 .vs-bad .vs-ico{background:#520408;color:#ffb3b8}
.pg-dark .vs-meter-bad,.pg-dark2 .vs-meter-bad{background:#520408;color:#ffb3b8}
/* Theme alternation support */
.pg-light .cyc-st.is-on .cyc-node,.pg-light .sn-st.is-on .cyc-node,.pg-light .jr-st.is-on .cyc-node{color:#ffffff}
.pg-light .jr-card{box-shadow:0 18px 40px rgba(0,0,0,.12)}
.pg-light .calc-delta.is-up{color:#da1e28}
.pg-light .ev-core{box-shadow:0 0 40px rgba(18,137,78,.12)}
.pg-dark .hx-tile:hover,.pg-dark .hx-tile:focus-visible,.pg-dark2 .hx-tile:hover,.pg-dark2 .hx-tile:focus-visible{background:#C6F5DB;color:#161616}
.pg-dark .hx-tile:hover .hx-desc,.pg-dark .hx-tile:focus-visible .hx-desc,.pg-dark2 .hx-tile:hover .hx-desc{color:#0E3B26}
.pg-dark .hx-tile:hover .t3-short,.pg-dark2 .hx-tile:hover .t3-short{color:#24513A}

/* Scene section */
.sc-art{align-self:center}
.sc-art > *{width:100%}
.sc-steps{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.sc-step{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);transition:background 300ms ease}
.sc-ico{flex:none;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--layer);border:1px solid var(--line);color:var(--muted);transition:background 300ms ease,color 300ms ease,border-color 300ms ease}
.sc-step.is-on .sc-ico{background:var(--acc);border-color:var(--acc);color:#0F1A15}
.pg-light .sc-step.is-on .sc-ico{color:#ffffff}
.sc-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.sc-t{font-size:15px;line-height:28px;color:var(--muted);transition:color 300ms ease}
.sc-step.is-on .sc-t{color:inherit;font-weight:600}
.sc-d{font-size:13px;line-height:1.45;color:var(--muted);max-height:0;overflow:hidden;opacity:0;transition:max-height 400ms ease,opacity 300ms ease}
.sc-step.is-on .sc-d{max-height:60px;opacity:1}

/* Resource request modal */
.rq-doc{display:flex;gap:14px;align-items:flex-start;padding:16px;background:#0E3B26;border-left:3px solid #7BF0AF}
.rq-ico{flex:none;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;background:#12894E;color:#ffffff}
.rq-kind{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:1px;color:#7BF0AF;text-transform:uppercase}
.rq-title{font-size:16px;font-weight:600;color:#f4f4f4;line-height:1.3}
.rq-text{font-size:13px;color:#c6c6c6;line-height:1.45}

/* CCM engine core always dark so the logo reads */
.ev-core{background:#161616 !important;border-color:#7BF0AF !important;color:#f4f4f4}
.ev-core .ev-core-t{color:#7BF0AF}
.ev-core .ev-core-v{color:#f4f4f4}
.ev-core .ev-core-l{color:#c6c6c6}

/* Directory monogram */
.mk-mono{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--acc,#12894E);color:#fff;font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.04em}
/* Ticker */
.tk-wrap{position:relative;z-index:1;padding:96px 0;display:flex;flex-direction:column;gap:48px}
.tk-rows{display:flex;flex-direction:column;gap:16px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.tk-row{overflow:hidden}
.tk-track{display:flex;gap:16px;width:max-content;animation:tk-move 48s linear infinite}
.tk-rev .tk-track{animation-direction:reverse;animation-duration:56s}
.tk-rows:hover .tk-track{animation-play-state:paused}
@keyframes tk-move{from{transform:translateX(0)}to{transform:translateX(-25%)}}
.tk-chip{display:inline-flex;align-items:center;gap:12px;padding:18px 24px;background:var(--layer);border:1px solid var(--line);font-size:16px;white-space:nowrap;transition:background 160ms,border-color 160ms,transform 160ms}
.tk-chip:hover{background:var(--layer-hover);border-color:var(--acc);transform:translateY(-3px)}
.tk-ico{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;background:var(--tint);color:var(--accent-text)}
.tk-new{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--accent-text);letter-spacing:.04em}
.tk-new:empty{display:none}
@media (prefers-reduced-motion:reduce){.tk-track{animation:none}}
.pg-dark .mk-mono,.pg-dark2 .mk-mono{color:#0F1A15}

/* Certifications */
.ct-wrap{position:relative;z-index:1;padding-top:96px;padding-bottom:96px;display:flex;flex-direction:column;gap:48px}
.ct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ct-tile{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:40px 32px;background:var(--layer);border:1px solid var(--line);transition:transform 240ms cubic-bezier(.2,0,.38,.9),box-shadow 240ms,background 240ms;animation:pg-rise 600ms cubic-bezier(.4,.14,.3,1) both;outline:none}
.ct-tile:hover,.ct-tile:focus-visible{transform:translateY(-6px);background:var(--layer-hover);box-shadow:inset 0 3px 0 var(--acc),-8px 8px 0 var(--tint)}
.ct-seal{position:relative;width:112px;height:112px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.ct-seal img{width:80px;height:80px;display:block;position:relative;z-index:1;transition:transform 400ms cubic-bezier(.4,.14,.3,1)}
.ct-tile:hover .ct-seal img{transform:scale(1.08)}
.ct-ring{position:absolute;inset:0;border-radius:50%;border:1.5px dashed var(--acc);animation:pg-spin 14s linear infinite}
.ct-tile:hover .ct-ring{animation-duration:4s}
.ct-name{font-size:28px;font-weight:300;line-height:1.2}
.ct-status{display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.04em;color:var(--accent-text)}
.ct-dot{width:8px;height:8px;border-radius:50%;background:var(--acc);animation:pg-pulse 2s ease-in-out infinite}
.ct-text{font-size:15px;line-height:1.55}
@media (max-width:1055px){.ct-grid{grid-template-columns:minmax(0,1fr)}}
