.elementor-kit-5{--e-global-color-primary:#14171C;--e-global-color-secondary:#1E5A44;--e-global-color-text:#2B3038;--e-global-color-accent:#B9532C;--e-global-color-cream:#F6F2EB;--e-global-color-sand:#EAE3D7;--e-global-color-mint:#E3EFE8;--e-global-color-line:#E2DCD1;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-weight:650;--e-global-typography-secondary-font-family:"Bricolage Grotesque";--e-global-typography-secondary-font-weight:550;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;color:#2B3038;font-family:"Inter", Sans-serif;font-size:17px;line-height:1.6em;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:#14171C;font-family:"Inter", Sans-serif;font-weight:600;color:#FFFFFF;border-radius:999px 999px 999px 999px;padding:14px 24px 14px 24px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:#1E5A44;color:#FFFFFF;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#1E5A44;}.elementor-kit-5 a:hover{color:#14171C;}.elementor-kit-5 h1{color:#14171C;font-family:"Bricolage Grotesque", Sans-serif;font-weight:650;}.elementor-kit-5 h2{color:#14171C;font-family:"Bricolage Grotesque", Sans-serif;font-weight:650;}.elementor-kit-5 h3{color:#14171C;font-family:"Bricolage Grotesque", Sans-serif;font-weight:650;}.elementor-kit-5 h4{color:#14171C;font-family:"Bricolage Grotesque", Sans-serif;font-weight:650;}.elementor-kit-5 h5{color:#14171C;font-family:"Bricolage Grotesque", Sans-serif;font-weight:650;}.elementor-kit-5 h6{color:#14171C;font-family:"Bricolage Grotesque", Sans-serif;font-weight:650;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:16px;}.elementor-element{--widgets-spacing:16px 16px;--widgets-spacing-row:16px;--widgets-spacing-column:16px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =====================================================================
   Atico design system (Elementor Site Settings → Custom CSS)
   Source: atico-design.css – loaded by the build script.
   ===================================================================== */

:root {
	--a-ink: #14171C;
	--a-text: #2B3038;
	--a-muted: #5B616B;
	--a-bg: #FFFFFF;
	--a-cream: #F6F2EB;
	--a-sand: #EAE3D7;
	--a-mint: #E3EFE8;
	--a-line: #E2DCD1;
	--a-forest: #1E5A44;
	--a-forest-2: #17483A;
	--a-terra: #B9532C;
	--a-r-sm: 12px;
	--a-r: 20px;
	--a-r-lg: 32px;
	--a-shadow: 0 1px 2px rgb(20 23 28 / .04), 0 12px 32px -16px rgb(20 23 28 / .18);
	--a-shadow-lg: 0 2px 4px rgb(20 23 28 / .04), 0 24px 56px -24px rgb(20 23 28 / .28);
	--a-ease: cubic-bezier(.2, .7, .2, 1);
	--a-space: clamp(56px, 7vw, 112px);
	--a-gutter: clamp(16px, 4vw, 32px);
	--a-inset: clamp(8px, 1.2vw, 16px);
}

html { scroll-behavior: smooth; scroll-padding-top: 96px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
	background: var(--a-bg);
	color: var(--a-text);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	font-feature-settings: "cv11", "ss01";
}

::selection { background: var(--a-mint); color: var(--a-ink); }

:focus-visible { outline: 3px solid var(--a-forest); outline-offset: 3px; border-radius: 6px; }

/* ---------------------------------------------------------------- type */

h1, h2, h3, h4, .elementor-heading-title { text-wrap: balance; }
p, li { text-wrap: pretty; }

h1, .elementor-heading-title:is(h1) {
	font-size: clamp(2.5rem, 1.5rem + 4vw, 4.75rem);
	line-height: 1.02;
	letter-spacing: -.035em;
}
h2, .elementor-heading-title:is(h2) {
	font-size: clamp(1.875rem, 1.3rem + 2.2vw, 3rem);
	line-height: 1.08;
	letter-spacing: -.028em;
}
h3, .elementor-heading-title:is(h3), .atico-h3 .elementor-heading-title {
	font-size: clamp(1.25rem, 1.1rem + .5vw, 1.5rem);
	line-height: 1.2;
	letter-spacing: -.015em;
}

.atico-lead, .atico-lead p { font-size: clamp(1.0625rem, 1rem + .35vw, 1.25rem); line-height: 1.55; color: var(--a-muted); max-width: 62ch; }
.atico-small, .atico-small p { font-size: .9rem; color: var(--a-muted); }
.atico-prose { max-width: 72ch; }
.atico-prose p { margin: 0 0 1em; }

.atico-eyebrow .elementor-heading-title {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	font-family: Inter, system-ui, sans-serif;
	font-size: .8125rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--a-forest);
	line-height: 1.4;
}
.atico-eyebrow .elementor-heading-title::before {
	content: "";
	width: 8px; height: 8px;
	border-radius: 50%;
	background: var(--a-terra);
	flex: none;
}

