/*
Theme Name: Provey Portal
Theme URI:
Description:a child theme of Frenchpress, for online.provey.com.au
Author:Andrew J Klimek
Author URI:http://andrewklimek.com
Template:frenchpress
Version:1.0.0
License:GNU General Public License v2 or later
License URI:http://www.gnu.org/licenses/gpl-2.0.html
Tags:
*/
@import url('https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap');

html {
  color: #333;
  font-family: 'Rubik', sans-serif;
  font-size: 15px;
}



/*** temp rules ***/

html.pum-open.pum-open-overlay {
    overflow: initial !important;
}


div#wpadminbar {
	z-index: 99999;/* fix the crazy PUM rule*/
}
body {
	overflow-x: hidden;/* problem with the new absolute + visibility submenus */
}
p:empty {
	display: none;/* might be good in the theme, to fix weird auto-p cases */
}

.page-submenu {
	margin: 0 0 6.4em;
	text-align: center;
}
.page-submenu-item {
	display: inline-block;
	padding: .4em 1.6em;
}
@media (max-width:599px) {
	.page-submenu {
		margin: 0 0 1.6em;
	}
	.page-submenu-item {
		/*		display: block;*/
	}
}

svg {
	fill: currentColor;/* this may end up in parent again. was nice for appling hover link color to logo in top right */
}
/*** end temp ***/

td > ul {
    padding: 0;
}

/* @font-face {
	font-family: 'provey';
	src: url('/wp-content/themes/pecp/fonts/bold.woff2') format('woff2'),
	url('/wp-content/themes/pecp/fonts/bold.woff') format('woff');
	font-weight: 700;
}

@font-face {
	font-family: 'provey';
	src: url('/wp-content/themes/pecp/fonts/regular.woff2') format('woff2'),
	url('/wp-content/themes/pecp/fonts/regular.woff') format('woff');
	font-weight: 400;
} */

/* only time we'll use full-width page template in this site is for big tables and we'd want a padding */
.tray--full-width {
	padding: 24px;
}

/* seperator between user functions and other menu items */
.dnav #menu-item-17600 {
	border-left: 1px solid #eaeaea;
	/*	padding-left: 24px;*/
	/*    margin-left: 12px;*/
}

.frm_pro_form, /* styling the form element because that's the element formidable puts a "display:block" on when the form is ready */
.frm_forms > form,/* some forms don't have the frm_pro_form class... maybe just the login form? */
.card {
	/* display: block; */
	background: #fff;
	padding: 24px;
	/* margin: 0 0 12px; */
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
	border: 1px solid #999;
	border-radius: 15px;
}
a.card {
	display: block;
}
form.frm_pro_form {display: none}/* hide until ready, when formidable puts a display:block on the style attribute on the form element */

/* for pop up so long as we're keeping this card style */
.modalmonger .frm_forms, .modalmonger form {
    padding: 0;
    box-shadow: none;
}

.card .frm_pro_form,
.form-not-card .frm_pro_form {
	background: none;
	padding: 0;
	box-shadow: none;
}

table.dataTable {
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.fffi > .card {
	/* margin: 0; */
	height: 100%;
}
div.frm_forms.frm_style_formidable-style.with_frm_style {
	/*    max-width: 60em;*/
	margin: 24px auto;
}

body {
	background: #ededee;
}

/*** TABLES ***/
table {
	width: 100%;
}

tbody {
	vertical-align: top;/* might move to parent theme */
}

th {
	text-align: left;
}
/* th, tr {
	background: #fff;
} */
/*tr:nth-of-type(2n),*/
tr.odd {
	background: #f7f7f7;
}


.dnav .main-nav .sub-menu {
	background: #fff;
	color: #151724;
}

.site-branding {
	padding: 20px 0;/* this is needed to keep the padding once mobile nav kicks in */
}

h1, h2, h3, h4, th {
	font-weight: 500;
}

#footer-top {
	background: #fe5341;
	color: #151724;
	padding: 24px 0;
}

