.elementor-13607 .elementor-element.elementor-element-760393f{--display:flex;--min-height:450px;--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;--justify-content:center;--align-items:center;--overlay-opacity:0.5;--border-radius:-5px -5px -5px -5px;--margin-top:0px;--margin-bottom:-12px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:41px;--padding-left:56px;--padding-right:56px;}.elementor-13607 .elementor-element.elementor-element-760393f:not(.elementor-motion-effects-element-type-background), .elementor-13607 .elementor-element.elementor-element-760393f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;background-image:url("https://maikebalitour.com/wp-content/uploads/2026/10/Serene-Balinese-Temple-by-the-Lake.png");background-position:center center;background-size:cover;}.elementor-13607 .elementor-element.elementor-element-760393f::before, .elementor-13607 .elementor-element.elementor-element-760393f > .elementor-background-video-container::before, .elementor-13607 .elementor-element.elementor-element-760393f > .e-con-inner > .elementor-background-video-container::before, .elementor-13607 .elementor-element.elementor-element-760393f > .elementor-background-slideshow::before, .elementor-13607 .elementor-element.elementor-element-760393f > .e-con-inner > .elementor-background-slideshow::before, .elementor-13607 .elementor-element.elementor-element-760393f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-13607 .elementor-element.elementor-element-49c9600{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13607 .elementor-element.elementor-element-3b264e3{--display:flex;--min-height:0px;--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;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:2px;--padding-left:25px;--padding-right:0px;}.elementor-13607 .elementor-element.elementor-element-f232bc5{--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;--justify-content:center;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-13607 .elementor-element.elementor-element-f232bc5.e-con{--flex-grow:0;--flex-shrink:0;}.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-13607 .elementor-element.elementor-element-d9d85cd .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:13px;font-weight:500;line-height:1.08em;}.elementor-13607 .elementor-element.elementor-element-4cc3793 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-13607 .elementor-element.elementor-element-4cc3793{text-align:start;}.elementor-13607 .elementor-element.elementor-element-4cc3793 .elementor-heading-title{font-family:"DM Serif Display", Sans-serif;font-size:55px;font-weight:500;line-height:1.08em;color:#FFFFFF;}.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-13607 .elementor-element.elementor-element-2e4fc28{font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:500;line-height:1.65em;color:#F7F1E7;}.elementor-13607 .elementor-element.elementor-element-fac8b83{--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;--margin-top:-11px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13607 .elementor-element.elementor-element-f8530b9{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-13607 .elementor-element.elementor-element-aed7297{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-13607 .elementor-element.elementor-element-2ca2236{--display:flex;}.elementor-13607 .elementor-element.elementor-element-35b5f48 .elementor-heading-title{font-family:"DM Serif Display", Sans-serif;font-size:50px;font-weight:500;color:#000000;}.elementor-13607 .elementor-element.elementor-element-bce8276{--display:flex;}.elementor-13607 .elementor-element.elementor-element-c792141{font-family:"DM Sans", Sans-serif;font-size:16px;color:#000000;}.elementor-13607 .elementor-element.elementor-element-bec2012{--display:flex;}.elementor-widget-loop-grid .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-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-13607 .elementor-element.elementor-element-566a31e{--grid-columns:3;}.elementor-13607 .elementor-element.elementor-element-566a31e .elementor-loop-container{grid-auto-rows:1fr;}.elementor-13607 .elementor-element.elementor-element-566a31e .e-loop-item > .elementor-section, .elementor-13607 .elementor-element.elementor-element-566a31e .e-loop-item > .elementor-section > .elementor-container, .elementor-13607 .elementor-element.elementor-element-566a31e .e-loop-item > .e-con, .elementor-13607 .elementor-element.elementor-element-566a31e .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-13607 .elementor-element.elementor-element-6d00af6{--display:flex;--min-height:0px;--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;--border-radius:10px 10px 10px 10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-13607 .elementor-element.elementor-element-b1092d6{--display:flex;--min-height:350px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:50px 50px 50px 50px;box-shadow:0px 2px 5px 0px rgba(178, 34.00000000000002, 34.00000000000002, 0.34);--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13607 .elementor-element.elementor-element-f525e5e{--display:flex;--border-radius:50px 0px 0px 50px;}.elementor-13607 .elementor-element.elementor-element-f525e5e:not(.elementor-motion-effects-element-type-background), .elementor-13607 .elementor-element.elementor-element-f525e5e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://maikebalitour.com/wp-content/uploads/2025/03/Desa-Pinggan-Kintamani_mikevisua-e1741676347109.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-13607 .elementor-element.elementor-element-68f937d{--display:flex;--justify-content:center;--border-radius:0px 50px 50px 0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-13607 .elementor-element.elementor-element-68f937d:not(.elementor-motion-effects-element-type-background), .elementor-13607 .elementor-element.elementor-element-68f937d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#009CE7;}.elementor-13607 .elementor-element.elementor-element-6fa4883.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-13607 .elementor-element.elementor-element-6fa4883 .elementor-heading-title{font-family:"DM Serif Display", Sans-serif;font-size:40px;font-weight:500;color:#FFFFFF;}.elementor-13607 .elementor-element.elementor-element-df02ecb > .elementor-widget-container{margin:-10px 0px 0px 0px;}.elementor-13607 .elementor-element.elementor-element-df02ecb{text-align:start;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:400;text-shadow:0px 0px 10px rgba(0,0,0,0.3);color:#FFFFFF;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-13607 .elementor-element.elementor-element-1633619 .elementor-icon-list-icon i{color:#FFFFFF;transition:color 0.3s;}.elementor-13607 .elementor-element.elementor-element-1633619 .elementor-icon-list-icon svg{fill:#FFFFFF;transition:fill 0.3s;}.elementor-13607 .elementor-element.elementor-element-1633619{--e-icon-list-icon-size:19px;--icon-vertical-offset:0px;}.elementor-13607 .elementor-element.elementor-element-1633619 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-13607 .elementor-element.elementor-element-1633619 .elementor-icon-list-item > a{font-family:"DM Sans", Sans-serif;font-size:15px;font-weight:400;}.elementor-13607 .elementor-element.elementor-element-1633619 .elementor-icon-list-text{color:#FFFFFF;transition:color 0.3s;}.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-13607 .elementor-element.elementor-element-953a72d .elementor-button{background-color:#009CE70A;font-family:"DM Sans", Sans-serif;font-size:15px;font-weight:500;border-style:solid;border-width:1px 1px 1px 1px;border-radius:10px 10px 10px 10px;padding:15px 15px 15px 15px;}.elementor-13607 .elementor-element.elementor-element-953a72d .elementor-button-content-wrapper{flex-direction:row-reverse;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-13607 .elementor-element.elementor-element-760393f{--width:100%;}.elementor-13607 .elementor-element.elementor-element-3b264e3{--content-width:100%;}.elementor-13607 .elementor-element.elementor-element-f232bc5{--width:87.366%;}.elementor-13607 .elementor-element.elementor-element-f525e5e{--width:40%;}.elementor-13607 .elementor-element.elementor-element-68f937d{--width:60%;}}@media(max-width:1024px) and (min-width:768px){.elementor-13607 .elementor-element.elementor-element-f232bc5{--width:72%;}}@media(min-width:1025px){.elementor-13607 .elementor-element.elementor-element-760393f:not(.elementor-motion-effects-element-type-background), .elementor-13607 .elementor-element.elementor-element-760393f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:1024px){.elementor-13607 .elementor-element.elementor-element-760393f{--min-height:349px;--padding-top:82px;--padding-bottom:68px;--padding-left:30px;--padding-right:30px;}.elementor-13607 .elementor-element.elementor-element-3b264e3{--padding-top:0px;--padding-bottom:0px;--padding-left:22px;--padding-right:22px;}.elementor-13607 .elementor-element.elementor-element-d9d85cd .elementor-heading-title{font-size:18px;}.elementor-13607 .elementor-element.elementor-element-4cc3793 .elementor-heading-title{font-size:50px;}.elementor-13607 .elementor-element.elementor-element-2e4fc28{font-size:14px;}.elementor-13607 .elementor-element.elementor-element-566a31e{--grid-columns:2;}}@media(max-width:767px){.elementor-13607 .elementor-element.elementor-element-760393f{--padding-top:62px;--padding-bottom:58px;--padding-left:18px;--padding-right:18px;}.elementor-13607 .elementor-element.elementor-element-49c9600{--padding-top:70px;--padding-bottom:36px;--padding-left:0px;--padding-right:0px;}.elementor-13607 .elementor-element.elementor-element-3b264e3{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-13607 .elementor-element.elementor-element-f232bc5{--width:100%;}.elementor-13607 .elementor-element.elementor-element-d9d85cd .elementor-heading-title{font-size:14px;}.elementor-13607 .elementor-element.elementor-element-4cc3793 .elementor-heading-title{font-size:42px;}.elementor-13607 .elementor-element.elementor-element-2e4fc28{font-size:14px;}.elementor-13607 .elementor-element.elementor-element-35b5f48 .elementor-heading-title{font-size:40px;}.elementor-13607 .elementor-element.elementor-element-566a31e{--grid-columns:1;}.elementor-13607 .elementor-element.elementor-element-566a31e > .elementor-widget-container{margin:0px 0px 47px 0px;}.elementor-13607 .elementor-element.elementor-element-6d00af6{--content-width:90%;--border-radius:8px 8px 8px 8px;}.elementor-13607 .elementor-element.elementor-element-f525e5e{--min-height:170px;--border-radius:20px 20px 0px 0px;}.elementor-13607 .elementor-element.elementor-element-68f937d{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--border-radius:0px 00px 20px 20px;}.elementor-13607 .elementor-element.elementor-element-6fa4883{width:var( --container-widget-width, 275.5px );max-width:275.5px;--container-widget-width:275.5px;--container-widget-flex-grow:0;}.elementor-13607 .elementor-element.elementor-element-6fa4883 .elementor-heading-title{font-size:40px;}.elementor-13607 .elementor-element.elementor-element-df02ecb{font-size:14px;}.elementor-13607 .elementor-element.elementor-element-1633619 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-13607 .elementor-element.elementor-element-1633619 .elementor-icon-list-item > a{font-size:14px;}.elementor-13607 .elementor-element.elementor-element-953a72d .elementor-button{font-size:14px;}}/* Start custom CSS for container, class: .elementor-element-49c9600 *//* ============================================================
PUTU BALI TOUR — RIGHT VISUAL / PHOTO COLLAGE ONLY
Extracted from the Heritage Luxury collage design

CLASSES
.coastal-hero-collage__right
.coastal-hero-collage__photo-main
.coastal-hero-collage__photo-top
.coastal-hero-collage__photo-bottom
.coastal-hero-collage__glass
.coastal-hero-collage__glass-text
============================================================ */

.elementor-13607 .elementor-element.elementor-element-49c9600{
  --hero-maroon:#6D1F24;
  --hero-maroon-dark:#57181D;
  --hero-red:#A83832;
  --hero-red-dark:#8E2B2C;
  --hero-brick:#C85B4A;
  --hero-gold:#D7A44A;
  --hero-ivory:#F7F1E7;
  --hero-blush:#EAD8D2;
  --hero-charcoal:#2B2523;
  --hero-white:#FFFFFF;

  --hero-photo-frame:#F7F1E7;

  --hero-shadow-main:
    0 30px 68px rgba(65,27,27,.30);

  --hero-shadow-float:
    0 17px 36px rgba(65,27,27,.22);

  --hero-tr:
    .56s cubic-bezier(.2,.72,.2,1);
}


/* ============================================================
01. RIGHT VISUAL WRAPPER
============================================================ */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right{
  position:relative;
  z-index:3!important;

  min-width:0;
  max-width:100%;
  box-sizing:border-box;

  overflow:visible!important;
}


/* soft abstract capsule behind photos */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right::before{
  content:"";

  position:absolute;

  top:2%;
  left:14%;

  width:70%;
  height:96%;

  z-index:0;

  border-radius:
    48% 48% 44% 44% / 18% 18% 38% 38%;

  background:
    linear-gradient(
      145deg,
      rgba(234,216,210,.11),
      rgba(255,255,255,.025)
    );

  border:
    1px solid rgba(215,164,74,.17);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 18px 48px rgba(65,27,27,.035);

  pointer-events:none;
}


/* luxury L frame */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right::after{
  content:"";

  position:absolute;

  top:13%;
  left:28%;

  width:48%;
  height:72%;

  z-index:1;

  border-right:
    2px solid rgba(215,164,74,.76);

  border-bottom:
    2px solid rgba(200,91,74,.58);

  border-radius:
    0 0 38px 0;

  pointer-events:none;
}


/* ============================================================
02. ALL PHOTO CONTAINERS
============================================================ */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-main,
.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-top,
.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-bottom{
  position:absolute;

  max-width:100%;
  box-sizing:border-box;

  overflow:hidden!important;

  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;

  transition:
    transform var(--hero-tr),
    box-shadow var(--hero-tr);
}


/* ============================================================
03. MAIN PHOTO
============================================================ */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-main{
  top:8%;
  left:27%;

  width:50%;
  height:74%;

  right:auto;
  bottom:auto;

  z-index:2!important;

  border:
    7px solid var(--hero-photo-frame)!important;

  border-radius:
    36px 36px 116px 36px!important;

  box-shadow:
    0 30px 68px rgba(65,27,27,.30),
    0 0 0 1px rgba(215,164,74,.09)!important;
}


/* inner frame */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-main::before{
  content:"";

  position:absolute;
  inset:10px;

  pointer-events:none;

  border:
    1px solid rgba(247,241,231,.52);

  border-radius:
    27px 27px 104px 27px;
}


/* top accent */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-main::after{
  content:"";

  position:absolute;

  top:0;
  left:22px;

  width:54px;
  height:3px;

  border-radius:
    0 0 999px 999px;

  background:
    linear-gradient(
      90deg,
      #D7A44A 0%,
      #D7A44A 42%,
      #C85B4A 78%,
      rgba(200,91,74,.14) 100%
    );
}


/* ============================================================
04. BOTTOM OVERLAP PHOTO
============================================================ */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-bottom{
  left:8%;
  bottom:5%;

  width:41%;
  height:33%;

  top:auto;
  right:auto;

  z-index:7!important;

  border:
    9px solid var(--hero-photo-frame)!important;

  border-radius:
    25px 25px 44px 25px!important;

  box-shadow:
    0 17px 36px rgba(65,27,27,.22),
    0 0 0 5px rgba(215,164,74,.025)!important;

  outline:
    1px solid rgba(168,56,50,.20)!important;

  outline-offset:
    7px;

  transform:
    rotate(-.30deg);
}


/* bottom inner frame */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-bottom::before{
  content:"";

  position:absolute;
  inset:7px;

  pointer-events:none;

  border:
    1px solid rgba(247,241,231,.50);

  border-radius:
    18px 18px 35px 18px;
}


/* ============================================================
05. TOP PHOTO
============================================================ */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-top{
  top:1%;
  right:7%;

  width:30%;
  height:19%;

  left:auto;
  bottom:auto;

  z-index:8!important;

  border:
    6px solid var(--hero-photo-frame)!important;

  border-radius:
    21px 21px 37px 21px!important;

  outline:
    1px solid rgba(215,164,74,.14);

  outline-offset:
    4px;

  box-shadow:
    0 17px 36px rgba(65,27,27,.21)!important;

  transform:
    rotate(.6deg);
}


/* ============================================================
06. FLOATING LABEL
============================================================ */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass{
  position:absolute;

  top:auto;
  left:auto;
  right:3%;
  bottom:14%;

  z-index:10!important;

  width:22%;
  max-width:175px;
  min-width:145px;

  display:block!important;

  padding:
    10px 12px;

  border:
    1px solid rgba(215,164,74,.21)!important;

  border-radius:
    14px 14px 22px 14px!important;

  background:
    linear-gradient(
      145deg,
      rgba(109,31,36,.84),
      rgba(87,24,29,.70)
    )!important;

  box-shadow:
    0 16px 34px rgba(65,27,27,.24),
    inset 0 1px 0 rgba(255,255,255,.055)!important;

  -webkit-backdrop-filter:blur(13px);
  backdrop-filter:blur(13px);

  transition:
    transform var(--hero-tr),
    box-shadow var(--hero-tr),
    border-color var(--hero-tr);
}


/* top accent */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass::before{
  content:"";

  position:absolute;

  top:0;
  left:12px;

  width:32px;
  height:2px;

  border-radius:
    0 0 999px 999px;

  background:
    linear-gradient(
      90deg,
      #D7A44A,
      #C85B4A
    );

  transition:
    width .42s ease;
}


/* connector line */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass::after{
  content:"";

  position:absolute;

  top:50%;
  left:-22px;

  width:22px;
  height:1px;

  transform:
    translateY(-50%);

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(215,164,74,.68)
    );

  opacity:.55;
}


.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass .elementor-heading-title{
  color:#FFFFFF!important;

  font-size:
    clamp(15px,1.05vw,18px)!important;

  line-height:
    1.14!important;

  margin:0;
}


.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass-text{
  width:100%;
  margin-top:5px;
}


.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass-text,
.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass-text p{
  color:
    rgba(247,241,231,.72)!important;

  font-size:
    9.5px!important;

  line-height:
    1.42!important;

  margin:0;
}


/* max 2 lines */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass-text .elementor-widget-container,
.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass-text p{
  display:
    -webkit-box!important;

  -webkit-box-orient:
    vertical!important;

  -webkit-line-clamp:
    2!important;

  overflow:
    hidden!important;
}


/* ============================================================
07. PHOTO HOVER
============================================================ */

.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right:hover
.coastal-hero-collage__photo-main{
  transform:
    translateY(-3px);

  box-shadow:
    0 35px 76px rgba(65,27,27,.34),
    0 0 0 1px rgba(215,164,74,.14)!important;
}


.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right:hover
.coastal-hero-collage__photo-bottom{
  transform:
    rotate(0deg)
    translateY(3px);

  box-shadow:
    0 22px 42px rgba(65,27,27,.26),
    0 0 0 5px rgba(168,56,50,.025)!important;
}


.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right:hover
.coastal-hero-collage__photo-top{
  transform:
    rotate(.15deg)
    translateY(-4px);

  box-shadow:
    0 22px 42px rgba(65,27,27,.25)!important;
}


.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass:hover{
  transform:
    translateY(-4px);

  border-color:
    rgba(215,164,74,.30)!important;

  box-shadow:
    0 20px 40px rgba(65,27,27,.30),
    inset 0 1px 0 rgba(255,255,255,.065)!important;
}


.elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass:hover::before{
  width:58px;
}


/* ============================================================
08. TABLET
============================================================ */

@media(max-width:1024px){

  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right{
    min-height:
      640px!important;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass{
    right:3%;
    bottom:12%;

    width:21%;
    max-width:165px;
    min-width:140px;

    padding:
      9px 11px;
  }

}


/* ============================================================
09. MOBILE
============================================================ */

@media(max-width:767px){

  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right{
    min-height:
      510px!important;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right::before{
    top:4%;
    left:8%;

    width:78%;
    height:92%;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right::after{
    top:16%;
    left:22%;

    width:57%;
    height:64%;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-main{
    top:10%!important;
    left:23%!important;

    width:59%!important;
    height:67%!important;

    border-width:
      5px!important;

    border-radius:
      27px 27px 74px 27px!important;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-bottom{
    left:3%!important;
    bottom:5%!important;

    width:46%!important;
    height:29%!important;

    border-width:
      6px!important;

    outline-offset:
      4px;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__photo-top{
    top:2%!important;
    right:3%!important;

    width:32%!important;
    height:17%!important;

    border-width:
      4px!important;

    outline-offset:
      2px;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass{
    right:3%;
    bottom:8%;

    width:34%;
    max-width:132px;
    min-width:0;

    padding:
      8px 9px;

    border-radius:
      12px 12px 18px 12px!important;

    background:
      linear-gradient(
        145deg,
        rgba(109,31,36,.89),
        rgba(87,24,29,.78)
      )!important;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass .elementor-heading-title{
    font-size:
      14px!important;

    line-height:
      1.12!important;
  }


  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass-text,
  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__glass-text p{
    font-size:
      8.8px!important;

    line-height:
      1.38!important;
  }

}


/* ============================================================
10. REDUCED MOTION
============================================================ */

@media(prefers-reduced-motion:reduce){

  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right *,
  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right *::before,
  .elementor-13607 .elementor-element.elementor-element-49c9600 .coastal-hero-collage__right *::after{
    animation:none!important;
    transition:none!important;
  }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-760393f *//* ============================================================
   ============================================================
   CV BALINGKANG PARADISE
   PAGE HERO (halaman dalam) — "AZURE BANNER" V26

   DIPASANG DI:
   Section / Container hero halaman dalam
   Advanced > Custom CSS

   CLASS TETAP SAMA:
   pt-hero / pt-hero-shell / pt-hero-copy
   pt-hero-eyebrow / pt-hero-title / pt-hero-title-accent
   pt-hero-text / pt-primary-btn / pt-hero-secondary
   pt-hero-trust / pt-mini-trust

   ------------------------------------------------------------
   PERUBAHAN v25 — DISELARASKAN DENGAN HERO HOME
   ------------------------------------------------------------
   - Pita bernomor "02" DIHAPUS.
     Diganti RAIL VERTIKAL polos bergradasi biru,
     persis seperti hero home.
   - Bingkai arch di dalam hero DIHAPUS.
   - Watermark outline DIHAPUS.
   - Orbit ring putus-putus diganti GLOW BULAT lembut
     yang bernafas pelan, sama seperti hero home.
   - Eyebrow kembali ke kapsul bulat penuh (999px),
     PERSIS seperti hero home: tanpa titik bulat
     di sebelah kiri teks (v26).
   - Garis bawah judul kembali sederhana: melebar
     saat hover, tanpa animasi menyapu.
   - Tombol memakai radius 12px seperti hero home.

   Hasilnya: hero halaman dalam terasa satu keluarga
   dengan hero home, hanya lebih ringkas dan memakai
   foto latar.

   ------------------------------------------------------------
   TIPOGRAFI TIDAK DIKUNCI
   ------------------------------------------------------------
   Semua aturan font dibungkus :where() -> spesifisitas NOL.
   Panel Elementor (Style > Typography / Text Color)
   SELALU menang.
   ============================================================
   ============================================================ */


/* ============================================================
   01. PUSAT KENDALI
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f{

    /* nama variabel lama dipertahankan */

    --pt-maroon:#063A5E;        /* Navy      */
    --pt-maroon-dark:#041E33;   /* Navy Dark */

    --pt-red:#1E8FD6;           /* Azure     */
    --pt-red-dark:#0A5C8F;      /* Ocean     */

    --pt-brick:#0A5C8F;

    --pt-gold:#4DC0FF;          /* Sky — aksen utama */
    --pt-gold-light:#8BD8FF;

    --pt-ivory:#EAF4FC;
    --pt-blush:#D7ECF9;

    --pt-charcoal:#10222F;
    --pt-white:#FFFFFF;

    --pt-line:rgba(77,192,255,.28);

    --pt-glass:rgba(255,255,255,.075);

    --pt-shadow:
        0 22px 54px rgba(4,30,51,.28);

    --pt-shadow-strong:
        0 30px 72px rgba(4,30,51,.40);

    /* font default — bisa ditimpa panel */
    --pt-font-display:"DM Serif Display",Georgia,serif;
    --pt-font-body:"Poppins",-apple-system,BlinkMacSystemFont,sans-serif;

    --pt-ease:cubic-bezier(.22,.72,.2,1);

    position:relative;

    color:var(--pt-charcoal);
}


.elementor-13607 .elementor-element.elementor-element-760393f *,
.elementor-13607 .elementor-element.elementor-element-760393f *::before,
.elementor-13607 .elementor-element.elementor-element-760393f *::after{
    box-sizing:border-box;
}


/* ============================================================
   02. HERO WRAPPER

   Foto latar TETAP dari panel Elementor.
   CSS hanya menambah overlay dan dekorasi cahaya.
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero{

    position:relative;

    isolation:isolate;

    overflow:hidden;

    min-height:clamp(360px,34vw,480px);

    border-top:1px solid rgba(77,192,255,.16);

    border-bottom:1px solid rgba(77,192,255,.14);
}


/* ------------------------------------------------------------
   03. OVERLAY NAVY + GARIS ARSITEKTUR
   Nuansa sama dengan hero home
------------------------------------------------------------ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero::before{

    content:"";

    position:absolute;

    inset:0;

    z-index:0;

    pointer-events:none;

    background:

        radial-gradient(
            circle at 84% 14%,
            rgba(77,192,255,.28) 0%,
            transparent 44%
        ),

        radial-gradient(
            circle at 10% 88%,
            rgba(30,143,214,.24) 0%,
            transparent 46%
        ),

        linear-gradient(
            100deg,
            rgba(4,30,51,.88) 0%,
            rgba(6,58,94,.76) 38%,
            rgba(10,92,143,.50) 68%,
            rgba(30,143,214,.30) 100%
        ),

        repeating-linear-gradient(
            90deg,
            transparent 0,
            transparent 92px,
            rgba(255,255,255,.020) 93px,
            transparent 94px
        );

    transition:opacity .7s ease;
}


/* ------------------------------------------------------------
   04. FADE SINEMATIK DI DASAR HERO
   Sama seperti hero home
------------------------------------------------------------ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero::after{

    content:"";

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    height:150px;

    z-index:1;

    pointer-events:none;

    background:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(4,30,51,.16) 34%,
            rgba(4,30,51,.42) 100%
        );
}


/* ============================================================
   05. SHELL — glow lembut, sama seperti hero home
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-shell{

    position:relative;

    z-index:4;
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-shell::before{

    content:"";

    position:absolute;

    right:-90px;
    top:-110px;

    z-index:-1;

    width:clamp(240px,26vw,400px);
    height:clamp(240px,26vw,400px);

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(77,192,255,.22) 0%,
            rgba(77,192,255,.07) 42%,
            transparent 70%
        );

    filter:blur(8px);

    pointer-events:none;

    animation:ptHeroGlow 9s ease-in-out infinite alternate;
}


@keyframes ptHeroGlow{

    0%{
        opacity:.55;
        transform:translate3d(0,0,0) scale(.96);
    }

    100%{
        opacity:.92;
        transform:translate3d(-18px,16px,0) scale(1.05);
    }

}


/* ============================================================
   06. HERO COPY — RAIL VERTIKAL POLOS

   v25 : nomor "02" dihapus. Kembali ke rail sederhana
   seperti hero home.
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy{

    position:relative;

    z-index:5;
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy::before{

    content:"";

    position:absolute;

    left:-22px;
    top:4px;

    width:3px;
    height:126px;

    border-radius:999px;

    background:
        linear-gradient(
            180deg,
            var(--pt-gold) 0%,
            var(--pt-gold) 42%,
            var(--pt-red) 72%,
            rgba(30,143,214,.12) 100%
        );

    box-shadow:
        0 0 17px rgba(77,192,255,.34),
        0 0 34px rgba(77,192,255,.14);

    pointer-events:none;
}


/* aksen kedua sengaja dimatikan, sama seperti hero home */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy::after{

    content:none!important;

    display:none!important;
}


/* ============================================================
   07. EYEBROW — kapsul bulat, sama seperti hero home
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-eyebrow{

    position:relative;

    width:max-content;

    max-width:100%;

    /* v26 : padding simetris, titik bulat sudah dihapus */
    padding:7px 14px;

    border:1px solid rgba(77,192,255,.32);

    /* v25 : kembali ke kapsul bulat penuh */
    border-radius:999px;

    background:
        linear-gradient(
            135deg,
            rgba(4,30,51,.60),
            rgba(10,92,143,.32)
        );

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.09),
        0 10px 24px rgba(4,30,51,.22);

    -webkit-backdrop-filter:blur(9px);
    backdrop-filter:blur(9px);
}


/* v26 : titik bulat DIHAPUS agar sama persis dengan hero home.
   Pseudo-element sengaja dimatikan supaya tidak ada sisa
   dari versi sebelumnya. */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-eyebrow::before{

    content:none!important;

    display:none!important;
}


/* TIPOGRAFI eyebrow — spesifisitas nol */

.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-eyebrow .elementor-heading-title){

    font-family:var(--pt-font-body);

    font-size:12px;

    font-weight:600;

    letter-spacing:.20em;

    text-transform:uppercase;

    color:var(--pt-gold);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-eyebrow .elementor-heading-title{

    text-shadow:0 0 18px rgba(77,192,255,.30);
}


/* ============================================================
   08. HERO TITLE
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-title .elementor-heading-title){

    font-family:var(--pt-font-display);

    font-weight:400;

    font-size:clamp(38px,4.6vw,72px);

    line-height:1.06;

    letter-spacing:-.02em;

    color:var(--pt-white);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-title .elementor-heading-title{

    text-shadow:
        0 6px 28px rgba(4,30,51,.45),
        0 16px 48px rgba(4,30,51,.28);
}


/* kata dalam <span> jadi gradasi biru.
   Di editor tulis: Discover Bali's <span>Best Travel</span> */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-title .elementor-heading-title span{

    background:
        linear-gradient(
            122deg,
            var(--pt-gold-light) 0%,
            var(--pt-gold) 52%,
            var(--pt-red) 100%
        );

    -webkit-background-clip:text;
    background-clip:text;

    -webkit-text-fill-color:transparent;
}


/* ============================================================
   09. ACCENT TITLE + GARIS BAWAH

   v25 : animasi menyapu dihapus. Kembali sederhana
   seperti hero home — melebar saat hover.
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-title-accent{

    position:relative;

    width:max-content;

    max-width:100%;
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-title-accent .elementor-heading-title){

    font-family:var(--pt-font-display);

    font-weight:400;

    line-height:1.06;

    color:var(--pt-white);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-title-accent .elementor-heading-title{

    text-shadow:
        0 6px 26px rgba(4,30,51,.42),
        0 12px 34px rgba(77,192,255,.16);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-title-accent::after{

    content:"";

    display:block;

    width:88px;
    height:2px;

    margin-top:12px;

    border-radius:999px;

    background:
        linear-gradient(
            90deg,
            var(--pt-gold),
            rgba(77,192,255,.38),
            transparent
        );

    box-shadow:0 3px 14px rgba(77,192,255,.28);

    transition:width .52s var(--pt-ease);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero:hover .pt-hero-title-accent::after{

    width:138px;
}


/* ============================================================
   10. HERO DESCRIPTION
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-text{

    max-width:620px;
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-text .elementor-widget-container),
.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-text p){

    font-family:var(--pt-font-body);

    font-size:16px;

    font-weight:300;

    line-height:1.76;

    color:rgba(234,247,255,.88);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-text p{

    text-shadow:0 2px 14px rgba(4,30,51,.35);
}


/* ============================================================
   11. GLOBAL BUTTON MOTION
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .elementor-button{

    position:relative;

    transition:
        transform .36s var(--pt-ease),
        box-shadow .36s var(--pt-ease),
        background .32s ease,
        border-color .32s ease,
        color .32s ease;
}


/* ============================================================
   12. PRIMARY CTA — radius 12px seperti hero home
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-primary-btn .elementor-button{

    position:relative;

    overflow:hidden;

    box-shadow:
        0 13px 32px rgba(30,143,214,.38),
        inset 0 1px 0 rgba(255,255,255,.30);
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-primary-btn .elementor-button){

    padding:15px 30px;

    border:1px solid rgba(255,255,255,.18);

    border-radius:12px;

    background:
        linear-gradient(
            135deg,
            var(--pt-gold) 0%,
            var(--pt-red) 58%,
            var(--pt-red-dark) 100%
        );

    color:#05202F;
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-primary-btn .elementor-button-text){

    font-family:var(--pt-font-body);

    font-size:14.5px;

    font-weight:600;

    letter-spacing:.015em;
}


/* kilau */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-primary-btn .elementor-button::before{

    content:"";

    position:absolute;

    top:-28%;
    left:-90%;

    width:48%;
    height:156%;

    transform:skewX(-24deg);

    background:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(255,255,255,.14) 22%,
            rgba(255,255,255,.70) 50%,
            rgba(255,255,255,.14) 78%,
            transparent 100%
        );

    transition:left .78s ease;
}


/* garis cahaya di dasar tombol */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-primary-btn .elementor-button::after{

    content:"";

    position:absolute;

    left:20%;
    right:20%;
    bottom:0;

    height:1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.70),
            transparent
        );

    opacity:.60;
}


@media(hover:hover) and (pointer:fine){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-primary-btn .elementor-button:hover{

        transform:translateY(-3px);

        background:
            linear-gradient(
                135deg,
                var(--pt-gold-light) 0%,
                var(--pt-gold) 55%,
                var(--pt-red) 100%
            );

        border-color:rgba(255,255,255,.34);

        box-shadow:
            0 19px 44px rgba(77,192,255,.46),
            inset 0 1px 0 rgba(255,255,255,.40);
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-primary-btn .elementor-button:hover::before{

        left:138%;
    }

}


/* ============================================================
   13. SECONDARY CTA
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-secondary .elementor-button{

    overflow:hidden;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        0 10px 26px rgba(4,30,51,.22);

    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-secondary .elementor-button){

    padding:15px 28px;

    border:1px solid rgba(77,192,255,.38);

    border-radius:12px;

    background:rgba(6,58,94,.55);

    color:var(--pt-ivory);
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-secondary .elementor-button-text){

    font-family:var(--pt-font-body);

    font-size:14.5px;

    font-weight:600;
}


@media(hover:hover) and (pointer:fine){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-secondary .elementor-button:hover{

        transform:translateY(-3px);

        border-color:rgba(77,192,255,.72);

        background:rgba(10,92,143,.72);

        color:#FFFFFF;

        box-shadow:
            0 16px 34px rgba(4,30,51,.30),
            0 0 0 4px rgba(77,192,255,.10);
    }

}


/* ============================================================
   14. TEXT LINK
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-text-link .elementor-button{

    padding:0!important;

    background:transparent!important;

    border:0!important;

    box-shadow:none!important;

    transition:
        color .30s ease,
        transform .34s var(--pt-ease);
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-text-link .elementor-button){

    color:var(--pt-gold);
}


@media(hover:hover) and (pointer:fine){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-text-link .elementor-button:hover{

        color:var(--pt-gold-light)!important;

        transform:translateX(4px);
    }

}


/* ============================================================
   15. TRUST GRID  (kalau halaman memakainya)
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-trust{

    --width:100%!important;

    position:relative;

    width:100%!important;

    min-width:0!important;

    max-width:none!important;

    margin-top:12px;

    padding-top:20px;

    display:grid!important;

    grid-template-columns:repeat(4,minmax(0,1fr))!important;

    gap:14px!important;

    align-items:stretch!important;

    border-top:1px solid rgba(77,192,255,.22);

    isolation:isolate;
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-trust::before{

    content:"";

    position:absolute;

    top:-1px;
    left:0;

    width:86px;
    height:2px;

    border-radius:999px;

    background:
        linear-gradient(
            90deg,
            var(--pt-gold) 0%,
            rgba(77,192,255,.34) 58%,
            transparent 100%
        );

    box-shadow:0 2px 12px rgba(77,192,255,.24);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust{

    --width:100%!important;

    position:relative;

    isolation:isolate;

    overflow:hidden;

    width:100%!important;

    min-width:0!important;

    max-width:none!important;

    min-height:70px!important;

    height:auto!important;

    margin:0!important;

    display:grid!important;

    grid-template-columns:26px minmax(0,1fr)!important;

    column-gap:11px!important;

    align-items:center!important;

    justify-items:start!important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06),
        0 10px 26px rgba(4,30,51,.18);

    -webkit-backdrop-filter:blur(9px);
    backdrop-filter:blur(9px);

    transition:
        transform .36s var(--pt-ease),
        border-color .30s ease,
        background .30s ease,
        box-shadow .36s var(--pt-ease);
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-mini-trust){

    padding:14px 16px;

    border:1px solid rgba(207,235,251,.14);

    border-radius:14px;

    background:
        linear-gradient(
            135deg,
            rgba(234,247,255,.09) 0%,
            rgba(139,216,255,.04) 48%,
            rgba(4,30,51,.28) 100%
        );
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust::after{

    content:"";

    position:absolute;

    top:0;
    left:16px;

    width:36px;
    height:2px;

    border-radius:0 0 999px 999px;

    background:
        linear-gradient(
            90deg,
            var(--pt-gold),
            rgba(77,192,255,.18)
        );

    transition:width .45s var(--pt-ease);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust > .elementor-element{

    min-width:0!important;

    max-width:none!important;

    margin:0!important;
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust > .elementor-widget-icon{

    --width:26px!important;

    width:26px!important;

    min-width:26px!important;

    max-width:26px!important;

    grid-column:1;

    display:flex!important;

    align-items:center!important;

    justify-content:center!important;
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust > .elementor-widget-heading{

    --width:auto!important;

    width:auto!important;

    min-width:0!important;

    max-width:100%!important;

    grid-column:2;

    display:block!important;
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust .elementor-icon{

    width:26px;
    height:26px;

    display:flex!important;

    align-items:center!important;

    justify-content:center!important;

    filter:drop-shadow(0 4px 10px rgba(77,192,255,.32));

    transition:
        transform .34s var(--pt-ease),
        filter .34s ease;
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-mini-trust .elementor-icon){

    color:var(--pt-gold);
}


.elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-mini-trust .elementor-heading-title){

    font-family:var(--pt-font-body);

    font-size:13.5px;

    font-weight:500;

    line-height:1.35;

    color:rgba(234,247,255,.95);
}


.elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust .elementor-heading-title{

    width:100%!important;

    min-width:0!important;

    max-width:100%!important;

    margin:0!important;

    white-space:normal!important;

    word-break:normal!important;

    writing-mode:horizontal-tb!important;
}


@media(hover:hover) and (pointer:fine){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust:hover{

        transform:translateY(-4px);

        border-color:rgba(77,192,255,.44);

        box-shadow:
            0 18px 38px rgba(4,30,51,.26),
            inset 0 1px 0 rgba(255,255,255,.09);
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust:hover::after{

        width:calc(100% - 32px);

        box-shadow:0 2px 14px rgba(77,192,255,.36);
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust:hover .elementor-icon{

        transform:scale(1.08);
    }

}


/* ============================================================
   16. DESKTOP > 1025
============================================================ */

@media(min-width:1025px){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy{

        max-width:760px;
    }

}


/* ============================================================
   17. LAPTOP  1025 - 1280
============================================================ */

@media(min-width:1025px) and (max-width:1280px){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero{

        min-height:clamp(330px,32vw,420px);
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy::before{

        left:-20px;

        height:114px;
    }

}


/* ============================================================
   18. TABLET  768 - 1024
============================================================ */

@media(min-width:768px) and (max-width:1024px){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero{

        min-height:clamp(300px,40vw,400px);
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy{

        width:88%!important;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy::before{

        left:-16px;

        height:104px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-shell::before{

        right:-60px;

        top:-84px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-trust{

        grid-template-columns:repeat(2,minmax(0,1fr))!important;

        gap:12px!important;
    }

}


/* ============================================================
   19. MOBILE  <= 767
============================================================ */

@media(max-width:767px){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero{

        min-height:clamp(260px,62vw,340px);
    }


    /* overlay dipertegas agar teks terbaca */

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero::before{

        background:

            radial-gradient(
                circle at 80% 12%,
                rgba(77,192,255,.22) 0%,
                transparent 44%
            ),

            linear-gradient(
                180deg,
                rgba(4,30,51,.86) 0%,
                rgba(6,58,94,.76) 46%,
                rgba(10,92,143,.62) 100%
            );
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero::after{

        height:110px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy{

        width:100%!important;
    }


    /* rail dipendekkan, tetap di sisi kiri */

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy::before{

        left:-9px;

        top:4px;

        width:2px;

        height:78px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-eyebrow{

        padding:6px 11px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-eyebrow .elementor-heading-title){

        font-size:10.5px;

        letter-spacing:.16em;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-title .elementor-heading-title){

        font-size:clamp(30px,9vw,40px);

        line-height:1.08;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-title-accent::after{

        width:64px;

        margin-top:9px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero:hover .pt-hero-title-accent::after{

        width:92px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-text .elementor-widget-container),
    .elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-text p){

        font-size:15px;

        line-height:1.70;
    }


    /* glow dikecilkan */

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-shell::before{

        right:auto;

        left:35%;

        top:-60px;

        width:250px;
        height:250px;

        opacity:.75;
    }


    /* tombol full-width */

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-primary-btn .elementor-button,
    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-secondary .elementor-button{

        width:100%;

        min-height:50px;

        display:flex;

        align-items:center;

        justify-content:center;
    }


    /* trust 2 kolom */

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-trust{

        grid-template-columns:repeat(2,minmax(0,1fr))!important;

        gap:10px!important;

        margin-top:6px;

        padding-top:15px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust{

        min-height:62px!important;

        grid-template-columns:22px minmax(0,1fr)!important;

        column-gap:9px!important;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-mini-trust){

        padding:11px 12px;

        border-radius:12px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust > .elementor-widget-icon{

        --width:22px!important;

        width:22px!important;

        min-width:22px!important;

        max-width:22px!important;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust .elementor-icon{

        width:22px;
        height:22px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-mini-trust::after{

        left:12px;

        width:28px;
    }

}


/* ============================================================
   20. SMALL MOBILE  <= 480
============================================================ */

@media(max-width:480px){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero{

        padding-left:max(16px,env(safe-area-inset-left));

        padding-right:max(16px,env(safe-area-inset-right));
    }


    .elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-title .elementor-heading-title){

        font-size:clamp(27px,8.6vw,35px);
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-copy::before{

        height:66px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero-trust{

        grid-template-columns:1fr!important;
    }

}


/* ============================================================
   21. VERY SMALL MOBILE  <= 374
============================================================ */

@media(max-width:374px){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero{

        min-height:240px;
    }


    .elementor-13607 .elementor-element.elementor-element-760393f :where(.pt-hero-title .elementor-heading-title){

        font-size:26px;
    }

}


/* ============================================================
   22. iOS SAFETY
============================================================ */

@supports (-webkit-touch-callout:none){

    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero,
    .elementor-13607 .elementor-element.elementor-element-760393f .pt-hero *{

        -webkit-text-size-adjust:100%;
    }

}


/* ============================================================
   23. TOUCH DEVICE
============================================================ */

@media(hover:none) and (pointer:coarse){

    .elementor-13607 .elementor-element.elementor-element-760393f a,
    .elementor-13607 .elementor-element.elementor-element-760393f button{

        -webkit-tap-highlight-color:transparent;
    }

}


/* ============================================================
   24. FOKUS KEYBOARD
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f a:focus-visible,
.elementor-13607 .elementor-element.elementor-element-760393f button:focus-visible,
.elementor-13607 .elementor-element.elementor-element-760393f .elementor-button:focus-visible{

    outline:2px solid var(--pt-gold);

    outline-offset:3px;

    border-radius:10px;
}


/* ============================================================
   25. REDUCED MOTION
============================================================ */

@media(prefers-reduced-motion:reduce){

    .elementor-13607 .elementor-element.elementor-element-760393f *,
    .elementor-13607 .elementor-element.elementor-element-760393f *::before,
    .elementor-13607 .elementor-element.elementor-element-760393f *::after{

        animation:none!important;

        transition:none!important;
    }

}


/* ============================================================
   26. TEXT SELECTION
============================================================ */

.elementor-13607 .elementor-element.elementor-element-760393f ::selection{

    background:var(--pt-gold);

    color:var(--pt-maroon-dark);
}


/* ============================================================
   ============================================================
   CATATAN PEMAKAIAN

   1. CLASS (isi di Advanced > CSS Classes):

      Section hero        -> pt-hero
        Container isi     -> pt-hero-shell
          Container teks  -> pt-hero-copy
            Heading kecil -> pt-hero-eyebrow
            Heading judul -> pt-hero-title
            Heading baris2-> pt-hero-title-accent  (opsional)
            Text Editor   -> pt-hero-text
            Button utama  -> pt-primary-btn        (opsional)
            Button kedua  -> pt-hero-secondary     (opsional)


   2. FOTO LATAR tetap dari panel:
      Section > Style > Background > Image.
      CSS hanya menambah overlay.

      Overlay terlalu gelap? Turunkan alpha di blok 03.
      Misal rgba(4,30,51,.88) menjadi rgba(4,30,51,.70).


   3. RAIL KIRI:
      Pastikan container pt-hero-copy punya
      Padding Left minimal 30px di Advanced,
      supaya rail tidak terpotong tepi layar.


   4. JUDUL BERGRADASI:
      Di editor Heading tulis:

          Discover Bali's <span>Best Travel</span>


   5. SEMUA FONT BISA DIEDIT.
      Aturan tipografi memakai :where() sehingga
      spesifisitasnya nol. Atur bebas dari
      Style > Typography dan Text Color, termasuk
      pengaturan terpisah untuk Tablet dan Mobile.
   ============================================================
   ============================================================ *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8530b9 *//* ============================================================
   MAI KEBALI TOUR — ARTICLES (HEADER + TOUR CATEGORY TABS)
   "AZURE PORTAL" V17  (Azure #009CE7)

   DIPASANG DI:
   Container UTAMA (pembungkus Header + Tabs) > Advanced > Custom CSS
   (ganti SELURUH isi yang lama dengan file ini)

   ------------------------------------------------------------
   STRUKTUR & CSS CLASS (Advanced > CSS Classes)
   ------------------------------------------------------------
   Container UTAMA (section)          -> mkt-tabs-sec
   ├ Container HEADER                 -> mkt-tabs-head
   │ ├ Container (kiri)               -> mkt-tabs-title-box
   │ │ └ Heading                      -> mkt-tabs-title
   │ └ Container (kanan)              -> mkt-tabs-desc-box
   │   └ Text Editor                  -> mkt-tabs-desc
   └ Tabs (widget)                    -> mkt-tabs
     ├ Tab #1 (container isi)         -> mkt-tab-panel
     │ └ Loop Grid                    -> mkt-tab-grid
     ├ Tab #2 (container isi)         -> mkt-tab-panel
     │ └ Loop Grid                    -> mkt-tab-grid
     └ ... (tab berikutnya sama)

   ISI HEADING (mode Text/HTML), supaya "What We Do" bergradasi biru:
       Why We Do <span>What We Do</span>

   YANG BARU DI v17
   - Header atas (judul + deskripsi) bergaya sama dengan Vision & Mission:
     eyebrow, judul serif + span gradasi, garis aksen, deskripsi dengan
     garis vertikal biru, angka watermark outline.
   - Bagian tabs, pill mobile, loop grid TIDAK diubah dari v16.
   ============================================================ */


/* ============================================================
   01. PUSAT KENDALI
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9 {

    --tb-primary:    #0B2A45;
    --tb-secondary:  #009CE7;
    --tb-sky:        #5CC8FF;
    --tb-accent:     #0070B8;
    --tb-navy-dark:  #04202F;

    --tb-section-top: #F8FCFF;
    --tb-ivory:       #EAF4FC;
    --tb-white:       #FFFFFF;

    /* edge-top    = warna DASAR section di atas  (biasanya #EAF4FC)
       edge-bottom = warna AWAL section di bawah  (biasanya #F8FCFF) */
    --tb-edge-top:    #EAF4FC;
    --tb-edge-bottom: #F8FCFF;
    --tb-edge-fade:   260px;

    --tb-text:  #10222F;
    --tb-muted: rgba(16, 34, 47, 0.72);
    --tb-soft:  rgba(16, 34, 47, 0.52);

    --tb-line: rgba(0, 156, 231, 0.20);

    /* pill mobile */
    --tb-pill-border: rgba(0, 156, 231, 0.55);
    --tb-pill-bg: rgba(255, 255, 255, 0.84);
    --tb-pill-on-text: #FFFFFF;

    --tb-font-display: "DM Serif Display", Georgia, serif;
    --tb-font-body:    "Poppins", -apple-system, BlinkMacSystemFont, sans-serif;

    /* watermark (ubah teksnya di sini) */
    --tb-watermark-word: "ARTICLES";

    /* --- header: eyebrow & angka watermark (ubah di sini) --- */
    --tb-eyebrow-a: "ARTICLES";
    --tb-eyebrow-b: "MAI KEBALI TOUR";
    --tb-watermark-no: "03";

    --tb-head-gap: clamp(32px, 5vw, 80px);
    --tb-desc-width: 44%;
    --tb-desc-max: 560px;
    --tb-eyebrow-gap: 26px;
    --tb-eyebrow-line: 48px;
    --tb-eyebrow-space: 18px;

    --tb-max-width: 1440px;

    --tb-ease: cubic-bezier(.2, .75, .2, 1);


    position: relative;
    width: 100%;
    overflow: hidden;
    isolation: isolate;
    box-sizing: border-box;
    font-family: var(--tb-font-body);
    color: var(--tb-text);

    background: linear-gradient(
        180deg,
        var(--tb-edge-top) 0,
        var(--tb-section-top) var(--tb-edge-fade),
        var(--tb-section-top) calc(100% - var(--tb-edge-fade)),
        var(--tb-edge-bottom) 100%
    );

    --padding-top:    clamp(58px, 5.5vw, 86px);
    --padding-bottom: clamp(58px, 5.5vw, 86px);
    --padding-left:   clamp(22px, 5vw, 82px);
    --padding-right:  clamp(22px, 5vw, 82px);

    --flex-direction: column;
    --align-items: stretch;
    --gap: clamp(36px, 4vw, 56px);
    --row-gap: clamp(36px, 4vw, 56px);
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(*),
.elementor-13607 .elementor-element.elementor-element-f8530b9 *::before,
.elementor-13607 .elementor-element.elementor-element-f8530b9 *::after {
    box-sizing: border-box;
}


/* ============================================================
   02. RESET OVERLAY BAWAAN ELEMENTOR PADA ::before CONTAINER
   (Elementor memberi .e-con::before: absolute, 100% x 100%)
   Harus SEBELUM aturan ::before lainnya.
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-head)::before {
    inset: auto;
    width: auto;
    height: auto;
    opacity: 1;
    z-index: auto;
    mix-blend-mode: normal;
    border-radius: 0;
    transition: none;
    background: none;
}


/* ============================================================
   03. AMBIENT GLOW
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9::before {
    content: "";
    position: absolute;
    inset: auto;
    width:  clamp(420px, 52vw, 860px);
    height: clamp(420px, 52vw, 860px);
    left: 50%;
    top:  clamp(24px, 5vw, 80px);
    z-index: -3;
    pointer-events: none;
    transform: translateX(-50%);
    border-radius: 50%;
    mix-blend-mode: normal;
    background: radial-gradient(
        circle,
        rgba(92, 200, 255, 0.18) 0%,
        rgba(0, 156, 231, 0.07) 38%,
        transparent 68%
    );
    animation: tbAmbientGlow 11s ease-in-out infinite;
}

@keyframes tbAmbientGlow {
    0%, 100% { opacity: .82; }
    50%      { opacity: 1; }
}


/* ============================================================
   04. TEKSTUR GRID + WATERMARK
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9::after {
    content: var(--tb-watermark-word);

    position: absolute;
    inset: 0;
    z-index: -4;
    pointer-events: none;
    user-select: none;

    display: flex;
    align-items: flex-end;
    justify-content: flex-start;

    padding-left: clamp(16px, 4vw, 70px);
    padding-bottom: 2px;
    white-space: nowrap;

    background-image:
        linear-gradient(rgba(0, 156, 231, 0.030) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 156, 231, 0.030) 1px, transparent 1px);
    background-size: 48px 48px;

    font-family: var(--tb-font-display);
    font-size: clamp(50px, 7vw, 120px);
    line-height: .82;
    letter-spacing: -.035em;

    color: transparent;
    -webkit-text-stroke: 1px rgba(0, 156, 231, 0.12);
}


/* ============================================================
   05. HEADER — judul kiri, deskripsi kanan (berdampingan)
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-head) {

    --width: min(100%, var(--tb-max-width));

    --flex-direction: row;
    --flex-wrap: nowrap;
    --align-items: flex-end;
    --justify-content: space-between;

    --gap: var(--tb-head-gap);
    --column-gap: var(--tb-head-gap);
    --row-gap: var(--tb-head-gap);

    --padding-top: 0px;
    --padding-right: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;

    position: relative;
    margin-inline: auto;
}

/* watermark angka outline — kanan atas */
.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-head)::before {
    content: var(--tb-watermark-no);
    position: absolute;
    right: 0;
    top: 6px;
    z-index: -1;
    pointer-events: none;
    user-select: none;
    font-family: var(--tb-font-display);
    font-size: clamp(70px, 8vw, 125px);
    line-height: 1;
    letter-spacing: -0.04em;
    color: transparent;
    -webkit-text-stroke: 1px rgba(0, 156, 231, 0.16);
    opacity: .9;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title-box) {
    flex: 1 1 0;
    min-width: 0;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-desc-box) {
    flex: 0 1 var(--tb-desc-width);
    min-width: 0;
    max-width: var(--tb-desc-max);
}


/* ============================================================
   06. HEADING — eyebrow + judul + garis aksen
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title) {
    position: relative;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title)::before {
    content: var(--tb-eyebrow-a) "\00a0\00a0\00a0|\00a0\00a0\00a0" var(--tb-eyebrow-b);
    display: block;
    margin-bottom: var(--tb-eyebrow-gap);
    padding-left: calc(var(--tb-eyebrow-line) + var(--tb-eyebrow-space));
    background: linear-gradient(90deg, var(--tb-secondary), rgba(0,156,231,.15)) left center / var(--tb-eyebrow-line) 2px no-repeat;
    font-family: var(--tb-font-body);
    font-size: clamp(11px, .8vw, 13px);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--tb-secondary);
    pointer-events: none;
    user-select: none;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title)::after {
    content: "";
    display: block;
    width: 140px;
    height: 3px;
    margin-top: 28px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--tb-secondary) 0%, rgba(0,156,231,.45) 55%, transparent 100%);
    transition: width .5s var(--tb-ease);
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-head):hover :where(.mkt-tabs-title)::after {
    width: 200px;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title .elementor-heading-title) {
    margin: 0;
    font-family: var(--tb-font-display);
    font-size: clamp(38px, 4.1vw, 64px);
    font-weight: 400;
    line-height: 1.08;
    letter-spacing: -.022em;
    color: var(--tb-primary);
    text-wrap: balance;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title .elementor-heading-title span) {
    background: linear-gradient(90deg, var(--tb-accent) 0%, var(--tb-secondary) 55%, var(--tb-sky) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}


/* ============================================================
   07. TEXT EDITOR — garis vertikal bergradasi
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-desc) {
    position: relative;
    padding-left: 24px;
    font-family: var(--tb-font-body);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.78;
    color: var(--tb-muted);
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-desc)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 2px;
    bottom: 2px;
    width: 2px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--tb-secondary) 0%, var(--tb-sky) 58%, rgba(0,156,231,.12) 100%);
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-desc .elementor-widget-container, .mkt-tabs-desc p) {
    margin: 0;
    font: inherit;
    color: inherit;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-desc p + p) {
    margin-top: 12px;
}


/* ============================================================
   08. WIDGET TABS
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs) {

    --width: 100%;

    position: relative;
    width: min(100%, var(--tb-max-width));
    margin-inline: auto;
}


/* ============================================================
   09. DESKTOP & TABLET (>= 768px) — TABS
   ============================================================ */

@media (min-width: 768px) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-heading) {

        position: relative;

        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        justify-content: center;

        gap: clamp(18px, 3vw, 46px);

        padding-bottom: 0;
        border: 0;

        counter-reset: mkttab;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-heading)::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 1px;
        background: linear-gradient(
            90deg,
            transparent 0%,
            var(--tb-line) 14%,
            var(--tb-line) 86%,
            transparent 100%
        );
        pointer-events: none;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title) {

        counter-increment: mkttab;

        position: relative;

        display: inline-flex;
        align-items: baseline;
        gap: 10px;

        padding: 10px 2px 17px;

        background-color: transparent;
        background-image: none;
        border: 0;
        border-radius: 0;
        box-shadow: none;

        font-family: var(--tb-font-body);
        font-size: clamp(13px, 1.05vw, 16px);
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: var(--tb-soft);

        cursor: pointer;

        transition:
            color .34s var(--tb-ease),
            transform .34s var(--tb-ease);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title)::before {
        content: counter(mkttab, decimal-leading-zero);
        flex: 0 0 auto;
        font-family: var(--tb-font-body);
        font-size: 0.72em;
        font-weight: 600;
        letter-spacing: 0.06em;
        color: var(--tb-secondary);
        opacity: .55;
        transition: opacity .34s ease, color .34s ease;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title)::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(90deg, var(--tb-secondary), var(--tb-sky));
        box-shadow: 0 6px 16px -4px rgba(0, 156, 231, 0.55);
        transform: scaleX(0);
        transform-origin: left center;
        transition: transform .42s var(--tb-ease);
        pointer-events: none;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title-text) {
        display: inline-block;
    }

    @media (hover: hover) {

        .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):hover {
            color: var(--tb-primary);
            transform: translateY(-2px);
        }

        .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):hover::before {
            opacity: .9;
        }

        .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):not([aria-selected="true"]):hover::after {
            transform: scaleX(.42);
        }
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):active {
        transform: scale(.97);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title[aria-selected="true"]) {
        color: var(--tb-secondary);
        font-weight: 600;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title[aria-selected="true"])::before {
        opacity: 1;
        color: var(--tb-accent);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title[aria-selected="true"])::after {
        transform: scaleX(1);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):focus-visible {
        outline: 2px solid var(--tb-sky);
        outline-offset: 4px;
        border-radius: 6px;
    }
}


/* ============================================================
   10. AREA ISI TAB
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-content) {
    padding-top: clamp(30px, 3.4vw, 48px);
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tab-panel) {

    --width: 100%;

    --flex-direction: column;
    --align-items: stretch;

    --gap: clamp(20px, 2.4vw, 32px);
    --row-gap: clamp(20px, 2.4vw, 32px);

    --padding-top: 0px;
    --padding-right: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-content > [aria-hidden="false"]) {
    animation: tbPanelIn .5s var(--tb-ease) backwards;
}

@keyframes tbPanelIn {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: translateY(0); }
}


/* ============================================================
   11. LOOP GRID
   ============================================================ */

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tab-grid) {
    --width: 100%;
    width: 100%;
    min-width: 0;
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tab-grid .elementor-widget-container) {
    max-width: 100%;
}


/* ============================================================
   12. SCROLL REVEAL HEADER
   ============================================================ */

@supports (animation-timeline: view()) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-head) {
        animation: tbHeadUp linear backwards;
        animation-timeline: view();
        animation-range: entry 0% entry 34%;
    }
}

@keyframes tbHeadUp {
    from { opacity: 0; transform: translateY(32px); }
    to   { opacity: 1; transform: translateY(0); }
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (min-width: 1600px) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 {
        --tb-max-width: 1510px;
    }
}

@media (min-width: 1025px) and (max-width: 1280px) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 {
        --padding-left: 44px;
        --padding-right: 44px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-heading) {
        gap: clamp(16px, 2.6vw, 34px);
    }
}

@media (min-width: 768px) and (max-width: 1024px) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 {
        --tb-edge-fade: 200px;
        --padding-left: clamp(30px, 4.5vw, 46px);
        --padding-right: clamp(30px, 4.5vw, 46px);

        --tb-desc-width: 46%;
        --tb-head-gap: clamp(24px, 4vw, 48px);
        --tb-eyebrow-gap: 22px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9::after {
        font-size: clamp(44px, 8vw, 84px);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-head)::before {
        font-size: 88px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-heading) {
        gap: 16px 26px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title) {
        font-size: 13px;
        letter-spacing: 0.12em;
        padding: 8px 2px 15px;
    }
}


/* ============================================================
   MOBILE <= 767px — HEADER MENUMPUK + TAB PILL BISA DIGESER
   ============================================================ */

@media (max-width: 767px) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 {
        --tb-edge-fade: 140px;

        --tb-eyebrow-gap: 16px;
        --tb-eyebrow-line: 32px;
        --tb-eyebrow-space: 12px;

        --padding-top: 48px;
        --padding-bottom: 52px;
        --padding-left: clamp(18px, 5.2vw, 24px);
        --padding-right: clamp(18px, 5.2vw, 24px);

        --gap: 26px;
        --row-gap: 26px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9::after {
        padding-left: 12px;
        font-size: clamp(34px, 12vw, 58px);
    }

    /* ---------- HEADER ---------- */
    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-head) {
        --flex-direction: column;
        --align-items: flex-start;
        --justify-content: flex-start;
        --gap: 22px;
        --column-gap: 22px;
        --row-gap: 22px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title-box),
    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-desc-box) {
        flex: 0 0 auto;
        width: 100%;
        max-width: 100%;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title)::before {
        font-size: 10.5px;
        letter-spacing: .16em;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title)::after {
        width: 84px;
        height: 2px;
        margin-top: 20px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title .elementor-heading-title) {
        font-size: clamp(31px, 8.6vw, 40px);
        line-height: 1.1;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-desc) {
        padding-left: 16px;
        font-size: 15px;
        line-height: 1.72;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-head)::before {
        top: -6px;
        font-size: 64px;
    }

    /* ---------- BARISAN TAB ---------- */
    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-heading) {

        position: relative;

        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: flex-start;
        gap: 10px;

        margin-inline: calc(var(--padding-left) * -1) calc(var(--padding-right) * -1);
        padding: 8px var(--padding-right) 24px var(--padding-left);
        border: 0;

        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        scroll-snap-type: x proximity;
        scroll-padding-inline: var(--padding-left);
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;

        counter-reset: mkttab;

        /* [1] penunjuk  [2] rel */
        background:
            linear-gradient(90deg, var(--tb-secondary), var(--tb-sky)) 30px calc(100% - 6px) / 34% 3px no-repeat,
            linear-gradient(rgba(0, 156, 231, 0.16), rgba(0, 156, 231, 0.16)) 30px calc(100% - 6px) / calc(100% - 60px) 3px no-repeat;

        -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 30px), transparent 100%);
        mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 30px), transparent 100%);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-heading)::-webkit-scrollbar {
        display: none;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-heading)::after {
        content: "";
        flex: 0 0 12px;
        height: 1px;
    }

    /* ---------- PILL ---------- */
    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title) {

        counter-increment: mkttab;

        position: relative;
        isolation: isolate;
        overflow: hidden;

        flex: 0 0 auto;
        scroll-snap-align: start;

        display: inline-flex;
        align-items: center;
        gap: 9px;

        min-height: 46px;
        padding: 0 20px 0 16px;

        background-color: var(--tb-pill-bg);
        background-image: none;
        border: 1.5px solid var(--tb-pill-border);
        border-radius: 999px;
        box-shadow: 0 10px 20px -14px rgba(0, 156, 231, 0.55);

        font-family: var(--tb-font-body);
        font-size: 12.5px;
        font-weight: 600;
        line-height: 1.2;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        white-space: nowrap;
        color: var(--tb-primary);

        cursor: pointer;
        -webkit-tap-highlight-color: transparent;

        transition:
            transform .35s var(--tb-ease),
            box-shadow .35s var(--tb-ease),
            border-color .3s ease,
            color .3s ease;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title)::before {
        content: counter(mkttab, decimal-leading-zero);
        flex: 0 0 auto;
        font-size: 0.82em;
        font-weight: 700;
        letter-spacing: 0.04em;
        color: var(--tb-secondary);
        opacity: .9;
        transition: color .3s ease;
    }

    /* isian gradasi biru naik dari bawah */
    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title)::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        height: auto;
        border-radius: inherit;
        background: linear-gradient(145deg, var(--tb-sky) 0%, var(--tb-secondary) 55%, var(--tb-accent) 100%);
        box-shadow: none;
        transform: scaleY(0);
        transform-origin: bottom center;
        transition: transform .45s var(--tb-ease);
        pointer-events: none;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title-text) {
        display: inline-block;
    }

    /* ---------- HOVER ---------- */
    @media (hover: hover) {

        .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):hover {
            transform: translateY(-2px);
            border-color: var(--tb-secondary);
            box-shadow: 0 14px 24px -12px rgba(0, 156, 231, 0.7);
            -webkit-text-fill-color: var(--tb-pill-on-text);
        }

        .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):hover::before {
            color: var(--tb-pill-on-text);
        }

        .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):hover::after {
            transform: scaleY(1);
        }
    }

    /* ---------- DITEKAN ---------- */
    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):active {
        transform: scale(.96);
        border-color: var(--tb-secondary);
        -webkit-text-fill-color: var(--tb-pill-on-text);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):active::before {
        color: var(--tb-pill-on-text);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):active::after {
        transform: scaleY(1);
    }

    /* ---------- AKTIF: terisi biru penuh ---------- */
    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title[aria-selected="true"]) {
        border-color: var(--tb-secondary);
        box-shadow:
            0 12px 24px -8px rgba(0, 156, 231, 0.7),
            0 0 0 3px rgba(0, 156, 231, 0.14);
        font-weight: 700;
        -webkit-text-fill-color: var(--tb-pill-on-text);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title[aria-selected="true"])::before {
        color: var(--tb-pill-on-text);
        opacity: .85;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title[aria-selected="true"])::after {
        transform: scaleY(1);
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title):focus-visible {
        outline: 2px solid var(--tb-sky);
        outline-offset: 3px;
    }

    /* ---------- JARAK KE KARTU TOUR ---------- */
    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-content) {
        padding-top: 20px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tab-panel) {
        --gap: 18px;
        --row-gap: 18px;
    }
}


