/*
Theme Name: Barakuda for fPortfolio
Description: A responsive fPortfolio child theme styled after the Barakuda theme.
Template: fportfolio
Version: 1.0.0
Text Domain: fportfolio-barakuda
*/

:root {
	--barakuda-pink: #ec008c;
	--barakuda-ink: #111111;
	--barakuda-muted: #817e7c;
	--barakuda-paper: #f9f9f9;
}

/* Replace fPortfolio's coral accent everywhere the parent exposes it. */
#body-content-wrapper .icon,
#body-content-wrapper .icon::before,
#body-content-wrapper .fa,
#body-content-wrapper [class^="fa-"],
#body-content-wrapper [class*=" fa-"],
#body-content-wrapper .author-icon::before,
#body-content-wrapper .clock-icon::before,
#body-content-wrapper .comments-icon::before,
#body-content-wrapper .category-icon::before,
#body-content-wrapper .tags-icon::before,
#body-content-wrapper .edit-icon::before,
#body-content-wrapper .search-form-icon::before,
#body-content-wrapper .cart-contents-icon::before {
	color: var(--barakuda-pink) !important;
}

#body-content-wrapper .button,
#body-content-wrapper .wp-block-button__link,
#body-content-wrapper input[type="submit"],
#body-content-wrapper input[type="button"],
#body-content-wrapper button,
#body-content-wrapper .skills li .progress,
#body-content-wrapper .page-numbers.current,
#body-content-wrapper .scrollup {
	background-color: var(--barakuda-pink);
	border-color: var(--barakuda-pink);
}

#body-content-wrapper .button:hover,
#body-content-wrapper .wp-block-button__link:hover,
#body-content-wrapper input[type="submit"]:hover,
#body-content-wrapper input[type="button"]:hover,
#body-content-wrapper button:hover {
	background-color: #000;
	border-color: #000;
	color: var(--barakuda-pink);
}

body {
	background: #151515 url("assets/body.gif") repeat;
	color: #555;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 16px;
}

#body-content-wrapper {
	background: transparent;
}

/* Header: logo and utility information sit above Barakuda's large menu. */
#header-main-fixed {
	min-height: 187px;
	background: #111 url("assets/header.jpg") no-repeat center 33px !important;
	border: 0;
	box-shadow: none;
	color: #fff;
}

#header-main-fixed a {
  color: #5f5a59;
}

.barakuda-logo { display: block; }
.barakuda-logo img { display: block; width: 300px; max-width: 100%; height: auto; }

#header-content-wrapper,
#main-content-wrapper,
#footer-content-wrapper,
#footer-bottom-content-wrapper,
#header-below-menu-area {
	box-sizing: border-box;
	max-width: 940px;
}

#header-content-wrapper {
	min-height: 187px;
	padding: 42px 0 0;
}

#header-logo {
	float: left;
	display: flex;
	align-items: center;
	max-width: 48%;
}

#header-logo .custom-logo-link img {
	max-height: 70px;
	width: auto;
	margin-right: 16px;
	box-shadow: none;
}

#site-identity h1,
#header-main-fixed a h1 {
	color: #fff;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 34px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 1;
}

#site-identity strong {
	display: block;
	margin: 7px 0 0 18px;
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 10px;
	font-weight: normal;
	letter-spacing: .08em;
	text-transform: uppercase;
}

#header-widget-area {
	float: right;
	max-width: 48%;
	padding-top: 4px;
	color: #44413f;
	font-family: Arial, sans-serif;
	font-size: 11px;
	letter-spacing: .03em;
	text-transform: uppercase;
}

#header-widget-area h3 { display: none; }

#header-widget-area a { color: #fff; }

/* The parent menu remains accessible on phones, but becomes Barakuda's black panel on desktop. */
#navmain {
	clear: both;
	float: none;
	position: absolute;
	left: 0;
	right: 0;
	top: 187px;
	margin: 0 auto;
	width: min(940px, 100%);
	background: #000;
	z-index: 20;
}

#navmain > div > ul {
	display: flex;
	justify-content: stretch;
	margin: 0;
}

#navmain > div > ul > li {
	flex: 1 1 0;
	padding: 0;
	border-left: 1px solid #141414;
	text-align: center;
}

#navmain > div > ul > li:first-child { border-left: 0; }

#navmain > div > ul > li > a {
	display: block;
	padding: 0 10px;
	min-height: 118px;
	border: 1px solid #000;
	border-radius: 0;
	color: #5f5a59;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 14px;
	font-weight: normal;
	letter-spacing: .02em;
	line-height: 118px;
	text-transform: uppercase;
	transition: background-color .2s ease, color .2s ease;
}

