/*
Theme Name: Circla
Author: andEverywhere
Description: Stay awesome.
Version: 1.0

*/

/* Prevent horizontal overflow caused by full-bleed blocks using 100vw + scrollbar width. */
body {
	overflow-x: hidden;
}

/* Sidhuvud */

header.main .header-bar .logotype{
	padding-top: 0px;
}
header.main.scrolled .header-bar .logotype{
	padding-top: 15px !important;
}
.mobile-header .mobile-logo{
	padding-top: 15px;
}

.logotype img {
	width: 140px !important;
}

.top-bar {
	background-color: #F3F8EA !important;
	color: black !important;
}

.top-bar a {
	color: black !important;
}

.top-bar svg {
	color: #688D78 !important;
}

.top-bar .right a.book-link {
	background-color: transparent !important;

}

.mobile-header > .mobile-top-bar {
    padding-top: 0px !important;
	padding-bottom: 0px !important;}

.hide-for-mobile img 
{
	width: 140px !important;
}

/* Andra sektion */

.usp-text h3 {
	color: #2C3536 !important; 
}

/* Service content, Dödsbo, Sekretessmaterial, Hämtning */

.service-content h3 {
	color: #2C3536 !important; 

}

.service-content .button {
	background: #76BC21 !important; 	
}

/* Sortera tar hand om din avfallshantering */


.fw-container h2, .fw-container h3 {
	color: #2C3536 !important; 
}


/* Container innan footer */

.row h3 {
	color: #2C3536 !important; 
}


.title_solution {
	color: #2C3536 !important; 

}

.mobile-header .mobile-logo img {
	width: 124px !important;
}

.top-bar-mobile {
	background-color: #76BC21 !important;
}

.header-image a.cta.green, .footer-ctas a.footer-cta.green {
    background-color: #76BC21 !important;
}

.fw-container a {
	color: #76BC21 !important;
}

.x-feature-box-title {
	color: #2C3536 !important;

}

section.header-image a.cta {
  color: white !important;
  background-color: #76BC21 !important;
}

section.fw-main-row .button.green {
    background: #74bd21 !important;
	color: white !important;
}


footer .footer-menus li .sub-menu li a {
 
    color: white !important;
}

section.fw-main-row .button.purple {
	background-color: #FFFF !important;
}

section.fw-main-row .button.purple a {
	color: #FFFF;
}

a.button.cta {
	background-color: #76BC21 !important;
}

header.main .header-bar nav.left ul {
	    justify-content: space-around !important;
}

header.main .header-bar nav.right ul {
		    justify-content: space-around !important;

}

header.main .header-bar nav li.current-menu-item a {
	    border-bottom: 4px solid #74bd1f !important;
}

#menu-item-11411 {
  color: transparent !important;
}

.floating-contact {
	background: #76BC21 !important;
}


.hero-content {
	padding-bottom: 64px !important;
}

/* Front-page hero headline (page-home.php: section.hero .hero-content h1). */
section.hero .hero-content h1 {
	font-size: 50px !important;
	line-height: 55px !important;
}

.sg-title {
	color: white !important;
	text-align: center;
	font-size: 22px !important;
	line-height: 24px;
}

@media (max-width: 768px) {
  .sg-title {
    font-size: 20px !important;
    line-height: 20px;
  }
}

