.elementor-4968 .elementor-element.elementor-element-a6a216d{--display:flex;--min-height:400px;--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:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:90px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4968 .elementor-element.elementor-element-a6a216d:not(.elementor-motion-effects-element-type-background), .elementor-4968 .elementor-element.elementor-element-a6a216d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-4968 .elementor-element.elementor-element-a6a216d.e-con{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-4968 .elementor-element.elementor-element-2f61479{text-align:center;}.elementor-4968 .elementor-element.elementor-element-2f61479 .elementor-heading-title{font-weight:700;text-transform:uppercase;text-shadow:0px 0px 39px rgba(0,0,0,0.3);color:#FFFFFF;}.elementor-4968 .elementor-element.elementor-element-90b730a{text-align:center;text-shadow:0px 0px 67px rgba(0,0,0,0.3);color:#CA9703;}.elementor-4968 .elementor-element.elementor-element-a5b10ae{--display:flex;--border-radius:0px 0px 25px 25px;--margin-top:0px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;}.elementor-4968 .elementor-element.elementor-element-a5b10ae:not(.elementor-motion-effects-element-type-background), .elementor-4968 .elementor-element.elementor-element-a5b10ae > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-4968 .elementor-element.elementor-element-301f385 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:15px 15px 15px 15px;}.elementor-4968 .elementor-element.elementor-element-301f385{column-gap:0px;text-align:center;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-4968 .elementor-element.elementor-element-91376f6{--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-4968 .elementor-element.elementor-element-41a310a{--display:flex;--border-radius:25px 25px 25px 25px;}.elementor-4968 .elementor-element.elementor-element-41a310a:not(.elementor-motion-effects-element-type-background), .elementor-4968 .elementor-element.elementor-element-41a310a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-4968 .elementor-element.elementor-element-e3f80d7{--display:flex;}.elementor-4968 .elementor-element.elementor-element-0c316a2{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-4968 .elementor-element.elementor-element-6db7fac{--display:flex;}.elementor-4968 .elementor-element.elementor-element-23ba528{text-align:justify;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-4968 .elementor-element.elementor-element-e15dbd9{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4968 .elementor-element.elementor-element-fdc7328{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-4968 .elementor-element.elementor-element-505fe77{--n-accordion-title-font-size:15px;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-title-active-color:var( --e-global-color-primary );--n-accordion-icon-size:15px;--n-accordion-icon-active-color:var( --e-global-color-primary );}.elementor-4968 .elementor-element.elementor-element-505fe77 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title{border-style:none;}:where( .elementor-4968 .elementor-element.elementor-element-505fe77 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:"Poppins", Sans-serif;font-weight:500;text-transform:capitalize;font-style:normal;}:where( .elementor-4968 .elementor-element.elementor-element-505fe77 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item ) > .e-con{border-style:none;}.elementor-4968 .elementor-element.elementor-element-d7f2b76{--display:flex;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-4968 .elementor-element.elementor-element-a6a216d{--width:100%;}.elementor-4968 .elementor-element.elementor-element-6db7fac{--content-width:100%;}.elementor-4968 .elementor-element.elementor-element-d7f2b76{--content-width:100%;}}@media(max-width:1024px){.elementor-4968 .elementor-element.elementor-element-a6a216d{--min-height:300px;}}@media(max-width:767px){.elementor-4968 .elementor-element.elementor-element-a6a216d{--min-height:309px;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-fb79892 */#wv-elementor-embed {
margin:0;
padding:32px 18px 48px;
background:linear-gradient(180deg,#f4f7fb 0%,#eef3f8 100%);
color:#111827;
}

#wv-elementor-embed *{
box-sizing:border-box;
}

/* WRAPPER */

.wv-wrapper{
max-width:1100px;
margin:auto;
font-family:Arial, Helvetica, sans-serif;
}


/* TITLE */

.wv-title{
margin:0 0 20px;
font-size:28px;
}


/* CARD */

.wv-card{
background:white;
padding:25px;
margin-bottom:20px;
border-radius:10px;
box-shadow:0 4px 12px rgba(0,0,0,0.05);
overflow:visible;
}


/* LABEL */

.wv-card label{
display:block;
margin-top:16px;
margin-bottom:4px;
font-weight:600;
}

.participantSubLabel{
font-size:13px;
color:#6b7280;
font-weight:600;
margin-top:0;
margin-bottom:6px;
}


/* INPUT */

.wv-card input,
.wv-card select{
width:100%;
padding:12px;
border-radius:6px;
border:1px solid #d6dbe1;
font-size:14px;
}


/* PHONE INPUT */

.wv-phone{
display:flex;
gap:12px;
margin-top:6px;
}

.wv-phone select{
width:220px;
min-height:44px;
}

.wv-phone input{
flex:1;
min-height:44px;
}

#customCountryCode{
flex:0 0 260px;
max-width:260px;
}

#custWA{
flex:1 1 auto;
}

