@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

* {
	margin:0;
	padding:0;
	font-size:inherit;
	font-family:inherit;
	box-sizing:border-box;
}

body {
 font-family: "Montserrat", sans-serif;
 font-size:15px;
 font-optical-sizing: auto;
 margin:0px;
 background-color:#fff;
 color:#00263e;
	-webkit-text-size-adjust: none;
}
html, body { height:100%; }

article, aside, details, figcaption, figure, footer, header, main, mark, nav, section, summary, time {
	display:block;
}

table { border-collapse:collapse; margin-left:-5px; margin-right:-5px; width:calc(100% + 10px); }
th { text-align:left; }
tr:nth-child(odd) { background-color:#edf4f7; }
td { padding:5px; }
img { border:none; }

* + p, * + h1, * + h2, * + h3, * + h4, * + h5, * + h6, * + table, * + form { margin-top:1em; max-height:10000em; }
hr { margin:1em 0; height:1px; border:none; overflow:hidden; background-color:#000; }

h1 { font-size:26px; line-height:1; }
h2 { font-size:22px; }
h3 { font-size:20px; }
h4 { font-size:16px; }
h5 { font-size:14px; }
h6 { font-size:12px; }

a { color:#0066a6; }
a:visited { color:#004773; }
a:hover { color:#009dff; }

a.button, input[type=submit], input[type=button] {
	border:none;
	cursor:pointer;
}

ul {	padding-left:1em; }

b, strong { font-weight:600; }

input { box-sizing: content-box; }
input[type=text], input[type=password], input[type=submit], input[type=button] {
 padding:5px;
 border-radius:5px;
 -webkit-appearance:none;
 border:1px solid #aaa;
}
input[type=text], input[type=password] {
 width:180px;
 max-width:60vw;
}
input[type=submit],input[type=button] {
 background-color:#0066a6;
 color:#fff;
 transition:all 0.5s;
 padding:5px 10px;
 min-width:0;
 border:0;
 font-weight:500;
}
input[type=submit]:hover, input[type=button]:hover {
 cursor:pointer;
 background-color:#009dff;
}
input[type=submit][disabled], input[type=submit][disabled]:hover, input[type=button][disabled], input[type=button][disabled]:hover {
 background-color:#ddd;
 border-color:#ddd;
 color:#fff;
 cursor:wait;
}
input[size="6"] { width: calc(6 * 0.56em); } /* zone #, numbers only */
input[size="8"] { width: calc(8 * 0.87em); } /* license plate, mixed */
input.is-error { border-color:#c00; }

#discount_code[readonly] {
 border:1px solid #0C0;
 color:#0C0;
 background-color:#dfc;
 cursor:not-allowed;
}

#payment label {
	display:block;
	margin:5px;
}
#card_table tr:first-child > td:first-child { vertical-align:top; padding-top:14px; }
.discount { border:1px solid #0C0; color:#0C0; background-color:#dfc; border-radius:1px; padding:2px; font-weight:bold; }

.payment_method {
 display:inline-block;
 vertical-align:bottom;
 border:1px solid #000;
 border-top-left-radius:5px;
 border-top-right-radius:5px;
 padding: 8px 10px 7px;
	margin: 0 0 -1px calc(50% - 120px);
	width: 240px;
	text-align: center;
}
.payment_method.is-selected {
 border-bottom:1px solid #fff;
}
#card_fields hr { margin:0; }
#card_fields * + table { margin-top:0; padding-top:5px; border-top:1px solid #000; }

.gpay-button.black { outline:none !important; }

apple-pay-button {
	--apple-pay-button-width: 100px;
	--apple-pay-button-height: 40px;
	--apple-pay-button-border-radius: 5px;
	--apple-pay-button-padding: 0px 0px;
	--apple-pay-button-box-sizing: border-box;
	margin: 0 0 5px 2px;
	vertical-align:bottom;
}
#payment_overlay {
	z-index:100;
	background-color:rgba(0,0,0,0.5);
	position:fixed;
	width:100%;
	height:100%;
	left:0; right:0; top:0; bottom:0;
	display:none;
 cursor:wait;
}

.scale {
	position:relative;
	width:100%;
}
.scale iframe {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	width:100%;
	height:100%;
}
.scale > div { display:inline-block; }

.m { font-size:20px; }
.s { font-size:16px; }
.xs { font-size:12px; }

.success, .error, .warning {
 font-weight:bold;
}
.success {
 color:#0c0;
}
.error {
 color:#c00;
}
.warning {
 color:#f90;
}

.scale { position:relative; }
.scale > div { display:inline-block; }
.scale > iframe { position:absolute; width:100%; height:100%; top:0; left:0; }

body > * { padding:20px 3.125vw; }
header {
 text-align:center;
 background-color:#00263e;
 box-shadow:1px 1px 3px rgba(0,0,0,0.25);
}
header #logo { width:300px; }
main {
 box-sizing:content-box;
 max-width:390px;
 margin:auto;
 overflow-x:hidden;
}
footer {
 text-align:center;
 font-size:12px;
 color:#666;
}

#zone_entry {
 margin:20px 0;
 font-size:30px;
 text-align:center;
}

.price { margin:10px 0 0; font-weight:600; }
.price input[type=radio] { float:left; margin:12px 10px 0px 11px; }
.price + .price { margin-top:5px; }

.price label {
 border:1px solid #d5ecf8;
 background-color:#edf4f7;
 padding:5px;
 border-radius:5px;
 display:block;
}
.price input[type=radio]:checked + label { cursor:pointer; }
.price label.is-active, input[type=radio]:checked + label {
 background-color:#fff2cc;
 border-color:#ffc92c;
}


#pay_form td:last-child { width:202px; }

#account_link a:before {
 content: "\25B6 \FE0E";
}

#login_modal {
 display:none;
 background-color:#fff;
 border:2px solid #808080;
 padding:20px;
 position:fixed;
 top:50%;
 margin:-80px auto 0;
 /*box-shadow:0 0 2000px 2000px rgba(0,0,0,0.8);*/
}
#login_modal:focus { display:block; }
#login_modal:focus-within { display:block; }
#login_modal tr:nth-child(odd) { background-color:none; }
#login_modal_bg {
 background-color:rgba(0,0,0,0.8);
 display:none;
 position:fixed;
 top:0;
 left:0;
 right:0;
 bottom:0;
}

.not-desktop { display:none !important; }
.not-mobile { display:block !important; }
.not-tablet { display:block !important; }
.desktop-only { display:block !important; }
.mobile-only { display:none !important; }
.tablet-only { display:none !important; }

@media (max-width:979px) {
	.not-desktop { display:block !important; }
	.not-mobile { display:block !important; }
	.not-tablet { display:none !important; }
	.desktop-only { display:none !important; }
	.mobile-only { display:none !important; }
	.tablet-only { display:block !important; }
}

@media (max-width:659px) {
	.not-desktop { display:block !important; }
	.not-mobile { display:none !important; }
	.not-tablet { display:block !important; }
	.desktop-only { display:none !important; }
	.mobile-only { display:block !important; }
	.tablet-only { display:none !important; }
}