#footer {
	color: #fff;
	background: #1e1e1e;
	margin-top: 2em;
}
#footer-bottom {
	color: #aaa;
	font-size: 11px;
}
/*Main Font Styles*/
html {
	color: #42180d;
	font-family: 'Rubik', provey, sans-serif;
	font-size: 15px;
}

a {
	transition: color 250ms;
}

/*** MAIN NAV ***/

.dnav #main-menu > .current-menu-ancestor,
.dnav body:not(.home) #main-menu > .current-menu-item {
	border-bottom: 1px solid #f47c37;
	margin-top: 2px;
}
/* only add padding to menu links so the red underline (above) will be at the bottom of the header */
.dnav #main-menu > .menu-item > a {
	padding: 27px 18px;
}
.site-header .menu-item {
	/* padding: 12px 24px; */
}
.dnav .main-nav .sub-menu {
	box-shadow: 0 2px 5px 0 rgba(0,0,0,.2);
}

.mnav .main-nav .menu-item {
	font-size: 16px;
}
/* .mnav #main-menu .current-menu-ancestor,
.mnav body:not(.home) #main-menu .current-menu-item {
	background: #eee;
} */


/*** FORMS ***/

[type=text],
[type=search],
[type=tel],
[type=url],
[type=email],
[type=password],
[type=number],
select {
	height: 50px;
	border: #ccc solid 1px;
    border-radius: 4px;
    width: 100%;
    padding: 10px 16px;
}

/* BUTTONS */
.button, .btn, button, input[type=submit] {
	background: none;
	display: inline-block;
	/*    padding: .4em .8em;*//* is it this font only but it doesn't look centered with even top and bottom padding */
	padding: 0.7ex 0.8em 1ex;
	margin: 0 0 1.6em;
	min-width: 8rem;
	text-align: center;
	text-decoration: none;
	/* text-transform: uppercase; */
	transition: all .4s;
	border: 2px solid currentColor;
	/*     font: inherit; */
	font-weight: 500; 
	color: currentColor;
	border-radius: 1.3em;
	/* theme specific */
	background: #f47c37;
	border-color: #f47c37;
	color: #fff;
	text-transform: lowercase;
	box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2);
}
/* 2 generic hover effects that will always be acceptable if not great */
.button:hover, .btn:hover, button:hover, input[type=submit]:hover {
	/*    filter: grayscale(1) invert(1);*/
	/* 	opacity: .6; */
	/* theme specific */
	background: none;
	color: #42180d;
	box-shadow: none;
}
.btn-white,
.btn-o-white:hover {
	background: #fff;
	border-color: #fff;
	color: #333;
}
.btn-white:hover,
.btn-o-white {
	background: none;
	border-color: #fff;
	color: #fff;
}
.btn-black,
.btn-o-black:hover {
	background: #333;
	border-color: #333;
	color: #fff;
}
.btn-black:hover,
.btn-o-black {
	background: none;
	border-color: #333;
	color: #333;
}
/* these are default for now
.btn-red,
.btn-o-red:hover {
background: #42180d;
border-color: #42180d;
color: #fff;
}
.btn-red:hover,
.btn-o-red {
background: none;
border-color: #42180d;
color: #42180d;
}*/


/*** HEADER ****/
#header {
	background: #fcfcfc;
	margin-bottom: 3.2rem;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
}


/*** SIDEBAR ***/

.shortcode-menu li {
	font-weight: 700;
	border-bottom: 1px solid #fff;
	background: #f2f2f2;
	margin: 0;
	padding: 0 23px 0 0;
	display: block;
	text-align: left;
}
.shortcode-menu li a {
	border-left: 5px solid transparent;
	display: inline-block;
	padding: 14px 0 14px 18px;
	transition: all 0.3s ease;
}
.shortcode-menu li a:hover,
.shortcode-menu .current-menu-item > a {
	border-left-color: #93a7af;
}