/* PARTICIPANTS ROW */

.wv-participants-row{
display:flex;
gap:12px;
align-items:stretch;
}

.wv-pax input,
.wv-participantCount input{
min-height:44px;
}

.wv-pax,
.wv-participantCount{
flex:2;
}

.wv-participantCount{
flex:1;
}

.wv-visitor{
flex:1;
min-width:140px;
}

.wv-visitor select{
width:100%;
min-height:44px;
}

.participantSummary{
margin-top:10px;
font-size:13px;
font-weight:600;
color:#2f5f9c;
font-style:italic;
}


/* DESTINATION SELECT */

.destSelect{
height:44px;
line-height:44px;
padding:0 12px;
margin-bottom:10px;
}


/* DESTINATION ROW */

.destRow{
display:flex;
gap:10px;
align-items:center;
margin-bottom:12px;
}

.destRow select{
flex:1;
}

.destRow button{
padding:10px 14px;
}

/* Peringatanl */
.destHint{
font-size:12px;
color:red;
margin-top:4px;
margin-bottom:8px;
font-style:italic;
}

.serviceHint{
font-size:12px;
color:#666;
margin-top:-4px;
margin-bottom:12px;
font-style:italic;
}

/* Trans & Hotel */

.transSelect,
.hotelSelect{
height:46px;
line-height:46px;
padding:0 12px;
}

/* BUTTON */

.wv-startBtn,
.wv-addDay,
.wv-calcBtn,
.wv-waBtn{
border:none;
border-radius:6px;
cursor:pointer;
padding:10px 16px;
font-size:14px;
}

.wv-startBtn{
margin-top:20px;
background:#2f5f9c;
color:white;
}

.wv-addDay{
margin-top:10px;
background:#ff6b3d;
color:white;
}

.wv-calcBtn{
margin-top:10px;
background:#333;
color:white;
}

.wv-waBtn{
margin-top:10px;
background:#25D366;
color:white;
}

/* tombol di builder */

.wv-dayContent button{
padding:6px 10px;
font-size:13px;
height:34px;
margin-bottom:15px;
}

.addDestBtn{
background:#00b8d4;
color:white;
border:none;
}

/* tombol close day */

.wv-dayHeader button{
width:34px;
height:34px;
padding:0;
font-size:16px;
}

/* tombol add destination dan optimize */

.wv-dayContent button{
border-radius:6px;
}

/* HOVER */

.wv-startBtn:hover,
.wv-addDay:hover,
.wv-calcBtn:hover,
.wv-waBtn:hover{
opacity:0.9;
transform:translateY(-1px);
}


/* DAY BLOCK */

.wv-day{
border:1px solid #e3e6ea;
border-radius:8px;
margin-bottom:10px;
overflow:hidden;
}


/* DAY HEADER */

.wv-dayHeader{
background:#eef2f6;
padding:14px;
cursor:pointer;
display:flex;
justify-content:space-between;
align-items:center;
font-weight:600;
}


.destList li{

list-style:none;
background:#eef2f6;
padding:6px 10px;
border-radius:20px;
font-size:13px;

display:flex;
align-items:center;
gap:6px;

}

.destList button{

border:none;
background:none;
cursor:pointer;
font-weight:bold;

}

/* DAY CONTENT */

.wv-dayContent{
padding:15px;
display:none;
}


