/*
Theme Name: BRM Fitness
Theme URI: https://brmfitnessstudio.com/
Author: BRM Fitness
Description: Tema WordPress premium, limpio y orientado a captación para BRM Fitness. Compatible con el editor de bloques de WordPress.
Version: 1.0.0
License: GPL-2.0-or-later
Text Domain: brm-fitness
*/

:root{
  --brm-gold:#CFA45D;
  --brm-gold-light:#E5C27E;
  --brm-black:#080808;
  --brm-dark:#111111;
  --brm-soft:#171717;
  --brm-white:#fff;
  --brm-muted:#a9a9a9;
  --brm-border:rgba(255,255,255,.10);
  --brm-max:1180px;
}
*{
	box-sizing:border-box
}
html{
	scroll-behavior:smooth
}
body{
	margin:0;
	background:#fff;
	color:#151515;
	font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	line-height:1.65
}
img{
	max-width:100%;
	height:auto
}
nav > li {
	list-style:none
}
a{
	text-decoration:none
}
.brm-wrap{
	width:min(var(--brm-max),calc(100% - 40px));
	margin:auto
}
.brm-site-header{
	position:fixed;
	z-index:50;
	top:0;
	left:0;
	right:0;
	background:rgba(8,8,8,.88);
	backdrop-filter:blur(14px);
	border-bottom:1px solid var(--brm-border)
}
.brm-header-inner{
	height:78px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:24px
}
.brm-brand img{
	display:block;
	width:118px!important;
	height:auto!important;
	max-width:118px!important;
	max-height:60px!important;
	object-fit:contain!important
}
.brm-nav{
	display:flex;
	align-items:center;
	gap:28px
}
.brm-nav a{
	color:#eee;
	font-size:14px;
	font-weight:600;
	transition:.2s}
