/*	
	Custom.css
*/

/*	Site Name: James Welsh
	Date: 09/09/2025
*/

/* Fonts
font-family: '';
Regular font-weight: normal;
Medium font-weight: 500;
Bold font-weight: 700;
*/


@font-face {
    font-family: "Titling Gothic Wide";
    src:url('/wp-content/themes/genesis-sample/fonts/TitlingGothicFB-Wide.otf');
}
@font-face {
    font-family: "Titling Gothic WideLight";
    src:url('/wp-content/themes/genesis-sample/fonts/TitlingGothicFB-WideLight.otf');
}
	
@font-face {
    font-family: "TTCommonsPro Medium";
    src:url('/wp-content/themes/genesis-sample/fonts/TT_Commons_Pro_Medium.woff2');
}
@font-face {
    font-family: "TTCommonsPro Light";
    src:url('/wp-content/themes/genesis-sample/fonts/TT_Commons_Pro_Light.woff2');
}
/* Colours

text: #404040;
cream: #F6F3EE;
slate:


*/

/* Font size - responsive */

html {
	font-size: 62.5%; /* 10px (1rem) browser default  */

    font-size: calc(15px + 0.390625vw);
    
    /*font-size: calc(13px + 0.390625vw);
    
    font-size: calc(13px + 0.5vw);*/

}

body > div {
	font-family: "TTCommonsPro Medium";
	font-weight: normal;
	font-size: 1rem;
    line-height: 1.3;
	color: #404040;
}

/* Headings
--------------------------------------------- */

h1 {
	font-family: "Titling Gothic Wide";
	font-size: 1.8rem;
	margin-bottom: 30px;
}

h1.wide-space {
    letter-spacing: 1em;
    text-indent: 1em;
}

h2,
h2 p {
	font-family: "Titling Gothic Wide";
	font-size: 1.1rem;
	font-weight: normal;
}

h3,
.entry-content h3 {
	font-family: "Titling Gothic WideLight";
	font-size: 1.1rem;
	font-weight: normal;
}
h4,
.entry-content h4 {
	font-family: "TTCommonsPro Medium";
	font-size: 0.8rem;
	font-weight: normal;
	margin-top: 0;
}


hr.wp-block-separator {
    color: #404040;
    margin: 30px auto;
    border-bottom: 1px solid #404040;
}

/* Titles
--------------------------------------------- */

/* Remove default entry elements */

.entry-header,
.archive-description {
	display: none;
}
.entry-title {
	margin-bottom: 30px;
}
.entry-meta {
	display: none;
}
.post-edit-link {
	display: none;
}
.entry-footer {
	display: none;
}
:focus {
    outline: none;
}
.aligncenter {
    margin-bottom: 0;
}
html {
  scroll-behavior: smooth;
}

/* Site containers */

.site-inner {
    padding: 0px 15px;
}

