/* ═══════════════════════════════════════════════════════════════
   Ayurlaya Booking Form
   All selectors are scoped under .ab-wrap to beat theme specificity.
   Palette : Plum #3D0C2E · Gold #C9A84C · Ivory #FAF8F3
   Font    : Jost (Google Fonts, enqueued as WP dependency)
═══════════════════════════════════════════════════════════════ */

/* ── Custom properties (isolated inside the widget) ────────── */
.ab-wrap {
	--ab-plum:      #3D0C2E;
	--ab-gold:      #C9A84C;
	--ab-gold-lt:   #dbb96a;
	--ab-gold-pale: #f5edcf;
	--ab-ivory:     #FAF8F3;
	--ab-white:     #ffffff;
	--ab-border:    rgba(61,12,46,.18);
	--ab-red:       #c0392b;
	--ab-red-bg:    #fdf2f2;
	--ab-green:     #1a6e3c;
	--ab-green-bg:  #e8f5ee;
	--ab-radius:    2px;
	--ab-font:      'Jost','Segoe UI',sans-serif;
	--ab-ease:      .22s ease;
}

/* ── Container reset + base ────────────────────────────────── */
.ab-wrap,
.ab-wrap * {
	box-sizing: border-box;
}

/* Guarantee [hidden] always hides — some theme resets override the browser default */
.ab-wrap [hidden] {
	display: none !important;
}

.ab-wrap {
	font-family:  var(--ab-font);
	font-size:    16px;
	line-height:  1.5;
	color:        var(--ab-plum);
	background:   var(--ab-ivory);
	max-width:    860px;
	margin:       0 auto 40px;
	border-radius:var(--ab-radius);
	box-shadow:   0 4px 28px rgba(61,12,46,.12);
	overflow:     hidden;
	/* prevent theme from injecting padding on .ab-wrap children */
}

/* Scoped heading reset — fights theme h2/h3 overrides */
.ab-wrap h2,
.ab-wrap h3,
.ab-wrap h4 {
	font-family: var(--ab-font) !important;
	color:       inherit !important;
	margin:      0 !important;
	padding:     0 !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	border:      none !important;
	background:  none !important;
	box-shadow:  none !important;
}

/* Scoped paragraph reset */
.ab-wrap p {
	margin:  0;
	padding: 0;
}

/* ── Tab bar ───────────────────────────────────────────────── */
.ab-wrap .ab-tab-bar {
	display:    flex;
	background: var(--ab-plum);
	margin:     0;
	padding:    0;
	list-style: none;
}

