.elementor-48 .elementor-element.elementor-element-56a8fc0{--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-48 .elementor-element.elementor-element-56a8fc0:not(.elementor-motion-effects-element-type-background), .elementor-48 .elementor-element.elementor-element-56a8fc0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;background-image:url("https://cvbalingkangparadise.com/wp-content/uploads/2026/09/content-30.jpg");background-position:center center;background-size:cover;}.elementor-48 .elementor-element.elementor-element-56a8fc0::before, .elementor-48 .elementor-element.elementor-element-56a8fc0 > .elementor-background-video-container::before, .elementor-48 .elementor-element.elementor-element-56a8fc0 > .e-con-inner > .elementor-background-video-container::before, .elementor-48 .elementor-element.elementor-element-56a8fc0 > .elementor-background-slideshow::before, .elementor-48 .elementor-element.elementor-element-56a8fc0 > .e-con-inner > .elementor-background-slideshow::before, .elementor-48 .elementor-element.elementor-element-56a8fc0 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';background-color:#000000;}.elementor-48 .elementor-element.elementor-element-46e7d75{--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-48 .elementor-element.elementor-element-68f66ad{--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-48 .elementor-element.elementor-element-f5b4c19{--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-48 .elementor-element.elementor-element-f5b4c19.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-48 .elementor-element.elementor-element-fc18480 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:13px;font-weight:700;line-height:1.08em;color:#FFFFFF;}.elementor-48 .elementor-element.elementor-element-3dd4ce8{text-align:start;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-48 .elementor-element.elementor-element-3dd4ce8 .elementor-heading-title{font-family:"El Messiri", Sans-serif;font-size:54px;font-weight:600;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-48 .elementor-element.elementor-element-3f23c0b{font-family:"DM Sans", Sans-serif;font-size:15px;font-weight:500;line-height:1.65em;color:#F7F1E7;}.elementor-48 .elementor-element.elementor-element-cf3b70e{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:50px;--padding-bottom:050px;--padding-left:26px;--padding-right:26px;}.elementor-48 .elementor-element.elementor-element-df608b2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:72px 96px;--row-gap:72px;--column-gap:96px;}.elementor-48 .elementor-element.elementor-element-980285e{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-980285e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-48 .elementor-element.elementor-element-48b4898 .elementor-heading-title{font-family:"DM Sans", Sans-serif;color:#A83832;}.elementor-48 .elementor-element.elementor-element-4438e3f .elementor-heading-title{font-family:"El Messiri", Sans-serif;color:#6D1F24;}.elementor-48 .elementor-element.elementor-element-bf1e34d{font-family:"DM Sans", Sans-serif;color:#2B2523;}.elementor-48 .elementor-element.elementor-element-93dfbb6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-727c84d{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-48 .elementor-element.elementor-element-93055c7 .elementor-heading-title{font-family:"DM Sans", Sans-serif;color:#A83832;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-48 .elementor-element.elementor-element-db6bb74 .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-db6bb74 .elementor-icon{font-size:30px;}.elementor-48 .elementor-element.elementor-element-db6bb74 .elementor-icon svg{height:30px;}.elementor-48 .elementor-element.elementor-element-829f4c7{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:4px 4px;--row-gap:4px;--column-gap:4px;}.elementor-48 .elementor-element.elementor-element-829f4c7.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-48 .elementor-element.elementor-element-08d78d1 .elementor-heading-title{font-family:"El Messiri", Sans-serif;color:#6D1F24;}.elementor-48 .elementor-element.elementor-element-45b9239{font-family:"DM Sans", Sans-serif;color:#2B2523;}.elementor-48 .elementor-element.elementor-element-c9ed077 .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-c9ed077{width:var( --container-widget-width, 15.423% );max-width:15.423%;--container-widget-width:15.423%;--container-widget-flex-grow:0;}.elementor-48 .elementor-element.elementor-element-c9ed077.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-48 .elementor-element.elementor-element-3b10b96{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-48 .elementor-element.elementor-element-2ae4806 .elementor-heading-title{font-family:"DM Sans", Sans-serif;color:#A83832;}.elementor-48 .elementor-element.elementor-element-b39960d .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-b39960d .elementor-icon{font-size:30px;}.elementor-48 .elementor-element.elementor-element-b39960d .elementor-icon svg{height:30px;}.elementor-48 .elementor-element.elementor-element-bb7812a{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:4px 4px;--row-gap:4px;--column-gap:4px;}.elementor-48 .elementor-element.elementor-element-910a91e .elementor-heading-title{font-family:"El Messiri", Sans-serif;color:#6D1F24;}.elementor-48 .elementor-element.elementor-element-46a26a3{font-family:"DM Sans", Sans-serif;color:#2B2523;}.elementor-48 .elementor-element.elementor-element-ad6c552 .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-8254e0b{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-48 .elementor-element.elementor-element-415e5b0 .elementor-heading-title{font-family:"DM Sans", Sans-serif;color:#A83832;}.elementor-48 .elementor-element.elementor-element-e426f54 .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-e426f54 .elementor-icon{font-size:30px;}.elementor-48 .elementor-element.elementor-element-e426f54 .elementor-icon svg{height:30px;}.elementor-48 .elementor-element.elementor-element-16febb5{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:4px 4px;--row-gap:4px;--column-gap:4px;}.elementor-48 .elementor-element.elementor-element-de4248e .elementor-heading-title{font-family:"El Messiri", Sans-serif;color:#6D1F24;}.elementor-48 .elementor-element.elementor-element-da5c1fa{font-family:"DM Sans", Sans-serif;color:#2B2523;}.elementor-48 .elementor-element.elementor-element-50bc7fc .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-c5a05c8{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-48 .elementor-element.elementor-element-154ca4d .elementor-heading-title{font-family:"DM Sans", Sans-serif;color:#A83832;}.elementor-48 .elementor-element.elementor-element-1765046 .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-1765046 .elementor-icon{font-size:30px;}.elementor-48 .elementor-element.elementor-element-1765046 .elementor-icon svg{height:30px;}.elementor-48 .elementor-element.elementor-element-a4eda38{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:4px 4px;--row-gap:4px;--column-gap:4px;}.elementor-48 .elementor-element.elementor-element-a4eda38.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-48 .elementor-element.elementor-element-59223f9 .elementor-heading-title{font-family:"El Messiri", Sans-serif;color:#6D1F24;}.elementor-48 .elementor-element.elementor-element-783986a{font-family:"DM Sans", Sans-serif;color:#2B2523;}.elementor-48 .elementor-element.elementor-element-67430f3 .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-dea54fe{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:18px 18px;--row-gap:18px;--column-gap:18px;}.elementor-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );background-color:var( --e-global-color-accent );}.elementor-48 .elementor-element.elementor-element-d4fd7cd .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-48 .elementor-element.elementor-element-4467e06{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:18px 18px;--row-gap:18px;--column-gap:18px;}.elementor-48 .elementor-element.elementor-element-4467e06.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-48 .elementor-element.elementor-element-414cc1c{--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;}.elementor-48 .elementor-element.elementor-element-4e0d52b iframe{height:600px;}.elementor-48 .elementor-element.elementor-element-4e0d52b{border-radius:40px 40px 40px 40px;}.elementor-48 .elementor-element.elementor-element-2e67fa8{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--margin-top:-9px;--margin-bottom:48px;--margin-left:0px;--margin-right:0px;--padding-top:22px;--padding-bottom:22px;--padding-left:24px;--padding-right:24px;}.elementor-48 .elementor-element.elementor-element-2e67fa8.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-48 .elementor-element.elementor-element-62aa7e0{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:4px;--margin-bottom:36px;--margin-left:0px;--margin-right:0px;}.elementor-48 .elementor-element.elementor-element-1870616{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:9px 9px;--row-gap:9px;--column-gap:9px;}.elementor-48 .elementor-element.elementor-element-b4dafc3 .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-b4dafc3 .elementor-icon{font-size:27px;}.elementor-48 .elementor-element.elementor-element-b4dafc3 .elementor-icon svg{height:27px;}.elementor-48 .elementor-element.elementor-element-4c237cc .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-4c237cc .elementor-icon{font-size:27px;}.elementor-48 .elementor-element.elementor-element-4c237cc .elementor-icon svg{height:27px;}.elementor-48 .elementor-element.elementor-element-b5b1d3e .elementor-icon-wrapper{text-align:center;}.elementor-48 .elementor-element.elementor-element-b5b1d3e .elementor-icon{font-size:27px;}.elementor-48 .elementor-element.elementor-element-b5b1d3e .elementor-icon svg{height:27px;}.elementor-48 .elementor-element.elementor-element-2504db2{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-bf17305{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;}.elementor-48 .elementor-element.elementor-element-0b1c268{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-c9baebc .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;}.elementor-48 .elementor-element.elementor-element-397d9a7{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;}.elementor-48 .elementor-element.elementor-element-fab925d .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-48 .elementor-element.elementor-element-7b150be .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-48 .elementor-element.elementor-element-880508f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;}.elementor-48 .elementor-element.elementor-element-092b6f5{--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;}.elementor-48 .elementor-element.elementor-element-d732a0b{--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;}.elementor-48 .elementor-element.elementor-element-578b1b9{--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;}.elementor-48 .elementor-element.elementor-element-af313fc{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-8e47c73{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-48 .elementor-element.elementor-element-8941acc{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-73b482e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-5ccb2d5{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-48 .elementor-element.elementor-element-56a8fc0{--width:100%;}.elementor-48 .elementor-element.elementor-element-68f66ad{--content-width:100%;}.elementor-48 .elementor-element.elementor-element-f5b4c19{--width:87.366%;}.elementor-48 .elementor-element.elementor-element-df608b2{--content-width:1440px;}.elementor-48 .elementor-element.elementor-element-980285e{--content-width:100%;}.elementor-48 .elementor-element.elementor-element-829f4c7{--width:69.78%;}.elementor-48 .elementor-element.elementor-element-a4eda38{--width:66.98%;}.elementor-48 .elementor-element.elementor-element-4467e06{--width:42.361%;}.elementor-48 .elementor-element.elementor-element-2e67fa8{--width:42.795%;}.elementor-48 .elementor-element.elementor-element-0b1c268{--width:46%;}.elementor-48 .elementor-element.elementor-element-af313fc{--width:54%;}}@media(max-width:1024px) and (min-width:768px){.elementor-48 .elementor-element.elementor-element-f5b4c19{--width:72%;}.elementor-48 .elementor-element.elementor-element-4467e06{--width:100%;}}@media(min-width:1025px){.elementor-48 .elementor-element.elementor-element-56a8fc0:not(.elementor-motion-effects-element-type-background), .elementor-48 .elementor-element.elementor-element-56a8fc0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:1024px){.elementor-48 .elementor-element.elementor-element-56a8fc0{--min-height:349px;--padding-top:82px;--padding-bottom:68px;--padding-left:30px;--padding-right:30px;}.elementor-48 .elementor-element.elementor-element-68f66ad{--padding-top:0px;--padding-bottom:0px;--padding-left:22px;--padding-right:22px;}.elementor-48 .elementor-element.elementor-element-fc18480 .elementor-heading-title{font-size:18px;}.elementor-48 .elementor-element.elementor-element-3dd4ce8 .elementor-heading-title{font-size:50px;}.elementor-48 .elementor-element.elementor-element-3f23c0b{font-size:14px;}.elementor-48 .elementor-element.elementor-element-cf3b70e{--padding-top:84px;--padding-bottom:84px;--padding-left:30px;--padding-right:30px;}.elementor-48 .elementor-element.elementor-element-df608b2{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:76px 0px;--row-gap:76px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-4e0d52b iframe{height:470px;}}@media(max-width:767px){.elementor-48 .elementor-element.elementor-element-56a8fc0{--padding-top:62px;--padding-bottom:58px;--padding-left:18px;--padding-right:18px;}.elementor-48 .elementor-element.elementor-element-46e7d75{--padding-top:70px;--padding-bottom:36px;--padding-left:0px;--padding-right:0px;}.elementor-48 .elementor-element.elementor-element-68f66ad{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-48 .elementor-element.elementor-element-f5b4c19{--width:100%;}.elementor-48 .elementor-element.elementor-element-fc18480 .elementor-heading-title{font-size:16px;}.elementor-48 .elementor-element.elementor-element-3dd4ce8 .elementor-heading-title{font-size:42px;}.elementor-48 .elementor-element.elementor-element-3f23c0b{font-size:14px;}.elementor-48 .elementor-element.elementor-element-cf3b70e{--padding-top:68px;--padding-bottom:68px;--padding-left:18px;--padding-right:18px;}.elementor-48 .elementor-element.elementor-element-df608b2{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:60px 0px;--row-gap:60px;--column-gap:0px;}.elementor-48 .elementor-element.elementor-element-727c84d{--padding-top:15px;--padding-bottom:15px;--padding-left:14px;--padding-right:14px;}.elementor-48 .elementor-element.elementor-element-3b10b96{--padding-top:15px;--padding-bottom:15px;--padding-left:14px;--padding-right:14px;}.elementor-48 .elementor-element.elementor-element-8254e0b{--padding-top:15px;--padding-bottom:15px;--padding-left:14px;--padding-right:14px;}.elementor-48 .elementor-element.elementor-element-c5a05c8{--padding-top:15px;--padding-bottom:15px;--padding-left:14px;--padding-right:14px;}.elementor-48 .elementor-element.elementor-element-dea54fe{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-48 .elementor-element.elementor-element-4467e06{--width:100%;}.elementor-48 .elementor-element.elementor-element-4e0d52b iframe{height:380px;}}/* Start custom CSS for container, class: .elementor-element-46e7d75 *//* ============================================================
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-48 .elementor-element.elementor-element-46e7d75{
  --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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__photo-main,
.elementor-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__photo-top,
.elementor-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__glass-text{
  width:100%;
  margin-top:5px;
}


.elementor-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__glass-text,
.elementor-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__glass-text .elementor-widget-container,
.elementor-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__glass:hover::before{
  width:58px;
}


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

@media(max-width:1024px){

  .elementor-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__right{
    min-height:
      640px!important;
  }


  .elementor-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__right{
    min-height:
      510px!important;
  }


  .elementor-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__right::before{
    top:4%;
    left:8%;

    width:78%;
    height:92%;
  }


  .elementor-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__right::after{
    top:16%;
    left:22%;

    width:57%;
    height:64%;
  }


  .elementor-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__glass .elementor-heading-title{
    font-size:
      14px!important;

    line-height:
      1.12!important;
  }


  .elementor-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__glass-text,
  .elementor-48 .elementor-element.elementor-element-46e7d75 .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-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__right *,
  .elementor-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__right *::before,
  .elementor-48 .elementor-element.elementor-element-46e7d75 .coastal-hero-collage__right *::after{
    animation:none!important;
    transition:none!important;
  }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-56a8fc0 *//* ============================================================
PUTU BALI TOUR — HERITAGE RED
PREMIUM CINEMATIC HERO V8 — ELEMENTOR HEADING COLOR CONTROL

Native Elementor
No HTML Widget

PALETTE
Deep Maroon   #6D1F24
Heritage Red  #A83832
Sunset Gold   #D7A44A
Brick Red     #C85B4A
Warm Ivory    #F7F1E7
Soft Blush    #EAD8D2
Charcoal      #2B2523
Pure White    #FFFFFF
============================================================ */


/* ============================================================
01. DESIGN SYSTEM
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0{

    --pt-maroon:#6D1F24;
    --pt-maroon-dark:#57181D;

    --pt-red:#A83832;
    --pt-red-dark:#8E2B2C;

    --pt-brick:#C85B4A;

    --pt-gold:#D7A44A;
    --pt-gold-light:#D7A44A;

    --pt-ivory:#F7F1E7;
    --pt-blush:#EAD8D2;

    --pt-charcoal:#2B2523;
    --pt-white:#FFFFFF;

    --pt-line:
        rgba(215,164,74,.24);

    --pt-glass:
        rgba(255,255,255,.075);

    --pt-shadow:
        0 22px 54px
        rgba(65,27,27,.16);

    --pt-shadow-strong:
        0 30px 72px
        rgba(65,27,27,.24);

    --pt-ease:
        cubic-bezier(.22,.72,.2,1);

    position:relative;

    color:
        var(--pt-charcoal);

}


/* ============================================================
02. GLOBAL SAFETY
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 *,
.elementor-48 .elementor-element.elementor-element-56a8fc0 *::before,
.elementor-48 .elementor-element.elementor-element-56a8fc0 *::after{

    box-sizing:
        border-box;

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-shell{

    width:
        100%;

    max-width:
        1240px;

    margin-inline:
        auto;

}


/* ============================================================
03. SECTION SYSTEM
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-section{

    position:
        relative;

    isolation:
        isolate;

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-section-label{

    letter-spacing:
        .18em;

    text-transform:
        uppercase;

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-section-title{

    position:
        relative;

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-section-title::after{

    content:"";

    display:block;

    width:
        52px;

    height:
        2px;

    margin-top:
        11px;

    border-radius:
        999px;

    background:
        linear-gradient(
            90deg,

            var(--pt-gold) 0%,
            rgba(215,164,74,.42) 56%,
            transparent 100%
        );

    box-shadow:
        0 2px 8px
        rgba(215,164,74,.12);

    transition:
        width .48s
        var(--pt-ease);

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-section:hover
.pt-section-title::after{

    width:
        86px;

}


/* ============================================================
04. TEXT LINK
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-text-link
.elementor-button{

    padding:
        0 !important;

    background:
        transparent !important;

    color:
        var(--pt-red) !important;

    box-shadow:
        none !important;

    border:
        0 !important;

    transition:
        color .30s ease,
        transform .34s var(--pt-ease);

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-text-link
.elementor-button:hover{

    color:
        var(--pt-maroon) !important;

    transform:
        translateX(4px);

}


/* ============================================================
05. GLOBAL BUTTON MOTION
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .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;

}


/* ============================================================
06. HERO WRAPPER — NO PHOTO BACKGROUND
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero{

    position:
        relative;

    isolation:
        isolate;

    overflow:
        hidden;

    min-height:
        650px;


    background:

        radial-gradient(
            circle at 80% 18%,
            rgba(215,164,74,.115) 0%,
            rgba(215,164,74,.035) 25%,
            transparent 50%
        ),

        radial-gradient(
            circle at 12% 82%,
            rgba(234,216,210,.085) 0%,
            rgba(200,91,74,.045) 28%,
            transparent 56%
        ),

        linear-gradient(
            118deg,

            #57181D 0%,

            #6D1F24 38%,

            #8E2B2C 70%,

            #A83832 100%
        );


    border-top:
        1px solid
        rgba(215,164,74,.10);

    border-bottom:
        1px solid
        rgba(255,255,255,.05);

}


/* ============================================================
07. HERO DECORATIVE LAYER — CSS ONLY
Background image has been fully removed.
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::before{

    content:"";

    position:
        absolute;

    inset:
        0;

    z-index:
        -3;


    background:

        linear-gradient(
            115deg,
            rgba(255,255,255,.028) 0%,
            transparent 31%,
            rgba(215,164,74,.045) 68%,
            transparent 100%
        ),

        repeating-linear-gradient(
            90deg,
            transparent 0,
            transparent 86px,
            rgba(255,255,255,.012) 87px,
            transparent 88px
        );


    opacity:
        .92;


    pointer-events:
        none;


    transform:
        none;


    filter:
        none;


    transition:
        opacity .7s ease;

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero:hover::before{

    opacity:
        1;

    transform:
        none;

    filter:
        none;

}


/* ============================================================
08. HERO LOWER CINEMATIC FADE
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::after{

    content:"";

    position:
        absolute;

    left:
        0;

    right:
        0;

    bottom:
        0;


    height:
        185px;


    z-index:
        -1;


    background:

        linear-gradient(
            180deg,

            transparent 0%,

            rgba(87,24,29,.14) 34%,

            rgba(43,37,35,.34) 100%
        );

}


/* ============================================================
09. SUBTLE LIGHT ATMOSPHERE — CSS ONLY
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-shell{

    position:
        relative;

}


/* soft luxury glow */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-shell::before{

    content:"";

    position:
        absolute;


    right:
        -90px;

    top:
        -120px;


    width:
        420px;

    height:
        420px;


    border-radius:
        50%;


    background:

        radial-gradient(
            circle,

            rgba(215,164,74,.11) 0%,

            rgba(215,164,74,.035) 40%,

            transparent 70%
        );


    filter:
        blur(8px);


    pointer-events:
        none;


    animation:
        ptHeroGoldGlow
        9s ease-in-out
        infinite alternate;

}


@keyframes ptHeroGoldGlow{

    0%{

        opacity:
            .55;

        transform:
            translate3d(0,0,0)
            scale(.96);

    }


    100%{

        opacity:
            .88;

        transform:
            translate3d(-18px,16px,0)
            scale(1.05);

    }

}


/* ============================================================
10. HERO COPY
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy{

    position:
        relative;

    z-index:
        4;

}


/* decorative luxury rail */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy::before{

    content:"";

    position:
        absolute;


    left:
        -22px;

    top:
        4px;


    width:
        3px;

    height:
        126px;


    border-radius:
        999px;


    background:

        linear-gradient(
            180deg,

            #D7A44A 0%,

            #D7A44A 42%,

            #C85B4A 72%,

            rgba(200,91,74,.12) 100%
        );


    box-shadow:

        0 0 17px
        rgba(215,164,74,.20),

        0 0 32px
        rgba(215,164,74,.07);


    pointer-events:
        none;

}


/* secondary tiny accent */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy::after{
    content:none !important;
    display:none !important;
}


/* ============================================================
11. EYEBROW
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-eyebrow{

    width:
        max-content;

    max-width:
        100%;


    padding:
        7px 13px;


    border:
        1px solid
        rgba(215,164,74,.24);


    border-radius:
        999px;


    background:
        linear-gradient(
            135deg,
            rgba(87,24,29,.34),
            rgba(109,31,36,.18)
        );


    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.055),

        0 8px 18px
        rgba(65,27,27,.08);


    -webkit-backdrop-filter:
        blur(9px);

    backdrop-filter:
        blur(9px);

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-eyebrow
.elementor-heading-title{

    color:
        var(--pt-gold) !important;


    letter-spacing:
        .20em;


    text-transform:
        uppercase;

}


/* ============================================================
12. HERO TITLE
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title
.elementor-heading-title{

    /* COLOR FROM ELEMENTOR:
       Elementor > Style > Text Color */


    text-shadow:

        0 4px 20px
        rgba(0,0,0,.24),

        0 14px 38px
        rgba(49,8,11,.15);

}


/* ============================================================
13. HERO ACCENT TITLE
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title-accent{

    position:
        relative;

    width:
        max-content;

    max-width:
        100%;

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title-accent
.elementor-heading-title{

    /* COLOR FROM ELEMENTOR:
       Elementor > Style > Text Color */


    text-shadow:

        0 4px 18px
        rgba(49,8,11,.24),

        0 10px 30px
        rgba(215,164,74,.10);

}


