
:root{
  --black:#080808;
  --black-2:#141414;
  --red:#e31d2b;
  --red-dark:#a80f19;
  --white:#ffffff;
  --soft:#f5f5f5;
  --grey:#a7a7a7;
  --line:#2b2b2b;
  --shadow:0 24px 70px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--black);color:var(--white)}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.topbar{background:var(--red);color:#fff;font-size:12px;font-weight:800}
.topbar .container{height:34px;display:flex;align-items:center;justify-content:space-between}
.header{position:sticky;top:0;z-index:30;background:rgba(8,8,8,.97);backdrop-filter:blur(10px);border-bottom:1px solid #202020}
.nav{height:88px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:14px}
.brand img{width:66px;height:66px;border-radius:50%;object-fit:cover;border:3px solid #fff}
.brand-copy strong{display:block;font-size:18px;letter-spacing:.11em}
.brand-copy small{font-size:11px;color:var(--red);letter-spacing:.05em}
.menu{display:flex;align-items:center;gap:22px;font-size:13px;font-weight:800}
.menu a{position:relative;padding:34px 0}
.menu a:not(.cta):after{content:"";position:absolute;left:0;bottom:22px;width:0;height:2px;background:var(--red);transition:.25s}
.menu a:hover:after{width:100%}
.menu .cta{padding:12px 17px;background:var(--red);color:#fff;border-radius:3px}
.menu-btn{display:none;background:none;border:0;color:#fff;font-size:28px}
.hero{min-height:760px;position:relative;display:flex;align-items:center;overflow:hidden;background:
linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.66) 50%,rgba(0,0,0,.15)),
radial-gradient(circle at 78% 36%,rgba(227,29,43,.28),transparent 30%),
linear-gradient(135deg,#050505,#1d1d1d)}
.hero:before{content:"";position:absolute;right:-90px;top:85px;width:620px;height:620px;background:url('logo-bake.png') center/contain no-repeat;opacity:.13}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:12px;background:linear-gradient(90deg,var(--red) 0 55%,#fff 55% 72%,#000 72%)}
.hero-content{position:relative;z-index:2;padding:110px 0;max-width:800px}
.eyebrow{text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.18em;color:var(--red);margin-bottom:18px}
.hero h1{font-size:clamp(54px,8vw,96px);line-height:.96;letter-spacing:-.055em;margin:0 0 24px}
.hero h1 span{color:var(--red)}
.hero p{font-size:19px;line-height:1.75;color:#e8e8e8;max-width:680px}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:3px;font-size:13px;font-weight:900;border:1px solid transparent;transition:.25s}
.btn.red{background:var(--red);color:#fff}
.btn.red:hover{background:var(--red-dark);transform:translateY(-2px)}
.btn.white{background:#fff;color:#000}
.btn.white:hover{background:#eee;transform:translateY(-2px)}
.btn.ghost{border-color:#fff;color:#fff}
.stats{position:relative;z-index:3;margin-top:-34px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#111;border:1px solid #2a2a2a;box-shadow:var(--shadow)}
.stats article{padding:27px;border-right:1px solid #2a2a2a}
.stats article:last-child{border-right:0}
.stats strong{display:block;color:var(--red);font-size:21px;margin-bottom:7px}
.stats span{font-size:12px;color:#bdbdbd}
.section{padding:108px 0}
.section-dark{background:#090909}
.section-deep{background:#111}
.section-red{background:linear-gradient(135deg,var(--red-dark),var(--red));color:#fff}
.section-white{background:#f4f4f4;color:#111}
.section-white p{color:#555}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:78px;align-items:center}
h2{font-size:clamp(38px,4vw,58px);line-height:1.06;letter-spacing:-.04em;margin:12px 0 24px}
.lead{font-size:19px;line-height:1.72;color:#e7e7e7}
.section-white .lead{color:#333}
p{color:#b7b7b7;line-height:1.8}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.checks span{font-size:13px;font-weight:800;color:#eee}
.section-white .checks span{color:#222}
.logo-panel{background:var(--black-2);border:1px solid #222;padding:35px;box-shadow:var(--shadow);position:relative}
.logo-panel:after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(90deg,var(--red),#000)}
.logo-panel img{width:100%;max-width:520px;margin:auto}
.heading{text-align:center;max-width:760px;margin:0 auto 52px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:#111;border:1px solid #2a2a2a;padding:30px 26px;min-height:285px;transition:.25s;position:relative;overflow:hidden}
.card:before{content:"";position:absolute;left:0;top:0;width:100%;height:5px;background:var(--red)}
.card:nth-child(even):before{background:#fff}
.card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.card .num{font-size:12px;color:var(--red);font-weight:900;letter-spacing:.15em}
.card h3{font-size:21px;margin:25px 0 13px}
.card p{font-size:14px}
.card a{font-size:12px;font-weight:900;color:var(--red)}
.sensei-visual{min-height:520px;background:
linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.68)),
linear-gradient(135deg,#3a3a3a,#0a0a0a);
display:flex;align-items:flex-end;padding:28px;box-shadow:var(--shadow);position:relative}
.sensei-visual:before{content:"🥋";position:absolute;inset:0;display:grid;place-items:center;font-size:250px;filter:grayscale(1);opacity:.78}
.sensei-label{position:relative;z-index:2;background:#000;padding:14px 18px;border-left:6px solid #fff}
.sensei-label strong{display:block;font-size:18px}
.sensei-label span{color:#ccc;font-size:12px}
.red-section-copy p{color:#f2dfe1}
.shushikan-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:78px;align-items:center}
.kanji-panel{min-height:420px;background:#000;border:1px solid #2c2c2c;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:var(--shadow)}
.kanji-panel img{width:280px;height:280px}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.news-card{background:#111;border:1px solid #2a2a2a}
.news-img{height:220px;display:grid;place-items:center;font-size:58px;background:linear-gradient(135deg,#1a1a1a,#6f0911)}
.news-body{padding:24px}
.news-body small{color:var(--red);font-weight:900;text-transform:uppercase}
.news-body h3{line-height:1.4}
.news-body p{font-size:13px}
.news-body a{font-size:12px;color:var(--red);font-weight:900}
.table{border:1px solid #2b2b2b;background:#111;overflow:hidden}
.tr{display:grid;grid-template-columns:1.2fr .9fr .9fr 1fr;padding:20px 24px;border-bottom:1px solid #2b2b2b;font-size:13px}
.tr:last-child{border-bottom:0}
.tr.head{background:var(--red);color:#fff;font-weight:900;text-transform:uppercase;font-size:11px;letter-spacing:.08em}
.cta-section{background:linear-gradient(135deg,#080808,#1b1b1b);border-top:8px solid var(--red)}
.cta-box{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input,select,textarea{width:100%;padding:14px;border:1px solid #3a3a3a;background:#111;color:#fff;font:inherit}
textarea{grid-column:1/-1;min-height:125px}
.form-full{grid-column:1/-1}
.page-hero{padding:100px 0;background:
linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.65)),
radial-gradient(circle at 85% 30%,rgba(227,29,43,.2),transparent 30%),
#111;position:relative;overflow:hidden}
.page-hero:after{content:"BAKE";position:absolute;right:-20px;top:5px;font-size:165px;font-weight:900;color:rgba(255,255,255,.035)}
.page-hero h1{font-size:clamp(46px,6vw,76px);margin:10px 0}
.page-hero p{max-width:720px}
.breadcrumbs{font-size:12px;color:var(--red)}
.doc-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.doc{background:#111;border:1px solid #2a2a2a;padding:20px;display:flex;align-items:center;gap:16px}
.doc-icon{width:48px;height:48px;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:900}
.timeline{border-left:4px solid var(--red);padding-left:30px}
.timeline article{margin-bottom:32px}
.timeline small{color:#fff;font-weight:900}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gallery div{aspect-ratio:4/3;background:linear-gradient(135deg,#181818,#6b0812);display:grid;place-items:center;font-size:48px;border:1px solid #2b2b2b}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}
.contact-card{background:#111;border:1px solid #2b2b2b;padding:28px}
footer{background:#000;padding:70px 0 24px;border-top:8px solid var(--red)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:46px}
.footer-grid h4{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:var(--red)}
.footer-grid p,.footer-grid a{display:block;color:#999;font-size:13px;line-height:1.9}
.footer-bottom{border-top:1px solid #222;margin-top:46px;padding-top:20px;display:flex;justify-content:space-between;color:#666;font-size:11px}
@media(max-width:980px){
 .menu{display:none;position:absolute;top:88px;left:0;right:0;background:#090909;padding:24px;flex-direction:column;align-items:flex-start}
 .menu.open{display:flex}.menu-btn{display:block}
 .stats-grid,.cards,.news-grid{grid-template-columns:1fr 1fr}
 .grid-2,.shushikan-grid,.cta-box,.contact-grid{grid-template-columns:1fr}
 .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
 .container{width:min(100% - 26px,1180px)}
 .brand-copy strong{font-size:14px}
 .hero{min-height:680px}.hero h1{font-size:52px}
 .section{padding:74px 0}.stats{margin-top:0}
 .stats-grid,.cards,.news-grid,.doc-list,.gallery{grid-template-columns:1fr}
 .stats article{border-right:0;border-bottom:1px solid #2a2a2a}
 .checks,form{grid-template-columns:1fr}
 .tr{grid-template-columns:1fr 1fr;gap:8px}.tr.head{display:none}
 .footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}
}
