/* SkillSecure Gallery — scoped style restoration.
   Sources: approved Native Elementor Converter v3 + approved Gallery Polish v3.2.
   WordPress loads this stylesheet on the Gallery page ONLY.
   No Elementor widgets, sitewide header/footer or other pages are modified. */

/* APPROVED NATIVE GALLERY LAYOUT */
.elementor-page .ssgn-section,
.elementor-page .ssgn-section *{box-sizing:border-box}
.elementor-page .ssgn-section{width:100%!important;max-width:none!important;margin:0!important;color:#0C1729;font-family:"Manrope",sans-serif}
.elementor-page .ssgn-section .elementor-widget{margin:0!important}
.elementor-page .ssgn-section h1,
.elementor-page .ssgn-section h2,
.elementor-page .ssgn-section h3,
.elementor-page .ssgn-section p{margin:0!important}
.ssgn-shell{width:min(100%,1280px)!important;max-width:1280px!important;margin:0 auto!important;padding-left:32px!important;padding-right:32px!important}
.ssgn-eyebrow .elementor-heading-title{font-family:"Manrope",sans-serif!important;font-size:12px!important;line-height:16px!important;font-weight:800!important;letter-spacing:.16em!important;color:#9FCB39!important}

.ssgn-hero{background:#0C1729!important;color:#fff!important;padding:104px 0 108px!important;overflow:hidden!important}
.ssgn-hero-shell{max-width:1280px!important}
.ssgn-hero-title{margin-top:18px!important;max-width:780px!important}
.ssgn-hero-title .elementor-heading-title{font-family:"Sora",sans-serif!important;font-size:56px!important;line-height:1.08!important;font-weight:700!important;letter-spacing:-.035em!important;color:#fff!important}
.ssgn-hero-copy{margin-top:24px!important;max-width:700px!important}
.ssgn-hero-copy,.ssgn-hero-copy *{font-family:"Manrope",sans-serif!important;font-size:18px!important;line-height:30px!important;font-weight:400!important;color:rgba(255,255,255,.78)!important}

.ssgn-moments{padding:96px 0 100px!important;background:#fff!important}
.ssgn-training{padding:96px 0 104px!important;background:#F5F9F3!important;border-top:1px solid #E0E7DE!important}
.ssgn-section-head{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.75fr)!important;gap:72px!important;align-items:end!important;margin-bottom:44px!important}
.ssgn-section-title{margin-top:12px!important}
.ssgn-section-title .elementor-heading-title{font-family:"Sora",sans-serif!important;font-size:40px!important;line-height:1.15!important;font-weight:650!important;letter-spacing:-.025em!important;color:#0C1729!important}
.ssgn-section-copy{max-width:520px!important;justify-self:end!important}
.ssgn-section-copy,.ssgn-section-copy *{font-family:"Manrope",sans-serif!important;font-size:16px!important;line-height:28px!important;color:#4b5e6d!important}

/* Native Elementor Image Carousel — fully editable in Elementor. */
.ssgn-carousel .elementor-image-carousel-wrapper{overflow:visible!important}
.ssgn-carousel .swiper-slide{overflow:hidden!important;border:1px solid #CDD8E0!important;background:#E9EEE6!important}
.ssgn-carousel .swiper-slide-image{display:block!important;width:100%!important;height:430px!important;object-fit:cover!important;transition:transform .75s cubic-bezier(.16,1,.3,1)!important}
.ssgn-carousel .elementor-swiper-button{width:44px!important;height:44px!important;border-radius:50%!important;background:#0C1729!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 8px 24px rgba(12,23,41,.16)!important}
.ssgn-carousel .elementor-swiper-button:hover{background:#17364E!important}
.ssgn-carousel .swiper-pagination{position:relative!important;margin-top:20px!important;bottom:auto!important}
.ssgn-carousel .swiper-pagination-bullet{width:7px!important;height:7px!important;background:#CDD8E0!important;opacity:1!important}
.ssgn-carousel .swiper-pagination-bullet-active{background:#9FCB39!important;transform:scale(1.25)!important}
@media (hover:hover) and (pointer:fine){.ssgn-carousel .swiper-slide:hover .swiper-slide-image{transform:scale(1.025)!important}}

.ssgn-video-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.ssgn-video-card{display:flex!important;flex-direction:column!important;min-width:0!important;border:1px solid #CDD8E0!important;background:#fff!important;overflow:hidden!important;transition:transform .42s cubic-bezier(.16,1,.3,1),box-shadow .42s ease,border-color .3s ease!important}
.ssgn-video-meta{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;padding:20px 22px 16px!important}
.ssgn-video-label .elementor-heading-title{font-family:"Manrope",sans-serif!important;font-size:10px!important;line-height:14px!important;font-weight:800!important;letter-spacing:.13em!important;color:#17364E!important}
.ssgn-video-icon{width:20px!important;flex:0 0 20px!important}
.ssgn-shield{display:block;width:19px;height:19px;fill:none;stroke:#17364E;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ssgn-video{width:100%!important;background:#0C1729!important}
.ssgn-video .elementor-wrapper{aspect-ratio:4/5!important;--video-aspect-ratio:.8!important;background:#0C1729!important;overflow:hidden!important}
.ssgn-video video,.ssgn-video .elementor-video{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;background:#0C1729!important}
.ssgn-video-copy{padding:18px 22px 22px!important;gap:6px!important}
.ssgn-video-title .elementor-heading-title{font-family:"Sora",sans-serif!important;font-size:17px!important;line-height:23px!important;font-weight:600!important;color:#0C1729!important}
.ssgn-video-desc,.ssgn-video-desc *{font-family:"Manrope",sans-serif!important;font-size:13px!important;line-height:20px!important;color:#596b77!important}
@media (hover:hover) and (pointer:fine){.ssgn-video-card:hover{transform:translateY(-5px)!important;box-shadow:0 18px 44px rgba(12,23,41,.085)!important;border-color:rgba(23,54,78,.32)!important}}

.ssgn-cta{padding:56px 0!important;background:#9FCB39!important}
.ssgn-cta-shell{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:40px!important}
.ssgn-cta .ssgn-eyebrow .elementor-heading-title{color:#17364E!important}
.ssgn-cta-title{margin-top:10px!important}
.ssgn-cta-title .elementor-heading-title{font-family:"Sora",sans-serif!important;font-size:31px!important;line-height:1.18!important;font-weight:650!important;letter-spacing:-.025em!important;color:#0C1729!important}
.ssgn-cta-btn{width:auto!important;flex:0 0 auto!important}
.ssgn-cta-btn .elementor-button{min-height:48px!important;padding:0 30px!important;background:#0C1729!important;color:#fff!important;border-radius:2px!important;font-family:"Manrope",sans-serif!important;font-size:13px!important;font-weight:700!important;transition:transform .28s cubic-bezier(.16,1,.3,1),background .2s ease!important}
.ssgn-cta-btn .elementor-button:hover{transform:translateY(-2px)!important;background:#17364E!important}

@media (max-width:1023px){
  .ssgn-shell{padding-left:28px!important;padding-right:28px!important}
  .ssgn-hero{padding:84px 0 88px!important}
  .ssgn-hero-title .elementor-heading-title{font-size:48px!important}
  .ssgn-section-head{grid-template-columns:1fr!important;gap:18px!important;align-items:start!important}
  .ssgn-section-copy{justify-self:start!important}
  .ssgn-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ssgn-carousel .swiper-slide-image{height:360px!important}
}
@media (max-width:767px){
  .ssgn-shell{padding-left:20px!important;padding-right:20px!important}
  .ssgn-hero{padding:68px 0 72px!important}
  .ssgn-hero-title{margin-top:14px!important}
  .ssgn-hero-title .elementor-heading-title{font-size:40px!important;line-height:1.08!important}
  .ssgn-hero-copy{margin-top:20px!important}
  .ssgn-hero-copy,.ssgn-hero-copy *{font-size:16px!important;line-height:27px!important}
  .ssgn-moments,.ssgn-training{padding:64px 0 68px!important}
  .ssgn-section-head{margin-bottom:30px!important}
  .ssgn-section-title .elementor-heading-title{font-size:31px!important;line-height:1.18!important}
  .ssgn-section-copy,.ssgn-section-copy *{font-size:15px!important;line-height:25px!important}
  .ssgn-carousel .swiper-slide-image{height:290px!important}
  .ssgn-video-grid{grid-template-columns:1fr!important;gap:14px!important}
  .ssgn-video-meta{padding:18px 18px 14px!important}
  .ssgn-video-copy{padding:16px 18px 20px!important}
  .ssgn-cta{padding:46px 0!important}
  .ssgn-cta-shell{flex-direction:column!important;align-items:flex-start!important;gap:26px!important}
  .ssgn-cta-title .elementor-heading-title{font-size:28px!important}
  .ssgn-cta-btn,.ssgn-cta-btn .elementor-button-wrapper,.ssgn-cta-btn .elementor-button{width:100%!important}
}

/* APPROVED GALLERY HERO AND CTA FINISH (v3.2) */
/* Gallery-only consistency patch. Carousel and videos are intentionally untouched. */
body{overflow-x:hidden!important}
body .ssgn-section{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;overflow-x:clip!important}
body .ssgn-shell{width:min(100%,1280px)!important;max-width:1280px!important;margin-left:auto!important;margin-right:auto!important}

/* Keep the working native carousel clipped to the viewport; do not alter its styling/behavior. */
body .ssgn-carousel,
body .ssgn-carousel>.elementor-widget-container,
body .ssgn-carousel .elementor-image-carousel-wrapper,
body .ssgn-carousel .swiper,
body .ssgn-carousel .swiper-wrapper{max-width:100%!important}
body .ssgn-carousel .elementor-image-carousel-wrapper,
body .ssgn-carousel .swiper{overflow:hidden!important}

/* HERO — same scale/rhythm as the approved solid-navy About hero. */
body .ssgn-hero{
  background:#0C1729!important;
  color:#fff!important;
  padding:64px 0!important;
}
body .ssgn-hero .ssgn-eyebrow .elementor-heading-title{
  font-family:"Manrope",sans-serif!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:#9FCB39!important;
}
body .ssgn-hero-title{
  max-width:768px!important;
  margin-top:20px!important;
}
body .ssgn-hero-title .elementor-heading-title{
  font-family:"Sora",sans-serif!important;
  font-size:36px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:normal!important;
  color:#F8FBF5!important;
}
body .ssgn-hero-copy{
  max-width:672px!important;
  margin-top:28px!important;
}
body .ssgn-hero-copy,
body .ssgn-hero-copy .elementor-widget-container,
body .ssgn-hero-copy p{
  font-family:"Manrope",sans-serif!important;
  font-size:16px!important;
  line-height:32px!important;
  font-weight:400!important;
  color:rgba(248,251,245,.80)!important;
}

/* CTA — same approved green-band system used on the other pages. */
body .ssgn-cta{
  background:#9FCB39!important;
  color:#0C1729!important;
  padding:56px 0!important;
}
body .ssgn-cta-shell{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:24px!important;
  min-height:0!important;
}
body .ssgn-cta .ssgn-eyebrow .elementor-heading-title{
  font-family:"Manrope",sans-serif!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:#17364E!important;
}
body .ssgn-cta-title{
  margin-top:16px!important;
  max-width:672px!important;
}
body .ssgn-cta-title .elementor-heading-title{
  font-family:"Sora",sans-serif!important;
  font-size:30px!important;
  line-height:1.25!important;
  font-weight:600!important;
  letter-spacing:normal!important;
  color:#0C1729!important;
}
body .ssgn-cta-btn{
  width:max-content!important;
  max-width:100%!important;
  min-width:0!important;
  flex:0 0 auto!important;
  align-self:auto!important;
}
body .ssgn-cta-btn .elementor-widget-container,
body .ssgn-cta-btn .elementor-button-wrapper{
  width:auto!important;
  height:auto!important;
  line-height:1!important;
}
body .ssgn-cta-btn .elementor-button{
  width:auto!important;
  height:48px!important;
  min-height:48px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:0 32px!important;
  border:0!important;
  border-radius:4px!important;
  background:#0C1729!important;
  color:#F8FBF5!important;
  font-family:"Manrope",sans-serif!important;
  font-size:14px!important;
  line-height:20px!important;
  font-weight:500!important;
  box-shadow:none!important;
  white-space:nowrap!important;
  transform:none!important;
  transition:background-color .15s ease,color .15s ease,filter .15s ease!important;
}
body .ssgn-cta-btn .elementor-button:hover,
body .ssgn-cta-btn .elementor-button:focus{
  transform:none!important;
  background:#0C1729!important;
  filter:brightness(1.15)!important;
  color:#F8FBF5!important;
}
body .ssgn-cta-btn .elementor-button-icon{display:none!important}
body .ssgn-cta-btn .elementor-button::after{
  content:""!important;
  display:block!important;
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
  background:center/16px 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F8FBF5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7'/%3E%3Cpath d='M7 7h10v10'/%3E%3C/svg%3E")!important;
}

@media (min-width:640px){
  body .ssgn-hero{padding:96px 0!important}
  body .ssgn-hero-title .elementor-heading-title{font-size:60px!important}
  body .ssgn-hero-copy,
  body .ssgn-hero-copy .elementor-widget-container,
  body .ssgn-hero-copy p{font-size:18px!important;line-height:32px!important}
}
@media (min-width:768px){
  body .ssgn-cta-shell{
    flex-direction:row!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
  }
  body .ssgn-cta-btn{flex:0 0 auto!important}
}
@media (max-width:767px){
  body .ssgn-cta-btn,
  body .ssgn-cta-btn .elementor-widget-container,
  body .ssgn-cta-btn .elementor-button-wrapper,
  body .ssgn-cta-btn .elementor-button{width:100%!important}
}