/* accent underline */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title-accent::after{

    content:"";

    display:block;


    width:
        88px;

    height:
        2px;


    margin-top:
        10px;


    border-radius:
        999px;


    background:

        linear-gradient(
            90deg,

            var(--pt-gold),

            rgba(215,164,74,.38),

            transparent
        );


    box-shadow:

        0 3px 12px
        rgba(215,164,74,.14);


    transition:
        width .52s var(--pt-ease);

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero:hover
.pt-hero-title-accent::after{

    width:
        138px;

}


/* ============================================================
14. HERO DESCRIPTION
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-text{

    max-width:
        650px;

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-text p{

    color:
        rgba(255,255,255,.84) !important;


    text-shadow:

        0 2px 10px
        rgba(0,0,0,.14);

}


/* ============================================================
15. PRIMARY CTA
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-primary-btn
.elementor-button{

    position:
        relative;

    overflow:
        hidden;


    border:
        1px solid
        rgba(255,255,255,.14);


    border-radius:
        12px;


    background:
        #A83832;


    color:
        #FFFFFF;


    box-shadow:

        0 13px 30px
        rgba(109,31,36,.26),

        inset 0 1px 0
        rgba(255,255,255,.12);


    transition:
        transform .36s var(--pt-ease),
        background .32s ease,
        border-color .32s ease,
        box-shadow .36s var(--pt-ease);

}


/* shine */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .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,.12) 22%,

            rgba(255,255,255,.64) 50%,

            rgba(255,255,255,.12) 78%,

            transparent 100%
        );


    transition:

        left .78s ease;

}


/* bottom light */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .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,.60),

            transparent
        );


    opacity:
        .55;

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-primary-btn
.elementor-button:hover{

    transform:
        translateY(-3px);


    background:
        #8E2B2C;


    border-color:
        rgba(215,164,74,.26);


    box-shadow:

        0 19px 40px
        rgba(109,31,36,.34),

        inset 0 1px 0
        rgba(255,255,255,.16);

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-primary-btn
.elementor-button:hover::before{

    left:
        138%;

}


/* ============================================================
16. SECONDARY CTA
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-secondary
.elementor-button{

    overflow:
        hidden;


    border:
        1px solid
        rgba(215,164,74,.30);


    border-radius:
        12px;


    background:
        rgba(109,31,36,.70);


    color:
        #FFFFFF;


    box-shadow:

        inset 0 1px 0
        rgba(255,255,255,.055),

        0 10px 24px
        rgba(65,27,27,.14);


    -webkit-backdrop-filter:
        blur(10px);

    backdrop-filter:
        blur(10px);

}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-secondary
.elementor-button:hover{

    transform:
        translateY(-3px);


    border-color:
        rgba(215,164,74,.48);


    background:
        #57181D;


    box-shadow:

        0 16px 32px
        rgba(65,27,27,.22);

}


/* ============================================================
17. TRUST AREA — STABLE PREMIUM GRID V6
Fix utama:
- override width bawaan Elementor
- semua card benar-benar sama lebar
- tidak ada card yang menyempit
- tinggi card compact dan konsisten
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .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:16px !important;

    align-items:stretch !important;

    border-top:1px solid rgba(215,164,74,.20);

    isolation:isolate;
}


/* refined divider */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .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(215,164,74,.34) 58%,
            transparent 100%
        );

    box-shadow:
        0 2px 10px
        rgba(215,164,74,.10);
}


/* ============================================================
18. TRUST ITEMS — COMPACT LUXURY CARD V6
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .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:72px !important;
    height:auto !important;

    margin:0 !important;
    padding:14px 16px !important;

    display:grid !important;

    grid-template-columns:
        26px
        minmax(0,1fr)
        !important;

    column-gap:11px !important;

    align-items:center !important;
    align-content:center !important;

    justify-items:start !important;

    border:
        1px solid
        rgba(247,241,231,.095);

    border-radius:14px;

    background:
        linear-gradient(
            135deg,
            rgba(247,241,231,.055) 0%,
            rgba(234,216,210,.026) 48%,
            rgba(87,24,29,.16) 100%
        );

    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.045),
        0 10px 24px
        rgba(65,27,27,.10);

    -webkit-backdrop-filter:blur(9px);
    backdrop-filter:blur(9px);

    transform:translateY(0);

    transition:
        transform .36s var(--pt-ease),
        border-color .30s ease,
        background .30s ease,
        box-shadow .36s var(--pt-ease);
}


/* subtle light */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust::before{
    content:"";

    position:absolute;
    inset:0;

    z-index:-1;

    pointer-events:none;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.045) 0%,
            transparent 46%,
            rgba(255,255,255,.01) 100%
        );
}


/* tiny top accent */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust::after{
    content:"";

    position:absolute;

    top:0;
    left:16px;

    width:38px;
    height:2px;

    border-radius:
        0 0 999px 999px;

    background:
        linear-gradient(
            90deg,
            var(--pt-gold),
            rgba(215,164,74,.18)
        );

    transition:
        width .45s var(--pt-ease),
        box-shadow .30s ease;
}


/* ============================================================
RESET ELEMENTOR CHILD WIDTHS
Ini bagian penting agar text tidak vertikal / menyempit.
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust > .elementor-element{
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
}


/* icon widget */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .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;
}


/* heading widget */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .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;
}


/* ============================================================
ICON
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust .elementor-icon-wrapper{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    margin:0 !important;
}


.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust .elementor-icon{
    width:26px;
    height:26px;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    color:var(--pt-gold) !important;

    filter:
        drop-shadow(
            0 4px 9px
            rgba(215,164,74,.16)
        );

    transition:
        transform .34s var(--pt-ease),
        filter .34s ease;
}


/* ============================================================
TEXT
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust .elementor-heading-title{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;

    margin:0 !important;

    color:
        rgba(255,255,255,.94)
        !important;

    line-height:1.35 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;

    writing-mode:
        horizontal-tb
        !important;

    text-orientation:
        mixed
        !important;
}


/* ============================================================
HOVER
============================================================ */