/* Placeholder copy waiting for the client */
.atico-todo {
	display: inline-block;
	padding: 14px 18px;
	border: 1.5px dashed var(--a-line);
	border-radius: var(--a-r-sm);
	color: var(--a-muted);
	background: #fff;
	font-size: .95rem;
}

/* ---------------------------------------------------------------- layout */

.e-con.e-flex.e-child { --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; }

.e-con.e-flex.atico-section {
	--padding-top: var(--a-space);
	--padding-bottom: var(--a-space);
	--padding-left: var(--a-gutter);
	--padding-right: var(--a-gutter);
	--content-width: min(100%, 1240px);
}
.e-con.e-flex.atico-section--tight { --padding-top: 24px; --padding-bottom: var(--a-space); }
.e-con.e-flex.atico-section--cream { background: var(--a-cream); }
.e-con.e-flex.atico-section--product { --padding-top: 24px; --padding-bottom: 48px; }

.atico-section-head { --width: 100%; max-width: 760px; }
.atico-section-head.is-center { margin-inline: auto; text-align: center; align-items: center; }

.e-con.e-flex.atico-section-bar { --width: 100%; }
.atico-section-bar > .atico-section-head { --width: auto; flex: 1 1 420px; }

.e-con.e-flex.atico-actions { --width: auto; --gap: 12px; }

/* Grids */
.e-con.e-flex.atico-grid { --display: grid; display: grid !important; --width: 100%; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); }
.e-con.e-flex.atico-grid--2 { --cols: 2; }
.e-con.e-flex.atico-grid--3 { --cols: 3; }
@media (max-width: 1024px) { .e-con.e-flex.atico-grid { --cols: 2; } }
@media (max-width: 640px) { .e-con.e-flex.atico-grid { --cols: 1; } }

.e-con.e-flex.atico-split { --display: grid; display: grid !important; --width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.e-con.e-flex.atico-split--inquiry { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); }
@media (max-width: 960px) { .e-con.e-flex.atico-split, .e-con.e-flex.atico-split--inquiry { grid-template-columns: 1fr; } }

.e-con.e-flex.atico-panel {
	--padding-top: clamp(24px, 3vw, 40px);
	--padding-bottom: clamp(24px, 3vw, 40px);
	--padding-left: clamp(20px, 3vw, 40px);
	--padding-right: clamp(20px, 3vw, 40px);
	background: #fff;
	border: 1px solid var(--a-line);
	border-radius: var(--a-r-lg);
	box-shadow: var(--a-shadow);
}
@media (min-width: 961px) { .e-con.e-flex.atico-sticky { position: sticky; top: 112px; } }

/* ---------------------------------------------------------------- hero */

.e-con.e-flex.atico-hero {
	--padding-top: clamp(48px, 7vw, 104px);
	--padding-bottom: clamp(48px, 7vw, 104px);
	--padding-left: clamp(20px, 4vw, 56px);
	--padding-right: clamp(20px, 4vw, 56px);
	--content-width: min(100%, 1240px);
	--width: calc(100% - 2 * var(--a-inset));
	margin: 12px auto 0;
	border-radius: var(--a-r-lg);
	background:
		radial-gradient(60% 80% at 100% 0%, rgb(227 239 232 / .9), transparent 60%),
		radial-gradient(50% 70% at 0% 100%, rgb(234 227 215 / .9), transparent 60%),
		var(--a-cream);
	overflow: hidden;
	isolation: isolate;
}
.e-con.e-flex.atico-hero.has-media { --display: grid; }
.e-con.e-flex.atico-hero.has-media > .e-con-inner { display: grid !important; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: center; }
@media (max-width: 960px) { .e-con.e-flex.atico-hero.has-media > .e-con-inner { display: grid !important; grid-template-columns: 1fr; } }
.atico-hero__text { justify-content: center; }
.atico-hero__text .atico-lead { margin-top: 4px; }
.e-con.e-flex.atico-hero--compact { --padding-top: clamp(40px, 5vw, 72px); --padding-bottom: clamp(40px, 5vw, 72px); }
.atico-hero--compact h1, .atico-hero--compact .elementor-heading-title:is(h1) { font-size: clamp(2.25rem, 1.4rem + 3vw, 3.75rem); }