/* ---------- PENUNJUK PROGRESS MENGIKUTI GESERAN ---------- */

@supports (animation-timeline: scroll()) {

    @media (max-width: 767px) {

        .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tabs-heading) {
            animation: tbThumb linear both;
            animation-timeline: scroll(self inline);
        }
    }
}

@keyframes tbThumb {
    from {
        background-position:
            30px calc(100% - 6px),
            30px calc(100% - 6px);
    }
    to {
        background-position:
            calc(100% - 30px) calc(100% - 6px),
            30px calc(100% - 6px);
    }
}


@media (max-width: 480px) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 {
        --padding-left: max(18px, env(safe-area-inset-left));
        --padding-right: max(18px, env(safe-area-inset-right));
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title)::before {
        letter-spacing: .13em;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title) {
        font-size: 12px;
        letter-spacing: 0.09em;
    }
}

@media (max-width: 374px) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 {
        --padding-top: 42px;
        --padding-bottom: 46px;

        --tb-eyebrow-line: 26px;
        --tb-eyebrow-space: 10px;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs-title)::before {
        font-size: 10px;
        letter-spacing: .11em;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(.mkt-tabs .e-n-tab-title) {
        gap: 7px;
        min-height: 44px;
        padding: 0 16px 0 13px;
        font-size: 11.5px;
    }
}


