/************************************************************/
/*
/*      Utility CSS
/*
/*      Author: Marc-Antoine Brassard
/*      Created: 2026-03-20
/*      Last modified: 2026-09-03
/*
/************************************************************/
/******************************/
/* Modifier classes
/******************************/
/* Layout */
.flex {
                                                            display: flex !important;
	&.direction-row										    { flex-direction: row !important; }
	&.direction-row-reverse								    { flex-direction: row-reverse !important; }
	&.direction-column									    { flex-direction: column !important; }
	&.direction-column-reverse							    { flex-direction: column-reverse !important; }
	&.wrap												    { flex-wrap: wrap !important; }
}
.justify-content {
	&.start												    { justify-content: start !important; }
	&.center											    { justify-content: center !important; }
	&.end												    { justify-content: end !important; }
	&.around											    { justify-content: space-around !important; }
	&.between											    { justify-content: space-between !important; }
	&.evenly											    { justify-content: space-evenly !important; }
	&.stretch											    { justify-content: stretch !important; }
}
.justify-self {
	&.start												    { justify-self: start !important; }
	&.center											    { justify-self: center !important; }
	&.end												    { justify-self: end !important; }
	&.stretch											    { justify-self: stretch !important; }
}
.align-items {
	&.start												    { align-items: start !important; }
	&.baseline											    { align-items: baseline !important; }
	&.center											    { align-items: center !important; }
	&.end												    { align-items: end !important; }
	&.stretch											    { align-items: stretch !important; }
}
.align-self {
	&.start												    { align-self: start !important; }
	&.baseline											    { align-self: baseline !important; }
	&.center											    { align-self: center !important; }
	&.end												    { align-self: end !important; }
	&.stretch											    { align-self: stretch !important; }
}

/* Size */
.max-content                                                { width: max-content !important; }
.min-content                                                { width: min-content !important; }

/* Color */

/* "kimberly-blue": "#6C72A6", */
/* "aqua-forest-green": "#6CA67C", */
/* "jet-stream-green": "#B8D6CB", */
/* "peep-pink": "#F3CED6", */
/* "cream-can-yellow": "#F6D259", */
/* "sandy-orange": "#F69859", */
/* "derby-brown": "#422C15", */
/* "malta-brown": "#C0B0A0", */
/* "pampas-white": "#F0EDE8", */
/* "bridal-heath-white": "#FFFCF7", */
/* "white": "#FFFFFF", */

.kimberly-blue,
.focus-kimberly-blue:is(:hover, :focus, :active),
.focus-kimberly-blue:is(:hover, :focus, :active) > a            { color: var(--wp--preset--color--kimberly-blue) !important; }
.aqua-forest-green,
.focus-aqua-forest-green:is(:hover, :focus, :active),
.focus-aqua-forest-green:is(:hover, :focus, :active) > a        { color: var(--wp--preset--color--aqua-forest-green) !important; }
.jet-stream-green,
.focus-jet-stream-green:is(:hover, :focus, :active),
.focus-jet-stream-green:is(:hover, :focus, :active) > a         { color: var(--wp--preset--color--jet-stream-green) !important; }
.peep-pink,
.focus-peep-pink:is(:hover, :focus, :active),
.focus-peep-pink:is(:hover, :focus, :active) > a                { color: var(--wp--preset--color--peep-pink) !important; }
.cream-can-yellow,
.focus-cream-can-yellow:is(:hover, :focus, :active),
.focus-cream-can-yellow:is(:hover, :focus, :active) > a         { color: var(--wp--preset--color--cream-can-yellow) !important; }
.sandy-orange,
.focus-sandy-orange:is(:hover, :focus, :active),
.focus-sandy-orange:is(:hover, :focus, :active) > a             { color: var(--wp--preset--color--sandy-orange) !important; }
.derby-brown,
.focus-derby-brown:is(:hover, :focus, :active),
.focus-derby-brown:is(:hover, :focus, :active) > a		        { color: var(--wp--preset--color--derby-brown) !important; }
.malta-brown,
.focus-malta-brown:is(:hover, :focus, :active),
.focus-malta-brown:is(:hover, :focus, :active) > a		        { color: var(--wp--preset--color--malta-brown) !important; }
.pampas-white,
.focus-pampas-white:is(:hover, :focus, :active),
.focus-pampas-white:is(:hover, :focus, :active) > a		        { color: var(--wp--preset--color--pampas-white) !important; }
.bridal-heath-white,
.focus-bridal-heath-white:is(:hover, :focus, :active),
.focus-bridal-heath-white:is(:hover, :focus, :active) > a       { color: var(--wp--preset--color--bridal-heath-white) !important; }
.white,
.focus-white:is(:hover, :focus, :active),
.focus-white:is(:hover, :focus, :active) > a                    { color: var(--wp--preset--color--white) !important; }

.bg-kimberly-blue                                               { background-color: var(--wp--preset--color--kimberly-blue) !important; }
.bg-aqua-forest-green                                           { background-color: var(--wp--preset--color--aqua-forest-green) !important; }
.bg-jet-stream-green                                            { background-color: var(--wp--preset--color--jet-stream-green) !important; }
.bg-peep-pink 											        { background-color: var(--wp--preset--color--peep-pink) !important; }
.bg-cream-can-yellow                                            { background-color: var(--wp--preset--color--cream-can-yellow) !important; }
.bg-sandy-orange                                                { background-color: var(--wp--preset--color--sandy-orange) !important; }
.bg-derby-brown                                                 { background-color: var(--wp--preset--color--derby-brown) !important; }
.bg-malta-brown                                                 { background-color: var(--wp--preset--color--malta-brown) !important; }
.bg-pampas-white                                                { background-color: var(--wp--preset--color--pampas-white) !important; }
.bg-bridal-heath-white                                          { background-color: var(--wp--preset--color--bridal-heath-white) !important; }
.bg-white                                                       { background-color: var(--wp--preset--color--white) !important; }