/*** FAQ ***/
.collapse-list {
	background: #cacaca;
}
.collapse-item {
	padding: 24px;
	border-top: 1px solid #999;
	cursor: pointer;
}
.collapse-list dt {
	margin: 0;
}
.collapse-list dd {
	padding: 0;
	margin: 0;
	max-height: 0;
	transition: max-height cubic-bezier(1,0,0,1) 99ms;
	overflow: hidden;
}
.expanded dd {
	max-height: 200em;
}
.collapse-item > dd > p {
	margin-top: 24px;
}
.collapse-item.expanded {
	background: #f2f2f2;
}
.collapse-item dt::before {
	content: '+ ';
}
.collapse-item.expanded dt::before {
	content: '- ';
}





/* Earlier mobile submenu toggle styling, before styling wecare
* it toggles down like a tree instead of sliding
.menutog {
position: absolute;
top: 0;
right: 0;
padding: 24px;
padding: 12px;
}
.dnav .menutog {
display:none;
}
.menu-item.focus > .menutog {
transform: rotate(180deg);
}
.menutog::after {
content: '';
border: .6ex solid transparent;
border-top-color: currentColor;
vertical-align: middle;
display: inline-block;
}
.mnav .main-nav .sub-menu {
max-height: 0;
overflow: hidden;
transition: max-height cubic-bezier(1,0,0,1) 99ms;
}
.mnav .focus > .sub-menu {
max-height: 50em;
}
*/


/*********
* Acccent Color
*********/
.color1, a:hover { color: #f47c37; }
.bg1 { background: #f47c37; color: #151724; }/* 1: red I thoguht it was supposed to be #f33633 but this is used on the current site and sort of looks better */


/*********
* Mobile
*********/
@media (max-width:599px) {
	.frm_forms {
		padding: 0;
	}
	main#primary.site-main	 {
		padding: 0 0.9rem;		
	}	
}
/*********
* KL customization
*********/

.page-submenu {
	margin: 0 0 3.0em;
	text-align: center;
}
.page-submenu-item {
	display: inline-block;
	padding: .4em 1.2em;
	color: #777;
}
#header {
	margin-bottom: 2.0rem;
}
h2 {
	margin: 1.8ex 0 2.4ex
}
.bpress-wrap {
	font-family: provey !important; 
}
#mnml-magic-link {
	min-width: 100%;
}

b,
strong {
  font-weight: 500 !important;
}

/* STYLE MULTI-SELECT DROP DOWN FIELD */
.with_frm_style input[type=text], .with_frm_style select {
    height: 50px !important;
}
.with_frm_style .chosen-container-multi .chosen-choices li.search-choice {
    padding: 12px 20px 12px 5px;
    margin:  4px 5px 4px 0;
}

/* NEW CARD STYLE FOR HOME PAGE FOR GRID AND CELL SETUP */

/* -------- Core grid fix -------- */
.portal-grid.fr-grid,
.portal-grid .fr-cell {
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
}

.portal-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
  gap: 16px !important;
  margin-top: 20px;
}

/* -------- Brand palette (Settled green) -------- */
:root {
  --settled-green-dark: #0d2f27;
  --settled-green-mid: #165c4a;
  --settled-green-light: #cfe8dd;
  --portal-card-bg: #ffffff;
  --portal-text: #0d2f27;
  --portal-muted: #4b6356;
  --portal-shadow: 0 8px 20px rgba(0,0,0,0.07);
  --portal-shadow-hover: 0 12px 28px rgba(0,0,0,0.12);
}

/* -------- Card design -------- */
.portal-grid .card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 18px;
  background: var(--portal-card-bg);
  border-radius: 14px;
  border: 1px solid #dddddd;
  box-shadow: var(--portal-shadow);
  text-decoration: none !important;
  color: var(--portal-text);
  font-size: 15px;
  transition: all 180ms ease;
}

.portal-grid .card i {
  font-size: 22px;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  color: var(--settled-green-mid);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Hover animation */
.portal-grid .card:hover {
  transform: translateY(-3px);
  box-shadow: var(--portal-shadow-hover);
  border-color: var(--settled-green-mid);
}

/* Optional fade-in */
.portal-grid .card {
  opacity: 0;
  transform: translateY(10px);
}
.portal-grid .card.card--visible {
  opacity: 1;
  transform: translateY(0);
}