/* ============================================================
   TOUCH / REDUCED MOTION / SELECTION
   ============================================================ */

@media (hover: none) and (pointer: coarse) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(a, button) {
        -webkit-tap-highlight-color: transparent;
    }
}

@media (prefers-reduced-motion: reduce) {

    .elementor-13607 .elementor-element.elementor-element-f8530b9 :where(*),
    .elementor-13607 .elementor-element.elementor-element-f8530b9 *::before,
    .elementor-13607 .elementor-element.elementor-element-f8530b9 *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        transition-duration: 0.01ms;
    }

    .elementor-13607 .elementor-element.elementor-element-f8530b9::before {
        animation: none;
    }
}

.elementor-13607 .elementor-element.elementor-element-f8530b9 ::selection {
    background: var(--tb-sky);
    color: var(--tb-navy-dark);
}


/* ============================================================
   CATATAN PEMAKAIAN

   1. Eyebrow & angka watermark header: --tb-eyebrow-a, --tb-eyebrow-b,
      --tb-watermark-no (blok 01). Teks watermark bawah: --tb-watermark-word.
   2. Heading wajib berisi:  Why We Do <span>What We Do</span>
      supaya "What We Do" bergradasi biru.
   3. Jika judul / deskripsi masih terlihat polos, kosongkan Typography
      dan Color di panel Style pada Heading & Text Editor (panel Elementor
      selalu menang karena CSS ini tanpa !important).
   4. Sambungan antar section: --tb-edge-top / --tb-edge-bottom / --tb-edge-fade.
   5. Pill mobile: --tb-pill-border, --tb-pill-bg, --tb-pill-on-text.
   6. Tidak ingin garis progress tab? Hapus dua baris linear-gradient di
      "background" .e-n-tabs-heading (blok MOBILE) dan blok @supports.
   ============================================================ *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6d00af6 *//* =====================================================================
   CUSTOMIZE YOUR TOUR — MAI KEBALI TOUR  (v2.0 — Azure #009CE7)
   Tempel di: Container PALING LUAR > Advanced > Custom CSS
   (ganti SELURUH isi yang lama dengan file ini)

   ---------------------------------------------------------------------
   CSS CLASS PER ELEMEN — TIDAK BERUBAH dari v1.0 (tidak perlu pasang ulang)
   ---------------------------------------------------------------------
   Container paling luar ........................... ars-ct
   └─ Container (kartu) ............................ ars-ct__card
       ├─ Container kiri (kosong = foto) ........... ars-ct__photo
       └─ Container kanan (isi) .................... ars-ct__content
           ├─ Heading .............................. ars-ct__title
           ├─ Text Editor .......................... ars-ct__desc
           ├─ Icon List ............................ ars-ct__list
           └─ Button ............................... ars-ct__btn

   Foto: pasang di Container ars-ct__photo >
   Style > Background > Classic > Image (Size: Cover, Position: Center).

   ---------------------------------------------------------------------
   YANG BERUBAH DI v2.0  (latar section TETAP sama seperti section lain)
   ---------------------------------------------------------------------
   KARTU
   - Sambungan foto <-> panel kini MIRING (bukan garis lurus datar);
     di tablet/HP menjadi tepi miring horizontal. Atur lewat --ct-slant
     (0px = lurus kembali).
   - Lencana kaca di pojok foto ("Tailor-Made Tour"), gelap tipis di
     foto agar lencana terbaca, pudar ke arah panel.
   PANEL
   - Gradasi lebih dalam: navy -> biru -> azure #009CE7, dengan cahaya
     sky di sudut, pola titik, dan garis cahaya di tepi sambungan.
   - Eyebrow bergaris di atas judul + garis aksen yang melebar saat hover.
   ICON LIST
   - Setiap poin menjadi KARTU KACA (berborder tipis) dengan lingkaran
     ikon bercincin; hover: bergeser, garis terang di kiri muncul,
     ikon membesar dan bercahaya.
   BUTTON
   - Tombol pill GRADASI BIRU TERANG (sky -> azure) dengan cincin putih
     tipis, glow, ikon dalam lingkaran, kilau melintas saat hover.
   - Sebelumnya tombol outline putih yang tampak datar.

   TIDAK DIKUNCI & RINGAN
   - Tanpa !important. Layout memakai variabel Elementor, jadi panel
     (Typography, Color, Padding, Width, Border, Background) menang.
   - Tanpa blur / backdrop-filter. Hanya transform / opacity yang
     beranimasi saat hover.
   ===================================================================== */