.circla-button {
	display: flex;
	padding: 16px 32px;
	justify-content: center;
	align-items: center;
	gap: 9px;
	border-radius: 10px;
	background: #688D78;
	color: #FFF;
	text-align: center;
	font-family: "Neue Augenblick";
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 24px; /* 150% */
	letter-spacing: 0.45px;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.circla-button-secondary {
	display: flex;
	padding: 16px 32px;
	justify-content: center;
	align-items: center;
	gap: 9px;
	border-radius: 10px;
	background: transparent;
	color: #FFF;
	text-align: center;
	font-family: "Neue Augenblick";
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 24px; /* 150% */
	letter-spacing: 0.45px;
	text-transform: uppercase;
	border: 2px solid white;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

/* Outline button for light backgrounds — green border + dark green text.
   (.circla-button-secondary is white-on-transparent, only legible on dark bg.) */
.circla-button-outline {
	display: flex;
	padding: 16px 32px;
	justify-content: center;
	align-items: center;
	gap: 9px;
	border-radius: 10px;
	background: transparent;
	color: #233129;
	text-align: center;
	font-family: "Neue Augenblick";
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 24px; /* 150% */
	letter-spacing: 0.45px;
	text-transform: uppercase;
	border: 2px solid #688D78;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.circla-sub-heading {
	color: #688D78 !important;
	font-family: "Neue Augenblick Extra Bold", "Neue Augenblick", sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 800 !important;
	line-height: 21px !important; /* 150% */
	letter-spacing: 1.4px;
	text-transform: uppercase;
	margin: 0;
}

.force-full {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    max-width: none;
}

/* Primary CTA gets a trailing arrow (matches Figma). Outline/secondary don't. */
.circla-button::after {
	content: "\2192"; /* → */
	font-size: 18px;
	line-height: 1;
	transition: transform 0.15s ease;
}

/* Hover states. Primary darkens + nudges the arrow; ghost buttons fill in. */
.circla-button:hover {
	background: #577a66;
	color: #fff;
}

.circla-button:hover::after {
	transform: translateX(3px);
}

.circla-button-outline:hover {
	background: #688D78;
	color: #fff;
}

.circla-button-secondary:hover {
	background: #fff;
	color: #233129;
}

/* No focus ring on the buttons. */
.circla-button:focus,
.circla-button:focus-visible,
.circla-button-outline:focus,
.circla-button-outline:focus-visible,
.circla-button-secondary:focus,
.circla-button-secondary:focus-visible {
	outline: none;
	box-shadow: none;
}

/* ---------------------------------------------------------------------------
   Shared block typography.
   The legacy Teamsportia h1–h3 rules shipped in dist/styles/index.css use
   !important (purple/teal/pink). These brand classes re-assert the Circla
   typography with !important so they win, and live here next to the other
   shared .circla-* classes. Block CSS keeps only layout (margins, widths).
   --------------------------------------------------------------------------- */
.circla-heading {
	margin: 0;
	font-family: "Neue Augenblick Bold", "Neue Augenblick", sans-serif !important;
	font-size: 42px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: #2C3536 !important;
	text-transform: none !important;
}

.circla-heading--lg { font-size: 56px !important; }   /* hero */
.circla-heading--sm { font-size: 30px !important; line-height: 1.2 !important; } /* contact */
.circla-heading--light { color: #fff !important; }

/* Card / feature / step titles (rendered as h3). */
.circla-card-title {
	margin: 0;
	font-family: "Neue Augenblick Bold", "Neue Augenblick", sans-serif !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	color: #233129 !important;
	text-transform: none !important;
}

@media (max-width: 900px) {
	.circla-heading { font-size: 32px !important; }
	.circla-heading--lg { font-size: 40px !important; }
	.circla-heading--sm { font-size: 26px !important; }
}

/* Desktop header wrapper — top banner + nav, stuck to the top on scroll.
   Hidden at the mobile breakpoint (680px) where .mobile-header takes over. */
.circla-header-wrap {
	position: sticky;
	top: 0;
	z-index: 1000;
}

/* The mobile header (.mobile-header) appears at <=980px (show-for-tablet), so
   the desktop nav must be hidden across that whole range — otherwise both show.
   The desktop top bar (phone + "Boka här") is kept; only the nav is hidden. */
@media (max-width: 980px) {
	/* Static so the top bar stays in normal flow. !important is required because
	   the front-page overlay rules (.circla-header-wrap--front { absolute } and
	   .is-stuck { fixed }) appear later in the file — without it the top bar
	   floats out of flow and overlaps the mobile header, hiding the logo. */
	.circla-header-wrap,
	.circla-header-wrap--front,
	.circla-header-wrap--front.is-stuck {
		position: static !important;
	}
	.circla-header-wrap .circla-header {
		display: none;
	}
	/* The old bright-green phone/email bar is replaced by the desktop top bar. */
	.top-bar-mobile {
		display: none !important;
	}
	/* Sticky mobile header: the phone top bar scrolls away, the logo + hamburger
	   bar pins to the top. Pure position:sticky — no JS/collapse, so no flicker.
	   (Stuck on .mobile-header, not the wrap, to avoid the front-page overlay.) */
	.mobile-header {
		position: sticky;
		top: 0;
		z-index: 1000;
		background-color: #fff;
		box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
	}
}

/* Top banner (phone left, "Boka här" right) above the nav.
   Full-width green band; content constrained to the global wrapper. */
.circla-top-bar {
	padding: 10px 0;
	background-color: #f3f8ea;
}

.circla-top-bar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	max-width: 1264px;
	margin: 0 auto;
	padding: 0 32px;
}

.circla-top-bar__item {
	font-family: "Open Sans", sans-serif;
	font-size: 13px;
	line-height: 1;
	color: #161616 !important;
	transition: color 0.15s ease;
}

.circla-top-bar__item:hover {
	color: #688D78 !important;
}

.circla-top-bar__item i {
	color: #688D78;
	margin-right: 4px;
}

/* Desktop header. Full-width white bar; the nav row is constrained to the
   global wrapper (matches .fw-container / the blocks' 1264px inner). Left nav +
   right nav both flex:1, logo flex:0 in the middle, so the logo stays centred. */
.circla-header {
	width: 100%;
	background-color: #fff;
	padding: 12px 0;
}

.circla-header__inner {
	display: flex;
	align-items: center;
	gap: 24px;
	max-width: 1264px;
	margin: 0 auto;
	padding: 0 32px;
}

.circla-header--left,
.circla-header--right {
	flex: 1 1 0;
	min-width: 0;
}

.circla-header--middle {
	flex: 0 0 auto;
}

.circla-header--left ul,
.circla-header--right ul {
	display: flex;
	align-items: center;
	gap: 40px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.circla-header--right ul {
	justify-content: flex-end;
}

.circla-header--left ul li,
.circla-header--right ul li {
	list-style: none;
}

/* Nav links: Neue Augenblick Bold, uppercase, black (matches design). */
.circla-header--left ul li a,
.circla-header--right ul li a,
.circla-header .li-meny {
	display: inline-block;
	font-family: "Neue Augenblick Bold", "Neue Augenblick", sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 21px;
	letter-spacing: 0.3px;
	text-transform: uppercase;
	color: #161616 !important;
	/* transparent border reserves space so the active state doesn't shift layout */
	border-bottom: 4px solid transparent;
	padding-bottom: 4px;
	transition: color 0.15s ease, border-color 0.15s ease;
}

.circla-header--left ul li a:hover,
.circla-header--right ul li a:hover,
.circla-header .li-meny:hover {
	color: #76bc21 !important;
}

/* Active menu item — chartreuse underline (matches the Figma design). */
.circla-header .current-menu-item > a,
.circla-header .current_page_item > a,
.circla-header .current-menu-ancestor > a {
	border-bottom-color: #74bb21;
}

.circle-header--logo-img {
	max-height: 82px;
	margin: 0;
	display: block;
}

@media (max-width: 900px) {
	.circla-top-bar {
		padding: 8px 0;
	}
	.circla-top-bar__inner {
		padding: 0 16px; /* global mobile gutter */
	}
	.circla-header__inner {
		gap: 16px;
		padding: 0 16px;
	}
	.circla-header--left ul,
	.circla-header--right ul {
		gap: 20px;
	}
}

/* Remove the focus outline on header links (per request). */
.circla-header-wrap a:focus,
.circla-header-wrap a:focus-visible,
.mobile-header a:focus,
.mobile-header a:focus-visible {
	outline: none;
	box-shadow: none;
}

/* ---------------------------------------------------------------------------
   Header scroll states (toggled by the .is-stuck class via JS at 50px).
   --------------------------------------------------------------------------- */
.circla-header-wrap,
.circla-header,
.circla-top-bar {
	transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.circla-header-wrap.is-stuck {
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

/* --- Inner pages: the top bar collapses smoothly after scrolling 50px. --- */
.circla-top-bar {
	overflow: hidden;
	max-height: 60px;
	transition: max-height 0.3s ease, padding 0.3s ease, opacity 0.3s ease, background-color 0.3s ease;
}

/* Top bar collapses on every page once scrolled. */
.circla-header-wrap.is-stuck .circla-top-bar {
	max-height: 0;
	padding-top: 0;
	padding-bottom: 0;
	opacity: 0;
}

/* --- Front page: transparent overlay NAV that turns solid on scroll.
   The top bar keeps its normal green background + dark text. --- */
.circla-header-wrap--front {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: transparent;
}

.circla-header-wrap--front .circla-header {
	background: transparent;
}

.circla-header-wrap--front .circla-header--left ul li a,
.circla-header-wrap--front .circla-header--right ul li a,
.circla-header-wrap--front .circla-header .li-meny {
	color: #fff !important;
}

/* Scrolled past the trigger → fixed, solid white, black text, slides in. */
.circla-header-wrap--front.is-stuck {
	position: fixed;
	background: #fff;
	animation: circla-header-drop 0.3s ease;
}

.circla-header-wrap--front.is-stuck .circla-header {
	background: #fff;
}

.circla-header-wrap--front.is-stuck .circla-header--left ul li a,
.circla-header-wrap--front.is-stuck .circla-header--right ul li a,
.circla-header-wrap--front.is-stuck .circla-header .li-meny {
	color: #161616 !important;
}

@keyframes circla-header-drop {
	from { transform: translateY(-100%); }
	to   { transform: translateY(0); }
}

/* Mobile header bar: logo left, hamburger right, both vertically centred.
   (.mobile-header only renders on mobile/tablet, so no media query needed.) */
/* Logo dead-centre, hamburger pinned to the right. The hamburger is taken out
   of flow (absolute) so the logo is the only in-flow item and centres itself. */
.mobile-header .mobile-top-bar .row {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	margin-left: 0;
	margin-right: 0;
}

.mobile-header .mobile-top-bar .mobile-logo {
	float: none;
	width: auto;
	padding-top: 0;
	text-align: center;
}

.mobile-header .mobile-top-bar #open-mobile {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	margin: 0;
}

.mobile-header .mobile-top-bar .open-mobile-menu {
	float: none;
	width: auto;
}

/* ---------------------------------------------------------------------------
   Mobile CTAs. On phones the buttons go full-width and stacked CTA groups
   become a single column (matches the mobile design).
   --------------------------------------------------------------------------- */
@media (max-width: 768px) {
	.circla-button,
	.circla-button-outline,
	.circla-button-secondary {
		width: 100%;
	}

	/* CTA groups stack vertically. */
	.hero-block__ctas,
	.services-cards-block__ctas {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}
}

/* ---------------------------------------------------------------------------
   Contact Form 7 form (.circla-cf).
   DEFAULT styling matches the on-page contact block (Figma node 2681:351):
   panel 24px gap, header+badges grouped 16px apart, USP row horizontal.
   The pop-up variant (Figma 2681:1646) differs — those overrides are scoped
   under .circla-modal further below.
   Reuses .circla-sub-heading (green eyebrow) + .circla-button (green CTA arrow).
   Requires CF7 autop to be off (see wpcf7_autop_or_not filter) so the markup
   isn't wrapped in stray <p>/<br> that would break these flex layouts.
   Tokens: border #E5E5E4, placeholder #999, label #161616, badge text #161616.
--------------------------------------------------------------------------- */
.circla-cf {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 32px;
	background: #f7f4f6;
	border-radius: 16px;
}

/* Header + trust badges share one group, 16px apart (24px from the fields). */
.circla-cf__intro {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.circla-cf__head {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.circla-cf__title {
	margin: 0;
	color: #233129;
	font-family: "Neue Augenblick", sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 34px;
}

/* Trust badges: always stacked vertically (per request), icon 2px from label. */
.circla-cf__usps {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.circla-cf__usps li {
	display: flex;
	align-items: center;
	gap: 2px;
	font-family: "Open Sans", sans-serif;
	font-size: 14px;
	line-height: 24px;
	letter-spacing: -0.1px;
	color: #161616;
}

.circla-cf__check {
	flex-shrink: 0;
	width: 16px;
	height: 16px;
}

/* Fields group — 16px between rows. */
.circla-cf__fields {
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 100%;
}

.circla-cf__field {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
}

/* Field label — covers both the .circla-cf__label span and a plain <label>
   child (depending on how the CF7 form markup is authored). 400 weight beats
   Bootstrap's bold <label>. */
.circla-cf__label,
.circla-cf__field > label {
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: -0.1px;
	color: #161616;
}

.circla-cf__row {
	display: flex;
	gap: 16px;
	margin: 0;
}

.circla-cf__row .circla-cf__field {
	flex: 1 1 0;
	min-width: 0;
}

/* CF7 wraps each control in <span class="wpcf7-form-control-wrap">; make it
   fill the field so the input goes full width. */
.circla-cf .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.circla-cf input[type="text"],
.circla-cf input[type="email"],
.circla-cf input[type="tel"],
.circla-cf textarea {
	width: 100%;
	padding: 10px 16px;
	background: #fff;
	border: 1px solid #e5e5e4;
	border-radius: 8px;
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	line-height: 24px;
	letter-spacing: -0.1px;
	color: #161616;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.circla-cf textarea {
	height: 88px; /* fixed 88px — overrides CF7's rows attribute */
	resize: vertical;
}

.circla-cf input::placeholder,
.circla-cf textarea::placeholder {
	color: #999;
	opacity: 1;
}

.circla-cf input:focus,
.circla-cf textarea:focus {
	outline: none;
	border-color: #688d78;
}

.circla-cf__submit {
	width: 100%;
	border: none;
}

/* CF7 validation feedback */
.circla-cf input.wpcf7-not-valid,
.circla-cf textarea.wpcf7-not-valid {
	border-color: #d33;
}

.circla-cf .wpcf7-not-valid-tip {
	margin-top: 4px;
	color: #d33;
	font-family: "Open Sans", sans-serif;
	font-size: 13px;
}

/* Pop-up variant (Figma 2681:1646): drop shadow, header 24px from badges,
   badges stacked vertically in darker grey at 15px. */
.circla-modal .circla-cf {
	box-shadow: 20px 20px 50px rgba(0, 0, 0, 0.1);
}

.circla-modal .circla-cf__intro {
	gap: 24px;
}

.circla-modal .circla-cf__usps {
	gap: 2px;
}

.circla-modal .circla-cf__usps li {
	gap: 4px;
	font-size: 15px;
	color: #464646;
}

@media (max-width: 600px) {
	.circla-cf__row {
		flex-direction: column;
	}
}

/* ---------------------------------------------------------------------------
   Offert pop-up modal (rendered in the footer by circla_offer_modal()).
   Centred dialog over a black tint. Background matches the .circla-cf panel
   so the form's own rounded panel sits seamlessly inside.
--------------------------------------------------------------------------- */
body.circla-modal-open {
	overflow: hidden;
}

.circla-modal[hidden] {
	display: none;
}

.circla-modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

@media (max-width: 768px) {
	.circla-modal {
		padding: 16px;
	}
}

.circla-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
}

.circla-modal__dialog {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 640px;
	max-height: calc(100vh - 48px);
	overflow-y: auto;
	background: #f7f4f6;
	border-radius: 16px;
	animation: circla-modal-in 0.2s ease;
}

@keyframes circla-modal-in {
	from { opacity: 0; transform: translateY(12px); }
	to   { opacity: 1; transform: translateY(0); }
}

.circla-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: transparent;
	color: #233129;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	transition: background-color 0.15s ease;
}

.circla-modal__close:hover {
	background: rgba(0, 0, 0, 0.06);
}

/* The form panel (.circla-cf) provides its own padding/radius, so the dialog
   doesn't add any — the panel fills it edge to edge. */
.circla-modal__body {
	width: 100%;
}

/* ---------------------------------------------------------------------------
   Footer (Figma node 2681:421). Light-green panel with three menu columns and
   a bottom bar (logo / copyright / ISO badge). New .circla-footer classes so
   these rules override the legacy footer styles in dist/styles/index.css by
   specificity (footer.circla-footer beats footer; class selectors beat the
   element-based menu rules). Markup avoids <p>/<h4> to dodge the old
   `footer p/h4 { color:#fff !important }` rules.
--------------------------------------------------------------------------- */
footer.circla-footer {
	margin-top: 0;
	padding: 64px 0 24px;
	background: #f3f8ea;
	background-attachment: scroll;
}

.circla-footer__inner {
	display: flex;
	flex-direction: column;
	gap: 48px;
	max-width: 1264px;
	margin: 0 auto;
	padding: 0 32px;
}

/* Menu row → three columns. Top-level items are headings, sub-menus the links. */
.circla-footer__nav .menu {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.circla-footer__nav .menu > li {
	flex: 1 1 0;
	min-width: 200px;
	list-style: none;
}

.circla-footer__nav .menu > li > a {
	display: block;
	margin-bottom: 20px;
	font-family: "Open Sans", sans-serif;
	font-weight: 700;
	font-size: 18px;
	line-height: 27px;
	text-transform: uppercase;
	color: #000;
	text-decoration: none;
}

.circla-footer__nav .sub-menu {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.circla-footer__nav .sub-menu li {
	margin: 0;
	list-style: none;
}

.circla-footer__nav .sub-menu a {
	font-family: "Open Sans", sans-serif;
	font-weight: 400;
	font-size: 15px;
	line-height: 22.5px;
	text-transform: capitalize;
	color: rgba(0, 0, 0, 0.8);
	text-decoration: none;
}

/* Hover → black + underline. !important is needed to beat the legacy
   `footer ul li a:hover { color:#fff !important }` rule in dist. */
.circla-footer__nav .menu > li > a:hover,
.circla-footer__nav .sub-menu a:hover {
	color: #000 !important;
	text-decoration: underline !important;
}

/* Bottom bar — logo left, copyright centred, ISO badge right. */
.circla-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-top: 24px;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.circla-footer__logo img {
	display: block;
	height: 54px;
	width: auto;
}

.circla-footer__copyright {
	font-family: "Open Sans", sans-serif;
	font-size: 14px;
	line-height: 21px;
	color: rgba(0, 0, 0, 0.8);
}

.circla-footer__iso {
	display: block;
	height: 40px;
	width: auto;
}

@media (max-width: 768px) {
	.circla-footer__nav .menu {
		flex-direction: column;
		gap: 32px;
	}

	.circla-footer__bottom {
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 24px;
	}
}