.elementor-249 .elementor-element.elementor-element-53c71cd{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-249 .elementor-element.elementor-element-8c3b973{--display:flex;}.elementor-widget-media-carousel .elementor-carousel-image-overlay{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-249 .elementor-element.elementor-element-7c60687.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-249 .elementor-element.elementor-element-7c60687 .elementor-main-swiper:not(.elementor-thumbnails-swiper){height:516px;}.elementor-249 .elementor-element.elementor-element-7c60687 .elementor-thumbnails-swiper .elementor-carousel-image{aspect-ratio:4 / 3;}.elementor-249 .elementor-element.elementor-element-7c60687 .elementor-swiper-button{font-size:20px;}.elementor-249 .elementor-element.elementor-element-27eebac{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-249 .elementor-element.elementor-element-7919c57{width:var( --container-widget-width, 22.473% );max-width:22.473%;--container-widget-width:22.473%;--container-widget-flex-grow:0;}.elementor-249 .elementor-element.elementor-element-7919c57.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-249 .elementor-element.elementor-element-096dc59{--display:flex;--flex-direction:row-reverse;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--align-items:center;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-249 .elementor-element.elementor-element-e0a9e93 .elementor-icon-wrapper{text-align:start;}.elementor-249 .elementor-element.elementor-element-e0a9e93 .elementor-icon{font-size:19px;}.elementor-249 .elementor-element.elementor-element-e0a9e93 .elementor-icon svg{height:19px;}.elementor-249 .elementor-element.elementor-element-925d890 .elementor-icon-wrapper{text-align:start;}.elementor-249 .elementor-element.elementor-element-925d890 .elementor-icon{font-size:19px;}.elementor-249 .elementor-element.elementor-element-925d890 .elementor-icon svg{height:19px;}.elementor-249 .elementor-element.elementor-element-3011fd1 .elementor-icon-wrapper{text-align:start;}.elementor-249 .elementor-element.elementor-element-3011fd1 .elementor-icon{font-size:19px;}.elementor-249 .elementor-element.elementor-element-3011fd1 .elementor-icon svg{height:19px;}.elementor-249 .elementor-element.elementor-element-bdb135d{text-align:end;}.elementor-249 .elementor-element.elementor-element-bdb135d .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:12px;font-weight:600;}.elementor-249 .elementor-element.elementor-element-2b341f1{--display:flex;--flex-direction:row-reverse;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--align-items:flex-start;}.elementor-249 .elementor-element.elementor-element-2b341f1.e-con{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-249 .elementor-element.elementor-element-99057bd.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-249 .elementor-element.elementor-element-99057bd .elementor-button-content-wrapper{flex-direction:row;}.elementor-widget-paypal-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-paypal-button .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-249 .elementor-element.elementor-element-8bb267b .elementor-button{background-color:#032E82;fill:#FFF;color:#FFF;border-style:none;}.elementor-249 .elementor-element.elementor-element-8bb267b .elementor-button-content-wrapper{flex-direction:row;}.elementor-249 .elementor-element.elementor-element-0ab17be{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;}.elementor-249 .elementor-element.elementor-element-7a210fe.elementor-element{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-249 .elementor-element.elementor-element-2b341f1{--width:100%;}}@media(max-width:1024px){.elementor-249 .elementor-element.elementor-element-7c60687.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}}@media(max-width:767px){.elementor-249 .elementor-element.elementor-element-7c60687.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}}/* Start custom CSS for container, class: .elementor-element-8c3b973 *//* ==========================================================
   SHIROHANA – Media Carousel Glass Frame
   Safe: does NOT affect image sizing or layout
   ========================================================== */

.sh-media-glass{
  position: relative;
  border-radius: 22px;
  padding: 14px;

  background: rgba(10, 12, 18, 0.35);
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);

  border: 1px solid rgba(255,255,255,0.10);

  box-shadow:
    0 20px 70px rgba(0,0,0,0.65),
    inset 0 1px 0 rgba(255,255,255,0.06);

  overflow: hidden;
}

/* Subtle animated cosmic edge */
.sh-media-glass::before{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;

  background: linear-gradient(90deg,
    rgba(185,140,255,0.55),
    rgba(240,240,255,0.45),
    rgba(255,215,160,0.30),
    rgba(185,140,255,0.55)
  );
  background-size: 300% 300%;

  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;

  pointer-events: none;
  opacity: 0.7;

  animation: shMediaBorder 24s ease-in-out infinite;
}

/* Soft inner sheen */
.sh-media-glass::after{
  content:"";
  position:absolute;
  inset: 1px;
  border-radius: inherit;

  background:
    radial-gradient(120% 160% at 20% 20%,
      rgba(255,255,255,0.12),
      transparent 65%),
    linear-gradient(180deg,
      rgba(255,255,255,0.05),
      transparent 40%,
      rgba(0,0,0,0.12));

  pointer-events:none;
}

/* Border drift animation */
@keyframes shMediaBorder{
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-99057bd *//* =========================
   Shirohana Unified Button
   Ghost → Glow on Hover
   ========================= */

.sh-button .elementor-button {
  position: relative;
  padding: 14px 28px !important;

  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.3px;

  color: #ffffff !important;

  background: rgba(20, 18, 35, 0.45) !important;
  backdrop-filter: blur(6px);

  border: 1px solid rgba(180,150,255,0.35) !important;
  border-radius: 999px !important;

  box-shadow: none !important;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: auto !important;
  white-space: nowrap;

  transition:
    background 0.25s ease,
    box-shadow 0.25s ease,
    transform 0.25s ease,
    border-color 0.25s ease;
}

/* Hover: glow reveal */
.sh-button .elementor-button:hover {
  background: linear-gradient(
    135deg,
    rgba(160,120,255,0.95),
    rgba(110,80,220,0.95)
  ) !important;

  border-color: rgba(220,200,255,0.8) !important;

  transform: translateY(-1px);

  box-shadow:
    0 10px 34px rgba(160,120,255,0.45),
    inset 0 0 18px rgba(255,255,255,0.08) !important;
}

/* Active / click */
.sh-button .elementor-button:active {
  transform: translateY(0);
  box-shadow:
    0 6px 18px rgba(120,90,220,0.35) !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-7a210fe *//* =========================
   Shirohana Unified Button
   Ghost → Glow on Hover
   ========================= */

.sh-button .elementor-button {
  position: relative;
  padding: 14px 28px !important;

  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.3px;

  color: #ffffff !important;

  background: rgba(20, 18, 35, 0.45) !important;
  backdrop-filter: blur(6px);

  border: 1px solid rgba(180,150,255,0.35) !important;
  border-radius: 999px !important;

  box-shadow: none !important;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: auto !important;
  white-space: nowrap;

  transition:
    background 0.25s ease,
    box-shadow 0.25s ease,
    transform 0.25s ease,
    border-color 0.25s ease;
}

/* Hover: glow reveal */
.sh-button .elementor-button:hover {
  background: linear-gradient(
    135deg,
    rgba(160,120,255,0.95),
    rgba(110,80,220,0.95)
  ) !important;

  border-color: rgba(220,200,255,0.8) !important;

  transform: translateY(-1px);

  box-shadow:
    0 10px 34px rgba(160,120,255,0.45),
    inset 0 0 18px rgba(255,255,255,0.08) !important;
}

/* Active / click */
.sh-button .elementor-button:active {
  transform: translateY(0);
  box-shadow:
    0 6px 18px rgba(120,90,220,0.35) !important;
}/* End custom CSS */