/* ---------------------------------------------------------------------
   1. PENGATURAN — ubah nilai di sini
   --------------------------------------------------------------------- */
.ars-ct {

  /* Warna */
  --ct-blue: #009CE7;
  --ct-blue-light: #5CC8FF;
  --ct-blue-dark: #0070B8;
  --ct-blue-rgb: 0, 156, 231;
  --ct-ice: #DDF3FF;

  --ct-navy: #0B2A45;
  --ct-navy-dark: #04202F;
  --ct-white: #FFFFFF;

  --ct-bg-top: #F8FCFF;
  --ct-bg-bottom: #EAF4FC;

  --ct-text-on-blue: rgba(240, 250, 255, .90);

  /* Font */
  --ct-font-display: "DM Serif Display", Georgia, serif;
  --ct-font-body: "Poppins", -apple-system, BlinkMacSystemFont, sans-serif;

  /* ============ JARAK & BENTUK ============ */
  --ct-content-max: 1240px;
  --ct-pad-x: 48px;
  --ct-pad-top: 110px;
  --ct-pad-bottom: 110px;

  --ct-card-radius: 28px;               /* sudut kartu */
  --ct-photo-w: 42%;                    /* lebar sisi foto */
  --ct-photo-h: 500px;                  /* tinggi minimal kartu */
  --ct-slant: 44px;                     /* kemiringan sambungan foto/panel (0px = lurus) */
  --ct-panel-pad-y: 54px;
  --ct-panel-pad-x: 50px;
  /* ======================================== */

  /* Panel */
  --ct-panel-bg:
      radial-gradient(60% 80% at 92% 6%, rgba(92, 200, 255, .38) 0%, transparent 62%),
      radial-gradient(55% 70% at 78% 104%, rgba(0, 156, 231, .62) 0%, transparent 70%),
      linear-gradient(140deg, #0B2A45 0%, #0A3C66 42%, #0070B8 100%);

  /* Teks dekoratif — ubah sesuai kebutuhan */
  --ct-badge: "Tailor-Made Tour";
  --ct-eyebrow-a: "CUSTOM TOUR";
  --ct-eyebrow-b: "MAI KEBALI TOUR";
  --ct-watermark-no: "10";
  --ct-watermark-word: "CUSTOM TOUR";

  /* Teks */
  --ct-title-size: clamp(32px, 3.4vw, 50px);
  --ct-desc-size: 15.5px;
  --ct-desc-lh: 1.8;
  --ct-list-size: 15.5px;

  /* Animasi */
  --ct-speed: .45s;
  --ct-ease: cubic-bezier(.22, .8, .25, 1);
}


/* ---------------------------------------------------------------------
   1b. RESET OVERLAY BAWAAN ELEMENTOR PADA ::before CONTAINER
   .e-con::before = absolute, 100% x 100%. Dinetralkan dulu supaya
   pseudo-element di bawah tidak menimpa isi container.
   HARUS berada SEBELUM rule ::before lainnya.
   --------------------------------------------------------------------- */
.e-con.ars-ct::before,
.ars-ct .ars-ct__card.e-con::before,
.ars-ct .ars-ct__photo.e-con::before,
.ars-ct .ars-ct__content.e-con::before {
  inset: auto;
  width: auto;
  height: auto;
  opacity: 1;
  z-index: auto;
  mix-blend-mode: normal;
  border-radius: 0;
  transition: none;
  background: none;
}


/* ---------------------------------------------------------------------
   2. CONTAINER PALING LUAR — latar sama dengan section lain
   --------------------------------------------------------------------- */
.e-con.ars-ct {
  --padding-top: var(--ct-pad-top);
  --padding-bottom: var(--ct-pad-bottom);
  --padding-left: max(var(--ct-pad-x), calc((100% - var(--ct-content-max)) / 2));
  --padding-right: max(var(--ct-pad-x), calc((100% - var(--ct-content-max)) / 2));

  --flex-direction: column;
  --align-items: stretch;

  position: relative;
  isolation: isolate;
  overflow: hidden;

  background-color: var(--ct-bg-top);
  background-image: linear-gradient(180deg, var(--ct-bg-top) 0%, var(--ct-bg-bottom) 100%);
}

.ars-ct,
.ars-ct *,
.ars-ct *::before,
.ars-ct *::after { box-sizing: border-box; }


/* ambient glow biru di sisi kanan atas (ringan: opacity saja) */
.e-con.ars-ct::before {
  content: "";
  position: absolute;
  width: clamp(440px, 56vw, 920px);
  height: clamp(440px, 56vw, 920px);
  right: clamp(-450px, -21vw, -180px);
  top: clamp(-330px, -15vw, -120px);
  z-index: -3;
  pointer-events: none;

  border-radius: 50%;

  background: radial-gradient(
      circle,
      rgba(92, 200, 255, .20) 0%,
      rgba(var(--ct-blue-rgb), .075) 36%,
      transparent 70%
  );

  animation: ctGlow 10s ease-in-out infinite;
}

@keyframes ctGlow {
  0%, 100% { opacity: .82; }
  50%      { opacity: 1; }
}


/* tekstur grid + watermark kata besar di pojok kiri bawah */
.e-con.ars-ct::after {
  content: var(--ct-watermark-word);

  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  user-select: none;

  display: flex;
  align-items: flex-end;
  justify-content: flex-start;

  padding-left: clamp(16px, 4vw, 70px);
  padding-bottom: 2px;

  white-space: nowrap;

  background-image:
      linear-gradient(rgba(var(--ct-blue-rgb), .030) 1px, transparent 1px),
      linear-gradient(90deg, rgba(var(--ct-blue-rgb), .030) 1px, transparent 1px);
  background-size: 48px 48px;

  font-family: var(--ct-font-display);
  font-size: clamp(50px, 7vw, 120px);
  line-height: .82;
  letter-spacing: -.035em;

  color: transparent;
  -webkit-text-stroke: 1px rgba(var(--ct-blue-rgb), .12);
}


/* ---------------------------------------------------------------------
   3. KARTU — .ars-ct__card
   --------------------------------------------------------------------- */
.ars-ct .ars-ct__card.e-con {
  --width: 100%;
  --flex-direction: row;
  --flex-wrap: nowrap;
  --align-items: stretch;
  --justify-content: flex-start;
  --gap: 0px;
  --column-gap: 0px;
  --row-gap: 0px;

  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;

  --border-radius: var(--ct-card-radius);

  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-width: 0;

  box-shadow:
      0 0 0 1px rgba(var(--ct-blue-rgb), .20),
      0 0 0 6px rgba(var(--ct-blue-rgb), .06),
      0 40px 80px -36px rgba(0, 70, 120, .62);
}

/* cadangan radius (specificity nol; kalah oleh panel) */
:where(.ars-ct .ars-ct__card.e-con) {
  border-radius: var(--ct-card-radius);
}


/* angka outline di kanan atas kartu */
.ars-ct .ars-ct__card.e-con::after {
  content: var(--ct-watermark-no);
  position: absolute;
  right: clamp(16px, 2.4vw, 34px);
  top: clamp(6px, 1.4vw, 18px);
  z-index: 4;

  pointer-events: none;
  user-select: none;

  font-family: var(--ct-font-display);
  font-size: clamp(56px, 6vw, 96px);
  line-height: 1;
  letter-spacing: -.04em;

  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, .30);
}


