/*
	Theme Name: Artless
	Text Domain: artless
	Version: 1.0.0
	Requires at least: 6.5
	Tested up to: 7.0
	Requires PHP: 8.1
	Description: Artless is a lightweight, performance-focused WordPress starter theme developed for custom business websites. It provides a clean foundation with responsive Bootstrap grid support, semantic HTML5, and minimal styling, allowing developers to build unique, high-performance websites with complete design flexibility.
	Tags: custom-theme, starter-theme, bootstrap, responsive-layout, custom-logo, custom-menu, featured-images, translation-ready, accessibility-ready
	Author: Artless
	Author URI: https://www.artlesstech.com/
	Theme URI: https://storybox.agency/
	License: GNU General Public License v2 or later
	License URI: https://www.gnu.org/licenses/gpl-2.0.html
	Artless WordPress Starter Theme
	Copyright (C) 2026 Artless
	This theme is licensed under the GNU General Public License v2 or later.
	You are free to modify and distribute this theme under the terms of the GPL.
*/
html {
	scroll-behavior: smooth;
}
body {
	font-family: 'Inter', sans-serif;
	color: #8C8C8C;
	font-size: 14px;
	line-height: 22px;
	width: 100%;
	background: #242424;
}
.dark_bg {
	background: #0D0D0D;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 700;
	margin: 0px;
}
ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
/* default font size */
.fa {
	font-size: 14px;
}
/* Override the bootstrap defaults */
h1 {
	font-size: 50px;
}
h2 {
    font-size: 40px;
    color: #1B3401;
    margin-bottom: 15px;
}
h3 {
	font-size: 30px;
	color: #1B3401;
	margin-bottom: 15px;
}
p {
    font-size: 14px;
    line-height: 22px;
}
p.large_text {
	font-size: 20px;
	line-height: 27px;
}
a {
	color: #23a1d1;
}
a:hover {
	text-decoration: none;
	color: #84D431;
}
a:focus,
a:active {
    outline: none !important;
    box-shadow: none !important;
	border: 0px !important;
}
img {
	max-width: 100%;
	height: auto;
}
button, html input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer;
    background: transparent;
    border: 0px solid transparent;
}
/* Fix some bootstrap issues */
span.hidden-xs, span.hidden-sm, span.hidden-md, span.hidden-lg {
	display: inline;
}
.flex_row {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
header {
    position: absolute;
    width: 100%;
    top: 0px;
    left: 0px;
    z-index: 20;
	padding: 25px 0px;
	background: transparent;
	border-bottom: 1px solid #333333;
}
header.sticky {
    position: fixed;
    background: #000;
}
#logo img {
    max-width: 100px;
    height: auto;
}
nav {
	text-align: center;
}
nav ul {
    float: right;
}
nav ul li {
    padding: 0px !important;
}
nav li a {
    display: inline-block;
    padding: 4px 15px;
    font-size: 15px;
	font-weight: 500;
	line-height: 35px;
    text-decoration: none;
    text-align: center;
    outline: 0;
    color: #ADA8A8;
	text-transform: uppercase;
    white-space: nowrap;
    -webkit-transition: .2s ease-out;
    -moz-transition: .2s ease-out;
    -o-transition: .2s ease-out;
    transition: all .2s ease-out 0s;
}
.search_icon i {
	padding: 4px 15px;
    font-size: 15px;
	color: #ADA8A8;
}
nav li a:hover, .search_icon i:hover {
    color: #FFF;
}
/* footer */
footer {
    padding: 60px 0px;
    background: #000;
    color: #8C8C8C;
	border-top: 1px solid #333333;
}
.grid_row {
	display: grid;
	gap: 3rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.footer_logo p {
	margin-top: 40px;
	color: #8C8C8C;
}
footer ul li {
    list-style: none;
    font-size: 16px;
    padding: 7px 0px;
    float: left;
    width: 100%;
}
footer a:hover {
	color: #fff;
}
footer i {
	margin-right: 10px;
}
footer h3 {
	color: #FFF;
    margin-bottom: 20px;
	font-family: "Playfair Display", serif;
	font-size: 16px;
    line-height: 25px;
	text-transform: uppercase;
}
ul.contact_link li {
    display: flex;
    gap: 5px;
    align-items: center;
}
ul.contact_link li a {
    color: #8C8C8C;
	font-size: 14px;
}
ul.contact_link li i {
    font-size: 15px;
    color: #fff;
}
.footer_social_link i {
    color: #8C8C8C;
    font-size: 20px;
}
.copywrite {
    border-top: 1px solid #333333;
	padding-top: 32px;
    margin: 48px 0px 0px;
	text-align: center;
}
.copywrite .designed_by, .copywrite .designed_by a {
	line-height: 20px;
	font-size: 12px;
	color: rgba(140, 140, 140, 0.5);
}
ul.contact_link li a:hover, .footer_social_link i:hover, .copywrite .designed_by a:hover {
    color: #fff;
}
.mini_container {
	max-width: 800px;
	margin: 0px auto;
}
section {
	padding: 75px 0px;
}
.row {
    margin-right: -25px;
    margin-left: -25px;
}
.container {
    padding-right: 25px;
    padding-left: 25px;
}
.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    padding-right: 25px;
    padding-left: 25px;
}
@media (min-width: 1400px) {
    .container {
        max-width: 1370px;
		width: 1370px;
    }
}
@media (max-width: 1399px) {
    .container {
        max-width: 100%;
		width: 100%;
    }
}
section.hero {
    padding: 130px 0px 50px;
	height: 100vh;
	overflow: hidden;
}
.inset-0 {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.absolute {
	position: absolute;
}
.hero img {
    -o-object-fit: cover;
    object-fit: cover;
	width: 100%;
	height: 100%;
}
.absolute_bg {
	background: rgba(13, 13, 13, 0.4);
}
hero.absolute_bg {
	background: rgba(13, 13, 13, 0.6);
}
.gradient_overlay {
    background: linear-gradient(to top, #0D0D0D, transparent);
}
.hero_container {
    max-width: 580px;
    margin: 0px auto;
    z-index: 10;
    position: relative;
    color: #fff;
	display: flex;
	justify-content: center;
    align-items: center;
    flex-direction: column;
	height: 100%;
}
.hero_tagline, .tagline {
    color: #fff;
	letter-spacing: 4px;
	text-transform: uppercase;
	font-size: 12px;
    line-height: 1rem;
}
h1 {
	font-size: 90px;
	line-height: 1;
	font-family: "Playfair Display", serif;
	margin: 20px 0px;
}
h1 span, .italic {
    font-style: italic;
}
.hero_subtitle {
	font-size: 20px;
	line-height: 28px;
	color: #8C8C8C;
	position: relative;
	top: 10px;
}
.hero_button a {
	font-size: 18px;
	line-height: 28px;
	padding-bottom: 5px;
	border-bottom: 2px solid rgba(255, 255, 255, 0.5);
	color: #fff;
	filter: drop-shadow(0 0 12px rgba(255, 255, 255, 0.7));
	letter-spacing: 4px;
	text-transform: uppercase;
	position: relative;
	top: 30px;
	animation-duration: .5s;
	transition-duration: .5s;
}
.hero_button a:hover {
	letter-spacing: 7px;
	filter: drop-shadow(0 0 25px rgba(255, 255, 255, 1));
}
.hero_button a:hover i {
	margin-left: 5px;
}
section.portfolio {
	padding: 20px 0px 75px;
}
h2 {
	font-size: 50px;
	line-height: 1;
	font-family: "Playfair Display", serif;
	margin: 20px 0px;
	color: #fff;
}
.section_button a {
    font-size: 14px;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 2px;
}
.single_event_link {
    aspect-ratio: 3 / 4;
	position: relative;
	overflow: hidden;
}
.portfolio .single_event_link {
    margin: 50px 0px;
}
.single_event_link img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	animation-duration: .7s;
	transition-duration: .7s;
}
.bottom_card {
	top: auto;
	z-index: 10;
	text-align: left;
	padding: 24px;
}
.event_category {
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 12px;
    line-height: 16px;
	color: #fff;
}
.event_title {
	font-size: 24px;
	line-height: 32px;
	font-family: "Playfair Display", serif;
	margin: 10px 0px;
	color: #fff;
	font-weight: 600;
}
.event_location {
	font-size: 14px;
    line-height: 18px;
	color: #8C8C8C;
}
.single_event_link {
	transition: transform 0.3s ease;
}
.single_event_link:hover img {
	transform: scale(1.1);
}
.about_description {
	margin: 30px 0px 50px;
}
.about_description p {
	font-size: 18px;
    line-height: 26px;
	color: #8C8C8C;
}
.counter_row i {
	font-size: 30px;
	color: #fff;
	margin-bottom: 15px;
}
.counter_row .counter_number {
	font-size: 30px;
	font-family: "Playfair Display", serif;
	color: #fff;
	font-weight: 700;
}
.counter_row .counter_text {
	font-size: 14px;
	line-height: 21px;
	color: #8C8C8C;
}
section.about {
	padding: 100px 0px 50px;
}
.category_card {
    display: block;
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
	border: 1px solid #333;
	border-radius: 5px;
	cursor: pointer;
}
.category_card canvas {
	object-fit: cover;
    width: 100%;
    height: 100%;
}
.block_gap {
    display: block;
    height: 100px;
}
.event_highlight {
	margin-top: 40px;
}
.flex_center {
    display: flex;
	justify-content: center;
	align-items: center;
}
.event_highlight svg {
    width: 50px;
    height: 50px;
	color: #000;
}
.carousel-control {
    top: 45%;
    width: 45px;
    opacity: 1;
    background: none !important;
}
.carousel-control i {
    width: 40px;
    height: 40px;
	border-radius: 50%;
	background: #fff;
	font-size: 18px;
	line-height: 40px;
	color: #000;
}
#eventHighlightCarousel .carousel-control.left i {
	position: relative;
	right: 20px;
}
#eventHighlightCarousel .carousel-control.right i {
	position: relative;
	left: 20px;
}
p.event_highlight_title {
    font-size: 16px;
    line-height: 24px;
    text-align: left;
    color: #fff;
    margin: 10px 0px 0px;
    font-family: "Playfair Display", serif;
}
.testimonial {
    border: 1px solid #333;
    border-radius: 5px;
    padding: 25px;
    height: 250px;
	margin-top: 30px;
}
.testimonial p {
    font-size: 16px;
    font-style: italic;
    line-height: 25px;
}
.testimonial a {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}
#testimonialCarousel {
	padding: 0px 5%
}
#modal_video .modal-dialog {
    width: 80%;
    max-width: 1030px;
}
#modal_video .modal-body {
    padding: 0;
    text-align: center;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