/* Media */
.atico-media img,
.atico-media .atico-ph {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--a-r);
	display: block;
	box-shadow: var(--a-shadow-lg);
}
.atico-ph {
	display: grid;
	place-items: center;
	place-content: center;
	text-align: center;
	padding: 24px;
	color: var(--a-muted);
	font-size: .875rem;
	font-weight: 500;
	background:
		radial-gradient(70% 60% at 20% 15%, var(--a-mint), transparent 65%),
		radial-gradient(60% 60% at 85% 30%, #F3DED2, transparent 60%),
		radial-gradient(80% 70% at 50% 100%, var(--a-sand), transparent 70%),
		#F9F7F3;
	border-radius: var(--a-r);
	aspect-ratio: 4 / 3;
}
.atico-ph span {
	padding: 8px 14px;
	border-radius: 999px;
	background: rgb(255 255 255 / .7);
	backdrop-filter: blur(6px);
}

/* Home hero collage */
.e-con.e-flex.atico-collage {
	--display: grid; display: grid !important;
	grid-template-columns: 1.2fr .8fr;
	grid-template-rows: auto 1fr;
	gap: 16px;
	height: clamp(380px, 38vw, 540px);
}
.atico-collage__a { grid-column: 1; grid-row: 1 / span 2; height: 100%; }
.atico-collage__q { grid-column: 2; grid-row: 1; align-self: start; }
.atico-collage__b { grid-column: 2; grid-row: 2; height: 100%; min-height: 0; }
.atico-collage .elementor-widget-container, .atico-collage .elementor-image { height: 100%; }
.atico-collage img { width: 100%; height: 100% !important; object-fit: cover; border-radius: var(--a-r); box-shadow: var(--a-shadow-lg); display: block; }
.atico-collage__b img { border: 6px solid #fff; transform: rotate(2.5deg); }
.atico-quote { margin: 0; padding: 20px; border-radius: var(--a-r); background: var(--a-forest-2); color: #fff; box-shadow: var(--a-shadow-lg); transform: rotate(-2deg); }
.atico-quote blockquote { margin: 0 0 8px; font-family: "Bricolage Grotesque", Inter, sans-serif; font-size: 1.15rem; line-height: 1.25; font-weight: 600; letter-spacing: -.01em; }
.atico-quote figcaption { font-size: .8125rem; color: rgb(255 255 255 / .7); }
@media (max-width: 640px) { .e-con.e-flex.atico-collage { height: 420px; grid-template-columns: 1fr 1fr; } }

/* ---------------------------------------------------------------- buttons */

.atico-btn .elementor-button,
.atico-form .elementor-button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce .single_add_to_cart_button,
.elementor-widget-woocommerce-products ul.products li.product .button,
.elementor-widget-wc-archive-products ul.products li.product .button,
.elementor-widget-woocommerce-product-related ul.products li.product .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5em;
	min-height: 48px;
	padding: 12px 24px;
	border-radius: 999px;
	border: 1.5px solid var(--a-ink);
	background: var(--a-ink);
	color: #fff;
	font-family: Inter, system-ui, sans-serif;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -.005em;
	text-decoration: none;
	transition: background-color .2s var(--a-ease), color .2s var(--a-ease), border-color .2s var(--a-ease), transform .2s var(--a-ease), box-shadow .2s var(--a-ease);
}
.atico-btn .elementor-button:hover,
.atico-form .elementor-button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce .single_add_to_cart_button:hover {
	background: var(--a-forest);
	border-color: var(--a-forest);
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 10px 24px -12px rgb(30 90 68 / .6);
}
.atico-btn--ghost .elementor-button { background: transparent; color: var(--a-ink); }
.atico-btn--ghost .elementor-button:hover { background: var(--a-ink); border-color: var(--a-ink); color: #fff; }
.atico-btn--light .elementor-button { background: #fff; border-color: #fff; color: var(--a-ink); }
.atico-btn--light .elementor-button:hover { background: var(--a-mint); border-color: var(--a-mint); color: var(--a-ink); }
.atico-btn--link .elementor-button { background: none; border: 0; padding: 0; min-height: 0; color: var(--a-forest); }
.atico-btn--link .elementor-button:hover { background: none; color: var(--a-ink); box-shadow: none; }

/* WooCommerce ".alt" buttons ship with purple defaults */
.woocommerce .single_add_to_cart_button,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce .single_add_to_cart_button.disabled {
	background: var(--a-ink) !important;
	border-color: var(--a-ink) !important;
	color: #fff !important;
}
.woocommerce .single_add_to_cart_button:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover { background: var(--a-forest) !important; border-color: var(--a-forest) !important; }

.e-con.e-flex.atico-hero + .e-con.e-flex.atico-section { --padding-top: clamp(40px, 5vw, 72px); }

/* ---------------------------------------------------------------- cards */

.e-con.e-flex.atico-card {
	--padding-top: 28px;
	--padding-bottom: 28px;
	--padding-left: 28px;
	--padding-right: 28px;
	--width: 100%;
	position: relative;
	background: #fff;
	border: 1px solid var(--a-line);
	border-radius: var(--a-r);
	color: inherit;
	text-decoration: none;
	transition: transform .35s var(--a-ease), box-shadow .35s var(--a-ease), border-color .35s var(--a-ease);
}
.atico-section--cream .e-con.e-flex.atico-card { border-color: transparent; }
.e-con.e-flex.atico-card:hover { transform: translateY(-4px); box-shadow: var(--a-shadow-lg); border-color: transparent; }
.atico-card__title .elementor-heading-title { color: var(--a-ink); }
.atico-card__text p { margin: 0; color: var(--a-muted); }
.atico-card__more { margin-top: auto !important; padding-top: 8px; }
.atico-more { font-weight: 600; color: var(--a-forest); display: inline-flex; gap: .4em; align-items: center; }
.atico-more span { transition: transform .3s var(--a-ease); }
.atico-card:hover .atico-more span { transform: translateX(4px); }
.atico-card__media { margin: -12px -12px 8px !important; }
.atico-card__media img, .atico-card__media .atico-ph { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 14px; display: block; }

/* Bento grid on the front page */
.e-con.e-flex.atico-bento { --display: grid; display: grid !important; --width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: minmax(200px, auto); }
.e-con.e-flex.atico-bento > .atico-card--feature { grid-row: span 2; background: var(--a-ink); border-color: var(--a-ink); }
.atico-card--feature .atico-card__title .elementor-heading-title { color: #fff; font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); }
.atico-card--feature .atico-card__text p { color: rgb(255 255 255 / .75); }
.atico-card--feature .atico-more { color: #9FD7BE; }
.atico-card--feature .atico-card__media img { aspect-ratio: 4 / 3; }
.e-con.e-flex.atico-bento > .atico-card:nth-child(3) { background: var(--a-mint); border-color: transparent; }
.e-con.e-flex.atico-bento > .atico-card:nth-child(4) { background: var(--a-cream); border-color: transparent; }
@media (max-width: 1024px) { .e-con.e-flex.atico-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); } .e-con.e-flex.atico-bento > .atico-card--feature { grid-column: span 2; grid-row: auto; } }
@media (max-width: 640px) { .e-con.e-flex.atico-bento { grid-template-columns: 1fr; } .e-con.e-flex.atico-bento > .atico-card--feature { grid-column: auto; } }

/* Stats */
.atico-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 8px 0; }
.atico-stats div { padding: 18px; border-radius: var(--a-r-sm); background: var(--a-cream); }
.atico-stats dt { font-family: "Bricolage Grotesque", Inter, sans-serif; font-size: 1.6rem; font-weight: 650; color: var(--a-ink); letter-spacing: -.02em; }
.atico-stats dd { margin: 2px 0 0; color: var(--a-muted); font-size: .9rem; }

/* Steps */
.atico-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.atico-steps li { display: flex; gap: 16px; align-items: flex-start; padding: 24px; background: #fff; border-radius: var(--a-r); border: 1px solid var(--a-line); }
.atico-section--cream .atico-steps li { border-color: transparent; }
.atico-steps__n { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--a-forest); color: #fff; font-weight: 700; }
.atico-steps strong { display: block; color: var(--a-ink); font-size: 1.05rem; margin-bottom: 4px; }
.atico-steps p { margin: 0; color: var(--a-muted); font-size: .95rem; line-height: 1.5; }
.atico-split__main .atico-steps { grid-template-columns: 1fr; }
@media (max-width: 860px) { .atico-steps { grid-template-columns: 1fr; } }

/* CTA */
.e-con.e-flex.atico-cta {
	--width: 100%;
	--padding-top: clamp(32px, 5vw, 64px);
	--padding-bottom: clamp(32px, 5vw, 64px);
	--padding-left: clamp(24px, 5vw, 64px);
	--padding-right: clamp(24px, 5vw, 64px);
	border-radius: var(--a-r-lg);
	background:
		radial-gradient(60% 120% at 100% 0%, rgb(159 215 190 / .35), transparent 60%),
		radial-gradient(50% 100% at 0% 100%, rgb(185 83 44 / .35), transparent 60%),
		var(--a-forest-2);
	overflow: hidden;
}
.e-con.e-flex.atico-cta__text { --width: auto; flex: 1 1 420px; }
.atico-cta .elementor-heading-title { color: #fff; }
.atico-cta p { color: rgb(255 255 255 / .8); margin: 0; }

/* ---------------------------------------------------------------- header */

.elementor-location-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: rgb(255 255 255 / .82);
	-webkit-backdrop-filter: saturate(180%) blur(16px);
	backdrop-filter: saturate(180%) blur(16px);
	border-bottom: 1px solid rgb(226 220 209 / .7);
}
.admin-bar .elementor-location-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .elementor-location-header { top: 0; } }

.e-con.e-flex.atico-topbar { --padding-top: 6px; --padding-bottom: 6px; --padding-left: var(--a-gutter); --padding-right: var(--a-gutter); --content-width: min(100%, 1240px); border-bottom: 1px solid rgb(226 220 209 / .7); }
.e-con.e-flex.atico-mainbar { --padding-top: 14px; --padding-bottom: 14px; --padding-left: var(--a-gutter); --padding-right: var(--a-gutter); --content-width: min(100%, 1240px); }
.e-con.e-flex.atico-header-actions { --width: auto; }

.atico-logo {
	font-family: "Bricolage Grotesque", Inter, sans-serif;
	font-size: 1.9rem;
	font-weight: 700;
	letter-spacing: -.045em;
	color: var(--a-ink) !important;
	text-decoration: none;
	line-height: 1;
}
.atico-logo span { color: var(--a-terra); }
.atico-logo--light { color: #fff !important; font-size: 2.5rem; }

.atico-search { width: 260px; }
.atico-search .elementor-search-form__container { border-radius: 999px !important; overflow: hidden; border: 1px solid var(--a-line) !important; background: #fff !important; min-height: 36px; }
.atico-search .elementor-search-form__input { font-size: .875rem; padding-inline: 16px; background: transparent; color: var(--a-ink); }
.atico-search .elementor-search-form__submit { background: transparent !important; color: var(--a-ink) !important; min-width: 40px; }

.atico-nav-top .elementor-item { font-size: .8125rem; font-weight: 500; color: var(--a-muted) !important; padding: 6px 10px !important; }
.atico-nav-top .elementor-item:hover { color: var(--a-ink) !important; }

.atico-nav-main .elementor-nav-menu--main { display: flex; justify-content: center; }
.atico-nav-main .elementor-item {
	font-size: 1rem;
	font-weight: 550;
	color: var(--a-ink) !important;
	padding: 10px 16px !important;
	border-radius: 999px;
	transition: background-color .2s var(--a-ease);
}
.atico-nav-main .elementor-item:hover,
.atico-nav-main .elementor-item.highlighted,
.atico-nav-main .elementor-item-active,
.atico-nav-main .current-menu-ancestor > .elementor-item { background: var(--a-cream); }
.atico-nav-main .sub-arrow { padding-left: 6px !important; font-size: .7em; opacity: .6; }

.elementor-nav-menu--main .elementor-nav-menu ul.sub-menu {
	min-width: 260px !important;
	padding: 8px !important;
	margin-top: 8px !important;
	border: 1px solid var(--a-line);
	border-radius: 18px;
	background: #fff;
	box-shadow: var(--a-shadow-lg);
}
.elementor-nav-menu--main .elementor-nav-menu ul.sub-menu a.elementor-sub-item {
	border-radius: 10px;
	padding: 10px 14px !important;
	font-size: .95rem;
	color: var(--a-text) !important;
	background: transparent !important;
	border: 0 !important;
}
.elementor-nav-menu--main .elementor-nav-menu ul.sub-menu a.elementor-sub-item:hover,
.elementor-nav-menu--main .elementor-nav-menu ul.sub-menu a.elementor-sub-item-active { background: var(--a-cream) !important; color: var(--a-ink) !important; }

/* Mobile menu */
.atico-nav-mobile .elementor-menu-toggle { background: var(--a-cream) !important; border-radius: 999px; padding: 10px; color: var(--a-ink) !important; }
.atico-nav-mobile nav.elementor-nav-menu--dropdown {
	background: #fff !important;
	border-top: 1px solid var(--a-line);
	box-shadow: var(--a-shadow-lg);
	max-height: calc(100dvh - 80px);
	overflow: auto;
	padding: 8px var(--a-gutter) 24px;
}
.atico-nav-mobile .elementor-nav-menu--dropdown a { color: var(--a-ink) !important; background: transparent !important; font-weight: 550; padding: 14px 8px !important; border-bottom: 1px solid var(--a-cream); }
.atico-nav-mobile nav.elementor-nav-menu--dropdown .sub-menu { background: transparent !important; box-shadow: none; border: 0; padding: 0; }
.atico-nav-mobile .elementor-nav-menu--dropdown .sub-menu a { font-weight: 400; color: var(--a-text) !important; padding-left: 20px !important; }

/* Inquiry (cart) button in header */
.atico-cart .elementor-menu-cart__toggle .elementor-button {
	background: #fff !important;
	color: var(--a-ink) !important;
	border: 1px solid var(--a-line) !important;
	border-radius: 999px !important;
	padding: 10px 16px !important;
	gap: 8px;
	font-weight: 600;
	font-size: .9rem;
}
.atico-cart .elementor-menu-cart__toggle .elementor-button:hover { border-color: var(--a-ink) !important; }
.atico-cart .elementor-button-text { display: none !important; }
.atico-cart .elementor-menu-cart__toggle .elementor-button::before { content: "Forespørsel"; order: 2; }
.atico-cart .elementor-menu-cart__toggle .elementor-button .elementor-button-icon { order: 1; }
.atico-cart .elementor-button-icon { color: var(--a-ink) !important; }
.atico-cart .elementor-button-icon[data-counter]:before,
.atico-cart .elementor-button-icon-qty { background: var(--a-terra) !important; color: #fff !important; font-weight: 700; }
@media (max-width: 640px) { .atico-cart .elementor-menu-cart__toggle .elementor-button::before { content: none; } }
.elementor-menu-cart__main { border-radius: 20px 0 0 20px; }

/* ---------------------------------------------------------------- footer */

.elementor-location-footer { margin-top: 0; }
.e-con.e-flex.atico-footer {
	--padding-top: clamp(56px, 7vw, 96px);
	--padding-bottom: 32px;
	--padding-left: var(--a-gutter);
	--padding-right: var(--a-gutter);
	--content-width: min(100%, 1240px);
	background: var(--a-ink);
	color: rgb(255 255 255 / .72);
	border-radius: var(--a-r-lg) var(--a-r-lg) 0 0;
	--width: calc(100% - 2 * var(--a-inset));
	margin: 0 auto;
}
.e-con.e-flex.atico-footer__grid { --display: grid; display: grid !important; --width: 100%; grid-template-columns: 1.4fr 1fr 1fr 1fr; }
@media (max-width: 960px) { .e-con.e-flex.atico-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .e-con.e-flex.atico-footer__grid { grid-template-columns: 1fr; } }
.atico-footer p { margin: 0 0 12px; color: rgb(255 255 255 / .72); font-size: .95rem; }
.atico-footer strong { color: #fff; font-weight: 600; }
.atico-footer a { color: #fff; }
.atico-footer a:hover { color: #9FD7BE; }
.atico-footer__title .elementor-heading-title { color: #fff; font-family: Inter, sans-serif; font-size: .8125rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.atico-nav-footer .elementor-item { color: rgb(255 255 255 / .72) !important; padding: 5px 0 !important; font-size: .95rem; }
.atico-nav-footer .elementor-item:hover { color: #fff !important; }
.atico-badge { display: inline-flex; padding: 6px 12px; border-radius: 999px; border: 1px solid rgb(255 255 255 / .2); font-size: .8125rem; color: rgb(255 255 255 / .8); }
.atico-social { --icon-size: 18px; --icon-padding: .65em; }
.atico-social .elementor-social-icon { background: rgb(255 255 255 / .08) !important; transition: background-color .2s; font-size: 18px !important; }
.atico-social .elementor-social-icon:hover { background: var(--a-forest) !important; }
.atico-social .elementor-social-icon i, .atico-social .elementor-social-icon svg { color: #fff; fill: #fff; }
.e-con.e-flex.atico-footer__bottom { --width: 100%; padding-top: 24px !important; border-top: 1px solid rgb(255 255 255 / .12); }
.atico-footer__bottom p { margin: 0; font-size: .875rem; }
.atico-nav-legal .elementor-item { color: rgb(255 255 255 / .6) !important; font-size: .875rem; padding: 4px 16px 4px 0 !important; }
.atico-nav-legal .elementor-item:hover { color: #fff !important; }

/* ---------------------------------------------------------------- WooCommerce: product grid */

.atico-products ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	width: auto !important;
	padding: 10px 10px 16px !important;
	margin: 0 !important;
	background: #fff;
	border: 1px solid var(--a-line);
	border-radius: var(--a-r);
	text-align: left;
	transition: transform .35s var(--a-ease), box-shadow .35s var(--a-ease), border-color .35s var(--a-ease);
}
.atico-section--cream .atico-products ul.products li.product { border-color: transparent; }
.atico-products ul.products li.product:hover { transform: translateY(-4px); box-shadow: var(--a-shadow-lg); border-color: transparent; }
.atico-products ul.products li.product a.woocommerce-LoopProduct-link { display: flex; flex-direction: column; flex: 1; color: inherit; text-decoration: none; }
.atico-products ul.products li.product a img {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 14px;
	margin: 0 0 14px !important;
	background: var(--a-cream);
}
.atico-products ul.products li.product .woocommerce-loop-product__title {
	padding: 0 6px !important;
	margin: 0 0 4px !important;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	letter-spacing: -.01em;
	color: var(--a-ink) !important;
}
.atico-products ul.products li.product .price {
	padding: 0 6px;
	margin: 0 0 14px !important;
	color: var(--a-muted) !important;
	font-size: .95rem !important;
	font-weight: 500;
}
.atico-products ul.products li.product .button {
	margin: auto 6px 0 !important;
	width: calc(100% - 12px);
	min-height: 44px;
	padding: 10px 16px !important;
	font-size: .9rem !important;
	background: transparent !important;
	color: var(--a-ink) !important;
	border-color: var(--a-line) !important;
}
.atico-products ul.products li.product .button:hover { background: var(--a-ink) !important; border-color: var(--a-ink) !important; color: #fff !important; transform: none; box-shadow: none; }
.atico-products ul.products li.product .button.loading { opacity: .6; }
.atico-products ul.products li.product .button.added { background: var(--a-mint) !important; border-color: var(--a-mint) !important; color: var(--a-forest-2) !important; }
.atico-products ul.products li.product .button.added::after { content: "✓"; margin-left: .3em; font-family: inherit !important; }
.atico-products ul.products li.product .added_to_cart { display: block; margin: 8px 6px 0; text-align: center; font-size: .875rem; font-weight: 600; color: var(--a-forest); }
.atico-products .woocommerce-pagination ul { border: 0 !important; display: flex !important; gap: 6px; justify-content: center; margin-top: 32px !important; }
.atico-products .woocommerce-pagination ul li { border: 0 !important; }
.atico-products .woocommerce-pagination ul li a,
.atico-products .woocommerce-pagination ul li span { display: grid !important; place-items: center; width: 44px; height: 44px; padding: 0 !important; border-radius: 50%; background: var(--a-cream); color: var(--a-ink); font-weight: 600; }
.atico-products .woocommerce-pagination ul li span.current { background: var(--a-ink); color: #fff; }
.related.products > h2 { margin-bottom: 24px !important; font-size: clamp(1.5rem, 1.2rem + 1vw, 2.25rem) !important; }

/* Category chips */
.atico-chips ul.product-categories { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.atico-chips ul.product-categories li { margin: 0; padding: 0; }
.atico-chips ul.product-categories .children { display: none; }
.atico-chips ul.product-categories li.current-cat-parent,
.atico-chips ul.product-categories li.cat-parent.current-cat { display: contents; }
.atico-chips ul.product-categories li.current-cat-parent > .children,
.atico-chips ul.product-categories li.cat-parent.current-cat > .children {
	display: flex; flex-wrap: wrap; gap: 8px; order: 99; width: 100%; margin: 4px 0 0; padding: 12px 0 0; list-style: none; border-top: 1px dashed var(--a-line);
}
.atico-chips ul.product-categories a {
	display: inline-flex; align-items: center; min-height: 40px; padding: 8px 16px; border-radius: 999px;
	background: var(--a-cream); color: var(--a-ink); font-size: .9rem; font-weight: 550; text-decoration: none;
	transition: background-color .2s var(--a-ease), color .2s var(--a-ease);
}
.atico-chips ul.product-categories a:hover { background: var(--a-sand); }
.atico-chips ul.product-categories .current-cat > a { background: var(--a-ink); color: #fff; }

/* ---------------------------------------------------------------- WooCommerce: single product */

.atico-breadcrumb .woocommerce-breadcrumb { font-size: .875rem; color: var(--a-muted); margin: 0; }
.atico-breadcrumb .woocommerce-breadcrumb a { color: var(--a-muted); text-decoration: none; }
.atico-breadcrumb .woocommerce-breadcrumb a:hover { color: var(--a-ink); }

.e-con.e-flex.atico-product { --display: grid; display: grid !important; --width: 100%; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: start; }
@media (max-width: 960px) { .e-con.e-flex.atico-product { grid-template-columns: 1fr; } }
.atico-product__gallery .woocommerce-product-gallery { margin: 0 !important; width: 100% !important; float: none !important; }
.atico-product__gallery .woocommerce-product-gallery__image img,
.atico-product__gallery .flex-viewport { border-radius: var(--a-r-lg); overflow: hidden; }
.atico-product__gallery .woocommerce-product-gallery__image img { aspect-ratio: 1; object-fit: cover; background: var(--a-cream); }
.atico-product__gallery .flex-control-thumbs { display: flex; gap: 10px; margin-top: 12px !important; }
.atico-product__gallery .flex-control-thumbs li { width: 80px !important; float: none !important; }
.atico-product__gallery .flex-control-thumbs img { border-radius: 12px; opacity: .55; transition: opacity .2s; }
.atico-product__gallery .flex-control-thumbs img.flex-active, .atico-product__gallery .flex-control-thumbs img:hover { opacity: 1; }
.atico-product__gallery .woocommerce-product-gallery__trigger { top: 16px !important; right: 16px !important; background: #fff; border-radius: 50%; box-shadow: var(--a-shadow); }

.atico-product__info .product_title { font-size: clamp(2rem, 1.4rem + 2.2vw, 3.25rem) !important; }
.atico-price .price, .atico-price .price .amount { font-family: "Bricolage Grotesque", Inter, sans-serif; font-size: 1.75rem !important; font-weight: 650; color: var(--a-ink) !important; letter-spacing: -.02em; }
.atico-atc form.cart { display: flex !important; flex-wrap: wrap; gap: 12px; margin: 0 !important; }
.atico-atc form.cart .quantity { margin: 0 !important; }
.atico-atc .qty,
.woocommerce .quantity .qty {
	width: 88px !important; min-height: 48px; border-radius: 999px; border: 1.5px solid var(--a-line); text-align: center; font-weight: 600; font-size: 1rem; color: var(--a-ink); background: #fff;
}
.atico-atc .single_add_to_cart_button { flex: 1 1 220px; }
.atico-note { padding: 16px 18px; border-radius: var(--a-r-sm); background: var(--a-mint); color: var(--a-forest-2); font-size: .925rem; line-height: 1.5; }
.atico-note strong { color: var(--a-forest-2); }
.atico-meta .product_meta { font-size: .875rem; color: var(--a-muted); }
.atico-meta .product_meta a { color: var(--a-forest); }

/* ---------------------------------------------------------------- WooCommerce: notices & inquiry list */

.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notices-wrapper .wc-block-components-notice-banner {
	border: 0 !important;
	border-radius: var(--a-r-sm);
	background: var(--a-mint) !important;
	color: var(--a-forest-2) !important;
	padding: 16px 20px 16px 52px !important;
	font-weight: 500;
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--a-forest) !important; top: 16px !important; }
.woocommerce-message .button.wc-forward { float: right; min-height: 36px !important; padding: 6px 16px !important; font-size: .875rem; }

.woocommerce-cart-form { margin: 0; }
.woocommerce table.shop_table.cart {
	border: 1px solid var(--a-line) !important;
	border-radius: var(--a-r) !important;
	border-collapse: separate !important;
	overflow: hidden;
	background: #fff;
	margin: 0 !important;
}
.woocommerce table.shop_table.cart th,
.woocommerce table.shop_table.cart td { border: 0 !important; background: #fff !important; }
.woocommerce table.shop_table.cart th { background: var(--a-cream) !important; font-size: .8125rem; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; color: var(--a-muted); padding: 14px 16px !important; border: 0 !important; }
.woocommerce table.shop_table.cart td { padding: 16px !important; border-top: 1px solid var(--a-line) !important; vertical-align: middle; }
.woocommerce table.shop_table.cart tr:first-child td { border-top: 0 !important; }
.woocommerce table.shop_table.cart td.product-name a { color: var(--a-ink); font-weight: 600; text-decoration: none; }
.woocommerce table.shop_table.cart td.product-thumbnail img { width: 64px !important; height: 64px; object-fit: cover; border-radius: 12px; }
.woocommerce table.shop_table.cart a.remove { display: grid !important; place-items: center; width: 32px !important; height: 32px !important; border-radius: 50%; background: var(--a-cream); color: var(--a-muted) !important; font-size: 1.2rem !important; }
.woocommerce table.shop_table.cart a.remove:hover { background: var(--a-terra) !important; color: #fff !important; }
.woocommerce table.shop_table.cart td.actions { background: #fff; text-align: right; }
.woocommerce table.shop_table.cart td.actions .button { background: transparent !important; color: var(--a-ink) !important; border-color: var(--a-line) !important; min-height: 40px; padding: 8px 18px !important; font-size: .875rem; }
.woocommerce table.shop_table.cart td.actions .button:not(:disabled):hover { border-color: var(--a-ink) !important; }
.woocommerce .cart-collaterals, .woocommerce-cart .cart-collaterals { display: none; }
.wc-empty-cart-message .cart-empty { margin: 0 0 16px !important; }
.woocommerce .return-to-shop .button { min-height: 44px; }
@media (max-width: 768px) {
	.woocommerce table.shop_table_responsive tr td::before { color: var(--a-muted); font-weight: 600; }
	.woocommerce table.shop_table.cart td { padding: 10px 16px !important; }
}

/* ---------------------------------------------------------------- forms */

.atico-form .elementor-form-fields-wrapper { --row-gap: 18px; }
.atico-form .elementor-field-group { margin-bottom: 18px !important; }
.atico-form .elementor-field-label { font-size: .875rem !important; font-weight: 600 !important; color: var(--a-ink) !important; margin-bottom: 6px !important; }
.atico-form .elementor-field-textual,
.atico-form .elementor-select-wrapper select {
	min-height: 50px;
	padding: 12px 16px !important;
	border-radius: var(--a-r-sm) !important;
	border: 1.5px solid var(--a-line) !important;
	background: #fff !important;
	color: var(--a-ink) !important;
	font-size: 1rem !important;
	transition: border-color .2s, box-shadow .2s;
}
.atico-form textarea.elementor-field-textual { min-height: 120px; }
.atico-form .elementor-field-textual:focus,
.atico-form .elementor-select-wrapper select:focus { border-color: var(--a-forest) !important; box-shadow: 0 0 0 4px rgb(30 90 68 / .14) !important; outline: none; }
.atico-form .elementor-field-type-acceptance .elementor-field-label { display: none; }
.atico-form .elementor-field-subgroup .elementor-field-option label { font-size: .9rem; color: var(--a-muted); }
.atico-form input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--a-forest); vertical-align: -3px; margin-right: 6px; }
.atico-form .elementor-button { width: 100%; min-height: 54px; font-size: 1.05rem; }
.atico-form .elementor-message { border-radius: var(--a-r-sm); padding: 12px 16px; }

/* ---------------------------------------------------------------- motion */

@supports (animation-timeline: view()) {
	@media (prefers-reduced-motion: no-preference) {
		.atico-reveal {
			animation: atico-reveal linear both;
			animation-timeline: view();
			animation-range: entry 0% cover 22%;
		}
	}
}
@keyframes atico-reveal {
	from { opacity: 0; transform: translateY(28px) scale(.985); }
	to { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}/* End custom CSS */