html { font-size:clamp(10px, .833333333vw, 16px); }

/* AFAEM — Baloo Bhai Regular original, peso 400, sin negrita sintética. */
@font-face {
  font-family: 'Baloo Bhai';
  src: url('../assets/fonts/BalooBhai-Regular.ttf') format('truetype');
  font-style: normal;
  font-weight: 400;
  font-display: block;
}
:root { --ink:#2A2E6B; --blue:#456AFF; --sky:#A3C8FF; --lilac:#9DB3FF; --pale:#CEF0F9; --white:#FFFFFF; --muted:#C4BFCC; --music:#C8FFE4; --beauty:#FEBFEC; --english:#FFEAC4; --computing:#C9BFFF; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:var(--header-height); }
/* El espacio inicial conserva la portada; el menú queda superpuesto al hacer scroll. */
:root { --header-height:7.666667rem; }
body { margin:0; padding-top:var(--header-height); background:var(--sky); color:var(--ink); font-family:'Baloo Bhai'; font-weight:400; font-synthesis:none; font-size:clamp(1.333333rem,1.53vw,1.833333rem); line-height:1.5; }
button,input,textarea,select { font:inherit; }
h1,h2,h3,h4,strong,b { font-weight:400; }
h1,h2,h3,h4,p,figure { margin:0; }
a { color:inherit; text-decoration:none; }
button { cursor:pointer; }
button,a,input { -webkit-tap-highlight-color:transparent; }
button { color:inherit; }
img { display:block; max-width:100%; }
button:focus-visible,a:focus-visible,input:focus-visible { outline:0.250000rem solid var(--ink); outline-offset:0.416667rem; }
.site-header :focus-visible,.site-footer :focus-visible { outline-color:white; }
[hidden] { display:none !important; }
.home-container,.home-nav-shell { width:83.333333%; max-width:100.000000rem; margin-inline:auto; }
.site-header { position:fixed; inset:0 0 auto; background:var(--ink); color:white; z-index:100; }
.home-nav-shell { min-height:7.666667rem; display:flex; justify-content:space-between; align-items:center; position:relative; }
.brand { font-size:3.333333rem; line-height:1; }
.nav { display:flex; gap:1.500000rem; align-items:center; }
.nav > a,.dropdown-toggle { display:flex; align-items:center; justify-content:center; gap:0.666667rem; padding:0.833333rem 2.333333rem 0.333333rem; border:0; border-radius:2.000000rem; background:transparent; color:white; line-height:1.4; text-align:center; }
.nav > .active,.dropdown-toggle[aria-expanded='true'] { background:var(--blue); }
.chevron { width:0.750000rem; height:0.750000rem; border:solid currentColor; border-width:0 0.166667rem 0.166667rem 0; transform:rotate(45deg); margin-top:-0.416667rem; }
.dropdown-toggle[aria-expanded='true'] .chevron { transform:rotate(225deg); margin-top:0.416667rem; }
.menu-toggle { display:none; }
.dropdown-menu { position:absolute; right:0; top:calc(100% + 1.333333rem); width:min(70.833333rem,100%); padding:3.666667rem 3.000000rem 4.500000rem; color:var(--ink); background:var(--sky); border-radius:1.166667rem; display:grid; grid-template-columns:1fr 1fr; gap:3.000000rem 2.166667rem; box-shadow:0 1.000000rem 2.333333rem #2a2e6b1a; }
.dropdown-menu::before { content:''; position:absolute; right:12.500000rem; top:-1.833333rem; width:3.666667rem; height:3.666667rem; background:var(--sky); border-radius:0.833333rem; transform:rotate(45deg); }
.dropdown-menu h3 { grid-column:1/-1; font-size:3.500000rem; line-height:1.2; position:relative; }
.dropdown-menu a { display:flex; align-items:center; gap:2.000000rem; font-size:2.000000rem; line-height:1.4; min-width:0; }
.dropdown-menu a:nth-of-type(1) { grid-area:2/1; }
.dropdown-menu a:nth-of-type(2) { grid-area:3/1; }
.dropdown-menu a:nth-of-type(3) { grid-area:3/2; }
.dropdown-menu a:nth-of-type(4) { grid-area:2/2; }
.menu-course-icon { width:8.666667rem; height:8.666667rem; flex:none; display:grid; place-items:center; }
.menu-course-icon img { width:100%; height:100%; object-fit:contain; }
.hero-home { background:var(--lilac); padding-top:7.500000rem; }
.hero-frame { height:52.500000rem; position:relative; }
.hero-frame > img { width:87.6%; height:100%; object-fit:cover; border:3.000000rem solid white; border-left:0; border-bottom:0; border-radius:0 0.750000rem 0.750000rem 0; }
.hero-tag { position:absolute; right:0; bottom:0; padding:1.333333rem 3.666667rem 1.333333rem 5.333333rem; border-radius:1.666667rem 0 0 0; background:var(--ink); color:white; text-align:right; line-height:1.1; }
.hero-tag small { display:block; font-size:2.333333rem; }
.hero-tag strong { display:block; font-size:3.000000rem; }
.intro { padding:9.166667rem 0 7.500000rem; color:var(--blue); }
.home-main-title { text-align:center; font-size:clamp(5.833333rem,9.17vw,11.000000rem); line-height:1; margin-bottom:4.000000rem; }
.home-main-title span { display:block; font-size:clamp(2.000000rem,3vw,3.583333rem); line-height:1.15; }
.intro-copy p + p { margin-top:2.666667rem; }
.carousel { margin-top:6.333333rem; position:relative; padding:0 0 4.833333rem 4.833333rem; }
.carousel::before { content:''; position:absolute; inset:0; border-left:2.000000rem solid var(--blue); border-bottom:2.000000rem solid var(--blue); border-radius:1.000000rem 0 1.000000rem 0; pointer-events:none; }
.carousel-frame { position:relative; }
.carousel-track { aspect-ratio:2/1; overflow:hidden; border-radius:2.000000rem; }
.carousel-slide { display:none; width:100%; height:100%; }
.carousel-slide.active { display:block; }
.carousel-slide picture,.carousel-slide img { width:100%; height:100%; }
.carousel-slide img { object-fit:cover; }
.carousel-controls { position:absolute; bottom:2.000000rem; left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:1.833333rem; }
.carousel-arrow { border:0; width:3.666667rem; height:4.333333rem; background:transparent; padding:0.666667rem; color:var(--blue); display:grid; place-items:center; }
.carousel-arrow::before { content:''; width:2.166667rem; height:2.166667rem; border:solid currentColor; border-width:0 1.000000rem 1.000000rem 0; border-radius:0.416667rem; transform:rotate(135deg); }
.carousel-arrow.next::before { transform:rotate(-45deg); }
.carousel-dots { display:flex; align-items:center; gap:1.833333rem; }
.carousel-dot { position:relative; border:0; width:1.833333rem; height:3.666667rem; padding:0; background:transparent; }
.carousel-dot::before { content:''; display:block; margin:auto; width:1.500000rem; height:1.500000rem; border-radius:50%; background:var(--muted); }
.carousel-dot[aria-current='true']::before { background:var(--blue); }
.tagline { margin-top:3.666667rem; text-align:right; }
.tagline strong { display:block; font-size:2.333333rem; }
.tagline span { display:block; margin-top:0.500000rem; }
.icon-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.icon-strip a { height:20.000000rem; display:grid; place-items:center; }
.icon-strip a:nth-child(1) { background:#C8FFE4; }
.icon-strip a:nth-child(2) { background:#FEBFEC; }
.icon-strip a:nth-child(3) { background:#FFEAC4; }
.icon-strip a:nth-child(4) { background:#C9BFFF; }
.icon-strip img { width:100%; height:100%; object-fit:contain; }
.about { padding-top:6.333333rem; }
.section-title { font-size:clamp(5.333333rem,7vw,8.333333rem); line-height:1.1; margin-bottom:2.166667rem; }
.section-lead { margin-bottom:8.333333rem; }
.value-card { position:relative; isolation:isolate; background:var(--blue); color:white; border-radius:2.666667rem; padding:4.666667rem 8.333333rem 5.833333rem; margin:0 2.333333rem 6.000000rem 0; }
.value-card::before { content:''; position:absolute; z-index:-1; inset:-2.166667rem -2.333333rem 5.500000rem 5.666667rem; background:var(--ink); border-radius:2.666667rem; }
.value-card::after { content:''; position:absolute; z-index:-1; inset:0; background:var(--blue); border-radius:inherit; }
.value-card h3 { font-size:3.333333rem; margin-bottom:1.333333rem; }
.facilities-carousel { margin-top:7.500000rem; padding:0 4.833333rem 4.833333rem 0; }
.facilities-carousel::before { border-left:0; border-right:2.000000rem solid var(--blue); border-radius:0 1.000000rem 1.000000rem 1.000000rem; }
.contact { padding:6.333333rem 0 3.666667rem; }
.contact .section-lead { margin-bottom:3.500000rem; font-size:2.333333rem; }
.contact-grid { display:grid; grid-template-columns:3fr 1.95fr; gap:2.666667rem; }
.contact-card { background:var(--blue); color:white; border-radius:2.333333rem; padding:4.666667rem 8.666667rem; }
.contact-card h3 { font-size:2.500000rem; line-height:1.1; }
.contact-card > p { font-size:1.666667rem; line-height:1.4; margin-bottom:3.666667rem; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:2.000000rem; }
.contact-card input:not([type='hidden']) { display:block; width:100%; min-width:0; border:0; background:white; border-radius:3.333333rem; padding:0.666667rem 2.666667rem; color:var(--ink); margin-bottom:2.000000rem; }
.contact-card input::placeholder { color:var(--muted); opacity:1; }
.contact-card button { margin-top:1.666667rem; padding:0.666667rem 2.666667rem; border:0; border-radius:3.333333rem; background:white; color:var(--blue); }
.contact-info { display:flex; flex-direction:column; justify-content:center; align-items:flex-end; text-align:right; border-radius:2.333333rem; padding:4.666667rem 7.666667rem; background:var(--pale); color:var(--blue); overflow-wrap:anywhere; }
.contact-info h4 { font-size:3.000000rem; line-height:1.2; }
.contact-info p { font-size:1.666667rem; line-height:1.35; }
.contact-info p:not(:last-child) { margin-bottom:4.666667rem; }
.map-wrap { margin-top:4.000000rem; display:grid; grid-template-columns:340fr 830fr; gap:2.500000rem; height:30.333333rem; }
.map-accent { background:var(--lilac) url('../assets/images/ui-v17/logo-academia.png') center/72% auto no-repeat; border-radius:2.666667rem; }
.map-wrap iframe { display:block; width:100%; height:100%; border:0; border-radius:2.666667rem; background:var(--pale); }
.site-footer { position:relative; z-index:16; background:var(--ink); padding:2.000000rem 0; }
.socials { display:flex; justify-content:flex-end; align-items:center; gap:6.000000rem; }
.site-footer .socials { width:calc(100% - 5rem); max-width:none; }
.socials a { min-width:3.666667rem; min-height:3.666667rem; display:grid; place-items:center; }
.socials img { width:2.833333rem; height:3.333333rem; object-fit:contain; }
.sr-only { position:absolute; width:0.083333rem; height:0.083333rem; padding:0; margin:-0.083333rem; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
@media (min-width:768px) and (max-width:1199px) {
  :root { --header-height:6.333333rem; }
  .home-nav-shell { min-height:6.333333rem; }
  .brand { font-size:2.666667rem; }
  .nav { gap:0.333333rem; }
  .nav > a,.dropdown-toggle { padding:0.833333rem 1.500000rem 0.333333rem; }
  .hero-home { padding-top:6.25vw; }
  .hero-frame { height:43.75vw; }
  .hero-frame > img { border-width:2.5vw; border-left:0; border-bottom:0; }
  .intro { padding-top:7.6vw; }
  .value-card { padding:3.666667rem 5.333333rem; }
  .contact-card { padding:3.000000rem 3.333333rem; }
  .contact-info { padding:3.000000rem; }
  .contact-info h4 { font-size:2.333333rem; }
  .contact-info p { font-size:1.333333rem; }
  .icon-strip a { height:16.667vw; }
}
@media (min-width:768px) {
  .nav > a,.dropdown-toggle { min-height:38px; }
}
@media (max-width:767px) {
  :root { --header-height:76px; }
  body { font-size:14px; line-height:1.55; }
  .home-container,.home-nav-shell { width:77.78%; }
  .home-nav-shell { width:calc(100% - 84px); min-height:76px; }
  .brand { font-size:44px; }
  .menu-toggle { display:flex; flex-direction:column; justify-content:center; gap:7px; background:transparent; border:0; padding:5px; width:44px; height:44px; }
  .menu-toggle span { width:34px; height:5px; background:var(--muted); border-radius:3px; transition:transform .2s,opacity .2s; }
  .menu-toggle[aria-expanded='true'] span:nth-child(1) { transform:translateY(12px) rotate(45deg); }
  .menu-toggle[aria-expanded='true'] span:nth-child(2) { opacity:0; }
  .menu-toggle[aria-expanded='true'] span:nth-child(3) { transform:translateY(-12px) rotate(-45deg); }
  .nav { display:none; position:absolute; top:calc(100% + 16px); right:-42px; width:100vw; padding:36px 18px 40px; background:var(--ink); border-radius:20px; max-height:calc(100dvh - 92px); overflow-y:auto; gap:10px; }
  .nav.is-open { display:flex; flex-direction:column; align-items:stretch; }
  .nav > a,.dropdown-toggle { width:100%; min-height:76px; padding:13px 8px 7px; font-size:36px; line-height:1.25; border-radius:30px; }
  .nav .active { background:transparent; }
  .dropdown-toggle { background:var(--blue); gap:18px; }
  .chevron { width:13px; height:13px; border-width:0 3px 3px 0; }
  .nav.courses-open > a { background:#456AFF; }
  .dropdown-menu { position:static; width:100%; padding:20px 22px 14px; border-radius:40px; margin-top:10px; display:flex; flex-direction:column; gap:28px; box-shadow:none; }
  .dropdown-menu::before,.dropdown-menu h3 { display:none; }
  .dropdown-menu a { font-size:20px; gap:16px; min-height:74px; }
  .nav > a,.dropdown-toggle { white-space:nowrap; overflow:visible; }
  .dropdown-menu a br { display:none; }
  .menu-course-icon { width:70px; height:70px; }
  .hero-home { padding-top:26px; }
  .hero-frame { height:226px; padding-bottom:68px; }
  .hero-frame > img { width:89.4%; border-width:14px; border-left:0; border-bottom:0; border-radius:0 10px 10px 0; object-position:center; }
  .hero-tag { width:100%; height:68px; padding:0; border-radius:12px 0 0 0; }
  .hero-tag small,.hero-tag strong { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .intro { padding:30px 0 28px; }
  .intro .home-container { width:70.37%; }
  .home-main-title { font-size:48px; line-height:1.05; margin-bottom:26px; }
  .home-main-title span { font-size:16px; line-height:1.1; white-space:nowrap; }
  .intro-copy p + p { margin-top:34px; }
  .carousel { margin-top:34px; padding:0; }
  .carousel::before { display:none; }
  .carousel-track { aspect-ratio:1.4; border-radius:30px; }
  .carousel-controls { position:static; transform:none; margin:14px -12px 0; display:flex; justify-content:space-between; gap:8px; }
  .carousel-arrow { width:44px; height:60px; }
  .carousel-arrow::before { width:28px; height:28px; border-width:0 14px 14px 0; border-radius:6px; }
  .carousel-dots { gap:16px; }
  .carousel-dot { width:22px; }
  .carousel-dot::before { width:14px; height:14px; }
  .tagline { margin-top:18px; text-align:center; }
  .tagline strong { font-size:14px; }
  .tagline span { font-size:13px; margin-top:8px; line-height:1.4; }
  .icon-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .icon-strip a { height:126px; }
  .about { padding-top:32px; }
  .section-title { font-size:50px; line-height:1.15; margin-bottom:18px; }
  .section-lead { margin:0 4px 50px; }
  .value-card { padding:24px 26px 32px; margin:0 26px 56px 0; border-radius:32px; }
  .value-card::before { inset:-24px -26px 46px 28px; border-radius:32px; }
  .value-card h3 { font-size:30px; margin-bottom:12px; }
  .facilities-carousel { margin-top:-22px; padding:0; }
  .facilities-carousel .carousel-track { aspect-ratio:1.45; }
  .contact { padding:32px 0 36px; }
  .contact .section-lead { font-size:14px; margin:0 4px 34px; }
  .contact-grid { display:grid; grid-template-columns:1fr; gap:24px; }
  .contact-card { padding:32px 30px 38px; border-radius:32px; }
  .contact-card h3 { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .contact-card > p { font-size:14px; line-height:1.5; margin-bottom:26px; }
  .form-row { grid-template-columns:1fr; gap:0; }
  .contact-card input:not([type='hidden']) { padding:6px 16px; margin-bottom:14px; min-height:38px; }
  .contact-card button { margin-top:4px; padding:5px 16px; min-height:38px; }
  .contact-info { border-radius:40px; padding:32px; min-height:312px; }
  .contact-info h4 { font-size:26px; }
  .contact-info p { font-size:14px; }
  .contact-info p:not(:last-child) { margin-bottom:42px; }
  .map-wrap { margin-top:26px; display:grid; grid-template-columns:30% 1fr; gap:10px; height:132px; }
  .map-accent { display:block; min-height:0; background-size:72% auto; border-radius:16px; }
  .map-wrap iframe { border-radius:16px; }
  .site-footer { padding:10px 0; }
  .socials { gap:24px; }
  .socials img { width:20px; height:28px; }
}
@media (max-width:359px) {
  .home-nav-shell { width:calc(100% - 48px); }
  .nav { right:-24px; }
  .brand { font-size:36px; }
  .home-main-title { font-size:40px; }
  .home-main-title span { font-size:13px; white-space:normal; }
  .section-title { font-size:40px; }
  .dropdown-menu { padding-inline:14px; }
  .dropdown-menu a { font-size:18px; gap:12px; }
  .menu-course-icon { width:60px; height:60px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition:none !important; animation:none !important; }
}


@media(max-width:767px) { html {font-size:16px;} }

/* Gráficos originales de Figma: se integran sin reconstruir las piezas. */
.home-main-title { font-size:10rem; }
.section-title { font-size:8rem; }
.home-page .intro,.home-page .about,.home-page .contact { background:var(--sky); }
.home-page .carousel::before { border:0; border-radius:0; background:url('../assets/images/ui-v17/carousel-frame-left.png') center/100% 100% no-repeat; }
.home-page .facilities-carousel::before { background-image:url('../assets/images/ui-v17/carousel-frame-right.png'); }
.home-page .carousel { padding:0 0 4.8125rem 4.875rem; }
.home-page .facilities-carousel { padding:0 4.875rem 4.8125rem 0; }
.home-page .carousel-track { border-radius:2rem; }
.home-page .carousel-arrow::before { border:0; border-radius:0; width:2.25rem; height:3.35rem; transform:none; background:url('../assets/images/ui-v17/arrow-left.png') center/contain no-repeat; }
.home-page .carousel-arrow.next::before { transform:none; background-image:url('../assets/images/ui-v17/arrow-right.png'); }
.icon-strip a { height:auto; aspect-ratio:480/320; }
.value-card { background:url('../assets/images/ui-v17/value-card-desktop.png') center/100% 100% no-repeat; margin-right:0; min-height:27.25rem; padding:5rem 8.5rem 4rem; display:flex; flex-direction:column; justify-content:center; }
.value-card::before,.value-card::after { display:none; }
/* El menú tiene sus propias medidas, independientes del ancho de la maqueta completa. */
@media(min-width:768px) {
  .icon-strip { background:url('../assets/images/ui-v17/course-strip-desktop.png') center/100% 100% no-repeat; }
  .icon-strip a:nth-child(n) { background:transparent; }
  .icon-strip img { visibility:hidden; }
  .dropdown-menu { width:738px; max-width:100%; padding:44px 30px 52px; gap:40px 26px; border-radius:12px; }
  .dropdown-menu h3 { font-size:38px; line-height:46px; }
  .dropdown-menu a { font-size:20px; gap:20px; line-height:1.4; }
  .menu-course-icon { width:88px; height:88px; }
  .dropdown-menu::before { right:58px; top:-22px; width:44px; height:44px; border-radius:10px; }
}
.carousel-track { touch-action:pan-y pinch-zoom; }
.carousel-slide img { -webkit-user-drag:none; user-select:none; }
@media(max-width:767px) {
  .intro .home-container { width:71.733333%; }
  .home-main-title { font-size:40px; margin-inline:-10px; }
  .home-main-title span { font-size:16px; }
  .section-title { font-size:42px; }
  .home-page .carousel,.home-page .facilities-carousel { padding:0; }
  .home-page .carousel-arrow::before { width:30px; height:44px; }
  .value-card { background-image:url('../assets/images/ui-v17/value-card-mobile.png'); min-height:331px; padding:50px 54px 32px 26px; margin-bottom:32px; justify-content:flex-start; }
  .facilities-carousel { margin-top:0; margin-right:8px; }
  .facilities-carousel .carousel-track { aspect-ratio:283/202; }
  .value-card h3 { margin-bottom:12px; }
  .nav.courses-open > a,.nav.courses-open .dropdown-toggle { min-height:67px; }
  .site-footer { padding:16px 0; }
}
@media(max-width:359px) {
  .home-main-title { font-size:36px; }
  .home-main-title span { font-size:13px; }
  .section-title { font-size:38px; }
}

.icon-strip picture { display:block; width:100%; height:100%; }
/* El encabezado de Contacto queda junto al menú fijo, sin la galería anterior. */
.contact { scroll-margin-top:calc(1.5rem - 6.333333rem); }
@media(min-width:768px) and (max-height:650px) {
  .dropdown-menu { max-height:calc(100dvh - var(--header-height) - 32px); overflow-y:auto; }
}
@media(max-width:767px) {
  .contact { scroll-margin-top:-16px; }
}

@media(prefers-reduced-motion:no-preference) {
  /* Pop breve para destacar cada icono de curso al pasar el cursor. */
  .icon-strip a { position:relative; z-index:0; }
  .icon-strip a:hover { z-index:2; }
  .icon-strip img { transition:transform .22s cubic-bezier(.22,1,.36,1),opacity .15s ease-out; }
  .icon-strip a:hover img { transform:scale(1.045); opacity:1; }
  @media(min-width:768px) { .icon-strip a:hover img { visibility:visible; } }
}
@keyframes menu-fade {
  from { opacity:.85; }
  to { opacity:1; }
}
@keyframes photo-pop {
  0% { opacity:.82; transform:scale(.97); }
  68% { opacity:1; transform:scale(1.012); }
  100% { opacity:1; transform:scale(1); }
}
@media(prefers-reduced-motion:no-preference) {
  /* Controles estables y activos desde el primer instante, sin rebotes ni esperas. */
  .dropdown-menu:not([hidden]),.nav.is-open { animation:menu-fade .12s ease-out; }
  .nav > a,.dropdown-toggle,.contact-card button,.socials a,.icon-strip img,.carousel-arrow,.whatsapp-float img {
    transition:opacity .15s ease-out,background-color .15s ease-out;
  }
  .nav > a:active,.dropdown-toggle:active,.contact-card button:active,.carousel-arrow:active { opacity:.85; }
  @media(hover:hover) {
    .nav > a:hover,.dropdown-toggle:hover { background-color:var(--blue); }
  .contact-card button:hover,.socials a:hover,.carousel-arrow:hover,.icon-strip a:hover img,.whatsapp-float:hover img { opacity:.9; }
  }
  /* El pop se reserva a las fotografías, con una sola entrada corta y discreta. */
  .hero-frame > img,
  .course-hero img,
  .carousel-slide.active img,
  .profile-visual img.pop,
  .field-visual img.pop,
  .computing-final img.pop,
  .gallery-grid img.pop { animation:photo-pop .42s ease-out both; }
  .profile-visual img.pop,.field-visual img.pop,.computing-final img.pop,.gallery-grid img.pop {
    transition:transform .22s ease-out,filter .22s ease-out;
  }
  .profile-visual img.pop:hover,.field-visual img.pop:hover,.computing-final img.pop:hover,.gallery-grid img.pop:hover {
    transform:scale(1.025); filter:drop-shadow(0 8px 14px rgba(35,48,115,.14));
  }
}
@media(max-width:767px) {
  .menu-toggle[aria-expanded="false"] { background:transparent url('../assets/images/ui-v17/hamburger.png') center/35px 30px no-repeat; }
  .menu-toggle[aria-expanded="false"] span { visibility:hidden; }
}

@media (prefers-reduced-motion:no-preference) {
  .icon-strip img { transition:transform .22s cubic-bezier(.22,1,.36,1),opacity .15s ease-out; }
  .icon-strip a:hover img { transform:scale(1.045); opacity:1; }
  @media (min-width:768px) { .icon-strip a:hover img { visibility:visible; } }
}
