/*
Theme Name: BAE Fit Child
Description: Child theme da BAE Fit, baseado no Hello Elementor. Implementa o design aprovado (Home + Collab).
Template: hello-elementor
Version: 1.0.0
*/

:root{
  --black:#000000;
  --black-soft:#141414;
  --graphite:#2B2B2B;
  --concrete:#B9B9B9;
  --champagne:#C7B8A3;
  --off-white:#ECE7E1;
  --ice:#F5F5F3;
  --line: rgba(245,245,243,0.09);
  --line-strong: rgba(245,245,243,0.16);
  --display: 'Satoshi', 'Inter', sans-serif;
  --mono: 'Space Mono', monospace;
}
.bae-page{margin:0;padding:0;box-sizing:border-box;}
.bae-page *{box-sizing:border-box;}
.bae-page{
  background:var(--black);
  color:var(--ice);
  font-family:var(--display);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
.bae-page a{color:inherit;text-decoration:none;}
.bae-page ::selection{background:var(--off-white);color:var(--black);}

@media (prefers-reduced-motion: reduce){
  .bae-page *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
}

/* ===== MARQUEE ===== */
.bae-marquee-bar{
  background:var(--off-white); color:var(--black);
  overflow:hidden; white-space:nowrap; padding:9px 0;
  border-bottom:1px solid var(--line);
}
.bae-marquee-track{
  display:inline-block; animation:bae-scroll-left 30s linear infinite;
  font-family:var(--mono); font-size:11px; letter-spacing:2px; font-weight:700;
}
.bae-marquee-track span{padding:0 24px;}
@keyframes bae-scroll-left{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* ===== HEADER ===== */
.bae-header{
  position:sticky; top:0; z-index:100;
  display:flex; align-items:center; justify-content:space-between;
  padding:20px 5vw; background:rgba(0,0,0,0.82); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.bae-logo{font-family:var(--display); font-weight:900; font-size:26px; letter-spacing:-0.5px; text-transform:lowercase;}
.bae-logo span{color:var(--off-white);}
.bae-nav-links{display:flex; gap:36px;}
.bae-nav-links a{
  font-size:12.5px; letter-spacing:1.5px; text-transform:uppercase; color:var(--ice);
  opacity:0.7; transition:opacity .25s ease; font-weight:500;
}
.bae-nav-links a.active, .bae-nav-links a:hover{opacity:1;}
.bae-header-icons{display:flex; gap:20px; align-items:center;}
.bae-icon-btn{
  background:none; border:none; cursor:pointer; color:var(--ice);
  display:flex; align-items:center; justify-content:center;
  width:36px; height:36px; border-radius:50%; transition:background .25s ease;
}
.bae-icon-btn:hover{background:var(--black-soft);}
@media (max-width:860px){.bae-nav-links{display:none;}}

.bae-reveal{opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease;}
.bae-reveal.is-visible{opacity:1; transform:translateY(0);}

/* ===== HERO ===== */
.bae-hero{
  position:relative; min-height:92vh; display:flex; flex-direction:column;
  align-items:center; justify-content:center; text-align:center;
  padding:100px 5vw 60px; overflow:hidden; border-bottom:1px solid var(--line);
}
.bae-hero::before{
  content:''; position:absolute; inset:0;
  background:
    radial-gradient(ellipse 55% 45% at 50% 20%, rgba(236,231,225,0.12), transparent 65%),
    radial-gradient(ellipse 45% 35% at 15% 85%, rgba(43,43,43,0.6), transparent 60%),
    radial-gradient(ellipse 45% 35% at 85% 85%, rgba(43,43,43,0.6), transparent 60%);
  pointer-events:none;
}
.bae-hero-eyebrow{
  position:relative; font-family:var(--mono); font-size:12px; letter-spacing:3px; color:var(--off-white);
  display:flex; align-items:center; gap:10px; margin-bottom:36px;
}
.bae-hero-eyebrow::before, .bae-hero-eyebrow::after{content:''; width:26px; height:1px; background:var(--off-white);}
.bae-hero-word{
  position:relative; font-family:var(--display); font-weight:900;
  font-size:clamp(90px, 18vw, 220px); line-height:0.85; letter-spacing:-4px;
  text-transform:lowercase; color:var(--ice);
}
.bae-hero-word span{color:var(--off-white);}
.bae-hero-tagline{
  position:relative; font-family:var(--mono); font-size:13px; letter-spacing:4px;
  text-transform:uppercase; color:var(--concrete); margin:28px 0 30px;
}
.bae-hero-sub{
  position:relative; font-size:16.5px; line-height:1.7; color:rgba(245,245,243,0.6);
  max-width:480px; margin:0 auto 44px; font-weight:300;
}
.bae-hero-ctas{position:relative; display:flex; gap:16px; justify-content:center; flex-wrap:wrap;}
.bae-btn-primary, .bae-btn-secondary{
  font-family:var(--display); font-size:13px; letter-spacing:1px; text-transform:uppercase;
  font-weight:700; padding:17px 34px; border-radius:2px; cursor:pointer; transition:all .3s ease;
  display:inline-flex; align-items:center; gap:10px; border:1px solid transparent;
}
.bae-btn-primary{background:var(--off-white); color:var(--black); border-color:var(--off-white);}
.bae-btn-primary:hover{background:transparent; color:var(--ice); border-color:var(--off-white); transform:translateY(-2px);}
.bae-btn-secondary{background:transparent; color:var(--ice); border-color:var(--line-strong);}
.bae-btn-secondary:hover{border-color:var(--ice);}

/* ===== TRUST BAR ===== */
.bae-trust-bar{display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid var(--line);}
.bae-trust-item{
  display:flex; align-items:center; justify-content:center; gap:12px; padding:24px 20px;
  border-right:1px solid var(--line); font-size:12.5px; color:rgba(245,245,243,0.7); text-align:center;
}
.bae-trust-item:last-child{border-right:none;}
.bae-trust-item strong{color:var(--off-white); font-weight:700;}
@media (max-width:700px){
  .bae-trust-bar{grid-template-columns:1fr;}
  .bae-trust-item{border-right:none; border-bottom:1px solid var(--line);}
}

/* ===== IMPACT TYPOGRAPHY ===== */
.bae-impact{
  position:relative; min-height:70vh; display:flex; align-items:center; justify-content:center;
  overflow:hidden; border-bottom:1px solid var(--line); background:var(--black);
}
.bae-impact-grid-lines{position:absolute; inset:0; display:grid; grid-template-columns:repeat(12,1fr); pointer-events:none;}
.bae-impact-grid-lines span{border-right:1px solid rgba(245,245,243,0.05); height:100%;}
.bae-impact-content{position:relative; text-align:center; padding:120px 5vw;}
.bae-impact-eyebrow{font-family:var(--mono); font-size:11px; letter-spacing:4px; color:var(--concrete); margin-bottom:8px;}
.bae-impact-title{
  font-family:var(--display); font-weight:900; font-size:clamp(56px, 11vw, 148px);
  line-height:0.88; letter-spacing:-3px; text-transform:uppercase; color:var(--ice); will-change:transform;
}
.bae-impact-title .outline{color:transparent; -webkit-text-stroke:1.5px var(--off-white);}
.bae-impact-meta{
  display:flex; justify-content:space-between; max-width:1400px; margin:36px auto 0; padding:0 5vw;
  font-family:var(--mono); font-size:11.5px; letter-spacing:1px; color:rgba(245,245,243,0.45);
}
@media (max-width:700px){.bae-impact-meta{flex-direction:column; gap:8px; text-align:center;}}

/* ===== SECTION SHARED ===== */
.bae-section{padding:110px 5vw;}
.bae-section-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:56px; gap:24px; flex-wrap:wrap;}
.bae-section-eyebrow{font-family:var(--mono); font-size:11px; letter-spacing:3px; color:var(--off-white); margin-bottom:14px;}
.bae-section-title{font-family:var(--display); font-weight:700; font-size:clamp(26px,3.6vw,40px); letter-spacing:-0.5px; max-width:600px;}
.bae-section-desc{max-width:340px; font-size:14.5px; line-height:1.7; color:rgba(245,245,243,0.5); font-weight:300;}

/* ===== PRODUCT GRID (dinâmico via WooCommerce) ===== */
.bae-drop-section{max-width:1400px; margin:0 auto; border-bottom:1px solid var(--line); padding:110px 5vw;}
.bae-product-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
@media (max-width:960px){.bae-product-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.bae-product-grid{grid-template-columns:1fr;}}
.bae-product-card{background:var(--black); position:relative; overflow:hidden; transition:background .3s ease; display:block;}
.bae-product-card:hover{background:var(--black-soft);}
.bae-product-visual{aspect-ratio:4/5; position:relative; display:flex; align-items:center; justify-content:center; overflow:hidden;}
.bae-product-visual img{width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.8,.2,1);}
.bae-product-card:hover .bae-product-visual img{transform:scale(1.06);}
.bae-product-visual .num{position:absolute; top:18px; left:18px; font-family:var(--mono); font-size:12px; color:rgba(245,245,243,0.7); letter-spacing:2px; z-index:2;}
.bae-swatch-mark{font-family:var(--display); font-weight:900; font-size:15vw; color:rgba(245,245,243,0.07); text-transform:lowercase;}
.bae-product-info{padding:22px 24px 26px; display:flex; justify-content:space-between; align-items:flex-start; border-top:1px solid var(--line);}
.bae-product-name{font-size:14.5px; font-weight:500; margin-bottom:6px; letter-spacing:0.2px;}
.bae-product-tag{font-family:var(--mono); font-size:10.5px; color:rgba(245,245,243,0.4); letter-spacing:1px; text-transform:uppercase;}
.bae-product-price{font-family:var(--mono); font-size:14px; color:var(--off-white); white-space:nowrap;}
.bae-empty-state{padding:60px 20px; text-align:center; color:rgba(245,245,243,0.4); font-size:14px; grid-column:1/-1;}

.sw-1{background:linear-gradient(160deg,#1c2430,#05070a);}
.sw-2{background:linear-gradient(160deg,#22261f,#06070a);}
.sw-3{background:linear-gradient(155deg,#2a1418,#0a0505);}
.sw-4{background:linear-gradient(160deg,#262626,#0a0a0a);}
.sw-5{background:linear-gradient(160deg,#1a1a1a,#050505);}
.sw-6{background:linear-gradient(160deg,#2b2620,#0a0806);}

/* ===== PHILOSOPHY (LIGHT BREAK) ===== */
.bae-philosophy{background:var(--off-white); color:var(--black); border-bottom:1px solid var(--line); padding:110px 5vw;}
.bae-philosophy-inner{max-width:1400px; margin:0 auto; display:grid; grid-template-columns:0.9fr 1.1fr; gap:80px; align-items:center;}
@media (max-width:900px){.bae-philosophy-inner{grid-template-columns:1fr; gap:48px;}}
.bae-philosophy-visual{aspect-ratio:1/1; background:linear-gradient(150deg,#000000,#2B2B2B); display:flex; align-items:center; justify-content:center;}
.bae-philosophy-visual .wordmark-ghost{font-family:var(--display); font-weight:900; font-size:22vw; color:var(--off-white); text-transform:lowercase; opacity:0.9;}
.bae-philosophy-text h3{font-family:var(--display); font-weight:700; font-size:clamp(26px,3.2vw,38px); letter-spacing:-0.5px; line-height:1.35; margin-bottom:28px;}
.bae-philosophy-list{display:flex; flex-direction:column; gap:10px; font-family:var(--mono); font-size:13px; letter-spacing:0.5px; color:rgba(0,0,0,0.55);}
.bae-philosophy-list strong{color:var(--black); font-weight:700;}

/* ===== VALUES STRIP ===== */
.bae-values-strip{max-width:1400px; margin:0 auto; display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-bottom:none;}
@media (max-width:900px){.bae-values-strip{grid-template-columns:repeat(2,1fr);}}
.bae-value-item{background:var(--black); padding:32px 22px;}
.bae-value-item h5{font-family:var(--display); font-weight:700; font-size:14.5px; letter-spacing:0.3px; margin-bottom:10px; color:var(--off-white);}
.bae-value-item p{font-size:12.5px; color:rgba(245,245,243,0.5); line-height:1.6; font-weight:300;}

/* ===== INSTAGRAM FEED ===== */
.bae-insta-section{max-width:1400px; margin:0 auto; border-bottom:1px solid var(--line); padding:110px 5vw;}
.bae-insta-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
@media (max-width:900px){.bae-insta-grid{grid-template-columns:repeat(3,1fr);}}
.bae-insta-tile{aspect-ratio:1/1; position:relative; overflow:hidden; cursor:pointer; display:block;}
.bae-insta-tile .swatch{width:100%; height:100%; transition:transform .5s ease;}
.bae-insta-tile:hover .swatch{transform:scale(1.08);}
.bae-insta-overlay{position:absolute; inset:0; background:rgba(0,0,0,0.45); display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity .3s ease;}
.bae-insta-tile:hover .bae-insta-overlay{opacity:1;}
.bae-insta-overlay svg{color:var(--off-white);}

/* ===== NEWSLETTER ===== */
.bae-newsletter{max-width:1400px; margin:0 auto; text-align:center; border-bottom:1px solid var(--line); padding:110px 5vw;}
.bae-newsletter-inner{max-width:560px; margin:0 auto;}
.bae-newsletter h3{font-family:var(--display); font-weight:700; font-size:clamp(24px,3.2vw,34px); margin-bottom:16px;}
.bae-newsletter p{color:rgba(245,245,243,0.5); font-size:14.5px; margin-bottom:36px; font-weight:300;}
.bae-newsletter-form{display:flex; gap:0; border-bottom:1px solid var(--line-strong); padding-bottom:14px;}
.bae-newsletter-form input{flex:1; background:transparent; border:none; color:var(--ice); font-family:var(--display); font-size:15px; padding:8px 4px;}
.bae-newsletter-form input::placeholder{color:rgba(245,245,243,0.35);}
.bae-newsletter-form input:focus{outline:none;}
.bae-newsletter-form button{background:none; border:none; color:var(--off-white); font-family:var(--mono); font-size:12px; letter-spacing:2px; text-transform:uppercase; cursor:pointer; padding:8px 4px; white-space:nowrap;}
.bae-newsletter-msg{margin-top:16px; font-size:12.5px; font-family:var(--mono); color:var(--off-white); min-height:16px;}

/* ===== FOOTER ===== */
.bae-footer{padding:70px 5vw 30px; max-width:1400px; margin:0 auto;}
.bae-footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:50px;}
@media (max-width:860px){.bae-footer-grid{grid-template-columns:1fr 1fr; row-gap:40px;}}
.bae-footer-logo{font-family:var(--display); font-weight:900; font-size:24px; text-transform:lowercase; margin-bottom:16px;}
.bae-footer-logo span{color:var(--off-white);}
.bae-footer-col p{color:rgba(245,245,243,0.45); font-size:13.5px; line-height:1.7; max-width:260px; font-weight:300;}
.bae-footer-col h4{font-family:var(--mono); font-size:11px; letter-spacing:2px; text-transform:uppercase; color:rgba(245,245,243,0.4); margin-bottom:18px;}
.bae-footer-col ul{list-style:none; margin:0; padding:0;}
.bae-footer-col li{margin-bottom:12px;}
.bae-footer-col a{font-size:13.5px; color:rgba(245,245,243,0.65); transition:color .25s ease;}
.bae-footer-col a:hover{color:var(--off-white);}
.bae-footer-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:28px; border-top:1px solid var(--line); flex-wrap:wrap; gap:16px;}
.bae-footer-bottom span{font-family:var(--mono); font-size:11px; color:rgba(245,245,243,0.3); letter-spacing:0.5px;}
.bae-socials{display:flex; gap:16px;}
.bae-socials a{width:34px; height:34px; border:1px solid var(--line-strong); border-radius:50%; display:flex; align-items:center; justify-content:center; transition:border-color .25s ease, color .25s ease;}
.bae-socials a:hover{border-color:var(--off-white); color:var(--off-white);}

/* ===== COLLAB PAGE ===== */
.bae-how-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:56px;}
@media (max-width:900px){.bae-how-grid{grid-template-columns:repeat(2,1fr);}}
.bae-how-item{background:var(--black); padding:34px 26px;}
.bae-how-item .step-num{font-family:var(--mono); font-size:12px; color:rgba(245,245,243,0.4); letter-spacing:2px; margin-bottom:18px; display:block;}
.bae-how-item h4{font-family:var(--display); font-weight:700; font-size:16.5px; margin-bottom:10px;}
.bae-how-item p{font-size:13px; line-height:1.65; color:rgba(245,245,243,0.5); font-weight:300;}

.bae-collab-card{display:grid; grid-template-columns:0.9fr 1.1fr; gap:0; border:1px solid var(--line-strong); margin-top:56px;}
@media (max-width:900px){.bae-collab-card{grid-template-columns:1fr;}}
.bae-collab-visual{aspect-ratio:4/5; position:relative; display:flex; align-items:flex-end; padding:28px; overflow:hidden;}
.bae-collab-visual img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.bae-collab-visual .piece-tag{position:relative; z-index:2; font-family:var(--mono); font-size:11px; letter-spacing:1.5px; color:var(--off-white); background:rgba(0,0,0,0.5); padding:8px 14px; border:1px solid var(--line-strong);}
.bae-collab-body{padding:48px; display:flex; flex-direction:column; justify-content:center; border-left:1px solid var(--line);}
@media (max-width:900px){.bae-collab-body{border-left:none; border-top:1px solid var(--line); padding:36px 28px;}}
.bae-artist-row{display:flex; align-items:center; gap:14px; margin-bottom:26px;}
.bae-artist-avatar{width:48px; height:48px; border-radius:50%; background:linear-gradient(155deg,#2b2620,#0a0806); border:1px solid var(--line-strong);}
.bae-artist-name{font-weight:700; font-size:15px;}
.bae-artist-handle{font-family:var(--mono); font-size:12px; color:rgba(245,245,243,0.45);}
.bae-collab-body h3{font-family:var(--display); font-weight:700; font-size:clamp(24px,2.6vw,32px); letter-spacing:-0.3px; margin-bottom:16px;}
.bae-artist-bio{font-size:14.5px; line-height:1.75; color:rgba(245,245,243,0.6); font-weight:300; margin-bottom:22px; padding-left:16px; border-left:2px solid var(--off-white);}
.bae-piece-description{font-size:14px; line-height:1.7; color:rgba(245,245,243,0.55); font-weight:300; margin-bottom:28px;}
.bae-piece-description strong{color:var(--ice); font-weight:500;}
.bae-collab-footer-row{display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; padding-top:24px; border-top:1px solid var(--line);}
.bae-collab-price{font-family:var(--mono); font-size:20px; color:var(--off-white);}

.bae-archive-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:56px;}
@media (max-width:900px){.bae-archive-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.bae-archive-grid{grid-template-columns:1fr;}}
.bae-archive-card{background:var(--black); overflow:hidden; transition:background .3s ease; display:block;}
.bae-archive-card:hover{background:var(--black-soft);}
.bae-archive-visual{aspect-ratio:4/5; position:relative; overflow:hidden;}
.bae-archive-visual img{width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.8,.2,1);}
.bae-archive-card:hover .bae-archive-visual img{transform:scale(1.06);}
.bae-archive-visual .drop-badge{position:absolute; top:16px; left:16px; font-family:var(--mono); font-size:10.5px; letter-spacing:1.5px; color:rgba(245,245,243,0.7); z-index:2;}
.bae-archive-info{padding:20px 22px 24px; border-top:1px solid var(--line);}
.bae-archive-artist{font-family:var(--mono); font-size:10.5px; letter-spacing:1px; color:rgba(245,245,243,0.4); text-transform:uppercase; margin-bottom:6px;}
.bae-archive-piece{font-size:14.5px; font-weight:500;}

.bae-apply{max-width:1000px; margin:0 auto; text-align:center; border-bottom:1px solid var(--line); padding:110px 5vw;}
.bae-apply p.lead{max-width:520px; margin:0 auto 48px; color:rgba(245,245,243,0.55); font-size:15px; line-height:1.7; font-weight:300;}
.bae-apply-form{display:grid; grid-template-columns:1fr 1fr; gap:24px; text-align:left;}
@media (max-width:700px){.bae-apply-form{grid-template-columns:1fr;}}
.bae-form-field{display:flex; flex-direction:column; gap:8px;}
.bae-form-field.full{grid-column:1/-1;}
.bae-form-field label{font-family:var(--mono); font-size:11px; letter-spacing:1.5px; text-transform:uppercase; color:rgba(245,245,243,0.5);}
.bae-form-field input, .bae-form-field textarea{background:transparent; border:none; border-bottom:1px solid var(--line-strong); color:var(--ice); font-family:var(--display); font-size:15px; padding:10px 2px; resize:none;}
.bae-form-field input::placeholder, .bae-form-field textarea::placeholder{color:rgba(245,245,243,0.3);}
.bae-form-field input:focus, .bae-form-field textarea:focus{outline:none; border-color:var(--off-white);}
.bae-honeypot{position:absolute; left:-9999px;}
.bae-apply-submit{grid-column:1/-1; display:flex; justify-content:center; margin-top:12px;}
.bae-form-msg{grid-column:1/-1; text-align:center; font-family:var(--mono); font-size:12.5px; color:var(--off-white); min-height:16px; padding-top:8px;}
