.tech-page{padding:1.75rem 0 4rem;background:radial-gradient(ellipse 70% 40% at 10% 0,rgba(0,123,255,.06),transparent 55%),linear-gradient(180deg,#f7f9fc,#fff 280px)}.tech-page__intro{max-width:none;margin:0 auto 1rem;text-align:center}.tech-page__hint{position:relative;display:inline-block;overflow:hidden;margin:.85rem 0 0;padding:.5rem 1.05rem;border-radius:999px;border:1px solid rgba(0,123,255,.35);background:linear-gradient(90deg,rgba(0,123,255,.16),rgba(0,123,255,.28));color:#084298;font-weight:700;line-height:1.5;box-shadow:0 0 0 0 rgba(0,123,255,.35);animation:tech-hint-glow 2.2s ease-in-out infinite}.tech-page__hint:after{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.75),transparent);animation:tech-hint-shine 2.8s ease-in-out infinite}@keyframes tech-hint-glow{0%,to{box-shadow:0 0 0 0 rgba(0,123,255,.28)}50%{box-shadow:0 0 0 8px rgba(0,123,255,0)}}@keyframes tech-hint-shine{0%,45%{left:-40%}to{left:140%}}@media (prefers-reduced-motion:reduce){.tech-page__hint,.tech-page__hint:after{animation:none}}.tech-caps{margin:0 0 3rem}.tech-caps h2{margin:0 0 .4rem;font-size:1.45rem;color:var(--hh-navy,#0e314c)}.tech-caps>p{margin:0 0 .75rem;color:var(--hh-muted,#5a6d7c)}.tech-caps__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem;align-items:stretch}.tech-caps__grid>li{display:flex;min-height:100%}.tech-cap{flex-direction:column;width:100%;height:100%;padding:0;border:1px solid var(--hh-line,rgba(14,49,76,.1));border-radius:16px;box-shadow:0 8px 24px rgba(14,49,76,.04);text-align:left;font:inherit;color:inherit}.tech-cap,.tech-cap__media{position:relative;display:flex;overflow:hidden;background:#fff}.tech-cap__media{align-items:center;justify-content:center;aspect-ratio:3/2;margin:.55rem .55rem 0;border:1px solid rgba(14,49,76,.22);border-radius:12px}.tech-cap__actions{display:flex;align-items:center;flex:0 0 auto;gap:.4rem}.tech-cap__switch{display:flex;gap:.3rem}.tech-cap__switch button{padding:.35rem .7rem;border:1px solid rgba(14,49,76,.16);border-radius:999px;background:#f4f8fc;color:var(--hh-navy,#0e314c);font:inherit;font-size:.78rem;font-weight:700;line-height:1.2;cursor:pointer}.tech-cap__switch button[aria-pressed=true]{border-color:#084298;background:#084298;color:#fff}.tech-cap__switch button:focus-visible{outline:2px solid var(--hh-accent,#007bff);outline-offset:2px}.tech-cap__media img,.tech-cap__media video{display:block;width:100%!important;height:100%!important;object-fit:cover;object-position:center}.tech-cap__heading{display:flex;align-items:center;justify-content:space-between;gap:.65rem;min-height:3.1rem;padding:.55rem .75rem}.tech-cap__label{margin:0;flex:1 1 auto;min-width:0;font-size:.95rem;font-weight:700;line-height:1.3;color:var(--hh-navy,#0e314c)}.tech-cap__toggle{flex:0 0 auto;padding:.35rem .8rem;border:1px solid rgba(8,66,152,.28);border-radius:999px;background:#fff;color:#084298;font:inherit;font-size:.78rem;font-weight:700;line-height:1.2;cursor:pointer}.tech-cap.is-open .tech-cap__toggle{background:#084298;border-color:#084298;color:#fff}.tech-cap__toggle:focus-visible{outline:2px solid var(--hh-accent,#007bff);outline-offset:2px}.tech-cap__body{display:flex;flex-direction:column;gap:.55rem;padding:0 .95rem 1rem;border-top:1px solid rgba(14,49,76,.08)}.tech-cap__body p{margin:0;font-size:.88rem;line-height:1.5;color:#334e68}.tech-cap__body p:first-child{padding-top:.85rem;font-weight:700;color:#084298}.tech-page__group+.tech-page__group{margin-top:3rem}.tech-page__group h2{margin:0 0 .4rem;font-size:1.45rem;color:var(--hh-navy,#0e314c)}.tech-page__group>p{margin:0 0 1.15rem;color:var(--hh-muted,#5a6d7c)}.tech-page__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1rem;gap:1rem;align-items:stretch}.tech-page__card,.tech-page__grid>li{display:flex;min-height:100%}.tech-page__card{scroll-margin-top:120px;flex-direction:column;width:100%;height:100%;padding:1.15rem 1rem 1.1rem;background:#fff;border:1px solid var(--hh-line,rgba(14,49,76,.1));border-radius:16px;box-shadow:0 8px 24px rgba(14,49,76,.04);text-align:left;font:inherit;color:inherit;cursor:pointer}.tech-page__card:focus-visible,.tech-page__card:hover{border-color:rgba(0,123,255,.35);box-shadow:0 14px 30px rgba(14,49,76,.08)}.tech-page__card:focus-visible{outline:2px solid #007bff;outline-offset:2px}.tech-page__logo{display:flex;align-items:center;justify-content:center;height:88px;margin-bottom:.85rem;padding:.65rem;border-radius:12px;background:#f7f9fc;overflow:hidden}.tech-page__logo--art{height:200px;background:transparent;padding:.35rem}.tech-modal__logo--art{height:180px}.tech-page__logo--large{height:118px;background:transparent;padding:.15rem .25rem}.tech-modal__logo--large{height:112px}.tech-page__logo img{width:auto!important;height:auto!important;max-width:100%;max-height:56px;object-fit:contain}.tech-modal__logo.tech-modal__logo--large img,.tech-page__logo.tech-page__logo--large img{max-height:108px;max-width:100%}.tech-page__logo.tech-page__logo--art img{max-height:180px;max-width:100%}.tech-modal__logo--stack,.tech-page__logo--stack{display:flex;align-items:center;justify-content:center;gap:.55rem;height:120px;background:transparent;padding:.35rem .5rem}.tech-page__logo.tech-page__logo--stack{height:200px;margin-bottom:.85rem}.tech-modal__logo.tech-modal__logo--stack img,.tech-page__logo.tech-page__logo--stack img{width:auto!important;height:64px!important;max-width:32%;max-height:64px;object-fit:contain}.tech-page__card h3{margin:0 0 .35rem;font-size:1rem;color:var(--hh-navy,#0e314c)}.tech-page__card p{margin:0;font-size:.9rem;line-height:1.5;color:var(--hh-muted,#5a6d7c)}.tech-modal{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:1.25rem}.tech-modal__backdrop{position:absolute;inset:0;border:0;background:rgba(14,49,76,.45);cursor:pointer}.tech-modal__dialog{position:relative;z-index:1;width:min(640px,100%);max-height:min(80vh,720px);overflow:auto;padding:1.5rem 1.5rem 1.35rem;background:#fff;border-radius:16px;box-shadow:0 24px 60px rgba(14,49,76,.2)}.tech-modal__close{position:absolute;top:.85rem;right:.85rem;border:0;background:transparent;color:#0e314c;font:inherit;font-weight:600;cursor:pointer}.tech-modal__logo{display:flex;align-items:center;height:72px;margin-bottom:.75rem}.tech-modal__logo img{width:auto!important;height:auto!important;max-width:180px;max-height:56px;object-fit:contain}.tech-modal__logo.tech-modal__logo--art img{max-height:160px;max-width:100%}.tech-modal__dialog h2{margin:0 2.5rem .6rem 0;color:#0e314c;font-size:1.45rem}.tech-modal__overview{margin:0 0 1rem;color:#5a6d7c;line-height:1.6}.tech-modal__dialog h3{margin:0 0 .5rem;color:#0e314c;font-size:1rem}.tech-modal__dialog ol{margin:0;padding-left:1.2rem;color:#334e68}.tech-modal__dialog li+li{margin-top:.45rem}.tech-modal__dialog li{line-height:1.5}@media (max-width:1100px){.tech-page__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.tech-page__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.tech-caps__grid{grid-template-columns:1fr}}@media (max-width:480px){.tech-page__grid{grid-template-columns:1fr}}