/* DESTINATION LIST */



.destList li{
margin:4px 0;
}


/* SERVICES */

.serviceRow{
display:flex;
gap:16px;
margin-top:1px;
margin-bottom:12px;
flex-wrap:wrap;
}

.serviceRow label{
display:flex;
align-items:center;
gap:6px;
font-weight:500;
}


/* PROGRESS BAR */

.wv-progressBar{

position:relative;
height:14px;
background:#e5e7eb;
border-radius:8px;
margin-top:10px;
overflow:hidden;

}

.wv-progress{

height:100%;
background:#2f5f9c;
width:0%;
transition:width .3s;

}

.wv-progress.orange{
background:#f59e0b;
}

.wv-progress.red{
background:#ef4444;
}

/* TEXT DI DALAM BAR */

.wv-progressText{

position:absolute;
left:50%;
top:50%;
transform:translate(-50%,-50%);

font-size:11px;
font-weight:600;
color:#111;

pointer-events:none;

}


/* PRICE */

.wv-priceBox{
text-align:center;
margin-bottom:10px;
}

.wv-priceLabel{
font-size:14px;
color:#666;
}

.wv-price{
font-size:42px;
font-weight:bold;
color:#2f5f9c;
}

/* PRICE ROW */

.wv-priceRow{
display:flex;
align-items:flex-end;
justify-content:center;
gap:6px;
}

/* /person */

.wv-perPerson{
font-size:16px;
color:#374151;
margin-bottom:6px;
}

/* TOTAL BLOCK */

.wv-totalBlock{
margin-top:16px;
padding-top:14px;
border-top:1px solid #e5e7eb;
text-align:center;
}

.wv-totalLabel{
font-size:14px;
color:#6b7280;
margin-bottom:3px;
}

.wv-totalPrice{
font-size:22px;
font-weight:700;
color:#111827;
}

.wv-totalParticipants{
font-size:14px;
color:#6b7280;
margin-top:2px;
}

.wv-totalParticipantsDetail{
font-size:14px;
color:#6b7280;
margin-top:2px;
}

/* MOBILE */

@media (max-width:768px){

.wv-phone{
flex-direction:column;
}

.wv-phone select{
width:100%;
}

#customCountryCode{
max-width:100%;
}

.destRow{
flex-direction:column;
align-items:stretch;
}

.destList{
grid-template-columns:1fr;
}

.destCard{
padding:10px;
}

}

/* sarankendaraan*/

.vehicleSuggestion{

font-size:12px;
color:#2f5f9c;
margin-top:4px;
font-style:italic;

}

.vehicleAutoResult{

font-size:13px;
color:#374151;
margin-top:2px;

}

.destAddons{

margin-top:6px;
padding-left:10px;
font-size:13px;
color:#444;

}

.destAddons label{

display:block;
margin:3px 0;

}

.destItem{

display:flex;
align-items:center;
gap:10px;

}

/* Hotel */

.hotelSection{
margin-top:12px;
}

/* DESTINATION LIST GRID */

.destList {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  margin-top: 12px;
  padding: 0;
  list-style: none;
  margin:0;
}

.destCard{
height:100%;
width:100%;
}

.destList li{
width:100%;
}

.addonQtyBox{
display:flex;
flex-direction:column;
gap:4px;
}

.addonAll{
font-size:12px;
color:#555;
display:flex;
align-items:center;
gap:6px;
}

.addonQty{
width:70px;
height:30px;
border:1px solid #ccc;
border-radius:6px;
text-align:center;
}


/* DESTINATION CARD */

.destCard{
background:#f8fafc;
padding:12px;
border-radius:10px;
border:1px solid #e3e6ea;
box-shadow:0 2px 6px rgba(0,0,0,0.04);
transition:.2s;
}

.destCard:hover{
box-shadow:0 4px 12px rgba(0,0,0,0.08);
}


/* DEST HEADER */

.destHeader{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:8px;
font-weight:600;
font-size:14px;
}

.destHeader button{
background:#eef2f6;
border:none;
width:28px;
height:28px;
border-radius:6px;
cursor:pointer;
font-weight:bold;
}