/* Text */
.ff-fifties-vf                                              { font-family: var(--wp--preset--font-family--fifties-vf) !important; }
.ff-late-serif-variable                                     { font-family: var(--wp--preset--font-family--late-serif-variable) !important; }
.ff-font-awesome                                            { font-family: var(--wp--preset--font-family--fontawesome) !important; }
.fs-xs											            { font-size: var(--wp--preset--font-size--x-small) !important; }
.fs-s												        { font-size: var(--wp--preset--font-size--small) !important; }
.fs-ms										                { font-size: var(--wp--preset--font-size--medium-small) !important; }
.fs-m										                { font-size: var(--wp--preset--font-size--medium) !important; }
.fs-ml										                { font-size: var(--wp--preset--font-size--medium-large) !important; }
.fs-l												        { font-size: var(--wp--preset--font-size--large) !important; }
.fs-xl											            { font-size: var(--wp--preset--font-size--x-large) !important; }
.fs-2xl											            { font-size: var(--wp--preset--font-size--2-x-large) !important; }
.fs-3xl											            { font-size: var(--wp--preset--font-size--3-x-large) !important; }
.fs-o											            { font-size: var(--wp--preset--font-size--omega) !important; }
.lh-2xs										                { font-size: var(--wp--custom--line-height--2-x-small) !important; }
.lh-xs										                { font-size: var(--wp--custom--line-height--x-small) !important; }
.lh-s										                { font-size: var(--wp--custom--line-height--small) !important; }
.lh-eq										                { font-size: var(--wp--custom--line-height--equal) !important; }
.lh-m										                { font-size: var(--wp--custom--line-height--medium) !important; }
.lh-l												        { font-size: var(--wp--custom--line-height--large) !important; }
.fw-100												        { font-weight: 100 !important; }
.fw-200										                { font-weight: 200 !important; }
.fw-300												        { font-weight: 300 !important; }
.fw-400											            { font-weight: 400 !important; }
.fw-500										                { font-weight: 500 !important; }
.fw-600											            { font-weight: 600 !important; }
.fw-700												        { font-weight: 700 !important; }
.fw-800											            { font-weight: 800 !important; }
.fw-900												        { font-weight: 900 !important; }
.txt-upper											        { text-transform: uppercase !important; }
.txt-lower											        { text-transform: lowercase !important; }
.txt-deco-underline,
.txt-deco-underline a                                       { text-decoration: underline !important; }
.text-deco-none,
.text-deco-none	a									        { text-decoration: none !important; }

/* Images */
.cover,
.cover img											        { object-fit: cover !important; }
.contain,
.contain img										        { object-fit: contain !important; }

/* Opacity */
.opacity-full										        { opacity: 1 !important; }
.opacity-half										        { opacity: .5 !important; }
.opacity-zero										        { opacity: 0 !important; }

/* Other */
.user-select-none									        { user-select: none !important; }

/******************************/
/* Theme variables
/******************************/
body {
	@media (width <= 1200px) {
        --wp--preset--spacing--12-5	: var(--wp--preset--spacing--12);
        --wp--preset--spacing--13	: var(--wp--preset--spacing--12);
        --wp--preset--spacing--13-5	: var(--wp--preset--spacing--12);
        --wp--preset--spacing--14	: var(--wp--preset--spacing--12);
        --wp--preset--spacing--14-5	: var(--wp--preset--spacing--12);
        --wp--preset--spacing--15	: var(--wp--preset--spacing--12);
	}
	
	@media (width <= 1000px) {
        --wp--preset--spacing--10-5	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--11	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--11-5	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--12	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--12-5	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--13	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--13-5	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--14	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--14-5	: var(--wp--preset--spacing--10);
        --wp--preset--spacing--15	: var(--wp--preset--spacing--10);

        & {
			--wp--custom--border-radius--small: 12.5px;
        }
    }

	@media (width <= 800px) {
        --wp--preset--spacing--8	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--8-5	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--9	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--9-5	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--10	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--10-5	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--11	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--11-5	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--12	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--12-5	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--13	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--13-5	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--14	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--14-5	: var(--wp--preset--spacing--7-5);
        --wp--preset--spacing--15	: var(--wp--preset--spacing--7-5);
		#wpadminbar { display: none !important; }

        & {
			--wp--custom--adminbar-height: 0px;
        }
	}
	
	@media (width <= 600px) {
        --wp--preset--spacing--5-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--6	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--7-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--8	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--8-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--9	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--9-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--10	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--10-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--11	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--11-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--12	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--12-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--13	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--13-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--14	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--14-5	: var(--wp--preset--spacing--5);
        --wp--preset--spacing--15	: var(--wp--preset--spacing--5);
	}
	
	@media (width <= 650px) {
		& {
			--wp--custom--header-height: 5.625rem;
			--wp--custom--stickied-header-height: 5.625rem;
		}
	}
    
    @media (width <= 500px) {
		& {
			--wp--custom--header-height: 10.75rem;
			--wp--custom--stickied-header-height: 10.75rem;
		}
	}
}