/*
Theme Name: Sunmile Holidays
Author: NIC
Description: Sunmile Holidays — a classic theme built for Elementor and NIC Core.
Version: 1.0.0
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 8.0
WC requires at least: 9.4
WC tested up to: 11.2.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sunmile-holidays
Tags: custom-menu, custom-logo, featured-images, threaded-comments, translation-ready
*/

/* Converted sections keep the source layout: zero Elementor's default container padding,
   gap and widget spacing on generated containers only. Anything a buyer sets in Elementor
   is scoped by element id and still wins. */
body .e-con.nic-src {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--kit-widget-spacing: 0px;
}

/* A generated column container whose source element is plain block flow (nic-flow) renders
   as a block, like the source: margins collapse and children size as they do there. A
   container switched to Grid in Elementor (e-grid instead of e-flex) is left alone; remove
   nic-flow from its CSS Classes to give a container its Flexbox layout back. It sets Elementor's
   --display variable (.e-con { display: var(--display) }) instead of display itself, so any
   display the source CSS gives the element (display: none on a drawer or search overlay that a
   state class reveals, flex, grid) still wins over this reset. */
body .e-con.e-flex.nic-src.nic-flow {
	--display: block;
}

/* In the Elementor editor only, nic-flow containers are outlined and labelled so the buyer
   knows why the Layout controls do not apply (only the outermost carries the label; a
   container switched to Grid is not block flow, so it gets neither). Visitors never see this. */
.elementor-editor-active .e-con.e-flex.nic-flow {
	outline: 1px dashed rgba(100, 116, 139, 0.6);
	outline-offset: -1px;
}

.elementor-editor-active .e-con.e-flex.nic-flow:not(.e-flex.nic-flow .nic-flow)::after {
	content: "Block layout — remove nic-flow for Flexbox";
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	padding: 2px 6px;
	font: 11px/1.4 system-ui, sans-serif;
	color: #fff;
	background: rgba(100, 116, 139, 0.85);
	pointer-events: none;
}

/* A source nav whose links are its direct children (nic-menu): the WordPress menu's wrapper
   (a <nav> with the html5 navigation-widgets support, else a <div>), list and items render as
   display:contents, so the nav's source CSS lays the links out as
   it does the source's own. nic-contents does the same for the menu widget placed next to a
   nav button, and for a text-editor in a source grid/flex container, whose blocks are that
   layout's items. In the editor they keep their boxes, so the widget stays selectable.
   A wrapper the buyer hides per device (Advanced > Responsive: elementor-hidden-mobile, …) is
   left to Elementor's display:none. On the frontend these wrappers have no box, so their own
   Advanced-tab box settings (margin, padding, background, border, position, motion) do not
   apply — style the element inside instead. */
body:not(.elementor-editor-active) .nic-menu :is(.elementor-widget-container, div, nav, ul.menu, ul.menu > li),
body:not(.elementor-editor-active) .nic-contents:not([class*="elementor-hidden-"]),
body:not(.elementor-editor-active) .nic-contents:not([class*="elementor-hidden-"]) > .elementor-widget-container {
	display: contents;
}

/* An HTML widget holds one source element (a control, a form, a disclosure). Its wrapper
   renders as display:contents, so that element is the flex/grid item the source CSS places
   (a hidden burger no longer leaves an empty item in the header row). Same editor, hiding and
   box-settings rules as above. */
body:not(.elementor-editor-active) .nic-src > .elementor-widget-html:not([class*="elementor-hidden-"]),
body:not(.elementor-editor-active) .nic-src > .elementor-widget-html:not([class*="elementor-hidden-"]) > .elementor-widget-container {
	display: contents;
}

/* A converted overlay (a mobile drawer, a modal) starts hidden: its hidden attribute travels as
   data-nic-hidden, which assets/js/source-attributes.js turns back into hidden before the source
   scripts run. Until then, and without JavaScript, the first rule keeps it hidden; once hidden is
   restored, the second makes it win over Elementor's container display (.e-con) and this
   sheet's nic-flow display:block, whatever the source CSS says about [hidden]. A script shows
   the overlay by removing hidden. In the editor it stays hidden too, except in the document being
   edited (its template or page), where it shows in the page flow instead of covering the page,
   so its content can be edited (the editor renders that document itself, without the data-nic-*
   attributes, so the rule keys on the class). Children the source fixes to the viewport, or hides with
   opacity/visibility until a state class is added, are not reset: select those in the Navigator. */