/* ---------------------------------------------------------------------
   4. SISI FOTO — .ars-ct__photo (container kosong)
   --------------------------------------------------------------------- */
.ars-ct .ars-ct__photo.e-con {
  --width: var(--ct-photo-w);
  --min-height: var(--ct-photo-h);
  --flex-grow: 0;
  --flex-shrink: 0;

  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;

  position: relative;
  overflow: hidden;
  min-width: 0;

  background-color: var(--ct-navy);
  background-size: cover;
  background-position: center;
}


/* lencana kaca di pojok kiri atas foto */
.ars-ct .ars-ct__photo.e-con::before {
  content: "\2726\00a0\00a0" var(--ct-badge);
  position: absolute;
  left: clamp(16px, 1.8vw, 24px);
  top: clamp(16px, 1.8vw, 24px);
  z-index: 3;
  pointer-events: none;

  padding: 9px 16px 9px 14px;
  border: 1px solid rgba(255, 255, 255, .38);
  border-radius: 999px;
  background: rgba(4, 32, 47, .50);
  box-shadow: 0 10px 24px -12px rgba(4, 32, 47, .6);

  font-family: var(--ct-font-body);
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--ct-white);
}

/* gelap tipis di foto + pudar navy ke arah panel */
.ars-ct .ars-ct__photo.e-con::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;

  background:
      linear-gradient(90deg, transparent 58%, rgba(11, 42, 69, .62) 100%),
      linear-gradient(180deg, rgba(4, 32, 47, .22) 0%, transparent 34%, rgba(4, 32, 47, .46) 100%);
}


