/*
Theme Name: Fishin' Frenzy Play Child
Theme URI: https://fishinfrenzyplay.co.uk/
Description: Custom child theme for Fishin' Frenzy Play UK.
Author: Fishin' Frenzy Play
Template: generatepress
Version: 1.0.0
Text Domain: fishinfrenzyplay
*/

/* =========================================================
Fishin' Frenzy Play — Base Styles
========================================================= */

:root {
--ffp-primary: #0b5ed7;
--ffp-secondary: #00a8e8;
--ffp-accent: #ffc107;
--ffp-dark: #102a43;
--ffp-text: #243b53;
--ffp-light: #f5f9fc;
--ffp-white: #ffffff;
}

/* Global */
body {
color: var(--ffp-text);
}

/* Links */
a {
transition: all 0.2s ease;
}

/* =========================================================
Fishin' Frenzy Play — Footer
========================================================= */

/* Main footer */
.site-footer {
background: #071d2b;
color: #ffffff;
}

/* =========================================================
Footer Legal Menu
========================================================= */

.footer-legal-menu {
border-top: 1px solid rgba(255, 255, 255, 0.08);
padding: 28px 15px 12px;
margin-top: 10px;
}

.footer-legal-menu > div {
display: flex;
flex-wrap: wrap;
gap: 10px 14px;
justify-content: center;
align-items: center;
font-size: 14px;
line-height: 1.4;
}

.footer-legal-menu a {
color: rgba(255, 255, 255, 0.75);
text-decoration: none;
transition: color 0.2s ease, opacity 0.2s ease;
}

.footer-legal-menu a:hover {
color: #00c2e8;
opacity: 1;
}

.footer-legal-menu span {
color: rgba(255, 255, 255, 0.25);
}

/* =========================================================
Responsible Gambling
========================================================= */

.footer-responsible {
padding: 28px 15px 22px;
}

/* 18+ + GambleAware */
.footer-age-awareness {
display: flex;
gap: 24px;
justify-content: center;
align-items: center;
flex-wrap: wrap;
margin-bottom: 22px;
}

/* 18+ Circle */
.footer-age-awareness > a:first-child {
display: flex;
align-items: center;
justify-content: center;
width: 68px;
height: 68px;


border: 3px solid #ffffff;
border-radius: 50%;

color: #ffffff;
font-size: 25px;
font-weight: 800;
line-height: 1;
text-decoration: none;

transition: all 0.2s ease;


}

.footer-age-awareness > a:first-child:hover {
border-color: #ffc107;
color: #ffc107;
}

/* GambleAware Logo */
.footer-age-awareness img {
display: block;
max-width: 180px;
width: 100%;
height: auto;
}

/* =========================================================
Responsible Gambling Text
========================================================= */

.footer-responsible > div:nth-child(2) {
max-width: 760px;
margin: 0 auto 22px;


font-size: 14px;
line-height: 1.65;

color: rgba(255, 255, 255, 0.72);


}

.footer-responsible > div:nth-child(2) strong {
color: #ffffff;
}

.footer-responsible > div:nth-child(2) a {
color: #00c2e8;
text-decoration: underline;
}

.footer-responsible > div:nth-child(2) a:hover {
color: #ffc107;
}

/* =========================================================
Support Logos
========================================================= */

.footer-cert-logos {
display: flex;
gap: 18px;
justify-content: center;
align-items: center;
flex-wrap: wrap;
}

.footer-cert-logos a {
display: flex;
align-items: center;
justify-content: center;


opacity: 0.82;

transition:
    opacity 0.2s ease,
    transform 0.2s ease;


}

.footer-cert-logos a:hover {
opacity: 1;
transform: translateY(-2px);
}

.footer-cert-logos img {
display: block;
max-width: 110px;
height: auto;
}

/* =========================================================
Final Legal Line
========================================================= */

.footer-legal-line {
text-align: center;


font-size: 12px;
line-height: 1.6;

color: rgba(255, 255, 255, 0.55);

padding: 15px 10px 28px;


}

/* =========================================================
Mobile
========================================================= */

@media (max-width: 600px) {


/* Legal menu */
.footer-legal-menu {
    padding: 24px 12px 10px;
}

.footer-legal-menu > div {
    gap: 8px 10px;
    font-size: 13px;
}

/* Hide separators on mobile */
.footer-legal-menu span {
    display: none;
}


/* Responsible gambling */
.footer-responsible {
    padding: 24px 12px 18px;
}


/* 18+ + GambleAware */
.footer-age-awareness {
    gap: 18px;
    margin-bottom: 20px;
}


/* 18+ circle */
.footer-age-awareness > a:first-child {
    width: 62px;
    height: 62px;
    font-size: 23px;
}


/* GambleAware */
.footer-age-awareness img {
    max-width: 155px;
}


/* Responsible gambling text */
.footer-responsible > div:nth-child(2) {
    font-size: 13px;
    line-height: 1.6;
}


/* Support logos */
.footer-cert-logos {
    gap: 12px;
}

.footer-cert-logos img {
    max-width: 95px;
}


/* Final legal line */
.footer-legal-line {
    font-size: 11px;
    padding: 14px 10px 24px;
}


}

/* =========================================================
Fishin' Frenzy Play — Header
========================================================= */

/* Main header */
.site-header {
background: #071d2b;
color: #ffffff;
}

/* Header inner */
.site-header .inside-header {
min-height: 76px;
display: flex;
align-items: center;
}

/* Site branding */
.site-header .site-branding {
display: flex;
align-items: center;
}

/* Site title */
.site-header .site-title a {
color: #ffffff;
font-size: 25px;
font-weight: 800;
line-height: 1.1;
text-decoration: none;
letter-spacing: -0.3px;
}

.site-header .site-title a:hover {
color: #00c2e8;
}

/* Site description */
.site-header .site-description {
color: rgba(255, 255, 255, 0.65);
}

/* =========================================================
Primary Navigation
========================================================= */

.main-navigation {
background: transparent;
}

.main-navigation .main-nav ul li a {
color: rgba(255, 255, 255, 0.82);
font-size: 15px;
font-weight: 600;
padding: 12px 15px;
transition:
color 0.2s ease,
background-color 0.2s ease;
}

/* Hover */
.main-navigation .main-nav ul li a:hover {
color: #00c2e8;
background: rgba(0, 194, 232, 0.08);
}

/* Current page */
.main-navigation .main-nav ul li.current-menu-item > a,
.main-navigation .main-nav ul li.current-menu-ancestor > a {
color: #ffc107;
}

/* =========================================================
Header Navigation Button
========================================================= */

.main-navigation .main-nav ul li a {
border-radius: 7px;
}

/* =========================================================
Mobile Menu
========================================================= */

@media (max-width: 768px) {


.site-header .inside-header {
    min-height: 64px;
    padding-left: 18px;
    padding-right: 18px;
}

.site-header .site-title a {
    font-size: 20px;
}

.main-navigation .menu-toggle {
    color: #ffffff;
    background: transparent;
    font-size: 25px;
    padding: 8px 10px;
}

.main-navigation .menu-toggle:hover {
    color: #00c2e8;
    background: rgba(0, 194, 232, 0.08);
}

.main-navigation.toggled .main-nav {
    background: #071d2b;
}

.main-navigation .main-nav ul li a {
    padding: 14px 18px;
    font-size: 15px;
    border-radius: 0;
}

.main-navigation .main-nav ul li a:hover {
    background: rgba(0, 194, 232, 0.08);
}


}