#navmain > div > ul > li > a:hover,
#navmain > div > ul > .current-menu-item > a,
#navmain > div > ul > .current-menu-ancestor > a {
	background: var(--barakuda-pink);
	border-color: var(--barakuda-pink);
	box-shadow: none;
	color: #000;
}

#navmain ul.sub-menu {
	padding: 22px 20px;
	background: #000;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

#navmain ul.sub-menu li a {
	padding: 6px 0;
	color: #5f5a59;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 14px;
	text-align: center;
	text-transform: uppercase;
}

#navmain ul.sub-menu li a:hover { background: transparent; color: var(--barakuda-pink); }
#navmain ul a { font-size: 14px; }
#navmain ul ul { background-color: #000 }
#navmain ul.children {
	color: #5f5a59;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 14px; ! important
	text-align: center;
	text-transform: uppercase;
}

#navmain ul ul li:hover > a {
		background-color: var(--barakuda-pink);
		color: #000;
}

.home #navmain { top: 684px; }

#header-below-menu-area {
	position: relative;
	z-index: 2;
	min-height: 0;
	padding: 0;
	color: #fff;
}

/* The content begins after the 120px menu exactly as in Barakuda. */
#main-content-wrapper {
	margin-top: 120px;
	padding: 62px max(20px, calc((100% - 940px) / 2)) 80px;
	max-width: none;
	width: 100%;
	min-height: 400px;
	background: #171717 url("assets/content.gif") repeat;
	color: #acacac;
	font-family: Georgia, "Times New Roman", serif;
	box-sizing: border-box;
}

#main-content-wrapper::before {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	margin-top: -62px;
	height: calc(100% + 62px);
	background: #171717 url("assets/content.gif") repeat;
	z-index: -1;
}

#main-content,
#main-content-full,
#main-content p,
#main-content-full p,
#sidebar,
#sidebar p { color: #fff; }

#main-content h1, #main-content h2, #main-content h3,
#main-content-full h1, #main-content-full h2, #main-content-full h3,
#sidebar h1, #sidebar h2, #sidebar h3 {
	color: #fff;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: normal;
}

#main-content .entry-title a,
#main-content-full .entry-title a,
#main-content h1 a,
#main-content h2 a,
#main-content h3 a,
#main-content-full h1 a,
#main-content-full h2 a,
#main-content-full h3 a,
#sidebar .widget-title a,
#sidebar .sidebar-title a {
	color: #fff;
}

#main-content .entry-title a:hover,
#main-content-full .entry-title a:hover,
#main-content h1 a:hover,
#main-content h2 a:hover,
#main-content h3 a:hover,
#main-content-full h1 a:hover,
#main-content-full h2 a:hover,
#main-content-full h3 a:hover,
#sidebar .widget-title a:hover,
#sidebar .sidebar-title a:hover {
	color: var(--barakuda-pink);
}

#main-content a, #main-content-full a, #sidebar a { color: var(--barakuda-pink); }
#main-content a:hover, #main-content-full a:hover, #sidebar a:hover { color: #fff; }

#main-content .entry-title { color: #fff; }
#main-content .after-content a { color: var(--barakuda-pink); }

.barakuda-news { float: left; width: 620px; padding: 0; }
.barakuda-section-title { margin: 0 0 22px; font-size: 30px; }
.barakuda-post { margin: 0 0 42px; padding: 0 35px 34px 0; border-bottom: 1px solid #303030; }
.barakuda-post .entry-title { margin: 0 0 10px; font-size: 23px; }
.barakuda-post .content { line-height: 1.5; }

#sidebar { float: right; width: 280px; padding: 0; color: #acacac; }
#sidebar .widget { margin-bottom: 28px; }
#sidebar .sidebar-title { color: #fff; font-family: Georgia, "Times New Roman", serif; }

#barakuda-home-widgets-wrapper { clear: both; padding-top: 10px; }

/* Original Barakuda home slider: a 940 × 497 photograph and black caption panel. */
#barakuda-slider {
	position: relative;
	margin: 0 auto;
	width: min(940px, 100%);
	height: 497px;
	background: #000;
	overflow: hidden;
}

