
:root{--bg:#080808;--panel:#121212;--panel2:#191919;--gold:#d6ab3e;--gold2:#f0cf76;--text:#f7f4ed;--muted:#bdb9ae;--line:#2a2a2a}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}a{color:inherit}.wrap{width:min(1120px,92%);margin:auto}
header{position:sticky;top:0;z-index:20;background:rgba(8,8,8,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}nav{display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:24px}.brand{font-weight:900;letter-spacing:.11em;text-transform:uppercase;text-decoration:none}.brand span{color:var(--gold)}.links{display:flex;gap:22px;flex-wrap:wrap}.links a{text-decoration:none;color:#ddd;font-size:.95rem;padding:24px 0 20px;border-bottom:3px solid transparent}.links a:hover,.links a.active{color:var(--gold2);border-color:var(--gold)}
.hero{padding:72px 0 56px;background:radial-gradient(circle at 20% 20%,#202020 0,#0b0b0b 38%,#080808 70%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.eyebrow{color:var(--gold2);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.83rem}.hero h1,.page-hero h1{font-size:clamp(2.6rem,6vw,5.4rem);line-height:.95;margin:.35em 0 .25em;text-transform:uppercase;letter-spacing:-.035em}.hero h1 span,.page-hero h1 span{color:var(--gold)}.hero p,.page-hero p{color:#d4d0c8;max-width:720px;font-size:1.08rem}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-block;padding:13px 20px;border-radius:7px;text-decoration:none;font-weight:800;border:1px solid var(--gold)}.btn.primary{background:var(--gold);color:#080808}.btn.secondary{color:var(--gold2)}
.hero-photo{position:relative}.hero-photo img{width:100%;height:430px;object-fit:cover;object-position:center 47%;display:block;border-radius:14px;border:1px solid #333;box-shadow:0 28px 70px rgba(0,0,0,.48)}.hero-photo:after{content:"ALCHEMY BJJ";position:absolute;left:16px;bottom:14px;background:rgba(0,0,0,.72);padding:8px 12px;border-left:3px solid var(--gold);font-size:.8rem;font-weight:900;letter-spacing:.12em}
.page-hero{padding:58px 0 34px;background:linear-gradient(180deg,#151515,#090909);border-bottom:1px solid #1e1e1e}.page-hero h1{font-size:clamp(2.4rem,5vw,4.5rem)}
section{padding:72px 0}.section-title{margin:0 0 8px;font-size:clamp(2rem,4vw,3.3rem);text-transform:uppercase}.section-title span{color:var(--gold)}.section-sub{color:var(--muted);margin:0 0 30px;max-width:760px}
.preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.preview-card{background:linear-gradient(180deg,#171717,#101010);border:1px solid #2b2b2b;border-radius:14px;padding:24px}.preview-card h3{margin:0 0 8px;color:var(--gold2)}.preview-card p{color:#d4d0c8;margin:0 0 18px}.preview-card a{text-decoration:none;font-weight:800;color:var(--gold2)}

.about-home{background:linear-gradient(180deg,#0b0b0b,#101010);border-top:1px solid #181818;border-bottom:1px solid #181818}.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:start}.about-grid>div:first-child p{color:#d4d0c8;font-size:1.03rem;max-width:760px}.mission-card{background:linear-gradient(180deg,#171717,#101010);border:1px solid #2b2b2b;border-radius:14px;padding:26px;border-left:3px solid var(--gold)}.mission-card h3{margin:0 0 12px;color:var(--gold2);font-size:1.35rem}.mission-card p{color:#d4d0c8}.mission-card .btn{margin-top:8px}
.schedule{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.day{background:linear-gradient(180deg,#171717,#101010);border:1px solid #2b2b2b;border-radius:12px;padding:20px;min-height:180px}.day h3{margin:0 0 14px;color:var(--gold2);text-transform:uppercase;letter-spacing:.08em}.class{padding:9px 0;border-top:1px solid #262626}.class:first-of-type{border-top:none}.class b{display:block}.class span{color:var(--muted);font-size:.93rem}
.programs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.program-card{background:linear-gradient(180deg,#171717,#101010);border:1px solid #2b2b2b;border-radius:14px;overflow:hidden}.program-card img{width:100%;height:240px;object-fit:cover;display:block;border-bottom:1px solid #2b2b2b}.program-card .program-copy{padding:24px}.program-card h3{margin:0 0 10px;color:var(--gold2);font-size:1.25rem}.program-card p{margin:0;color:#d4d0c8;line-height:1.6}
.reviews-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:stretch}.rating-card,.review-card{background:linear-gradient(180deg,#171717,#101010);border:1px solid #2b2b2b;border-radius:14px;padding:24px}.rating-number{font-size:4.2rem;line-height:1;font-weight:900;color:var(--gold2);margin:8px 0}.stars{color:var(--gold);font-size:1.5rem;letter-spacing:.12em}.review-count{color:var(--muted);margin-top:8px}.review-themes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.review-card h3{margin:0 0 8px;color:var(--gold2);font-size:1.05rem}.review-card p{margin:0;color:#d4d0c8}.review-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.review-note{font-size:.86rem;color:#8f8b82;margin-top:15px}.google-mark{font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#fff}.google-mark span{color:var(--gold2)}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px}.contact-card,.form-card{background:var(--panel);border:1px solid #282828;border-radius:14px;padding:26px}.contact-card strong{color:var(--gold2)}form{display:grid;gap:13px}label{font-size:.9rem;color:#ddd}input,textarea,select{width:100%;background:#0a0a0a;border:1px solid #343434;color:#fff;border-radius:7px;padding:12px;font:inherit}textarea{min-height:120px;resize:vertical}button{cursor:pointer;border:0}
footer{padding:34px 0;color:#aaa;border-top:1px solid #202020;font-size:.9rem}.foot{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
@media(max-width:900px){.hero-grid,.reviews-grid,.contact-grid,.about-grid{grid-template-columns:1fr}.programs,.preview-grid{grid-template-columns:1fr 1fr}.schedule{grid-template-columns:repeat(2,1fr)}.links{gap:14px}.links a{font-size:.9rem}.hero-photo img{height:340px}}
@media(max-width:640px){nav{align-items:flex-start;flex-direction:column;padding:14px 0}.links{width:100%;gap:10px 14px}.links a{padding:4px 0 8px}.programs,.preview-grid,.schedule{grid-template-columns:1fr}.hero{padding-top:48px}.hero-photo img{height:270px}.wrap{width:min(94%,1120px)}}