.full-view {
    display: none;
}
.tablet-only {
    display: none;
}
.mobile-view {
    display: block;
}
.mobile-only {
    display: block;
}
.tb-container.square-cell,
.tb-grid-column.square-cell {
    aspect-ratio: 1 / 1;
}
.skills .tb-grid-column.square-cell {
    aspect-ratio: inherit;
}
.flex-column {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Buttons .....................
.................................*/

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form button[type="submit"],
.button,
.site-container .wp-block-button .wp-block-button__link {
    font-family: "TTCommonsPro Medium";
    font-weight: normal;
	background-color: #404040;
	border: 0;
	border-radius: 50px;
	color: #fff;
	cursor: pointer;
	font-size: 0.7rem;
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 5px;
	text-align: center;
	text-decoration: none;
	white-space: normal;
	width: 160px;
}


button:focus,
button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:hover,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
.button:focus,
.button:hover {
	background-color: #404040;
	border-width: 0;
	color: #fff;
}

.entry-content .button:focus,
.entry-content .button:hover {
	color: #fff;
}

.button {
	display: inline-block;
}

.site-container button:disabled,
.site-container button:disabled:hover,
.site-container input:disabled,
.site-container input:disabled:hover,
.site-container input[type="button"]:disabled,
.site-container input[type="button"]:disabled:hover,
.site-container input[type="reset"]:disabled,
.site-container input[type="reset"]:disabled:hover,
.site-container input[type="submit"]:disabled,
.site-container input[type="submit"]:disabled:hover {
	background-color: #404040;
	border-width: 0;
	color: #fff;
	cursor: not-allowed;
}

/* Header ....................
..............................*/

/* Site header ...............*/

.site-header {
	max-width: 2560px;
	box-shadow: none;
	margin: auto;
	padding: 40px 15px 0;
	
}

.wp-custom-logo .title-area {
	width: 100%;
	padding-bottom: 40px;
	border-bottom: 1px solid #404040;
}
.wp-custom-logo .title-area img {
    width: 100%;
}


/* Navigation ..................*/



.nav-primary .genesis-nav-menu a {
    font-family: "TTCommonsPro Light";
	color: #404040;
	font-size: 1rem;
	padding: 15px 0;
}

.genesis-nav-menu .current-menu-item > a,
.genesis-nav-menu a:hover,
.footer-widgets .widget_nav_menu .current-menu-item > a,
.footer-widgets .widget_nav_menu a:hover{
	color: #404040;
	text-decoration: underline;
}

/* Responsive menu ................*/

.site-header .menu-toggle::before {
    float: none;
    margin-right: 0;
    position: relative;
    text-rendering: auto;
    top: 1px;
}
.dashicons-menu:before {
	content: url(/wp-content/uploads/2025/09/JW-Burger.png);
	width: 45px;
	height: 40px;
}
.menu-toggle.activated::before {
	content: url(/wp-content/uploads/2025/11/JW-close-mobile.png);
}
.menu-toggle svg {
	width: 3rem;
}

.site-header .nav-primary {
	padding-top: 20px;
	padding-bottom: 20px;
	width: 100%;
}
.genesis-responsive-menu .genesis-nav-menu .menu-item {
	text-align: center;
}

/* Footer ....................
..............................*/

.site-footer,
.footer-widgets {
    border-top: none;
    max-width: 2560px;
    margin: auto;
}
.site-footer .wrap {
    border-top: 1px solid #404040;
    padding: 15px 0;
}
.site-footer .nav-secondary .wrap {
    border-top: none;
}
.nav-secondary {
    margin-top: 0;
}
/*.nav-secondary ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}*/
.nav-secondary a {
   /* margin-left: 10px;
    margin-right: 10px;*/
    padding: 10px;
}
.footer-widgets {
    border-top: none;
    background-color: #fff;
    clear: both;
    padding: 30px;
}
.footer-widgets .wrap {
    max-width: none;
}
.footer-widget-area {
    width: 100%;
    padding: 0;
}
/* Footer menu images */
.menu-item a img {
    width: 0.7rem;
}
.menu-item.facebook a img {
    width: 0.5rem;
}

/* Contact Forms ........................
.........................................*/

.wpcf7 #book-now  {
    max-width: 900px;
    margin: auto;
    font-family: "TTCommonsPro Medium";
    text-transform: uppercase;
    font-size: 0.7rem;
    letter-spacing: 2px;
}
.wpcf7 #book-now  input,
.wpcf7 #book-now  textarea {
    margin-bottom: 25px;
    margin-top: 25px;
    border: none;
    background-color: #f7f7f7;
    font-size: 0.7rem;
    letter-spacing: 2px;
    border-radius: 5px;
}
.wpcf7 #book-now  textarea::placeholder {
    text-transform: uppercase !important;
    font-size: 0.7rem;
    letter-spacing: 2px;
    border-radius: 5px;
}
.wpcf7 #book-now  input[type="submit"] {
    background-color: #404040;
    width: 100%;
    border-radius: 5px;
    margin-top: 0;
    padding: 15px;
}

/* Footer contact */

.page-id-14 .footer-widgets,
.page-id-26 .footer-widgets {
    display: none;
}
.first-half {
    width: 50% !important;
    display: inline-block;
    padding-right: 10px;
}
.second-half {
    width: 50% !important;
    padding-left: 10px;
    display: inline-block;
}
#wpcf7-f96-o1 input,
#wpcf7-f96-o1 textarea {
    margin-bottom: 20px;
    border: 1px solid #B4B0AF;
    border-radius: 10px;
    font-size: 0.7rem;
    letter-spacing: 2px;
    color: #B4B0AF;
}
#wpcf7-f96-o1 textarea {
    border-radius: 10px;
}
#wpcf7-f96-o1 input::placeholder,
#wpcf7-f96-o1 textarea::placeholder {
    text-transform: uppercase !important;
    font-size: 0.7rem;
    letter-spacing: 2px;
    color: #B4B0AF;
}
#wpcf7-f96-o1 input[type="submit"] {
    background-color: #404040;
    border: none;
    color: #fff;
    padding: 10px 20px;
    width: auto !important;
    border-radius: 0 10px 0 10px;
}
.message-send {
    position: relative;
}
.message-send input[type="submit"] {
    position: absolute;
    left: 0;
    bottom: 30px;
}

/** Site content .............................
..............................................**/

/* Home page quote */

