.ot-estimated-shipping-basic-layout {
	padding: 15px;
}

.ot-estimated-shipping-zipcode-input {
	padding: 5px;
}

.ot-estimated-shipping-country-select-box-country,
.ot-estimated-shipping-country-select-box-province {
	width: 49%;
	padding: 8px;
	border: 1px solid #ccc;
	border-radius: 4px;
}

.ot-estimated-shipping-country-select-box-country:hover,
.ot-estimated-shipping-country-select-box-province:hover {
	background-color: #f5f5f5;
	color: #555;
	cursor: pointer;
}

.ot-estimated-shipping .timeline-layout {
	display: inline-flex;
	width: 100%;
	font-size: 15px;
	padding: 15px 10px 10px 20px;
}

.ot-estimated-shipping .timeline-layout--item:nth-child(1) {
	align-items: flex-start;
}

.ot-estimated-shipping .timeline-layout--item:nth-child(3) {
	align-items: flex-end;
}

.ot-estimated-shipping .timeline-layout--item {
	display: flex;
	flex-direction: column;
	align-items: center;
	/* float: left; */
	position: relative;
	list-style: none;
	text-align: center;
	width: 33%;
}

.ot-estimated-shipping .timeline-layout--item .timeline-layout--item--wrapper {
	display: flex;
	align-items: center;
	flex-direction: column;
}

.ot-estimated-shipping .timeline-layout--item.with-connect-line:after {
	content: '';
	position: absolute;
	top: 0.9em;
	height: 0.3em;
	background-image: linear-gradient(95deg, #f5f5f5 0%, #f5f5f5 50%, #f5f5f5 100%);
	z-index: 0;
	margin-top: 10px;
	width: 130%;
}

.ot-estimated-shipping .timeline-layout--item:nth-child(1):after {
	left: calc(10%);
}

.ot-estimated-shipping .timeline-layout--item:nth-child(2):after {
	left: calc(50%);
}

.timeline-layout--item:nth-child(1) .timeline-layout--item--wrapper {
	align-items: flex-start;
	text-align: start;
}

.timeline-layout--item:nth-child(3) .timeline-layout--item--wrapper {
	align-items: flex-end;
	text-align: end;
}

.timeline-layout--item:nth-child(1) .timeline-layout--text {
	text-align: start;
}

.timeline-layout--item:nth-child(3) .timeline-layout--text {
	text-align: end;
}

.timeline-layout--svg {
	box-shadow: 9px 5px 10px #dfe3ea, -5px -5px 10px #faffff;
	background-image: linear-gradient(136deg, #f5f5f5 0%, #f5f5f5 50%, #f5f5f5 100%);
	color: #fff;
	width: 50px;
	height: 50px;
	display: flex;
	z-index: 1;
	align-items: center;
	border-radius: 50%;
	justify-content: center;
	background-color: #ccc;
}

.timeline-layout--svg .timeline-layout--svg--icon {
	z-index: 2;
	color: rgb(0, 0, 0);
	fill: currentColor;
	width: 30px;
	height: 30px;
	display: inline-block;
	font-size: 2.5rem;
	transition: fill 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0s;
	flex-shrink: 0;
	user-select: none;
	stroke: unset;
}

select.ot-estimated-shipping-shipping-methods-select-box {
	padding: 8px;
	border-radius: 5px;
	font-family: inherit;
}

.dot-underline {
	border-bottom: 1px dotted black;
}

.timeline-layout--title:hover .timeline-layout--description {
	visibility: visible;
}

.timeline-layout--title {
	position: relative;
}

.last-description:before {
	left: unset !important;
	right: 5px;
}

.last-description {
	margin-left: -155px;
}

.timeline-layout--item:nth-child(2) .timeline-layout--description::before {
	right: 50%;
	left: unset !important;
}

.timeline-layout--item:nth-child(2) .timeline-layout--description {
	margin-left: -68px !important;
}

.timeline-layout--description {
	visibility: hidden;
	width: 200px;
	color: white;
	text-align: justify;
	border-radius: 6px;
	padding: 7px;
	position: absolute;
	z-index: 1;
	top: 100%;
	left: 0;
	margin-top: 10px;
    box-shadow: 0 0 3px rgba(56, 54, 54, 0.86);
}

.timeline-layout--title .timeline-layout--description:before {
	content: '';
	position: absolute;
	bottom: 100%;
	left: 10px;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 10px solid rgb(200 200 200 / 85%);
	border-top: 10px solid transparent;
}

.ot-hide {
    display: none;
}