/* ---------------------------------------------------------------------
   5. PANEL — .ars-ct__content
   Menimpa foto sebesar --ct-slant dan dipotong miring (clip-path),
   sehingga sambungan foto/panel berbentuk diagonal.
   --------------------------------------------------------------------- */
.ars-ct .ars-ct__content.e-con {
  --width: auto;
  --flex-grow: 1;
  --flex-shrink: 1;
  --flex-basis: 0%;

  --flex-direction: column;
  --align-items: flex-start;
  --justify-content: center;

  --gap: 18px;
  --row-gap: 18px;

  --padding-top: var(--ct-panel-pad-y);
  --padding-right: var(--ct-panel-pad-x);
  --padding-bottom: var(--ct-panel-pad-y);
  --padding-left: calc(var(--ct-panel-pad-x) + var(--ct-slant));

  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-width: 0;

  margin-left: calc(var(--ct-slant) * -1);
  clip-path: polygon(var(--ct-slant) 0, 100% 0, 100% 100%, 0 100%);

  background: var(--ct-panel-bg);
}


/* pola titik halus di pojok kanan bawah panel */
.ars-ct .ars-ct__content.e-con::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 240px;
  height: 200px;
  z-index: 0;
  pointer-events: none;

  background-image: radial-gradient(rgba(255, 255, 255, .30) 1.6px, transparent 1.6px);
  background-size: 18px 18px;

  -webkit-mask-image: linear-gradient(315deg, black 18%, transparent 74%);
  mask-image: linear-gradient(315deg, black 18%, transparent 74%);
}


