/** -----------------------------
* NivoCart - Footer Custom
* Copyright © 2026
* -------------------------------
*/

@font-face {
  font-family: 'Figtree';
  src: local('Figtree'), local('Figtree-Regular'),
    url('../fonts/Figtree-Regular.woff2') format('woff2'),
    url('../fonts/Figtree-Regular.woff') format('woff');
  font-style: normal;
  font-weight: 400;
}

/* Accessible visually-hidden helper (used for icon link text) */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

#footer-holder .footer-light, #footer-holder .footer-dark {
	background-color: transparent;
}

/* Footer Light (used with dark/coloured skins — light text on coloured bg) */
.footer-light #footer {
	clear: both;
	display: block;
	width: 100%;
	height: 100%;
	margin-top: 15px;
	padding: 20px 0;
	overflow: hidden;
}
/* Clearfix for floated columns */
.footer-light #footer::after, .footer-dark #footer::after {
	content: '';
	display: table;
	clear: both;
}
.footer-light #footer h3 {
	color: #EFEFEF;
	font-size: 16px;
	margin: 0 0 0 18px;
}
.footer-light #footer > .column-one, .footer-light #footer > .column-two, .footer-light #footer > .column-three, .footer-light #footer > .column-four {
	float: left;
	min-width: 150px;
	display: block;
	box-sizing: border-box;
}
.footer-light #footer > .column-one > ul, .footer-light #footer > .column-two > ul, .footer-light #footer > .column-three > ul, .footer-light #footer > .column-four > ul {
	margin-bottom: 10px;
}
.footer-light #footer > .column-one > ul > li, .footer-light #footer > .column-two > ul > li, .footer-light #footer > .column-three > ul > li, .footer-light #footer > .column-four > ul > li {
	list-style: none;
	position: relative;
	padding-left: 1.5em;
	margin-bottom: 6px;
}
.footer-light #footer > .column-one > ul > li::before, .footer-light #footer > .column-two > ul > li::before, .footer-light #footer > .column-three > ul > li::before, .footer-light #footer > .column-four > ul > li::before {
	content: '\f1b0';
	font-family: 'FontAwesome';
	position: absolute;
	left: 0;
	top: 0.1em;
	font-size: 0.75em;
	color: #EFEFEF;
	transition: font-size 0.2s ease;
}
.footer-light #footer > .column-one > ul > li:hover::before, .footer-light #footer > .column-two > ul > li:hover::before, .footer-light #footer > .column-three > ul > li:hover::before, .footer-light #footer > .column-four > ul > li:hover::before {
	font-size: 0.85em;
}
.footer-light #footer > .column-one a, .footer-light #footer > .column-two a, .footer-light #footer > .column-three a, .footer-light #footer > .column-four a {
	text-decoration: none;
	color: #EFEFEF;
	font-size: 16px;
	transition: transform 0.2s ease;
}
.footer-light #footer > .column-one a:hover, .footer-light #footer > .column-two a:hover, .footer-light #footer > .column-three a:hover, .footer-light #footer > .column-four a:hover {
	color: #FFF;
	transform: translateX(4px) scale(1.10);
}
.footer-light #footer > .big-column {
	float: right;
	width: 28%;
	min-width: 200px;
	display: block;
	box-sizing: border-box;
}
.footer-light #footer > .big-column p {
	font-family: 'Figtree', Arial, Helvetica, sans-serif;
	color: #EFEFEF;
	display: block;
}
.footer-light #footer > .big-column span {
	display: inline-block;
}

/* Footer Dark (used with light/neutral skins — dark text on light bg) */
.footer-dark #footer {
	clear: both;
	display: block;
	width: 100%;
	height: 100%;
	margin-top: 15px;
	padding: 20px 0;
	overflow: hidden;
}
.footer-dark #footer h3 {
	color: #444;
	font-size: 16px;
	margin: 0 0 0 18px;
}
.footer-dark #footer > .column-one, .footer-dark #footer > .column-two, .footer-dark #footer > .column-three, .footer-dark #footer > .column-four {
	float: left;
	min-width: 150px;
	display: block;
	box-sizing: border-box;
}
.footer-dark #footer > .column-one > ul, .footer-dark #footer > .column-two > ul, .footer-dark #footer > .column-three > ul, .footer-dark #footer > .column-four > ul {
	margin-bottom: 10px;
}
.footer-dark #footer > .column-one > ul > li, .footer-dark #footer > .column-two > ul > li, .footer-dark #footer > .column-three > ul > li, .footer-dark #footer > .column-four > ul > li {
	list-style: none;
	position: relative;
	padding-left: 1.5em;
	margin-bottom: 6px;
}
.footer-dark #footer > .column-one > ul > li::before, .footer-dark #footer > .column-two > ul > li::before, .footer-dark #footer > .column-three > ul > li::before, .footer-dark #footer > .column-four > ul > li::before {
	content: '\f1b0';
	font-family: 'FontAwesome';
	position: absolute;
	left: 0;
	top: 0.1em;
	font-size: 0.75em;
	color: #444;
	transition: font-size 0.2s ease;
}
.footer-dark #footer > .column-one > ul > li:hover::before, .footer-dark #footer > .column-two > ul > li:hover::before, .footer-dark #footer > .column-three > ul > li:hover::before, .footer-dark #footer > .column-four > ul > li:hover::before {
	font-size: 0.85em;
}
.footer-dark #footer > .column-one a, .footer-dark #footer > .column-two a, .footer-dark #footer > .column-three a, .footer-dark #footer > .column-four a {
	text-decoration: none;
	color: #444;
	font-size: 16px;
	transition: transform 0.2s ease;
}
.footer-dark #footer > .column-one a:hover, .footer-dark #footer > .column-two a:hover, .footer-dark #footer > .column-three a:hover, .footer-dark #footer > .column-four a:hover {
	color: #222;
	transform: translateX(4px) scale(1.10);
}
.footer-dark #footer > .big-column {
	float: right;
	width: 28%;
	min-width: 200px;
	display: block;
	box-sizing: border-box;
}
.footer-dark #footer > .big-column p {
	font-family: 'Figtree', Arial, Helvetica, sans-serif;
	color: #444;
	display: block;
}
.footer-dark #footer > .big-column span {
	display: inline-block;
}