.brm-nav a:hover{
	color:var(--brm-gold-light)
}
.brm-menu-toggle{
	display:none;
	background:none;
	border:1px solid var(--brm-border);
	color:#fff;
	border-radius:8px;
	padding:8px 11px
}
.brm-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;padding:14px 22px;
	border-radius:4px;
	background:var(--brm-gold);
	color:#0a0a0a;font-weight:800;
	font-size:14px;
	letter-spacing:.1px;
	transition:transform .2s,background .2s
}
.brm-btn:hover{
	transform:translateY(-2px);
	background:var(--brm-gold-light)
}
.brm-btn-outline{
	background:transparent;
	color:#fff;
	border:1px solid rgba(255,255,255,.32)
}
.brm-btn-outline:hover{
	background:#fff;
	color:#111
}
.brm-hero{
	min-height:760px;
	background:
		radial-gradient(circle at 75% 30%,rgba(207,164,93,.20),transparent 32%),
		linear-gradient(115deg,#050505 0%,#0c0c0c 58%,#151515 100%);
	color:#fff;
	display:flex;
	align-items:center;
	padding:140px 0 100px;
	position:relative;
	overflow:hidden
}
.brm-hero:after{
	content:"";
	position:absolute;
	right:-160px;
	bottom:-220px;
	width:520px;
	height:520px;
	border:1px solid rgba(207,164,93,.22);
	border-radius:50%;
	box-shadow:0 0 0 80px rgba(207,164,93,.035),0 0 0 160px rgba(207,164,93,.02)
}
.brm-hero-grid{
	display:grid;
	grid-template-columns:1.1fr .9fr;
	gap:70px;
	align-items:center;
	position:relative;
	z-index:1
}
.brm-eyebrow{
	display:inline-flex;
	align-items:center;
	gap:10px;
	text-transform:uppercase;
	letter-spacing:2.2px;
	color:var(--brm-gold-light);
	font-weight:800;
	font-size:12px;
	margin-bottom:18px
}
.brm-eyebrow:before{
	content:"";
	width:32px;
	height:1px;
	background:var(--brm-gold)
}
.brm-hero h1{
	font-size:clamp(45px,6vw,76px);
	line-height:1.02;
	letter-spacing:-2.8px;
	margin:0 0 24px;
	max-width:760px
}
.brm-hero h1 span{
	color:var(--brm-gold-light)
}
.brm-hero p{
	font-size:19px;
	color:#cfcfcf;
	max-width:620px;
	margin:0 0 34px
}
.brm-actions{
	display:flex;
	gap:12px;
	flex-wrap:wrap
}
.brm-hero-card{
	min-height:460px;
	border:1px solid rgba(255,255,255,.13);
	border-radius:18px;
	background:
		linear-gradient(145deg,rgba(255,255,255,.08),
		rgba(255,255,255,.025));
	padding:30px;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	box-shadow:0 30px 80px rgba(0,0,0,.35)
}
.brm-logo-large{
	width:min(300px,70%);
	margin:0 auto 60px;
	opacity:.96
}
.brm-hero-card strong{
	font-size:22px
}
.brm-hero-card p{
	font-size:14px;
	margin:8px 0 0;
	color:#bdbdbd
}
.brm-section{
	padding:105px 0
}
.brm-section-dark{
	background:var(--brm-black);
	color:#fff
}
.brm-section-soft{
	background:#f6f5f2
}
.brm-section-head{
	max-width:700px;
	margin-bottom:50px
}
.brm-kicker{
	color:#a67b37;
	text-transform:uppercase;
	letter-spacing:2px;
	font-size:11px;
	font-weight:900
}
.brm-section h2{
	font-size:clamp(34px,4.2vw,54px);
	line-height:1.08;
	letter-spacing:-1.5px;
	margin:10px 0 18px
}
.brm-section-head p{
	color:#666;
	font-size:17px
}
.brm-section-dark .brm-section-head p{
	color:#aaa
}
.brm-grid-3{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:18px
}
.brm-card{
	padding:30px;
	border:1px solid #e7e5df;
	background:#fff;
	border-radius:12px
}
.brm-section-dark .brm-card{
	background:#111;
	border-color:rgba(255,255,255,.10)
}
.brm-card-number{
	color:var(--brm-gold);
	font-weight:900;
	font-size:13px;
	letter-spacing:1px
}
.brm-card h3{
	font-size:22px;
	margin:18px 0 10px
}
.brm-card p{
	margin:0;
	color:#707070
}
.brm-section-dark .brm-card p{
	color:#aaa
}
.brm-services{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:18px
}
.brm-service{padding:36px;background:#101010;border:1px solid rgba(255,255,255,.09);border-radius:12px;min-height:220px}
.brm-service h3{font-size:25px;margin:0 0 10px}
.brm-service p{color:#aaa;margin:0}
.brm-about{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}
.brm-about-panel{background:#0d0d0d;min-height:480px;border-radius:18px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(207,164,93,.2);padding:35px}
.brm-about-panel img{width:min(330px,85%);filter:drop-shadow(0 20px 35px rgba(0,0,0,.4))}
.brm-checks{display:grid;gap:12px;margin:28px 0}
.brm-check{display:flex;gap:12px;align-items:flex-start}
.brm-check b{color:#151515}
.brm-check i{font-style:normal;color:#a67b37;font-weight:900}
.brm-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.brm-quote{padding:30px;border-radius:12px;background:#fff;border:1px solid #e8e5de}
.brm-quote p{font-size:16px}
.brm-quote small{color:#777}
.brm-cta{padding:90px 0;background:linear-gradient(120deg,#0a0a0a,#161616);color:#fff;text-align:center}
.brm-cta h2{font-size:clamp(35px,5vw,58px);margin:0 auto 16px;letter-spacing:-1.5px}
.brm-cta p{color:#bbb;max-width:650px;margin:0 auto 28px}
.brm-footer{background:#050505;color:#aaa;padding:55px 0 25px;border-top:1px solid rgba(255,255,255,.08)}
.brm-footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:40px;padding-bottom:35px}
.brm-footer img{width:145px}
.brm-footer h4{color:#fff;margin:0 0 12px}
.brm-footer a{color:#aaa}
.brm-footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:20px;font-size:12px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.brm-page{padding-top:78px}
.brm-page-hero{padding:100px 0;background:#0b0b0b;color:#fff}
.brm-content{padding:80px 0}
.brm-content-inner{max-width:820px;margin:auto}
.brm-content-inner h1{font-size:52px;line-height:1.1}
.brm-content-inner h2{font-size:34px}
.brm-content-inner p,.brm-content-inner li{font-size:17px;color:#555}
.brm-contact-box{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.brm-form input,.brm-form textarea{width:100%;border:1px solid #ddd;padding:14px;border-radius:6px;font:inherit;margin-bottom:12px}
.brm-form textarea{min-height:150px}
@media(max-width:850px){
  .brm-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#090909;padding:20px;flex-direction:column;align-items:flex-start}
  .brm-nav.is-open{display:flex}
  .brm-menu-toggle{display:block}
  .brm-header-inner{height:70px}
  .brm-brand img{width:105px!important;max-width:105px!important;max-height:54px!important;height:auto!important;object-fit:contain!important}
  .brm-hero{min-height:auto;padding:130px 0 80px}
  .brm-hero-grid,.brm-about{grid-template-columns:1fr;gap:35px}
  .brm-hero-card{min-height:330px}
  .brm-grid-3,.brm-testimonials{grid-template-columns:1fr}
  .brm-services{grid-template-columns:1fr}
  .brm-footer-grid,.brm-contact-box{grid-template-columns:1fr}
  .brm-section{padding:75px 0}
  .brm-hero h1{letter-spacing:-1.8px}
}


/* BRM HEADER LOGO FIX — keep the original square logo small in the header */
.brm-site-header .brm-brand,
.brm-site-header .brm-brand .custom-logo-link {
    display:flex !important;
    align-items:center !important;
    width:118px !important;
    max-width:118px !important;
    height:60px !important;
    max-height:60px !important;
    overflow:hidden !important;
}
.brm-site-header .brm-brand img,
.brm-site-header .brm-brand .custom-logo {
    display:block !important;
    width:118px !important;
    max-width:118px !important;
    height:auto !important;
    max-height:60px !important;
    object-fit:contain !important;
    margin:0 !important;
}
/* Prevent the WordPress custom-logo wrapper from inheriting oversized dimensions */
.brm-site-header .brm-brand .custom-logo-link img {
    width:118px !important;
    max-width:118px !important;
    height:auto !important;
    max-height:60px !important;
}
/* Mobile */
@media(max-width:850px){
    .brm-site-header .brm-brand,
    .brm-site-header .brm-brand .custom-logo-link {
        width:100px !important;
        max-width:100px !important;
        height:54px !important;
        max-height:54px !important;
    }
    .brm-site-header .brm-brand img,
    .brm-site-header .brm-brand .custom-logo,
    .brm-site-header .brm-brand .custom-logo-link img {
        width:100px !important;
        max-width:100px !important;
        max-height:54px !important;
        height:auto !important;
    }
}

.brm-site-header .brm-header-logo{
    width:118px !important;
    max-width:118px !important;
    height:auto !important;
    max-height:60px !important;
    object-fit:contain !important;
}
@media(max-width:850px){
    .brm-site-header .brm-header-logo{
        width:100px !important;
        max-width:100px !important;
        max-height:54px !important;
    }
}

/* FINAL BRM HEADER FIX */
.brm-site-header .brm-header-inner{
    height:78px !important;
}
.brm-site-header .brm-brand,
.brm-site-header .brm-brand .custom-logo-link{
    width:92px !important;
    height:58px !important;
    max-width:92px !important;
    max-height:58px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    overflow:hidden !important;
}
.brm-site-header .brm-brand img,
.brm-site-header .brm-brand .custom-logo,
.brm-site-header .brm-brand .brm-header-logo{
    width:92px !important;
    height:auto !important;
    max-width:92px !important;
    max-height:58px !important;
    object-fit:contain !important;
    margin:0 !important;
}
.brm-hero-mark{
    width:fit-content;
    margin:0 0 55px;
    color:var(--brm-gold-light);
    font-size:14px;
    font-weight:800;
    letter-spacing:4px;
    text-transform:uppercase;
}
@media(max-width:850px){
    .brm-site-header .brm-header-inner{height:70px !important}
    .brm-site-header .brm-brand,
    .brm-site-header .brm-brand .custom-logo-link{
        width:78px !important;
        height:52px !important;
        max-width:78px !important;
        max-height:52px !important;
    }
    .brm-site-header .brm-brand img,
    .brm-site-header .brm-brand .custom-logo,
    .brm-site-header .brm-brand .brm-header-logo{
        width:78px !important;
        max-width:78px !important;
        max-height:52px !important;
    }
}