/* cahaya lembut di sudut kanan atas panel */
.ars-ct .ars-ct__content.e-con::after {
  content: "";
  position: absolute;
  right: -90px;
  top: -110px;
  width: 280px;
  height: 280px;
  z-index: 0;
  border-radius: 50%;
  pointer-events: none;

  background: radial-gradient(
      circle,
      rgba(255, 255, 255, .22) 0%,
      rgba(255, 255, 255, .05) 52%,
      transparent 74%
  );
}


/* isi panel selalu di atas dekorasi */
.ars-ct .ars-ct__content > .elementor-element,
.ars-ct .ars-ct__content > .e-con-inner > .elementor-element {
  position: relative;
  z-index: 1;
}


/* ---------------------------------------------------------------------
   6. JUDUL — .ars-ct__title  (eyebrow + judul + garis aksen)
   Garis aksen dipasang di DALAM heading agar tidak pernah menimpa
   teks deskripsi di bawahnya.
   --------------------------------------------------------------------- */
.ars-ct .ars-ct__title.elementor-widget {
  width: 100%;
  margin: 0;
}

.ars-ct .ars-ct__title.elementor-widget::before {
  content: var(--ct-eyebrow-a) "\00a0\00a0\00a0|\00a0\00a0\00a0" var(--ct-eyebrow-b);
  display: block;
  margin-bottom: 18px;
  padding-left: 62px;

  background: linear-gradient(90deg, var(--ct-blue-light), rgba(92, 200, 255, .12)) left center / 44px 2px no-repeat;

  font-family: var(--ct-font-body);
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--ct-ice);

  pointer-events: none;
  user-select: none;
}

.ars-ct .ars-ct__title.elementor-widget-heading .elementor-heading-title {
  margin: 0;

  font-family: var(--ct-font-display);
  font-size: var(--ct-title-size);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.02em;
  color: var(--ct-white);

  text-shadow: 0 4px 24px rgba(4, 32, 47, .3);
  text-wrap: balance;
}

/* <span> di judul = teks gradasi putih -> sky */
.ars-ct .ars-ct__title .elementor-heading-title span {
  background: linear-gradient(90deg, #FFFFFF 0%, var(--ct-ice) 45%, var(--ct-blue-light) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: none;
}

.ars-ct .ars-ct__title .elementor-heading-title::after {
  content: "";
  display: block;
  width: 84px;
  height: 3px;
  margin-top: 18px;
  border-radius: 999px;

  background: linear-gradient(90deg, #FFFFFF 0%, rgba(255, 255, 255, .45) 55%, transparent 100%);

  transition: width .5s var(--ct-ease);
}

.ars-ct .ars-ct__card.e-con:hover .ars-ct__title .elementor-heading-title::after {
  width: 140px;
}


/* ---------------------------------------------------------------------
   7. DESKRIPSI — .ars-ct__desc
   --------------------------------------------------------------------- */
.ars-ct .ars-ct__desc.elementor-widget {
  width: 100%;
  max-width: 640px;
  margin: 0;
}

.ars-ct .ars-ct__desc.elementor-widget-text-editor {
  font-family: var(--ct-font-body);
  font-size: var(--ct-desc-size);
  font-weight: 300;
  line-height: var(--ct-desc-lh);
  color: var(--ct-text-on-blue);
}

.ars-ct .ars-ct__desc p {
  margin: 0 0 1em;
  font: inherit;
  color: inherit;
}

.ars-ct .ars-ct__desc p:last-child {
  margin-bottom: 0;
}


/* ---------------------------------------------------------------------
   8. ICON LIST — .ars-ct__list  (poin = kartu kaca)
   Space Between di panel sebaiknya 0 (jarak sudah diatur CSS).
   --------------------------------------------------------------------- */
.ars-ct .ars-ct__list.elementor-widget {
  --e-icon-list-icon-size: 15px;

  width: 100%;
  margin: 4px 0 0;
  min-width: 0;
}

.ars-ct .ars-ct__list .elementor-icon-list-items {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* kartu kaca */
.ars-ct .ars-ct__list .elementor-icon-list-item {
  position: relative;
  overflow: hidden;
  align-items: center;
  gap: 14px;

  margin: 0;
  padding: 12px 18px 12px 12px;

  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .15) 0%, rgba(255, 255, 255, .05) 100%);

  transition:
      transform .4s var(--ct-ease),
      border-color .35s ease,
      background .35s ease,
      box-shadow .4s ease;
}

.ars-ct .ars-ct__list .elementor-icon-list-item > a {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
}

/* garis terang di sisi kiri — muncul saat hover */
.ars-ct .ars-ct__list .elementor-icon-list-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 18%;
  bottom: 18%;
  width: 3px;
  border-radius: 0 999px 999px 0;
  pointer-events: none;
  background: linear-gradient(180deg, #FFFFFF, var(--ct-blue-light));
  transform: scaleY(0);
  transition: transform .4s var(--ct-ease);
}

/* ikon dalam lingkaran bercincin */
.ars-ct .ars-ct__list .elementor-icon-list-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;

  width: 34px;
  height: 34px;
  margin: 0;
  padding: 0;

  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 50%;

  color: var(--ct-white);
  background: linear-gradient(145deg, rgba(255, 255, 255, .30) 0%, rgba(255, 255, 255, .10) 100%);
  box-shadow: 0 0 0 4px rgba(255, 255, 255, .07);

  transition: transform .4s var(--ct-ease), box-shadow .4s ease, border-color .35s ease;
}

.ars-ct .ars-ct__list .elementor-icon-list-icon i {
  width: auto;
  line-height: 1;
  color: inherit;
}

.ars-ct .ars-ct__list .elementor-icon-list-icon svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}

.ars-ct .ars-ct__list .elementor-icon-list-text {
  padding: 0;

  font-family: var(--ct-font-body);
  font-size: var(--ct-list-size);
  font-weight: 400;
  line-height: 1.5;
  color: var(--ct-white);
}

@media (hover: hover) {

  .ars-ct .ars-ct__list .elementor-icon-list-item:hover {
    transform: translateX(6px);
    border-color: rgba(255, 255, 255, .55);
    background: linear-gradient(135deg, rgba(255, 255, 255, .26) 0%, rgba(255, 255, 255, .10) 100%);
    box-shadow: 0 16px 30px -18px rgba(4, 32, 47, .65);
  }

  .ars-ct .ars-ct__list .elementor-icon-list-item:hover::before {
    transform: scaleY(1);
  }

  .ars-ct .ars-ct__list .elementor-icon-list-item:hover .elementor-icon-list-icon {
    transform: scale(1.1);
    border-color: #FFFFFF;
    box-shadow: 0 0 0 6px rgba(255, 255, 255, .16), 0 10px 20px -8px rgba(92, 200, 255, .8);
  }
}


/* ---------------------------------------------------------------------
   9. BUTTON — .ars-ct__btn  (pill gradasi terang + kilau)
   Warna / font / ukuran dari panel tetap menang. Pilih Type "Gradient"
   di panel Button bila ingin mengganti gradasi bawaan.
   --------------------------------------------------------------------- */
.ars-ct .ars-ct__btn.elementor-widget {
  width: auto;
  margin: 10px 0 0;
}

.ars-ct .ars-ct__btn .elementor-button {
  position: relative;
  overflow: hidden;
  isolation: isolate;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;

  padding: 16px 34px;

  background-color: var(--ct-blue);
  background-image: linear-gradient(145deg, var(--ct-blue-light) 0%, var(--ct-blue) 55%, var(--ct-blue-dark) 100%);

  border: 0;
  border-radius: 999px;

  color: var(--ct-white);

  font-family: var(--ct-font-body);
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .03em;

  box-shadow:
      inset 0 0 0 1.5px rgba(255, 255, 255, .42),
      0 18px 34px -12px rgba(92, 200, 255, .75),
      0 8px 20px -10px rgba(4, 32, 47, .55);

  transition:
      transform var(--ct-speed) var(--ct-ease),
      box-shadow var(--ct-speed) var(--ct-ease);
}

/* kilau melintas */
.ars-ct .ars-ct__btn .elementor-button::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -60%;
  width: 40%;

  background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .6), transparent);

  transform: skewX(-20deg);
  transition: left .8s var(--ct-ease);
  pointer-events: none;
}

.ars-ct .ars-ct__btn .elementor-button-content-wrapper {
  position: relative;
  z-index: 1;
  align-items: center;
  gap: 12px;
}

/* ikon dalam lingkaran kecil */
.ars-ct .ars-ct__btn .elementor-button-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .22);
  transition: transform var(--ct-speed) var(--ct-ease), background .3s ease;
}

.ars-ct .ars-ct__btn .elementor-button:hover,
.ars-ct .ars-ct__btn .elementor-button:focus-visible {
  transform: translateY(-3px);
  box-shadow:
      inset 0 0 0 1.5px rgba(255, 255, 255, .7),
      0 0 0 6px rgba(255, 255, 255, .14),
      0 24px 40px -12px rgba(92, 200, 255, .9),
      0 10px 22px -10px rgba(4, 32, 47, .6);
}

.ars-ct .ars-ct__btn .elementor-button:hover::after {
  left: 130%;
}

.ars-ct .ars-ct__btn .elementor-button:hover .elementor-button-icon {
  transform: rotate(-12deg) scale(1.12);
  background: rgba(255, 255, 255, .34);
}

.ars-ct .ars-ct__btn .elementor-button:active {
  transform: translateY(-1px) scale(.97);
}

.ars-ct .ars-ct__btn .elementor-button:focus-visible {
  outline: 2px solid var(--ct-white);
  outline-offset: 4px;
}


/* ---------------------------------------------------------------------
   10. ANIMASI MUNCUL SAAT SCROLL (murni CSS)
   fill "backwards": hanya aktif SAAT masuk layar, tidak menahan transform.
   --------------------------------------------------------------------- */
@supports (animation-timeline: view()) {
  .ars-ct .ars-ct__card.e-con {
    animation: ctIn linear backwards;
    animation-timeline: view();
    animation-range: entry 0% entry 40%;
  }
}

@keyframes ctIn {
  from { opacity: 0; translate: 0 32px; }
  to   { opacity: 1; translate: 0 0; }
}


@media (prefers-reduced-motion: reduce) {
  .ars-ct *,
  .ars-ct *::before,
  .ars-ct *::after {
    animation: none;
    transition: none;
  }
}


/* =====================================================================
   RESPONSIVE
   ===================================================================== */

/* ---------- LAPTOP (≤ 1280px) ---------- */
@media (max-width: 1280px) {
  .ars-ct {
    --ct-pad-x: 40px;
    --ct-photo-w: 40%;
    --ct-panel-pad-x: 40px;
    --ct-panel-pad-y: 46px;
    --ct-slant: 38px;
  }
}


/* ---------- TABLET (≤ 1024px) — foto di atas, panel di bawah,
              sambungan jadi tepi MIRING horizontal ---------- */