body:not(.elementor-editor-active) .nic-attrs[data-nic-hidden],
body:not(.elementor-editor-active) .nic-attrs[hidden],
body.elementor-editor-active .elementor:not(.elementor-edit-area-active) .nic-attrs[data-nic-hidden] {
	display: none !important;
}

body.elementor-editor-active .elementor-edit-area-active .nic-attrs {
	inset: auto !important;
	opacity: 1 !important;
	position: relative !important;
	transform: none !important;
	visibility: visible !important;
	z-index: auto !important;
}

/* Elementor's .elementor-heading-title { margin: 0; line-height: 1 } strips the browser
   heading margins the source relies on. :where() keeps this at (0,1,0): it beats Elementor
   (this sheet prints later) but loses to source rules such as .hero h1. The source resets heading margins itself (* or h1-h6), so they are not reverted here. */
:where(.nic-src) .elementor-heading-title {
	line-height: inherit;
}
:where(.nic-src) .elementor-heading-title:where(h1) {
	line-height: 1.04;
}
:where(.nic-src) .elementor-heading-title:where(h2) {
	line-height: 1.12;
}
:where(.nic-src) .elementor-heading-title:where(h3) {
	line-height: 1.25;
}
:where(.nic-src) .elementor-heading-title:where(h4) {
	line-height: 1.12;
}
:where(.nic-src) .elementor-heading-title:where(h5) {
	line-height: 1.12;
}
:where(.nic-src) .elementor-heading-title:where(h6) {
	line-height: 1.12;
}

:where(.nic-src) .elementor-heading-title:where(h1) {
	margin:0;
}
:where(.nic-src) .elementor-heading-title:where(h2) {
	margin:0;
}
:where(.nic-src) .elementor-heading-title:where(h3) {
	margin:0;
}
:where(.nic-src) .elementor-heading-title:where(h4) {
	margin:0;
}
:where(.nic-src) .elementor-heading-title:where(h5) {
	margin:0;
}
:where(.nic-src) .elementor-heading-title:where(h6) {
	margin:0;
}

:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.dest-search {
	max-width: 560px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.cta-postcard {
	max-width: 300px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.map-label {
	max-width: 380px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.wc-empty {
	max-width: 640px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.wrap {
	max-width: 1240px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.narrow {
	max-width: 780px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[1040px\] {
	max-width: 1040px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[1140px\] {
	max-width: 1140px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[15ch\] {
	max-width: 15ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[16ch\] {
	max-width: 16ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[17ch\] {
	max-width: 17ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[22ch\] {
	max-width: 22ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[24ch\] {
	max-width: 24ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[270px\] {
	max-width: 270px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[300px\] {
	max-width: 300px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[30ch\] {
	max-width: 30ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[340px\] {
	max-width: 340px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[360px\] {
	max-width: 360px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[36ch\] {
	max-width: 36ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[420px\] {
	max-width: 420px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[44ch\] {
	max-width: 44ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[460px\] {
	max-width: 460px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[46ch\] {
	max-width: 46ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[48ch\] {
	max-width: 48ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[50ch\] {
	max-width: 50ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[520px\] {
	max-width: 520px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[52ch\] {
	max-width: 52ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[54ch\] {
	max-width: 54ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[560px\] {
	max-width: 560px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[56ch\] {
	max-width: 56ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[58ch\] {
	max-width: 58ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[60ch\] {
	max-width: 60ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[640px\] {
	max-width: 640px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[64ch\] {
	max-width: 64ch;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[720px\] {
	max-width: 720px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[760px\] {
	max-width: 760px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[820px\] {
	max-width: 820px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[920px\] {
	max-width: 920px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[940px\] {
	max-width: 940px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-\[980px\] {
	max-width: 980px;
}
:is(.elementor-section-wrap, [data-elementor-id]) > .e-con.nic-src.max-w-full {
	max-width: 100%;
}

/* A size class sits on the heading widget's wrapper; the heading inside inherits it. */
.elementor-widget-heading.text-2xl .elementor-heading-title,
.elementor-widget-heading.text-\[\.85rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[\.8rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[\.92rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[\.95rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[\.98rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.02rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.05rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.0625rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.15rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.25rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.2rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.35rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.3rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.4rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.5rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.6rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1\.7rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[1rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[2\.6rem\] .elementor-heading-title,
.elementor-widget-heading.text-\[3rem\] .elementor-heading-title,
.elementor-widget-heading.text-base .elementor-heading-title,
.elementor-widget-heading.text-lg .elementor-heading-title,
.elementor-widget-heading.text-sm .elementor-heading-title,
.elementor-widget-heading.text-xl .elementor-heading-title,
.elementor-widget-heading.text-xs .elementor-heading-title {
	font-size: inherit;
}
.elementor-widget-heading.text-2xl .elementor-heading-title,
.elementor-widget-heading.text-base .elementor-heading-title,
.elementor-widget-heading.text-lg .elementor-heading-title,
.elementor-widget-heading.text-sm .elementor-heading-title,
.elementor-widget-heading.text-xl .elementor-heading-title,
.elementor-widget-heading.text-xs .elementor-heading-title {
	line-height: inherit;
}
/* An inline source element (kicker, eyebrow) sat in a line box one body line high. */
.nic-src.nic-as-p.svc-price,
.nic-src.nic-as-p.sdot,
.nic-src.nic-as-p.chip-sm,
.nic-src.nic-as-p.tag-link,
.nic-src.nic-as-p.share-btn,
.nic-src.nic-as-p.wc-view,
.nic-src.nic-as-p.wc-stock,
.nic-src.nic-as-p.wc-stars,
.nic-src.nic-as-p.wc-status,
.nic-src.nic-as-p.wc-days,
.nic-src.nic-as-p.kicker,
.nic-src.nic-as-p.btn,
.nic-src.nic-as-p.link-arrow,
.nic-src.nic-as-p.badge,
.nic-src.nic-as-p.chip,
.nic-src.nic-as-p.ico-box,
.nic-src.nic-as-p.hd-icon,
.nic-src.nic-as-p.ticket-tab,
.nic-src.nic-as-p.rating,
.nic-src.nic-as-p.check,
.nic-src.nic-as-p.qty,
.nic-src.nic-as-p.inline-block,
.nic-src.nic-as-p.inline-flex {
	min-height: calc(1.65 * 1rem);
}
.nic-src.svc-split-img > .elementor-widget-image,
.nic-src.svc-split-img > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.svc-tall > .elementor-widget-image,
.nic-src.svc-tall > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.svc-row > .elementor-widget-image,
.nic-src.svc-row > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.dg-thumbs > .elementor-widget-image,
.nic-src.dg-thumbs > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.passport-photo > .elementor-widget-image,
.nic-src.passport-photo > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.soon-media > .elementor-widget-image,
.nic-src.soon-media > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.wc-gallery-main > .elementor-widget-image,
.nic-src.wc-gallery-main > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.wc-thumbs > .elementor-widget-image,
.nic-src.wc-thumbs > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.wc-line-img > .elementor-widget-image,
.nic-src.wc-line-img > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.wc-trip-media > .elementor-widget-image,
.nic-src.wc-trip-media > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.hero-media > .elementor-widget-image,
.nic-src.hero-media > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.pcard-media > .elementor-widget-image,
.nic-src.pcard-media > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.postcard-img > .elementor-widget-image,
.nic-src.postcard-img > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
.nic-src.mood > .elementor-widget-image,
.nic-src.mood > .elementor-widget-image > .elementor-widget-container {
	height: 100%;
}
/* Source sibling-spacing rules, above Elementor's widget margin reset. */
.elementor.elementor.elementor.elementor.elementor .prose-sm .callout-pack .cp-body>*+figure{margin-top:0}
.elementor.elementor.elementor.elementor.elementor .prose-sm>*+figure{margin-top:1.1em}
/* Source rules that select an element by tag, repeated for the containers that replaced it. */
.nic-as-blockquote,.nic-as-dd,.nic-as-dl,.nic-as-figure,.nic-as-p{margin:0}
.nic-as-ol,.nic-as-ul{list-style:none;margin:0;padding:0}
.fact-row .nic-as-dt{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;color:rgb(var(--rgb-muted))}
.fact-row .nic-as-dt svg{width:16px;height:16px;color:rgb(var(--rgb-primary))}
.fact-row .nic-as-dd{margin-top:6px;font-weight:700;color:rgb(var(--rgb-deep));line-height:1.25}
.route-steps.svc-steps .nic-as-li{padding-inline:10px}
.route-steps.svc-steps .nic-as-li b{display:block;color:rgb(var(--rgb-deep));font-size:1rem;margin-top:4px}
.route-steps.svc-steps .nic-as-li span{display:block;font-weight:400;color:rgb(var(--rgb-muted));font-size:.88rem;line-height:1.5;max-width:22ch;margin-inline:auto}
.incl-list .nic-as-li{display:flex;gap:12px;align-items:flex-start}
.incl-list .nic-as-li .ico-box{width:40px;height:40px;border-radius:10px;flex:none}
.incl-list .nic-as-li .ico-box svg{width:20px;height:20px}
@media (max-width:767px){.route-steps.svc-steps .nic-as-li{flex-direction:row;align-items:flex-start;text-align:left;gap:16px;padding:0 0 22px}}
@media (max-width:767px){.route-steps.svc-steps .nic-as-li:before{flex:none;margin-top:3px}}
@media (max-width:767px){.route-steps.svc-steps .nic-as-li:after{top:20px;left:7px;width:2px;height:100%;background-image:linear-gradient(180deg,rgb(var(--rgb-primary)) 50%,transparent 0)!important;background-size:2px 8px}}
@media (max-width:767px){.route-steps.svc-steps .nic-as-li b{margin-top:0}}
@media (max-width:767px){.route-steps.svc-steps .nic-as-li span{margin-inline:0;max-width:none}}
.facts .nic-as-dt{font-size:.78rem;font-weight:600;color:rgb(var(--rgb-muted))}
.facts .nic-as-dd{font-weight:600;color:rgb(var(--rgb-deep));line-height:1.3;margin-top:2px}
.story-quote .nic-as-blockquote{font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.4;font-weight:500;color:#fff;letter-spacing:-.01em}
.passport .nic-as-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.passport .nic-as-dt{font-size:.72rem;font-weight:600;color:rgb(var(--rgb-muted))}
.passport .nic-as-dd{font-size:.9rem;font-weight:600;line-height:1.35}
.passport .nic-as-dd{color:rgb(var(--rgb-deep))}
.team-intro-stats .nic-as-dd{font-size:clamp(1.6rem,2.6vw,2.1rem);font-weight:800;color:rgb(var(--rgb-deep));line-height:1;letter-spacing:-.02em}
.team-intro-stats .nic-as-dt{font-size:.8rem;color:rgb(var(--rgb-muted));margin-top:6px}
.plan-list .nic-as-li{display:flex;gap:10px;align-items:flex-start}
.plan-list .nic-as-li.is-off{color:rgb(var(--rgb-muted))}
.plan-list .nic-as-li.is-off svg{color:rgb(var(--rgb-line))}
.faq-nav-v .nic-as-li:first-child a:before,.faq-nav-v .nic-as-li:last-child a:before{background:rgb(var(--rgb-sun));border-color:rgb(var(--rgb-deep))}
.acc .acc-body .nic-as-p+.nic-as-p,.acc .acc-body .nic-as-p+.nic-as-ul,.acc .acc-body .nic-as-ul+.nic-as-p{margin-top:.7em}
.acc .acc-body .nic-as-ul{list-style:disc;padding-left:1.2rem}
.acc .acc-body .nic-as-li+.nic-as-li{margin-top:.3em}
@media (max-width:639px){.facts .nic-as-dd{font-size:.88rem}}
.ct-hours .nic-as-dt{color:rgb(var(--rgb-muted))}
.ct-hours .nic-as-dd{color:rgb(var(--rgb-deep));font-weight:500;text-align:right}
.prose-sm .nic-as-blockquote .nic-as-p+.nic-as-p{margin-top:.6em}
.prose-sm .nic-as-blockquote cite{display:block;font-size:.9rem;font-style:normal;font-weight:400;color:rgb(var(--rgb-muted))}
.legal-toc .nic-as-ol{list-style:none;padding:0;margin:0;position:relative}
.legal-toc .nic-as-ol:before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:2px;background-image:linear-gradient(180deg,rgb(var(--rgb-line)) 50%,transparent 0);background-size:2px 6px}
.legal-toc .nic-as-li a{position:relative;display:block;padding:7px 0 7px 24px;font-size:.88rem;color:rgb(var(--rgb-muted));line-height:1.35;transition:color .2s}
.legal-toc .nic-as-li a:before{content:"";position:absolute;left:0;top:12px;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid rgb(var(--rgb-line))}
.legal-toc .nic-as-li a:hover{color:rgb(var(--rgb-deep))}
.legal-toc .nic-as-li a:hover:before{border-color:rgb(var(--rgb-primary))}
.legal .summary .nic-as-ul{list-style:none;padding:0}
.legal .summary .nic-as-li{display:flex;gap:10px}
.legal .summary .nic-as-li svg{width:18px;height:18px;margin-top:5px;flex:none;color:rgb(var(--rgb-success))}
.prose-sm .route .nic-as-li+.nic-as-li{margin-top:0}
.field .nic-as-label.check{font-weight:400;color:rgb(var(--rgb-ink))}
.wc-trust .nic-as-li{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:rgb(var(--rgb-ink))}
.wc-facts .nic-as-dt{font-size:.78rem;font-weight:600;color:rgb(var(--rgb-muted))}
.wc-facts .nic-as-dd{font-size:.95rem;font-weight:500;color:rgb(var(--rgb-deep))}
.wc-list .nic-as-li{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid rgb(var(--rgb-line))}
.wc-list .nic-as-li:last-child{border-bottom:0}
.wc-bars .nic-as-li{display:grid;grid-template-columns:2.5rem 1fr 2.75rem;align-items:center;gap:10px;font-size:.82rem;color:rgb(var(--rgb-muted))}
.wc-line-meta .nic-as-li{display:inline-flex;align-items:center;gap:6px}
.wc-rows .nic-as-dt{color:rgb(var(--rgb-muted))}
.wc-rows .nic-as-dd{font-weight:600;color:rgb(var(--rgb-deep));text-align:right}
.wc-rows .is-disc .nic-as-dd{color:rgb(var(--rgb-success))}
.wc-fs .field .nic-as-label .opt{font-weight:400;color:rgb(var(--rgb-muted))}
.wc-ticks .nic-as-li{display:inline-flex;align-items:center;gap:6px}
@media (max-width:767px){.wc-toolbar>.nic-as-p{width:100%}}
.sec-head .nic-as-p{margin-top:.75rem;--tw-text-opacity:1;color:rgb(var(--rgb-muted)/var(--tw-text-opacity,1))}
.tfield .nic-as-label{display:flex;align-items:center;gap:.375rem;font-size:.78rem;font-weight:600;--tw-text-opacity:1;color:rgb(var(--rgb-muted)/var(--tw-text-opacity,1))}
.tfield .nic-as-label svg{width:15px;height:15px;color:rgb(var(--rgb-primary))}
.route>.nic-as-li{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;list-style:none;font-size:.7rem;font-weight:600;color:rgb(var(--rgb-muted));line-height:1.1}
.route>.nic-as-li:first-child{align-items:flex-start}
.route>.nic-as-li:last-child{align-items:flex-end}
.route>.nic-as-li:before{content:"";width:var(--dot);height:var(--dot);border-radius:50%;background:#fff;border:2px solid rgb(var(--rgb-primary));position:relative;z-index:1}
.route>.nic-as-li:first-child:before,.route>.nic-as-li:last-child:before{background:rgb(var(--rgb-sun));border-color:rgb(var(--rgb-deep))}
.route>.nic-as-li b{color:rgb(var(--rgb-deep));font-weight:600}
.route-light>.nic-as-li{color:hsla(0,0%,100%,.8)}
.route-light>.nic-as-li b{color:#fff}
.route-v>.nic-as-li{position:relative;padding-left:44px;padding-bottom:28px}
.route-v>.nic-as-li:last-child{padding-bottom:0}
.route-v>.nic-as-li:before{content:"";position:absolute;left:9px;top:6px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid rgb(var(--rgb-primary));z-index:1}
.route-v>.nic-as-li:first-child:before,.route-v>.nic-as-li:last-child:before{background:rgb(var(--rgb-sun));border-color:rgb(var(--rgb-deep))}
.route-v>.nic-as-li:after{content:"";position:absolute;left:15px;top:20px;bottom:-6px;width:2px;background-image:linear-gradient(180deg,rgb(var(--rgb-primary)) 50%,transparent 0);background-size:2px 8px}
.route-v>.nic-as-li:last-child:after{display:none}
.route-steps .nic-as-li{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:.82rem;font-weight:600;color:rgb(var(--rgb-muted));text-align:center}
.route-steps .nic-as-li:before{content:"";width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid rgb(var(--rgb-line));position:relative;z-index:1}
.route-steps .nic-as-li:after{content:"";position:absolute;top:7px;left:50%;width:100%;height:2px;background-image:linear-gradient(90deg,rgb(var(--rgb-line)) 50%,transparent 0);background-size:8px 2px}
.route-steps .nic-as-li:last-child:after{display:none}
.route-steps .nic-as-li.is-done:before{background:rgb(var(--rgb-primary));border-color:rgb(var(--rgb-primary))}
.route-steps .nic-as-li.is-done:after{background-image:linear-gradient(90deg,rgb(var(--rgb-primary)) 50%,transparent 0)}
.route-steps .nic-as-li.is-current{color:rgb(var(--rgb-deep))}
.route-steps .nic-as-li.is-current:before{background:rgb(var(--rgb-sun));border-color:rgb(var(--rgb-deep))}
.field .nic-as-label{font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity:1;color:rgb(var(--rgb-deep)/var(--tw-text-opacity,1))}
.prose-sm .nic-as-ul{list-style-type:disc;padding-left:1.5rem}
.prose-sm .nic-as-ol{list-style-type:decimal;padding-left:1.5rem}
.prose-sm .nic-as-li+.nic-as-li{margin-top:.4em}
.prose-sm .nic-as-blockquote{border-left-width:4px;--tw-border-opacity:1;border-color:rgb(var(--rgb-sun)/var(--tw-border-opacity,1));padding-left:1.25rem;font-size:1.25rem;line-height:1.75rem;font-weight:500;--tw-text-opacity:1;color:rgb(var(--rgb-deep)/var(--tw-text-opacity,1))}
.prose-sm .nic-as-figure img{border-radius:14px}
.site-footer .nic-as-li+.nic-as-li{margin-top:.55rem}
@media (max-width:767px){.route-steps .nic-as-li{font-size:.7rem}}

/* Elementor centres image widgets and pins linked SVGs to 48px; source images follow
   their parent's alignment and their own size. */
.nic-src > .elementor-widget-image {
	text-align: inherit;
}

/* A cover image the source positions absolutely (.tile img { position: absolute; inset: 0 })
   must resolve against the source parent. The Image widget wrapper is position: relative with
   no height of its own, so the image would collapse to nothing; make the wrapper static. */
.nic-src > .elementor-widget-image {
	position: static;
}

.nic-src > .elementor-widget-image a img[src$=".svg"] {
	width: auto;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

.skip-link:focus {
	clip: auto;
	clip-path: none;
	height: auto;
	left: 8px;
	top: 8px;
	width: auto;
	z-index: 100000;
}

.site-header__inner,
.site-footer__inner {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	justify-content: space-between;
	margin-inline: auto;
	max-width: 1140px;
	padding: 16px 20px;
}

.site-nav ul,
.footer-nav ul {
	display: flex;
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-main > :not(.elementor) {
	margin-inline: auto;
	max-width: 1140px;
	padding-inline: 20px;
}

/* Core content classes (Theme Check: align, caption, gallery, sticky and comment-author classes). */
.alignleft {
	float: left;
	margin: 0.4em 1.5em 1em 0;
}

.alignright {
	float: right;
	margin: 0.4em 0 1em 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-inline: auto;
}

.wp-caption {
	max-width: 100%;
}

.wp-caption img {
	display: block;
	height: auto;
	max-width: 100%;
}

.wp-caption-text,
.gallery-caption {
	font-size: 0.875em;
	opacity: 0.8;
	padding-top: 0.5em;
	text-align: center;
}

.sticky {
	display: block;
}

.bypostauthor {
	display: block;
}

.entry-tags {
	font-size: 0.875em;
	margin-top: 1.5em;
}

.widget-area {
	margin-inline: auto;
	max-width: 1140px;
	padding: 16px 20px;
}
