/* GENERAL */

.hidden {
	display: none;
}

@media (min-width: 768px) {
	.hero--front .container {
		padding-left: 5rem !important;
	}
}

.mobile-menu__contact a {
	justify-content: start !important;
}

.mobile-menu .btn-navy {
	color: white;
}

.container .hero__content {
	padding: 3rem 0;
}

.container .hero__title {
	font-size: 1.875rem;
}

.container .hero__text {
	/*margin-bottom: 0;*/
}

.btn-navy:hover {
	color: var(--gold) !important;
}

/* SERVICES */

.price-card {
	margin-top: 30px;
}

.price-card__header {
	border-bottom: 1px solid white;
}

.price-card__body:not(.print-pricelist .price-card__body) {
	padding: 0;
	max-height: 600px;
	overflow-y: scroll !important;
	overflow-x: hidden !important;
}

.price-card__note {
	padding-left: 10px;
	font-style: italic;
}

.price-card__item {
	padding-left: 10px;
	padding-right: 10px;
	/*border-radius: var(--radius-xl);*/
	flex-direction: column;
	align-items: stretch;
}

.price-card__item:nth-child(even) {
	background-color: rgba(248,246,241,0.5);
}

.price-card__item.subtitle {
	background-color: var(--navy);
	font-weight: bold;
}

.price-card__item.subtitle .price-card__item-name {
	color: white;
}

.price-card__item > div {
	display: flex;
	justify-content: space-between;
}

.price-card__item .note {
	font-style: italic;
	font-size: 0.8em;
	color: var(--foreground-muted);
}

.info-box p:not(:last-child) {
	margin-bottom: 0.5rem;
}

.info-box--navy h3 {
	color: var(--white);
}

.info-box--navy p {
	color: rgba(255,255,255,0.7);
}

.info-box--navy a {
	color: var(--gold);
}

.steps-grid a {
	color: var(--navy);
}

.steps-grid a:hover {
	color: var(--gold) !important;
}

@media (max-width: 600px) {	
	.contact-form {
		padding: 0 !important;
	}

	.contact-form h3 {
		padding: 1rem !important;
	}
}

#contact-form .contact-form h3 {
	font-size: 1.5rem;
	color: var(--navy);
	margin-bottom: 1.5rem;
}

.contact-direct {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 2rem;
}

.contact-direct .animate-on-scroll h3 {
	color: var(--white);
	font-size: 1.5rem;
	margin-bottom: 1rem;
}

.contact-direct .animate-on-scroll > p {
	color: rgba(255,255,255,0.7);
	margin-bottom: 1.5rem;
}

.contact-direct .animate-on-scroll > div {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.contact-direct .animate-on-scroll > div p {
	color: var(--white);
}

.contact-direct .animate-on-scroll > div p i {
	color: var(--foreground-muted);
}

.contact-direct .animate-on-scroll > div a {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--gold);
	font-size: 1.125rem;
	font-weight: 500;
}

.container .courier-order-grid .info-cards {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.faq-list a {
	color: var(--navy);
}

.faq-list a:hover {
	color: var(--gold);
}


/* MISC */

.questions-tooltip-wrapper {
	position: relative;
    display: flex;
    width: max-content;
    flex-direction: column;
    gap: 5px;
}

.contact-info-boxes .questions-tooltip-wrapper {
	margin: 0 auto;
}

.questions-tooltip-popup {
    position: absolute;
    bottom: calc(100% + 8px);
    left: 100%;
    transform: translateX(-50%);
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 1rem;
    width: 250px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

.questions-tooltip-wrapper:hover .questions-tooltip-popup {
    opacity: 1;
    visibility: visible;
}

.top-bar {
	padding-bottom: 7px;
}

/* PRINT PRICELIST */

.print-pricelist {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
}

.print-select {
	width: 300px;
}

/* 404 */

.section.section--404 {
	min-height: 60vh;
	display: flex;
	align-items: center;
}

.section.section--404 .container {
	text-align:center;
}

.section.section--404 .container p {
	color: var(--foreground-muted);
	font-size: 1.125rem;
	margin-bottom: 2rem;
	max-width: 32rem;
	margin-left: auto;
	margin-right: auto;
}

.section.section--404 .container > div {
	font-size: 6rem;
	font-weight: 700;
	color: var(--navy);
	opacity: 0.1;
	font-family: var(--font-display);
}

.section.section--404 .font-display {
	font-size: 2.25rem;
	color: var(--navy);
	margin-bottom: 1rem;
}