@media (max-width: 1024px) {
  .ars-ct {
    --ct-pad-x: 32px;
    --ct-pad-top: 90px;
    --ct-pad-bottom: 90px;

    --ct-card-radius: 24px;
    --ct-photo-h: 320px;
    --ct-slant: 30px;
    --ct-panel-pad-x: 40px;
    --ct-panel-pad-y: 44px;

    --ct-title-size: clamp(30px, 4.4vw, 42px);
  }

  .ars-ct .ars-ct__card.e-con {
    --flex-direction: column;
    flex-direction: column;
  }

  .ars-ct .ars-ct__photo.e-con {
    --width: 100%;
    width: 100%;
  }

  /* pudar diarahkan ke bawah, bukan ke kanan */
  .ars-ct .ars-ct__photo.e-con::after {
    background:
        linear-gradient(180deg, rgba(4, 32, 47, .22) 0%, transparent 30%, rgba(11, 42, 69, .70) 100%);
  }

  .ars-ct .ars-ct__content.e-con {
    --width: 100%;
    --flex-grow: 0;
    --flex-basis: auto;
    --padding-top: calc(var(--ct-panel-pad-y) + var(--ct-slant));
    --padding-left: var(--ct-panel-pad-x);
    width: 100%;

    margin-left: 0;
    margin-top: calc(var(--ct-slant) * -1);
    clip-path: polygon(0 var(--ct-slant), 100% 0, 100% 100%, 0 100%);
  }

  .ars-ct .ars-ct__card.e-con::after {
    font-size: clamp(50px, 8vw, 76px);
  }

  .e-con.ars-ct::after {
    font-size: clamp(44px, 8vw, 84px);
  }
}


/* ---------- MOBILE (≤ 767px) ---------- */
@media (max-width: 767px) {
  .ars-ct {
    --ct-pad-x: 20px;
    --ct-pad-top: 66px;
    --ct-pad-bottom: 70px;

    --ct-card-radius: 20px;
    --ct-photo-h: 250px;
    --ct-slant: 22px;
    --ct-panel-pad-x: 22px;
    --ct-panel-pad-y: 32px;

    --ct-title-size: clamp(27px, 7.6vw, 35px);
    --ct-desc-size: 15px;
    --ct-desc-lh: 1.72;
    --ct-list-size: 14.5px;
  }

  .ars-ct .ars-ct__content.e-con {
    --gap: 15px;
    --row-gap: 15px;
  }

  .ars-ct .ars-ct__photo.e-con::before {
    left: 14px;
    top: 14px;
    padding: 8px 13px 8px 11px;
    font-size: 10px;
    letter-spacing: .13em;
  }

  .ars-ct .ars-ct__content.e-con::before {
    width: 160px;
    height: 140px;
    background-size: 15px 15px;
  }

  .ars-ct .ars-ct__title.elementor-widget::before {
    margin-bottom: 14px;
    padding-left: 44px;
    background-size: 30px 2px;
    font-size: 10.5px;
    letter-spacing: .15em;
  }

  .ars-ct .ars-ct__title .elementor-heading-title::after {
    width: 62px;
    height: 2px;
    margin-top: 14px;
  }

  .ars-ct .ars-ct__list .elementor-icon-list-items {
    gap: 10px;
  }

  .ars-ct .ars-ct__list .elementor-icon-list-item {
    gap: 12px;
    padding: 10px 14px 10px 10px;
    border-radius: 14px;
  }

  .ars-ct .ars-ct__list .elementor-icon-list-item > a {
    gap: 12px;
  }

  .ars-ct .ars-ct__list .elementor-icon-list-icon {
    width: 30px;
    height: 30px;
  }

  /* button melebar penuh agar mudah ditekan */
  .ars-ct .ars-ct__btn.elementor-widget {
    width: 100%;
  }

  .ars-ct .ars-ct__btn .elementor-button {
    width: 100%;
    min-height: 54px;
    padding: 16px 24px;
  }

  .ars-ct .ars-ct__card.e-con::after {
    right: 14px;
    top: 4px;
    font-size: 52px;
  }

  .e-con.ars-ct::after {
    padding-left: 12px;
    font-size: clamp(34px, 12vw, 58px);
  }
}


/* ---------- HP KECIL (≤ 400px) ---------- */
@media (max-width: 400px) {
  .ars-ct {
    --ct-pad-x: 18px;
    --ct-photo-h: 220px;
    --ct-panel-pad-x: 18px;
    --ct-card-radius: 18px;
    --ct-slant: 18px;
  }

  .ars-ct .ars-ct__title.elementor-widget::before {
    letter-spacing: .1em;
  }
}


/* ---------------------------------------------------------------------
   11. TOUCH / SELECTION
   --------------------------------------------------------------------- */
@media (hover: none) and (pointer: coarse) {
  .ars-ct a,
  .ars-ct button {
    -webkit-tap-highlight-color: transparent;
  }
}

.ars-ct ::selection {
  background: var(--ct-blue-light);
  color: var(--ct-navy-dark);
}


/* =====================================================================
   CATATAN

   1. Foto: Background Image di container ars-ct__photo (container
      dibiarkan kosong). Tinggi kartu: --ct-photo-h; lebar foto:
      --ct-photo-w; sudut kartu: --ct-card-radius.

   2. Sambungan miring: --ct-slant. Ingin lurus seperti dulu? set
      --ct-slant: 0px;

   3. Teks dekoratif (lencana foto, eyebrow, angka & kata watermark)
      diubah lewat --ct-badge, --ct-eyebrow-a/b, --ct-watermark-no,
      --ct-watermark-word di blok 1. Tidak ingin lencana di foto?
      hapus rule ".ars-ct__photo.e-con::before" di bagian 4.

   4. Warna panel: --ct-panel-bg (blok 1) — atau atur Background di panel
      Container ars-ct__content; panel yang menang.

   5. Icon List: Space Between di panel sebaiknya 0. Warna ikon dan teks
      tetap bisa diubah dari panel (default: putih).

   6. Cek di panel Container ars-ct__card: Direction = Row, Wrap = No Wrap.
      Kalau panel diset "Wrap", panel yang menang.
   --------------------------------------------------------------------- *//* End custom CSS */
/* Start custom CSS *//* =========================================================
   =========================================================
   MAI KEBALI TOUR — ANTI GESER KE SAMPING  (v2 — TEGAS)

   DIPASANG DI:
   Elementor > Hamburger (kiri atas) > Site Settings >
   Custom CSS

   PENTING: pasang di SITE SETTINGS, bukan Page Settings.
   Aturan pada <html> dan <body> adalah aturan global.
   Di beberapa versi Elementor, Custom CSS pada Page Settings
   dimuat belakangan / dibungkus, sehingga aturan global
   seperti ini bisa tidak berlaku sepenuhnya. Itu sebabnya
   versi sebelumnya masih bisa digeser.

   ---------------------------------------------------------
   KENAPA v1 MASIH BISA DIGESER
   ---------------------------------------------------------
   1. Lokasi pemasangan (lihat di atas).
   2. overflow-x:clip pada <html> tidak selalu cukup kalau
      elemen yang meluap memakai position:fixed — elemen
      fixed mengacu ke viewport, bukan ke <html>.
   3. Tanpa !important, aturan tema/plugin yang dimuat
      belakangan bisa menimpanya.

   v2 memperbaiki ketiganya sekaligus.
   ========================================================= */


/* ---------------------------------------------------------
   1. KUNCI LEBAR HALAMAN — TEGAS
   --------------------------------------------------------- */

html{
    overflow-x:clip !important;

    max-width:100% !important;
}


body{
    position:relative !important;

    width:100% !important;
    max-width:100% !important;

    overflow-x:clip !important;
}


/* cadangan untuk browser lama yang belum mendukung clip.
   hidden hanya di <body>, supaya sticky tetap bekerja */

@supports not (overflow:clip){

    html{
        overflow-x:hidden !important;
    }

    body{
        overflow-x:hidden !important;
    }

}


/* ---------------------------------------------------------
   2. SEMUA ANAK LANGSUNG BODY DIKUNCI
   Ini yang menangkap pembungkus tema apa pun namanya.
   --------------------------------------------------------- */

body > *{
    max-width:100% !important;
}


body > div:not([class*="mfp"]):not([class*="popup"]):not([class*="modal"]){
    overflow-x:clip;
}


/* ---------------------------------------------------------
   3. PEMBUNGKUS UTAMA
   --------------------------------------------------------- */

#page,
#content,
#primary,
#main,
.site,
.site-content,
.site-main,
.elementor,
.elementor-location-header,
.elementor-location-footer,
.elementor-location-single,
[data-elementor-type="wp-page"],
[data-elementor-type="wp-post"],
[data-elementor-type="header"],
[data-elementor-type="footer"]{

    max-width:100% !important;

    overflow-x:clip;
}


/* ---------------------------------------------------------
   4. SECTION / CONTAINER ELEMENTOR
   --------------------------------------------------------- */

.elementor-section,
.e-con,
.e-con-inner,
.elementor-widget-wrap,
.elementor-column{

    max-width:100%;
}


/* container tingkat atas = section.
   Paling sering meluap karena dekorasi keluar tepi. */

[data-elementor-type="wp-page"] > .e-con,
[data-elementor-type="wp-post"] > .e-con,
[data-elementor-type="header"] > .e-con,
[data-elementor-type="footer"] > .e-con,
.elementor-section-wrap > .elementor-section{

    overflow-x:clip;
}


/* ---------------------------------------------------------
   5. ELEMEN MENGAPUNG / FIXED
   Elemen position:fixed mengacu ke viewport, jadi tidak
   ikut terpotong oleh overflow induknya. Inilah penyebab
   yang paling sering tersisa.
   --------------------------------------------------------- */

body [style*="position: fixed"],
body [style*="position:fixed"],
.elementor-location-popup,
.goog-te-banner-frame,
.skiptranslate,
[class*="floating"],
[class*="float-btn"],
[class*="whatsapp"],
[id*="whatsapp"],
[class*="chat-widget"],
[class*="sticky-btn"]{

    max-width:100vw;
}


/* tombol mengapung tidak boleh melewati tepi kanan */

[class*="floating"],
[class*="float-btn"],
[class*="whatsapp"],
[id*="whatsapp"]{

    right:auto;
}


/* kalau tombol WhatsApp Anda memang di kanan bawah,
   HAPUS blok di atas dan pakai ini saja: */

/*
[class*="whatsapp"],
[id*="whatsapp"]{
    right:16px;
    max-width:calc(100vw - 32px);
}
*/


/* ---------------------------------------------------------
   6. ELEMEN MEDIA
   --------------------------------------------------------- */

img,
video,
iframe,
svg,
canvas,
table,
embed,
object{

    max-width:100%;
}


img{
    height:auto;
}


.swiper,
.elementor-swiper,
.elementor-main-swiper,
.swiper-container,
.swiper-wrapper{

    max-width:100%;
}


/* ---------------------------------------------------------
   7. PERBAIKAN 100vw
   Di Windows, 100vw sudah termasuk lebar scrollbar,
   jadi selalu ~17px lebih lebar dari area terlihat.
   --------------------------------------------------------- */

.elementor-section.elementor-section-stretched,
.e-con-full,
[style*="100vw"]{

    max-width:100% !important;
}


/* ---------------------------------------------------------
   8. TEKS PANJANG
   --------------------------------------------------------- */

p,
h1, h2, h3, h4, h5, h6,
li,
a,
span,
div{

    overflow-wrap:break-word;

    word-wrap:break-word;
}


/* ---------------------------------------------------------
   9. LAYAR SENTUH — geser horizontal dimatikan
   --------------------------------------------------------- */

@media (max-width:1024px){

    html,
    body{
        width:100% !important;
        max-width:100% !important;

        overscroll-behavior-x:none;
    }


    /* halaman hanya boleh digeser vertikal */

    body{
        touch-action:pan-y;
    }

}


/* elemen yang MEMANG perlu digeser ke samping
   dikembalikan izinnya di sini */

.swiper,
.swiper-wrapper,
.elementor-main-swiper,
.e-n-tabs-heading,
.elementor-widget-table-of-contents,
.elementor-widget-n-tabs,
[class*="overflow-x-auto"],
[class*="scroll-x"],
table{

    touch-action:pan-x pan-y !important;
}


/* =========================================================
   =========================================================
   KALAU MASIH BISA DIGESER JUGA

   Berarti ada SATU elemen position:fixed atau absolute yang
   keluar layar, dan elemen seperti itu tidak bisa dipotong
   oleh induknya. Harus ditemukan langsung.

   CARA MENEMUKANNYA (30 detik):

   1. Buka halaman di Chrome
   2. Tekan F12, pilih tab Console
   3. Tempel perintah ini, tekan Enter:

      const w = document.documentElement.clientWidth;
      document.querySelectorAll('*').forEach(el=>{
        const r = el.getBoundingClientRect();
        if(r.right > w + 1 || r.left < -1){
          el.style.outline='3px solid red';
          console.log(Math.round(r.left), Math.round(r.right), el);
        }
      });

   4. Elemen yang meluap akan bergaris merah, dan di Console
      terlihat nama serta posisinya.

   Kirimkan hasil Console itu kalau Anda mau, nanti saya
   buatkan perbaikan yang menyasar elemen itu langsung,
   bukan sekadar menutup luapannya.

   ---------------------------------------------------------
   CATATAN
   ---------------------------------------------------------
   - Tampilan tidak berubah sama sekali. File ini hanya
     memotong bagian yang berada DI LUAR layar, jadi tidak
     ada elemen yang terpotong di area yang terlihat.
   - Sticky header tetap bekerja karena memakai
     overflow-x:clip, bukan hidden.
   - Carousel, tabs geser, dan tabel lebar tetap bisa
     digeser karena dikecualikan di blok 9.
   =========================================================
   ========================================================= *//* End custom CSS */