/* REMOVE BUTTON */

.destHeader button{
background:#eef2f6;
border:none;
padding:4px 8px;
border-radius:6px;
cursor:pointer;
font-weight:bold;
}


/* ADDONS */

.destAddons{
margin-top:6px;
font-size:13px;
color:#444;
}


.addonRow{
display:grid;
grid-template-columns:18px 1fr 65px;
align-items:center;
gap:8px;
margin:6px 0;
font-size:13px;
}

.addonRow input[type="checkbox"]{
width:16px;
height:16px;
}

.addonRow span{
line-height:1.2;
}

.addonQty{
width:65px;
height:30px;
padding:4px;
border:1px solid #d6dbe1;
border-radius:6px;
text-align:center;
font-size:13px;
}


/* ADDON BOX */

.addonQtyBox{
display:flex;
flex-direction:column;
gap:4px;
}

.addonAll{
font-size:12px;
color:#555;
display:flex;
align-items:center;
gap:6px;
}

.addonName{
display:flex;
gap:6px;
align-items:center;
}

.addonInfo{
font-size:12px;
color:#1e88e5;
text-decoration:none;
}

.addonInfo:hover{
text-decoration:underline;
}

/* ==============================
 MAPS
============================== */

/* TRIP MAP HEADER */

.tripMapHeader{

display:flex;
justify-content:space-between;
align-items:center;

cursor:pointer;

padding:16px;
background:#eef2f6;

border-radius:10px;

transition:all .25s;

}



.tripMapContent{

padding-bottom:40px;

}


/* TITLE */

.tripMapTitle{
font-weight:600;
font-size:18px;
}


/* HINT */

.tripMapHint{
font-size:13px;
color:#6b7280;
margin-top:3px;
font-weight:400;
}


/* ARROW */

.tripMapArrow{

font-size:18px;
color:#6b7280;

transition:transform .25s;

}


/* CONTENT */

.tripMapContent{

max-height:0;
overflow:hidden;

transition:max-height .35s ease;

margin-top:10px;

}



/* Marker Pin dengan Nomor */

.pinMarker{
width:32px;
height:32px;
background:#2f5f9c;
color:white;
display:flex;
align-items:center;
justify-content:center;
border-radius:50% 50% 50% 0;
transform:rotate(-45deg);
border:3px solid white;
}

.pinMarker span{
transform:rotate(45deg);
}

.hotelPin{
width:34px;
height:34px;
background:white;
color:#111827;
display:flex;
align-items:center;
justify-content:center;
border-radius:8px;
border:2px solid #111827;
font-size:18px;
line-height:1;
}


/* MAP LEGEND */

.mapLegend{
margin-top:10px;
font-size:13px;
color:#555;

display:grid;
gap:10px;

}



.legendSection{
display:grid;
gap:8px;
}

.legendGroup{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:8px 18px;
align-items:start;
justify-content:start;
}

.legendMarkers{
display:flex;
flex-wrap:wrap;
gap:8px 18px;
justify-content:flex-start;
}

/* item */

.legendItem{
display:flex;
align-items:center;
gap:6px;
min-width:0;
}

/* route line */

.legendRoute{
width:26px;
height:4px;
border-radius:3px;
}

/* destination marker */

.legendPin{
width:12px;
height:12px;
background:#2f5f9c;
border-radius:50%;
}

/* hotel */

.legendHotel{
font-size:16px;
line-height:1;
}


/* FIX CHECKBOX LAYOUT */

.serviceRow label{
display:inline-flex;
align-items:center;
gap:8px;
white-space:nowrap;
}

.wv-wrapper input[type="checkbox"]{
width:auto !important;
height:auto !important;
}

/* MOBILE FIX */

@media (max-width:768px){

.legendGroup{
grid-template-columns:1fr;
}

.legendMarkers{
display:flex;
flex-wrap:wrap;
gap:8px 14px;
}

.serviceRow{
flex-wrap:wrap;
gap:12px;
}

.serviceRow label{
width:48%;
}

}

/* eror jika tidak di isi */
.wv-error{
border:2px solid #e74c3c !important;
background:#fff5f5;
}/* End custom CSS */