@media(hover:hover) and (pointer:fine){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust:hover{
        transform:
            translateY(-4px);

        border-color:
            rgba(215,164,74,.24);

        background:
            linear-gradient(
                135deg,
                rgba(215,164,74,.095) 0%,
                rgba(234,216,210,.045) 42%,
                rgba(87,24,29,.22) 100%
            );

        box-shadow:
            0 17px 34px
            rgba(65,27,27,.16),
            inset 0 1px 0
            rgba(255,255,255,.065);
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust:hover::after{
        width:
            calc(100% - 32px);

        box-shadow:
            0 2px 11px
            rgba(215,164,74,.15);
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust:hover
    .elementor-icon{
        transform:
            scale(1.08);

        filter:
            drop-shadow(
                0 6px 13px
                rgba(215,164,74,.23)
            );
    }

}


/* ============================================================
TRUST — TABLET
============================================================ */

@media(min-width:768px) and (max-width:1024px){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-trust{
        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;

        gap:13px !important;

        padding-top:17px;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust{
        min-height:68px !important;

        padding:
            13px 15px
            !important;

        grid-template-columns:
            25px minmax(0,1fr)
            !important;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust > .elementor-widget-icon{
        --width:25px !important;

        width:25px !important;
        min-width:25px !important;
        max-width:25px !important;
    }

}


/* ============================================================
TRUST — MOBILE
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-trust{
        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;

        gap:10px !important;

        margin-top:6px;

        padding-top:15px;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust{
        min-height:62px !important;

        padding:
            11px 12px
            !important;

        grid-template-columns:
            22px minmax(0,1fr)
            !important;

        column-gap:
            9px !important;

        border-radius:
            12px;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust > .elementor-widget-icon{
        --width:22px !important;

        width:22px !important;
        min-width:22px !important;
        max-width:22px !important;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust .elementor-icon{
        width:22px;
        height:22px;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust::after{
        left:12px;

        width:28px;
    }

}


/* ============================================================
TRUST — SMALL MOBILE
============================================================ */

@media(max-width:480px){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-trust{
        grid-template-columns:
            1fr
            !important;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust{
        min-height:58px !important;
    }

}


/* ============================================================
19. DESKTOP > 1024
============================================================ */

@media(min-width:1025px){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy{

        max-width:
            720px;

    }

}


/* ============================================================
20. TABLET
============================================================ */

@media(min-width:768px) and (max-width:1024px){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero{

        min-height:
            590px;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::before{

        opacity:
            .96;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy{

        width:
            74% !important;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy::before{
        left:-16px;
        height:110px;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy::after{
        content:none !important;
        display:none !important;
    }



}


/* ============================================================
21. MOBILE
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero{

        min-height:
            auto;


        background:

            radial-gradient(
                circle at 80% 14%,
                rgba(215,164,74,.10),
                transparent 36%
            ),

            linear-gradient(
                180deg,

                #57181D 0%,

                #6D1F24 54%,

                #8E2B2C 100%
            );

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::before{

        opacity:
            .92;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::after{

        height:
            130px;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-shell::before{

        width:
            280px;

        height:
            280px;


        left:
            35%;

        top:
            -60px;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy{

        width:
            100% !important;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy::before{
        left:-9px;
        top:4px;
        height:78px;
        width:2px;
    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy::after{

        display:
            none;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-eyebrow{

        padding:

            6px 10px;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title-accent::after{

        width:
            64px;


        margin-top:
            7px;

    }


    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero:hover
    .pt-hero-title-accent::after{

        width:
            92px;

    }



}


/* ============================================================
22. SMALL MOBILE
============================================================ */






/* ============================================================
HERO BACKGROUND IMAGE SAFETY
Ensures this CSS never loads an image behind the hero.
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero,
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::before,
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::after,
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-shell,
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-shell::before{
    background-image:
        none
        !important;
}

/* Reapply CSS-only gradients after background-image reset */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero{
    background:

        radial-gradient(
            circle at 76% 20%,
            rgba(215,164,74,.12) 0%,
            rgba(215,164,74,.04) 22%,
            transparent 48%
        ),

        radial-gradient(
            circle at 18% 76%,
            rgba(200,91,74,.14) 0%,
            rgba(200,91,74,.04) 28%,
            transparent 54%
        ),

        linear-gradient(
            120deg,
            #57181D 0%,
            #6D1F24 36%,
            #8E2B2C 68%,
            #A83832 100%
        )
        !important;
}

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::before{
    background:
        linear-gradient(
            115deg,
            rgba(255,255,255,.025) 0%,
            transparent 34%,
            rgba(215,164,74,.045) 72%,
            transparent 100%
        )
        !important;
}

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero::after{
    background:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(87,24,29,.12) 34%,
            rgba(43,37,35,.30) 100%
        )
        !important;
}

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-shell::before{
    background:
        radial-gradient(
            circle,
            rgba(215,164,74,.11) 0%,
            rgba(215,164,74,.035) 40%,
            transparent 70%
        )
        !important;
}

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero{

        background:

            radial-gradient(
                circle at 80% 14%,
                rgba(215,164,74,.10),
                transparent 36%
            ),

            linear-gradient(
                180deg,
                #57181D 0%,
                #6D1F24 54%,
                #8E2B2C 100%
            )
            !important;

    }

}




/* ============================================================
TRUST GRID FINAL WIDTH SAFETY — V6
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-trust{
    --width:100% !important;
    width:100% !important;
    max-width:none !important;
}

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-trust > .pt-mini-trust{
    --width:100% !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    flex:none !important;
}

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust > .elementor-widget-heading{
    --width:auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
}





/* ============================================================
24. HERITAGE WORD PALETTE — FINAL VISUAL LOCK
============================================================ */

.elementor-48 .elementor-element.elementor-element-56a8fc0{
    --pt-maroon:#6D1F24;
    --pt-maroon-dark:#57181D;
    --pt-red:#A83832;
    --pt-red-dark:#8E2B2C;
    --pt-brick:#C85B4A;
    --pt-gold:#D7A44A;
    --pt-gold-light:#D7A44A;
    --pt-ivory:#F7F1E7;
    --pt-blush:#EAD8D2;
    --pt-charcoal:#2B2523;
    --pt-white:#FFFFFF;
}

/* continuous rail safety */
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-copy::after{
    content:none !important;
    display:none !important;
}

/* eyebrow */
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-eyebrow .elementor-heading-title{
    color:#D7A44A!important;
}

/* headline */
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title .elementor-heading-title{

    /* COLOR FROM ELEMENTOR:
       Elementor > Style > Text Color */
}

/* accent headline */
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title-accent .elementor-heading-title{

    /* COLOR FROM ELEMENTOR:
       Elementor > Style > Text Color */
}

/* primary CTA */
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-primary-btn .elementor-button{
    background:#A83832!important;
    color:#FFFFFF!important;
}

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-primary-btn .elementor-button:hover{
    background:#8E2B2C!important;
}

/* secondary CTA */
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-secondary .elementor-button{
    background:rgba(109,31,36,.70)!important;
    color:#FFFFFF!important;
}

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-secondary .elementor-button:hover{
    background:#57181D!important;
}

/* trust icons */
.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-mini-trust .elementor-icon{
    color:#D7A44A!important;
}

/* mobile */
@media(max-width:767px){
    .elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero{
        background:
            radial-gradient(
                circle at 80% 14%,
                rgba(215,164,74,.09),
                transparent 36%
            ),
            linear-gradient(
                180deg,
                #57181D 0%,
                #6D1F24 56%,
                #8E2B2C 100%
            )!important;
    }
}




/* ============================================================
25. HEADING COLOR — ELEMENTOR CONTROL SAFETY
============================================================ */

/*
DESAIN TIDAK DIHILANGKAN.

Untuk mengganti warna Heading:
Elementor > pilih widget Heading > Style > Text Color

CSS tetap mengatur:
- text-shadow
- underline / accent line
- hover underline
- layout
- responsive
- animation
- spacing
- button styling
- hero atmosphere

Tetapi CSS TIDAK mengunci warna untuk:
.pt-hero-title
.pt-hero-title-accent
*/

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title .elementor-heading-title{
    /* color intentionally controlled by Elementor */
}

.elementor-48 .elementor-element.elementor-element-56a8fc0 .pt-hero-title-accent .elementor-heading-title{
    /* color intentionally controlled by Elementor */
}



/* ============================================================
23. REDUCED MOTION
============================================================ */

@media(prefers-reduced-motion:reduce){

    .elementor-48 .elementor-element.elementor-element-56a8fc0 *,
    .elementor-48 .elementor-element.elementor-element-56a8fc0 *::before,
    .elementor-48 .elementor-element.elementor-element-56a8fc0 *::after{

        animation:
            none !important;

        transition:
            none !important;

    }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cf3b70e *//* ============================================================
PUTU BALI TOUR — HIGH-END CONTACT US V2
HERITAGE RED / EDITORIAL TRAVEL DESIGN
Native Elementor Containers — No HTML Widget

STYLE SOURCE
- El Messiri + DM Sans
- Ambient glow
- Fine grid texture
- Editorial watermark
- Offset frame
- Transparent premium surfaces
- Soft reveal animation
- Refined hover motion

HERITAGE RED PALETTE
Deep Maroon   #6D1F24
Heritage Red #A83832
Sunset Gold  #D7A44A
Brick Red    #C85B4A
Warm Ivory   #F7F1E7
Soft Blush   #EAD8D2
Charcoal     #2B2523
Pure White   #FFFFFF
============================================================ */


/* ============================================================
01. MASTER DESIGN SYSTEM
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e{
    --ct-primary:#6D1F24;
    --ct-primary-dark:#57181D;
    --ct-secondary:#A83832;
    --ct-secondary-dark:#8E2B2C;
    --ct-warm-red:#C85B4A;
    --ct-gold:#D7A44A;

    --ct-ivory:#F7F1E7;
    --ct-section-top:#FCF9F4;
    --ct-blush:#EAD8D2;
    --ct-white:#FFFFFF;

    --ct-text:#2B2523;
    --ct-muted:rgba(43,37,35,.68);
    --ct-soft:rgba(43,37,35,.52);
    --ct-faint:rgba(43,37,35,.30);

    --ct-line:rgba(109,31,36,.14);
    --ct-line-soft:rgba(109,31,36,.075);
    --ct-line-gold:rgba(215,164,74,.28);

    --ct-ease:cubic-bezier(.2,.75,.2,1);

    position:relative;
    width:100%;
    overflow:hidden;
    isolation:isolate;
    color:var(--ct-text);

    background:
        linear-gradient(
            180deg,
            var(--ct-section-top) 0%,
            var(--ct-ivory) 100%
        );
}


.elementor-48 .elementor-element.elementor-element-cf3b70e *,
.elementor-48 .elementor-element.elementor-element-cf3b70e *::before,
.elementor-48 .elementor-element.elementor-element-cf3b70e *::after{
    box-sizing:border-box;
}


/* ============================================================
02. AMBIENT RED GLOW
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e::before{
    content:"";
    position:absolute;

    width:clamp(440px,54vw,900px);
    height:clamp(440px,54vw,900px);

    right:clamp(-430px,-20vw,-170px);
    top:clamp(-320px,-14vw,-110px);

    z-index:0;
    pointer-events:none;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(168,56,50,.13) 0%,
            rgba(168,56,50,.052) 36%,
            transparent 70%
        );

    filter:blur(7px);

    animation:
        ptcAmbientGlow
        10s ease-in-out infinite;
}


/* ============================================================
03. SUBTLE GRID TEXTURE
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    opacity:.32;

    background-image:
        linear-gradient(
            rgba(109,31,36,.024) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(109,31,36,.024) 1px,
            transparent 1px
        );

    background-size:48px 48px;

    -webkit-mask-image:
        linear-gradient(
            to right,
            transparent,
            black 15%,
            black 85%,
            transparent
        );

    mask-image:
        linear-gradient(
            to right,
            transparent,
            black 15%,
            black 85%,
            transparent
        );
}


/* ============================================================
04. MAIN SHELL
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell{
    position:relative;
    z-index:2;

    width:min(100%,1440px)!important;
    margin-inline:auto!important;

    display:grid!important;

    grid-template-columns:
        minmax(0,.92fr)
        minmax(0,1.08fr)!important;

    align-items:center!important;

    gap:
        clamp(66px,7vw,126px)!important;
}


/* LARGE 02 WATERMARK */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell::before{
    content:"02";

    position:absolute;

    right:0;
    top:-72px;

    z-index:-1;

    pointer-events:none;
    user-select:none;

    font-family:"El Messiri",serif;

    font-size:
        clamp(82px,10vw,160px);

    font-weight:500;
    line-height:1;
    letter-spacing:-.04em;

    color:transparent;

    -webkit-text-stroke:
        1px rgba(109,31,36,.055);

    opacity:.9;
}


/* LARGE CONTACT WATERMARK */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell::after{
    content:"CONTACT";

    position:absolute;

    left:-26px;
    bottom:-76px;

    z-index:-1;

    pointer-events:none;
    user-select:none;

    font-family:"El Messiri",serif;

    font-size:
        clamp(92px,13vw,205px);

    font-weight:600;

    line-height:.8;
    letter-spacing:-.045em;

    color:transparent;

    -webkit-text-stroke:
        1px rgba(109,31,36,.04);

    opacity:.78;
}


/* ============================================================
05. CONTENT COLUMN
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-content{
    position:relative;

    min-width:0;

    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;

    z-index:4;
}


/* EYEBROW */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-eyebrow{
    margin:0 0 22px;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-eyebrow .elementor-heading-title{
    display:inline-flex;
    align-items:center;
    gap:13px;

    margin:0;

    font-family:"DM Sans",sans-serif!important;

    font-size:
        clamp(10px,.75vw,12px)!important;

    font-weight:700!important;
    line-height:1.2!important;

    letter-spacing:.18em!important;
    text-transform:uppercase;

    color:
        var(--ct-secondary)!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-eyebrow .elementor-heading-title::before{
    content:"";
    width:38px;
    height:1px;
    flex-shrink:0;

    background:
        linear-gradient(
            90deg,
            var(--ct-secondary),
            var(--ct-gold)
        );
}


/* MAIN TITLE */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-title{
    margin:0;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-title .elementor-heading-title{
    max-width:720px;
    margin:0;

    font-family:"El Messiri",serif!important;

    font-size:
        clamp(48px,5vw,78px)!important;

    font-weight:500!important;

    line-height:.99!important;
    letter-spacing:-.038em!important;

    color:
        var(--ct-primary)!important;

    text-wrap:balance;
}


/* LEAD */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-lead{
    max-width:660px;

    margin-top:
        clamp(25px,2.7vw,36px);

    padding-left:24px;

    border-left:
        1px solid var(--ct-gold);
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-lead,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-lead p{
    margin-bottom:0;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-lead .elementor-widget-container,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-lead p{
    font-family:"DM Sans",sans-serif!important;

    font-size:
        clamp(15px,1.1vw,17px)!important;

    font-weight:400!important;
    line-height:1.75!important;

    color:
        var(--ct-muted)!important;
}


/* ============================================================
06. CONTACT LIST
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list{
    position:relative;

    width:100%;

    margin-top:
        clamp(34px,3.7vw,50px);

    border-top:
        1px solid var(--ct-line);

    border-left:
        1px solid var(--ct-line);
}


/* ============================================================
07. CONTACT ROW
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
    position:relative;
    isolation:isolate;

    width:100%;

    display:grid!important;

    grid-template-columns:
        30px 48px
        minmax(0,1fr)
        28px!important;

    align-items:center!important;

    column-gap:15px!important;

    overflow:hidden;

    border-right:
        1px solid var(--ct-line);

    border-bottom:
        1px solid var(--ct-line);

    background:
        rgba(255,255,255,.18);

    transition:
        transform .45s var(--ct-ease),
        background .45s ease,
        border-color .45s ease,
        box-shadow .45s ease;
}


/* HOVER ATMOSPHERE */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row::before{
    content:"";

    position:absolute;
    inset:0;

    z-index:-1;

    background:
        linear-gradient(
            110deg,
            rgba(168,56,50,.075),
            rgba(215,164,74,.035) 60%,
            transparent
        );

    opacity:0;

    transition:
        opacity .45s ease;
}


/* GOLD TOP DETAIL */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row::after{
    content:"";

    position:absolute;

    top:0;
    left:0;

    width:0;
    height:2px;

    background:
        linear-gradient(
            90deg,
            var(--ct-gold),
            var(--ct-warm-red)
        );

    transition:
        width .55s var(--ct-ease);
}


/* NUMBER */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-number .elementor-heading-title{
    margin:0;

    font-family:"DM Sans",sans-serif!important;

    font-size:9px!important;
    font-weight:700!important;

    letter-spacing:.12em!important;

    color:
        var(--ct-secondary)!important;

    opacity:.68;
}


/* ICON */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon{
    display:flex;
    align-items:center;
    justify-content:center;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
    width:44px!important;
    height:44px!important;

    display:inline-flex!important;

    align-items:center!important;
    justify-content:center!important;

    padding:0!important;

    border:
        1px solid rgba(168,56,50,.16)!important;

    border-radius:50%!important;

    color:
        var(--ct-secondary)!important;

    background:
        rgba(168,56,50,.055)!important;

    transition:
        transform .45s var(--ct-ease),
        color .45s ease,
        background .45s ease,
        border-color .45s ease,
        box-shadow .45s ease;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon svg,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon svg path,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon i{
    color:
        var(--ct-secondary)!important;

    fill:
        currentColor!important;
}


/* COPY */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-copy{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;

    gap:4px!important;

    min-width:0;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-title .elementor-heading-title{
    margin:0;

    font-family:"El Messiri",serif!important;

    font-size:
        clamp(18px,1.3vw,22px)!important;

    font-weight:600!important;
    line-height:1.2!important;

    color:
        var(--ct-primary)!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value p{
    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value .elementor-widget-container,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value p{
    font-family:"DM Sans",sans-serif!important;

    font-size:
        clamp(13px,.95vw,15px)!important;

    font-weight:400!important;
    line-height:1.55!important;

    color:
        var(--ct-muted)!important;
}


/* ARROW */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-arrow{
    opacity:.28;

    transform:
        translateX(-4px);

    transition:
        opacity .35s ease,
        transform .45s var(--ct-ease);
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-arrow .elementor-icon{
    color:
        var(--ct-primary)!important;
}


/* DESKTOP HOVER */

@media(hover:hover){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover{
        transform:
            translateX(7px);

        background:
            rgba(255,255,255,.48);

        border-color:
            rgba(109,31,36,.20);

        box-shadow:
            0 18px 38px rgba(49,30,28,.07);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover::before{
        opacity:1;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover::after{
        width:84px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon .elementor-icon{
        transform:
            rotate(-6deg)
            scale(1.07);

        color:
            var(--ct-white)!important;

        background:
            var(--ct-secondary)!important;

        border-color:
            var(--ct-secondary)!important;

        box-shadow:
            0 11px 28px rgba(168,56,50,.18);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon svg,

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon svg path,

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon i{
        color:
            var(--ct-white)!important;

        fill:
            currentColor!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-arrow{
        opacity:1;

        transform:
            translateX(0);
    }
}


/* ============================================================
08. CTA AREA
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-cta-row{
    width:100%;

    display:flex!important;
    flex-direction:row!important;

    align-items:center!important;

    gap:18px!important;

    margin-top:
        28px;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-primary-cta .elementor-button{
    position:relative;

    overflow:hidden;

    border:
        1px solid rgba(255,255,255,.12);

    border-radius:10px;

    background:
        linear-gradient(
            135deg,
            var(--ct-secondary),
            var(--ct-primary)
        );

    color:
        var(--ct-white)!important;

    box-shadow:
        0 13px 30px rgba(82,18,24,.20);

    transition:
        transform .35s var(--ct-ease),
        background .35s ease,
        box-shadow .35s ease;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-primary-cta .elementor-button::before{
    content:"";

    position:absolute;

    top:-28%;
    left:-90%;

    width:48%;
    height:156%;

    transform:
        skewX(-24deg);

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.12),
            rgba(255,255,255,.60),
            rgba(255,255,255,.12),
            transparent
        );

    transition:
        left .72s ease;
}


@media(hover:hover){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-primary-cta .elementor-button:hover{
        transform:
            translateY(-3px);

        background:
            linear-gradient(
                135deg,
                var(--ct-secondary-dark),
                var(--ct-secondary)
            );

        box-shadow:
            0 18px 38px rgba(82,18,24,.27);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-primary-cta .elementor-button:hover::before{
        left:138%;
    }
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-microcopy p{
    margin:0!important;

    font-family:"DM Sans",sans-serif!important;

    font-size:11px!important;
    font-weight:500!important;
    line-height:1.5!important;

    color:
        var(--ct-soft)!important;
}


/* ============================================================
09. VISUAL COLUMN
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-visual{
    position:relative;

    width:100%;

    min-height:
        clamp(570px,45vw,690px);

    display:block!important;

    z-index:3;
}


/* ============================================================
10. MAP FRAME
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
    position:absolute;

    right:0;
    top:2%;

    width:
        min(88%,650px);

    height:
        82%;

    display:block!important;

    overflow:visible;

    z-index:2;

    border-radius:
        38px;
}


/* OFFSET FRAME */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame::before{
    content:"";

    position:absolute;

    inset:
        20px
        20px
        -20px
        -20px;

    z-index:-2;

    border:
        1px solid rgba(109,31,36,.18);

    border-radius:
        38px;

    transition:
        transform .7s var(--ct-ease);
}


/* ORGANIC RED SHAPE */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame::after{
    content:"";

    position:absolute;

    width:126px;
    height:126px;

    right:-36px;
    top:-34px;

    z-index:-3;

    border-radius:
        50% 50% 50% 24%;

    background:
        linear-gradient(
            145deg,
            var(--ct-secondary),
            var(--ct-warm-red)
        );

    opacity:.92;

    transform:
        rotate(-16deg);

    box-shadow:
        0 24px 52px rgba(109,31,36,.12);
}


/* MAP */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map{
    width:100%;
    height:100%;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-widget-container{
    position:relative;

    width:100%;
    height:100%;

    overflow:hidden;

    border-radius:
        38px;

    background:
        var(--ct-blush);

    box-shadow:
        0 32px 74px rgba(55,34,30,.13);
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map iframe{
    width:100%!important;
    height:100%!important;

    border-radius:
        38px;

    filter:
        saturate(.88)
        contrast(1.015);

    transition:
        transform 1s var(--ct-ease),
        filter .8s ease;
}


@media(hover:hover){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame:hover
    .ptc-map iframe{
        transform:
            scale(1.025);

        filter:
            saturate(1)
            contrast(1.02);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame:hover::before{
        transform:
            translate(-7px,7px);
    }
}


/* ============================================================
11. LOCATION CARD
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
    position:absolute;

    left:0;
    bottom:1%;

    z-index:7;

    display:flex!important;
    flex-direction:column!important;

    align-items:flex-start!important;

    gap:5px!important;

    overflow:hidden;

    border:
        6px solid var(--ct-ivory);

    border-radius:
        26px;

    background:
        linear-gradient(
            145deg,
            var(--ct-primary),
            var(--ct-primary-dark)
        );

    box-shadow:
        0 24px 55px rgba(49,30,28,.16);

    transition:
        transform .6s var(--ct-ease),
        box-shadow .6s ease;
}


/* GOLD DOT */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card::before{
    content:"";

    position:absolute;

    right:20px;
    top:20px;

    width:9px;
    height:9px;

    border-radius:50%;

    background:
        var(--ct-gold);

    box-shadow:
        0 0 0 7px rgba(215,164,74,.12);
}


/* SOFT RED ORB */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card::after{
    content:"";

    position:absolute;

    width:112px;
    height:112px;

    right:-46px;
    bottom:-48px;

    border-radius:50%;

    background:
        rgba(168,56,50,.48);

    pointer-events:none;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-label,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-title,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-address{
    position:relative;
    z-index:2;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-label .elementor-heading-title{
    margin:0;

    font-family:"DM Sans",sans-serif!important;

    font-size:9px!important;
    font-weight:700!important;

    letter-spacing:.17em!important;
    text-transform:uppercase;

    color:
        var(--ct-gold)!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-title .elementor-heading-title{
    margin:0;

    font-family:"El Messiri",serif!important;

    font-size:
        clamp(24px,2vw,31px)!important;

    font-weight:500!important;
    line-height:1.15!important;

    color:
        var(--ct-white)!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-address,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-address p{
    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-address p{
    font-family:"DM Sans",sans-serif!important;

    font-size:11px!important;
    line-height:1.55!important;

    color:
        rgba(255,255,255,.68)!important;
}


@media(hover:hover){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card:hover{
        transform:
            translateY(-8px)
            rotate(-.45deg);

        box-shadow:
            0 32px 72px rgba(49,30,28,.20);
    }
}


/* ============================================================
12. SOCIAL BAR
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-bar{
    position:absolute;

    right:0;
    bottom:0;

    z-index:8;

    display:flex!important;
    flex-direction:column!important;

    align-items:flex-end!important;

    gap:10px!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-label .elementor-heading-title{
    margin:0;

    font-family:"DM Sans",sans-serif!important;

    font-size:9px!important;
    font-weight:700!important;

    letter-spacing:.15em!important;

    color:
        var(--ct-soft)!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icons{
    display:flex!important;
    flex-direction:row!important;

    align-items:center!important;

    gap:9px!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon{
    display:inline-flex!important;

    align-items:center!important;
    justify-content:center!important;

    width:42px!important;
    height:42px!important;

    padding:0!important;

    border:
        1px solid rgba(109,31,36,.15)!important;

    border-radius:50%!important;

    color:
        var(--ct-primary)!important;

    background:
        rgba(255,255,255,.58)!important;

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

    backdrop-filter:
        blur(8px);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.72);

    transition:
        transform .42s var(--ct-ease),
        color .42s ease,
        background .42s ease,
        border-color .42s ease,
        box-shadow .42s ease;
}


@media(hover:hover){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:hover
    .elementor-icon{
        transform:
            translateY(-5px)
            rotate(-5deg);

        color:
            var(--ct-white)!important;

        background:
            var(--ct-primary)!important;

        border-color:
            var(--ct-primary)!important;

        box-shadow:
            0 12px 26px rgba(109,31,36,.18);
    }
}


/* ============================================================
13. MODERN SCROLL REVEAL
============================================================ */

@supports(animation-timeline:view()){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-content{
        animation:
            ptcContentReveal linear both;

        animation-timeline:view();

        animation-range:
            entry 0%
            entry 34%;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
        animation:
            ptcMapReveal linear both;

        animation-timeline:view();

        animation-range:
            entry 0%
            entry 36%;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
        animation:
            ptcCardReveal linear both;

        animation-timeline:view();

        animation-range:
            entry 5%
            entry 42%;
    }
}


/* ============================================================
14. KEYFRAMES
============================================================ */

@keyframes ptcContentReveal{

    from{
        opacity:0;

        transform:
            translateY(28px);
    }

    to{
        opacity:1;

        transform:
            translateY(0);
    }
}


@keyframes ptcMapReveal{

    from{
        opacity:0;

        transform:
            translateX(35px)
            scale(.975);
    }

    to{
        opacity:1;

        transform:
            translateX(0)
            scale(1);
    }
}


@keyframes ptcCardReveal{

    from{
        opacity:0;

        transform:
            translateY(35px)
            rotate(-2deg);
    }

    to{
        opacity:1;

        transform:
            translateY(0)
            rotate(0);
    }
}


@keyframes ptcAmbientGlow{

    0%,
    100%{
        opacity:.82;

        transform:
            scale(1);
    }

    50%{
        opacity:1;

        transform:
            scale(1.06);
    }
}


/* ============================================================
15. LAPTOP
============================================================ */

@media(min-width:1025px) and (max-width:1280px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell{
        grid-template-columns:
            minmax(0,.94fr)
            minmax(0,1.06fr)!important;

        gap:
            68px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-visual{
        min-height:
            610px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
        width:
            86%;
    }
}


/* ============================================================
16. TABLET
============================================================ */

@media(min-width:768px) and (max-width:1024px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell{
        grid-template-columns:
            1fr!important;

        gap:
            84px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-content{
        max-width:
            760px;

        margin-inline:
            auto;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-visual{
        width:
            100%;

        min-height:
            620px;

        max-width:
            760px;

        margin-inline:
            auto;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
        width:
            80%;

        height:
            82%;

        right:
            2%;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
        left:
            1%;

        bottom:
            1%;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell::before{
        top:
            -56px;
    }
}


/* ============================================================
17. MOBILE
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e{
        padding-left:
            clamp(18px,5.5vw,26px)!important;

        padding-right:
            clamp(18px,5.5vw,26px)!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell{
        grid-template-columns:
            1fr!important;

        gap:
            68px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell::before{
        top:
            -42px;

        font-size:
            78px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-shell::after{
        bottom:
            -26px;

        font-size:
            82px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-eyebrow{
        margin-bottom:
            18px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-eyebrow
    .elementor-heading-title{
        font-size:
            9px!important;

        letter-spacing:
            .15em!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-eyebrow
    .elementor-heading-title::before{
        width:
            26px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-title
    .elementor-heading-title{
        font-size:
            clamp(42px,12vw,56px)!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-lead{
        margin-top:
            22px;

        padding-left:
            17px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-lead p{
        font-size:
            14.5px!important;

        line-height:
            1.68!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list{
        margin-top:
            30px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
        grid-template-columns:
            25px 42px
            minmax(0,1fr)!important;

        column-gap:
            11px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-arrow{
        display:none!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon
    .elementor-icon{
        width:
            39px!important;

        height:
            39px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-title
    .elementor-heading-title{
        font-size:
            18px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value p{
        font-size:
            12.5px!important;

        overflow-wrap:
            anywhere;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-cta-row{
        flex-direction:
            column!important;

        align-items:
            flex-start!important;

        gap:
            11px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-visual{
        min-height:
            clamp(500px,125vw,620px);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
        top:0;
        right:0;

        width:
            88%;

        height:
            72%;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame::before{
        inset:
            14px
            14px
            -14px
            -14px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame::after{
        width:
            82px;

        height:
            82px;

        right:
            -24px;

        top:
            -23px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map
    .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map iframe{
        border-radius:
            28px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
        left:0;
        bottom:4%;

        border-width:
            5px;

        border-radius:
            22px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-bar{
        right:0;
        bottom:3%;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon
    .elementor-icon{
        width:
            38px!important;

        height:
            38px!important;
    }
}


/* ============================================================
18. SMALL MOBILE
============================================================ */

@media(max-width:390px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
        grid-template-columns:
            22px 38px
            minmax(0,1fr)!important;

        padding:
            15px 12px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon
    .elementor-icon{
        width:
            36px!important;

        height:
            36px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-bar{
        align-items:
            flex-end!important;
    }
}


/* ============================================================
19. REDUCED MOTION
============================================================ */

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

    .elementor-48 .elementor-element.elementor-element-cf3b70e *,
    .elementor-48 .elementor-element.elementor-element-cf3b70e *::before,
    .elementor-48 .elementor-element.elementor-element-cf3b70e *::after{
        animation-duration:
            .01ms!important;

        animation-iteration-count:
            1!important;

        transition-duration:
            .01ms!important;
    }
}


/* ============================================================
20. ACCESSIBILITY
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e a:focus-visible,
.elementor-48 .elementor-element.elementor-element-cf3b70e button:focus-visible{
    outline:
        2px solid var(--ct-gold);

    outline-offset:
        4px;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e ::selection{
    background:
        var(--ct-secondary);

    color:
        var(--ct-white);
}


/* ============================================================
21. ELEMENTOR EDITOR STABILITY PATCH
Fixes container stretching / vertical icon stacking.
============================================================ */

/* Main columns */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-content,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-visual{
    min-width:0!important;
}

/* Contact rows must stay compact */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
    min-height:86px!important;
    height:auto!important;
}

/* Widgets inside row must not stretch to section height */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .elementor-element,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row .elementor-widget,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row .elementor-widget-container{
    min-height:0!important;
}

/* Contact row icon remains beside copy */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-number{
    grid-column:1!important;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon{
    grid-column:2!important;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-copy{
    grid-column:3!important;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-arrow{
    grid-column:4!important;
}

/* Social icons MUST remain horizontal */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icons{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:nowrap!important;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icons > .elementor-element{
    width:auto!important;
    flex:0 0 auto!important;
}

/* Map widget always fills its frame */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-widget-container,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map iframe{
    width:100%!important;
    height:100%!important;
}

/* Prevent location/social block from inheriting giant heights */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-bar{
    min-height:0!important;
    height:auto!important;
}

/* Elementor editor sometimes adds extra min-height to containers */
.elementor-editor-active .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row,
.elementor-editor-active .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card,
.elementor-editor-active .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-bar,
.elementor-editor-active .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icons{
    min-height:0!important;
}

/* Tablet / mobile: remove absolute visual composition and stack safely */
@media(max-width:1024px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-visual{
        min-height:0!important;
        display:flex!important;
        flex-direction:column!important;
        gap:22px!important;
    }

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-bar{
        position:relative!important;
        inset:auto!important;
        left:auto!important;
        right:auto!important;
        top:auto!important;
        bottom:auto!important;
        width:100%!important;
        transform:none!important;
    }

    /*
    Location card tetap ikut alur tablet/mobile,
    tetapi WIDTH sengaja tidak diatur oleh CSS.
    Atur Width langsung dari Elementor > Layout.
    */
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
        position:relative!important;
        inset:auto!important;
        left:auto!important;
        right:auto!important;
        top:auto!important;
        bottom:auto!important;
        transform:none!important;
        align-self:flex-start!important;
    }

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
        height:auto!important;
    }

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map{
        height:470px!important;
    }

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
        border-width:5px;
    }

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-bar{
        align-items:flex-start!important;
    }

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icons{
        justify-content:flex-start!important;
    }
}

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map{
        height:360px!important;
    }

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
        min-height:76px!important;
    }
}


/* ============================================================
22. PTC CONTACT ROW — FINAL FLEX LAYOUT FIX
Class: ptc-contact-row

Tujuan:
- Row selalu compact dan horizontal
- Icon tidak turun / melayang ke tengah
- Telephone / WhatsApp tidak pecah per beberapa karakter
- Copy mengambil sisa lebar secara benar
- Tidak ada container raksasa
- Tetap responsive
============================================================ */

/* ============================================================
ROW
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
    /* Override grid lama */
    display:flex!important;
    grid-template-columns:none!important;

    flex-direction:row!important;
    flex-wrap:nowrap!important;

    align-items:center!important;
    justify-content:flex-start!important;

    gap:14px!important;

    width:100%!important;
    max-width:100%!important;

    min-width:0!important;
    min-height:82px!important;
    height:auto!important;

    /* Elementor container variable safety */
    --width:100%;
    --min-height:0px;
    --flex-grow:0;
    --flex-shrink:0;

    padding:16px 18px!important;
    margin:0!important;

    overflow:hidden!important;

    align-self:stretch!important;
    flex:0 0 auto!important;
}


/* ============================================================
SEMUA DIRECT CHILD — JANGAN BIARKAN ELEMENTOR STRETCH
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .elementor-element{
    min-width:0!important;
    min-height:0!important;

    height:auto!important;

    margin:0!important;

    align-self:center!important;

    --min-height:0px;
    --flex-grow:0;
}


/* ============================================================
NUMBER
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-number,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-number{
    flex:0 0 28px!important;

    width:28px!important;
    max-width:28px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    text-align:center!important;

    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-number .elementor-widget-container{
    width:100%!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-number .elementor-heading-title{
    width:100%!important;

    margin:0!important;

    text-align:center!important;

    line-height:1!important;
}


/* ============================================================
ICON
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-icon,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon{
    flex:0 0 44px!important;

    width:44px!important;
    max-width:44px!important;

    min-width:44px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-widget-container{
    width:44px!important;
    height:44px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
    width:44px!important;
    height:44px!important;

    min-width:44px!important;
    min-height:44px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    margin:0!important;
}


/* ============================================================
COPY — TITLE + VALUE
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-copy,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-copy{
    flex:1 1 0!important;

    width:auto!important;
    max-width:none!important;

    min-width:0!important;
    min-height:0!important;

    display:flex!important;
    flex-direction:column!important;

    align-items:flex-start!important;
    justify-content:center!important;

    gap:4px!important;

    margin:0!important;

    align-self:center!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-copy > .elementor-element{
    width:100%!important;
    max-width:100%!important;

    min-width:0!important;

    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-title,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value{
    width:100%!important;

    min-width:0!important;

    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-title .elementor-widget-container,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value .elementor-widget-container{
    width:100%!important;

    min-width:0!important;

    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-title .elementor-heading-title,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value p{
    margin:0!important;

    word-break:normal!important;
    hyphens:none!important;
}


/* Phone / WhatsApp / email tetap satu baris di desktop */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
.ptc-contact-row:nth-child(-n+3)
.ptc-row-value p{
    white-space:nowrap!important;

    overflow:visible!important;

    overflow-wrap:normal!important;
    word-break:normal!important;
}


/* Address tetap boleh wrap natural */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
.ptc-contact-row:nth-child(4)
.ptc-row-value p{
    white-space:normal!important;

    overflow-wrap:break-word!important;
    word-break:normal!important;
}


/* ============================================================
ARROW
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-arrow,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-arrow{
    flex:0 0 24px!important;

    width:24px!important;
    max-width:24px!important;

    min-width:24px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    margin:0!important;

    align-self:center!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-arrow .elementor-widget-container{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}


/* ============================================================
HOVER — DESAIN TETAP PREMIUM
============================================================ */

@media(hover:hover) and (pointer:fine){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover{
        transform:
            translateX(5px)!important;

        background:
            linear-gradient(
                110deg,
                rgba(255,255,255,.54),
                rgba(247,241,231,.36)
            )!important;

        border-color:
            rgba(109,31,36,.18)!important;

        box-shadow:
            0 16px 34px
            rgba(49,30,28,.075)!important;
    }

}


/* ============================================================
TABLET
============================================================ */

@media(max-width:1024px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
        gap:13px!important;

        min-height:80px!important;

        padding:
            15px 16px!important;
    }

}


/* ============================================================
MOBILE
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
        display:flex!important;

        flex-direction:row!important;
        flex-wrap:nowrap!important;

        align-items:center!important;

        gap:10px!important;

        width:100%!important;

        min-height:72px!important;

        padding:
            13px 12px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-number,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-number{
        flex-basis:22px!important;

        width:22px!important;
        max-width:22px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-icon,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon{
        flex-basis:38px!important;

        width:38px!important;
        max-width:38px!important;
        min-width:38px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
        width:38px!important;
        height:38px!important;

        min-width:38px!important;
        min-height:38px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-copy,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-copy{
        flex:1 1 0!important;

        width:auto!important;

        min-width:0!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-arrow{
        display:none!important;
    }


    /* Nomor telepon jangan dipaksa pecah seperti +62 / 877 / dst */
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
    .ptc-contact-row:nth-child(-n+3)
    .ptc-row-value p{
        white-space:normal!important;

        overflow-wrap:normal!important;
        word-break:normal!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-title .elementor-heading-title{
        line-height:1.2!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value p{
        line-height:1.45!important;
    }

}


/* ============================================================
SMALL MOBILE
============================================================ */

@media(max-width:390px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
        gap:9px!important;

        padding:
            12px 10px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-number,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-number{
        flex-basis:20px!important;

        width:20px!important;
        max-width:20px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row > .ptc-row-icon,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon{
        flex-basis:36px!important;

        width:36px!important;
        max-width:36px!important;
        min-width:36px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
        width:36px!important;
        height:36px!important;

        min-width:36px!important;
        min-height:36px!important;
    }

}


/* ============================================================
23. PTC MAP — FULL HEIGHT / CONTAINER FIT FIX
Tujuan:
- Map memenuhi tinggi container ptc-map-frame
- Tidak hanya muncul tipis di bagian atas
- Tidak ada area kosong besar di bawah map
- Frame, shadow, radius, organic shape tetap sama
============================================================ */

/* FRAME UTAMA */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:stretch!important;

    width:min(88%,650px)!important;

    /*
    Tinggi visual map dibuat proporsional dan stabil.
    Map di dalamnya akan selalu mengikuti 100% tinggi ini.
    */
    height:clamp(460px,40vw,560px)!important;
    min-height:460px!important;

    overflow:visible!important;
}


/* Kalau Elementor membuat inner wrapper */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame > .e-con-inner{
    width:100%!important;
    height:100%!important;
    min-height:100%!important;

    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
}


/* WIDGET MAP */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map{
    width:100%!important;
    height:100%!important;
    min-height:0!important;

    flex:1 1 auto!important;
    align-self:stretch!important;

    margin:0!important;
}


/* ELEMENTOR WIDGET WRAPPER */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map > .elementor-widget-container,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-widget-container{
    width:100%!important;
    height:100%!important;
    min-height:100%!important;

    display:block!important;

    margin:0!important;
    padding:0!important;

    overflow:hidden!important;

    border-radius:38px!important;
}


/* GOOGLE MAP IFRAME */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map iframe{
    display:block!important;

    width:100%!important;
    height:100%!important;
    min-height:100%!important;

    margin:0!important;
    padding:0!important;

    border:0!important;

    border-radius:38px!important;
}


/* Pastikan wrapper Google Maps bawaan Elementor ikut penuh */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-custom-embed,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-custom-embed iframe,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-map,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-map iframe{
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
}


/* ============================================================
TABLET
============================================================ */

@media(max-width:1024px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
        position:relative!important;

        inset:auto!important;

        width:100%!important;

        height:470px!important;
        min-height:470px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map > .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map iframe{
        height:100%!important;
        min-height:100%!important;
    }

}


/* ============================================================
MOBILE
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
        width:100%!important;

        height:360px!important;
        min-height:360px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map > .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map iframe{
        height:100%!important;
        min-height:100%!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map iframe{
        border-radius:28px!important;
    }

}


/* ============================================================
SMALL MOBILE
============================================================ */

@media(max-width:390px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-map-frame{
        height:320px!important;
        min-height:320px!important;
    }

}


/* ============================================================
24. PTC SOCIAL ICON — PREMIUM MOTION UPGRADE
Class: ptc-social-icon

Arah animasi:
- idle floating sangat halus
- rotating luxury ring
- gold/red halo
- shine sweep saat hover
- icon lift + micro rotation
- tetap elegan, tidak terlalu ramai
============================================================ */


/* ============================================================
SOCIAL ICON WRAPPER
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon{
    position:relative!important;

    width:auto!important;
    max-width:none!important;

    flex:0 0 auto!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    margin:0!important;

    isolation:isolate;

    transition:
        transform .44s var(--ct-ease),
        filter .40s ease;
}


/* luxury orbit ring */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon::before{
    content:"";

    position:absolute;

    inset:-5px;

    z-index:-1;

    border-radius:50%;

    border:
        1px solid transparent;

    background:
        linear-gradient(
            135deg,
            var(--ct-gold),
            rgba(215,164,74,.08) 34%,
            transparent 46%,
            rgba(200,91,74,.16) 66%,
            var(--ct-warm-red)
        )
        border-box;

    -webkit-mask:
        linear-gradient(#fff 0 0) padding-box,
        linear-gradient(#fff 0 0);

    -webkit-mask-composite:
        xor;

    mask-composite:
        exclude;

    opacity:.30;

    transform:
        rotate(0deg)
        scale(.94);

    transition:
        opacity .38s ease,
        transform .72s var(--ct-ease);

    pointer-events:none;
}


/* soft halo behind icon */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon::after{
    content:"";

    position:absolute;

    inset:-10px;

    z-index:-2;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(215,164,74,.18) 0%,
            rgba(168,56,50,.08) 38%,
            transparent 72%
        );

    opacity:0;

    transform:
        scale(.72);

    filter:
        blur(6px);

    transition:
        opacity .38s ease,
        transform .50s var(--ct-ease);

    pointer-events:none;
}


/* ============================================================
ICON BUTTON
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon{
    position:relative!important;
    isolation:isolate;

    width:44px!important;
    height:44px!important;

    min-width:44px!important;
    min-height:44px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    margin:0!important;
    padding:0!important;

    overflow:hidden!important;

    border:
        1px solid rgba(109,31,36,.16)!important;

    border-radius:
        50%!important;

    color:
        var(--ct-primary)!important;

    background:
        radial-gradient(
            circle at 30% 22%,
            rgba(255,255,255,.90),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            rgba(255,255,255,.76),
            rgba(247,241,231,.54)
        )!important;

    -webkit-backdrop-filter:
        blur(10px) saturate(125%);

    backdrop-filter:
        blur(10px) saturate(125%);

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

    transform:
        translateY(0)
        rotate(0deg)
        scale(1);

    animation:
        ptcSocialIdle
        5.4s ease-in-out infinite;

    transition:
        transform .50s var(--ct-ease),
        color .34s ease,
        background .40s ease,
        border-color .34s ease,
        box-shadow .46s var(--ct-ease)!important;
}


/* stagger idle movement */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icons
> .ptc-social-icon:nth-child(2)
.elementor-icon{
    animation-delay:
        -.9s;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icons
> .ptc-social-icon:nth-child(3)
.elementor-icon{
    animation-delay:
        -1.8s;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icons
> .ptc-social-icon:nth-child(4)
.elementor-icon{
    animation-delay:
        -2.7s;
}


/* icon itself */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon i,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon svg{
    position:relative;

    z-index:3;

    color:
        currentColor!important;

    fill:
        currentColor!important;

    transform:
        scale(1);

    transition:
        transform .44s var(--ct-ease),
        color .34s ease!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon svg path{
    fill:
        currentColor!important;
}


/* ============================================================
SHINE LAYER
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon::after{
    content:"";

    position:absolute;

    top:-35%;
    left:-105%;

    z-index:2;

    width:46%;
    height:170%;

    transform:
        skewX(-24deg);

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.10),
            rgba(255,255,255,.72),
            rgba(255,255,255,.10),
            transparent
        );

    opacity:0;

    pointer-events:none;
}


/* ============================================================
DESKTOP HOVER
============================================================ */

@media(hover:hover) and (pointer:fine){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:hover{
        transform:
            translateY(-6px)
            scale(1.045);

        filter:
            saturate(1.05);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:hover::before{
        opacity:1;

        transform:
            rotate(235deg)
            scale(1.10);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:hover::after{
        opacity:1;

        transform:
            scale(1.12);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:hover
    .elementor-icon{
        animation-play-state:
            paused;

        transform:
            rotate(-7deg)
            scale(1.07)!important;

        color:
            var(--ct-white)!important;

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

        background:
            radial-gradient(
                circle at 30% 18%,
                rgba(215,164,74,.22),
                transparent 36%
            ),
            linear-gradient(
                145deg,
                var(--ct-secondary),
                var(--ct-primary)
            )!important;

        box-shadow:
            0 16px 34px rgba(109,31,36,.24),
            0 0 0 4px rgba(215,164,74,.055),
            inset 0 1px 0 rgba(255,255,255,.16)!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:hover
    .elementor-icon i,

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:hover
    .elementor-icon svg{
        transform:
            rotate(7deg)
            scale(1.11);
    }


    /* shine sweep */
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:hover
    .elementor-icon::after{
        animation:
            ptcSocialShine
            .82s .08s ease-out 1;
    }

}


/* ============================================================
CLICK / ACTIVE
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:active{
    transform:
        translateY(-2px)
        scale(.97);
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon:active
.elementor-icon{
    transform:
        scale(.94)!important;
}


/* ============================================================
FOCUS
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon a:focus-visible,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon:focus-visible{
    outline:
        2px solid var(--ct-gold);

    outline-offset:
        5px;
}


/* ============================================================
KEYFRAMES
============================================================ */

@keyframes ptcSocialIdle{

    0%,
    100%{
        transform:
            translateY(0)
            rotate(0deg);
    }

    50%{
        transform:
            translateY(-2px)
            rotate(.6deg);
    }

}


@keyframes ptcSocialShine{

    0%{
        left:-105%;
        opacity:0;
    }

    18%{
        opacity:.82;
    }

    100%{
        left:145%;
        opacity:0;
    }

}


/* ============================================================
TABLET
============================================================ */

@media(max-width:1024px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon{
        width:
            42px!important;

        height:
            42px!important;

        min-width:
            42px!important;

        min-height:
            42px!important;
    }

}


/* ============================================================
MOBILE
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon::before{
        inset:
            -4px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon::after{
        inset:
            -7px;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon{
        width:
            40px!important;

        height:
            40px!important;

        min-width:
            40px!important;

        min-height:
            40px!important;

        animation:
            none;
    }

}


/* ============================================================
REDUCED MOTION
============================================================ */

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

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon::before,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon::after,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon::after,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon i,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-social-icon .elementor-icon svg{
        animation:
            none!important;

        transition-duration:
            .01ms!important;
    }

}


/* ============================================================
25. PTC CONTACT ROW — PREMIUM DEFAULT MOTION + ICON FRAME V2
Class: ptc-contact-row

Arah desain:
- default animation lembut, bukan hover-only
- row punya subtle breathing / light sweep
- icon memakai rounded-square premium frame
- double frame + gold corner accent
- hover tetap elegan dan konsisten Heritage Red
============================================================ */


/* ============================================================
ROW — DEFAULT VISUAL
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
    position:relative!important;

    background:
        linear-gradient(
            110deg,
            rgba(255,255,255,.34) 0%,
            rgba(247,241,231,.26) 58%,
            rgba(234,216,210,.14) 100%
        )!important;

    border-color:
        rgba(109,31,36,.105)!important;

    box-shadow:
        0 8px 22px rgba(65,27,27,.035),
        inset 0 1px 0 rgba(255,255,255,.55);

    animation:
        ptcRowSoftBreath
        6.8s ease-in-out infinite;

    transition:
        transform .44s var(--ct-ease),
        background .40s ease,
        border-color .36s ease,
        box-shadow .44s var(--ct-ease)!important;
}


/* stagger the default motion */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
.ptc-contact-row:nth-child(2){
    animation-delay:-1.4s;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
.ptc-contact-row:nth-child(3){
    animation-delay:-2.8s;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
.ptc-contact-row:nth-child(4){
    animation-delay:-4.2s;
}


/* ============================================================
ROW LIGHT SWEEP
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row::before{
    content:"";

    position:absolute;

    inset:0;

    z-index:0;

    pointer-events:none;

    opacity:.30;

    background:
        linear-gradient(
            100deg,
            transparent 0%,
            transparent 40%,
            rgba(215,164,74,.050) 48%,
            rgba(255,255,255,.22) 52%,
            rgba(200,91,74,.045) 56%,
            transparent 64%,
            transparent 100%
        );

    background-size:
        220% 100%;

    background-position:
        120% 0;

    animation:
        ptcRowAmbientSweep
        7.6s ease-in-out infinite;
}


/* top accent line — always visible but subtle */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row::after{
    content:"";

    position:absolute;

    top:0;
    left:18px;

    z-index:4;

    width:44px;
    height:2px;

    border-radius:
        0 0 999px 999px;

    background:
        linear-gradient(
            90deg,
            var(--ct-gold),
            var(--ct-warm-red)
        );

    opacity:.70;

    pointer-events:none;

    transition:
        width .46s var(--ct-ease),
        opacity .32s ease;
}


/* ============================================================
ICON WRAPPER — PREMIUM ROUNDED FRAME
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon{
    position:relative!important;

    flex:
        0 0 50px!important;

    width:
        50px!important;

    max-width:
        50px!important;

    min-width:
        50px!important;

    height:
        50px!important;

    display:flex!important;

    align-items:center!important;
    justify-content:center!important;

    isolation:isolate;

    margin:
        0!important;
}


/* rotating outer frame */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon::before{
    content:"";

    position:absolute;

    inset:0;

    z-index:0;

    border-radius:
        15px;

    background:
        conic-gradient(
            from 25deg,
            rgba(215,164,74,.75),
            rgba(168,56,50,.16) 24%,
            rgba(255,255,255,.25) 42%,
            rgba(200,91,74,.22) 68%,
            rgba(215,164,74,.72) 100%
        );

    opacity:.48;

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);

    -webkit-mask-composite:
        xor;

    mask-composite:
        exclude;

    padding:
        1px;

    animation:
        ptcIconFrameRotate
        9s linear infinite;

    pointer-events:none;
}


/* small luxury corner accent */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon::after{
    content:"";

    position:absolute;

    right:-2px;
    bottom:-2px;

    z-index:4;

    width:14px;
    height:14px;

    border-right:
        2px solid var(--ct-gold);

    border-bottom:
        2px solid var(--ct-gold);

    border-radius:
        0 0 7px 0;

    opacity:.78;

    transform:
        scale(.82);

    transform-origin:
        right bottom;

    transition:
        transform .38s var(--ct-ease),
        opacity .30s ease;
}


/* ============================================================
INNER ICON FRAME
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-widget-container{
    position:relative;

    z-index:2;

    width:44px!important;
    height:44px!important;

    display:flex!important;

    align-items:center!important;
    justify-content:center!important;

    margin:0!important;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
    position:relative!important;

    width:44px!important;
    height:44px!important;

    min-width:44px!important;
    min-height:44px!important;

    display:flex!important;

    align-items:center!important;
    justify-content:center!important;

    padding:0!important;
    margin:0!important;

    border:
        1px solid rgba(168,56,50,.13)!important;

    border-radius:
        13px!important;

    color:
        var(--ct-secondary)!important;

    background:
        radial-gradient(
            circle at 30% 18%,
            rgba(255,255,255,.88),
            transparent 36%
        ),
        linear-gradient(
            145deg,
            rgba(234,216,210,.62),
            rgba(247,241,231,.92)
        )!important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.88),
        0 7px 16px rgba(65,27,27,.055);

    animation:
        ptcIconSoftFloat
        5.8s ease-in-out infinite;

    transition:
        transform .42s var(--ct-ease),
        color .32s ease,
        background .36s ease,
        border-color .32s ease,
        box-shadow .42s var(--ct-ease)!important;
}


/* stagger icon idle */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
.ptc-contact-row:nth-child(2)
.ptc-row-icon .elementor-icon{
    animation-delay:-1.2s;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
.ptc-contact-row:nth-child(3)
.ptc-row-icon .elementor-icon{
    animation-delay:-2.4s;
}

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-list
.ptc-contact-row:nth-child(4)
.ptc-row-icon .elementor-icon{
    animation-delay:-3.6s;
}


/* icon itself */
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon i,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon svg{
    position:relative;

    z-index:3;

    color:
        currentColor!important;

    fill:
        currentColor!important;

    transform:
        scale(1);

    transition:
        transform .38s var(--ct-ease),
        color .30s ease!important;
}


/* ============================================================
DEFAULT TEXT MOTION
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-copy{
    position:relative;

    z-index:2;
}


.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-title,
.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-value{
    transition:
        transform .36s var(--ct-ease),
        opacity .30s ease;
}


/* ============================================================
HOVER
============================================================ */

@media(hover:hover) and (pointer:fine){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover{
        animation-play-state:
            paused;

        transform:
            translateX(6px)
            translateY(-2px)!important;

        background:
            linear-gradient(
                110deg,
                rgba(255,255,255,.66),
                rgba(247,241,231,.48)
            )!important;

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

        box-shadow:
            0 18px 38px rgba(65,27,27,.085),
            inset 0 1px 0 rgba(255,255,255,.82)!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover::before{
        animation:
            none;

        opacity:
            .62;

        background-position:
            45% 0;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover::after{
        width:
            86px;

        opacity:
            1;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon::before{
        opacity:
            1;

        animation-duration:
            3.2s;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon::after{
        transform:
            scale(1);

        opacity:
            1;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon .elementor-icon{
        animation-play-state:
            paused;

        transform:
            translateY(-2px)
            rotate(-4deg)
            scale(1.055)!important;

        color:
            var(--ct-white)!important;

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

        background:
            radial-gradient(
                circle at 30% 18%,
                rgba(215,164,74,.20),
                transparent 34%
            ),
            linear-gradient(
                145deg,
                var(--ct-secondary),
                var(--ct-primary)
            )!important;

        box-shadow:
            0 13px 27px rgba(109,31,36,.19),
            0 0 0 3px rgba(215,164,74,.045),
            inset 0 1px 0 rgba(255,255,255,.14)!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon .elementor-icon i,

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-icon .elementor-icon svg{
        transform:
            rotate(4deg)
            scale(1.10);
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row:hover
    .ptc-row-copy{
        transform:
            translateX(2px);
    }

}


/* ============================================================
KEYFRAMES
============================================================ */

@keyframes ptcRowSoftBreath{

    0%,
    100%{
        box-shadow:
            0 8px 22px rgba(65,27,27,.035),
            inset 0 1px 0 rgba(255,255,255,.55);
    }

    50%{
        box-shadow:
            0 12px 28px rgba(65,27,27,.055),
            0 0 0 1px rgba(215,164,74,.025),
            inset 0 1px 0 rgba(255,255,255,.70);
    }

}


@keyframes ptcRowAmbientSweep{

    0%,
    68%{
        background-position:
            120% 0;

        opacity:.18;
    }

    82%{
        opacity:.42;
    }

    100%{
        background-position:
            -120% 0;

        opacity:.18;
    }

}


@keyframes ptcIconFrameRotate{

    from{
        transform:
            rotate(0deg);
    }

    to{
        transform:
            rotate(360deg);
    }

}


@keyframes ptcIconSoftFloat{

    0%,
    100%{
        transform:
            translateY(0)
            rotate(0deg);
    }

    50%{
        transform:
            translateY(-2px)
            rotate(.7deg);
    }

}


/* ============================================================
TABLET
============================================================ */

@media(max-width:1024px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon{
        flex-basis:
            46px!important;

        width:
            46px!important;

        max-width:
            46px!important;

        min-width:
            46px!important;

        height:
            46px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
        width:
            40px!important;

        height:
            40px!important;

        min-width:
            40px!important;

        min-height:
            40px!important;
    }

}


/* ============================================================
MOBILE
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row{
        animation:
            none;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row::before{
        animation:
            none;

        opacity:
            .20;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon{
        flex-basis:
            42px!important;

        width:
            42px!important;

        max-width:
            42px!important;

        min-width:
            42px!important;

        height:
            42px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon::before{
        border-radius:
            13px;

        animation-duration:
            11s;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-widget-container,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
        width:
            36px!important;

        height:
            36px!important;

        min-width:
            36px!important;

        min-height:
            36px!important;
    }


    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
        border-radius:
            11px!important;

        animation:
            none;
    }

}


/* ============================================================
REDUCED MOTION
============================================================ */

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

    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-contact-row::before,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon::before,
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-row-icon .elementor-icon{
        animation:
            none!important;
    }

}


/* ============================================================
27. PTC LOCATION CARD — WIDTH CONTROL FROM ELEMENTOR
Class: ptc-location-card

PENTING:
CSS tidak mengatur width / min-width / max-width untuk card ini.
Atur manual dari:
Elementor > Container ptc-location-card > Layout > Width

Desktop, Tablet, dan Mobile bisa diberi width berbeda langsung
dari Responsive Controls Elementor.
============================================================ */

.elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
    /*
    Jangan tambahkan:
    width
    min-width
    max-width
    flex-basis

    supaya kontrol Width Elementor tetap bekerja.
    */

    align-self:flex-start!important;
}

@media(max-width:1024px){
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
        align-self:flex-start!important;
    }
}

@media(max-width:767px){
    .elementor-48 .elementor-element.elementor-element-cf3b70e .ptc-location-card{
        align-self:flex-start!important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2504db2 *//* ============================================================
   ============================================================
   CV BALINGKANG PARADISE
   JOURNEY CTA — HIGH-END EDITORIAL PHOTO
   ============================================================

   FONT
   Heading : El Messiri
   Body    : DM Sans

   RESPONSIVE
   ✓ Desktop
   ✓ Laptop
   ✓ Tablet
   ✓ Android
   ✓ iPhone
============================================================ */


/* ============================================================
   01. DESIGN SYSTEM
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2{

    /* Heritage Red palette */
    --mbc-black:#2B2523;
    --mbc-charcoal:#2B2523;

    --mbc-red:#A83832;
    --mbc-red-hover:#8E2B2C;
    --mbc-brick:#C85B4A;

    --mbc-gold:#D7A44A;
    --mbc-cream:#EAD8D2;

    --mbc-ivory:#F7F1E7;

    /* Legacy variable name retained so existing rules keep working */
    --mbc-green:#A83832;
    --mbc-forest:#6D1F24;

    --mbc-text:#2B2523;
    --mbc-white:#FFFFFF;

    --mbc-ease:cubic-bezier(.22,1,.36,1);


    position:relative;

    isolation:isolate;


    width:100% !important;

    max-width:100% !important;


    margin:0 !important;


    padding:

        clamp(90px,7vw,125px)

        clamp(24px,5vw,82px)

        clamp(78px,6vw,105px)

        !important;


    overflow:hidden;


    background:

        radial-gradient(
            circle at 7% 20%,
            rgba(215,164,74,.085),
            transparent 24%
        ),

        radial-gradient(
            circle at 96% 76%,
            rgba(168,56,50,.07),
            transparent 26%
        ),

        var(--mbc-ivory)

        !important;

}


/* ============================================================
   02. RESET
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 *,
.elementor-48 .elementor-element.elementor-element-2504db2 *::before,
.elementor-48 .elementor-element.elementor-element-2504db2 *::after{

    box-sizing:border-box;

}


.elementor-48 .elementor-element.elementor-element-2504db2 .elementor-element{

    --widgets-spacing:0px;

}


.elementor-48 .elementor-element.elementor-element-2504db2 .elementor-widget-heading,
.elementor-48 .elementor-element.elementor-element-2504db2 .elementor-widget-text-editor,
.elementor-48 .elementor-element.elementor-element-2504db2 .elementor-widget-button,
.elementor-48 .elementor-element.elementor-element-2504db2 .elementor-widget-image{

    margin:0 !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2 p{

    margin-top:0;

}


.elementor-48 .elementor-element.elementor-element-2504db2 p:last-child{

    margin-bottom:0 !important;

}


/* ============================================================
   03. SECTION GRAIN
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2::before{

    content:"";

    position:absolute;

    inset:0;

    z-index:-10;

    opacity:.021;

    pointer-events:none;

    background-image:

        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.7'/%3E%3C/svg%3E");

}


/* ============================================================
   04. DECORATIVE CIRCLE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2::after{

    content:"";

    position:absolute;

    z-index:-9;

    left:-380px;

    top:24%;

    width:630px;

    height:630px;

    border:

        1px solid
        rgba(215,164,74,.11);

    border-radius:50%;

    box-shadow:

        0 0 0 78px
        rgba(215,164,74,.014),

        0 0 0 150px
        rgba(168,56,50,.012);

    pointer-events:none;

}


/* ============================================================
   05. TOP BAR
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-top{

    position:relative;

    z-index:10;

    width:100% !important;

    max-width:1380px !important;

    margin:

        0 auto
        clamp(38px,3.5vw,52px)

        !important;

    padding:

        0 0
        16px

        !important;

    display:flex !important;

    flex-direction:row !important;

    align-items:center !important;

    justify-content:space-between !important;

    gap:20px !important;

    border-bottom:

        1px solid
        rgba(43,37,35,.13);

}


/* ============================================================
   06. TOP LEFT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-top-left{

    width:auto !important;

    max-width:max-content !important;

    flex:0 0 auto !important;

    margin:0 !important;

    padding:0 !important;

}


/* ============================================================
   07. INDEX
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-index{

    position:relative;

    width:auto !important;

    padding-left:

        48px !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-index
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        8px !important;

    line-height:1 !important;

    font-weight:800 !important;

    letter-spacing:.17em !important;

    text-transform:uppercase;

    color:

        var(--mbc-green)

        !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-index::before{

    content:"";

    position:absolute;

    left:0;

    top:50%;

    width:32px;

    height:1px;

    transform:

        translateY(-50%);

    background:

        var(--mbc-gold);

}


/* ============================================================
   08. LOCATION
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-location{

    width:auto !important;

    max-width:max-content !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-location
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        7.5px !important;

    line-height:1.2 !important;

    font-weight:700 !important;

    letter-spacing:.15em !important;

    text-align:right;

    text-transform:uppercase;

    color:

        rgba(43,37,35,.43)

        !important;

}


/* ============================================================
   ============================================================
   09. MAIN PANEL
   ============================================================
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-main{

    position:relative;

    isolation:isolate;

    z-index:5;

    width:100% !important;

    max-width:1380px !important;

    min-height:

        clamp(
            620px,
            47vw,
            720px
        )

        !important;

    margin:

        0 auto !important;

    padding:

        0 !important;

    display:grid !important;

    grid-template-columns:

        minmax(410px,.92fr)

        minmax(500px,1.08fr);

    align-items:stretch !important;

    gap:0 !important;

    overflow:hidden;

    border:

        1px solid
        rgba(215,164,74,.26);

    border-radius:

        5px 54px
        5px 54px

        !important;
    background:
        radial-gradient(
            circle at 78% 18%,
            rgba(215,164,74,.08),
            transparent 24%
        ),
        radial-gradient(
            circle at 15% 92%,
            rgba(200,91,74,.14),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #6D1F24 0%,
            #57181D 58%,
            #2B2523 100%
        )
        !important;

    box-shadow:

        0 44px 98px
        rgba(43,37,35,.21);

}


/* ============================================================
   10. INNER FRAME
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-main::before{

    content:"";

    position:absolute;

    z-index:0;

    inset:11px;

    pointer-events:none;

    border:

        1px solid
        rgba(247,241,231,.05);

    border-radius:

        3px 43px
        3px 43px;

}


/* ============================================================
   11. MOVING GOLD EDGE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-main::after{

    content:"";

    position:absolute;

    z-index:9;

    left:-30%;

    bottom:0;

    width:26%;

    height:2px;

    background:

        linear-gradient(
            90deg,
            transparent,
            var(--mbc-gold),
            var(--mbc-cream),
            transparent
        );

    animation:

        mbcMainSweep
        7s
        var(--mbc-ease)
        infinite;

}


@keyframes mbcMainSweep{

    0%{

        left:-30%;

        opacity:0;

    }

    15%{

        opacity:1;

    }

    75%{

        opacity:1;

    }

    100%{

        left:105%;

        opacity:0;

    }

}


/* ============================================================
   ============================================================
   12. CONTENT
   ============================================================
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-content{

    position:relative;

    z-index:5;

    width:100% !important;

    min-width:0 !important;

    margin:0 !important;

    padding:

        clamp(50px,5vw,78px)

        clamp(42px,5vw,78px)

        !important;

    display:flex !important;

    flex-direction:column !important;

    align-items:flex-start !important;

    justify-content:center !important;

    gap:0 !important;

}


/* ============================================================
   13. LARGE DECORATIVE TEXT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-content::before{

    content:"BALI";

    position:absolute;

    z-index:-1;

    left:

        clamp(
            15px,
            3vw,
            42px
        );

    top:

        clamp(
            18px,
            3vw,
            42px
        );

    font-family:

        "El Messiri",
        serif;

    font-size:

        clamp(
            120px,
            11vw,
            185px
        );

    line-height:1;

    font-weight:500;

    letter-spacing:-.06em;

    color:

        var(--mbc-gold);

    opacity:.035;

    pointer-events:none;

}


/* ============================================================
   14. EYEBROW
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-eyebrow{

    position:relative;

    width:max-content !important;

    max-width:100%;

    margin:

        0 0
        25px

        !important;

    padding-left:

        23px !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-eyebrow
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        8px !important;

    line-height:1 !important;

    font-weight:800 !important;

    letter-spacing:.18em !important;

    text-transform:uppercase;

    color:

        var(--mbc-gold)

        !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-eyebrow::before{

    content:"";

    position:absolute;

    left:0;

    top:50%;

    width:7px;

    height:7px;

    border-radius:50%;

    transform:

        translateY(-50%);

    background:

        var(--mbc-gold);

    box-shadow:

        0 0 0 5px
        rgba(215,164,74,.09);

    animation:

        mbcPulse
        2.3s
        ease-in-out
        infinite;

}


@keyframes mbcPulse{

    0%,
    100%{

        transform:

            translateY(-50%)
            scale(.82);

        opacity:.55;

    }

    50%{

        transform:

            translateY(-50%)
            scale(1.15);

        opacity:1;

    }

}


/* ============================================================
   15. TITLE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-title{

    width:100% !important;

    max-width:650px !important;

    margin:

        0 0
        28px

        !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-title
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "El Messiri",
        serif

        !important;

    font-size:

        clamp(
            54px,
            5vw,
            82px
        )

        !important;

    line-height:.94 !important;

    font-weight:500 !important;

    letter-spacing:-.035em !important;

    color:

        var(--mbc-ivory)

        !important;

}


/* ============================================================
   16. TITLE ACCENT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-title::after{

    content:"";

    display:block;

    width:78px;

    height:2px;

    margin-top:

        23px;

    background:

        linear-gradient(
            90deg,
            var(--mbc-gold),
            var(--mbc-cream),
            transparent
        );

}


/* ============================================================
   17. DESCRIPTION
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description{

    width:100% !important;

    max-width:575px !important;

    margin:

        0 0
        35px

        !important;

    padding-left:

        18px !important;

    border-left:

        1px solid
        rgba(215,164,74,.76);

}


.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description p{

    font-family:

        "DM Sans",
        sans-serif

        !important;
    font-size:
        16px
        !important;

    line-height:1.75 !important;

    font-weight:400 !important;

    color:

        rgba(247,241,231,.68)

        !important;

}


/* ============================================================
   ============================================================
   18. ACTIONS
   ============================================================
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-actions{

    width:100% !important;

    margin:

        0 0
        40px

        !important;

    padding:0 !important;

    display:flex !important;

    flex-direction:row !important;

    flex-wrap:wrap !important;

    align-items:center !important;

    justify-content:flex-start !important;

    gap:

        12px !important;

}


/* ============================================================
   19. BUTTON WIDGET
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button{

    width:auto !important;

    max-width:100% !important;

    margin:0 !important;

}


/* ============================================================
   20. BUTTON BASE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button
.elementor-button{

    position:relative;

    isolation:isolate;

    overflow:hidden;

    min-width:

        205px !important;

    min-height:

        56px !important;

    padding:

        0 15px
        0 24px

        !important;

    display:inline-flex !important;

    align-items:center !important;

    justify-content:center !important;

    border-radius:

        999px !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        12px !important;

    line-height:1 !important;

    font-weight:700 !important;

    text-decoration:none !important;

    box-shadow:none !important;

    transition:

        transform .45s var(--mbc-ease),
        color .45s var(--mbc-ease),
        border-color .45s var(--mbc-ease),
        box-shadow .45s var(--mbc-ease)

        !important;

}


/* ============================================================
   21. BUTTON CONTENT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button
.elementor-button-content-wrapper{

    width:100% !important;

    display:flex !important;

    flex-direction:row !important;

    align-items:center !important;

    justify-content:space-between !important;

    gap:17px !important;

}


/* ============================================================
   22. BUTTON TEXT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button
.elementor-button-text{

    line-height:1 !important;

    white-space:nowrap;

}


/* ============================================================
   23. BUTTON ICON
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button
.elementor-button-icon{

    width:30px !important;

    height:30px !important;

    flex:

        0 0 30px !important;

    margin:0 !important;

    display:flex !important;

    align-items:center !important;

    justify-content:center !important;

    border:

        1px solid
        currentColor;

    border-radius:50%;

    transition:

        transform .45s var(--mbc-ease),
        color .45s var(--mbc-ease),
        border-color .45s var(--mbc-ease);

}


/* ============================================================
   24. PRIMARY BUTTON
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button-primary
.elementor-button{

    color:
        var(--mbc-white)
        !important;

    border:
        1px solid
        var(--mbc-red)
        !important;

    background:
        var(--mbc-red)
        !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button-primary
.elementor-button::before{

    content:"";

    position:absolute;

    inset:0;

    z-index:-1;

    border-radius:inherit;

    background:

        var(--mbc-red-hover);

    transform:

        translateX(-102%);

    transition:

        transform
        .55s
        var(--mbc-ease);

}


/* ============================================================
   25. SECONDARY
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button-secondary
.elementor-button{

    color:

        var(--mbc-ivory)

        !important;

    border:

        1px solid
        rgba(247,241,231,.28)

        !important;

    background:

        rgba(247,241,231,.025)

        !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button-secondary
.elementor-button::before{

    content:"";

    position:absolute;

    inset:0;

    z-index:-1;

    border-radius:inherit;

    background:

        var(--mbc-cream);

    transform:

        scaleX(0);

    transform-origin:

        left center;

    transition:

        transform
        .55s
        var(--mbc-ease);

}


/* ============================================================
   26. HOVER
============================================================ */

@media(hover:hover) and (pointer:fine){

    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button
    .elementor-button:hover{

        transform:

            translateY(-4px);

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button-primary
    .elementor-button:hover{

        color:

            var(--mbc-white)

            !important;

        box-shadow:

            0 18px 42px
            rgba(168,56,50,.28)

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button-primary
    .elementor-button:hover::before{

        transform:

            translateX(0);

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button-secondary
    .elementor-button:hover{

        color:

            var(--mbc-black)

            !important;

        border-color:

            var(--mbc-cream)

            !important;

        box-shadow:

            0 18px 42px
            rgba(0,0,0,.15)

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button-secondary
    .elementor-button:hover::before{

        transform:

            scaleX(1);

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button-secondary
    .elementor-button:hover
    .elementor-button-text,

    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button-secondary
    .elementor-button:hover
    .elementor-button-icon{

        color:

            var(--mbc-black)

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button
    .elementor-button:hover
    .elementor-button-icon{

        transform:

            translateX(4px);

    }

}


/* ============================================================
   ============================================================
   27. PROOF
   ============================================================
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof{

    width:100% !important;

    max-width:585px !important;

    margin:0 !important;

    padding:0 !important;

    display:grid !important;

    grid-template-columns:

        repeat(
            3,
            minmax(0,1fr)
        );

    gap:0 !important;

    border-top:

        1px solid
        rgba(247,241,231,.10);

    border-bottom:

        1px solid
        rgba(247,241,231,.10);

}


/* ============================================================
   28. PROOF ITEM
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-item{

    position:relative;

    min-width:0;

    min-height:

        82px !important;

    margin:0 !important;

    padding:

        17px 16px

        !important;

    display:flex !important;

    flex-direction:column !important;

    justify-content:center !important;

    gap:7px !important;

    overflow:hidden;

    border-right:

        1px solid
        rgba(247,241,231,.10);

    transition:

        background .45s var(--mbc-ease),
        padding .45s var(--mbc-ease);

}


.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-item:last-child{

    border-right:none;

}


/* ============================================================
   29. PROOF HOVER
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-item::after{

    content:"";

    position:absolute;

    left:0;

    bottom:0;

    width:100%;

    height:2px;

    background:

        var(--mbc-gold);

    transform:

        scaleX(0);

    transform-origin:left;

    transition:

        transform
        .5s
        var(--mbc-ease);

}


@media(hover:hover) and (pointer:fine){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-item:hover{

        padding-left:

            21px !important;

        background:

            rgba(215,164,74,.035);

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-item:hover::after{

        transform:

            scaleX(1);

    }

}


/* ============================================================
   30. PROOF NUMBER
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-proof-number
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        7px !important;

    line-height:1 !important;

    font-weight:800 !important;

    color:

        var(--mbc-gold)

        !important;

}


/* ============================================================
   31. PROOF TITLE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-proof-title
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "El Messiri",
        serif

        !important;

    font-size:

        16px !important;

    line-height:1.15 !important;

    font-weight:500 !important;

    color:

        var(--mbc-ivory)

        !important;

}


/* ============================================================
   ============================================================
   32. VISUAL
   ============================================================
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual{

    position:relative;

    z-index:5;

    width:100% !important;

    min-width:0 !important;

    margin:0 !important;

    padding:

        clamp(38px,4vw,58px)

        clamp(31px,3.5vw,52px)

        !important;

    display:flex !important;

    flex-direction:column !important;

    justify-content:center !important;

    gap:0 !important;

    overflow:hidden;

    border-left:

        1px solid
        rgba(247,241,231,.07);

}


/* ============================================================
   33. GOLD VERTICAL GLOW
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual::before{

    content:"";

    position:absolute;

    z-index:0;

    left:-1px;

    top:22%;

    width:1px;

    height:55%;

    background:

        linear-gradient(
            180deg,
            transparent,
            rgba(215,164,74,.75),
            transparent
        );

}


/* ============================================================
   34. PHOTO STAGE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-stage{

    position:relative;

    z-index:5;

    width:100% !important;

    min-width:0 !important;

    margin:0 !important;

    padding:0 !important;

    overflow:visible !important;

}


/* ============================================================
   35. OFFSET FRAME
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-stage::before{

    content:"";

    position:absolute;

    z-index:0;

    left:

        22px;

    right:

        -14px;

    top:

        -15px;

    bottom:

        20px;

    border:

        1px solid
        rgba(215,164,74,.28);

    border-radius:

        3px 28px
        3px 28px;

    pointer-events:none;

}


/* ============================================================
   36. IMAGE WRAPPER
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-image{

    position:relative;

    z-index:2;

    width:100% !important;

    overflow:hidden;

    border-radius:

        3px 30px
        3px 30px;

    background:

        var(--mbc-charcoal);

}


/* ============================================================
   37. IMAGE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-image
.elementor-widget-container{

    width:100% !important;

    height:

        clamp(
            390px,
            34vw,
            505px
        )

        !important;

    overflow:hidden;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-image
img{

    width:100% !important;

    height:100% !important;

    display:block;

    object-fit:cover !important;

    object-position:center center;

    transform:

        scale(1.015);

    filter:

        saturate(.92)
        contrast(1.035)
        brightness(.91);

    transition:

        transform
        1.45s
        var(--mbc-ease),

        filter
        1.1s
        var(--mbc-ease);

}


/* ============================================================
   38. IMAGE OVERLAY
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-image::after{

    content:"";

    position:absolute;

    z-index:2;

    inset:0;

    pointer-events:none;

    background:

        linear-gradient(
            180deg,
            rgba(43,37,35,.03),
            transparent 40%,
            rgba(43,37,35,.16) 65%,
            rgba(43,37,35,.77) 100%
        );

}


/* ============================================================
   39. IMAGE HOVER
============================================================ */

@media(hover:hover) and (pointer:fine){

    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-photo-stage:hover
    .mbc-cta-image
    img{

        transform:

            scale(1.055);

        filter:

            saturate(1)
            contrast(1.025)
            brightness(.97);

    }

}


/* ============================================================
   40. PHOTO BADGE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge{

    position:absolute !important;

    z-index:8 !important;

    left:

        -18px !important;

    top:

        27px !important;

    width:

        clamp(
            125px,
            10vw,
            154px
        )

        !important;

    min-height:

        105px !important;

    margin:0 !important;

    padding:

        15px
        16px

        !important;

    display:flex !important;

    flex-direction:column !important;

    justify-content:center !important;

    gap:4px !important;

    border:

        1px solid
        rgba(215,164,74,.37);

    border-radius:

        2px 17px
        2px 17px;

    background:

        rgba(43,37,35,.86)

        !important;

    backdrop-filter:

        blur(10px);

    -webkit-backdrop-filter:

        blur(10px);

    box-shadow:

        0 17px 35px
        rgba(0,0,0,.16);

}


/* ============================================================
   41. BADGE SMALL
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-badge-small
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        5.5px !important;

    line-height:1 !important;

    font-weight:800 !important;

    letter-spacing:.14em !important;

    color:

        var(--mbc-gold)

        !important;

}


/* ============================================================
   42. BADGE TITLE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-badge-title
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "El Messiri",
        serif

        !important;

    font-size:

        19px !important;

    line-height:1.05 !important;

    font-weight:500 !important;

    color:

        var(--mbc-ivory)

        !important;

}


/* ============================================================
   43. BADGE LOCATION
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-badge-location
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        5.5px !important;

    line-height:1.2 !important;

    font-weight:600 !important;

    color:

        rgba(247,241,231,.43)

        !important;

}


/* ============================================================
   44. PHOTO CAPTION
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{

    position:absolute !important;

    z-index:8 !important;

    left:

        22px !important;

    right:

        22px !important;

    bottom:

        22px !important;

    width:auto !important;

    margin:0 !important;

    padding:0 !important;

    display:flex !important;

    flex-direction:row !important;

    align-items:flex-end !important;

    justify-content:space-between !important;

    gap:

        20px !important;

}


/* ============================================================
   45. CAPTION LABEL
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-caption-label
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        6px !important;

    line-height:1 !important;

    font-weight:800 !important;

    letter-spacing:.17em !important;

    color:

        var(--mbc-gold)

        !important;

}


/* ============================================================
   46. CAPTION TITLE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{

    max-width:

        260px !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-caption-title
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "El Messiri",
        serif

        !important;

    font-size:

        clamp(
            20px,
            2vw,
            29px
        )

        !important;

    line-height:1.07 !important;

    font-weight:500 !important;

    text-align:right;

    color:

        var(--mbc-ivory)

        !important;

}


/* ============================================================
   ============================================================
   47. PHOTO INFO
   ============================================================
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info{

    position:relative;

    z-index:7;

    width:

        calc(100% - 42px)

        !important;

    min-height:

        112px !important;

    margin:

        -31px 0 0
        auto

        !important;

    padding:

        19px
        20px

        !important;

    display:grid !important;

    grid-template-columns:

        minmax(0,1fr)
        auto;

    align-items:center !important;

    gap:

        24px !important;

    border:

        1px solid
        rgba(247,241,231,.13);

    border-radius:

        2px 17px
        2px 17px;

    background:

        rgba(43,37,35,.94)

        !important;

    box-shadow:

        0 19px 43px
        rgba(0,0,0,.17);

}


/* ============================================================
   48. INFO INTRO
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info-intro{

    min-width:0 !important;

    display:flex !important;

    flex-direction:column !important;

    gap:

        6px !important;

}


/* ============================================================
   49. INFO SMALL
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-info-small
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        5.5px !important;

    font-weight:800 !important;

    letter-spacing:.15em !important;

    color:

        var(--mbc-gold)

        !important;

}


/* ============================================================
   50. INFO TITLE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-info-title
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "El Messiri",
        serif

        !important;

    font-size:

        clamp(
            18px,
            1.6vw,
            23px
        )

        !important;

    line-height:1.05 !important;

    font-weight:500 !important;

    color:

        var(--mbc-ivory)

        !important;

}


/* ============================================================
   51. STATS
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stats{

    width:auto !important;

    min-width:225px !important;

    margin:0 !important;

    padding:0 !important;

    display:grid !important;

    grid-template-columns:

        repeat(
            2,
            minmax(0,1fr)
        );

    align-items:stretch !important;

    border-left:

        1px solid
        rgba(247,241,231,.10);

}


/* ============================================================
   52. STAT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat{

    min-width:105px !important;

    margin:0 !important;

    padding:

        4px 14px

        !important;

    display:flex !important;

    flex-direction:column !important;

    justify-content:center !important;

    gap:

        6px !important;

    border-right:

        1px solid
        rgba(247,241,231,.10);

}


.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat:last-child{

    border-right:none;

}


/* ============================================================
   53. STAT LABEL
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-stat-label
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        5px !important;

    line-height:1 !important;

    font-weight:700 !important;

    letter-spacing:.13em !important;

    color:

        rgba(247,241,231,.34)

        !important;

}


/* ============================================================
   54. STAT VALUE
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-stat-value
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "El Messiri",
        serif

        !important;

    font-size:

        clamp(
            19px,
            1.9vw,
            25px
        )

        !important;

    line-height:1 !important;

    font-weight:500 !important;

    color:

        var(--mbc-cream)

        !important;

}


/* ============================================================
   55. VISUAL FOOTER
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual-footer{

    width:100% !important;

    margin:

        17px 0 0

        !important;

    padding:

        0 3px

        !important;

    display:flex !important;

    flex-direction:row !important;

    align-items:center !important;

    justify-content:space-between !important;

    gap:15px !important;

}


/* ============================================================
   56. FOOTER TEXT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-footer-left
.elementor-heading-title,

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-footer-right
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        5.5px !important;

    line-height:1.2 !important;

    font-weight:800 !important;

    letter-spacing:.12em !important;

    color:

        rgba(247,241,231,.29)

        !important;

}


/* ============================================================
   57. FOOTER LEFT DOT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-left{

    position:relative;

    padding-left:

        14px !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-left::before{

    content:"";

    position:absolute;

    left:0;

    top:50%;

    width:5px;

    height:5px;

    border-radius:50%;

    transform:

        translateY(-50%);

    background:

        var(--mbc-gold);

}


/* ============================================================
   ============================================================
   58. BOTTOM RAIL
   ============================================================
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail{

    position:relative;

    width:100% !important;

    max-width:1380px !important;

    margin:

        24px auto 0

        !important;

    padding:

        18px
        8px

        !important;

    display:flex !important;

    flex-direction:row !important;

    flex-wrap:wrap !important;

    align-items:center !important;

    justify-content:center !important;

    gap:

        10px 25px !important;

    overflow:hidden;

    border-top:

        1px solid
        rgba(43,37,35,.13);

    border-bottom:

        1px solid
        rgba(43,37,35,.13);

}


/* ============================================================
   59. RAIL MOVING LIGHT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail::before{

    content:"";

    position:absolute;

    left:-22%;

    top:-1px;

    width:22%;

    height:1px;

    background:

        linear-gradient(
            90deg,
            transparent,
            var(--mbc-gold),
            transparent
        );

    animation:

        mbcRailSweep
        6s
        var(--mbc-ease)
        infinite;

}


@keyframes mbcRailSweep{

    0%{

        left:-22%;

        opacity:0;

    }

    15%{

        opacity:1;

    }

    75%{

        opacity:1;

    }

    100%{

        left:105%;

        opacity:0;

    }

}


/* ============================================================
   60. RAIL WIDGETS
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-text,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-star{

    width:auto !important;

    max-width:max-content !important;

    flex:

        0 0 auto !important;

    margin:0 !important;

}


/* ============================================================
   61. RAIL TEXT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-rail-text
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        7px !important;

    line-height:1.2 !important;

    font-weight:800 !important;

    letter-spacing:.15em !important;

    text-transform:uppercase;

    color:

        rgba(43,37,35,.48)

        !important;

}


/* ============================================================
   62. RAIL STAR
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-rail-star
.elementor-heading-title{

    margin:0 !important;

    font-family:

        "DM Sans",
        sans-serif

        !important;

    font-size:

        8px !important;

    line-height:1 !important;

    color:

        var(--mbc-gold)

        !important;

    animation:

        mbcStar
        2.7s
        ease-in-out
        infinite;

}


@keyframes mbcStar{

    0%,
    100%{

        opacity:.45;

        transform:

            scale(.85);

    }

    50%{

        opacity:1;

        transform:

            scale(1.15);

    }

}


/* ============================================================
   ============================================================
   63. LAPTOP
   ============================================================
============================================================ */

@media(
    min-width:1101px
)
and
(
    max-width:1366px
){

    .elementor-48 .elementor-element.elementor-element-2504db2{

        padding-left:

            42px !important;

        padding-right:

            42px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-main{

        grid-template-columns:

            minmax(380px,.93fr)

            minmax(440px,1.07fr);

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-content{

        padding:

            52px
            46px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-title
    .elementor-heading-title{

        font-size:

            clamp(
                49px,
                4.6vw,
                66px
            )

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual{

        padding:

            35px
            31px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-image
    .elementor-widget-container{

        height:

            clamp(
                370px,
                33vw,
                455px
            )

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info{

        gap:

            15px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stats{

        min-width:

            205px !important;

    }

}


/* ============================================================
   ============================================================
   64. TABLET
   ============================================================
============================================================ */

@media(
    min-width:768px
)
and
(
    max-width:1100px
){

    .elementor-48 .elementor-element.elementor-element-2504db2{

        padding:

            74px
            clamp(28px,5vw,48px)
            76px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-top{

        max-width:

            880px !important;

        margin-bottom:

            39px !important;

    }


    /* STACK */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-main{

        width:100% !important;

        max-width:

            880px !important;

        min-height:

            0 !important;

        display:flex !important;

        flex-direction:

            column !important;

        border-radius:

            5px 43px
            5px 43px

            !important;

    }


    /* CONTENT */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-content{

        width:100% !important;

        max-width:100% !important;

        padding:

            58px
            55px
            55px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-title{

        max-width:

            680px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-title
    .elementor-heading-title{

        font-size:

            clamp(
                50px,
                7vw,
                68px
            )

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description{

        max-width:

            625px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof{

        max-width:

            650px !important;

    }


    /* VISUAL */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual{

        width:100% !important;

        padding:

            50px
            55px
            48px

            !important;

        border-left:none;

        border-top:

            1px solid
            rgba(247,241,231,.07);

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual::before{

        left:20%;

        top:-1px;

        width:60%;

        height:1px;

        background:

            linear-gradient(
                90deg,
                transparent,
                rgba(215,164,74,.55),
                transparent
            );

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-image
    .elementor-widget-container{

        height:

            470px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info{

        width:

            calc(100% - 55px)

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail{

        max-width:

            880px !important;

    }

}


/* ============================================================
   ============================================================
   65. MOBILE
   ANDROID + IPHONE
   ============================================================
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-2504db2{

        padding:

            58px
            14px
            62px

            !important;

        overflow-x:

            hidden !important;

    }


    /* TOP */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-top{

        width:100% !important;

        max-width:100% !important;

        margin:

            0 0
            30px

            !important;

        padding-bottom:

            12px !important;

        display:grid !important;

        grid-template-columns:

            minmax(0,1fr)
            auto;

        align-items:start !important;

        gap:

            10px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-index{

        padding-left:

            30px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-index::before{

        width:

            19px;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-index
    .elementor-heading-title{

        font-size:

            6px !important;

        letter-spacing:

            .09em !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-location{

        max-width:

            145px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-location
    .elementor-heading-title{

        font-size:

            5.5px !important;

        line-height:

            1.4 !important;

        letter-spacing:

            .07em !important;

    }


    /* MAIN */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-main{

        width:100% !important;

        max-width:100% !important;

        min-height:0 !important;

        display:flex !important;

        flex-direction:

            column !important;

        border-radius:

            4px 30px
            4px 30px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-main::before{

        inset:

            8px;

        border-radius:

            2px 23px
            2px 23px;

    }


    /* CONTENT */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-content{

        width:100% !important;

        padding:

            42px
            22px
            40px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-content::before{

        top:

            6px;

        left:

            13px;

        font-size:

            104px;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-eyebrow{

        margin-bottom:

            19px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-eyebrow
    .elementor-heading-title{

        font-size:

            6.5px !important;

        letter-spacing:

            .11em !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-title{

        width:100% !important;

        max-width:100% !important;

        margin-bottom:

            23px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-title
    .elementor-heading-title{

        font-size:

            clamp(
                39px,
                11vw,
                49px
            )

            !important;

        line-height:

            .98 !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-title::after{

        width:

            57px;

        margin-top:

            18px;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description{

        max-width:

            100% !important;

        margin-bottom:

            29px !important;

        padding-left:

            13px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description p{

        font-size:

            13px !important;

        line-height:

            1.7 !important;

    }


    /* BUTTONS */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-actions{

        width:100% !important;

        margin-bottom:

            31px !important;

        flex-direction:

            column !important;

        align-items:

            stretch !important;

        gap:

            10px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button{

        width:

            100% !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button
    .elementor-button{

        width:

            100% !important;

        min-width:

            0 !important;

        min-height:

            53px !important;

    }


    /* PROOF */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof{

        width:100% !important;

        max-width:100% !important;

        grid-template-columns:

            1fr;

        border-bottom:none;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-item{

        min-height:

            56px !important;

        padding:

            12px
            4px

            !important;

        display:grid !important;

        grid-template-columns:

            32px
            minmax(0,1fr);

        align-items:center !important;

        gap:

            8px !important;

        border-right:none;

        border-bottom:

            1px solid
            rgba(247,241,231,.10);

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-proof-title
    .elementor-heading-title{

        font-size:

            15px !important;

    }


    /* VISUAL */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual{

        width:100% !important;

        padding:

            34px
            14px
            35px

            !important;

        border-left:none;

        border-top:

            1px solid
            rgba(247,241,231,.07);

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual::before{

        left:15%;

        top:-1px;

        width:70%;

        height:1px;

        background:

            linear-gradient(
                90deg,
                transparent,
                rgba(215,164,74,.55),
                transparent
            );

    }


    /* PHOTO */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-stage::before{

        left:

            20px;

        right:

            -7px;

        top:

            -10px;

        bottom:

            15px;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-image
    .elementor-widget-container{

        height:

            clamp(
                340px,
                105vw,
                440px
            )

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-image{

        border-radius:

            3px 23px
            3px 23px;

    }


    /* BADGE */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge{

        left:

            12px !important;

        top:

            13px !important;

        width:

            120px !important;

        min-height:

            88px !important;

        padding:

            12px
            13px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-badge-title
    .elementor-heading-title{

        font-size:

            17px !important;

    }


    /* CAPTION */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{

        left:

            17px !important;

        right:

            17px !important;

        bottom:

            17px !important;

        flex-direction:

            column !important;

        align-items:

            flex-start !important;

        gap:

            7px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{

        max-width:

            250px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-caption-title
    .elementor-heading-title{

        font-size:

            21px !important;

        text-align:

            left !important;

    }


    /* INFO */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info{

        width:

            calc(100% - 17px)

            !important;

        min-height:0 !important;

        margin-top:

            -21px !important;

        padding:

            16px !important;

        display:flex !important;

        flex-direction:

            column !important;

        align-items:

            stretch !important;

        gap:

            16px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info-intro{

        width:100% !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stats{

        width:100% !important;

        min-width:0 !important;

        display:grid !important;

        grid-template-columns:

            1fr
            1fr;

        border-left:none;

        border-top:

            1px solid
            rgba(247,241,231,.10);

        padding-top:

            13px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat{

        min-width:0 !important;

        padding:

            2px
            12px

            !important;

    }


    /* FOOTER */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual-footer{

        margin-top:

            15px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-footer-left
    .elementor-heading-title,

    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-footer-right
    .elementor-heading-title{

        font-size:

            4.7px !important;

        letter-spacing:

            .07em !important;

    }


    /* RAIL */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail{

        width:100% !important;

        max-width:100% !important;

        margin-top:

            20px !important;

        padding:

            16px
            3px

            !important;

        gap:

            8px
            11px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-rail-text
    .elementor-heading-title{

        font-size:

            5.8px !important;

        letter-spacing:

            .07em !important;

        text-align:center;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-rail-star
    .elementor-heading-title{

        font-size:

            6.5px !important;

    }

}


/* ============================================================
   66. STANDARD IPHONE / ANDROID
   <= 430PX
============================================================ */

@media(max-width:430px){

    .elementor-48 .elementor-element.elementor-element-2504db2{

        padding-left:

            12px !important;

        padding-right:

            12px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-content{

        padding-left:

            19px !important;

        padding-right:

            19px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-title
    .elementor-heading-title{

        font-size:

            clamp(
                37px,
                10.8vw,
                45px
            )

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual{

        padding-left:

            11px !important;

        padding-right:

            11px !important;

    }

}


/* ============================================================
   67. SMALL IPHONE / ANDROID
   <= 390PX
============================================================ */

@media(max-width:390px){

    .elementor-48 .elementor-element.elementor-element-2504db2{

        padding-left:

            10px !important;

        padding-right:

            10px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-content{

        padding:

            38px
            16px
            36px

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-title
    .elementor-heading-title{

        font-size:

            35px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description p{

        font-size:

            12.5px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual{

        padding-left:

            9px !important;

        padding-right:

            9px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-image
    .elementor-widget-container{

        height:

            335px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge{

        width:

            108px !important;

        min-height:

            80px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info{

        width:

            calc(100% - 10px)

            !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-visual-footer{

        flex-direction:

            column !important;

        align-items:

            flex-start !important;

        gap:

            8px !important;

    }

}


/* ============================================================
   68. TOUCH DEVICES
============================================================ */

@media(hover:none) and (pointer:coarse){

    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button
    .elementor-button:hover{

        transform:none !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-item:hover{

        padding-left:

            4px !important;

    }

}


/* ============================================================
   69. ACCESSIBILITY
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-button
.elementor-button:focus-visible{

    outline:

        2px solid
        var(--mbc-gold);

    outline-offset:

        4px;

}


/* ============================================================
   70. REDUCED MOTION
============================================================ */

@media(prefers-reduced-motion:reduce){

    .elementor-48 .elementor-element.elementor-element-2504db2 *,
    .elementor-48 .elementor-element.elementor-element-2504db2 *::before,
    .elementor-48 .elementor-element.elementor-element-2504db2 *::after{

        animation:

            none !important;

        transition:

            none !important;

    }

}
/* ============================================================
   FIX BUTTON ICON + FIX CAPTION OVERLAP
   TEMPel DI PALING BAWAH CSS LAMA
============================================================ */


/* ============================================================
   01. BUTTON
   PAKSA TEXT DI KIRI / TENGAH DAN ICON ARROW DI KANAN
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-content-wrapper{
    width:100% !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:14px !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-text{
    order:1 !important;
    flex:1 1 auto !important;
    text-align:center !important;
    white-space:nowrap !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-icon{
    order:2 !important;
    flex:0 0 30px !important;
    width:30px !important;
    height:30px !important;
    margin-left:auto !important;
    margin-right:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-icon i,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-icon svg{
    margin:0 !important;
}


/* ============================================================
   02. KHUSUS BUTTON PRIMARY DAN SECONDARY
   BIAR TETAP RAPI SAAT ICON DI KANAN
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button-primary .elementor-button,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button-secondary .elementor-button{
    padding:0 16px 0 24px !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button-primary .elementor-button-text,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button-secondary .elementor-button-text{
    padding-right:2px !important;
}


/* ============================================================
   03. PHOTO CAPTION
   TEKS "WHERE THE JOURNEY BEGINS" DIBUAT SEDIKIT TERTIMPA
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{
    left:22px !important;
    right:10px !important;
    bottom:14px !important;
    align-items:flex-end !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{
    position:relative !important;
    max-width:285px !important;
    margin-right:-10px !important;
    margin-bottom:-8px !important;
    z-index:10 !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title .elementor-heading-title{
    position:relative !important;
    right:-6px !important;
    bottom:-4px !important;
    text-align:right !important;
    line-height:0.95 !important;
}


/* ============================================================
   04. TABLET
============================================================ */

@media (min-width:768px) and (max-width:1100px){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{
        right:16px !important;
        bottom:16px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{
        max-width:240px !important;
        margin-right:-4px !important;
        margin-bottom:-4px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title .elementor-heading-title{
        right:-2px !important;
        bottom:-2px !important;
    }
}


/* ============================================================
   05. MOBILE
============================================================ */

@media (max-width:767px){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-content-wrapper{
        gap:12px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-text{
        text-align:center !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-icon{
        margin-left:auto !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{
        left:17px !important;
        right:17px !important;
        bottom:15px !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:7px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{
        max-width:230px !important;
        margin-right:0 !important;
        margin-bottom:-3px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title .elementor-heading-title{
        right:0 !important;
        bottom:0 !important;
        text-align:left !important;
        line-height:1 !important;
    }
}


/* ============================================================
   06. SMALL MOBILE
============================================================ */

@media (max-width:430px){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button{
        min-height:53px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-text{
        font-size:12px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{
        max-width:200px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title .elementor-heading-title{
        font-size:19px !important;
    }
}
/* ============================================================
   FINAL FIX
   BUTTON ICON TETAP DI KANAN
   + PHOTO CAPTION TIDAK TERTIMPA INFO CARD
============================================================ */


/* ============================================================
   01. BUTTON
   PERTAHANKAN ICON ARROW DI KANAN
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-content-wrapper{
    width:100% !important;

    display:flex !important;

    flex-direction:row !important;

    align-items:center !important;

    justify-content:flex-start !important;

    gap:14px !important;
}


.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-text{
    order:1 !important;

    flex:1 1 auto !important;

    text-align:center !important;

    white-space:nowrap !important;
}


.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-icon{
    order:2 !important;

    flex:0 0 30px !important;

    width:30px !important;

    height:30px !important;

    margin-left:auto !important;

    margin-right:0 !important;

    display:flex !important;

    align-items:center !important;

    justify-content:center !important;
}


/* ============================================================
   02. PHOTO CAPTION
   NAIKKAN DARI AREA INFORMATION CARD
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{

    left:22px !important;

    right:22px !important;

    bottom:58px !important;

    width:auto !important;

    margin:0 !important;

    padding:0 !important;

    display:flex !important;

    flex-direction:row !important;

    align-items:flex-end !important;

    justify-content:space-between !important;

    gap:24px !important;

}


/* ============================================================
   03. WHERE THE JOURNEY BEGINS
   RESET NEGATIVE OFFSET LAMA
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{

    position:relative !important;

    width:auto !important;

    max-width:270px !important;

    margin:0 !important;

    padding:0 !important;

    z-index:10 !important;

    transform:none !important;

}


.elementor-48 .elementor-element.elementor-element-2504db2
.mbc-cta-caption-title
.elementor-heading-title{

    position:relative !important;

    right:auto !important;

    bottom:auto !important;

    top:auto !important;

    left:auto !important;

    margin:0 !important;

    font-family:
        "El Messiri",
        serif
        !important;

    font-size:
        clamp(
            21px,
            2vw,
            29px
        )
        !important;

    line-height:1.02 !important;

    font-weight:500 !important;

    text-align:right !important;

    color:
        var(--mbc-ivory)
        !important;

}


/* ============================================================
   04. FIRST LIGHT
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-label{

    flex:0 0 auto !important;

    margin:0 !important;

}


/* ============================================================
   05. INFORMATION CARD
   PERTAHANKAN OVERLAP FOTO TAPI JANGAN TERLALU TINGGI
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info{

    margin:
        -24px 0 0 auto
        !important;

}


/* ============================================================
   06. TABLET
============================================================ */

@media(
    min-width:768px
)
and
(
    max-width:1100px
){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{

        left:22px !important;

        right:22px !important;

        bottom:52px !important;

        gap:20px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{

        max-width:250px !important;

        margin:0 !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-caption-title
    .elementor-heading-title{

        right:auto !important;

        bottom:auto !important;

        font-size:24px !important;

        line-height:1.02 !important;

        text-align:right !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info{

        margin:
            -22px 0 0 auto
            !important;

    }

}


/* ============================================================
   07. MOBILE
   ANDROID + IPHONE
============================================================ */

@media(max-width:767px){

    /* BUTTON */

    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button
    .elementor-button-content-wrapper{

        width:100% !important;

        gap:12px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button
    .elementor-button-text{

        flex:1 1 auto !important;

        text-align:center !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-button
    .elementor-button-icon{

        margin-left:auto !important;

        margin-right:0 !important;

    }


    /* PHOTO CAPTION */

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{

        left:17px !important;

        right:17px !important;

        bottom:47px !important;

        flex-direction:column !important;

        align-items:flex-start !important;

        justify-content:flex-end !important;

        gap:7px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{

        width:auto !important;

        max-width:235px !important;

        margin:0 !important;

        transform:none !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-caption-title
    .elementor-heading-title{

        right:auto !important;

        bottom:auto !important;

        top:auto !important;

        left:auto !important;

        font-size:21px !important;

        line-height:1.03 !important;

        text-align:left !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info{

        margin:
            -17px 0 0 auto
            !important;

    }

}


/* ============================================================
   08. SMALL MOBILE
============================================================ */

@media(max-width:430px){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{

        bottom:43px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{

        max-width:210px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2
    .mbc-cta-caption-title
    .elementor-heading-title{

        font-size:19px !important;

    }

}


/* ============================================================
   09. VERY SMALL MOBILE
============================================================ */

@media(max-width:390px){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-photo-caption{

        bottom:40px !important;

    }


    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title{

        max-width:190px !important;

    }

}

/* ============================================================
   71. FINAL READABILITY FORCE OVERRIDE
   DILETAKKAN PALING BAWAH AGAR MENANG DARI SEMUA RULE LAMA.
   Fokus: seluruh micro-copy / metadata dibuat jauh lebih mudah dibaca.
============================================================ */


/* ============================================================
   DESKTOP — TOP BAR
============================================================ */

/* 07 / YOUR NEXT JOURNEY */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-index .elementor-heading-title{
    font-size:12px !important;
    line-height:1.25 !important;
    letter-spacing:.14em !important;
}

/* MOUNT BATUR · KINTAMANI · BALI */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-location .elementor-heading-title{
    font-size:11px !important;
    line-height:1.3 !important;
    letter-spacing:.11em !important;
    color:rgba(43,37,35,.62) !important;
}


/* ============================================================
   DESKTOP — MAIN CONTENT
============================================================ */

/* YOUR MOUNTAIN, YOUR MOMENT */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-eyebrow .elementor-heading-title{
    font-size:12px !important;
    line-height:1.25 !important;
    letter-spacing:.14em !important;
}

/* Main description */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description p{
    font-size:17px !important;
    line-height:1.72 !important;
    color:rgba(247,241,231,.78) !important;
}

/* Button text */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-text{
    font-size:14px !important;
    line-height:1.15 !important;
}


/* ============================================================
   DESKTOP — PROOF / 01 02 03
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-number .elementor-heading-title{
    font-size:10px !important;
    line-height:1 !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-title .elementor-heading-title{
    font-size:19px !important;
    line-height:1.15 !important;
}


/* ============================================================
   DESKTOP — PHOTO BADGE
============================================================ */

/* FIELD NOTES / 01 */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-small .elementor-heading-title{
    font-size:9.5px !important;
    line-height:1.2 !important;
    letter-spacing:.11em !important;
}

/* Mount Batur */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-title .elementor-heading-title{
    font-size:22px !important;
    line-height:1.08 !important;
}

/* Kintamani, Bali */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-location .elementor-heading-title{
    font-size:9px !important;
    line-height:1.3 !important;
    color:rgba(247,241,231,.62) !important;
}


/* ============================================================
   DESKTOP — PHOTO CAPTION
============================================================ */

/* FIRST LIGHT */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-label .elementor-heading-title{
    font-size:9px !important;
    line-height:1.2 !important;
    letter-spacing:.13em !important;
}

/* Where the journey begins. */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title .elementor-heading-title{
    font-size:clamp(24px,2vw,30px) !important;
    line-height:1.03 !important;
}


/* ============================================================
   DESKTOP — INFORMATION CARD
============================================================ */

/* MORNING / 01 */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info-small .elementor-heading-title{
    font-size:9.5px !important;
    line-height:1.2 !important;
    letter-spacing:.12em !important;
}

/* Before Bali Wakes */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info-title .elementor-heading-title{
    font-size:clamp(21px,1.7vw,25px) !important;
    line-height:1.08 !important;
}

/* START / ELEVATION */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat-label .elementor-heading-title{
    font-size:8.5px !important;
    line-height:1.2 !important;
    letter-spacing:.10em !important;
    color:rgba(247,241,231,.54) !important;
}

/* 05:45 / 1,450 MASL */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat-value .elementor-heading-title{
    font-size:clamp(22px,2vw,28px) !important;
}


/* ============================================================
   DESKTOP — VISUAL FOOTER
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-left .elementor-heading-title,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-right .elementor-heading-title{
    font-size:9.5px !important;
    line-height:1.25 !important;
    letter-spacing:.09em !important;
    color:rgba(247,241,231,.50) !important;
}


/* ============================================================
   DESKTOP — BOTTOM RAIL
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-text .elementor-heading-title{
    font-size:12px !important;
    line-height:1.25 !important;
    letter-spacing:.11em !important;
    color:rgba(43,37,35,.58) !important;
}

.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-star .elementor-heading-title{
    font-size:12px !important;
    line-height:1 !important;
}


/* ============================================================
   TABLET
============================================================ */

@media(max-width:1100px){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-index .elementor-heading-title{
        font-size:11px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-location .elementor-heading-title{
        font-size:10px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-eyebrow .elementor-heading-title{
        font-size:11px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description p{
        font-size:16px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-text{
        font-size:14px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-number .elementor-heading-title{
        font-size:9px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-title .elementor-heading-title{
        font-size:18px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-small .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-location .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-label .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info-small .elementor-heading-title{
        font-size:9px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat-label .elementor-heading-title{
        font-size:8px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-left .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-right .elementor-heading-title{
        font-size:9px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-text .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-star .elementor-heading-title{
        font-size:11px !important;
    }

}


/* ============================================================
   MOBILE — ANDROID + IPHONE
============================================================ */

@media(max-width:767px){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-index .elementor-heading-title{
        font-size:10px !important;
        line-height:1.3 !important;
        letter-spacing:.09em !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-location .elementor-heading-title{
        font-size:9px !important;
        line-height:1.4 !important;
        letter-spacing:.07em !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-eyebrow .elementor-heading-title{
        font-size:10px !important;
        line-height:1.3 !important;
        letter-spacing:.10em !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description p{
        font-size:16px !important;
        line-height:1.68 !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button .elementor-button-text{
        font-size:14px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-number .elementor-heading-title{
        font-size:9px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-proof-title .elementor-heading-title{
        font-size:17px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-small .elementor-heading-title{
        font-size:8.5px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-title .elementor-heading-title{
        font-size:20px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-location .elementor-heading-title{
        font-size:8.5px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-label .elementor-heading-title{
        font-size:8.5px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-title .elementor-heading-title{
        font-size:21px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info-small .elementor-heading-title{
        font-size:8.5px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info-title .elementor-heading-title{
        font-size:20px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat-label .elementor-heading-title{
        font-size:8px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat-value .elementor-heading-title{
        font-size:22px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-left .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-right .elementor-heading-title{
        font-size:8.5px !important;
        line-height:1.3 !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-text .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-star .elementor-heading-title{
        font-size:10px !important;
    }

}


/* ============================================================
   SMALL MOBILE
============================================================ */

@media(max-width:390px){

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description p{
        font-size:16px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-small .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-badge-location .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-caption-label .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-info-small .elementor-heading-title{
        font-size:8px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-stat-label .elementor-heading-title{
        font-size:7.5px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-left .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-footer-right .elementor-heading-title{
        font-size:8px !important;
    }

    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-text .elementor-heading-title,
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-rail-star .elementor-heading-title{
        font-size:10px !important;
    }

}

/* ============================================================
   FINAL BALINGKANG HERITAGE RED GUARD
   Keeps the section aligned with the supplied brand palette.
============================================================ */

.elementor-48 .elementor-element.elementor-element-2504db2{
    --mbc-black:#2B2523;
    --mbc-charcoal:#2B2523;
    --mbc-red:#A83832;
    --mbc-red-hover:#8E2B2C;
    --mbc-brick:#C85B4A;
    --mbc-gold:#D7A44A;
    --mbc-cream:#EAD8D2;
    --mbc-ivory:#F7F1E7;
    --mbc-green:#A83832;
    --mbc-forest:#6D1F24;
    --mbc-text:#2B2523;
    --mbc-white:#FFFFFF;
}

/* Main panel: premium Deep Maroon, not Mount Batur green */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-main{
    border-color:rgba(215,164,74,.26) !important;
    background:
        radial-gradient(circle at 78% 18%,rgba(215,164,74,.08),transparent 24%),
        radial-gradient(circle at 15% 92%,rgba(200,91,74,.14),transparent 32%),
        linear-gradient(135deg,#6D1F24 0%,#57181D 58%,#2B2523 100%)
        !important;
}

/* Primary CTA follows supplied palette */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button-primary .elementor-button{
    color:#FFFFFF !important;
    border-color:#A83832 !important;
    background:#A83832 !important;
}
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button-primary .elementor-button::before{
    background:#8E2B2C !important;
}
@media(hover:hover) and (pointer:fine){
    .elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-button-primary .elementor-button:hover{
        color:#FFFFFF !important;
        border-color:#8E2B2C !important;
        box-shadow:0 18px 42px rgba(168,56,50,.28) !important;
    }
}

/* Main description stays readable everywhere */
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description,
.elementor-48 .elementor-element.elementor-element-2504db2 .mbc-cta-description p{
    font-size:16px !important;
    line-height:1.72 !important;
}

/* Outer section remains Warm Ivory */
.elementor-48 .elementor-element.elementor-element-2504db2{
    background:
        radial-gradient(circle at 7% 20%,rgba(215,164,74,.07),transparent 24%),
        radial-gradient(circle at 96% 76%,rgba(200,91,74,.06),transparent 26%),
        #F7F1E7
        !important;
}/* End custom CSS */