.elementor-64155 .elementor-element.elementor-element-c14995d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:30px 0px;--row-gap:30px;--column-gap:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:50px;--padding-right:50px;}.elementor-64155 .elementor-element.elementor-element-c14995d:not(.elementor-motion-effects-element-type-background), .elementor-64155 .elementor-element.elementor-element-c14995d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(90deg, #FFFFFF 0%, #DFEEFF 100%);}.elementor-64155 .elementor-element.elementor-element-ec988fa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:30px 0px;--row-gap:30px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-64155 .elementor-element.elementor-element-f5f0a9b{text-align:center;padding:0px 0px 0px 20px;width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;z-index:5;}.elementor-64155 .elementor-element.elementor-element-f5f0a9b .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:72px;font-weight:700;line-height:80px;color:#000000;}.elementor-64155 .elementor-element.elementor-element-f5f0a9b.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.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-64155 .elementor-element.elementor-element-ad2e236{text-align:center;font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:500;text-transform:none;font-style:normal;text-decoration:none;line-height:24px;letter-spacing:0px;word-spacing:0em;color:#000000;padding:0% 0% 0% 0%;width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-64155 .elementor-element.elementor-element-ad2e236 p{margin-block-end:20px;}.elementor-64155 .elementor-element.elementor-element-ad2e236.elementor-element{--align-self:center;}.elementor-widget-portfolio a .elementor-portfolio-item__overlay{background-color:var( --e-global-color-accent );}.elementor-widget-portfolio .elementor-portfolio-item__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-portfolio .elementor-portfolio__filter{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-portfolio .elementor-portfolio__filter.elementor-active{color:var( --e-global-color-primary );}.elementor-64155 .elementor-element.elementor-element-ccfd292 .elementor-post__thumbnail__link{padding-bottom:calc( 0.66 * 100% );}.elementor-64155 .elementor-element.elementor-element-ccfd292:after{content:"0.66";position:absolute;color:transparent;}.elementor-64155 .elementor-element.elementor-element-ccfd292{--grid-column-gap:20px;--grid-row-gap:20px;}.elementor-64155 .elementor-element.elementor-element-ccfd292 .elementor-portfolio-item__img, .elementor-64155 .elementor-element.elementor-element-ccfd292 .elementor-portfolio-item__overlay{border-radius:8px 8px 8px 8px;}.elementor-64155 .elementor-element.elementor-element-ccfd292 a .elementor-portfolio-item__overlay{background-color:#000000BA;}.elementor-64155 .elementor-element.elementor-element-ccfd292 a .elementor-portfolio-item__title{color:#FFFFFF;}.elementor-64155 .elementor-element.elementor-element-ccfd292 .elementor-portfolio-item__title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;line-height:28px;}.elementor-64155 .elementor-element.elementor-element-ccfd292 > .elementor-widget-container{margin:50px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-64155 .elementor-element.elementor-element-d5b87f6 > .elementor-widget-container{margin:50px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-64155 .elementor-element.elementor-element-d5b87f6.elementor-element{--align-self:center;}@media(min-width:768px){.elementor-64155 .elementor-element.elementor-element-ec988fa{--content-width:1600px;}}@media(max-width:1024px){.elementor-64155 .elementor-element.elementor-element-c14995d{--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-64155 .elementor-element.elementor-element-ec988fa{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-64155 .elementor-element.elementor-element-f5f0a9b{text-align:start;padding:0px 0px 0px 0px;--container-widget-width:1000px;--container-widget-flex-grow:0;width:var( --container-widget-width, 1000px );max-width:1000px;}.elementor-64155 .elementor-element.elementor-element-f5f0a9b .elementor-heading-title{font-size:48px;line-height:58px;}.elementor-64155 .elementor-element.elementor-element-ad2e236{text-align:start;font-size:18px;line-height:28px;}.elementor-64155 .elementor-element.elementor-element-ccfd292 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-64155 .elementor-element.elementor-element-c14995d{--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-64155 .elementor-element.elementor-element-ec988fa{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-64155 .elementor-element.elementor-element-f5f0a9b{text-align:start;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-64155 .elementor-element.elementor-element-f5f0a9b .elementor-heading-title{font-size:32px;line-height:38px;}.elementor-64155 .elementor-element.elementor-element-f5f0a9b.elementor-element{--align-self:center;}.elementor-64155 .elementor-element.elementor-element-ad2e236{text-align:start;font-size:18px;line-height:28px;--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-64155 .elementor-element.elementor-element-ccfd292 .elementor-portfolio-item__title{font-size:20px;}.elementor-64155 .elementor-element.elementor-element-ccfd292 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for heading, class: .elementor-element-f5f0a9b */.accent-word { 
  background: linear-gradient(90deg, #EA5400 0%, #2563EB 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}/* End custom CSS */
/* Start custom CSS for portfolio, class: .elementor-element-ccfd292 *//* ============================================================
   SOFT BOTTOM BLEND SHADOW — NATURAL FADE (NO RECTANGLE)
============================================================ */
.elementor-portfolio .elementor-portfolio-item .elementor-portfolio-item__overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  display: block !important;

  /* NEW premium smooth bottom fade */
  background: linear-gradient(
    to top,
    rgba(0,0,0,0.75) 0%,      /* strongest at bottom */
    rgba(0,0,0,0.45) 22%,     /* smooth upward fade */
    rgba(0,0,0,0.20) 45%,
    rgba(0,0,0,0.00) 70%      /* fully blended */
  ) !important;

  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  padding: 0 !important;
  transition: background .3s ease-in-out;
}


/* ============================================================
   TITLE — HIGH READABILITY + PERFECT 2-LINE CLAMP
============================================================ */
.elementor-portfolio .elementor-portfolio-item .elementor-portfolio-item__title {
  position: absolute;
  bottom: 44px; /* space for button */
  left: 16px;
  margin: 0;
  padding: 2px 0;

  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.28;
  text-align: left;

  /* Perfect 2-line ellipsis */
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;

  max-height: calc(1.28em * 2);
  max-width: calc(100% - 32px);

  pointer-events: none;

  /* Updated: soft glow ONLY around text (no rectangle) */
  text-shadow:
    0 1px 2px rgba(0,0,0,0.85),
    0 2px 5px rgba(0,0,0,0.65);

  /* Removed drop-shadow to stop rectangle effect */
  filter: none !important;

  margin-bottom: 15px !important;
}


/* ============================================================
   HOVER — BRIGHTEN IMAGE ONLY
============================================================ */
.elementor-portfolio .elementor-portfolio-item:hover img {
  filter: brightness(1.15);
  transition: filter .3s ease-in-out;
}


/* ============================================================
   CSS-ONLY READ MORE BUTTON
============================================================ */
.elementor-portfolio .elementor-portfolio-item .elementor-portfolio-item__overlay::after {
  content: "Read More →";

  position: absolute;
  left: 16px;
  bottom: 12px;

  display: inline-block;
  padding: 6px 14px;

  font-size: 14px;
  font-weight: 500;
  color: #ffffff;

  border-radius: 999px;
  background: rgba(0,0,0,0.45);
  border: 1px solid rgba(255,255,255,0.55);
  backdrop-filter: blur(3px);

  box-shadow: 0 4px 12px rgba(0,0,0,0.55);

  transition:
    background .25s ease,
    border-color .25s ease,
    transform .25s ease,
    box-shadow .25s ease;
}

.elementor-portfolio .elementor-portfolio-item:hover .elementor-portfolio-item__overlay::after {
  background: rgba(0,0,0,0.7);
  border-color: #ffffff;
  box-shadow: 0 6px 18px rgba(0,0,0,0.65);
  transform: translateY(-1px);
}


/* ============================================================
   RESPONSIVE — MOBILE
============================================================ */
@media (max-width: 767px) {

  /* Title adjustments */
  .elementor-portfolio .elementor-portfolio-item .elementor-portfolio-item__title {
    font-size: 16px;
    bottom: 40px;
    left: 12px;
    max-width: calc(100% - 24px);
    margin-bottom: 10px !important;

    text-shadow:
      0 1px 2px rgba(0,0,0,0.9),
      0 2px 4px rgba(0,0,0,0.65);
  }

  /* Button adjustments */
  .elementor-portfolio .elementor-portfolio-item .elementor-portfolio-item__overlay::after {
    left: 12px;
    bottom: 8px;
    padding: 5px 12px;
    font-size: 13px;
  }
}/* End custom CSS */
/* Start custom CSS for retouching-button, class: .elementor-element-d5b87f6 */.hero-btn .rul-button {
    background: linear-gradient(72deg, #211E1F 0%, #641F9D 50%, #EA5400 100%) !important;
}

.hero-btn .rul-button:hover {
    background: linear-gradient(72deg, #2B2729 0%, #7628C1 50%, #FF6A1C 100%) !important;
}/* End custom CSS */