#modal_video .modal-content {
    -webkit-box-shadow: 0px 0px 0px 0px transparent;
    box-shadow: 0px 0px 0px 0px transparent;
    border: 0px;
}
#modal_video video {
    display: block;
    width: 100%;
    height: auto;
	max-height: 90vh;
    margin: 0 auto;
}
#modal_video h3 {
    color: #8C8C8C;
	font-family: "Playfair Display", serif;
	font-size: 24px;
	line-height: 32px;
}
.modal-backdrop {
    background: #222;
}
.modal-backdrop.in {
    filter: alpha(opacity=100);
    opacity: 1;
}
#modal_video .modal-dialog {
	margin: 50px auto;
}
#modal_video .modal-content {
    background: transparent;
}
#modal_video .modal-close {
    width: 43px;
    height: 43px;
    background: #333;
    line-height: 43px;
    border-radius: 50%;
    font-size: 18px;
    color: #ccc;
    position: absolute;
    z-index: 9999;
    top: 0px;
    right: -100px;
	cursor: pointer;
}
.modal_text .modal-content {
    background: #111;
    box-shadow: none;
    border: 1px solid #585656;
}
.modal_text .modal-header .close {
    margin-top: -2px;
    color: #fff;
    opacity: 0.7;
    font-size: 25px;
}
.modal_text h3 {
    font-size: 30px;
    color: #fff;
	font-family: "Playfair Display", serif;
}
.modal_text p {
	font-style: italic;
	font-size: 16px;
	line-height: 25px;
}
.modal_text .modal-header {
    padding: 15px 15px 0px;
	border-bottom: 0px;
}
@media (max-width: 767px) {
    #mySidebar {
        background: #0D0D0D;
        position: fixed;
        width: 0px;
        height: 100% !important;
        z-index: 9999;
        top: 0px;
        left: 0px;
		padding: 0px;
        overflow: auto;
        transition: 0.2s;
        text-align: center;
    }
	#mySidebar nav ul {
		float: left;
	}
	#mySidebar nav ul li {
		display: block;
		text-align: left;
		padding: 0px 20px !important;
	}
	#mySidebar .menu_close {
		padding: 30px;
	}
	#mySidebar nav li a {
		font-size: 16px;
		letter-spacing: 1px;
	}
	.openbtn {
		color: #fff;
		font-size: 25px;
		position: absolute;
		top: 10px;
		right: 20px;
	}
	#logo .search_icon {
		position: absolute;
        top: 7px;
        right: 60px;
	}
	#logo .search_icon i {
		font-size: 20px;
	}
	.closebtn {
		font-size: 40px;
		color: #fff;
		position: absolute;
		top: 12px;
		right: 12px;
	}
	.mobile_bottom {
		float: left;
		width: 100%;
	}
	.mobile_bottom ul.contact_link {
		margin: 20px 30px;
		border-top: 1px solid #333;
		padding-top: 20px;
	}
	.mobile_bottom ul.contact_link li a {
		font-size: 14px;
		padding: 5px 0px
	}
	nav a {
		display: block;
		font-size: 20px;
	}
	#search_modal.modal_search .modal-dialog {
		width: 90%;
		max-width: 650px;
		margin: 120px auto 0px;
	}
	#search_modal.modal_search .close {
		right: -10px;
		top: -105px;
	}
	#search_modal.modal_search p {
		font-size: 12px;
	}
	.search_form .esc {
		display: none;
	}
	section.hero {
        margin-top: 0px;
        background-size: cover !important;
    }
	.hero_container {
		padding: 20px;
	}
	h1 {
		font-size: 48px !important;
	}
	.hero p.hero_tagline {
        font-size: 14px;
        line-height: 22px;
    }
	.mini_container {
		padding: 0px 20px;
	}
	.hero p.hero_subtitle {
		font-size: 18px;
        line-height: 28px;
	}
	h2 {
		font-size: 36px;
	}
	.grid_row {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	.portfolio .single_event_link {
		margin: 0px;
	}
	.portfolio h2 {
		margin-bottom: 40px;
	}
	.section_button {
		margin-top: 30px;
	}
	p {
		margin: 0 0 20px;
	}
	.counter_row {
		margin-bottom: 20px;
	}
	.testimonial {
		height: auto;
		min-height: 250px;
	}
	footer h3 {
		margin-bottom: 10px;
		margin-top: 30px;
	}
	p.copywrite_text {
		font-size: 13px;
		margin: 0 0 5px;
	}
	.about_subtitle p {
		font-size: 18px !important;
		line-height: 30px !important;
	}
	.about-page h2 {
		font-size: 30px !important;
	}
	.about-page .flex_one {
		flex-wrap: wrap;
		gap: 20px;
	}
	.about-page .flex_one > div {
        flex: 0 0 calc(50% - 10px);
    }
	.about-page .what_drives_us_points, .what_we_do_points {
		padding: 0px 10px !important;
	}
	.what_drives_us_section h2, .what_we_do_section h2, .who_we_serve_section h2 {
		margin-bottom: 30px;
	}
	.who_we_serve_section .flex_one > div {
		flex: 0 0 100%;
	}
	.about-page .who_we_serve_section .who_we_serve_points {
		margin: 0px;
	}
	#event_list .nav-tabs>li>a {
		padding: 15px;
	}
	#event_list .filter.flex_center {
		display: grid;
		gap: 16px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	#event_list .filter.flex_center>*:first-child {
		grid-column: span 2 / span 2;
	}
	#modal_video .modal-close {
		top: -32px;
		right: -25px;
	}
	.modal_event .modal-dialog {
		width: 90%;
		max-width: 1000px;
		margin: 95px auto 0px;
	}
	.modal_event .modal-body {
		padding: 30px 20px;
	}
	.modal_event .modal-body .flex_center {
		flex-direction: column;
		margin-bottom: 0px;
	}
	#single-event #eventGallery .carousel-indicators {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
	#single-event #eventGallery .carousel-indicators li img.thumb-indicator {
		height: auto;
	}
	#single-event .event_category {
		margin: 45px 0px 5px;
	}
	#single-event h1 {
        font-size: 36px !important;
        line-height: 45px !important;
    }
}