/* Footer Icons */
p.icon-location-footer-light, p.icon-location-footer-dark {
	font-size: 14px;
	line-height: 24px;
	padding: 0 0 0 32px;
	margin-bottom: 6px;
}
p.icon-location-footer-light {
	background: url('../../image/icon_location_light.png') left top no-repeat;
}
p.icon-location-footer-dark {
	background: url('../../image/icon_location.png') left top no-repeat;
}
p.icon-phone-footer-light, p.icon-phone-footer-dark {
	font-size: 14px;
	line-height: 24px;
	padding: 0 0 0 32px;
	margin-bottom: 6px;
}
p.icon-phone-footer-light {
	background: url('../../image/icon_phone_light.png') left top no-repeat;
}
p.icon-phone-footer-dark {
	background: url('../../image/icon_phone.png') left top no-repeat;
}
p.icon-mail-footer-light, p.icon-mail-footer-dark {
	font-size: 14px;
	line-height: 24px;
	padding: 0 0 0 32px;
	margin-bottom: 6px;
}
p.icon-mail-footer-light {
	background: url('../../image/icon_mail_light.png') left top no-repeat;
}
p.icon-mail-footer-dark {
	background: url('../../image/icon_mail.png') left top no-repeat;
}

/* Social icons — accessible text hidden via .sr-only, no text-indent needed */
.icon-facebook {
	float: right;
	width: 23px;
	height: 23px;
	background: url('../../image/icon_facebook.png') center -23px no-repeat;
	transition: background-position 0.3s;
	margin-top: 8px;
	margin-right: 12px;
}
a.icon-facebook:hover {
	background: url('../../image/icon_facebook.png') center top no-repeat;
}
.icon-twitter {
	float: right;
	width: 23px;
	height: 23px;
	background: url('../../image/icon_twitter.png') center -23px no-repeat;
	transition: background-position 0.3s;
	margin-top: 8px;
	margin-right: 12px;
}
a.icon-twitter:hover {
	background: url('../../image/icon_twitter.png') center top no-repeat;
}
.icon-pinterest {
	float: right;
	width: 23px;
	height: 23px;
	background: url('../../image/icon_pinterest.png') center -23px no-repeat;
	transition: background-position 0.3s;
	margin-top: 8px;
	margin-right: 12px;
}
a.icon-pinterest:hover {
	background: url('../../image/icon_pinterest.png') center top no-repeat;
}
.icon-instagram {
	float: right;
	width: 23px;
	height: 23px;
	background: url('../../image/icon_instagram.png') center -23px no-repeat;
	transition: background-position 0.3s;
	margin-top: 8px;
	margin-right: 12px;
}
a.icon-instagram:hover {
	background: url('../../image/icon_instagram.png') center top no-repeat;
}

/* ============================================================
 * RESPONSIVE
 * ============================================================ */

/* Tablets (601px – 900px): 2×2 grid — col-one/col-two on row 1, col-three/address on row 2 */
@media only screen and (min-width: 601px) and (max-width: 900px) {
	.footer-light #footer, .footer-dark #footer {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
	.footer-light #footer > .column-one, .footer-light #footer > .column-two,
	.footer-light #footer > .column-three, .footer-light #footer > .column-four,
	.footer-dark #footer > .column-one, .footer-dark #footer > .column-two,
	.footer-dark #footer > .column-three, .footer-dark #footer > .column-four {
		width: auto !important;
		min-width: 0;
		float: none;
	}
	.footer-light #footer > .column-one, .footer-dark #footer > .column-one { grid-column: 1; grid-row: 1; }
	.footer-light #footer > .column-two, .footer-dark #footer > .column-two { grid-column: 2; grid-row: 1; }
	.footer-light #footer > .column-three, .footer-dark #footer > .column-three { grid-column: 1; grid-row: 2; }
	.footer-light #footer > .big-column, .footer-dark #footer > .big-column {
		grid-column: 2;
		grid-row: 2;
		width: auto !important;
		min-width: 0;
		float: none;
		clear: none;
		margin: 0;
	}
}

/* Phones (max 600px): all columns stack full-width */
@media only screen and (max-width: 600px) {
	.footer-light #footer > .column-one, .footer-light #footer > .column-two,
	.footer-light #footer > .column-three, .footer-light #footer > .column-four,
	.footer-light #footer > .big-column,
	.footer-dark #footer > .column-one, .footer-dark #footer > .column-two,
	.footer-dark #footer > .column-three, .footer-dark #footer > .column-four,
	.footer-dark #footer > .big-column {
		width: 100% !important;
		min-width: 0;
		float: none;
		clear: both;
		margin: 8px 0 0 0;
	}
}

/* ============================================================
 * REDUCED MOTION
 * ============================================================ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
