/* ==========================================================================
   Custom additions on top of style.css
   1) Fully liquid ("rubber") site width — content always fills the screen.
   2) Header logo + title bar (logo on the left of the two title lines).
   3) Mobile off-canvas menu: hamburger opens the left sidebar from the top,
      covering the content; a close (×) button or a chosen link closes it.
   ========================================================================== */

*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html, body {
	max-width: 100%;
	overflow-x: hidden;
}

/* 1) Liquid layout: no fixed/maximum width anywhere — the sheet always
      fills the full width of the screen, on phones and on desktops. */
.art-sheet {
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.art-layout-wrapper,
.art-content-layout,
.art-footer-inner {
	width: 100% !important;
	max-width: none !important;
}


/* ==========================================================================
   2) Header: logo to the left of the two-line title
   ========================================================================== */

.art-header {
	background: none;
	height: auto;
	min-height: 0;
	padding: 14px 3%;
	position: relative;
	overflow: visible;
}

.art-site-branding {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 12px 20px;
	width: 100%;
}

.art-site-logo {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}

.art-site-logo-img {
	display: block;
	width: 84px;
	height: auto;
}

.art-site-title {
	-webkit-box-flex: 1;
	-ms-flex: 1 1 320px;
	flex: 1 1 320px;
	min-width: 0;
}

.art-site-title-line {
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-style: italic;
	font-weight: normal;
	color: #2812F3;
	line-height: 1.3;
	font-size: 21px;
	word-wrap: break-word;
}

@media all and (max-width: 780px) {
	.art-site-title-line {
		font-size: 16px;
	}
	.art-site-logo-img {
		width: 64px;
	}
}

@media all and (max-width: 480px) {
	.art-site-title-line {
		font-size: 13px;
	}
	.art-site-logo-img {
		width: 50px;
	}
	.art-header {
		padding: 10px 12px;
	}
}


/* ==========================================================================
   3) Mobile hamburger button (three lines / ☰)
   ========================================================================== */

.art-mobile-menu-toggle {
	display: none;
	align-items: center;
	gap: 8px;
	margin-left: auto;
	padding: 8px 10px;
	border: 0;
	background: #2812F3;
	border-radius: 3px;
	cursor: pointer;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}

.art-mobile-menu-toggle-box {
	display: block;
	width: 22px;
	height: 16px;
	position: relative;
}

.art-mobile-menu-toggle-box span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: #FFFFFF;
	border-radius: 1px;
}

.art-mobile-menu-toggle-box span:nth-child(1) { top: 0; }
.art-mobile-menu-toggle-box span:nth-child(2) { top: 7px; }
.art-mobile-menu-toggle-box span:nth-child(3) { top: 14px; }

.art-mobile-menu-toggle-label {
	display: none;
	color: #FFFFFF;
	font-size: 13px;
}

.art-mobile-menu-close {
	display: none;
}

/* Only show the hamburger, and enable the off-canvas behaviour, once the
   theme's own responsive mode kicks in (phones and tablets). */
.responsive .art-mobile-menu-toggle {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.responsive .art-site-branding {
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
}

.responsive .art-site-title {
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
}

/* Keep the title text left-aligned, next to the logo, overriding the
   theme's generic "center everything in a responsive header" rule. */
.responsive .art-site-title-line,
.responsive .art-site-branding {
	text-align: left !important;
}

/* The left sidebar becomes the off-canvas mobile menu: hidden above the
   top of the screen, sliding down to cover the content area when opened. */
.responsive .art-content-layout .art-sidebar1 {
	display: block !important;
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	max-height: 100%;
	overflow-y: auto;
	-webkit-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	transform: translateY(-100%);
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	z-index: 10000;
	background: #FAE6C5;
	padding: 56px 16px 24px !important;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
}

html.responsive.art-mobile-menu-active .art-content-layout .art-sidebar1 {
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
}

.responsive .art-mobile-menu-close {
	display: block;
	position: absolute;
	top: 8px;
	right: 12px;
	width: 36px;
	height: 36px;
	line-height: 32px;
	text-align: center;
	font-size: 26px;
	border: 0;
	background: transparent;
	color: #2812F3;
	cursor: pointer;
	z-index: 1;
}

/* Prevent the page behind the open menu from scrolling. */
html.art-mobile-menu-active {
	overflow: hidden;
}

/* #art-main normally clips its content (overflow: hidden); while the
   off-canvas menu is open that would also clip our fixed-position panel,
   so it's relaxed for as long as the menu stays open. */
html.art-mobile-menu-active #art-main {
	overflow: visible !important;
}