.ab-wrap .ab-tab {
	flex:           1;
	padding:        15px 20px;
	background:     none;
	border:         none;
	border-bottom:  3px solid transparent;
	color:          var(--ab-tab-text, #ffffff);
	opacity:        .6;
	font-family:    var(--ab-font);
	font-size:      13px;
	font-weight:    600;
	letter-spacing: .1em;
	text-transform: uppercase;
	cursor:         pointer;
	transition:     color var(--ab-ease), border-color var(--ab-ease), opacity var(--ab-ease);
	outline:        none;
	line-height:    1;
	margin:         0;
}

.ab-wrap .ab-tab:hover {
	opacity: .85;
}

.ab-wrap .ab-tab--active {
	color:        var(--ab-gold);
	opacity:      1;
	border-color: var(--ab-gold);
}

/* ── Panel animation ───────────────────────────────────────── */
.ab-wrap .ab-panel--entering {
	animation: abSlideIn var(--ab-ease) both;
}

@keyframes abSlideIn {
	from { opacity: 0; transform: translateX(12px); }
	to   { opacity: 1; transform: translateX(0); }
}

/* ── Section blocks ────────────────────────────────────────── */
.ab-wrap .ab-section {
	padding:       26px 30px;
	border-bottom: 1px solid rgba(61,12,46,.1);
}

.ab-wrap .ab-section:last-of-type {
	border-bottom: none;
}

.ab-wrap .ab-section-title {
	font-size:      11px !important;
	font-weight:    700 !important;
	letter-spacing: .15em !important;
	text-transform: uppercase !important;
	color:          var(--ab-section-title, var(--ab-gold)) !important;
	margin:         0 0 18px !important;
	padding-bottom: 10px !important;
	border-bottom:  1px solid var(--ab-gold-pale) !important;
}

/* ── Grid ──────────────────────────────────────────────────── */
.ab-wrap .ab-grid {
	display: grid;
	gap:     16px;
}

.ab-wrap .ab-grid--2 {
	grid-template-columns: 1fr 1fr;
}

/* ── Field wrapper ─────────────────────────────────────────── */
.ab-wrap .ab-field {
	display:        flex;
	flex-direction: column;
	gap:            5px;
	margin:         0;
}

.ab-wrap .ab-label {
	font-size:      12px;
	font-weight:    600;
	color:          var(--ab-plum);
	letter-spacing: .04em;
	text-transform: uppercase;
	display:        flex;
	align-items:    baseline;
	gap:            4px;
	margin:         0;
}

.ab-wrap .ab-req {
	color:       var(--ab-gold);
	font-size:   13px;
	line-height: 1;
	font-weight: 700;
}

.ab-wrap .ab-opt {
	font-size:      10px;
	font-weight:    400;
	color:          rgba(61,12,46,.4);
	text-transform: none;
	letter-spacing: 0;
}

/* Inline validation message */
.ab-wrap .ab-field-error {
	font-size:  12px;
	color:      var(--ab-red);
	margin-top: 2px;
	display:    none;
}

.ab-wrap .ab-field--invalid .ab-field-error {
	display: block;
}

/* ── All inputs, selects, textareas ────────────────────────── */
.ab-wrap .ab-input {
	font-family:    var(--ab-font) !important;
	font-size:      14px !important;
	color:          var(--ab-plum) !important;
	background:     var(--ab-white) !important;
	border:         1px solid var(--ab-border) !important;
	border-radius:  var(--ab-radius) !important;
	padding:        10px 13px !important;
	width:          100% !important;
	outline:        none !important;
	box-shadow:     none !important;
	transition:     border-color var(--ab-ease), box-shadow var(--ab-ease);
	-webkit-appearance: none;
	appearance:     none;
	height:         auto !important;
	line-height:    1.4 !important;
}

.ab-wrap .ab-input:focus {
	border-color: var(--ab-gold) !important;
	box-shadow:   0 0 0 3px rgba(201,168,76,.18) !important;
}

.ab-wrap .ab-input::placeholder {
	color:   rgba(61,12,46,.35) !important;
	opacity: 1;
}

.ab-wrap .ab-field--invalid .ab-input {
	border-color: var(--ab-red) !important;
	box-shadow:   0 0 0 3px rgba(192,57,43,.12) !important;
}

.ab-wrap .ab-input[disabled] {
	background: rgba(61,12,46,.04) !important;
	cursor:     not-allowed;
	opacity:    .65;
}

/* Select arrow */
.ab-wrap .ab-select {
	background-image:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7' viewBox='0 0 11 7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%233D0C2E' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat:   no-repeat !important;
	background-position: right 12px center !important;
	padding-right:       34px !important;
	cursor:              pointer;
}

/* Date / time pickers */
.ab-wrap .ab-input[type="date"]::-webkit-calendar-picker-indicator,
.ab-wrap .ab-input[type="time"]::-webkit-calendar-picker-indicator {
	opacity: .4;
	cursor:  pointer;
}

/* Textarea */
.ab-wrap .ab-textarea {
	resize:      vertical;
	min-height:  90px;
	line-height: 1.55 !important;
}

/* ── Inline row (phone + button) ───────────────────────────── */
.ab-wrap .ab-inline-row {
	display: flex;
	gap:     10px;
	align-items: stretch;
}

.ab-wrap .ab-inline-row .ab-input {
	flex:      1;
	min-width: 0;
}

.ab-wrap .ab-input--phone { letter-spacing: .04em; }

.ab-wrap .ab-input--otp {
	letter-spacing: .2em;
	font-size:      17px !important;
	font-weight:    600 !important;
	text-align:     center;
	max-width:      150px;
}

/* ── Buttons ───────────────────────────────────────────────── */
.ab-wrap .ab-btn {
	font-family:    var(--ab-font) !important;
	font-size:      13px !important;
	font-weight:    700 !important;
	letter-spacing: .06em;
	text-transform: uppercase;
	border-radius:  var(--ab-radius);
	cursor:         pointer;
	padding:        10px 20px;
	white-space:    nowrap;
	display:        inline-flex;
	align-items:    center;
	justify-content:center;
	gap:            7px;
	transition:     background var(--ab-ease), color var(--ab-ease),
	                box-shadow var(--ab-ease), transform var(--ab-ease),
	                border-color var(--ab-ease);
	text-decoration:none !important;
	line-height:    1 !important;
}

/* Primary — gold gradient */
.ab-wrap .ab-btn--primary {
	background: linear-gradient(135deg, var(--ab-gold) 0%, var(--ab-gold-lt) 100%);
	color:      var(--ab-btn-text, var(--ab-plum)) !important;
	border:     none;
	box-shadow: 0 2px 8px rgba(201,168,76,.28);
}

.ab-wrap .ab-btn--primary:hover:not(:disabled) {
	background: linear-gradient(135deg, var(--ab-gold-lt) 0%, var(--ab-gold) 100%);
	box-shadow: 0 4px 14px rgba(201,168,76,.38);
}

/* Outline — plum border */
.ab-wrap .ab-btn--outline {
	background:  transparent;
	color:       var(--ab-plum) !important;
	border:      1.5px solid var(--ab-plum);
	box-shadow:  none;
}

.ab-wrap .ab-btn--outline:hover:not(:disabled) {
	background: var(--ab-plum);
	color:      var(--ab-white) !important;
}

/* Submit — full-width */
.ab-wrap .ab-btn--submit {
	background: linear-gradient(135deg, var(--ab-gold) 0%, var(--ab-gold-lt) 100%);
	color:      var(--ab-btn-text, var(--ab-plum)) !important;
	border:     none;
	font-size:  14px !important;
	padding:    14px 32px;
	width:      100%;
	box-shadow: 0 3px 12px rgba(201,168,76,.32);
}

.ab-wrap .ab-btn--submit:hover:not(:disabled) {
	background: linear-gradient(135deg, var(--ab-gold-lt) 0%, var(--ab-gold) 100%);
	box-shadow: 0 5px 18px rgba(201,168,76,.42);
	transform:  translateY(-1px);
}

.ab-wrap .ab-btn--submit:active:not(:disabled) {
	transform:  translateY(0);
	box-shadow: 0 2px 6px rgba(201,168,76,.22);
}

.ab-wrap .ab-btn:disabled {
	opacity:   .5;
	cursor:    not-allowed;
	transform: none !important;
	box-shadow:none !important;
}

/* Spinner inside button */
.ab-wrap .ab-spinner {
	display:       inline-block;
	width:         15px;
	height:        15px;
	border:        2px solid rgba(61,12,46,.18);
	border-top-color: var(--ab-plum);
	border-radius: 50%;
	animation:     abSpin .65s linear infinite;
	flex-shrink:   0;
}

@keyframes abSpin {
	to { transform: rotate(360deg); }
}

/* Resend text-link */
.ab-wrap .ab-btn--resend {
	background:      none !important;
	border:          none !important;
	box-shadow:      none !important;
	color:           var(--ab-gold) !important;
	font-size:       12px !important;
	font-weight:     600 !important;
	padding:         0 !important;
	cursor:          pointer;
	text-transform:  none;
	letter-spacing:  0;
	text-decoration: underline;
	text-underline-offset: 2px;
	width:           auto;
}

.ab-wrap .ab-btn--resend:hover {
	color: var(--ab-plum) !important;
}

/* ── OTP block ─────────────────────────────────────────────── */
.ab-wrap .ab-otp-block {
	margin-top: 16px;
}

.ab-wrap .ab-otp-entry {
	margin-top: 12px;
}

.ab-wrap .ab-otp-timer {
	display:     flex;
	align-items: center;
	flex-wrap:   wrap;
	gap:         8px;
	margin-top:  8px;
	font-size:   12px;
	color:       rgba(61,12,46,.55);
}

.ab-wrap .ab-otp-timer__count {
	font-weight:          700;
	color:                var(--ab-plum);
	font-variant-numeric: tabular-nums;
	min-width:            36px;
}

.ab-wrap .ab-otp-timer__count--urgent {
	color: var(--ab-red);
}

/* ── Verified badge ────────────────────────────────────────── */
.ab-wrap .ab-verified-badge {
	display:       inline-flex;
	align-items:   center;
	gap:           6px;
	margin-top:    10px;
	padding:       8px 14px;
	background:    var(--ab-green-bg);
	color:         var(--ab-green) !important;
	border:        1px solid rgba(26,110,60,.22);
	border-radius: var(--ab-radius);
	font-size:     13px;
	font-weight:   600;
}

.ab-wrap .ab-verified-icon {
	font-size:   15px;
	line-height: 1;
	color:       var(--ab-green);
}

/* ── Radio groups ──────────────────────────────────────────── */
.ab-wrap .ab-radio-group {
	display:   flex;
	flex-wrap: wrap;
	gap:       8px;
}

.ab-wrap .ab-radio-label {
	display:       flex;
	align-items:   center;
	gap:           6px;
	padding:       8px 14px;
	border:        1.5px solid var(--ab-border);
	border-radius: var(--ab-radius);
	cursor:        pointer;
	font-size:     13px;
	font-weight:   500;
	color:         var(--ab-plum);
	transition:    border-color var(--ab-ease), background var(--ab-ease);
}

.ab-wrap .ab-radio-label input[type="radio"] {
	accent-color: var(--ab-gold);
	margin:       0;
}

.ab-wrap .ab-radio-label:has(input:checked) {
	border-color: var(--ab-gold);
	background:   var(--ab-gold-pale);
}

/* Suite cards */
.ab-wrap .ab-radio-group--card {
	display:               grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap:                   10px;
}

.ab-wrap .ab-radio-card {
	display:        flex;
	flex-direction: column;
	align-items:    flex-start;
	padding:        14px;
	border:         1.5px solid var(--ab-border);
	border-radius:  var(--ab-radius);
	cursor:         pointer;
	transition:     border-color var(--ab-ease), background var(--ab-ease),
	                box-shadow var(--ab-ease);
}

.ab-wrap .ab-radio-card input[type="radio"] {
	accent-color:  var(--ab-gold);
	margin-bottom: 8px;
}

.ab-wrap .ab-radio-card__title {
	font-size:   13px;
	font-weight: 600;
	color:       var(--ab-plum);
}

.ab-wrap .ab-radio-card:has(input:checked) {
	border-color: var(--ab-gold);
	background:   var(--ab-gold-pale);
	box-shadow:   0 2px 8px rgba(201,168,76,.16);
}

/* ── Suite card booked / loading states ────────────────────── */

.ab-wrap .ab-radio-card--booked {
	border-color:  rgba(61,12,46,.1) !important;
	background:    rgba(61,12,46,.04) !important;
	cursor:        not-allowed !important;
	opacity:       .65;
	pointer-events:none;
}

.ab-wrap .ab-radio-card--booked .ab-radio-card__title {
	color:           rgba(61,12,46,.4) !important;
	text-decoration: line-through;
}

.ab-wrap .ab-radio-card--loading {
	opacity:    .5;
	cursor:     wait !important;
	pointer-events: none;
}

.ab-wrap .ab-suite-booked-badge {
	display:       inline-block;
	margin-top:    6px;
	padding:       2px 7px;
	background:    rgba(61,12,46,.08);
	border:        1px solid rgba(61,12,46,.15);
	border-radius: 2px;
	font-size:     10px !important;
	font-weight:   600 !important;
	color:         rgba(61,12,46,.45) !important;
	text-transform:uppercase;
	letter-spacing:.04em;
}

.ab-wrap .ab-suite-note {
	margin:    8px 0 0 !important;
	font-size: 12px !important;
	color:     rgba(61,12,46,.5) !important;
}

/* ── Checkout preview ──────────────────────────────────────── */
.ab-wrap .ab-checkout-preview {
	padding:       9px 13px;
	background:    var(--ab-gold-pale);
	border:        1px solid rgba(201,168,76,.5);
	border-radius: var(--ab-radius);
	font-size:     13px;
	font-weight:   600;
	color:         var(--ab-plum);
}

/* ── Alert / message banner ────────────────────────────────── */
.ab-wrap .ab-msg {
	margin:        0 30px 14px;
	padding:       11px 15px;
	border-radius: var(--ab-radius);
	font-size:     13px;
	font-weight:   500;
	line-height:   1.45;
	border-left:   3px solid transparent;
}

.ab-wrap .ab-msg--error {
	background:   var(--ab-red-bg);
	color:        var(--ab-red) !important;
	border-color: var(--ab-red);
}

.ab-wrap .ab-msg--success {
	background:   var(--ab-green-bg);
	color:        var(--ab-green) !important;
	border-color: var(--ab-green);
}

/* ── Form footer ───────────────────────────────────────────── */
.ab-wrap .ab-form-footer {
	padding:    22px 30px 30px;
	background: linear-gradient(to bottom, transparent, rgba(61,12,46,.04));
}

.ab-wrap .ab-form-note {
	margin:         10px 0 0;
	font-size:      11px;
	color:          rgba(61,12,46,.45) !important;
	text-align:     center;
	letter-spacing: .04em;
}

/* ── Success screen ────────────────────────────────────────── */
.ab-wrap .ab-success {
	background:  var(--ab-plum);
	padding:     52px 36px;
	text-align:  center;
}

.ab-wrap .ab-success-icon {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	width:           60px;
	height:          60px;
	border-radius:   50%;
	background:      var(--ab-gold);
	color:           var(--ab-plum) !important;
	font-size:       26px;
	font-weight:     700;
	margin-bottom:   20px;
	animation:       abSuccessPop .4s cubic-bezier(.34,1.56,.64,1) both;
}

@keyframes abSuccessPop {
	from { opacity: 0; transform: scale(.35); }
	to   { opacity: 1; transform: scale(1); }
}

.ab-wrap .ab-success-title {
	font-size:      22px !important;
	font-weight:    600 !important;
	color:          var(--ab-gold) !important;
	margin:         0 0 12px !important;
	letter-spacing: .02em !important;
}

.ab-wrap .ab-success-ref {
	font-size: 14px;
	color:     rgba(255,255,255,.85) !important;
	margin:    0 0 8px !important;
}

.ab-wrap .ab-success-ref strong {
	color:          var(--ab-gold) !important;
	font-size:      16px;
	letter-spacing: .06em;
}

.ab-wrap .ab-success-body {
	font-size:   13px;
	max-width:   400px;
	margin:      0 auto !important;
	color:       rgba(255,255,255,.65) !important;
	line-height: 1.6;
}

/* ── Mobile ────────────────────────────────────────────────── */
@media ( max-width: 620px ) {
	.ab-wrap .ab-section {
		padding: 20px 16px;
	}

	.ab-wrap .ab-grid--2 {
		grid-template-columns: 1fr;
	}

	.ab-wrap .ab-tab {
		font-size:      11px;
		padding:        12px 10px;
		letter-spacing: .06em;
	}

	.ab-wrap .ab-inline-row {
		flex-direction: column;
	}

	.ab-wrap .ab-inline-row .ab-btn {
		width: 100%;
	}

	.ab-wrap .ab-input--otp {
		max-width: none;
	}

	.ab-wrap .ab-form-footer {
		padding: 18px 16px 26px;
	}

	.ab-wrap .ab-msg {
		margin: 0 16px 12px;
	}

	.ab-wrap .ab-radio-group--card {
		grid-template-columns: 1fr;
	}

	.ab-wrap .ab-success {
		padding: 36px 20px;
	}

	.ab-wrap .ab-success-title {
		font-size: 19px !important;
	}
}

@media ( max-width: 380px ) {
	.ab-wrap .ab-tab {
		font-size: 10px;
		padding:   11px 8px;
	}
}

/* ── Progressive step reveal ───────────────────────────────── */

/* Steps are hidden by default (PHP also sets the hidden attr). */
.ab-wrap .ab-step {
	margin-top: 0;
}

/* When JS reveals a step, it adds ab-step--revealed which animates in. */
.ab-wrap .ab-step--reveal {
	overflow: hidden;
}

.ab-wrap .ab-step--revealed {
	animation: abStepIn .28s cubic-bezier(.4,0,.2,1) both;
}

@keyframes abStepIn {
	from { opacity: 0; transform: translateY(-8px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* ── Time slot grid ────────────────────────────────────────── */

.ab-wrap .ab-time-grid {
	display:        flex;
	flex-wrap:      wrap;
	gap:            8px;
	margin-top:     6px;
	min-height:     40px;
}

/* Individual time pill — all properties forced !important to beat theme button resets */
.ab-wrap .ab-time-slot {
	-webkit-appearance: none !important;
	-moz-appearance:    none !important;
	appearance:         none !important;
	display:            inline-flex !important;
	align-items:        center !important;
	justify-content:    center !important;
	padding:            8px 14px !important;
	margin:             0 !important;
	border:             1.5px solid rgba(61,12,46,.18) !important;
	border-radius:      2px !important;
	background:         var(--ab-white) !important;
	color:              var(--ab-plum) !important;
	font-family:        'Jost','Segoe UI',sans-serif !important;
	font-size:          13px !important;
	font-weight:        500 !important;
	line-height:        1 !important;
	white-space:        nowrap !important;
	cursor:             pointer !important;
	text-decoration:    none !important;
	text-transform:     none !important;
	letter-spacing:     normal !important;
	box-shadow:         none !important;
	outline:            none;
	vertical-align:     middle;
	transition:         border-color .22s ease, background .22s ease, color .22s ease, box-shadow .22s ease;
}

.ab-wrap .ab-time-slot:hover:not(:disabled):not(.ab-time-slot--selected) {
	border-color: var(--ab-gold) !important;
	background:   var(--ab-gold-pale) !important;
}

.ab-wrap .ab-time-slot:focus-visible {
	outline: 2px solid var(--ab-gold) !important;
	outline-offset: 2px !important;
}

/* Selected state */
.ab-wrap .ab-time-slot--selected {
	border-color: var(--ab-gold) !important;
	background:   var(--ab-gold) !important;
	color:        #3D0C2E !important;
	font-weight:  700 !important;
	box-shadow:   0 2px 8px rgba(201,168,76,.32) !important;
}

/* Booked / unavailable — dull, disabled appearance */
.ab-wrap .ab-time-slot--booked {
	border-color:    rgba(61,12,46,.1) !important;
	background:      rgba(61,12,46,.04) !important;
	color:           rgba(61,12,46,.3) !important;
	cursor:          not-allowed !important;
	text-decoration: line-through !important;
	opacity:         1 !important;
}

.ab-wrap .ab-time-slot:disabled {
	cursor: not-allowed !important;
}

/* Loading indicator inside grid */
.ab-wrap .ab-time-loading {
	display:     flex;
	align-items: center;
	gap:         8px;
	font-size:   13px;
	color:       rgba(61,12,46,.5);
	padding:     4px 0;
}

/* Error text inside grid */
.ab-wrap .ab-time-error {
	font-size:  13px;
	color:      var(--ab-red);
	margin:     4px 0 0 !important;
}

/* Legend row (available / booked key) */
.ab-wrap .ab-time-legend {
	display:     flex !important;
	align-items: center !important;
	flex-wrap:   wrap !important;
	gap:         14px !important;
	margin:      10px 0 0 !important;
	font-size:   11px !important;
	font-weight: 400 !important;
	color:       rgba(61,12,46,.5) !important;
	text-transform: none !important;
	letter-spacing: normal !important;
}

.ab-wrap .ab-legend {
	display:     inline-flex !important;
	align-items: center !important;
	gap:         6px !important;
	color:       rgba(61,12,46,.5) !important;
	font-size:   11px !important;
	font-weight: 400 !important;
}

.ab-wrap .ab-legend::before {
	content:       '';
	display:       inline-block;
	width:         18px;
	height:        12px;
	border-radius: var(--ab-radius);
	border:        1.5px solid var(--ab-border);
}

.ab-wrap .ab-legend--available::before {
	background:   var(--ab-white);
	border-color: var(--ab-border);
}

.ab-wrap .ab-legend--booked::before {
	background:      rgba(61,12,46,.04);
	border-color:    rgba(61,12,46,.1);
	text-decoration: line-through;
}

@media ( max-width: 620px ) {
	.ab-wrap .ab-time-slot {
		padding:   7px 11px;
		font-size: 12px !important;
	}
}