.jw-quote-box .quote1 img {
    width: 15vw;
}
.jw-quote-box .quote2 img {
    width: 50vw;
}
.jw-quote-box img,
.jw-quote-box h3 {
    margin-bottom: 30px;
}

/* About page team members */

.wp-block-buttons.linkedin {
    margin-bottom: 30px;
}

/* Button boxes */

.flex-column {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.tu-left {
    position: relative;
}
.tu-left .wp-block-buttons {
    position: absolute;
    bottom: 10px;
}
.tu-right {
    position: relative;
}
.tu-right .wp-block-buttons {
    position: absolute;
    bottom: 30px;
}

.butterflies.button-box {
    position: relative;
}
.butterflies.button-box .wp-block-buttons {
    position: absolute;
    bottom: 50px;
}

/* Training unit headings */
.tu-name-container {
    position: relative;
}
.tu-name {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}
.tu-arrow {
    position: absolute;
    bottom: 15%;
    left: 50%;
    transform: translateX(-50%);
}
img.arrow,
.tu-arrow img {
    width: 1.9rem;
}
/* Listings ................
............................*/
/* Client listing */

.client .tb-grid-column {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    height: 150px;
}
.client img {
    display: block;
    margin: auto;
    max-width: 70%;
}

.home .client .tb-grid-column {
    height: 150px;
}
/* Quote listing */

/*.quote-listing a {
    text-decoration: none;
}
.quote-listing a:hover {
    text-decoration: underline;
}*/
    
.quote-listing .flex-bottom {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.quote-listing .flex-bottom h2 {
    margin-bottom: 0;
    margin-top: 20px;
}
.quote-listing.flex-top h2 {
    margin-bottom: 20px;
}
.quote-listing .flex-top {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.quote-listing {
    text-align: center;
}
.quote-listing h2 p {
    margin-bottom: 0;
}
.quote-listing .arrow img {
    margin-top: 30px;
    margin-bottom: 30px;
    width: 1.9rem;
}
.quote-listing .quote-grey img {
    margin: 0 auto;
    max-width: 60%;
}
/* Testimonials */

.testimonial h4,
.testimonial h4 p {
    margin-bottom: 0;
}
.testimonial .tb-container.flex-column {
    height: 100%;
}

/* Blog page ................
.............................*/

.post-listing a {
    text-decoration: none;
}
.post-listing a:hover {
    text-decoration: underline;
}
.post-listing h3,
.post-listing p {
    margin-bottom: 40px;
}
.post-listing h4 {
    margin-bottom: 0;
    text-transform: uppercase;
}

/* Media Queries .............
..............................*/


@media only screen and (min-width: 380px) {

.tablet-only {
    display: block;
}
.mobile-only {
    display: none;
}

.quote-listing h2 p {
    font-size: 0.9rem;
}


}

@media only screen and (min-width: 960px) {
    
       .full-view {
        display: block;
    }
    
    .mobile-view {
        display: none;
    }
    .mobile-only {
        display: none;
    }
    .tablet-only {
        display: none;
    }

    .site-inner {
        max-width: 2560px;
        padding: 0 30px;
    }
    .content {
        width: 100%;
    }
    
    .site-header {
        position: inherit;
        padding: 40px 30px 0;
    }
    .nav-primary ul {
    display: flex;
    justify-content: space-between;
}
.site-container .wp-block-button .wp-block-button__link {
    width: 220px;
}
.skills .tb-grid-column.square-cell {
    aspect-ratio: 1 / 1;
}

/* Footer ...........
......................*/

.footer-widget-area {
    width: 100%;
    padding: 0;
}

.nav-secondary ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

/* Headings
--------------------------------------------- */
h1 {
	font-family: "Titling Gothic Wide";
	font-size: 2rem;
	margin-bottom: 30px;
}
h3,
.entry-content h3 {
	font-family: "Titling Gothic WideLight";
	font-size: 1.5rem;
	font-weight: normal;
	
	font-size: 1.6vw;
}

/* Home page quote */
.jw-quote-box .quote1 img {
    width: 9vw;
}
.jw-quote-box .quote2 img {
    width: 30vw;
}
.jw-quote-box h3 p {
    margin-bottom: 0;
}
.tu-right p {
    font-size: 1.3vw;
}
.tu-left p {
    font-size: 1.2vw;
}

.client .tb-grid-column {
    height: 200px;
}

img.arrow,
.tu-arrow img {
    width: 100%;
}

.quote-listing .tb-grid-column {
    aspect-ratio: 1 / 1; 
}
.quote-listing h2 p {
    font-size: 1.1rem;
}
    
}

@media only screen and (min-width: 1920px) {
    
 h1 {
	font-family: "Titling Gothic Wide";
	font-size: 2.4rem;
	margin-bottom: 30px;
}   
    
}