:root{--color-navy:#2f3868;--color-navy-mid:#3e4a8d;--color-navy-deep:#252d58;--color-teal:#3e4a8d;--color-teal-light:#525ca3;--color-teal-bright:#6b75b0;--color-teal-soft:#eef0f7;--color-teal-muted:#c5c9dc;--color-on-brand:#e0e2e8;--color-white:#fff;--color-off-white:#f3f4f8;--color-surface:#f8f9fc;--color-slate:#3f4660;--color-slate-light:#555d74;--products-nav-height:92px;--color-border:#d4d7e3;--color-border-strong:#b6bbd0;--color-success:#3e4a8d;--font-sans:"DM Sans", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-heading:"Satoshi", "DM Sans", Arial, sans-serif;--font-serif:var(--font-heading);--font-accent:"Inconsolata", ui-monospace, monospace;--radius-sm:6px;--radius:12px;--radius-lg:16px;--shadow-xs:0 1px 2px #2f38680d;--shadow:0 4px 20px #2f386812;--shadow-md:0 8px 28px #2f38681a;--shadow-hover:0 12px 36px #2f386821;--max-width:1140px;--header-height:76px;--space-section:clamp(3.5rem, 6vw, 5.5rem);--ease:cubic-bezier(.22, 1, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.18s;--dur-base:.3s;--dur-slow:.6s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 12px)}.skip-link{z-index:200;background:var(--color-navy);color:var(--color-white);border-radius:var(--radius-sm);transition:transform .2s var(--ease);padding:.65rem 1rem;font-size:.875rem;font-weight:600;position:absolute;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.main:focus,.main:focus-visible{outline:none}:focus-visible{outline:2px solid var(--color-teal);outline-offset:3px}.btn:focus-visible{outline:2px solid var(--color-teal-bright);outline-offset:3px}body{font-family:var(--font-sans);color:var(--color-navy);background:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul{list-style:none}button,input,textarea{font-family:inherit;font-size:inherit}#root{flex-direction:column;min-height:100vh;display:flex}.main{flex:1}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 clamp(1.25rem,4vw,1.75rem)}.btn{border-radius:var(--radius-sm);letter-spacing:.01em;cursor:pointer;transition:background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease), transform .25s var(--ease);border:1.5px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.6rem;font-size:.9375rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)scale(.99)}.btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn:disabled:hover,.btn:disabled:active{transform:none}.btn-primary{background:var(--color-teal);color:var(--color-white);box-shadow:0 2px 8px #3e4a8d47}.btn-primary:before{content:"";width:40%;transition:transform .7s var(--ease-out);pointer-events:none;background:linear-gradient(100deg,#0000,#ffffff61,#0000);position:absolute;top:0;bottom:0;left:0;transform:translate(-230%)skew(-18deg)}.btn-primary:hover{background:var(--color-teal-light);box-shadow:0 6px 18px #3e4a8d66}.btn-primary:hover:before{transform:translate(320%)skew(-18deg)}.btn-secondary{color:var(--color-white);background:0 0;border-color:#fff6}.btn-secondary:hover{background:#ffffff1a;border-color:#ffffffbf}.btn-outline{color:var(--color-teal);border-color:var(--color-teal);background:0 0}.btn-outline:hover{background:var(--color-teal-soft)}.section{padding:var(--space-section) 0}.section-alt{background:var(--color-off-white)}.section-title{font-family:var(--font-serif);color:var(--color-navy);letter-spacing:-.025em;margin-bottom:.85rem;font-size:clamp(1.85rem,3.2vw,2.4rem);font-weight:700;line-height:1.25}.section-lead{color:var(--color-slate);max-width:640px;margin-bottom:2.75rem;font-size:1.0625rem;line-height:1.7}.badge{background:var(--color-teal-soft);color:var(--color-teal);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--color-teal-muted);border-radius:999px;margin-bottom:1.1rem;padding:.3rem .85rem;font-size:.75rem;font-weight:600;display:inline-block}@media (width<=900px){:root{--products-nav-height:108px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.btn:hover,.btn:active{transform:none}}[data-reveal]{opacity:0;--reveal-from:translateY(28px)}[data-reveal=left]{--reveal-from:translateX(-36px)}[data-reveal=right]{--reveal-from:translateX(36px)}[data-reveal=up]{--reveal-from:translateY(44px)}[data-reveal=scale]{--reveal-from:scale(.92)}[data-reveal=fade]{--reveal-from:none}[data-reveal].is-visible{opacity:1;animation:reveal-in .85s var(--ease-out) backwards;animation-delay:var(--reveal-delay,0s)}@keyframes reveal-in{0%{opacity:0;transform:var(--reveal-from,translateY(28px))}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;animation:none}}.products-nav{background:linear-gradient(90deg, var(--color-navy) 0%, var(--color-navy-mid) 35%, #525ca3 70%, var(--color-teal) 100%);opacity:0;visibility:hidden;max-height:0;transition:max-height .28s var(--ease), opacity .22s ease, visibility .22s;border-bottom:1px solid #ffffff14;overflow:hidden}.products-nav.visible{opacity:1;visibility:visible;max-height:156px}.products-nav-inner{max-width:min(1200px,100%);margin:0 auto;padding:.65rem .5rem .75rem}.products-nav-list{overscroll-behavior-x:contain;touch-action:pan-x;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#ffffff73 transparent;-webkit-overflow-scrolling:touch;justify-content:space-between;align-items:stretch;gap:.15rem;margin:0;padding:0 .65rem .4rem;scroll-padding-inline:.65rem;list-style:none;display:flex;overflow-x:auto}.products-nav-list::-webkit-scrollbar{height:4px}.products-nav-list::-webkit-scrollbar-thumb{background:#ffffff59;border-radius:4px}.products-nav-item{border-radius:var(--radius-sm);color:#fff;text-align:center;scroll-snap-align:start;min-width:5.5rem;max-width:7.5rem;transition:background .18s var(--ease), color .18s, transform .18s var(--ease);flex-direction:column;flex:1 1 0;justify-content:flex-start;align-items:center;gap:.4rem;padding:.45rem .35rem .55rem;display:flex}.products-nav-item:hover{color:#fff;background:#ffffff24;transform:translateY(-1px)}.products-nav-item:focus-visible{outline-offset:2px;outline:2px solid #fff}.products-nav-item.active{color:#fff;background:#ffffff29}.products-nav-icon{color:#fff;width:32px;height:32px;transition:transform .25s var(--ease-spring);justify-content:center;align-items:center;display:flex}.products-nav-item:hover .products-nav-icon{transform:translateY(-2px)scale(1.12)}.products-nav-icon svg{display:block}.products-nav-label{font-family:var(--font-sans);letter-spacing:.01em;color:inherit;font-size:.68rem;font-weight:500;line-height:1.25}@media (width<=900px){.products-nav.visible{max-height:172px}.products-nav-list{justify-content:flex-start;gap:.25rem;padding-bottom:.35rem}.products-nav-item{flex:none;min-width:5.25rem}}@media (prefers-reduced-motion:reduce){.products-nav-item:hover{transform:none}}@media (width<=720px){.products-nav-inner{padding:.55rem .25rem .65rem}.products-nav-label{font-size:.62rem}.products-nav-icon{width:28px;height:28px}.products-nav-icon svg{width:24px;height:24px}}.products-nav:not(.visible){pointer-events:none}.header{z-index:100;min-height:var(--header-height);-webkit-backdrop-filter:blur(14px)saturate(1.2);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-xs);background:#ffffffeb;position:sticky;top:0}.header-inner{min-height:var(--header-height);z-index:102;justify-content:space-between;align-items:center;gap:1.25rem;display:flex;position:relative}.logo{color:var(--color-navy);flex-shrink:0;align-items:center;gap:.7rem;max-width:min(100%,360px);transition:opacity .15s;display:flex}.logo:hover .logo-name{color:var(--color-teal)}.logo-mark{object-fit:contain;width:auto;height:46px;transition:transform .35s var(--ease-spring), filter .3s var(--ease);flex-shrink:0;display:block}.logo:hover .logo-mark{filter:brightness(1.06)saturate(1.08);transform:scale(1.07)rotate(-2deg)}.logo-text{min-width:0}.logo-name{font-family:var(--font-heading);color:var(--color-navy);letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;max-width:100%;transition:color .25s var(--ease);font-size:1.06rem;font-weight:700;line-height:1.15;display:block;overflow:hidden}.nav{align-items:center;gap:.2rem;display:flex}.nav-link{border-radius:var(--radius-sm);color:var(--color-slate);padding:.5rem .95rem;font-size:.9rem;font-weight:500;transition:color .15s,background .15s;position:relative}.nav-link:hover{color:var(--color-navy);background:var(--color-teal-soft)}.nav-link:focus-visible{outline:2px solid var(--color-teal);outline-offset:2px}.nav-link.active{color:var(--color-teal);background:var(--color-teal-soft);font-weight:600}.nav-link:after{content:"";background:var(--color-teal);transform-origin:0;height:2px;transition:transform .25s var(--ease-out);border-radius:2px;position:absolute;bottom:.28rem;left:.95rem;right:.95rem;transform:scaleX(0)}.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}.nav-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;width:44px;height:44px;transition:background .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease), transform .2s var(--ease);flex-direction:column;justify-content:center;gap:5px;padding:11px;display:none}.nav-toggle:hover{background:var(--color-teal-soft);border-color:var(--color-teal-muted)}.nav-toggle:active{transform:scale(.94)}.nav-toggle:focus-visible{outline:2px solid var(--color-teal);outline-offset:2px}.nav-toggle span{background:var(--color-navy);width:100%;height:2px;transition:transform .32s var(--ease-spring), opacity .22s var(--ease);border-radius:2px;display:block}.nav-toggle.open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-toggle.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-backdrop{display:none}@keyframes nav-link-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@media (width<=720px){.nav-toggle{display:flex}.nav-backdrop{z-index:101;cursor:pointer;-webkit-backdrop-filter:blur(2px);animation:backdrop-in .28s var(--ease-out) both;background:#252d5873;border:none;display:block;position:fixed;inset:0}.nav{top:var(--header-height);z-index:102;-webkit-backdrop-filter:blur(16px)saturate(1.2);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);transform-origin:top;opacity:0;visibility:hidden;will-change:transform, opacity;transition:transform .34s var(--ease-out), opacity .26s var(--ease), visibility .34s;background:#fffffff7;flex-direction:column;align-items:stretch;gap:.4rem;padding:.9rem 1.25rem 1.75rem;position:fixed;left:0;right:0;transform:translateY(-16px)scale(.98)}.nav.open{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.nav.open .nav-link{animation:nav-link-in .36s var(--ease-out) backwards}.nav.open .nav-link:first-child{animation-delay:40ms}.nav.open .nav-link:nth-child(2){animation-delay:80ms}.nav.open .nav-link:nth-child(3){animation-delay:.12s}.nav.open .nav-link:nth-child(4){animation-delay:.16s}.nav.open .nav-link:nth-child(5){animation-delay:.2s}.nav.open .nav-link:nth-child(6){animation-delay:.24s}.nav.open .nav-link:nth-child(7){animation-delay:.28s}.nav-link{padding:.85rem 1rem;font-size:1rem}.header.has-products .nav{top:calc(var(--header-height) + var(--products-nav-height));max-height:calc(100dvh - var(--header-height) - var(--products-nav-height));overflow-y:auto}.logo{gap:.5rem;max-width:calc(100% - 56px)}.logo-mark{width:auto;height:34px}.logo-name{font-size:1.05rem}}.footer{background:linear-gradient(180deg, var(--color-navy) 0%, var(--color-navy-deep) 100%);color:#ffffffd9;margin-top:auto;padding:3.25rem 0 1.5rem}.footer-inner{border-bottom:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;gap:2.25rem;padding-bottom:2.25rem;display:flex}.footer-logo{flex-wrap:wrap;align-items:center;gap:.75rem .85rem;margin-bottom:.75rem;transition:opacity .15s;display:flex}.footer-logo:hover{opacity:.92}.footer-logo-img{object-fit:contain;flex-shrink:0;width:48px;height:48px;display:block}.footer-text{flex-direction:column;gap:.15rem;display:flex}.footer-slogan{font-family:var(--font-accent);color:#c5c9dc;margin-bottom:0;font-size:.8rem;font-style:normal;line-height:1.3}.footer-tagline{color:#e0e2e8d1;max-width:380px;margin-top:.15rem;font-size:.9rem;line-height:1.55}.footer-links{flex-direction:column;gap:.55rem;font-size:.9rem;display:flex}.footer-links a{color:#e0e2e8e6;transition:color .2s var(--ease), transform .2s var(--ease);display:inline-block}.footer-links a:hover{color:var(--color-white);transform:translate(4px)}.footer-links a:focus-visible{outline-offset:3px;border-radius:2px;outline:2px solid #fff}.footer-logo:focus-visible{outline-offset:4px;border-radius:var(--radius-sm);outline:2px solid #fff}.footer-bottom{color:#e0e2e8c7;padding-top:1.35rem;font-size:.8rem}@media (width<=560px){.footer-inner{flex-direction:column;gap:1.5rem}}.hero{background:linear-gradient(155deg, var(--color-navy-deep) 0%, var(--color-navy) 42%, #525ca3 100%);color:var(--color-white);padding:clamp(4rem,8vw,6rem) 0 0;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 50% 40%,#000,#0000);mask-image:radial-gradient(80% 70% at 50% 40%,#000,#0000)}.hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 82% 18%,#6b75b059,#0000 42%),radial-gradient(circle at 8% 85%,#3e4a8d38,#0000 38%);position:absolute;inset:0}.hero-inner{z-index:1;max-width:740px;position:relative}.hero .badge{color:#e0e2e8;background:#6b75b038;border-color:#e0e2e859}.hero-title{font-family:var(--font-serif);letter-spacing:-.035em;text-wrap:balance;max-width:18ch;margin-bottom:1rem;font-size:clamp(2.6rem,6vw,4.4rem);font-weight:700;line-height:1.05}.hero-tagline{font-family:var(--font-accent);letter-spacing:.02em;color:#c5c9dc;border-left:2px solid #e0e2e88c;margin-bottom:1.4rem;padding-left:.9rem;font-size:clamp(1.1rem,2.1vw,1.35rem);font-style:normal;font-weight:500}.hero-lead{color:#ffffffe6;max-width:640px;margin-bottom:2.25rem;font-size:1.0625rem;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:.85rem;display:flex}.hero-inner [data-reveal].is-visible{animation:hero-enter .9s var(--ease-out) backwards;animation-delay:var(--reveal-delay,0s)}@keyframes hero-enter{0%{opacity:0;filter:blur(10px);transform:translateY(30px)}to{opacity:1;filter:blur();transform:none}}.hero-marquee{z-index:1;-webkit-backdrop-filter:blur(8px);background:#252d5859;border-top:1px solid #e0e2e829;border-bottom:1px solid #e0e2e829;margin-top:clamp(2.5rem,6vw,4rem);padding:1.05rem 0;position:relative;overflow:hidden}.hero-marquee-track{width:max-content;animation:42s linear infinite marquee-scroll;display:flex}.hero-marquee:hover .hero-marquee-track{animation-play-state:paused}.hero-marquee-item{white-space:nowrap;font-family:var(--font-accent);letter-spacing:.015em;color:#e6e8f2;flex:none;padding-right:3rem;font-size:1.02rem;font-weight:500}.hero-marquee-item:after{content:"•";color:var(--color-teal-bright);margin-left:3rem}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.hero-orb{filter:blur(64px);opacity:.55;pointer-events:none;z-index:0;animation:hero-float 15s var(--ease-out) infinite alternate;border-radius:50%;position:absolute}.hero-orb--a{background:radial-gradient(circle,#6b75b08c,#0000 70%);width:340px;height:340px;top:-90px;right:5%}.hero-orb--b{background:radial-gradient(circle,#525ca380,#0000 70%);width:300px;height:300px;animation-delay:-7s;bottom:-100px;left:-50px}@keyframes hero-float{0%{transform:translate(0,0)scale(1)}to{transform:translate(34px,-30px)scale(1.12)}}.pillars-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.75rem;display:grid}.pillar-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);flex-direction:column;padding:1.85rem 1.65rem;display:flex;position:relative;overflow:hidden}.pillar-card:after{content:"";transition:transform .8s var(--ease-out);pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff8c 50%,#0000 58%);position:absolute;inset:0;transform:translate(-130%)}.pillar-card:hover{box-shadow:var(--shadow-hover), 0 0 0 1px #3e4a8d1a;border-color:var(--color-teal-light);transform:translateY(-4px)}.pillar-card:hover:after{transform:translate(130%)}.pillar-icon{background:var(--color-teal-soft);border:1px solid var(--color-teal-muted);width:48px;height:48px;transition:transform .3s var(--ease-spring), background .3s var(--ease), box-shadow .3s var(--ease);border-radius:12px;justify-content:center;align-items:center;margin-bottom:1.15rem;font-size:1.6rem;display:flex}.pillar-card:hover .pillar-icon{background:#e7ebf6;transform:translateY(-2px)scale(1.07);box-shadow:0 6px 16px #3e4a8d2e}.pillar-card h3{color:var(--color-navy);letter-spacing:-.015em;margin-bottom:.7rem;font-size:1.1rem;font-weight:600;line-height:1.35}.pillar-card p{color:var(--color-slate);flex:1;font-size:.9375rem;line-height:1.6}.pillars-cta{flex-wrap:wrap;gap:.85rem;display:flex}@media (width<=860px){.pillars-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.pillar-card:hover{transform:none}.hero-marquee-track{animation:none}}.page-hero{padding-bottom:1.5rem}.block-title{font-family:var(--font-serif);color:var(--color-navy);letter-spacing:-.02em;margin-bottom:.8rem;font-size:clamp(1.45rem,2.6vw,1.85rem);font-weight:700;line-height:1.3}.block-lead{color:var(--color-slate);max-width:700px;margin-bottom:1.85rem;font-size:1.025rem;line-height:1.7}.academy-tagline{font-family:var(--font-heading);color:var(--color-teal);letter-spacing:-.02em;max-width:720px;margin-bottom:1.75rem;font-size:clamp(1.15rem,2.2vw,1.4rem);font-weight:600;line-height:1.35}.academy-intro{flex-direction:column;gap:1rem;max-width:720px;margin-bottom:2.5rem;display:flex}.academy-intro p{color:var(--color-slate);font-size:1.025rem;line-height:1.7}.program-list{scroll-margin-top:calc(var(--header-height) + 110px);grid-template-columns:1fr;gap:1.25rem;margin-bottom:2.75rem;display:grid}.program-card{background:var(--color-white);border:1px solid var(--color-border);border-left:3px solid var(--color-teal);border-radius:0 var(--radius) var(--radius) 0;box-shadow:var(--shadow-xs);transition:box-shadow .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease);padding:1.65rem 1.75rem;position:relative;overflow:hidden}.program-card:after{content:"";transition:transform .8s var(--ease-out);pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff8c 50%,#0000 58%);position:absolute;inset:0;transform:translate(-130%)}.program-card:hover{box-shadow:var(--shadow);border-color:var(--color-teal-muted);border-left-color:var(--color-teal-light);transform:translateY(-2px)}.program-card:hover:after{transform:translate(130%)}.program-title{color:var(--color-navy);letter-spacing:-.015em;margin-bottom:.55rem;font-size:1.15rem;font-weight:700;line-height:1.3}.program-tagline{font-family:var(--font-heading);color:var(--color-teal);margin-bottom:.85rem;font-size:.98rem;font-weight:600;line-height:1.4}.program-text{color:var(--color-slate);margin-bottom:.7rem;font-size:.9375rem;line-height:1.65}.program-audience{border-top:1px solid var(--color-border);color:var(--color-slate-light);margin-top:.55rem;padding-top:.9rem;font-size:.9rem;line-height:1.6}.program-audience strong{color:var(--color-navy);font-weight:600}.academy-cta{background:linear-gradient(135deg, var(--color-navy) 0%, var(--color-navy-mid) 55%, #4a5598 100%);color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:clamp(2rem,4vw,2.75rem)}.academy-cta .block-title{color:var(--color-white)}.academy-cta-text{color:#ffffffe0;max-width:640px;margin-bottom:1.75rem;line-height:1.7}.academy-cta-actions{flex-wrap:wrap;gap:.85rem;display:flex}.academy-cta .btn-outline{color:var(--color-white);border-color:#ffffff80}.academy-cta .btn-outline:hover{background:#ffffff1f;border-color:#fffc}.saas-card{background:linear-gradient(135deg, var(--color-navy) 0%, var(--color-navy-mid) 50%, #4a5598 100%);color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:box-shadow .35s var(--ease), transform .35s var(--ease);padding:clamp(2rem,4vw,2.75rem);position:relative;overflow:hidden}.saas-card:hover{box-shadow:var(--shadow-hover), 0 0 0 1px #6b75b066;transform:translateY(-2px)}.saas-card:after{content:"";pointer-events:none;width:280px;height:280px;animation:saas-pulse 8s var(--ease-out) infinite alternate;background:radial-gradient(circle,#6b75b04d,#0000 65%);position:absolute;top:-40%;right:-10%}@keyframes saas-pulse{0%{opacity:.75;transform:scale(1)}to{opacity:1;transform:scale(1.18)}}.saas-card .block-title,.saas-card .block-lead{z-index:1;position:relative}.saas-card .block-title{color:var(--color-white)}.saas-card .block-lead{color:#ffffffe6;margin-bottom:0}.services-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.service-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-xs);transition:box-shadow .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease);padding:1.55rem 1.4rem;position:relative;overflow:hidden}.service-card:after{content:"";transition:transform .8s var(--ease-out);pointer-events:none;background:linear-gradient(105deg,#0000 40%,#fff9 50%,#0000 60%);position:absolute;inset:0;transform:translate(-130%)}.service-card:hover{box-shadow:var(--shadow-md), 0 0 0 1px #3e4a8d1a;border-color:var(--color-teal-light);transform:translateY(-3px)}.service-card:hover:after{transform:translate(130%)}.service-card h3{color:var(--color-navy);letter-spacing:-.01em;margin-bottom:.55rem;font-size:1rem;font-weight:600;line-height:1.35}.service-card p{color:var(--color-slate);font-size:.9rem;line-height:1.55}@media (width<=900px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.services-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.service-card:hover,.program-card:hover{transform:none}}.ciencia-anchor{scroll-margin-top:calc(var(--header-height) + 110px)}.ciencia-index-grid{grid-template-columns:repeat(2,1fr);gap:1.1rem;display:grid}.ciencia-index-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-xs);transition:box-shadow .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease);color:inherit;align-items:center;gap:1rem;padding:1.35rem 1.4rem;display:flex}.ciencia-index-card:hover{box-shadow:var(--shadow);border-color:var(--color-teal-light);transform:translateY(-3px)}.ciencia-index-icon{background:var(--color-teal-soft);border:1px solid var(--color-teal-muted);width:46px;height:46px;color:var(--color-teal);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.ciencia-index-icon svg{width:26px;height:26px}.ciencia-index-body{flex-direction:column;gap:.2rem;min-width:0;display:flex}.ciencia-index-label{color:var(--color-navy);letter-spacing:-.01em;font-size:1.02rem;font-weight:700}.ciencia-index-short{color:var(--color-slate);font-size:.875rem;line-height:1.5}.ciencia-index-arrow{color:var(--color-teal);transition:transform .3s var(--ease);flex:none;margin-left:auto;font-size:1.25rem}.ciencia-index-card:hover .ciencia-index-arrow{transform:translate(4px)}.back-link{color:var(--color-teal);transition:color .2s var(--ease), transform .2s var(--ease);align-items:center;gap:.35rem;margin-bottom:1.25rem;font-size:.875rem;font-weight:600;display:inline-flex}.back-link:hover{color:var(--color-navy);transform:translate(-2px)}.detail-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);max-width:820px;padding:clamp(1.5rem,3vw,2.25rem)}.detail-paragraph{color:var(--color-slate);font-size:1.025rem;line-height:1.7}.detail-paragraph+.detail-paragraph{margin-top:1rem}@media (width<=720px){.ciencia-index-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.ciencia-index-card:hover{transform:none}}.program-head{align-items:flex-start;gap:.9rem;margin-bottom:.85rem;display:flex}.program-head-text{flex-direction:column;gap:.2rem;min-width:0;display:flex}.program-head-text .program-title,.program-head-text .program-tagline{margin-bottom:0}.program-icon{background:var(--color-teal-soft);border:1px solid var(--color-teal-muted);width:48px;height:48px;color:var(--color-teal);transition:transform .4s var(--ease-spring), background .3s var(--ease), color .3s var(--ease), box-shadow .3s var(--ease);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.program-icon svg{width:27px;height:27px}.program-card:hover .program-icon,.program-icon:hover{background:var(--color-teal);color:var(--color-white);transform:translateY(-3px)scale(1.1)rotate(-3deg);box-shadow:0 8px 18px #3e4a8d3d}.stats-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;display:grid}.stat-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow-xs);transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);padding:1.5rem 1.25rem}.stat-card:hover{box-shadow:var(--shadow);border-color:var(--color-teal-light);transform:translateY(-3px)}.stat-value{font-family:var(--font-heading);color:var(--color-navy-mid);letter-spacing:-.03em;font-size:clamp(1.9rem,3.4vw,2.5rem);font-weight:700;line-height:1.1}.stat-label{color:var(--color-slate);margin-top:.5rem;font-size:.9rem;line-height:1.45}.chart-title{font-family:var(--font-serif);color:var(--color-navy);letter-spacing:-.02em;margin-bottom:1.5rem;font-size:clamp(1.35rem,2.4vw,1.7rem);font-weight:700}.chart-bars{flex-direction:column;gap:1.1rem;max-width:760px;display:flex}.chart-row{grid-template-columns:minmax(140px,1fr) minmax(160px,2fr) 52px;align-items:center;gap:.9rem;display:grid}.chart-row-label{color:var(--color-navy);font-size:.9rem;font-weight:600;line-height:1.35}.chart-track{background:var(--color-off-white);border:1px solid var(--color-border);border-radius:999px;height:22px;overflow:hidden}.chart-fill{background:linear-gradient(90deg, var(--color-teal-muted), var(--color-border-strong));transform-origin:0;height:100%;transition:transform 1.2s var(--ease-out);border-radius:999px;transform:scaleX(0)}.chart-fill.is-highlight{background:linear-gradient(90deg, var(--color-navy-deep), var(--color-navy-mid), var(--color-teal-bright));box-shadow:0 0 12px #3e4a8d59}.chart-bars.is-visible .chart-fill{transform:scaleX(1)}.chart-row-value{font-family:var(--font-accent);color:var(--color-navy-mid);text-align:right;font-size:.9rem;font-weight:600}.features-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.feature-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-xs);transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);padding:1.65rem 1.6rem}.feature-card:hover{box-shadow:var(--shadow);border-color:var(--color-teal-light);transform:translateY(-3px)}.feature-card h3{color:var(--color-navy);letter-spacing:-.015em;margin-bottom:.6rem;font-size:1.08rem;font-weight:700}.feature-card p{color:var(--color-slate);font-size:.9375rem;line-height:1.6}@media (width<=860px){.stats-grid{grid-template-columns:repeat(2,1fr)}.features-grid{grid-template-columns:1fr}}@media (width<=560px){.stats-grid{grid-template-columns:1fr}.chart-row{grid-template-columns:1fr;gap:.5rem}.chart-row-value{text-align:left}}@media (prefers-reduced-motion:reduce){.stat-card:hover,.feature-card:hover{transform:none}}.references-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.reference-card{background:var(--color-white);border:1px solid var(--color-border);border-left:3px solid var(--color-teal);border-radius:0 var(--radius) var(--radius) 0;box-shadow:var(--shadow-xs);color:inherit;transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);flex-direction:column;gap:.55rem;padding:1.5rem 1.6rem;display:flex}.reference-card:hover{box-shadow:var(--shadow);border-left-color:var(--color-teal-bright);border-color:var(--color-teal-muted);transform:translateY(-3px)}.reference-badge{text-transform:uppercase;letter-spacing:.06em;color:var(--color-teal);background:var(--color-teal-soft);border:1px solid var(--color-teal-muted);border-radius:999px;align-self:flex-start;padding:.2rem .65rem;font-size:.7rem;font-weight:700}.reference-card h3{color:var(--color-navy);letter-spacing:-.01em;font-size:1.02rem;font-weight:600;line-height:1.4}.reference-card p{color:var(--color-slate);flex:1;font-size:.875rem;line-height:1.55}.reference-link{color:var(--color-teal);transition:color .2s var(--ease);font-size:.85rem;font-weight:600}.reference-card:hover .reference-link{color:var(--color-navy)}@media (width<=720px){.references-grid{grid-template-columns:1fr}}.articles-grid{grid-template-columns:1fr;gap:1.1rem;display:grid}.article-card{background:var(--color-white);border:1px solid var(--color-border);border-left:3px solid var(--color-teal);border-radius:0 var(--radius) var(--radius) 0;box-shadow:var(--shadow-xs);color:inherit;transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);flex-direction:column;gap:.6rem;padding:1.75rem 1.9rem;display:flex}.article-card:hover{box-shadow:var(--shadow);border-left-color:var(--color-teal-bright);border-color:var(--color-teal-muted);transform:translateY(-3px)}.article-card h3{color:var(--color-navy);letter-spacing:-.015em;font-size:1.1rem;font-weight:700;line-height:1.35}.article-abstract{color:var(--color-slate);flex:1;font-size:.95rem;line-height:1.65}@media (prefers-reduced-motion:reduce){.article-card:hover{transform:none}}.process-list{flex-direction:column;gap:1rem;max-width:820px;list-style:none;display:flex}.process-step{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-xs);transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);gap:1.25rem;padding:1.4rem 1.6rem;display:flex}.process-step:hover{box-shadow:var(--shadow);border-color:var(--color-teal-light);transform:translateY(-2px)}.process-number{background:var(--color-teal-soft);border:1px solid var(--color-teal-muted);width:46px;height:46px;color:var(--color-teal);font-family:var(--font-accent);border-radius:12px;flex:none;justify-content:center;align-items:center;font-size:1rem;font-weight:600;display:flex}.process-body h3{color:var(--color-navy);letter-spacing:-.01em;margin-bottom:.4rem;font-size:1.02rem;font-weight:600;line-height:1.35}.process-body p{color:var(--color-slate);font-size:.9rem;line-height:1.55}.faq-list{flex-direction:column;gap:1rem;max-width:820px;display:flex}.faq-item{background:var(--color-white);border:1px solid var(--color-border);border-left:3px solid var(--color-teal);border-radius:0 var(--radius) var(--radius) 0;box-shadow:var(--shadow-xs);padding:1.4rem 1.6rem}.faq-item h3{color:var(--color-navy);letter-spacing:-.01em;margin-bottom:.55rem;font-size:1.02rem;font-weight:700;line-height:1.4}.faq-item p{color:var(--color-slate);font-size:.9375rem;line-height:1.65}@media (prefers-reduced-motion:reduce){.process-step:hover{transform:none}}.repo-hero{background:linear-gradient(155deg, var(--color-navy-deep) 0%, var(--color-navy) 45%, #525ca3 100%);color:var(--color-white);padding:clamp(3rem,7vw,5rem) 0 clamp(2.25rem,5vw,3.25rem);position:relative;overflow:hidden}.repo-hero:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 50% 30%,#000,#0000);mask-image:radial-gradient(80% 70% at 50% 30%,#000,#0000)}.repo-hero .badge{color:#e0e2e8;background:#6b75b038;border-color:#e0e2e859}.repo-hero .section-title{color:var(--color-white)}.repo-hero .section-lead{color:#ffffffe0}.repo-search{-webkit-backdrop-filter:blur(10px);width:100%;max-width:560px;color:var(--color-white);transition:border-color .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease);background:#ffffff1f;border:1px solid #ffffff59;border-radius:999px;margin-top:.5rem;padding:.9rem 1.35rem;font-size:1rem}.repo-search::placeholder{color:#ffffffb3}.repo-search:focus{background:#ffffff2e;border-color:#ffffffb3;outline:none;box-shadow:0 0 0 3px #ffffff1f}.repo-body{background:linear-gradient(#f4f6fb 0%,#fff 100%)}.repo-grid{grid-template-columns:repeat(3,1fr);gap:1.4rem;display:grid}.repo-card{-webkit-backdrop-filter:blur(16px)saturate(1.1);border-radius:var(--radius);transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);background:#fff9;border:1px solid #ffffffb3;flex-direction:column;gap:.6rem;padding:1.6rem 1.5rem;display:flex;box-shadow:0 8px 32px #2f38681a}.repo-card:hover{border-color:var(--color-teal-muted);transform:translateY(-4px);box-shadow:0 18px 44px #2f386829}.repo-card-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.repo-card-id{font-family:var(--font-accent);letter-spacing:.06em;color:var(--color-teal);font-size:.72rem;font-weight:600}.repo-card-tipo{text-transform:uppercase;letter-spacing:.05em;color:var(--color-slate-light);font-size:.7rem;font-weight:600}.repo-card h2{font-family:var(--font-heading);color:var(--color-navy);letter-spacing:-.015em;font-size:1.05rem;font-weight:700;line-height:1.3}.repo-card-autores{color:var(--color-slate);font-size:.85rem;line-height:1.5}.repo-card-meta{border-top:1px solid var(--color-border);color:var(--color-slate);justify-content:space-between;align-items:center;margin-top:auto;padding-top:.75rem;font-size:.85rem;display:flex}.repo-card-precio{color:var(--color-navy);font-weight:700}.repo-card-btn{align-self:flex-start}.repo-empty{color:var(--color-slate);text-align:center;padding:3rem 0;font-size:1.05rem}.repo-panel-backdrop{z-index:200;-webkit-backdrop-filter:blur(2px);cursor:pointer;opacity:0;visibility:hidden;transition:opacity .3s var(--ease), visibility .3s;background:#252d5866;border:none;position:fixed;inset:0}.repo-panel-backdrop.open{opacity:1;visibility:visible}.repo-panel{z-index:201;-webkit-backdrop-filter:blur(20px)saturate(1.2);width:min(500px,100%);height:100dvh;transition:transform .42s var(--ease-out);background:#ffffffe6;border-left:1px solid #ffffff80;position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-20px 0 60px #2f386838}.repo-panel.open{transform:translate(0)}.repo-panel-inner{flex-direction:column;gap:.85rem;padding:2.25rem 1.9rem 2.5rem;display:flex}.repo-panel-close{border:1px solid var(--color-border);background:var(--color-white);width:38px;height:38px;color:var(--color-navy);cursor:pointer;transition:background .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);border-radius:50%;font-size:1.3rem;line-height:1;position:absolute;top:1rem;right:1rem}.repo-panel-close:hover{background:var(--color-teal-soft);border-color:var(--color-teal-muted);transform:rotate(90deg)}.repo-panel-tipo{text-transform:uppercase;letter-spacing:.06em;color:var(--color-teal);background:var(--color-teal-soft);border:1px solid var(--color-teal-muted);border-radius:999px;align-self:flex-start;padding:.25rem .7rem;font-size:.7rem;font-weight:700}.repo-panel h2{font-family:var(--font-heading);color:var(--color-navy);letter-spacing:-.02em;font-size:1.35rem;font-weight:700;line-height:1.3}.repo-panel-autores{color:var(--color-slate);font-size:.9rem;line-height:1.5}.repo-panel-meta{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(2,1fr);gap:.7rem;padding:1rem 0;display:grid}.repo-panel-meta div{flex-direction:column;gap:.15rem;display:flex}.repo-panel-meta dt{text-transform:uppercase;letter-spacing:.05em;color:var(--color-slate-light);font-size:.7rem;font-weight:600}.repo-panel-meta dd{color:var(--color-navy);font-size:.95rem;font-weight:600}.repo-panel-abstract-title{font-family:var(--font-heading);color:var(--color-navy);font-size:1rem;font-weight:700}.repo-panel-abstract{color:var(--color-slate);font-size:.9rem;line-height:1.65}.repo-buy-btn{width:100%;margin-top:.5rem}@media (width<=900px){.repo-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.repo-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.repo-card:hover{transform:none}}.team-grid{grid-template-columns:repeat(4,1fr);gap:1.35rem;margin-bottom:2.25rem;display:grid}.team-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow);transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);padding:2rem 1.35rem 1.75rem;position:relative;overflow:hidden}.team-card:after{content:"";transition:transform .8s var(--ease-out);pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff8c 50%,#0000 58%);position:absolute;inset:0;transform:translate(-130%)}.team-card:hover{box-shadow:var(--shadow-hover), 0 0 0 1px #3e4a8d1a;border-color:var(--color-teal-light);transform:translateY(-4px)}.team-card:hover:after{transform:translate(130%)}.team-avatar{background:linear-gradient(145deg, var(--color-teal-soft) 0%, var(--color-teal-muted) 100%);width:80px;height:80px;color:var(--color-teal);letter-spacing:.02em;transition:transform .35s var(--ease-spring), box-shadow .35s var(--ease), border-color .35s var(--ease);border:2px solid #3e4a8d26;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.15rem;font-size:1.05rem;font-weight:700;display:flex;box-shadow:inset 0 1px #ffffffb3}.team-card:hover .team-avatar{border-color:#3e4a8d59;transform:translateY(-3px)scale(1.05);box-shadow:inset 0 1px #ffffffb3,0 8px 20px #3e4a8d38}.team-card h2{color:var(--color-navy);letter-spacing:-.01em;margin-bottom:.4rem;font-size:1.02rem;font-weight:600}.team-role{color:var(--color-teal);font-size:.875rem;font-weight:500}.team-note{color:var(--color-slate);background:var(--color-off-white);border:1px solid var(--color-border);border-left:3px solid var(--color-teal);border-radius:0 var(--radius) var(--radius) 0;max-width:740px;padding:1.15rem 1.35rem;font-size:.925rem;line-height:1.6}@media (width<=900px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.team-grid{grid-template-columns:1fr;max-width:320px;margin-inline:auto}}@media (prefers-reduced-motion:reduce){.team-card:hover{transform:none}}.company-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.75rem;display:grid}.company-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);flex-direction:column;padding:1.85rem 1.65rem;display:flex;position:relative;overflow:hidden}.company-card:after{content:"";transition:transform .8s var(--ease-out);pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff8c 50%,#0000 58%);position:absolute;inset:0;transform:translate(-130%)}.company-card:hover{box-shadow:var(--shadow-hover), 0 0 0 1px #3e4a8d1a;border-color:var(--color-teal-light);transform:translateY(-4px)}.company-card:hover:after{transform:translate(130%)}.company-card h2{color:var(--color-navy);letter-spacing:-.015em;margin-bottom:.7rem;font-size:1.1rem;font-weight:600;line-height:1.35}.company-card p{color:var(--color-slate);flex:1;font-size:.9375rem;line-height:1.6}.company-cta{flex-wrap:wrap;gap:.85rem;display:flex}@media (width<=860px){.company-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.company-card:hover{transform:none}}.ong-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.75rem;display:grid}.ong-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);flex-direction:column;padding:1.85rem 1.65rem;display:flex;position:relative;overflow:hidden}.ong-card:after{content:"";transition:transform .8s var(--ease-out);pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff8c 50%,#0000 58%);position:absolute;inset:0;transform:translate(-130%)}.ong-card:hover{box-shadow:var(--shadow-hover), 0 0 0 1px #3e4a8d1a;border-color:var(--color-teal-light);transform:translateY(-4px)}.ong-card:hover:after{transform:translate(130%)}.ong-card h2{color:var(--color-navy);letter-spacing:-.015em;margin-bottom:.7rem;font-size:1.1rem;font-weight:600;line-height:1.35}.ong-card p{color:var(--color-slate);flex:1;font-size:.9375rem;line-height:1.6}.ong-cta{flex-wrap:wrap;gap:.85rem;display:flex}@media (width<=860px){.ong-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.ong-card:hover{transform:none}}.contact-layout{grid-template-columns:1fr 1.15fr;align-items:start;gap:clamp(2rem,5vw,3.5rem);display:grid}.contact-info .section-lead{margin-bottom:1.75rem}.contact-email-box{background:linear-gradient(135deg, var(--color-off-white) 0%, var(--color-teal-soft) 100%);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-xs);transition:box-shadow .3s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);padding:1.35rem 1.5rem}.contact-email-box:hover{box-shadow:var(--shadow);border-color:var(--color-teal-muted);transform:translateY(-2px)}.contact-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate-light);margin-bottom:.4rem;font-size:.72rem;font-weight:600}.contact-email-box a{color:var(--color-teal);word-break:break-all;font-size:.975rem;font-weight:600;transition:color .15s}.contact-email-box a:hover{color:var(--color-teal-light);text-decoration:underline}.contact-form-wrap{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:clamp(1.5rem,3vw,2.25rem)}.contact-form{flex-direction:column;gap:1.25rem;display:flex}.form-field label{color:var(--color-navy);letter-spacing:-.01em;font-size:.875rem;font-weight:600}.form-field input,.form-field textarea{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-navy);background:var(--color-surface);transition:border-color .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease), transform .2s var(--ease);padding:.8rem 1rem;line-height:1.4}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--color-slate-light);opacity:.85}.form-field input:hover,.form-field textarea:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}.form-field input:focus,.form-field textarea:focus{border-color:var(--color-teal);background:var(--color-white);outline:none;box-shadow:0 0 0 3px #3e4a8d24}.form-field input:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--color-teal);outline-offset:2px}.form-field input[aria-invalid=true],.form-field textarea[aria-invalid=true]{border-color:#8a3a4a}.field-error,.form-error-banner{color:#6b2d3a;font-size:.8rem;line-height:1.4}.form-error-banner{border-radius:var(--radius-sm);background:#f8eef0;border:1px solid #e4c5cc;padding:.75rem .9rem}.form-field textarea{resize:vertical;min-height:130px}.contact-form .btn-primary{align-self:flex-start;min-width:160px}.form-success h2{font-family:var(--font-serif);color:var(--color-navy);letter-spacing:-.02em;margin-bottom:.85rem;font-size:1.4rem}.form-success p{color:var(--color-slate);margin-bottom:1.5rem;line-height:1.65}.form-success a{color:var(--color-teal);font-weight:600}.form-success a:hover{text-decoration:underline}@media (width<=768px){.contact-layout{grid-template-columns:1fr;gap:2rem}.contact-form .btn-primary{width:100%}}.contact-map-title{font-family:var(--font-serif);color:var(--color-navy);letter-spacing:-.02em;margin-bottom:.6rem;font-size:clamp(1.45rem,2.6vw,1.85rem);font-weight:700;line-height:1.3}.contact-map-address{color:var(--color-slate);max-width:640px;margin-bottom:1.75rem;font-size:1.025rem;line-height:1.7}.contact-map{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);line-height:0;overflow:hidden}.contact-map iframe{border:0;width:100%;height:440px;display:block}@media (width<=560px){.contact-map iframe{height:320px}}.intranet-layout{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(2rem,5vw,3.5rem);display:grid}.intranet-form-wrap{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:clamp(1.5rem,3vw,2.25rem)}.intranet-form{flex-direction:column;gap:1.25rem;display:flex}.form-field{flex-direction:column;gap:.45rem;display:flex}.form-field label{color:var(--color-navy);font-size:.875rem;font-weight:600}.form-field input{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-navy);background:var(--color-surface);transition:border-color .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease), transform .2s var(--ease);padding:.8rem 1rem;line-height:1.4}.form-field input:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}.form-field input:focus{border-color:var(--color-teal);background:var(--color-white);outline:none;box-shadow:0 0 0 3px #3e4a8d24}.form-hint{color:var(--color-slate-light);font-size:.8rem;line-height:1.5}.intranet-notice{color:var(--color-teal);background:var(--color-teal-soft);border:1px solid var(--color-teal-muted);border-radius:var(--radius-sm);padding:.75rem .9rem;font-size:.8rem;line-height:1.5}@media (width<=768px){.intranet-layout{grid-template-columns:1fr;gap:2rem}}
