/* ==========================================================================
   AWD Custom Block CSS
========================================================================== */

/* ==========================
   Career Post Shortcode
========================== */
.awd-career-item { padding: 40px 30px; background-color: #f3e7c8; border: 1px solid #f3e7c8; border-radius: 0; display: flex; flex-direction: column; align-items: flex-start; }
.awd-career-item-header h3.awd-career-title { font-size: 32px; }
.awd-career-excerpt { color: #555; margin-bottom: 1rem; }
.awd-career-item-cta { margin-top: auto; margin-bottom: 0; }
.awd-career-button, .career-lang-toggle a:hover, a.button.application-button:hover { background: #000; border-color: #000; color: #fff; }
.awd-career-button { background: var(--ast-global-color-0); border: 1px solid var(--ast-global-color-0); font-family: 'David Libre', serif; font-weight: 500; font-size: 1rem; line-height: 1; padding: 15px 30px; border-radius: 0; display: inline-block; max-width: 200px; color: #fff; }
.awd-career-list { display: flex; flex-direction: column; gap: 2rem; }
.awd-career-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1rem; max-width: 1140px; margin: 50px auto; }

/* ==========================
   Video Popup
========================== */
.awd-fancybox-video-wrap { position: relative; display: inline-block; max-width: 100%; cursor: pointer; overflow: hidden; background-color: transparent; line-height: 0; }
.awd-fancybox-video, .awd-fancybox-video img { display: block; width: 100%; }
.awd-fancybox-video { position: relative; overflow: hidden; text-decoration: none; color: inherit; }
.awd-fancybox-video-wrap img { height: auto; object-fit: cover; aspect-ratio: 16 / 9; border-radius: 8px; }
.awd-overlay { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.5)); display: flex; align-items: center; justify-content: center; pointer-events: none; }
.awd-overlay-content { color: #fff; text-align: center; padding: 1rem; pointer-events: none; }
.awd-play-icon { display: inline-block; width: 64px; height: 64px; background: rgba(255, 255, 255, 0.2); border-radius: 50%; transition: background 0.3s ease; }
.awd-play-icon svg { display: block; width: 100%; height: 100%; }
.awd-fancybox-video:hover .awd-play-icon { background: rgba(255, 255, 255, 0.4); }
.awd-overlay-title { margin-top: 0.75rem; font-size: 1.1rem; font-weight: 500; line-height: 1.3; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4); }
@media (max-width:480px) {
   .awd-play-icon { width: 48px; height: 48px; }
   .awd-overlay-title { font-size: 1rem; }
}

/* ==========================
   Image Card Block
========================== */
.awd-card-link { display: block; text-decoration: none; color: inherit; border-radius: 16px; overflow: hidden; cursor: pointer; }
.awd-card-link:hover .awd-card-icon { background: #f2f2f2; }
.awd-card { position: relative; overflow: hidden; border-radius: 16px; background-color: #000; }
.awd-card::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 40%; background: linear-gradient(to top, rgba(17, 26, 47, 0.85), rgba(17, 26, 47, 0.6) 30%, rgba(17, 26, 47, 0.3) 60%, rgba(17, 26, 47, 0)); z-index: 0; pointer-events: none; }
.awd-card img { width: 100%; height: auto; object-fit: cover; aspect-ratio: 690 / 479; transform: scale(1); transition: transform 0.4s ease; transform-origin: center; will-change: transform; }
.awd-card-link:hover .awd-card img { transform: scale(1.03); }
.awd-card-overlay { position: absolute; bottom: 0; left: 0; right: 0; padding: 10px 100px 27px 33px; background: linear-gradient(to top, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0)); display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; z-index: 1; }
.awd-card.image-card-block .awd-card-overlay { padding: 10px 100px 10px 31px; }
.awd-card-text { color: #fff; }
.awd-card h3.awd-card-title, .awd-card-title { color: #fff; margin: 0 0 0.25rem; font-size: 1.25rem; font-weight: 600; letter-spacing: -0.045em; }
.awd-card.image-card-block h3.awd-card-title { font-size: 32px; color: #fff; }
.awd-card-subtitle { font-size: 14px; margin: 0; opacity: 0.85; }
.awd-card-icon { width: 44px; height: 44px; border-radius: 50%; background: #fff; color: #111; display: flex; align-items: center; justify-content: center; transition: background 0.3s ease; will-change: background; }
.awd-card-icon svg { transform: rotate(0); transition: transform 0.3s ease; will-change: transform; }
.awd-card-link:hover .awd-card-icon svg { transform: rotate(45deg); }

/* ==========================
   Image Card Split Block
========================== */
.awd-card-split-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; align-items: flex-start; }
.awd-card-left .awd-card-title { font-size: 32px; margin: 4px 0 8px; letter-spacing: -0.04em; }
.awd-card-left .awd-card-subtitle { font-size: 14px; margin: 0; color: #111A2F; line-height: 1.19; }
.awd-card-right { position: relative; text-align: right; }
.awd-card-image-wrapper { position: relative; display: inline-block; }
.awd-card-image-wrapper img { width: 100%; height: auto; object-fit: cover; aspect-ratio: 154 / 145; border-radius: 16px; min-height: 145px; transform: scale(1); transition: transform 0.4s ease; }
.awd-card-link:hover .awd-card-image-wrapper img { transform: scale(1.03); }
.awd-card-icon { position: absolute; bottom: 4px; right: 7px; padding: 0.5em; border-radius: 50%; background: #fff; box-shadow: 0 0 6px rgba(0, 0, 0, 0.2); }
.awd-card-icon svg { transition: transform 0.3s ease; }
.awd-card-link:hover .awd-card-icon svg { transform: rotate(45deg); }
.awd-card.image-card-block .awd-card-icon { bottom: 33px; right: 44px; }
.awd-image-card-va.awd-card-link { overflow: visible; }

/* ==========================
   Card Background Variants
========================== */
.awd-card-split-wrapper.awd-bg-light { background: linear-gradient(120.17deg, #fff 22.15%, rgba(255, 255, 255, 0.3) 63.01%); border: 1px solid rgba(255, 255, 255, 0.5); backdrop-filter: blur(10px); padding: 22px 25px; border-radius: 16px; overflow: hidden; max-width: 400px; }
.awd-card-split-wrapper.awd-bg-dark { background: linear-gradient(120.17deg, #111A2F 22.15%, rgba(17, 26, 47, 0.3) 63.01%); border: 1px solid rgba(255, 255, 255, 0.15); backdrop-filter: blur(10px); padding: 22px 25px; border-radius: 16px; overflow: hidden; max-width: 400px; color: #fff; }
.awd-card-split-wrapper.awd-bg-dark .awd-card-title, .awd-card-split-wrapper.awd-bg-dark .awd-card-subtitle { color: #fff; }

/* ==========================
   Image Card VA Block
========================== */
.awd-image-card-va.awd-card-link { cursor: default; }
a.awd-image-card-va.awd-card-link { cursor: pointer; }
.awd-image-card-va { display: block; border-radius: 20px; position: relative; max-width: 100%; background: #fff; text-decoration: none; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08); }
.awd-image-card-va-inner { position: relative; }
.awd-image-card-va-inner img { width: 100%; height: auto; object-fit: cover; aspect-ratio: 332 / 237; border-radius: 16px; }
.awd-image-card-va-content { position: absolute; bottom: -48px; left: 0; right: 0; padding: 25px 15px 25px 17px; background: linear-gradient(120.17deg, #fff 22.15%, rgba(255, 255, 255, 0.3) 63.01%); border: 1px solid rgba(255, 255, 255, 0.5); backdrop-filter: blur(10px); border-radius: 16px; text-align: left; max-width: 78%; margin: 0 auto; }
.awd-image-card-va-content h3 { margin: 0 0 0.5rem; font-size: 1.55rem; font-weight: 500; color: #111827; }
.awd-image-card-va-content p { margin: 0; font-size: 14px; color: #111A2F; }
.awd-image-card-va.align-left .awd-image-card-va-content { left: -27px; max-width: 89%; margin-left: 0; bottom: -65px; }
.awd-image-card-va.align-right .awd-image-card-va-content { right: -27px; max-width: 89%; margin-right: 0; bottom: -65px; }
.awd-image-card-va-inner .awd-card-icon { bottom: unset; top: 15px; right: 15px; }

/* Zoom on image */
a.awd-image-card-va:hover .awd-image-card-va-inner img { transform: scale(1.03); }

/* Icon background and rotation */
a.awd-image-card-va:hover .awd-card-icon { background: #f2f2f2; }
a.awd-image-card-va:hover .awd-card-icon svg { transform: rotate(45deg); }

/* Ensure base transform is reset */
.awd-image-card-va-inner img { transform: scale(1); transition: transform 0.4s ease; transform-origin: center; will-change: transform; }
@media screen and (max-width:976px) {
   .awd-card-split-grid { grid-template-columns: 1fr; text-align: center; }
   #primary .awd-card-split-wrapper, #primary .awd-image-card-va.awd-card-link { max-width: 480px; }
   .awd-card-image-wrapper img { aspect-ratio: 3 / 2; }
   .awd-image-card-va.align-left .awd-image-card-va-content { left: 0; right: 0; margin: 0 auto; }
   .awd-image-card-va.align-left .awd-image-card-va-content { left: 0; right: 0; margin: 0 auto; max-width: 78%; }

}