.barakuda-slides, .barakuda-slide { width: 100%; height: 100%; }
.barakuda-slide { position: absolute; inset: 0; display: none; margin: 0; }
.barakuda-slide.is-active { display: block; }
.barakuda-slide img { display: block; width: 100%; height: 100%; object-fit: cover; box-shadow: none; }
.barakuda-slide figcaption {
	position: absolute;
	top: 0;
	right: 0;
	box-sizing: border-box;
	width: 313px;
	height: 100%;
	padding: 182px 25px 0;
	background: rgba(0, 0, 0, .82);
	color: #fff;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 19px;
	line-height: 1.25;
}
.barakuda-slider-control {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	border: 0;
	background: rgba(0, 0, 0, .55);
	color: #fff;
	font: 48px/48px Georgia, serif;
	cursor: pointer;
}
.barakuda-slider-control:hover { background: var(--barakuda-pink); }
.barakuda-slider-prev { left: 0; }
.barakuda-slider-next { right: 313px; }

.button, input[type="submit"], button {
	background: var(--barakuda-pink);
	border: 1px solid var(--barakuda-pink);
	border-radius: 0;
	color: #fff;
}

/* Parent carousel is restyled as Barakuda's full-width image with a right caption panel. */
[data-carousel-3d] {
	margin: 0 auto;
	width: min(940px, 100%);
	border: 0;
}

[data-carousel-3d] [data-child] .slide {
	font-family: Georgia, "Times New Roman", serif;
}

[data-carousel-3d] .slide > :not(img) {
	box-sizing: border-box;
	margin-left: auto;
	padding: 70px 25px;
	width: 33.33%;
	min-height: 100%;
	background: rgba(0, 0, 0, .84);
	color: #fff;
}

[data-carousel-3d] .slide h2, [data-carousel-3d] .slide h3 { color: #fff; }
[data-carousel-3d] .slide a { color: #fff; }
[data-carousel-3d] .slide a:hover { color: var(--barakuda-pink); }

/* Optional home-page areas preserve the original two rows of three columns. */
.barakuda-home-widgets {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 34px;
	margin: 38px 0 0;
}

.barakuda-home-widgets + .barakuda-home-widgets {
	margin-top: 35px;
	padding-top: 35px;
	border-top: 1px solid #d9d9d9;
}

.barakuda-home-widgets .widget { margin: 0; }

#footer-main {
	margin: 0;
	padding: 28px 0 10px;
	background: #151515 url("assets/body.gif") repeat;
	color: #acacac;
	font-family: Georgia, "Times New Roman", serif;
}

#footer-main h2, #footer-main .wp-block-heading { color: #fff; }
#footer-main a, #footer-menu .menu li a { color: var(--barakuda-pink); }
#footer-main a:hover, #footer-menu .menu li a:hover { color: #fff; }

#footer-bottom-area {
	padding: 0 0 25px;
	background: #151515 url("assets/body.gif") repeat;
	color: #acacac;
	font-family: Georgia, "Times New Roman", serif;
}

#footer-bottom-content-wrapper { display: block; padding: 0; }
#copyright { float: left; }
#footer-bottom-widget-area { float: right; }

@media (max-width: 959px) {
	#header-content-wrapper { padding-left: 20px; padding-right: 20px; }
	#navmain { width: 100%; }
	#main-content-wrapper { padding-left: 20px; padding-right: 20px; }
	#footer-content-wrapper, #footer-bottom-content-wrapper { padding-left: 20px; padding-right: 20px; }
	.barakuda-news { width: calc(100% - 310px); }
}

@media (max-width: 799px) {
	#header-main-fixed { min-height: auto; background-position: center top; }
	#header-content-wrapper { min-height: 110px; padding-top: 22px; }
	#header-logo, #header-widget-area { float: none; max-width: none; }
	#header-widget-area { margin-top: 10px; text-align: left; }
	#navmain { position: relative; top: auto; }
	.home #navmain { top: auto; }
	#navmain > div > ul { display: block; }
	#navmain > div > ul > li { border: 0; text-align: left; }
	#navmain > div > ul > li > a { min-height: 0; line-height: 1.2; padding: 14px 20px; }
	#main-content-wrapper { margin-top: 0; padding-top: 40px; }
	.barakuda-news, #sidebar { float: none; width: 100%; }
	#sidebar { margin-top: 35px; }
	#barakuda-slider { height: auto; aspect-ratio: 940 / 497; }
	.barakuda-slide figcaption { width: 33.33%; padding: 15% 18px 0; font-size: clamp(13px, 2vw, 19px); }
	.barakuda-slider-next { right: 33.33%; }
	.barakuda-home-widgets { grid-template-columns: 1fr; gap: 28px; }
	#copyright, #footer-bottom-widget-area { float: none; text-align: center; }
}
