:root{--ink:#171714;--bone:#f3efe5;--paper:#e8e2d5;--red:#b72e20;--line:rgba(23,23,20,0.22);--white:#FFFFFF;--muted-ink:#625D54;--bright-red:#b72e20;--button-hover-dark:#8f2117;--soft-white:#F8F5ED;--red-shadow:#5E1B12;--display-font:Arial,Helvetica,sans-serif;--content-gutter:clamp(32px,7vw,112px);--content-max:1240px;--section-gutter:max(var(--content-gutter),calc((100vw - var(--content-max)) / 2))} *{box-sizing:border-box} html{min-height:100%;scroll-behavior:smooth;background:var(--bone)} body{min-height:100%;margin:0;background:var(--bone);color:var(--ink);font-family:Arial,Helvetica,sans-serif} header,nav,main,section,article,aside,footer,figure{display:block} main,section,article,figure{width:100%} a{color:inherit;text-decoration:none} a,button,summary,[role="button"]{-webkit-tap-highlight-color:transparent} .skip-link{position:fixed;left:12px;top:-60px;z-index:100;background:white;padding:12px 16px} .skip-link:focus{top:12px} nav{display:flex;gap:34px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em} nav a{text-underline-offset:5px} nav a:hover{text-decoration:underline} .button span{margin-left:8px} .hero{min-height:100svh;display:grid;grid-template-columns:56% 44%;position:relative;overflow:hidden;background:var(--ink);color:var(--bone)} .hero-copy{padding:clamp(148px,18vh,190px) clamp(24px,5vw,80px) 150px;position:relative;z-index:2} .eyebrow{margin:0 0 30px;display:flex;align-items:center;gap:10px;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase} .eyebrow span{width:28px;height:2px;background:var(--red)} h1{margin:0;max-width:760px;font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(72px,9.4vw,152px);font-weight:900;line-height:.76;letter-spacing:-.045em;text-transform:uppercase} h1 em{color:var(--red);font-style:normal} .hero-lede{max-width:590px;margin:34px 0 0;color:#c9c4b9;font-size:clamp(16px,1.35vw,21px);line-height:1.55} .hero-actions{display:flex;align-items:center;gap:34px;margin-top:36px} .button{display:inline-flex;align-items:center;justify-content:center;min-height:55px;padding:0 24px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;transition:transform .18s ease,background .18s ease} .button:hover{transform:translateY(-2px)} .button-primary{background:var(--red);color:white} .button-primary:hover{background:#f04a2e} .button>span[aria-hidden="true"],.top-cta>span[aria-hidden="true"],.mobile-trial>span[aria-hidden="true"]{display:none} .hero-art{position:relative;min-height:100%;overflow:hidden;background:#dcd5c6;color:var(--ink)} .tsd-hero-art::after{content: '';position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,23,20,.05),rgba(23,23,20,.62))} .tsd-hero-art>img{width:100%;height:100%;object-fit:cover;object-position:57% center;filter:contrast(1.04)} .tsd-hero-art>img.home-hero-image{width:100%;height:100%;min-width:100%;min-height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center;filter:none} .tsd-hero-art .art-caption{color:var(--bone);border-color:var(--bone)} .tsd-hero-art .art-caption{z-index:3} .hero-art::before{content: '';position:absolute;inset:0;opacity:.2;background-image:radial-gradient(#171714 0.65px,transparent 0.65px);background-size:5px 5px} .art-caption{position:absolute;z-index:2;right:7%;bottom:5%;margin:0;font:900 clamp(28px,3.2vw,50px)/.85 Impact,sans-serif;text-align:right;letter-spacing:-.025em} .hero-proof{position:absolute;left:0;right:44%;bottom:0;min-height:110px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;padding:0 clamp(24px,5vw,80px);border-top:1px solid rgba(243,239,229,.2);background:var(--ink);z-index:3} .hero-proof p{display:flex;align-items:center;gap:13px;margin:0} .hero-proof strong{font:900 clamp(24px,2.4vw,38px) Impact,sans-serif} .hero-proof span{color:#a9a49a;font-size:9px;line-height:1.45;text-transform:uppercase;letter-spacing:.08em} @media (max-width:900px){nav{display:none} .hero{grid-template-columns:1fr} .hero-copy{padding-top:130px;padding-bottom:60px;min-height:700px} .hero-art{min-height:640px} .hero-proof{position:relative;right:auto;padding-top:28px;padding-bottom:28px;gap:20px}} @media (max-width:560px){.hero-copy{padding-left:20px;padding-right:20px;min-height:650px} h1{font-size:clamp(66px,22vw,110px)} .hero-actions{align-items:flex-start;flex-direction:column;gap:22px} .hero-proof{grid-template-columns:1fr}} @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto} .button{transition:none}} .section-pad{padding:clamp(88px,11vw,168px) var(--section-gutter)} .kicker{margin:0 0 22px;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.17em;text-transform:uppercase} h2{margin:0;font:900 clamp(58px,7.4vw,118px)/.8 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;text-transform:uppercase} h2 em{color:var(--red);font-style:normal} .programmes{background:var(--bone)} .section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;margin-bottom:70px} .section-heading .kicker{grid-column:1 / -1} .section-intro{justify-self:end;max-width:460px;margin:0 0 6px;font-size:17px;line-height:1.65} .programme-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)} .programme-card{min-height:520px;display:flex;flex-direction:column;padding:clamp(24px,3vw,45px);border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s ease,color .2s ease} .programme-card:hover{background:var(--ink);color:var(--bone)} .card-topline{display:flex;justify-content:space-between;gap:20px;color:#777268;font-size:9px;font-weight:800;letter-spacing:.11em} .card-topline span:first-child{color:var(--red)} .programme-card h3{margin:76px 0 20px;font:900 clamp(35px,3.3vw,54px)/.9 Impact,sans-serif;text-transform:uppercase} .programme-card>p{max-width:390px;margin:0;font-size:15px;line-height:1.65} .programme-card ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:28px 0 0;padding:0 0 20px;list-style:none} .programme-card li{padding:7px 10px;border:1px solid currentColor;border-radius:20px;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.7} .programme-card a{display:flex;justify-content:space-between;margin-top:auto;padding-top:30px;border-top:1px solid currentColor;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase} .programme-card a span{color:var(--red);font-size:18px} .manifesto{min-height:490px;display:grid;place-content:center;padding:90px 5vw;overflow:hidden;background:var(--red);color:var(--ink);text-align:center} .manifesto-small{margin:0 0 6px;font-size:clamp(14px,1.4vw,23px);font-weight:900;letter-spacing:.16em} .manifesto-large{margin:0;white-space:nowrap;font:900 clamp(66px,11.5vw,184px)/.9 Impact,sans-serif} .manifesto-large em{color:var(--bone);font-style:normal} .belt-line{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:45px;font-size:9px;font-weight:900;letter-spacing:.14em} .belt-line i{width:6px;height:6px;border-radius:50%;background:var(--ink)} .method{display:grid;grid-template-columns:48% 52%;gap:clamp(50px,8vw,130px);background:var(--ink);color:var(--bone)} .method-art{position:relative;min-height:730px;overflow:hidden;background:#d7d0c2;color:var(--ink)} .method-art::after{content: '';position:absolute;inset:0;opacity:.18;background-image:radial-gradient(#171714 0.6px,transparent 0.6px);background-size:5px 5px} .method-art>p{position:absolute;z-index:2;left:13%;top:7%;margin:0;font:700 clamp(100px,13vw,200px)/.86 Georgia,serif} .method-note{position:absolute;z-index:3;left:8%;bottom:6%;color:var(--white);font:900 22px/1 Impact,sans-serif;letter-spacing:.03em;text-shadow:0 2px 12px rgba(0,0,0,.65)} .method-copy{align-self:center} .method-copy h2{font-size:clamp(55px,6.5vw,105px)} .method-lede{max-width:660px;margin:35px 0 50px;color:#bab5aa;font-size:clamp(18px,1.5vw,24px);line-height:1.5} .method-points{border-top:1px solid rgba(243,239,229,.2)} .method-points article{display:grid;grid-template-columns:54px 1fr;gap:22px;padding:27px 0;border-bottom:1px solid rgba(243,239,229,.2)} .method-points article>span{color:var(--red);font-size:10px;font-weight:900} .method-points h3{margin:0 0 7px;font-size:16px;text-transform:uppercase;letter-spacing:.05em} .method-points p{max-width:530px;margin:0;color:#9d988e;font-size:13px;line-height:1.6} .testimonial{--kanji-watermark:rgba(230,59,32,.11);position:relative;display:grid;grid-template-columns:90px minmax(0,1fr) minmax(300px,390px);grid-template-rows:auto auto;align-items:center;gap:26px clamp(24px,3vw,48px);background:#121210;color:var(--bone)} .quote-mark{grid-column:1;grid-row:1;margin:-24px 0 0;color:var(--red);font:900 160px/.8 Georgia,serif} blockquote{margin:0} .testimonial blockquote{grid-column:2;grid-row:1} blockquote>p{margin:0;font:900 clamp(36px,4.3vw,70px)/1.05 Impact,sans-serif;text-transform:uppercase;letter-spacing:-.015em} blockquote footer{display:flex;gap:18px;align-items:center;margin-top:38px;font-size:9px;letter-spacing:.12em} blockquote footer span{color:#777268} .testimonial blockquote footer span{color:#aaa59a} .testimonial blockquote footer{gap:22px;margin-top:42px} .testimonial blockquote footer strong{color:var(--bone);font-size:14px;letter-spacing:.1em} .testimonial blockquote footer span{font-size:12px;font-weight:700;letter-spacing:.09em} .testimonial-portrait{grid-column:3;grid-row:1 / span 2;align-self:stretch;width:100%;height:100%;min-height:430px;object-fit:cover;object-position:58% center;-webkit-mask-image:radial-gradient(ellipse 82% 100% at 58% 50%,#000 56%,rgba(0,0,0,.9) 70%,transparent 100%);mask-image:radial-gradient(ellipse 82% 100% at 58% 50%,#000 56%,rgba(0,0,0,.9) 70%,transparent 100%)} .testimonial-reviews-button{grid-column:2;grid-row:2;justify-self:start;align-self:start;white-space:nowrap} .timetable{background:var(--bone)} .timetable-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:70px} .timetable-head>p{justify-self:end;max-width:460px;margin:0 0 5px;font-size:16px;line-height:1.65} .schedule{border-top:2px solid var(--ink)} .schedule-row{min-height:82px;display:grid;grid-template-columns:70px 100px 1fr 150px 60px;align-items:center;border-bottom:1px solid var(--line)} .schedule-row .day,.schedule-row .level{color:#757067;font-size:9px;font-weight:800;letter-spacing:.12em} .schedule-row strong{font:900 24px Impact,sans-serif;letter-spacing:.02em} .class-name{font-size:clamp(20px,2vw,31px);font-weight:800;text-transform:uppercase;letter-spacing:-.02em} .schedule-action{display:grid;justify-items:end} .schedule-row a{display:grid;place-items:center;width:42px;height:42px;justify-self:end;border:1px solid var(--ink);border-radius:50%;transition:background .18s ease,color .18s ease} .schedule-row a:hover{background:var(--red);color:white;border-color:var(--red)} .faq{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);gap:clamp(40px,7vw,120px);background:var(--paper)} .faq h2{font-size:clamp(55px,6.7vw,106px)} .faq-list{border-top:2px solid var(--ink)} details{border-bottom:1px solid var(--line)} summary{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font-size:16px;font-weight:800} summary::-webkit-details-marker{display:none} summary span{color:var(--red);font-size:25px;font-weight:400;transition:transform .18s ease} details[open] summary span{transform:rotate(45deg)} details>p{max-width:650px;margin:-3px 45px 28px 0;color:#68645c;font-size:14px;line-height:1.7} .trial{position:relative;display:flex;flex-direction:column;align-items:center;overflow:hidden;background:var(--red);text-align:center} .trial::before{content: '柔術';position:absolute;right:-2%;bottom:-25%;color:rgba(23,23,20,.08);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:min(42vw,620px);font-weight:700;line-height:.78;letter-spacing:-.14em;writing-mode:vertical-rl;text-orientation:upright} .trial>*{position:relative;z-index:1} .trial .kicker{color:var(--ink)} .trial h2{font-size:clamp(76px,12vw,188px)} .trial h2 em{color:var(--bone)} .trial h2 + .button{margin-top:clamp(28px,3vw,44px)} .trial>p:not(.kicker){max-width:520px;margin:35px 0 30px;font-size:17px;line-height:1.6} .trial-stamp{display:flex;flex-direction:column;width:112px;height:112px;justify-content:center;border:2px solid var(--ink);border-radius:50%;margin-bottom:36px;transform:rotate(-9deg);font-size:8px;font-weight:900;letter-spacing:.12em} .trial-stamp strong{margin:3px 0;font:900 25px Impact,sans-serif;letter-spacing:.02em} .button-dark{background:var(--ink);color:white} .button-dark:hover{background:#31312d} .trial small{margin-top:22px;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase} .footer{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:45px;padding-top:80px;padding-bottom:35px;background:var(--ink)} .footer h3{margin:0 0 15px;color:#8c887f;font-size:8px;letter-spacing:.15em} .footer p,.footer address{margin:0;font-style:normal;font-size:12px;line-height:1.8} .footer a:hover{color:var(--red)} .footer-bottom{grid-column:1 / -1;margin-top:70px !important;padding-top:24px;color:#716d65} @media (max-width:980px){.section-heading,.timetable-head,.faq{grid-template-columns:1fr} .section-intro,.timetable-head>p{justify-self:start;margin-top:30px} .programme-grid{grid-template-columns:1fr} .programme-card{min-height:440px} .method{grid-template-columns:1fr} .method-art{min-height:640px} .testimonial{grid-template-columns:70px 1fr;grid-template-rows:auto auto auto} .testimonial-portrait{grid-column:2;grid-row:2;width:100%;height:320px;min-height:0;margin-top:10px;object-position:58% 26%;-webkit-mask-image:radial-gradient(ellipse 90% 110% at 58% 46%,#000 56%,rgba(0,0,0,.92) 74%,transparent 100%);mask-image:radial-gradient(ellipse 90% 110% at 58% 46%,#000 56%,rgba(0,0,0,.92) 74%,transparent 100%)} .testimonial-reviews-button{grid-column:2;grid-row:3;justify-self:start;margin-top:10px} .faq{gap:60px}} @media (max-width:680px){.section-pad{padding-top:80px;padding-bottom:80px} .programme-card{min-height:420px} .manifesto{min-height:380px} .manifesto-large{white-space:normal} .belt-line{gap:10px} .method-art{min-height:500px} .testimonial{grid-template-columns:1fr} .quote-mark{grid-column:1;grid-row:1;height:80px} .testimonial blockquote{grid-column:1;grid-row:2} .testimonial-portrait{grid-column:1;grid-row:3;height:280px;margin-top:0} .testimonial-reviews-button{grid-column:1;grid-row:4} .schedule-row{grid-template-columns:46px 74px 1fr 42px;min-height:75px} .schedule-row .level{display:none} .schedule-row strong{font-size:19px} .class-name{font-size:17px} .schedule-row a{width:36px;height:36px} .footer{grid-template-columns:1fr 1fr} .footer-bottom span{display:none}} .hero h1{font-size:clamp(66px,8.2vw,132px)} .image-card>img{width:100%;height:168px;object-fit:cover;object-position:center 44%;margin-bottom:30px;filter:contrast(1.03)} .image-card:nth-child(2)>img,.image-card:nth-child(3)>img{object-position:center 38%} .image-card h3{margin-top:32px} .button-outline{margin-top:34px;border:1px solid rgba(243,239,229,.6);color:var(--bone)} .button-outline:hover{background:var(--bone);color:var(--ink)} .photo-method{background:var(--ink)} .photo-method::after{background:linear-gradient(180deg,transparent 40%,rgba(23,23,20,.82));opacity:1} .photo-method>img{width:100%;height:100%;object-fit:cover;filter:contrast(1.04)} .instructors{background:var(--bone)} .instructor-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:50px;margin-bottom:68px} .instructor-heading>p{max-width:480px;justify-self:end;margin:0 0 6px;font-size:17px;line-height:1.65} .senior-instructors-card{overflow:hidden;padding-top:clamp(22px,2.8vw,48px);border:1px solid var(--line);background:var(--ink)} .senior-instructors-card>img{display:block;width:100%;height:auto;max-width:1000px;margin-inline:auto;aspect-ratio:5 / 3;object-fit:contain} .senior-instructor-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(243,239,229,.25)} .instructor-profile-button{display:flex;align-items:center;justify-content:center;min-height:96px;padding:24px clamp(24px,3vw,42px);color:var(--bone);font-size:12px;font-weight:900;letter-spacing:.08em;text-align:center;text-transform:uppercase;transition:background .2s ease,color .2s ease} .instructor-profile-button + .instructor-profile-button{border-left:1px solid rgba(243,239,229,.25)} .instructor-profile-button small{display:block;margin-bottom:6px;color:var(--red);font-size:9px;letter-spacing:.13em} .instructor-profile-button:hover{background:var(--red);color:var(--bone)} .instructor-profile-button:hover small{color:var(--bone)} .instructors-all-button{display:flex;width:fit-content;margin:34px auto 0} .credentials{display:grid;grid-template-columns:.8fr 2fr;align-items:center;gap:30px;padding:34px 5vw;background:var(--ink);color:var(--bone)} .credentials>p{margin:0;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.13em} .credentials ul{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px 32px;margin:0;padding:0;list-style:none;font-size:9px;font-weight:800;letter-spacing:.1em} .timetable-cta{display:flex;width:fit-content;margin:40px auto 0} .footer{grid-template-columns:1.45fr repeat(3,1fr)} .detail-main{background:var(--bone)} .detail-hero{min-height:720px;display:grid;grid-template-columns:56% 44%;overflow:hidden;background:var(--ink);color:var(--bone)} .detail-hero-copy{align-self:center;padding:150px clamp(24px,5vw,80px) 80px} .detail-hero h1{max-width:920px;font-size:clamp(65px,8.5vw,136px);line-height:.8} .detail-hero-copy>p:last-child{max-width:650px;margin:34px 0 0;color:#c4bfb5;font-size:clamp(18px,1.55vw,24px);line-height:1.55} .detail-hero>img{width:100%;height:100%;object-fit:cover;filter:contrast(1.04)} .detail-symbol{display:grid;place-items:center;background:var(--red);color:var(--ink);font:700 clamp(180px,27vw,450px) Georgia,serif} .programmes-hero-kanji{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 78% 16%,rgba(243,239,229,.2),transparent 30%),linear-gradient(rgba(23,23,20,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.08) 1px,transparent 1px),var(--red);background-size:auto,52px 52px,52px 52px,auto;box-shadow:inset 0 0 0 1px rgba(23,23,20,.15)} .programmes-hero-kanji::before{content: '柔術';color:var(--ink);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(180px,20vw,330px);font-weight:700;line-height:.8;letter-spacing:-.16em;text-orientation:upright;text-shadow:18px 18px 0 rgba(243,239,229,.13);transform:translateX(-.08em);writing-mode:vertical-rl} .programmes-hero-kanji::after{content: 'THE GENTLE ART · JU‑JITSU';position:absolute;left:clamp(24px,3vw,48px);bottom:clamp(28px,4vw,58px);color:var(--ink);font-family:var(--body-font);font-size:10px;font-weight:900;letter-spacing:.2em} .detail-content{display:grid;grid-template-columns:1fr 1fr;gap:9vw} .detail-content h2{font-size:clamp(56px,6.4vw,100px)} .detail-body>p{margin:0 0 24px;line-height:1.72} .detail-body ul{margin:42px 0;padding:0;border-top:1px solid var(--line);list-style:none} .detail-body li{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em} .detail-body li span{color:var(--red)} .free-offer{background-color:#f3efe5;background-image:linear-gradient(rgba(23,23,20,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.032) 1px,transparent 1px),radial-gradient(circle at 92% 10%,rgba(230,59,32,.065),transparent 24%);background-size:44px 44px,44px 44px,auto} .free-offer-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.65fr);gap:clamp(40px,7vw,110px);align-items:end;margin-bottom:clamp(48px,7vw,88px)} .free-offer-heading h1{max-width:850px;margin:12px 0 0;font-size:clamp(56px,7.2vw,108px);line-height:.88;letter-spacing:-.055em;text-transform:uppercase} .free-offer-heading h1 em{color:var(--red)} .free-offer-intro{max-width:520px;margin:0 0 10px;color:var(--muted-ink);font-size:clamp(17px,1.5vw,21px);line-height:1.7} .free-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,32px)} .free-feature-card{min-width:0;padding:clamp(34px,4.4vw,64px);border:1px solid #d7d1c5;background:rgba(255,255,255,.78);box-shadow:0 20px 45px rgba(23,23,20,.055)} .free-feature-label{display:block;margin-bottom:clamp(34px,4vw,58px);color:var(--red);font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase} .free-feature-card h2{margin:0 0 30px;font-size:clamp(27px,2.4vw,38px);line-height:1.02;letter-spacing:-.035em} .free-feature-card h2 em{color:var(--red)} .free-feature-card p{margin:0;color:#777168;font-size:16px;line-height:1.75} .free-feature-card p + p{margin-top:22px} .free-feature-card .free-feature-lead{color:var(--ink);font-weight:800} .free-feature-card a{color:var(--red);font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px} .free-prepare{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(46px,8vw,120px);align-items:start;background-color:var(--ink);background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(135deg,transparent 0 70%,rgba(230,59,32,.13) 70.15% 70.8%,transparent 70.95%),radial-gradient(circle at 92% 16%,rgba(230,59,32,.11),transparent 25%);background-size:44px 44px,44px 44px,auto,auto;color:var(--white)} .free-prepare::before{content: '柔術';position:absolute;z-index:0;right:clamp(-70px,-3vw,-18px);bottom:clamp(-95px,-5vw,-36px);color:rgba(255,255,255,.055);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(230px,34vw,540px);font-weight:700;line-height:.78;letter-spacing:-.14em;writing-mode:vertical-rl;text-orientation:upright;transform:rotate(-3deg);pointer-events:none} .free-prepare>*{position:relative;z-index:1} .free-prepare-heading h2{margin:12px 0 0;color:var(--white);font-size:clamp(48px,5.5vw,82px);line-height:.92;letter-spacing:-.045em} .free-prepare-heading h2 em{color:var(--red)} .free-prepare-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px} .free-prepare-card{padding:28px 0 34px;border-top:1px solid rgba(255,255,255,.28)} .free-prepare-card span{display:block;margin-bottom:30px;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.17em} .free-prepare-card h3{margin:0 0 18px;color:var(--white);font-size:clamp(26px,2.5vw,38px);line-height:1;text-transform:uppercase} .free-prepare-card p{margin:0;color:rgba(255,255,255,.7);font-size:15px;line-height:1.72} .free-prepare-card p + p{margin-top:14px} .free-prepare-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding-top:10px} .free-prepare-actions .button{background:var(--red);color:var(--white)} .free-prepare-actions .button:hover{background:#f04a2e} .free-prepare-note{color:rgba(255,255,255,.62);font-size:13px} .contact-detail{align-items:start} .contact-detail .detail-copy h1,.contact-detail .detail-copy h2{font-size:clamp(52px,5.8vw,88px)} .contact-direct{display:grid;gap:10px;max-width:520px;margin-top:32px;padding-top:22px;border-top:1px solid var(--line)} .contact-direct p{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin:0;color:var(--muted-ink);font-size:14px;line-height:1.65} .contact-direct a{display:inline-flex;max-width:100%;min-height:46px;align-items:center;justify-content:center;padding:0 17px;background:var(--ink);color:var(--white);font-size:12px;font-weight:900;letter-spacing:.045em;line-height:1.3;text-align:center;text-decoration:none;overflow-wrap:anywhere;transition:background .18s ease,transform .18s ease} .contact-direct p:last-child a{background:var(--red)} .contact-direct a:hover,.contact-direct a:focus-visible{background:#c53632;transform:translateY(-2px)} .contact-form-card{display:grid;gap:24px;padding:clamp(25px,3.2vw,44px);border:1px solid rgba(23,23,20,.18);background:linear-gradient(rgba(23,23,20,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.025) 1px,transparent 1px),var(--paper);background-size:42px 42px,42px 42px,auto;box-shadow:0 18px 42px rgba(23,23,20,.09)} .contact-form-card label{display:grid;gap:9px;min-width:0} .contact-form-card label>span{font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase} .contact-form-card input,.contact-form-card select,.contact-form-card textarea{width:100%;min-height:50px;padding:12px 14px;border:1px solid rgba(23,23,20,.24);border-radius:0;background:rgba(255,255,255,.54);color:var(--ink);font:inherit} .contact-form-card textarea{min-height:145px;resize:vertical;line-height:1.55} .contact-form-card input:focus,.contact-form-card select:focus,.contact-form-card textarea:focus{outline:3px solid rgba(230,59,32,.28);border-color:var(--red)} .contact-form-card .button{width:fit-content;border:0;cursor:pointer} .contact-form-note{margin:-4px 0 0;color:var(--muted-ink);font-size:12px;line-height:1.65} .contact-form-note a{color:var(--ink);font-weight:800;text-decoration:underline;text-underline-offset:3px} .contact-form-embed{gap:14px} .contact-form-embed>.contact-form-note{display:none;position:relative;margin:2px 0 0;padding:17px 18px 17px 54px;overflow:hidden;border:1px solid rgba(23,23,20,.16);border-left:4px solid var(--red);background:linear-gradient(90deg,rgba(230,59,32,.08),transparent 42%),rgba(255,255,255,.36);color:#4f4a43;font-size:13px;font-weight:700;line-height:1.65} .contact-form-embed>.contact-form-note::before{content: 'i';position:absolute;left:17px;top:50%;display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:var(--red);color:var(--white);font:900 13px/1 Georgia,serif;transform:translateY(-50%)} .contact-form-frame{display:block;width:100%;height:720px;border:0;background:transparent} .detail-links{background:var(--paper)} .detail-links h2{margin-bottom:60px} .detail-links>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)} .detail-links a{min-height:160px;display:flex;justify-content:space-between;align-items:flex-end;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em} .detail-links a:hover{background:var(--ink);color:var(--bone)} .detail-links a span{color:var(--red);font-size:22px} .compact-trial{min-height:560px;justify-content:center} .compact-trial h2{font-size:clamp(76px,11vw,166px)} @media (max-width:980px){.instructor-heading{grid-template-columns:1fr} .instructor-heading>p{justify-self:start} .detail-hero{grid-template-columns:1fr} .detail-hero>img,.detail-symbol{min-height:520px} .detail-content{grid-template-columns:1fr} .free-offer-heading,.free-prepare{grid-template-columns:1fr} .detail-links>div{grid-template-columns:1fr}} @media (max-width:680px){.image-card>img{height:150px} .free-feature-grid,.free-prepare-body{grid-template-columns:1fr} .senior-instructor-actions{grid-template-columns:1fr} .instructor-profile-button + .instructor-profile-button{border-top:1px solid rgba(243,239,229,.25);border-left:0} .credentials{grid-template-columns:1fr} .credentials ul{justify-content:flex-start} .detail-hero{min-height:0} .detail-hero-copy{padding-top:130px} .detail-hero>img,.detail-symbol{min-height:400px}} .global-header{position:relative;z-index:50;width:100%;background:#11110f;color:var(--bone);border-top:4px solid var(--red);box-shadow:0 10px 30px rgba(0,0,0,.2)} .header-info{position:relative;min-height:120px;max-width:1240px;margin:0 auto;padding:16px 28px;display:grid;grid-template-columns:minmax(340px,1fr) auto;align-items:center;gap:48px} .header-logo{width:fit-content;display:flex;align-items:center;gap:18px} .header-emblem{width:82px;height:82px;flex:0 0 82px;display:grid;place-items:center;overflow:hidden;background:transparent;border:0;box-shadow:none} .header-logo img{width:100%;height:100%;display:block;object-fit:cover;mix-blend-mode:screen} .logo-type{display:flex;flex-direction:column;min-width:0} .logo-type strong{color:#f6f1e7;font:900 clamp(25px,2.25vw,34px)/.88 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.015em;text-transform:uppercase} .logo-type small{margin-top:10px;color:#aaa59b;font-size:9px;font-weight:900;line-height:1;letter-spacing:.14em;text-transform:uppercase} .header-contact{display:flex;align-items:center;gap:0} .contact-block{min-width:180px;min-height:54px;padding:6px 24px;display:flex;align-items:center;border-left:1px solid rgba(243,239,229,.18)} .contact-block small{display:block;margin-bottom:5px;color:#aaa59b;font:800 9px/1 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase} .contact-block strong{display:block;color:var(--white);font:800 15px/1.2 Arial,sans-serif;letter-spacing:-.01em} .contact-icon,.pin-icon{display:none} .contact-block:hover strong,.contact-block:focus-visible strong{color:#ff6048} .top-cta{min-height:56px;min-width:182px;margin-left:22px;padding:0 25px;display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:white;border:1px solid #f05a43;box-shadow:5px 5px 0 var(--red-shadow);font:900 12px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;transition:background .18s ease,transform .18s ease,box-shadow .18s ease} .top-cta:hover,.top-cta:focus-visible{background:#f04a2e;transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--red-shadow)} .nav-shell{position:relative;background-color:#f3efe5;background-image:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px);background-size:32px 32px;color:var(--ink);border-top:1px solid #d8d0c1;border-bottom:1px solid #bdb4a4;box-shadow:0 10px 24px rgba(17,17,15,.16)} .desktop-nav{display:block;max-width:1240px;margin:0 auto;padding:0 28px} .nav-list,.submenu{margin:0;padding:0;list-style:none} .nav-list{display:flex;align-items:stretch;gap:clamp(3px,.7vw,10px)} .nav-list>li{position:relative} .nav-list>li>a{position:relative;min-height:62px;padding:0 clamp(12px,1.25vw,19px);display:flex;align-items:center;color:var(--ink);font:900 12px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;transition:color .16s ease,background .16s ease} .nav-list>li>a::before{content: '';position:absolute;left:12px;right:12px;bottom:-1px;height:4px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .16s ease} .has-submenu>a::after{content: '';width:6px;height:6px;margin-left:9px;border-right:2px solid var(--red);border-bottom:2px solid var(--red);transform:rotate(45deg) translateY(-2px);transition:transform .16s ease} .nav-list>li>a:hover,.nav-list>li>a:focus-visible{color:#b72e20;background:rgba(23,23,20,.055);text-decoration:none} .nav-list>li>a:hover::before,.nav-list>li>a:focus-visible::before,.nav-list>li:focus-within>a::before{transform:scaleX(1)} .nav-list>li:focus-within>a{color:#b72e20} .has-submenu:hover>a::after,.has-submenu:focus-within>a::after{transform:rotate(225deg) translate(-1px,-1px)} .submenu{position:absolute;top:calc(100% - 1px);left:0;z-index:60;width:max-content;min-width:260px;padding:8px;background:#faf7ef;color:var(--ink);border:1px solid #c9c0b0;border-top:4px solid var(--red);box-shadow:0 22px 50px rgba(0,0,0,.24),8px 8px 0 rgba(230,59,32,.12);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease} .submenu li{display:block;border-bottom:1px solid #ded7ca} .submenu li:last-child{border-bottom:0} .submenu a{display:block;padding:13px 16px;color:var(--ink);font-size:12px;font-weight:800;letter-spacing:.015em;text-transform:none;transition:color .15s ease,background .15s ease,padding .15s ease} .submenu a:hover,.submenu a:focus-visible{padding-left:21px;background:var(--ink);color:var(--white);text-decoration:none} .has-submenu:hover .submenu,.has-submenu:focus-within .submenu{opacity:1;visibility:visible;transform:translateY(0)} .mobile-menu{display:none} .hero{min-height:calc(100svh - 178px)} .hero-copy{padding-top:clamp(82px,10vh,120px)} .detail-hero-copy{padding-top:90px} .footer{grid-template-columns:1.55fr repeat(4,1fr)} @media (max-width:1080px){.location-block{display:none} .nav-list{gap:24px} .footer{grid-template-columns:1.5fr repeat(2,1fr)}} @media (max-width:820px){.header-info{min-height:88px;padding:12px 20px;grid-template-columns:1fr auto;gap:20px} .header-logo{gap:13px} .header-emblem{width:56px;height:56px;flex-basis:56px;box-shadow:none} .header-logo .logo-type strong{font-size:24px} .header-logo .logo-type small{margin-top:7px;font-size:6.5px;letter-spacing:.11em} .header-contact,.nav-shell{display:none} .mobile-menu{display:block;border:0} .mobile-menu>summary{min-height:44px;min-width:94px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--red);color:var(--white);border:0;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em} .mobile-menu>summary i,.mobile-menu>summary i::before,.mobile-menu>summary i::after{display:block;width:16px;height:2px;background:var(--white);content: ''} .mobile-menu>summary>span,.mobile-menu[open]>summary>span{color:var(--white);font-size:inherit;transform:none;transition:none} .mobile-menu>summary i{position:relative} .mobile-menu>summary i::before{position:absolute;top:-5px} .mobile-menu>summary i::after{position:absolute;top:5px} .mobile-menu[open]>summary i{background:transparent} .mobile-menu[open]>summary i::before{top:0;transform:rotate(45deg)} .mobile-menu[open]>summary i::after{top:0;transform:rotate(-45deg)} .mobile-menu>nav{position:absolute;top:100%;left:0;right:0;z-index:70;display:block;max-height:calc(100vh - 82px);padding:10px 20px 24px;overflow-y:auto;background-color:#f3efe5;background-image:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px);background-size:32px 32px;color:var(--ink);border-top:4px solid var(--red);box-shadow:0 20px 38px rgba(0,0,0,.28)} .mobile-menu nav>ul,.mobile-menu nav ul ul{margin:0;padding:0;list-style:none} .mobile-menu nav>ul>li{border-bottom:1px solid #cbc2b3} .mobile-menu nav>ul>li>a,.mobile-menu nav details>summary{min-height:54px;display:flex;align-items:center;justify-content:space-between;color:var(--ink);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.06em} .mobile-menu nav details{border:0} .mobile-menu nav details>summary{border:0} .mobile-menu nav details>summary span{color:var(--red);font-size:19px} .mobile-menu nav details[open]>summary span{transform:rotate(45deg)} .mobile-menu nav ul ul{margin:0 0 13px;padding:7px 12px 7px 16px;background:rgba(23,23,20,.06);border-left:3px solid var(--red)} .mobile-menu nav ul ul a{display:block;padding:10px 0;color:#3f3b35;font-size:12px;font-weight:700;text-transform:none} .mobile-trial{min-height:52px;margin-top:20px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;background:#c53632;color:var(--white);font-size:11px;font-weight:900;text-transform:uppercase} .hero{min-height:auto} .hero-copy{padding-top:80px} .detail-hero-copy{padding-top:80px}} @media (max-width:680px){.contact-form-frame{height:740px} .contact-form-embed>.contact-form-note{padding:15px 15px 15px 48px} .contact-form-embed>.contact-form-note::before{left:14px} .footer{grid-template-columns:1fr 1fr}} @media (max-width:430px){.header-info{padding-inline:14px} .header-emblem{width:48px;height:48px;flex-basis:48px} .header-logo{gap:10px} .header-logo .logo-type strong{font-size:19px} .header-logo .logo-type small{font-size:5.6px;letter-spacing:.06em} .footer{grid-template-columns:1fr}} body{font-size:16px;line-height:1.55} h1,h2,.programme-card h3,.manifesto-large,.method-note,blockquote>p,.schedule-row strong,.trial h2,.trial-stamp strong,.art-caption,.detail-symbol{font-family:var(--display-font);font-weight:900} h1{max-width:820px;font-size:clamp(54px,7.2vw,112px);line-height:.92;letter-spacing:-.035em} h2{font-size:clamp(48px,6vw,92px);line-height:.94;letter-spacing:-.03em} .hero h1{max-width:760px;font-size:clamp(52px,6.6vw,105px);line-height:.92;letter-spacing:-.04em} .hero h1 em{display:inline-block} .hero #hero-title{font-size:clamp(48px,4.5vw,72px);letter-spacing:-.05em} .hero #hero-title>span{font-size:1.2em} .hero-lede,.detail-hero-copy>p:last-child{color:#ded9cf;line-height:1.65} .hero-lede{font-size:clamp(17px,1.3vw,20px)} .section-intro,.instructor-heading>p,.timetable-head>p{font-size:17px;line-height:1.75} .programme-card h3{font-size:clamp(32px,2.7vw,45px);line-height:1.03;letter-spacing:-.025em} .programme-card>p{font-size:16px;line-height:1.75} .manifesto-large{font-size:clamp(58px,9vw,142px);line-height:.98;letter-spacing:-.035em} .method-copy h2{font-size:clamp(50px,5.7vw,88px);line-height:.96} .method-lede{color:#d2cdc3;font-size:clamp(18px,1.4vw,22px);line-height:1.65} .method-points p{color:#bbb6ac;font-size:14px;line-height:1.75} blockquote>p{font-size:clamp(34px,3.7vw,58px);line-height:1.13;letter-spacing:-.025em} .schedule-row strong{font-size:22px;line-height:1} .class-name{line-height:1.15} .faq h2{font-size:clamp(48px,5.8vw,88px);line-height:.95} summary{line-height:1.35} details>p{font-size:15px;line-height:1.8} .trial h2{font-size:clamp(66px,9vw,142px);line-height:.9;letter-spacing:-.035em} .detail-hero h1{max-width:850px;font-size:clamp(52px,6.4vw,102px);line-height:.94;letter-spacing:-.035em} .detail-content h2{font-size:clamp(48px,5.5vw,84px);line-height:.96} .detail-body>p{font-size:17px;line-height:1.8} .detail-links h2{font-size:clamp(48px,5.5vw,84px)} .compact-trial h2{font-size:clamp(66px,8.5vw,132px)} @media (max-width:820px){.hero h1{font-size:clamp(48px,10.5vw,78px);line-height:.94} .hero #hero-title{font-size:clamp(30px,9vw,52px)} .detail-hero h1{font-size:clamp(46px,10vw,76px)} .manifesto-large{font-size:clamp(52px,13vw,92px)}} @media (max-width:480px){body{font-size:15px} .hero h1{font-size:clamp(42px,11.5vw,56px);line-height:.96;letter-spacing:-.035em} .detail-hero h1{font-size:clamp(42px,11vw,56px);line-height:.98;overflow-wrap:break-word} h2,.faq h2,.detail-content h2,.detail-links h2{font-size:clamp(42px,12vw,58px);line-height:.98} .manifesto-large{font-size:clamp(48px,13vw,66px);line-height:1} .trial h2,.compact-trial h2{font-size:clamp(58px,17vw,82px);line-height:.93} .hero-lede,.detail-hero-copy>p:last-child{font-size:17px;line-height:1.7}} html,body{max-width:100%;overflow-x:clip} main{max-width:100%;overflow-x:clip} img{max-width:100%} .section-pad{padding-left:var(--section-gutter);padding-right:var(--section-gutter)} .hero-copy,.detail-hero-copy{padding-left:var(--content-gutter);padding-right:var(--content-gutter);min-width:0} .hero-proof{padding-left:var(--content-gutter);padding-right:var(--content-gutter)} .manifesto{width:100%;padding-left:var(--content-gutter);padding-right:var(--content-gutter)} .manifesto-small,.manifesto-large,.belt-line{max-width:100%} .manifesto-large{width:100%;max-width:1500px;margin-left:auto;margin-right:auto;white-space:normal;text-wrap:balance;overflow-wrap:normal;font-size:clamp(52px,5.8vw,96px)} .belt-line{flex-wrap:wrap} .method{grid-template-columns:minmax(0,1fr) minmax(0,1fr)} .method-art,.method-copy,.detail-copy,.detail-body{min-width:0} .credentials{padding-left:var(--content-gutter);padding-right:var(--content-gutter)} @media (max-width:980px){:root{--content-gutter:clamp(28px,7vw,72px)} .method{grid-template-columns:minmax(0,1fr)}} @media (max-width:560px){:root{--content-gutter:24px} .manifesto-large{font-size:clamp(44px,13vw,64px)} .belt-line{line-height:1.8}} .hero-copy,.detail-hero-copy{position:relative;isolation:isolate;overflow:hidden;background-color:var(--ink);background-image:radial-gradient(circle at 88% 17%,rgba(230,59,32,.15),transparent 28%),linear-gradient(137deg,transparent 0 59%,rgba(243,239,229,.035) 59.1% 59.8%,transparent 60%),radial-gradient(circle at 12% 88%,rgba(230,59,32,.13),transparent 30%);box-shadow:inset -1px 0 rgba(243,239,229,.08)} .hero-copy::before,.detail-hero-copy::before{content: '';position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.55;background-image:linear-gradient(rgba(243,239,229,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.045) 1px,transparent 1px),repeating-linear-gradient(118deg,transparent 0 31px,rgba(230,59,32,.035) 32px 33px);background-size:52px 52px,52px 52px,auto;mask-image:linear-gradient(120deg,rgba(0,0,0,.9),transparent 72%)} .hero-copy::after,.detail-hero-copy::after{content: '柔術';position:absolute;z-index:-1;right:-2%;bottom:-12%;color:rgba(243,239,229,.045);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(210px,29vw,500px);font-weight:700;line-height:.78;letter-spacing:-.14em;writing-mode:vertical-rl;text-orientation:upright;pointer-events:none;transform:rotate(-5deg)} .hero-copy>*,.detail-hero-copy>*{position:relative;z-index:1} .hero-copy .eyebrow,.detail-hero-copy .eyebrow{text-shadow:0 1px 12px rgba(0,0,0,.45)} @media (max-width:820px){.hero-copy,.detail-hero-copy{background-image:radial-gradient(circle at 92% 11%,rgba(230,59,32,.14),transparent 30%),linear-gradient(137deg,transparent 0 62%,rgba(243,239,229,.035) 62.1% 63%,transparent 63%),radial-gradient(circle at 8% 91%,rgba(230,59,32,.12),transparent 32%)} .hero-copy::after,.detail-hero-copy::after{right:-8%;bottom:-5%;font-size:clamp(190px,58vw,360px)}} .programme-card{position:relative;isolation:isolate;overflow:hidden;background-image:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),radial-gradient(circle at 110% 102%,rgba(230,59,32,.1),transparent 33%);background-size:44px 44px,44px 44px,auto} .programme-card::before{content: '柔術';position:absolute;z-index:-1;right:-30px;bottom:-24px;color:rgba(230,59,32,.11);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(150px,16vw,235px);font-weight:700;line-height:.78;letter-spacing:-.16em;writing-mode:vertical-rl;text-orientation:upright;transition:color .2s ease,transform .25s ease} .programme-card:nth-child(2)::before{right:auto;left:-42px;bottom:12%} .programme-card:nth-child(3)::before{right:-18px;bottom:-48px} .programme-card>*{position:relative;z-index:1} .programme-card:hover{background-image:linear-gradient(rgba(243,239,229,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.045) 1px,transparent 1px),radial-gradient(circle at 110% 102%,rgba(230,59,32,.17),transparent 38%)} .programme-card:hover::before{color:rgba(230,59,32,.38);transform:scale(1.06) rotate(-4deg)} .detail-links a{position:relative;isolation:isolate;overflow:hidden;background-color:rgba(23,23,20,.045);background-image:linear-gradient(rgba(23,23,20,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.04) 1px,transparent 1px),linear-gradient(140deg,transparent 0 68%,rgba(230,59,32,.07) 68.2% 69%,transparent 69.2%);background-size:40px 40px,40px 40px,auto} .detail-links a::before{content: '柔術';position:absolute;z-index:-1;right:-18px;top:-32px;color:rgba(230,59,32,.14);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:128px;font-weight:700;line-height:.78;letter-spacing:-.16em;writing-mode:vertical-rl;text-orientation:upright;transition:color .2s ease,transform .2s ease} .detail-links a>*{position:relative;z-index:1} .detail-links a:hover{background-image:linear-gradient(rgba(243,239,229,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.055) 1px,transparent 1px),linear-gradient(140deg,transparent 0 68%,rgba(230,59,32,.14) 68.2% 69%,transparent 69.2%)} .detail-links a:hover::before{color:rgba(230,59,32,.5);transform:scale(1.06)} .programme-grid{gap:clamp(18px,2.2vw,34px);border:0} .programme-card{border:1px solid rgba(23,23,20,.2);box-shadow:0 12px 30px rgba(23,23,20,.07);transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease} .programme-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(23,23,20,.18)} .programme-card>a{position:static} .programme-card>a::after{content: '';position:absolute;inset:0;z-index:4;cursor:pointer} .programme-card:focus-within{outline:3px solid var(--red);outline-offset:4px} .detail-links>div{gap:clamp(16px,2vw,28px);border:0} .detail-links a{min-height:185px;border:1px solid rgba(23,23,20,.2);box-shadow:0 10px 26px rgba(23,23,20,.06);transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease} .detail-links a:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(23,23,20,.16)} @media (max-width:680px){.programme-grid,.detail-links>div{gap:16px} .programme-card:hover,.detail-links a:hover{transform:none}} .hero-proof{gap:10px} .hero-proof p{position:relative;min-width:0;min-height:76px;padding:13px 15px;overflow:hidden;border:1px solid rgba(243,239,229,.13);background-image:linear-gradient(rgba(243,239,229,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.035) 1px,transparent 1px),radial-gradient(circle at 105% -15%,rgba(230,59,32,.25),transparent 44%);background-size:34px 34px,34px 34px,auto} .method-points{display:grid;gap:12px;border-top:0} .method-points article{position:relative;padding:24px 20px;overflow:hidden;border:1px solid rgba(243,239,229,.13);background-image:linear-gradient(rgba(243,239,229,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.035) 1px,transparent 1px),linear-gradient(140deg,transparent 0 74%,rgba(230,59,32,.08) 74.2% 75%,transparent 75.2%);background-size:38px 38px,38px 38px,auto} .schedule{display:grid;gap:10px;border-top:0} .schedule-row{padding:0 18px;border:1px solid rgba(23,23,20,.18);background-color:rgba(255,255,255,.22);background-image:linear-gradient(rgba(23,23,20,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.03) 1px,transparent 1px),radial-gradient(circle at 98% 50%,rgba(230,59,32,.08),transparent 22%);background-size:40px 40px,40px 40px,auto} .faq-list{display:grid;gap:12px;border-top:0} .faq-list details{padding:0 clamp(28px,2.5vw,42px) 0 20px;border:1px solid rgba(23,23,20,.17);background-color:rgba(255,255,255,.2);background-image:linear-gradient(rgba(23,23,20,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.025) 1px,transparent 1px),linear-gradient(135deg,transparent 0 82%,rgba(230,59,32,.07) 82.2% 83%,transparent 83.2%);background-size:42px 42px,42px 42px,auto} .faq-list summary span{flex:0 0 auto;margin-left:18px} .detail-body ul{display:grid;gap:9px;border-top:0} .detail-body li{padding:16px 18px;border:1px solid rgba(23,23,20,.17);background-image:linear-gradient(rgba(23,23,20,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.025) 1px,transparent 1px),linear-gradient(140deg,transparent 0 85%,rgba(230,59,32,.07) 85.2% 86%,transparent 86.2%);background-size:36px 36px,36px 36px,auto} @media (max-width:680px){.hero-proof{gap:10px} .hero-proof p{width:100%} .schedule-row{padding:0 12px} .faq-list details{padding:0 24px 0 16px}} :where(.programmes,.manifesto,.method,.instructors,.testimonial,.timetable,.faq,.detail-content,.detail-links,.free-offer){--kanji-watermark:rgba(230,59,32,.06);position:relative;isolation:isolate;overflow:hidden} :where(.programmes,.manifesto,.method,.instructors,.testimonial,.timetable,.faq,.detail-content,.detail-links,.free-offer)::before{content: '柔術';position:absolute;z-index:0;top:clamp(-70px,-3vw,-18px);right:clamp(-72px,-3vw,-18px);color:var(--kanji-watermark);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(210px,32vw,520px);font-weight:700;line-height:.78;letter-spacing:-.14em;writing-mode:vertical-rl;text-orientation:upright;pointer-events:none} :where(.programmes,.manifesto,.method,.instructors,.testimonial,.timetable,.faq,.detail-content,.detail-links,.free-offer)>*{position:relative;z-index:1} .manifesto{--kanji-watermark:rgba(23,23,20,.075)} .method{--kanji-watermark:rgba(243,239,229,.035)} .instructors::before,.testimonial::before,.faq::before{right:auto;left:clamp(-72px,-3vw,-18px);transform:rotate(4deg)} .photo-gallery{position:relative;isolation:auto;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.34),transparent 42%),linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),var(--paper);background-size:auto,48px 48px,48px 48px,auto;color:var(--ink)} .photo-gallery::before{content: '柔術';position:absolute;z-index:0;top:clamp(-80px,-4vw,-24px);right:clamp(-85px,-3vw,-20px);color:rgba(230,59,32,.085);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(220px,38vw,620px);font-weight:700;line-height:.78;letter-spacing:-.14em;writing-mode:vertical-rl;text-orientation:upright;text-shadow:2px 2px 0 rgba(255,255,255,.22);pointer-events:none} .photo-gallery>.gallery-heading,.photo-gallery>.gallery-grid{position:relative;z-index:1} .gallery-heading{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:60px;margin-bottom:clamp(42px,6vw,78px)} .gallery-heading h1,.gallery-heading h2{font-size:clamp(48px,6vw,92px)} .gallery-heading>p{max-width:520px;justify-self:end;margin:0 0 7px;color:#5f5a52;font-size:16px;line-height:1.75} .gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,30px)} .gallery-card{position:relative;aspect-ratio:1;overflow:hidden} .gallery-card img{display:block;width:100%;height:100%;object-fit:cover} .gallery-card:focus-visible{outline:3px solid var(--red);outline-offset:3px} .gallery-lightbox{position:fixed;z-index:300;inset:0;display:none;place-items:center;padding:28px} .gallery-lightbox:target{display:grid} html:has(.gallery-lightbox:target),body:has(.gallery-lightbox:target){overflow:hidden} .lightbox-backdrop{position:absolute;inset:0;background:rgba(10,10,9,.94);backdrop-filter:blur(7px)} .gallery-lightbox figure{position:relative;z-index:1;width:min(76vmin,720px);margin:0;border:1px solid rgba(243,239,229,.2);background:var(--ink);box-shadow:0 28px 80px rgba(0,0,0,.6)} .gallery-lightbox figure>img{display:block;width:100%;aspect-ratio:1;object-fit:cover} .gallery-lightbox figcaption{padding:12px 68px 13px 16px;color:rgba(255,255,255,.82);font-size:14px;line-height:1.35} .lightbox-close,.lightbox-nav{position:absolute;z-index:2;display:grid;place-items:center;background:var(--ink);color:white;border:1px solid rgba(243,239,229,.25)} .lightbox-close{width:44px;height:44px;top:12px;right:12px;font-size:26px;line-height:1} .lightbox-nav{width:48px;height:48px;top:50%;border-radius:50%;font-size:20px;transform:translateY(-50%)} .lightbox-prev{left:-72px} .lightbox-next{right:-72px} .lightbox-close:hover,.lightbox-nav:hover,.lightbox-close:focus-visible,.lightbox-nav:focus-visible{background:var(--red);border-color:var(--red)} @media (max-width:820px){.gallery-heading{grid-template-columns:1fr;gap:24px} .gallery-heading>p{justify-self:start} .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))} .gallery-lightbox figure{width:min(78vw,620px)} .lightbox-prev{left:12px} .lightbox-next{right:12px}} @media (max-width:520px){.gallery-grid{grid-template-columns:1fr} .gallery-lightbox{padding:16px} .gallery-lightbox figure{width:min(92vw,600px)}} .video-showcase{position:relative;overflow:hidden;background:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),var(--paper);background-size:48px 48px,48px 48px,auto;color:var(--ink)} .video-showcase::before{content: '柔術';position:absolute;right:-30px;top:-70px;color:rgba(230,59,32,.12);font:700 clamp(190px,29vw,440px)/.78 Georgia,serif;letter-spacing:-.14em;writing-mode:vertical-rl;pointer-events:none} .video-showcase>*{position:relative;z-index:1} .video-showcase-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:32px;margin-bottom:clamp(42px,6vw,78px)} .video-showcase-heading .kicker{grid-column:1 / -1;margin-bottom:0} .video-showcase-heading h1,.video-showcase-heading h2{max-width:none;font-size:clamp(56px,6.4vw,100px);line-height:.94} .video-showcase-heading>p:last-child{justify-self:end;max-width:380px;margin:0 0 7px;color:var(--muted-ink);font-size:16px;line-height:1.6} .video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,46px)} .video-library .video-grid{grid-template-columns:repeat(3,minmax(0,1fr))} .video-library .youtube-play{display:none} .video-card{display:block;min-width:0;border:1px solid rgba(243,239,229,.18);background:#0f0f0e;box-shadow:0 24px 55px rgba(0,0,0,.3);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease} .video-card:hover,.video-card:focus-visible{transform:translateY(-6px);border-color:var(--red);box-shadow:0 30px 70px rgba(0,0,0,.46);outline:none} .video-preview{position:relative;display:block;aspect-ratio:16 / 9;overflow:hidden;background:#000} .video-preview::after{content: '';position:absolute;inset:48% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.76));pointer-events:none} .video-preview img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease} .video-card:hover .video-preview img{transform:scale(1.025);filter:contrast(1.06)} .youtube-play{position:absolute;z-index:2;left:50%;top:50%;width:clamp(62px,7vw,86px);height:clamp(43px,4.8vw,60px);border-radius:14px;background:#ff0033;box-shadow:0 7px 24px rgba(0,0,0,.42);transform:translate(-50%,-50%)} .youtube-play::after{content: '';position:absolute;left:52%;top:50%;border-left:17px solid var(--white);border-top:11px solid transparent;border-bottom:11px solid transparent;transform:translate(-45%,-50%)} .youtube-controls{position:absolute;z-index:3;left:15px;right:15px;bottom:10px;display:grid;grid-template-columns:1fr auto auto minmax(20px,.03fr) auto auto;align-items:center;gap:12px;color:var(--white);font-size:13px;line-height:1} .youtube-controls i{grid-column:1 / -1;height:3px;background:linear-gradient(90deg,#f03 0 11%,rgba(255,255,255,.52) 11% 100%)} .youtube-controls b{font-weight:400;text-shadow:0 1px 3px #000} .video-card-copy{display:grid;gap:8px;padding:clamp(21px,2.4vw,32px)} .video-card-copy strong{color:var(--bone);font:900 clamp(27px,3vw,43px)/.96 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em;text-transform:uppercase} .video-card:nth-child(2) .video-card-copy strong{max-width:11ch} .video-card-copy small{min-height:34px;color:#a9a49a;font-size:12px;line-height:1.5} .video-channel-cta{display:flex;justify-content:center;margin-top:clamp(34px,5vw,62px)} .video-channel-cta .button{min-width:min(100%,270px);box-shadow:0 12px 26px rgba(23,23,20,.16)} @media (max-width:980px){.video-showcase-heading{grid-template-columns:1fr} .video-showcase-heading>p:last-child{justify-self:start} .video-library .video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:680px){.video-grid,.video-library .video-grid{grid-template-columns:1fr} .video-card:hover{transform:none} .youtube-controls{left:10px;right:10px;gap:9px}} .women-hero img{object-position:center 36%} .women-defence-section{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),var(--paper);background-size:48px 48px,48px 48px,auto} .women-defence-section::before{content: '護身';position:absolute;right:-32px;top:-82px;color:rgba(230,59,32,.085);font:700 clamp(220px,34vw,500px)/.78 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;letter-spacing:-.14em;writing-mode:vertical-rl;pointer-events:none} .women-defence-section>*{position:relative;z-index:1} .women-section-heading{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:24px 56px;margin-bottom:clamp(38px,6vw,72px)} .women-section-heading .kicker{grid-column:1 / -1;margin-bottom:0} .women-section-heading h2{font-size:clamp(50px,6.3vw,94px)} .women-section-heading>p:last-child{max-width:520px;margin:0 0 6px;color:#5f5a52;line-height:1.75} .women-defence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.2vw,30px)} .women-defence-card{position:relative;min-width:0;padding:clamp(30px,3.4vw,52px);overflow:hidden;border:1px solid rgba(23,23,20,.2);background-color:rgba(255,255,255,.62);background-image:linear-gradient(rgba(23,23,20,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.025) 1px,transparent 1px),linear-gradient(135deg,transparent 0 85%,rgba(230,59,32,.08) 85.2% 86%,transparent 86.2%);background-size:42px 42px,42px 42px,auto} .women-defence-card::before{content: '柔術';position:absolute;right:-18px;top:-16px;color:rgba(230,59,32,.09);font:700 116px/.8 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;pointer-events:none} .women-defence-card>*{position:relative;z-index:1} .women-defence-card .kicker{margin-bottom:34px} .women-defence-card h3{margin:0 0 20px;padding-bottom:18px;border-bottom:4px solid var(--red);font:900 clamp(31px,3vw,46px)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em} .women-defence-card>p:last-child{margin:0;color:#514d46;line-height:1.75} .women-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))} .women-video-grid .video-card-copy strong{max-width:none} .women-video-showcase{background:linear-gradient(rgba(243,239,229,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.045) 1px,transparent 1px),linear-gradient(135deg,rgba(230,59,32,.11),transparent 48%),#191916;background-size:48px 48px,48px 48px,auto,auto;color:var(--bone)} .women-video-showcase::before{color:rgba(230,59,32,.2)} .women-video-showcase .video-showcase-heading h2{font-size:clamp(42px,6.4vw,100px)} .women-video-showcase .video-showcase-heading h2 span,.women-video-showcase .video-showcase-heading h2 em{display:block;white-space:nowrap} .women-video-showcase .video-showcase-heading>p:last-child{color:rgba(243,239,229,.72)} .women-video-showcase .video-card{border-color:rgba(243,239,229,.28);box-shadow:0 24px 58px rgba(0,0,0,.52)} .women-video-showcase .video-card:hover,.women-video-showcase .video-card:focus-visible{border-color:var(--red);box-shadow:0 30px 72px rgba(0,0,0,.68)} .women-gallery-grid{grid-template-columns:repeat(5,minmax(0,1fr))} @media (max-width:980px){.women-section-heading{grid-template-columns:1fr} .women-defence-grid{grid-template-columns:1fr} .women-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}} @media (max-width:680px){.women-section-heading{gap:18px} .women-defence-card{padding:28px 24px} .women-video-grid{grid-template-columns:1fr} .women-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} .pricing-information{position:relative;overflow:hidden;background:linear-gradient(rgba(23,23,20,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.03) 1px,transparent 1px),var(--paper);background-size:48px 48px,48px 48px,auto} .pricing-information::before{content: '料金';position:absolute;right:-38px;top:-65px;color:rgba(230,59,32,.085);font:700 clamp(210px,31vw,470px)/.8 Georgia,serif;letter-spacing:-.14em;writing-mode:vertical-rl;pointer-events:none} .pricing-information>*{position:relative;z-index:1} .pricing-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:34px;margin-bottom:clamp(48px,7vw,88px)} .pricing-heading .kicker{grid-column:1 / -1;margin-bottom:0} .pricing-heading h1,.pricing-heading h2{max-width:none;font-size:clamp(56px,6.4vw,100px);line-height:.8} .pricing-heading>p:last-child{justify-self:end;max-width:470px;margin:0 0 7px;color:var(--muted-ink);font-size:17px;line-height:1.65} .pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,44px);align-items:stretch} .pricing-card{position:relative;overflow:hidden;padding:clamp(26px,3.6vw,52px);border:1px solid rgba(23,23,20,.18);background:rgba(255,255,255,.55);box-shadow:0 18px 42px rgba(23,23,20,.08)} .pricing-card-number{position:absolute;right:24px;top:17px;margin:0;color:rgba(230,59,32,.18);font:900 clamp(50px,6vw,86px)/1 Impact,sans-serif} .pricing-card h2{position:relative;margin:0 0 26px;padding-bottom:18px;border-bottom:4px solid var(--red);font:900 clamp(38px,4vw,58px)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em;text-transform:uppercase} .pricing-card>p:not(.pricing-card-number):not(.annual-fee){margin:0 0 23px;color:var(--muted-ink);font-size:15px;line-height:1.72} .price-options{display:grid;gap:10px;margin:34px 0;padding:0;list-style:none} .price-options li{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:94px;padding:18px 20px;border:1px solid rgba(23,23,20,.16);background:var(--bone)} .price-options li>span{font-size:13px;font-weight:900;line-height:1.35;text-transform:uppercase;letter-spacing:.035em} .price-options li>span small{color:#777268;font-size:10px;font-weight:700} .price-options li>strong{flex:0 0 auto;color:var(--red);font:900 clamp(30px,3vw,43px)/.9 Impact,sans-serif;letter-spacing:-.02em} .price-options li>strong small{display:block;margin-top:6px;color:#777268;font:800 9px/1 Arial,sans-serif;text-align:right;text-transform:uppercase;letter-spacing:.08em} .pricing-facts,.joining-benefits{display:grid;gap:9px;margin:0 0 28px;padding:0;list-style:none} .pricing-facts li,.joining-benefits li{display:flex;gap:12px;padding:13px 15px;border:1px solid rgba(23,23,20,.13);background:rgba(232,226,213,.55);font-size:12px;font-weight:800;line-height:1.45} .pricing-facts li span,.joining-benefits li span{color:var(--red)} .pricing-card .pricing-note{margin-bottom:0;padding:16px 18px;border-left:4px solid var(--red);background:rgba(230,59,32,.07);color:var(--ink);font-weight:800} .pricing-details>p strong{color:var(--red)} .pricing-card h3{margin:42px 0 18px;font:900 clamp(28px,3vw,42px)/.95 Impact,sans-serif;letter-spacing:-.015em;text-transform:uppercase} .annual-fee{display:grid;gap:8px;margin:34px 0 0;padding:24px;background:var(--ink);color:#bdb7ac;font-size:12px;line-height:1.55} .pricing-card .annual-fee strong{color:var(--bone);font-size:11px;letter-spacing:.1em;text-transform:uppercase} .annual-fee span{color:var(--dark-small-copy);font:900 clamp(34px,4vw,52px)/1 Impact,sans-serif;letter-spacing:-.01em} @media (max-width:980px){.pricing-heading{grid-template-columns:1fr} .pricing-heading>p:last-child{justify-self:start} .pricing-grid{grid-template-columns:1fr}} @media (max-width:560px){.pricing-card{padding:24px 18px} .price-options li{align-items:flex-start;flex-direction:column} .price-options li>strong small{text-align:left}} .privacy-notice{position:relative;overflow:hidden;background:linear-gradient(rgba(23,23,20,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.028) 1px,transparent 1px),var(--bone);background-size:48px 48px,48px 48px,auto} .privacy-notice::before{content: '守';position:absolute;right:-35px;top:-55px;color:rgba(230,59,32,.07);font:700 clamp(250px,34vw,520px)/1 Georgia,serif;pointer-events:none} .privacy-notice>*{position:relative;z-index:1} .privacy-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:34px;margin-bottom:clamp(44px,6vw,78px)} .privacy-heading .kicker{grid-column:1 / -1;margin-bottom:0} .privacy-heading h2{font-size:clamp(56px,6.4vw,100px)} .privacy-heading>p:last-child{justify-self:end;max-width:500px;margin:0 0 7px;color:var(--muted-ink);font-size:17px;line-height:1.65} .privacy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:clamp(42px,6vw,72px);border:1px solid rgba(23,23,20,.18);background:var(--ink);color:var(--bone);box-shadow:0 17px 40px rgba(23,23,20,.12)} .privacy-summary p{display:grid;gap:14px;min-width:0;margin:0;padding:24px clamp(18px,2.5vw,34px);border-right:1px solid rgba(243,239,229,.15)} .privacy-summary p:last-child{border-right:0} .privacy-summary small{display:block;padding-bottom:5px;border-bottom:1px solid rgba(243,239,229,.14);color:var(--red);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase} .privacy-summary strong,.privacy-summary a{overflow-wrap:anywhere;color:var(--bone);font-size:13px;font-weight:800;line-height:1.4} .privacy-summary a{text-decoration:underline;text-underline-offset:4px} .privacy-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,48px)} .privacy-contents{position:static;display:block;padding:24px 28px;border:1px solid rgba(23,23,20,.18);background:var(--paper);font-size:12px;font-weight:400;text-transform:none;letter-spacing:0} .privacy-contents>p{margin:0 0 16px;color:var(--red);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase} .privacy-contents ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:26px;margin:0;padding:0;counter-reset:privacy-nav;list-style:none} .privacy-contents li{counter-increment:privacy-nav;border-top:1px solid rgba(23,23,20,.13)} .privacy-contents a{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:13px 0;font-weight:800;line-height:1.35} .privacy-contents a::before{content: '0' counter(privacy-nav);color:var(--red);font-size:9px;letter-spacing:.05em} .privacy-contents a:hover{color:var(--red);text-decoration:none} .privacy-body{display:grid;gap:22px;min-width:0} .privacy-intro{margin:0;padding:clamp(24px,3vw,38px);border-left:5px solid var(--red);background:var(--ink);color:var(--bone);font-size:clamp(16px,1.4vw,19px);line-height:1.72;box-shadow:0 16px 34px rgba(23,23,20,.11)} .privacy-body>section{position:relative;overflow:hidden;padding:clamp(26px,4vw,52px);scroll-margin-top:24px;border:1px solid rgba(23,23,20,.17);background:rgba(255,255,255,.53);box-shadow:0 13px 34px rgba(23,23,20,.06)} .privacy-section-number{position:absolute;right:22px;top:16px;margin:0;color:rgba(230,59,32,.15);font:900 clamp(56px,7vw,96px)/1 Impact,sans-serif} .privacy-body h3{position:relative;max-width:80%;margin:0 0 28px;padding-bottom:17px;border-bottom:4px solid var(--red);font:900 clamp(34px,3.7vw,54px)/.92 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em;text-transform:uppercase} .privacy-body section>p:not(.privacy-section-number){margin:0 0 20px;color:#4f4a43;font-size:15px;line-height:1.75} .privacy-body section>p:last-child{margin-bottom:0} .privacy-body section>ul{display:grid;gap:9px;margin:24px 0;padding:0;list-style:none} .privacy-body section>p:not(.privacy-section-number),.privacy-body section>ul,.privacy-rights-callout{max-width:940px} .privacy-body section>ul li{position:relative;padding:15px 17px 15px 42px;border:1px solid rgba(23,23,20,.13);background:rgba(232,226,213,.55);color:#4f4a43;font-size:14px;line-height:1.6} .privacy-body section>ul li::before{content: '✓';position:absolute;left:17px;top:15px;color:var(--red);font-weight:900} .privacy-body a{color:var(--red);font-weight:800;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere} .privacy-rights-callout{margin:30px 0;padding:24px;border-left:5px solid var(--red);background:var(--ink);color:var(--bone)} .privacy-rights-callout h4{margin:0 0 10px;color:var(--red);font-size:11px;letter-spacing:.12em;text-transform:uppercase} .privacy-rights-callout p{margin:0;color:#d2ccc0;font-size:14px;line-height:1.65} @media (max-width:980px){.privacy-heading{grid-template-columns:1fr} .privacy-heading>p:last-child{justify-self:start} .privacy-contents ol{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}} @media (max-width:680px){.privacy-summary{grid-template-columns:1fr} .privacy-summary p{border-right:0;border-bottom:1px solid rgba(243,239,229,.15)} .privacy-summary p:last-child{border-bottom:0} .privacy-contents ol{grid-template-columns:1fr} .privacy-body>section{padding:26px 20px} .privacy-body h3{max-width:75%}} .locations-directory{position:relative;overflow:hidden;background:linear-gradient(rgba(23,23,20,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.028) 1px,transparent 1px),var(--bone);background-size:48px 48px,48px 48px,auto} .locations-directory::before{content: '道場';position:absolute;right:-42px;top:-65px;color:rgba(230,59,32,.075);font:700 clamp(210px,31vw,470px)/.8 Georgia,serif;letter-spacing:-.14em;writing-mode:vertical-rl;pointer-events:none} .locations-directory>*{position:relative;z-index:1} .locations-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:34px;margin-bottom:clamp(48px,7vw,88px)} .locations-heading .kicker{grid-column:1 / -1;margin-bottom:0} .locations-heading h1,.locations-heading h2{max-width:none;font-size:clamp(56px,6.4vw,100px);line-height:.8} .locations-heading>p:last-child{justify-self:end;max-width:480px;margin:0 0 7px;color:var(--muted-ink);font-size:17px;line-height:1.65} .venue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,34px);align-items:stretch} .venue-card{display:grid;grid-template-rows:auto auto 1fr auto auto;min-width:0;overflow:hidden;border:1px solid rgba(23,23,20,.18);background:rgba(255,255,255,.57);box-shadow:0 18px 42px rgba(23,23,20,.09)} .venue-card-heading{padding:clamp(22px,2.4vw,32px);background:var(--ink);color:var(--bone)} .venue-card-heading p{display:flex;align-items:center;gap:11px;margin:0 0 17px;color:#aaa59a;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase} .venue-card-heading p span{color:var(--red);font-size:13px} .venue-card-heading h2{margin:0;font:900 clamp(32px,3vw,46px)/.92 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em;text-transform:uppercase} .venue-photo{position:relative;aspect-ratio:16 / 11;margin:0;overflow:hidden;background:#ccc5b8} .venue-photo::after{content: '';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(23,23,20,.45));pointer-events:none} .venue-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.84) contrast(1.04);transform:scale(1.12);transform-origin:center top;transition:transform .35s ease,filter .35s ease} .venue-card:hover .venue-photo img{transform:scale(1.15);filter:saturate(1) contrast(1.04)} .venue-details{padding:clamp(23px,2.5vw,34px)} .venue-details h3{margin:0 0 14px;color:var(--red);font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase} .venue-times{display:grid;gap:8px;margin:0 0 30px;padding:0;list-style:none} .venue-times li{display:grid;gap:7px;padding:14px 15px;border:1px solid rgba(23,23,20,.14);background:var(--paper)} .venue-times li span{font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase} .venue-times li strong{font:900 clamp(24px,2.2vw,32px)/1 Impact,sans-serif;letter-spacing:-.01em} .venue-details address{color:#4f4a43;font-size:14px;font-style:normal;line-height:1.7} .venue-details address strong{color:var(--ink)} .venue-note{margin:22px 0 0;padding:14px 16px;border-left:4px solid var(--red);background:rgba(230,59,32,.065);color:var(--muted-ink);font-size:12px;line-height:1.55} .venue-map{aspect-ratio:4 / 3;overflow:hidden;border-top:1px solid rgba(23,23,20,.16);background:var(--paper)} .venue-map iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(.3) contrast(1.03)} .venue-directions{display:flex;align-items:center;justify-content:space-between;min-height:62px;padding:0 22px;background:var(--red);color:var(--white);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;transition:background .18s ease} .venue-directions:hover,.venue-directions:focus-visible{background:#8f2117} .venue-directions span{font-size:19px} @media (max-width:980px){.locations-heading{grid-template-columns:1fr} .locations-heading>p:last-child{justify-self:start} .venue-grid{grid-template-columns:1fr} .venue-card{grid-template-columns:minmax(240px,.8fr) 1fr;grid-template-rows:auto auto auto} .venue-card-heading{grid-column:1 / -1} .venue-photo{grid-column:1;grid-row:2;height:100%;aspect-ratio:auto} .venue-details{grid-column:2;grid-row:2} .venue-map{grid-column:1 / -1;grid-row:3;aspect-ratio:16 / 7} .venue-directions{grid-column:1 / -1}} @media (max-width:620px){.venue-card{display:grid;grid-template-columns:1fr;grid-template-rows:auto} .venue-card-heading,.venue-photo,.venue-details,.venue-map,.venue-directions{grid-column:1;grid-row:auto} .venue-photo{aspect-ratio:16 / 11} .venue-map{aspect-ratio:4 / 3} .venue-card:hover .venue-photo img{transform:scale(1.12)}} .section-pad{padding-top:clamp(72px,8vw,128px);padding-bottom:clamp(72px,8vw,128px)} .contact-direct a{width:100%;max-width:260px;box-sizing:border-box} .adult-benefits{position:relative;isolation:isolate;overflow:hidden;background:var(--bone);color:var(--ink)} .adult-benefits::before{content:'柔術';position:absolute;z-index:-1;right:-.08em;top:.02em;color:rgba(230,59,32,.065);font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(15rem,38vw,38rem);font-weight:700;line-height:.8;letter-spacing:-.15em;writing-mode:vertical-rl;pointer-events:none} .adult-benefits-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:clamp(2rem,7vw,7rem);align-items:center;margin-bottom:clamp(2.5rem,5vw,4.5rem)} .adult-benefits-head h2{margin:.35rem 0 0;font-size:clamp(3rem,6vw,6.8rem);line-height:.88;letter-spacing:-.055em;text-transform:uppercase} .adult-benefits-head h2 em{color:var(--bright-red);font-style:normal} .adult-benefits-copy>p:last-child{max-width:600px;margin:1.5rem 0 0;color:#4a4740;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.7} .adult-benefits-visual{position:relative;min-height:clamp(290px,34vw,460px)} .adult-benefits-visual img{display:block;object-fit:cover;border:8px solid var(--bone);box-shadow:0 18px 42px rgba(23,23,20,.18)} .adult-benefits-visual img:first-child{position:absolute;inset:0 12% 12% 0;width:88%;height:88%} .adult-benefits-visual img:nth-child(2){position:absolute;right:0;bottom:0;width:48%;height:48%} .adult-benefits-visual span{position:absolute;left:-1.2rem;bottom:6%;padding:.65rem .8rem;background:var(--red);color:var(--white);font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase} .adult-benefit-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(1rem,2vw,1.6rem)} .adult-benefit-card{grid-column:span 2;position:relative;isolation:isolate;overflow:hidden;min-width:0;padding:clamp(1.6rem,3vw,2.7rem);background:var(--white);color:var(--deep-ink);border:1px solid var(--line);border-top:6px solid var(--bright-red);box-shadow:0 18px 42px rgba(23,23,20,.08)} .adult-benefit-card::before{content:'柔術';position:absolute;z-index:-1;right:-.18em;bottom:-.22em;color:rgba(230,59,32,.07);font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(8rem,14vw,14rem);font-weight:700;line-height:.8;letter-spacing:-.18em;writing-mode:vertical-rl;pointer-events:none} .adult-benefit-card--wide{grid-column:span 3} .adult-benefit-number{display:block;margin-bottom:2.2rem;color:var(--bright-red);font-size:.72rem;font-weight:900;letter-spacing:.14em} .adult-benefit-card h3{margin:0 0 1.35rem;font-size:clamp(1.45rem,2.2vw,2.2rem);line-height:1.02;letter-spacing:-.025em;text-transform:uppercase} .adult-benefit-card p{margin:0 0 1.15rem;color:#49463f;line-height:1.72} .adult-benefit-card p:last-child{margin-bottom:0} .adult-benefit-card .adult-benefit-lead{color:var(--deep-ink);font-weight:800} @media(max-width:900px){.adult-benefits-head{grid-template-columns:1fr}.adult-benefits-visual{max-width:680px}.adult-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.adult-benefit-card,.adult-benefit-card--wide{grid-column:auto}} @media(max-width:620px){.adult-benefit-grid{grid-template-columns:1fr}.adult-benefit-card{padding:1.6rem}.adult-benefit-number{margin-bottom:1.4rem}} .junior-training{position:relative;isolation:isolate;overflow:hidden;background:var(--paper);color:var(--ink)} .junior-training::before{content:'柔術';position:absolute;z-index:-1;right:-.12em;top:.1em;color:rgba(230,59,32,.065);font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(18rem,42vw,42rem);font-weight:700;line-height:.78;letter-spacing:-.18em;writing-mode:vertical-rl;pointer-events:none} .junior-training-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(2rem,7vw,7rem);align-items:end;margin-bottom:clamp(2.5rem,5vw,4.5rem)} .junior-training-head h2{margin:.35rem 0 0;font-size:clamp(3.2rem,6.4vw,7rem);line-height:.86;letter-spacing:-.055em;text-transform:uppercase} .junior-training-head h2 em{color:var(--red);font-style:normal} .junior-training-head>p{max-width:560px;margin:0;color:#4a4740;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.72} .junior-pathway-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.6rem);margin-bottom:clamp(4rem,8vw,7rem)} .junior-pathway-card{position:relative;overflow:hidden;min-width:0;padding:clamp(2rem,4vw,4rem);background:var(--ink);color:var(--bone)} .junior-pathway-card:nth-child(2){background:var(--red);color:var(--white)} .junior-pathway-card::after{content:'柔';position:absolute;right:-.06em;bottom:-.22em;color:rgba(255,255,255,.07);font-family:'Yu Mincho','Noto Serif JP',Georgia,serif;font-size:clamp(12rem,24vw,23rem);font-weight:700;line-height:1;pointer-events:none} .junior-pathway-card>*{position:relative;z-index:1} .junior-pathway-card>span{display:block;margin-bottom:2.2rem;font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase} .junior-pathway-card h3{max-width:530px;margin:0 0 1.5rem;font-size:clamp(1.8rem,3.2vw,3.4rem);line-height:.96;letter-spacing:-.035em;text-transform:uppercase} .junior-pathway-card p{max-width:66ch;margin:0 0 1.15rem;color:#d9d4c9;line-height:1.72} .junior-pathway-card:nth-child(2) p{color:var(--white)} .junior-benefits-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(2rem,7vw,7rem);align-items:end;margin-bottom:clamp(2.5rem,5vw,4.5rem)} .junior-benefits-heading h3{margin:.35rem 0 0;font-family:var(--display-font);font-size:clamp(3.2rem,6.4vw,7rem);font-weight:900;line-height:.86;letter-spacing:-.055em;text-transform:uppercase} .junior-benefits-heading h3 span,.junior-benefits-heading h3 em{display:block} .junior-benefits-heading h3 em{color:var(--red-aa-dark);font-style:normal} .junior-benefits-heading .kicker{color:var(--red-aa-dark)} .junior-benefits-heading>p{max-width:560px;margin:0;color:#4a4740;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.72} .junior-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.6rem)} .junior-benefit-card{position:relative;min-width:0;padding:clamp(1.5rem,2.5vw,2.35rem);background:var(--white);border:1px solid var(--line);border-bottom:5px solid var(--red);box-shadow:0 14px 34px rgba(23,23,20,.07)} .junior-benefit-card>span{display:grid;place-items:center;width:2.5rem;height:2.5rem;margin-bottom:2rem;background:var(--red);color:var(--white);font-size:.7rem;font-weight:900} .junior-benefit-card h4{margin:0 0 1rem;font-size:clamp(1.3rem,2vw,1.85rem);line-height:1;text-transform:uppercase} .junior-benefit-card p{margin:0 0 1rem;color:#4a4740;line-height:1.68} .junior-benefit-card p:last-child{margin-bottom:0} @media(max-width:900px){.junior-training-head,.junior-benefits-heading{grid-template-columns:1fr}.junior-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} @media(max-width:680px){.junior-pathway-grid,.junior-benefit-grid{grid-template-columns:1fr}.junior-benefits-heading>p{margin-top:1rem}.junior-pathway-card{padding:1.8rem}} .kids-training{position:relative;isolation:isolate;overflow:hidden;padding-bottom:0;background:var(--bone);color:var(--ink)} .kids-hero-intro{max-width:720px;margin-top:clamp(1.5rem,3vw,2.3rem);padding-left:clamp(1rem,2vw,1.5rem);border-left:4px solid var(--red)} .kids-hero-intro p{margin:0 0 .85rem;color:#d8d3ca;font-size:clamp(.98rem,1.25vw,1.12rem);line-height:1.65} .kids-hero-intro p:last-child{margin-bottom:0}.kids-hero-intro strong{color:var(--white)}.kids-hero-intro a{color:var(--red);font-weight:800;text-decoration:underline;text-underline-offset:4px} .kids-training::before{content:'柔術';position:absolute;z-index:-1;left:-.18em;top:.12em;color:rgba(230,59,32,.055);font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(18rem,44vw,44rem);font-weight:700;line-height:.78;letter-spacing:-.18em;writing-mode:vertical-rl;pointer-events:none} .kids-benefits-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;border-bottom:1px solid var(--line);padding-bottom:1.4rem} .kids-benefits-heading h2{margin:.35rem 0 0;font-size:clamp(2.65rem,5vw,5.8rem);font-weight:900;line-height:.88;letter-spacing:-.055em;text-transform:uppercase} .kids-benefits-heading h2 span,.kids-benefits-heading h2 em{display:block} .kids-benefits-heading h2 em{color:var(--red-aa-dark);font-style:normal;white-space:nowrap} .kids-benefits-heading p{max-width:470px;margin:0;color:#4a4740;line-height:1.65} .kids-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.9rem,1.7vw,1.4rem)} .kids-benefit-card{position:relative;overflow:hidden;min-width:0;padding:clamp(1.4rem,2.2vw,2.15rem);background:var(--white);border:1px solid var(--line);border-top:5px solid var(--red);box-shadow:0 12px 28px rgba(23,23,20,.06)} .kids-benefit-card::after{position:absolute;right:.08em;bottom:-.28em;color:rgba(230,59,32,.065);font:900 clamp(7rem,11vw,12rem)/1 Impact,sans-serif;pointer-events:none} .kids-benefit-card>*{position:relative;z-index:1} .kids-benefit-card>span{display:block;margin-bottom:1.7rem;color:var(--red);font-size:.7rem;font-weight:900;letter-spacing:.13em} .kids-benefit-card h3{margin:0 0 1rem;font-size:clamp(1.25rem,1.7vw,1.7rem);line-height:1;text-transform:uppercase} .kids-benefit-card p{margin:0;color:#4a4740;line-height:1.68} .kids-video-showcase{width:auto;margin-top:clamp(3rem,5vw,4.5rem);margin-inline:calc(-1 * var(--section-gutter));padding:clamp(2rem,5vw,4.5rem);padding-inline:var(--section-gutter);background:linear-gradient(rgba(243,239,229,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.045) 1px,transparent 1px),linear-gradient(135deg,rgba(230,59,32,.11),transparent 48%),#191916;background-size:48px 48px,48px 48px,auto,auto;border-top:7px solid var(--red);box-shadow:0 24px 55px rgba(23,23,20,.18);color:var(--bone)} .kids-video-showcase::before{color:rgba(230,59,32,.2)} .kids-video-showcase .video-showcase-heading h2{color:var(--white)} .kids-video-showcase .video-showcase-heading h2 em{color:var(--dark-display-heading)} .kids-video-showcase .video-showcase-heading .kicker{color:var(--dark-small-copy)} .kids-video-showcase .video-showcase-heading>p:last-child{color:#cbc6bc} .kids-video-showcase .video-card{border-color:rgba(243,239,229,.28);box-shadow:0 24px 58px rgba(0,0,0,.52)} .kids-video-showcase .video-card:hover,.kids-video-showcase .video-card:focus-visible{border-color:var(--red);box-shadow:0 30px 72px rgba(0,0,0,.68)} .junior-video-showcase{width:auto;margin-inline:calc(-1 * var(--section-gutter));padding-block:clamp(2rem,5vw,4.5rem);padding-inline:var(--section-gutter);background:linear-gradient(rgba(243,239,229,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.045) 1px,transparent 1px),linear-gradient(135deg,rgba(230,59,32,.11),transparent 48%),#191916;background-size:48px 48px,48px 48px,auto,auto;border-top:7px solid var(--red);box-shadow:0 24px 55px rgba(23,23,20,.18);color:var(--bone)} .junior-video-showcase::before{color:rgba(230,59,32,.2)} .junior-video-showcase .video-showcase-heading h2{color:var(--white)} .junior-video-showcase .video-showcase-heading h2 em{color:var(--dark-display-heading)} .junior-video-showcase .video-showcase-heading .kicker{color:var(--dark-small-copy)} .junior-video-showcase .video-showcase-heading>p:last-child{color:#cbc6bc} .junior-video-showcase .video-card{border-color:rgba(243,239,229,.28);box-shadow:0 24px 58px rgba(0,0,0,.52)} .junior-video-showcase .video-card:hover,.junior-video-showcase .video-card:focus-visible{border-color:var(--red);box-shadow:0 30px 72px rgba(0,0,0,.68)} .junior-video-showcase+.junior-benefits-heading{margin-top:clamp(3rem,5vw,4.5rem)} .kids-gallery{position:relative;isolation:isolate;overflow:hidden;width:auto;margin-top:0;margin-inline:calc(-1 * var(--section-gutter));padding:clamp(2rem,5vw,4.5rem);padding-inline:var(--section-gutter);background:transparent;color:var(--ink);border-top:0;box-shadow:none} .kids-gallery::before{content:'柔術';position:absolute;z-index:0;left:-.12em;right:auto;top:.02em;color:rgba(183,46,32,.075);font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(16rem,34vw,34rem);font-weight:700;line-height:.78;letter-spacing:-.16em;writing-mode:vertical-rl;pointer-events:none} .kids-gallery>*{position:relative;z-index:1} .kids-gallery-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:clamp(1.5rem,5vw,5rem);align-items:end;margin-bottom:clamp(2rem,4vw,3rem)} .kids-gallery-heading h3{margin:.3rem 0 0;font-family:var(--display-font);font-size:clamp(56px,6.4vw,100px);font-weight:900;line-height:.8;letter-spacing:-.03em;text-transform:uppercase} .kids-gallery-heading h3 em{display:block;color:var(--red);font-style:normal} .kids-gallery-heading>p{max-width:520px;margin:0;color:#4a4740;line-height:1.7} .kids-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.65rem,1vw,1rem)} .kids-gallery-grid figure{min-width:0;aspect-ratio:1/1;margin:0;overflow:hidden;background:#2b2925} .kids-gallery-grid .bb-gallery-item span{background:rgba(23,23,20,.9)} @media(max-width:1050px){.kids-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} @media(max-width:900px){.kids-training-head,.kids-gallery-heading{grid-template-columns:1fr}.kids-benefits-heading{display:block}.kids-benefits-heading p{max-width:620px;margin-top:1.25rem}.kids-intro-panel{grid-template-columns:1fr}.kids-intro-panel img{max-height:430px}.kids-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} @media(max-width:620px){.kids-benefit-grid{grid-template-columns:1fr}.kids-benefits-heading{display:block}.kids-benefits-heading p{margin-top:1rem}.kids-intro-copy{padding:1.8rem}.kids-gallery-grid{grid-template-columns:1fr}} @media(max-width:420px){.kids-benefits-heading h2 em{white-space:normal}} .bb-profile-main{background:#f3efe5;color:var(--deep-ink)} .bb-profile-hero .eyebrow,.instructors-hero-lite .eyebrow{margin:0 0 1rem;text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:800} .bb-profile-hero .eyebrow span,.instructors-hero-lite .eyebrow span{display:inline-block;width:28px;height:2px;margin-right:10px;vertical-align:middle;background:var(--bright-red)} .bb-profile-hero h1{margin:0;font-size:clamp(3rem,7vw,6.6rem);line-height:.88;text-transform:uppercase;letter-spacing:-.055em} .bb-profile-hero{position:relative;min-height:clamp(410px,48vw,590px);overflow:hidden;background:linear-gradient(135deg,var(--deep-ink) 0%,var(--deep-ink) 68%,#25231f 68%,#25231f 100%);color:var(--white);isolation:isolate} .bb-profile-hero::before{content:"柔";position:absolute;z-index:-1;right:clamp(-1rem,3vw,3rem);top:50%;transform:translateY(-50%) rotate(-4deg);color:rgba(239,60,34,.11);font:900 clamp(18rem,38vw,34rem)/.8 Impact,sans-serif} .bb-profile-hero::after{content:"";position:absolute;z-index:-1;left:0;bottom:0;width:38%;height:8px;background:var(--bright-red)} .bb-profile-hero-copy{position:relative;display:flex;min-height:inherit;flex-direction:column;justify-content:center;padding:clamp(3rem,7vw,6rem) max(5vw,24px);max-width:1050px} .bb-profile-rank{margin:1.5rem 0 0;max-width:580px;color:#d8d4ca;font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.6} .bb-hero-intro{max-width:850px;margin-top:1.5rem;padding-left:1.25rem;border-left:3px solid var(--bright-red);color:#e4e0d8;font-size:clamp(.95rem,1.2vw,1.08rem);line-height:1.65} .bb-hero-intro p{margin:0 0:.75rem}.bb-hero-intro p:last-child{margin-bottom:0} .bb-hero-back{align-self:flex-start;margin-bottom:clamp(2rem,4vw,3.5rem);padding-bottom:.35rem;border-bottom:2px solid var(--bright-red);color:var(--white);text-decoration:none;font-size:.78rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase} .bb-hero-back:hover,.bb-hero-back:focus-visible{color:var(--bright-red)} .bb-profile-content{display:block;padding-top:clamp(3.5rem,7vw,7rem);padding-bottom:clamp(3.5rem,7vw,7rem);background:#f3efe5} .bb-profile-gallery h2{margin:.35rem 0 1.4rem;font-size:clamp(2.5rem,5vw,5rem);line-height:.9;letter-spacing:-.045em} .bb-biography{--bio-pad:clamp(2rem,5vw,5rem);max-width:980px;margin:0 auto;background:var(--white);border:1px solid #d9d1c4;border-top:6px solid var(--deep-ink);box-shadow:0 20px 46px rgba(31,27,21,.08);font-size:1.08rem;line-height:1.85;overflow:hidden} .bb-biography h2,.bb-biography h3{margin:2.8rem 0 .9rem;font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.55rem,2.5vw,2.35rem);font-weight:700;line-height:1.05;letter-spacing:normal;text-transform:uppercase} .bb-biography h2:first-child,.bb-biography h3:first-child{margin-top:0} .bb-biography p{max-width:76ch;margin:0 0 1.5rem;color:#393731} .bb-biography h2+p,.bb-biography h3+p{font-size:1.14rem} .bb-biography ul,.bb-biography ol{margin:0 0 1.5rem;padding-left:1.4rem} .bb-biography>.bb-profile-gallery{margin:clamp(3rem,6vw,5rem) calc(var(--bio-pad) * -1);padding:clamp(2.5rem,5vw,4.5rem) var(--bio-pad);background:var(--deep-ink);color:var(--white);border-block:7px solid var(--bright-red);content-visibility:auto;contain-intrinsic-size:auto 1600px} .bb-biography>.bb-profile-gallery .kicker{color:var(--bright-red)} .bb-biography>.bb-profile-gallery+*{margin-top:clamp(3rem,6vw,5rem)} .bb-profile-gallery>div{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:clamp(150px,18vw,270px);gap:clamp(.65rem,1vw,1rem);margin-top:2rem} .bb-profile-gallery figure{grid-column:span 3;margin:0;overflow:hidden;background:#292824} .bb-profile-gallery figure:first-child{grid-column:span 6;grid-row:span 2} .bb-profile-gallery figure:nth-child(8n+6){grid-column:span 6} .bb-gallery-item{position:relative;display:block;width:100%;height:100%;overflow:hidden;color:var(--white);text-decoration:none} .bb-gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease} .bb-gallery-item span{position:absolute;right:1rem;bottom:1rem;padding:.55rem .7rem;background:rgba(23,23,20,.88);border-bottom:2px solid var(--bright-red);color:var(--white);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease} .bb-gallery-item:hover img,.bb-gallery-item:focus-visible img{transform:scale(1.035);filter:brightness(.72)} .bb-gallery-item:hover span,.bb-gallery-item:focus-visible span{opacity:1;transform:none} .bb-gallery-item:focus-visible{outline:3px solid var(--bright-red);outline-offset:-3px} .bb-lightbox{width:min(94vw,1280px);height:min(92vh,900px);max-width:none;max-height:none;padding:0;border:0;background:transparent;color:var(--white);overflow:visible} .bb-lightbox::backdrop{background:rgba(8,8,7,.94);backdrop-filter:blur(5px)} .bb-lightbox-shell{position:relative;display:grid;place-items:center;width:100%;height:100%;padding:3.5rem 5rem 2.7rem} .bb-lightbox-image{display:block;max-width:100%;max-height:calc(92vh - 6.5rem);width:auto;height:auto;object-fit:contain;box-shadow:0 24px 70px rgba(0,0,0,.55)} .bb-lightbox-close,.bb-lightbox-prev,.bb-lightbox-next{position:absolute;z-index:2;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(23,23,20,.82);color:var(--white);font:700 1.5rem/1 Arial,sans-serif;cursor:pointer} .bb-lightbox-close{top:.25rem;right:.25rem} .bb-lightbox-prev{left:.25rem;top:50%;transform:translateY(-50%)} .bb-lightbox-next{right:.25rem;top:50%;transform:translateY(-50%)} .bb-lightbox-close:hover,.bb-lightbox-prev:hover,.bb-lightbox-next:hover,.bb-lightbox-close:focus-visible,.bb-lightbox-prev:focus-visible,.bb-lightbox-next:focus-visible{background:var(--bright-red);border-color:var(--bright-red);outline:0} .bb-lightbox-count{position:absolute;left:50%;bottom:.25rem;transform:translateX(-50%);margin:0;font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase} .black-belt-instructor-cards{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(rgba(23,23,20,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.032) 1px,transparent 1px),radial-gradient(circle at 91% 5%,rgba(183,46,32,.085),transparent 24%),var(--bone);background-size:48px 48px,48px 48px,auto,auto} .black-belt-instructor-cards::before{content:'柔術';position:absolute;z-index:0;top:.04em;right:-.08em;color:rgba(183,46,32,.065);font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(17rem,34vw,34rem);font-weight:700;line-height:.78;letter-spacing:-.16em;writing-mode:vertical-rl;pointer-events:none} .black-belt-instructor-cards>*{position:relative;z-index:1} .instructors-hero-lite{position:relative;min-height:clamp(360px,42vw,500px);overflow:hidden;background:linear-gradient(135deg,var(--deep-ink) 0%,var(--deep-ink) 69%,#25231f 69%,#25231f 100%);color:var(--white);isolation:isolate} .instructors-hero-lite::before{content:"柔";position:absolute;z-index:-1;right:clamp(-1rem,4vw,4rem);top:50%;transform:translateY(-50%) rotate(-4deg);color:rgba(239,60,34,.11);font:900 clamp(17rem,35vw,31rem)/.8 Impact,sans-serif} .instructors-hero-lite::after{content:"";position:absolute;z-index:-1;left:0;bottom:0;width:38%;height:8px;background:var(--bright-red)} .instructors-hero-lite>div{display:flex;min-height:inherit;flex-direction:column;justify-content:center;padding:clamp(3rem,7vw,5.5rem) max(5vw,24px);max-width:1050px} .instructors-hero-lite h1{max-width:900px;margin:0;font-size:clamp(3.4rem,7vw,6.8rem);line-height:.88;letter-spacing:-.055em;text-transform:uppercase} .instructors-hero-lite>div>p:last-child{max-width:670px;margin:1.4rem 0 0;color:#d8d4ca;font-size:clamp(1rem,1.6vw,1.22rem);line-height:1.65} .bb-instructor-heading{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,7rem);align-items:end;margin-bottom:clamp(2.5rem,5vw,4.5rem)} .bb-instructor-heading h2{margin:.35rem 0 0;font-size:clamp(2.8rem,6vw,6rem);line-height:.88;letter-spacing:-.05em;text-transform:uppercase} .bb-instructor-heading>p:last-child{max-width:650px;margin:0 0 .35rem;font-size:1.05rem;line-height:1.75;color:#625f58} .bb-instructor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2.2vw,2rem)} .bb-instructor-card{display:flex;flex-direction:column;background:var(--white);border:1px solid #d7d0c3;box-shadow:0 12px 30px rgba(31,27,21,.07);transition:transform .22s ease,box-shadow .22s ease} .bb-instructor-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(31,27,21,.14)} .bb-instructor-photo{aspect-ratio:1/1;background:#d9d3c8} .bb-instructor-photo img{transition:transform .3s ease,filter .3s ease} .bb-instructor-photo:hover img,.bb-instructor-photo:focus-visible img{transform:scale(1.035);filter:brightness(.86)} .bb-instructor-card-copy{display:flex;flex:1;flex-direction:column;padding:clamp(1.25rem,2vw,1.7rem)} .bb-instructor-card-copy h2{min-height:2.05em;margin:0 0 1rem;font-size:clamp(1.5rem,2.2vw,2.15rem);line-height:1.02;letter-spacing:-.025em;text-transform:uppercase} .bb-instructor-card-copy h2>span{display:block} .bb-instructor-card-copy p{display:-webkit-box;min-height:6.6em;margin:0 0 1.35rem;color:#625f58;font-size:.96rem;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden} .bb-instructor-button{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding:.9rem 1rem;background:var(--deep-ink);color:var(--white);text-decoration:none;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:background .2s ease} .bb-instructor-button:hover,.bb-instructor-button:focus-visible{background:var(--bright-red)} @media(max-width:900px){.bb-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bb-profile-hero{min-height:460px}.bb-profile-gallery>div{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(180px,40vw,320px)}.bb-profile-gallery figure,.bb-profile-gallery figure:nth-child(8n+6){grid-column:span 1}.bb-profile-gallery figure:first-child{grid-column:span 2;grid-row:span 2}} @media(max-width:900px){.bb-instructor-heading{grid-template-columns:1fr}.bb-instructor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} @media(max-width:560px){.bb-card-grid,.bb-instructor-grid{grid-template-columns:1fr}.bb-profile-hero{min-height:430px}.bb-profile-hero-copy{padding-top:2.5rem;padding-bottom:2.5rem}.bb-biography{--bio-pad:1.4rem}.bb-profile-gallery>div{grid-template-columns:1fr;grid-auto-rows:min(84vw,360px)}.bb-profile-gallery figure,.bb-profile-gallery figure:first-child,.bb-profile-gallery figure:nth-child(8n+6){grid-column:1;grid-row:auto}.bb-lightbox-shell{padding:3.5rem .5rem 3rem}.bb-lightbox-prev{left:.5rem}.bb-lightbox-next{right:.5rem}.bb-lightbox-close{right:.5rem}} .private-tuition-content{position:relative;isolation:isolate;overflow:hidden;background-color:var(--bone);background-image:linear-gradient(rgba(23,23,20,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.03) 1px,transparent 1px),linear-gradient(138deg,transparent 0 72%,rgba(230,59,32,.09) 72.15% 72.85%,transparent 73%),radial-gradient(circle at 92% 12%,rgba(230,59,32,.075),transparent 24%);background-size:44px 44px,44px 44px,auto,auto} .private-tuition-content::before{content:'柔術';position:absolute;z-index:0;right:clamp(-72px,-3vw,-18px);top:clamp(-74px,-3vw,-20px);color:rgba(230,59,32,.06);font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(240px,35vw,560px);font-weight:700;line-height:.78;letter-spacing:-.14em;writing-mode:vertical-rl;text-orientation:upright;transform:rotate(2deg);pointer-events:none} .private-tuition-content>*{position:relative;z-index:1} .private-tuition-heading{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,.65fr);gap:clamp(38px,7vw,100px);align-items:end;margin-bottom:clamp(48px,6vw,82px)} .private-tuition-heading h2{margin:12px 0 0;font-size:clamp(54px,6.7vw,102px);line-height:.88;letter-spacing:-.05em;text-transform:uppercase} .private-tuition-heading h2 em{color:var(--red)} .private-tuition-heading>p{max-width:590px;margin:0 0 8px;color:var(--muted-ink);font-size:clamp(16px,1.4vw,20px);line-height:1.72} .private-tuition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.5vw,34px)} .private-tuition-card{min-width:0;padding:clamp(32px,4vw,56px)} .private-card-label{display:block;margin-bottom:clamp(32px,3vw,48px);color:var(--red);font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase} .private-tuition-card p{margin:0;color:var(--muted-ink);font-size:15px;line-height:1.75} .private-tuition-card p+p{margin-top:18px} .private-tuition-card a{color:var(--red);font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px} .private-tuition-card blockquote{margin:26px 0 0;padding:20px 0 0;border-top:1px solid var(--line);color:var(--ink);font-size:16px;font-weight:800;line-height:1.65} .private-fee-list,.private-training-list{display:grid;gap:0;margin:24px 0 0;padding:0;border-top:1px solid var(--line);list-style:none} .private-fee-list li,.private-training-list li{padding:13px 0;border-bottom:1px solid var(--line);color:#4f4b44;font-size:14px;line-height:1.55} .private-fee-list strong{float:right;margin-left:16px;color:var(--ink)} .private-tuition-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;align-items:center;margin-top:clamp(34px,5vw,60px)} .private-tuition-cta p{max-width:560px;margin:0;color:var(--muted-ink);font-size:14px;line-height:1.65} .private-tuition-content + .detail-links{display:none} @media(max-width:900px){.private-tuition-heading{grid-template-columns:1fr}.private-tuition-grid{grid-template-columns:1fr}} @media(max-width:560px){.private-fee-list strong{float:none;display:block;margin:5px 0 0}} .free-feature-grid{counter-reset:free-text-card} .free-feature-card{counter-increment:free-text-card} .adult-benefit-grid{counter-reset:adult-text-card} .adult-benefit-card{counter-increment:adult-text-card} .junior-benefit-grid{counter-reset:junior-text-card} .junior-benefit-card{counter-increment:junior-text-card} .private-tuition-grid{counter-reset:private-text-card} .private-tuition-card{counter-increment:private-text-card} .free-feature-card,.adult-benefit-card,.junior-benefit-card,.kids-benefit-card,.private-tuition-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid #d7d1c5;background:rgba(255,255,255,.68);box-shadow:0 18px 42px rgba(23,23,20,.07)} .free-feature-card::after,.adult-benefit-card::after,.junior-benefit-card::after,.kids-benefit-card::after,.private-tuition-card::after,.adult-benefit-card::before{position:absolute;z-index:0;right:clamp(18px,2.2vw,30px);top:clamp(16px,1.8vw,24px);bottom:auto;margin:0;color:rgba(230,59,32,.16);font:900 clamp(50px,6vw,86px)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;writing-mode:horizontal-tb;pointer-events:none} .free-feature-card::after{content:counter(free-text-card,decimal-leading-zero)} .adult-benefit-card::before{content:counter(adult-text-card,decimal-leading-zero)} .junior-benefit-card::after{content:counter(junior-text-card,decimal-leading-zero)} .kids-benefit-card::after{content:attr(data-number)} .private-tuition-card::after{content:counter(private-text-card,decimal-leading-zero)} .free-feature-card>*,.adult-benefit-card>*,.junior-benefit-card>*,.kids-benefit-card>*,.private-tuition-card>*{position:relative;z-index:1} .free-feature-card h2,.adult-benefit-card h3,.junior-benefit-card h4,.kids-benefit-card h3,.private-tuition-card h3{margin-top:0;margin-bottom:clamp(22px,2.2vw,30px);padding-right:clamp(74px,8vw,112px);padding-bottom:18px;border-bottom:4px solid var(--red);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-weight:900;letter-spacing:-.025em;line-height:.96;text-transform:uppercase} .adult-benefit-card{border-top:1px solid #d7d1c5} .adult-benefit-card h3{font-size:clamp(1.8rem,2.7vw,2.75rem)} .junior-benefit-card{border-bottom:1px solid #d7d1c5} .junior-benefit-card>span{display:none} .junior-benefit-card h4{font-size:clamp(1.55rem,2.2vw,2.2rem)} .kids-benefit-card{border-top:1px solid #d7d1c5} .kids-benefit-card h3{font-size:clamp(1.5rem,2vw,2rem)} .private-tuition-card h3{font-size:clamp(1.75rem,2.5vw,2.6rem)} @media(max-width:560px){.free-feature-card h2,.adult-benefit-card h3,.junior-benefit-card h4,.kids-benefit-card h3,.private-tuition-card h3{padding-right:64px} .free-feature-card::after,.adult-benefit-card::after,.junior-benefit-card::after,.kids-benefit-card::after,.private-tuition-card::after,.adult-benefit-card::before{right:16px;top:16px;font-size:52px}} .junior-benefit-card h4{width:calc(100% - clamp(74px,8vw,112px));padding-right:0} @media(max-width:560px){.junior-benefit-card h4{width:calc(100% - 64px);padding-right:0}} .error-hero{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(620px,74vh,820px);display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:clamp(40px,7vw,110px);align-items:center;padding:clamp(76px,9vw,132px) var(--content-gutter);background-color:var(--bone);background-image:linear-gradient(rgba(23,23,20,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.032) 1px,transparent 1px),linear-gradient(138deg,transparent 0 72%,rgba(230,59,32,.11) 72.15% 72.9%,transparent 73.05%),radial-gradient(circle at 88% 20%,rgba(230,59,32,.09),transparent 26%);background-size:44px 44px,44px 44px,auto,auto} .error-hero::before{content: '柔術';position:absolute;z-index:-1;right:clamp(-72px,-3vw,-18px);top:clamp(-80px,-3vw,-22px);color:rgba(230,59,32,.065);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(260px,38vw,590px);font-weight:700;line-height:.78;letter-spacing:-.14em;writing-mode:vertical-rl;text-orientation:upright;pointer-events:none} .error-hero-copy{max-width:790px} .error-hero h1{margin:18px 0 28px;font-size:clamp(74px,10vw,150px);line-height:.82;letter-spacing:-.06em;text-transform:uppercase} .error-hero h1 em{color:var(--red)} .error-hero-copy>p:last-of-type{max-width:650px;margin:0;color:var(--muted-ink);font-size:clamp(17px,1.5vw,21px);line-height:1.7} .error-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px} .error-secondary{border:1px solid var(--ink);color:var(--ink)} .error-secondary:hover{background:var(--ink);color:var(--bone)} .error-number{justify-self:end;margin:0;color:rgba(230,59,32,.17);font:900 clamp(190px,27vw,410px)/.76 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.075em;text-shadow:10px 10px 0 rgba(23,23,20,.035)} .error-links{background:var(--paper)} @media(max-width:900px){.error-hero{grid-template-columns:1fr;min-height:auto} .error-number{position:absolute;z-index:-1;right:-.08em;bottom:.08em;font-size:clamp(180px,48vw,330px);opacity:.55}} @media(max-width:560px){.error-hero{padding-top:64px;padding-bottom:72px} .error-hero h1{font-size:clamp(60px,20vw,90px)} .error-actions{align-items:stretch;flex-direction:column} .error-actions .button{width:100%}} .reviews-hero-mark{position:relative;isolation:isolate;overflow:hidden;align-self:center;justify-self:center;display:grid;width:min(78%,430px);aspect-ratio:1;place-content:center;padding:clamp(28px,4vw,54px);border:1px solid rgba(243,239,229,.22);border-top:7px solid var(--red);background-color:#1d1d19;background-image:linear-gradient(rgba(243,239,229,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.055) 1px,transparent 1px),linear-gradient(138deg,transparent 0 72%,rgba(230,59,32,.19) 72.2% 73.1%,transparent 73.3%),radial-gradient(circle at 82% 14%,rgba(230,59,32,.2),transparent 27%);background-size:42px 42px,42px 42px,auto,auto;box-shadow:0 30px 70px rgba(0,0,0,.34),inset 0 0 0 9px rgba(243,239,229,.018);color:var(--bone);transform:rotate(-1.5deg)} .reviews-hero-mark::before{content: '声';position:absolute;z-index:-1;right:-.06em;bottom:-.22em;color:rgba(230,59,32,.11);font:700 clamp(220px,24vw,350px)/1 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;pointer-events:none} .reviews-hero-mark::after{content: '';position:absolute;top:23px;right:23px;width:36px;height:36px;border-top:4px solid var(--red);border-right:4px solid var(--red)} .reviews-hero-mark>*{position:relative;z-index:1} .reviews-hero-stars{display:block;margin-bottom:clamp(20px,2.5vw,30px);color:var(--red);font-size:clamp(25px,3.1vw,43px);letter-spacing:.1em;line-height:1;text-shadow:0 10px 28px rgba(230,59,32,.24)} .reviews-hero-score{display:flex;align-items:center;gap:clamp(16px,2vw,26px);padding:clamp(15px,2vw,23px) 0;border-top:1px solid rgba(243,239,229,.2);border-bottom:1px solid rgba(243,239,229,.2)} .reviews-hero-score strong{color:var(--bone);font:900 clamp(112px,12vw,178px)/.7 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.06em} .reviews-hero-score span{color:var(--bone);font:900 clamp(27px,3vw,43px)/.86 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em} .reviews-hero-caption{display:block;margin-top:clamp(20px,2.5vw,30px);color:#aaa59a;font-size:9px;font-weight:900;letter-spacing:.15em;line-height:1.5} @media (max-width:980px){.reviews-hero-mark{width:min(72vw,430px);margin:20px auto 80px}} @media (max-width:520px){.reviews-hero-mark{width:min(82vw,350px);padding:27px;transform:none} .reviews-hero-score strong{font-size:105px} .reviews-hero-score span{font-size:28px}} .perspective-section{position:relative;isolation:isolate;overflow:hidden} .perspective-section::before{content: '声';position:absolute;z-index:-1;top:-70px;right:-20px;color:rgba(230,59,32,.08);font:700 clamp(260px,36vw,560px)/.8 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;pointer-events:none} .review-section-heading{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:42px;margin-bottom:clamp(40px,6vw,76px)} .review-section-heading h2{font-size:clamp(50px,6.3vw,94px)} .review-section-heading>p{max-width:520px;margin:0 0 7px;color:#605b53;font-size:16px;line-height:1.75} .review-grid{display:grid;gap:clamp(18px,2.4vw,32px)} .perspective-grid{grid-template-columns:repeat(3,minmax(0,1fr))} .review-card{display:grid;grid-template-rows:auto 1fr;min-width:0;overflow:hidden;border:1px solid rgba(23,23,20,.2);background:var(--soft-white);box-shadow:0 18px 42px rgba(23,23,20,.09)} .review-photo{display:block;width:100%;aspect-ratio:1;object-fit:cover;filter:saturate(.86) contrast(1.03)} .review-card-body{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(25px,3vw,40px);background-color:var(--soft-white);background-image:linear-gradient(rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.014) 1px,transparent 1px);background-size:38px 38px} .review-stars{display:block;width:140px;height:24px;margin-bottom:24px} .review-card h3{margin:0 0 18px;padding-bottom:16px;border-bottom:4px solid var(--red);font:900 clamp(30px,2.8vw,43px)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em;color:#171714} .review-card blockquote{margin:0} .review-card blockquote p{margin:0;color:#292721;font:400 16px/1.72 Arial,Helvetica,sans-serif;letter-spacing:normal;text-transform:none} .review-person{display:grid;gap:3px;width:100%;margin:auto 0 0;padding-top:24px} .review-person strong{color:#171714;font-size:16px} .review-person span{color:#575249;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase} .perspective-section{background:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(135deg,rgba(230,59,32,.08),transparent 45%),var(--paper);background-size:48px 48px,48px 48px,auto,auto;color:var(--ink)} .perspective-section::before{content: '黒帯';color:rgba(230,59,32,.09)} .perspective-heading>p{color:#605b53} .perspective-card{border-color:rgba(23,23,20,.2);box-shadow:0 18px 42px rgba(23,23,20,.1)} .perspective-card h3{color:var(--ink)} .review-profile-link{display:flex;justify-content:space-between;width:100%;margin-top:22px;padding-top:16px;border-top:1px solid rgba(23,23,20,.18);color:#b52716;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase} .review-profile-link:hover,.review-profile-link:focus-visible{color:#a62213} @media (max-width:980px){.review-section-heading{grid-template-columns:1fr;gap:22px} .perspective-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:640px){.reviews-hero-mark{justify-self:start} .perspective-grid{grid-template-columns:1fr} .review-card{grid-template-columns:minmax(110px,34%) 1fr;grid-template-rows:1fr} .review-photo{height:100%;aspect-ratio:auto} .review-card-body{padding:24px 20px} .review-card h3{font-size:clamp(29px,9vw,39px)}} @media (max-width:440px){.review-card{grid-template-columns:1fr;grid-template-rows:auto 1fr} .review-photo{height:auto;aspect-ratio:1}} .qualification-section{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),var(--paper);background-size:48px 48px,48px 48px,auto} .qualification-section::before{content: '指導';position:absolute;z-index:-1;top:-65px;right:-28px;color:rgba(230,59,32,.075);font:700 clamp(250px,36vw,560px)/.8 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;pointer-events:none} .qualification-heading{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:42px;margin-bottom:clamp(42px,6vw,76px)} .qualification-heading h1,.qualification-heading h2{font-size:clamp(48px,6.2vw,92px)} .qualification-heading>p{max-width:520px;margin:0 0 7px;color:#5c574f;font-size:16px;line-height:1.75} .qualification-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.3vw,32px)} .qualification-card{position:relative;min-width:0;padding:clamp(30px,3.4vw,50px);overflow:hidden;border:1px solid rgba(23,23,20,.2);background-color:var(--soft-white);background-image:linear-gradient(rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(135deg,transparent 0 86%,rgba(230,59,32,.07) 86.2% 87%,transparent 87.2%);background-size:38px 38px,38px 38px,auto;box-shadow:0 18px 42px rgba(23,23,20,.09)} .qualification-card::before{content: 'NVQ';position:absolute;top:19px;right:20px;color:rgba(230,59,32,.09);font:900 clamp(52px,5vw,76px)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.04em;pointer-events:none} .qualification-card>*{position:relative;z-index:1} .qualification-card .kicker{margin-bottom:34px} .qualification-card h2{margin:0 0 21px;padding-bottom:18px;border-bottom:4px solid var(--red);color:var(--ink);font:900 clamp(30px,2.8vw,43px)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em} .qualification-card>p:not(.kicker){margin:0;color:#2e2b25;font-size:16px;line-height:1.72} .qualification-card ul{display:grid;gap:0;width:100%;margin:26px 0 0;padding:0;border-top:1px solid rgba(23,23,20,.18);list-style:none} .qualification-card li{padding:13px 0;border-bottom:1px solid rgba(23,23,20,.14);color:#454139;font-size:12px;font-weight:800;letter-spacing:.035em} .qualification-card li::before{content: '✓';margin-right:10px;color:var(--red);font-weight:900} .first-aid-section::before{content: '救護'} .first-aid-card::before{content: '+';top:8px;color:rgba(230,59,32,.1);font-size:clamp(70px,7vw,104px);line-height:.8} .first-aid-card h2{min-height:2.7em} .masa-section::before{content: '基準'} .masa-card::before{content: '✓';top:17px;color:rgba(230,59,32,.1);font-size:clamp(55px,5.7vw,86px);line-height:1} .masa-card h2{min-height:2.7em} .info-overview-section::before{content: '案内'} .info-overview-card{display:flex;flex-direction:column} .info-overview-card::before{content: 'TSD';top:19px;color:rgba(230,59,32,.09);font-size:clamp(48px,4.7vw,72px);line-height:1} .info-overview-card h2{min-height:2.7em} .info-overview-card .card-action{display:flex;justify-content:space-between;gap:20px;margin-top:auto;padding-top:24px;border-top:1px solid rgba(23,23,20,.18);color:var(--ink);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase} .info-overview-card .card-action span{color:var(--red);font-size:18px;line-height:.7} .info-overview-card .card-action:hover{color:var(--red)} .info-overview-card li:last-child{border-bottom:0} .info-overview-card .card-action,.review-card .review-profile-link,.bb-instructor-card .bb-instructor-button{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:260px;max-width:100%;min-height:52px;margin-top:auto;padding:0 22px;border:0;background:var(--red);color:var(--white);font-size:12px;font-weight:900;letter-spacing:.09em;text-align:center;text-decoration:none;text-transform:uppercase;transition:transform .18s ease,background .18s ease} .info-overview-card ul{margin-bottom:24px} .review-card .review-profile-link{margin-top:24px} .info-overview-card .card-action:hover,.info-overview-card .card-action:focus-visible,.review-card .review-profile-link:hover,.review-card .review-profile-link:focus-visible,.bb-instructor-card .bb-instructor-button:hover,.bb-instructor-card .bb-instructor-button:focus-visible{background:#c9331d;color:var(--white);transform:translateY(-2px)} .info-overview-card .card-action:hover,.info-overview-card .card-action:focus-visible{background:#8f2117} .info-overview-card .card-action span,.review-card .review-profile-link span,.bb-instructor-card .bb-instructor-button span,.venue-card .venue-directions span{display:none} .venue-card .venue-directions{justify-self:center;width:260px;max-width:calc(100% - 40px);min-height:52px;margin:20px 0;justify-content:center;text-align:center} @media (max-width:960px){.qualification-heading{grid-template-columns:1fr;gap:22px} .qualification-grid{grid-template-columns:1fr} .first-aid-card h2,.masa-card h2,.info-overview-card h2{min-height:0}} @media (max-width:560px){.qualification-card{padding:28px 23px} .qualification-card::before{top:16px;right:14px}} .detail-content:not(.contact-detail),.programmes,.free-offer,.women-defence-section,.pricing-information,.locations-directory,.adult-benefits,.junior-training,.kids-training,.private-tuition-content,.perspective-section,.qualification-section{background-color:var(--paper);background-image:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),radial-gradient(circle at 91% 9%,rgba(230,59,32,.065),transparent 25%);background-size:48px 48px,48px 48px,auto} .detail-content:not(.contact-detail){position:relative;isolation:isolate;overflow:hidden;align-items:start} .detail-content:not(.contact-detail)::before{content: '柔術';position:absolute;z-index:-1;top:-70px;right:-28px;color:rgba(230,59,32,.075);font:700 clamp(260px,36vw,560px)/.8 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;letter-spacing:-.14em;writing-mode:vertical-rl;text-orientation:upright;pointer-events:none} .detail-content:not(.contact-detail)>*{position:relative;z-index:1} .detail-content:not(.contact-detail) .detail-copy{padding-top:clamp(8px,1.5vw,20px)} .detail-content:not(.contact-detail) .detail-body{position:relative;isolation:isolate;min-width:0;overflow:hidden;padding:clamp(30px,4vw,56px);border:1px solid rgba(23,23,20,.2);border-top:5px solid var(--red);background-color:var(--soft-white);background-image:linear-gradient(rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(135deg,transparent 0 86%,rgba(230,59,32,.07) 86.2% 87%,transparent 87.2%);background-size:38px 38px,38px 38px,auto;box-shadow:0 18px 42px rgba(23,23,20,.09)} .detail-content:not(.contact-detail) .detail-body::before{content: 'TSD';position:absolute;z-index:-1;top:17px;right:22px;color:rgba(230,59,32,.09);font:900 clamp(54px,5vw,78px)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.04em;pointer-events:none} .detail-content:not(.contact-detail) .detail-body>*{position:relative;z-index:1} .detail-content:not(.contact-detail) .detail-body>p:first-child{padding-right:clamp(52px,7vw,94px)} .free-feature-card,.adult-benefit-card,.junior-benefit-card,.kids-benefit-card,.private-tuition-card,.women-defence-card,.pricing-card,.qualification-card{border-color:rgba(23,23,20,.2);background-color:var(--soft-white);background-image:linear-gradient(rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(135deg,transparent 0 86%,rgba(230,59,32,.07) 86.2% 87%,transparent 87.2%);background-size:38px 38px,38px 38px,auto;box-shadow:0 18px 42px rgba(23,23,20,.09)} .section-heading>p:last-child,.free-offer-heading>p:last-child,.women-section-heading>p:last-child,.pricing-heading>p:last-child,.locations-heading>p:last-child,.adult-benefits-head>p:last-child,.junior-training-head>p:last-child,.private-tuition-heading>p:last-child,.review-section-heading>p:last-child,.perspective-heading>p:last-child,.qualification-heading>p:last-child{color:#5c574f;line-height:1.75} @media (max-width:820px){.detail-content:not(.contact-detail){grid-template-columns:1fr;gap:34px} .detail-content:not(.contact-detail) .detail-body>p:first-child{padding-right:58px}} @media (max-width:560px){.detail-content:not(.contact-detail) .detail-body{padding:28px 23px} .detail-content:not(.contact-detail) .detail-body::before{top:15px;right:14px;font-size:52px} .detail-content:not(.contact-detail) .detail-body>p:first-child{padding-right:42px}} .local-service-page{background:var(--bone);color:var(--ink)} .local-service-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(340px,.6fr);min-height:660px;overflow:hidden;background:var(--ink);color:var(--bone)} .local-service-hero-copy{position:relative;z-index:1;align-self:center;padding:clamp(72px,8vw,118px) var(--content-gutter)} .local-service-hero-copy::after{content: '';position:absolute;right:0;bottom:0;width:34%;height:7px;background:var(--red)} .local-service-hero h1{max-width:900px;margin:24px 0 0;font-size:clamp(62px,7.7vw,118px);line-height:.84} .local-service-hero-copy>p:not(.eyebrow){max-width:720px;margin:30px 0 0;color:#d3cec4;font-size:clamp(17px,1.5vw,22px);line-height:1.65} .local-service-pills{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0} .local-service-pills span{padding:8px 13px;border:1px solid rgba(243,239,229,.36);border-radius:999px;color:#ece7dd;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase} .local-service-hero-art{position:relative;display:grid;place-items:center;isolation:isolate;overflow:hidden;background:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(145deg,var(--bright-red) 0 54%,#c92c18 54% 100%)} .local-service-hero-art::before,.local-service-hero-art::after{content: '';position:absolute;z-index:-1;width:62%;aspect-ratio:1;border:1px solid rgba(23,23,20,.22);transform:rotate(45deg)} .local-service-hero-art::after{width:33%;background:rgba(23,23,20,.09)} .local-service-hero-art>span{color:rgba(23,23,20,.8);font:700 clamp(150px,22vw,330px)/.75 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;letter-spacing:-.18em;writing-mode:vertical-rl;text-orientation:upright} .local-service-hero-art small{position:absolute;right:24px;bottom:24px;left:24px;padding-top:13px;border-top:2px solid rgba(23,23,20,.72);color:var(--ink);font-size:10px;font-weight:900;letter-spacing:.13em;text-align:center;text-transform:uppercase} .local-service-overview{position:relative;overflow:hidden;padding-top:clamp(76px,9vw,132px);padding-bottom:clamp(78px,9vw,132px);background:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),var(--paper);background-size:46px 46px,46px 46px,auto} .local-service-overview::before{content: '道場';position:absolute;right:-38px;top:-58px;color:rgba(230,59,32,.07);font:700 clamp(230px,34vw,510px)/.8 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;pointer-events:none} .local-service-heading{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:clamp(36px,6vw,88px);margin-bottom:clamp(46px,6vw,78px)} .local-service-heading h2,.local-video-heading h2,.local-faq-heading h2{font-size:clamp(50px,6vw,88px)} .local-service-heading>p{max-width:680px;margin:0 0 7px;color:#504c45;font-size:16px;line-height:1.78} .local-service-heading>p a{color:#b52b19;font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px} .local-service-card-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,2.5vw,34px)} .local-service-card{position:relative;display:flex;min-width:0;min-height:560px;flex-direction:column;overflow:hidden;padding:clamp(32px,4vw,56px);border:1px solid rgba(23,23,20,.2);background:linear-gradient(rgba(23,23,20,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.018) 1px,transparent 1px),var(--soft-white);background-size:38px 38px,38px 38px,auto;box-shadow:0 18px 42px rgba(23,23,20,.09)} .local-service-card::before{content: '柔';position:absolute;top:18px;right:24px;color:rgba(230,59,32,.085);font:700 clamp(72px,8vw,116px)/.8 Georgia,serif} .local-service-card>*{position:relative;z-index:1} .local-service-card h3{margin:0 0 26px;padding-bottom:22px;border-bottom:5px solid var(--red);font:900 clamp(37px,4.2vw,62px)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.025em;text-transform:uppercase} .local-service-card h3 em{color:var(--red);font-style:normal} .local-service-card>p:not(.kicker):not(.local-venue-line){margin:0;color:#39362f;font-size:16px;line-height:1.76} .local-venue-line{margin:22px 0 0;padding:18px 0;border-top:1px solid rgba(23,23,20,.18);border-bottom:1px solid rgba(23,23,20,.18);color:#5c574e;font-size:13px;line-height:1.65} .local-venue-line strong{color:var(--ink);font-size:14px} .local-card-button{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:260px;max-width:100%;min-height:52px;margin-top:auto;padding:0 20px;background:var(--red);color:var(--white);font-size:11px;font-weight:900;letter-spacing:.09em;text-align:center;text-transform:uppercase;transition:background .18s ease,transform .18s ease} .local-service-card>p + .local-card-button,.local-service-card>.local-venue-line + .local-card-button{margin-top:30px} .local-card-button:hover,.local-card-button:focus-visible{background:#bd2c18;color:var(--white);transform:translateY(-2px)} .local-video-section{position:relative;padding-top:clamp(78px,9vw,130px);padding-bottom:clamp(78px,9vw,130px);overflow:hidden;background:var(--ink);color:var(--bone)} .local-video-section::before{content: '映像';position:absolute;right:-30px;bottom:-70px;color:rgba(230,59,32,.11);font:700 clamp(240px,35vw,520px)/.75 Georgia,serif;pointer-events:none} .local-video-heading{position:relative;z-index:1;margin-bottom:clamp(38px,5vw,64px)} .local-video-heading h2 em{color:var(--red)} .local-video-card{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);max-width:1180px;border:1px solid rgba(243,239,229,.24);background:#24231f;color:var(--white);box-shadow:0 28px 72px rgba(0,0,0,.42);transition:transform .22s ease,border-color .22s ease} .local-video-card:hover,.local-video-card:focus-visible{border-color:var(--red);color:var(--white);transform:translateY(-4px)} .local-video-visual{position:relative;min-height:420px;overflow:hidden;background:#0c0c0b} .local-video-visual::after{content: '';position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(8,8,7,.86))} .local-video-visual>img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.08);transition:transform .35s ease,filter .35s ease} .local-video-card:hover .local-video-visual>img{transform:scale(1.035);filter:saturate(1) contrast(1.06)} .local-video-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,4vw,58px)} .local-video-copy small{margin-bottom:18px;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase} .local-video-copy strong{font:900 clamp(34px,3.8vw,54px)/.94 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em;text-transform:uppercase} .local-video-copy>span{margin-top:24px;color:#c9c4ba;font-size:15px;line-height:1.72} .local-video-copy b{align-self:flex-start;margin-top:30px;padding:15px 20px;background:var(--red);color:var(--white);font-size:10px;letter-spacing:.1em;text-transform:uppercase} .local-faq-section{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:clamp(42px,7vw,105px);padding-top:clamp(78px,9vw,130px);padding-bottom:clamp(78px,9vw,130px);background:#eee8dc} .local-faq-heading{align-self:start} .local-faq-list{border-top:1px solid rgba(23,23,20,.24)} .local-faq-list details{border-bottom:1px solid rgba(23,23,20,.24)} .local-faq-list summary{position:relative;padding:24px 48px 24px 0;color:var(--ink);font-size:16px;font-weight:900;line-height:1.4;cursor:pointer} .local-faq-list summary::after{content: '+';position:absolute;top:20px;right:2px;color:var(--red);font-size:25px} .local-faq-list details[open] summary::after{content: '−'} .local-faq-list details>p{margin:0;padding:0 50px 25px 0;color:#4e4941;font-size:15px;line-height:1.78} @media (max-width:980px){.local-service-hero{grid-template-columns:1fr} .local-service-hero-art{min-height:420px} .local-service-hero-art>span{writing-mode:horizontal-tb;letter-spacing:-.14em} .local-service-heading,.local-faq-section{grid-template-columns:1fr} .local-service-card{min-height:0} .local-video-card{grid-template-columns:1fr} .local-video-visual{min-height:min(64vw,520px)}} @media (max-width:700px){.local-service-hero{min-height:0} .local-service-hero-copy{padding-top:64px;padding-bottom:66px} .local-service-hero h1{font-size:clamp(52px,15vw,78px);line-height:.9} .local-service-hero-art{min-height:290px} .local-service-card-grid{grid-template-columns:1fr} .local-service-card{padding:30px 24px} .local-service-card h3{font-size:clamp(36px,11vw,48px)} .local-video-visual{min-height:68vw} .local-video-copy{padding:30px 24px} .local-faq-list summary{font-size:15px}} .footer{position:relative;display:block;padding:clamp(58px,7vw,92px) clamp(20px,5vw,72px) 30px;overflow:hidden;background:#0e0e0d;color:var(--bone)} .footer::before{content: '';position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(243,239,229,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,229,.055) 1px,transparent 1px);background-size:40px 40px;pointer-events:none} .footer-cards{position:relative;z-index:1;max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.18fr repeat(3,1fr);gap:14px} .footer-card{position:relative;min-width:0;min-height:350px;padding:30px 28px;background:#191917;border:1px solid rgba(243,239,229,.16);box-shadow:0 18px 38px rgba(0,0,0,.22)} .footer-card::after{content: '';position:absolute;top:-1px;right:-1px;width:38px;height:38px;border-top:3px solid var(--red);border-right:3px solid var(--red);pointer-events:none} .footer-card h3{margin:0 0 20px;color:var(--white);font:900 20px/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:.025em;text-transform:uppercase} .footer-card nav{display:block;font-size:inherit;letter-spacing:normal;text-transform:none} .footer-card-contact{background:#f3efe5;color:var(--ink);border-color:#f3efe5;border-top:0} .footer-card-contact::after{border-color:var(--red)} .footer-brand-lockup{display:flex;align-items:center;gap:14px} .footer-brand-lockup img{width:70px;height:70px;flex:0 0 70px;display:block;object-fit:cover;background:#000;border:1px solid rgba(23,23,20,.22)} .footer-brand-lockup span{min-width:0;height:70px;display:flex;flex-direction:column;justify-content:space-between} .footer-brand-lockup strong{color:var(--ink);font:900 37px/.945 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.01em;text-transform:uppercase} .footer-brand-lockup small{margin-top:0;color:#b72e20;font-size:7px;font-weight:900;line-height:1.25;letter-spacing:.1em;text-transform:uppercase} .footer-card-intro{margin:22px 0 19px !important;color:#4e4941;font-size:12px !important;line-height:1.65 !important} .footer-contact-list,.footer-link-list{margin:0;padding:0;list-style:none} .footer-contact-list li{margin-top:12px} .footer-contact-list span{display:block;margin-bottom:3px;color:#8a8276;font-size:8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase} .footer-contact-list a{color:var(--ink);font-size:12px;font-weight:800;overflow-wrap:anywhere} .footer-contact-list a:hover,.footer-contact-list a:focus-visible{color:#b72e20} .footer-contact-list .footer-phone-button{min-height:48px;margin-top:7px;padding:0 16px;display:flex;align-items:center;justify-content:center;background:var(--red);color:var(--white);border:1px solid #f05a43;box-shadow:4px 4px 0 var(--red-shadow);font-size:15px;font-weight:900;letter-spacing:.035em;transition:background .16s ease,transform .16s ease,box-shadow .16s ease} .footer-contact-list .footer-phone-button:hover,.footer-contact-list .footer-phone-button:focus-visible{background:var(--ink);color:var(--white);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--red-shadow)} .footer-socials{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px} .footer-social-link{min-width:0;min-height:42px;padding:0 10px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:var(--white);border:1px solid #2c2c29;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;transition:background .16s ease,transform .16s ease} .footer-social-link>span{position:relative;width:22px;height:22px;flex:0 0 22px;display:grid;place-items:center} .footer-social-youtube>span{background:#f00;border-radius:6px} .footer-social-youtube>span::after{content: '';margin-left:2px;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:7px solid #fff} .footer-social-facebook>span{padding-top:3px;overflow:hidden;background:#1877f2;border-radius:50%;color:#fff;font:900 20px/22px Arial,sans-serif} .footer .footer-social-link:hover,.footer .footer-social-link:focus-visible{background:var(--red);color:var(--white);transform:translateY(-2px)} .footer-contact-button{width:100%;min-height:48px;margin-top:22px;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--white);border:1px solid #2c2c29;box-shadow:4px 4px 0 var(--red-shadow);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;transition:background .16s ease,transform .16s ease,box-shadow .16s ease} .footer .footer-contact-button:hover,.footer .footer-contact-button:focus-visible{background:var(--red);color:var(--white);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--red-shadow)} .footer-contact-list .footer-phone-button,.footer .footer-contact-button{width:100%;min-height:42px;padding:0 10px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:var(--white);border:1px solid #2c2c29;box-shadow:none;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;transition:background .16s ease,transform .16s ease} .footer-contact-list .footer-phone-button:hover,.footer-contact-list .footer-phone-button:focus-visible,.footer .footer-contact-button:hover,.footer .footer-contact-button:focus-visible{background:var(--red);color:var(--white);transform:translateY(-2px);box-shadow:none} .footer-action-icon{position:relative;width:22px;height:22px;flex:0 0 22px;display:grid;place-items:center;border-radius:50%;background:var(--red)} .footer-phone-icon::before{content: '\260e';color:var(--white);font:900 14px/1 Arial,sans-serif} .footer-location-icon::before{content: '';width:10px;height:10px;border:2px solid var(--white);border-radius:50% 50% 50% 0;transform:rotate(-45deg)} .footer-location-icon::after{content: '';position:absolute;top:7px;left:9px;width:4px;height:4px;border-radius:50%;background:var(--white)} .footer-contact-link{margin-top:8px} .footer-contact-icon::before{content: '\2709';color:var(--white);font:900 14px/1 Arial,sans-serif} .footer-card-contact .footer-contact-list{margin-top:18px} .footer-card-contact .footer-contact-list li{margin-top:0} .footer-card-contact .footer-phone-button{margin-top:0;font-size:14px} .footer-card-contact .footer-socials{margin-top:8px;grid-template-columns:minmax(0,1fr)} .footer-card-contact .footer-socials .footer-social-link{font-size:14px} .footer-card-contact .footer-contact-button{margin-top:8px;font-size:14px} .footer-link-list li{border-bottom:1px solid rgba(243,239,229,.13)} .footer-link-list li:last-child{border-bottom:0} .footer-link-list a{display:block;padding:10px 0;color:#c9c4ba;font-size:12px;font-weight:700;line-height:1.25;transition:color .15s ease,padding .15s ease} .footer-link-list a:hover,.footer-link-list a:focus-visible{padding-left:6px;color:#ff6048} .footer-bottom{position:relative;z-index:1;max-width:1240px;margin:26px auto 0 !important;padding-top:22px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(243,239,229,.18);color:#8b867c;font-size:9px !important;line-height:1.5 !important;letter-spacing:.1em;text-transform:uppercase} .footer-bottom a:hover,.footer-bottom a:focus-visible{color:#ff6048} @media (max-width:1080px){.footer-cards{grid-template-columns:repeat(2,minmax(0,1fr))} .footer-card{min-height:320px}} @media (max-width:620px){.footer{padding:46px 18px 24px} .footer-cards{grid-template-columns:1fr;gap:12px} .footer-card{min-height:0;padding:27px 24px} .footer-bottom{margin-top:22px !important;flex-direction:column} .footer-bottom span{display:inline}} .testimonial::before{content: '';position:absolute;z-index:0;top:50%;right:auto;bottom:auto;left:-4%;width:min(54vw,680px);height:auto;aspect-ratio:1;background:url('/images/police-badge-watermark-900w.webp') center / contain no-repeat;color:transparent;font-size:0;line-height:0;letter-spacing:0;filter:brightness(1.35) saturate(1.2);opacity:.38;transform:translateY(-50%) rotate(-7deg);writing-mode:horizontal-tb;pointer-events:none} .testimonial>*{position:relative;z-index:1} @media (max-width:900px){.testimonial::before{left:-18%;width:min(78vw,620px);opacity:.3}} @media (max-width:560px){.testimonial::before{top:34%;left:-48%;width:130vw;opacity:.24}} .programme-card-age{display:inline-block;white-space:nowrap} .sitemap-hero-mark{font-size:clamp(54px,9vw,138px);font-weight:900;letter-spacing:-.06em;line-height:.85;text-transform:uppercase} .sitemap-directory{position:relative;overflow:hidden;background:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),var(--bone);background-size:38px 38px} .sitemap-heading{max-width:760px;margin-bottom:52px} .sitemap-heading h2{margin:10px 0 20px;font-size:clamp(48px,6vw,86px);line-height:.92;letter-spacing:-.035em} .sitemap-heading>p:last-child{max-width:650px;color:#514c44;font-size:17px;line-height:1.75} .sitemap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px} .sitemap-group{padding:30px;border:1px solid rgba(23,23,20,.2);background:rgba(250,247,239,.84)} .sitemap-group h3{margin:0 0 18px;color:var(--ink);font-size:22px;line-height:1;text-transform:uppercase} .sitemap-links{margin:0;padding:0;list-style:none} .sitemap-links li{border-top:1px solid rgba(23,23,20,.12)} .sitemap-links a{display:block;padding:11px 0;color:#49453f;font-size:13px;font-weight:750;line-height:1.35;transition:color .15s ease,padding-left .15s ease} .sitemap-links a:hover,.sitemap-links a:focus-visible{padding-left:7px;color:var(--red)} @media (max-width:980px){.sitemap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:620px){.sitemap-grid{grid-template-columns:1fr} .sitemap-group{padding:25px 22px}} :root{--deep-ink:#171714;--red-aa-dark:var(--red);--red-aa-light:#ff705d;--red-aa-soft:#ffd9d2;--dark-small-copy:#d6d1c7;--dark-display-heading:#aaa59b} h1 em,h2 em,h3 em,h4 em{color:var(--red-aa-dark)} .hero h1 em,.detail-hero h1 em,.method h2 em,.free-prepare-heading h2 em,.women-video-showcase h2 em,.local-video-heading h2 em,.local-service-hero h1 em,.bb-profile-hero h1 em,.instructors-hero-lite h1 em{color:var(--dark-display-heading)} .kicker,.card-topline span:first-child,.programme-card>a>span,.faq-list summary span,.mobile-menu nav details>summary span,.adult-benefit-number,.private-card-label,.private-tuition-card a,.free-feature-label,.free-feature-card a,.kids-benefit-card>span,.pricing-facts li span,.joining-benefits li span,.pricing-details>p strong,.venue-details h3,.privacy-contents>p,.privacy-body a{color:var(--red-aa-dark)} .card-topline span:not(:first-child),.schedule-row .day,.schedule-row .level,.footer-contact-list span,.free-feature-card p,.price-options li>span small,.price-options li>strong small{color:#5f5a52} .method-points article>span,.credentials>p,.instructor-profile-button small,.local-video-copy small,.venue-card-heading p span,.privacy-summary small,.privacy-rights-callout h4,.privacy-rights-callout a,.free-prepare-card>span{color:var(--dark-small-copy)} .hero .eyebrow,.detail-hero .eyebrow,.local-service-hero .eyebrow,.bb-profile-hero .eyebrow,.instructors-hero-lite .eyebrow,.method .kicker,.bb-biography>.bb-profile-gallery .kicker,.women-video-showcase .kicker,.local-video-heading .kicker,.free-prepare-heading .kicker,.seo-gallery-section .kicker{color:var(--dark-small-copy)} .programme-card:hover .card-topline span:first-child,.programme-card:hover>a>span,.footer a:hover{color:var(--white)} .button-primary,.top-cta,.mobile-menu>summary,.instructor-profile-button:hover,.schedule-row a:hover,.adult-benefits-visual span,.junior-pathway-card:nth-child(2),.review-card .review-profile-link,.contact-direct p:last-child a,.footer-contact-list .footer-phone-button,.venue-directions,.info-overview-card .card-action,.local-card-button,.local-video-copy b,.free-prepare-actions .button,.bb-instructor-card .bb-instructor-button{background:var(--red-aa-dark);color:var(--white)} .detail-content .detail-body>ul li>span:first-child{color:var(--red-aa-dark)} .local-service-hero-art{background:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(145deg,var(--red-aa-dark) 0 54%,#8f2117 54% 100%);background-size:42px 42px,42px 42px,auto} .local-service-hero-art>span,.local-service-hero-art small{color:var(--white)} .button-primary:hover,.button-primary:focus-visible,.top-cta:hover,.top-cta:focus-visible{background:#8f2117} .mobile-menu>summary>span,.mobile-menu[open]>summary>span{color:var(--white);font-weight:900} .manifesto,.trial{background:var(--red-aa-dark);color:var(--white)} .manifesto-small,.belt-line,.trial .kicker,.trial-stamp,.trial>p:not(.kicker),.trial small{color:var(--white)} .manifesto-large em,.trial h2 em{color:var(--red-aa-soft)} .belt-line i{background:var(--white)} .trial-stamp{border-color:var(--white)} .bb-profile-hero,.instructors-hero-lite{background-color:#171714} @media (max-width:900px){.bb-profile-hero,.instructors-hero-lite{background-image:none}} .bb-profile-content{position:relative;isolation:isolate;overflow:hidden;background-color:#ece6da;background-image:linear-gradient(rgba(23,23,20,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.035) 1px,transparent 1px),radial-gradient(circle at 92% 9%,rgba(183,46,32,.09),transparent 27%);background-size:48px 48px,48px 48px,auto} .bb-profile-content::before{content: '';position:absolute;z-index:-1;top:clamp(2rem,7vw,6rem);left:0;width:clamp(70px,10vw,150px);height:clamp(220px,35vw,480px);background:var(--red-aa-dark);opacity:.08;clip-path:polygon(0 0,100% 18%,68% 100%,0 88%)} .bb-biography{--bio-pad:clamp(2rem,5vw,5.25rem);position:relative;z-index:1;max-width:1120px;padding:var(--bio-pad);overflow:hidden;background:linear-gradient(145deg,rgba(183,46,32,.035),transparent 36%),#fffdf8;border:1px solid rgba(23,23,20,.16);border-top:0;box-shadow:0 30px 70px rgba(31,27,21,.14)} .bb-biography::before{content: '';position:absolute;z-index:2;inset:0 0 auto;height:8px;background:linear-gradient(90deg,var(--red-aa-dark) 0 23%,var(--deep-ink) 23% 100%)} .bb-biography::after{content: '柔術';position:absolute;right:-.08em;top:.12em;color:rgba(183,46,32,.045);font-family: 'Yu Mincho','Noto Serif JP',Georgia,serif;font-size:clamp(13rem,25vw,24rem);font-weight:700;line-height:.82;writing-mode:vertical-rl;pointer-events:none} .bb-biography>*{position:relative;z-index:1} .bb-biography>p,.bb-biography>h2,.bb-biography>h3,.bb-biography>ul,.bb-biography>ol{width:min(100%,760px);margin-left:auto;margin-right:auto} .bb-biography>h2:first-child{margin-top:0;margin-bottom:.9rem;font:900 clamp(2.4rem,4.7vw,4.7rem)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.045em} .bb-biography>h3:first-of-type{display:flex;align-items:center;gap:.9rem;margin-top:0;margin-bottom:2rem;color:var(--red-aa-dark);font-size:clamp(.82rem,1.2vw,.98rem);font-weight:900;line-height:1.35;letter-spacing:.13em} .bb-biography>h3:first-of-type::before{content: '';flex:0 0 42px;height:3px;background:currentColor} .bb-biography>h3:first-of-type + p{margin-bottom:2rem;padding:1.15rem 1.35rem;border-left:4px solid var(--red-aa-dark);background:rgba(232,226,213,.62);color:var(--deep-ink);font-size:clamp(1.08rem,1.6vw,1.3rem);font-weight:700;line-height:1.7} .bb-biography>p{color:#3b3832;font-size:clamp(1rem,1.15vw,1.08rem);line-height:1.85} .bb-biography>.bb-profile-gallery{width:calc(100% + (var(--bio-pad) * 2));margin:clamp(3.5rem,7vw,6rem) calc(var(--bio-pad) * -1);padding:clamp(3rem,5vw,5rem) var(--bio-pad);background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(145deg,#171714,#27241f);background-size:42px 42px,42px 42px,auto;border:0;border-block:0;box-shadow:inset 0 8px 0 var(--red-aa-dark),inset 0 -1px 0 rgba(255,255,255,.12);color:var(--white);text-align:center;content-visibility:auto;contain-intrinsic-size:auto 1100px} .bb-biography>.bb-profile-gallery .kicker{display:flex;align-items:center;justify-content:center;gap:.8rem;margin-bottom:1rem;color:var(--dark-small-copy)} .bb-biography>.bb-profile-gallery .kicker::before,.bb-biography>.bb-profile-gallery .kicker::after{content: '';width:28px;height:1px;background:currentColor;opacity:.75} .bb-biography>.bb-profile-gallery h2{width:auto;margin:0;color:var(--dark-display-heading);font-size:clamp(2.8rem,5vw,5.4rem);line-height:.86} .bb-profile-gallery>div{display:flex;flex-wrap:wrap;justify-content:center;width:min(100%,860px);margin:clamp(2rem,4vw,3rem) auto 0;gap:clamp(.65rem,1.15vw,1rem)} .bb-profile-gallery figure,.bb-profile-gallery figure:first-child,.bb-profile-gallery figure:nth-child(8n+6){flex:0 1 calc(25% - 1rem);min-width:min(130px,100%);max-width:205px;aspect-ratio:1 / 1;margin:0;overflow:hidden;background:#292824;border:1px solid rgba(255,255,255,.2);box-shadow:0 12px 28px rgba(0,0,0,.3)} .bb-profile-gallery .bb-gallery-item,.bb-profile-gallery .bb-gallery-item img{width:100%;height:100%;aspect-ratio:1 / 1} @media (max-width:560px){.bb-biography{--bio-pad:1.35rem} .bb-biography>h2:first-child{padding-top:.5rem} .bb-biography>h3:first-of-type + p{padding:1rem} .bb-biography>.bb-profile-gallery{padding-top:3.25rem;padding-bottom:3.25rem} .bb-profile-gallery>div{gap:.65rem}} .seo-guide-main{overflow:hidden;background:var(--bone);color:var(--ink)} .seo-guide-main .local-video-visual>img{object-fit:contain;object-position:center;transform:none} .seo-guide-main .local-video-card:hover .local-video-visual>img{transform:none} .seo-guide-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);min-height:clamp(560px,64vw,760px);overflow:hidden;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(145deg,#171714 0 72%,#27241f 72% 100%);background-size:46px 46px,46px 46px,auto;color:var(--white)} .seo-guide-hero::before{content: '柔術';position:absolute;z-index:-1;right:-.05em;top:50%;transform:translateY(-50%);color:rgba(183,46,32,.11);font-family: 'Yu Mincho','Noto Serif JP',Georgia,serif;font-size:clamp(18rem,36vw,35rem);font-weight:700;line-height:.78;letter-spacing:-.15em;writing-mode:vertical-rl;pointer-events:none} .seo-guide-hero-copy{display:flex;flex-direction:column;justify-content:flex-start;padding:clamp(3.5rem,6vw,5rem) clamp(24px,6vw,90px) clamp(4rem,7vw,6rem)} .seo-guide-breadcrumb{margin:0 0 clamp(2.5rem,5vw,4rem);color:#c9c4ba;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase} .seo-guide-breadcrumb a{padding-bottom:.25rem;border-bottom:1px solid var(--red-aa-soft)} .seo-guide-hero h1{max-width:900px;margin:0;font-size:clamp(4rem,8.2vw,8.2rem);line-height:.8;letter-spacing:-.055em} .seo-guide-hero h1 em{display:block;color:var(--dark-display-heading)} .seo-guide-hero-copy>p:last-child{max-width:720px;margin:2rem 0 0;color:#d5d0c6;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.7} .seo-guide-hero-card{align-self:start;position:relative;z-index:1;margin:calc(clamp(56px,6vw,80px) + clamp(2.5rem,5vw,4rem) + 1.1rem) clamp(24px,5vw,72px) clamp(2rem,5vw,5rem) 0;padding:clamp(2rem,4vw,3.5rem);background:var(--red-aa-dark);color:var(--white);box-shadow:18px 18px 0 rgba(0,0,0,.24)} .seo-guide-hero-card small{display:block;margin-bottom:1.5rem;font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase} .seo-guide-hero-card strong{display:block;font:900 clamp(2rem,3.3vw,3.6rem)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.025em;text-transform:uppercase} .seo-guide-hero-card ul{margin:2rem 0 0;padding:1.4rem 0 0;border-top:1px solid rgba(255,255,255,.38);list-style:none} .seo-guide-hero-card li{margin-top:.75rem;padding-left:1.2rem;position:relative;font-size:.92rem;line-height:1.5} .seo-guide-hero-card li::before{content: '';position:absolute;left:0;top:.55em;width:6px;height:6px;background:var(--white)} .seo-guide-section{position:relative;background:var(--bone)} .beginner-start-section{isolation:isolate;overflow:hidden;background:linear-gradient(rgba(23,23,20,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.032) 1px,transparent 1px),radial-gradient(circle at 92% 12%,rgba(183,46,32,.085),transparent 28%),var(--bone);background-size:48px 48px,48px 48px,auto,auto} .beginner-start-section::before{content: '柔術';position:absolute;z-index:0;top:.05em;right:-.08em;color:rgba(183,46,32,.065);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(17rem,34vw,34rem);font-weight:700;line-height:.78;letter-spacing:-.16em;writing-mode:vertical-rl;pointer-events:none} .beginner-start-section>*{position:relative;z-index:1} .beginner-start-section .seo-guide-card-grid{counter-reset:beginner-start-card} .beginner-start-section .seo-guide-card{counter-increment:beginner-start-card;position:relative;isolation:isolate;overflow:hidden;padding:clamp(32px,3.5vw,50px);border:1px solid #d7d1c5;background:rgba(255,255,255,.68);box-shadow:0 18px 42px rgba(23,23,20,.07)} .beginner-start-section .seo-guide-card::after{content:counter(beginner-start-card,decimal-leading-zero);position:absolute;z-index:0;top:clamp(16px,1.8vw,24px);right:clamp(18px,2.2vw,30px);color:rgba(230,59,32,.16);font:900 clamp(50px,6vw,82px)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;pointer-events:none} .beginner-start-section .seo-guide-card>*{position:relative;z-index:1} .beginner-start-section .seo-guide-card>span{margin-bottom:clamp(32px,3vw,48px)} .beginner-start-section .seo-guide-card h3{margin:0 0 clamp(22px,2.2vw,30px);padding-right:clamp(66px,7vw,96px);padding-bottom:18px;border-bottom:4px solid var(--red-aa-dark);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(1.75rem,2.5vw,2.45rem);font-weight:900;line-height:.96;letter-spacing:-.025em;text-transform:uppercase} @media (max-width:560px){.beginner-start-section .seo-guide-card h3{padding-right:64px} .beginner-start-section .seo-guide-card::after{top:16px;right:16px;font-size:52px}} .seo-guide-heading{display:grid;grid-template-columns:minmax(0,.82fr) minmax(320px,1.18fr);gap:clamp(2rem,7vw,7rem);align-items:end;margin-bottom:clamp(2.5rem,5vw,4.5rem)} .seo-guide-heading h2{margin:.35rem 0 0;font-size:clamp(3rem,6.2vw,6.4rem);line-height:.86;letter-spacing:-.05em} .seo-guide-heading h2 em{display:block;color:var(--red-aa-dark)} #grading-meaning-title{font-size:clamp(3rem,4.8vw,5rem)} .grading-meaning-section .seo-guide-heading,.grading-standards-section .seo-guide-heading{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:clamp(2rem,5vw,5rem)} #grading-standards-title{font-size:clamp(3rem,5vw,5.4rem)} .seo-guide-heading>p{max-width:680px;margin:0;color:#4e4a42;font-size:clamp(1rem,1.45vw,1.18rem);line-height:1.78} .seo-guide-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.6rem)} .seo-guide-card{min-width:0;padding:clamp(1.6rem,3vw,2.8rem);background:#fffdf8;border:1px solid rgba(23,23,20,.17);border-top:6px solid var(--red-aa-dark);box-shadow:0 15px 34px rgba(31,27,21,.08)} .seo-guide-card>span{display:block;margin-bottom:2rem;color:var(--red-aa-dark);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase} .seo-guide-card h3{margin:0 0 1.1rem;font-size:clamp(1.45rem,2.5vw,2.2rem);line-height:1;text-transform:uppercase} .seo-guide-card p,.seo-guide-card li{color:#4e4a42;line-height:1.72} .seo-guide-card ul{margin:1.25rem 0 0;padding-left:1.1rem} .seo-guide-prose{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.2rem,3vw,2.4rem)} .seo-guide-prose article{padding:clamp(1.8rem,4vw,3.5rem);background:var(--deep-ink);color:var(--white)} .seo-guide-prose article:nth-child(even){background:#fffdf8;border:1px solid rgba(23,23,20,.17);color:var(--ink)} .seo-guide-prose h3{margin:0 0 1.3rem;font-size:clamp(1.7rem,3vw,2.8rem);line-height:.98;text-transform:uppercase} .seo-guide-prose p,.seo-guide-prose li{color:inherit;line-height:1.78;opacity:.88} .seo-guide-prose ul{margin:1.4rem 0 0;padding-left:1.2rem} .seo-comparison-wrap{overflow-x:auto;border:1px solid rgba(23,23,20,.18);box-shadow:0 20px 48px rgba(31,27,21,.09)} .seo-comparison{width:100%;min-width:720px;border-collapse:collapse;background:#fffdf8} .seo-comparison th,.seo-comparison td{padding:clamp(1rem,2.2vw,1.8rem);border-right:1px solid rgba(23,23,20,.13);border-bottom:1px solid rgba(23,23,20,.13);vertical-align:top;text-align:left;line-height:1.65} .seo-comparison th{background:var(--deep-ink);color:var(--white);font-size:.77rem;letter-spacing:.09em;text-transform:uppercase} .seo-comparison tbody th{width:20%;background:#e8e2d5;color:var(--ink)} .seo-gallery-section{position:relative;overflow:hidden;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),var(--deep-ink);background-size:42px 42px;color:var(--white);text-align:center} .seo-gallery-section .kicker{color:var(--dark-small-copy)} .seo-gallery-section h2{margin:0;color:var(--dark-display-heading);font-size:clamp(3rem,6vw,6.2rem);line-height:.86} #beginner-gallery-title{color:#fff} .beginner-fit-section{isolation:isolate;overflow:hidden;background:linear-gradient(rgba(23,23,20,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.032) 1px,transparent 1px),radial-gradient(circle at 90% 16%,rgba(183,46,32,.085),transparent 29%),var(--bone);background-size:48px 48px,48px 48px,auto,auto} .beginner-fit-section::before{content: '柔術';position:absolute;z-index:0;top:.04em;right:-.08em;color:rgba(183,46,32,.065);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(17rem,34vw,34rem);font-weight:700;line-height:.78;letter-spacing:-.16em;writing-mode:vertical-rl;pointer-events:none} .beginner-fit-section>*{position:relative;z-index:1} .seo-guide-accent-section{isolation:isolate;overflow:hidden;background:linear-gradient(rgba(23,23,20,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.032) 1px,transparent 1px),radial-gradient(circle at 90% 16%,rgba(183,46,32,.085),transparent 29%),var(--bone);background-size:48px 48px,48px 48px,auto,auto} .seo-guide-accent-section::before{content: '柔術';position:absolute;z-index:0;top:.04em;right:-.08em;color:rgba(183,46,32,.065);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(17rem,34vw,34rem);font-weight:700;line-height:.78;letter-spacing:-.16em;writing-mode:vertical-rl;pointer-events:none} .seo-guide-accent-section>*{position:relative;z-index:1} .seo-guide-numbered-cards{counter-reset:seo-guide-card} .seo-guide-numbered-cards .seo-guide-card{counter-increment:seo-guide-card;position:relative;isolation:isolate;overflow:hidden;padding:clamp(32px,3.5vw,50px);border:1px solid #d7d1c5;background:rgba(255,255,255,.68);box-shadow:0 18px 42px rgba(23,23,20,.07)} .seo-guide-numbered-cards .seo-guide-card::after{content:counter(seo-guide-card,decimal-leading-zero);position:absolute;z-index:0;top:clamp(16px,1.8vw,24px);right:clamp(18px,2.2vw,30px);color:rgba(230,59,32,.16);font:900 clamp(50px,6vw,82px)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;pointer-events:none} .seo-guide-numbered-cards .seo-guide-card>*{position:relative;z-index:1} .seo-guide-numbered-cards .seo-guide-card>span{margin-bottom:clamp(32px,3vw,48px)} .seo-guide-numbered-cards .seo-guide-card h3{margin:0 0 clamp(22px,2.2vw,30px);padding-right:clamp(66px,7vw,96px);padding-bottom:18px;border-bottom:4px solid var(--red-aa-dark);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(1.75rem,2.5vw,2.45rem);font-weight:900;line-height:.96;letter-spacing:-.025em;text-transform:uppercase} #comparison-gallery-title,#grading-gallery-title{color:#fff} .seo-gallery-section>p:not(.kicker){max-width:660px;margin:1.4rem auto 0;color:#cbc6bc;line-height:1.72} .seo-guide-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.7rem,1.4vw,1.15rem);width:min(100%,1050px);margin:clamp(2.5rem,5vw,4.5rem) auto 0} .seo-guide-gallery figure{min-width:0;aspect-ratio:1 / 1;margin:0;overflow:hidden;background:#292824;border:1px solid rgba(255,255,255,.2);box-shadow:0 15px 34px rgba(0,0,0,.32)} .seo-guide-gallery .bb-gallery-item,.seo-guide-gallery .bb-gallery-item img{width:100%;height:100%;aspect-ratio:1 / 1} .seo-guide-gallery .bb-gallery-item span{background:rgba(23,23,20,.9)} .seo-pathway{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(23,23,20,.2);border:1px solid rgba(23,23,20,.2)} .seo-pathway article{min-width:0;padding:clamp(1.5rem,2.8vw,2.6rem);background:#fffdf8} .seo-pathway span{color:var(--red-aa-dark);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase} .seo-pathway h3{margin:2rem 0 1rem;font-size:clamp(1.3rem,2.2vw,1.9rem);line-height:1;text-transform:uppercase} .seo-pathway p{margin:0;color:#4e4a42;line-height:1.7} .beginner-pathway{counter-reset:beginner-path-card;gap:clamp(16px,2vw,28px);background:transparent;border:0} .beginner-path-section{isolation:isolate;overflow:hidden;background:linear-gradient(rgba(23,23,20,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.032) 1px,transparent 1px),radial-gradient(circle at 88% 18%,rgba(183,46,32,.085),transparent 29%),var(--bone);background-size:48px 48px,48px 48px,auto,auto} .beginner-path-section::before{content: '柔術';position:absolute;z-index:0;top:.04em;right:-.08em;color:rgba(183,46,32,.065);font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',Georgia,serif;font-size:clamp(17rem,34vw,34rem);font-weight:700;line-height:.78;letter-spacing:-.16em;writing-mode:vertical-rl;pointer-events:none} .beginner-path-section>*{position:relative;z-index:1} .beginner-pathway article{counter-increment:beginner-path-card;position:relative;isolation:isolate;overflow:hidden;padding:clamp(28px,3vw,44px);border:1px solid #d7d1c5;background:rgba(255,255,255,.68);box-shadow:0 18px 42px rgba(23,23,20,.07)} .beginner-pathway article::after{content:counter(beginner-path-card,decimal-leading-zero);position:absolute;z-index:0;top:clamp(16px,1.8vw,24px);right:clamp(16px,1.8vw,24px);color:rgba(230,59,32,.16);font:900 clamp(48px,5vw,72px)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;pointer-events:none} .beginner-pathway article>*{position:relative;z-index:1} .beginner-pathway span{display:block;margin-bottom:clamp(34px,3.5vw,50px)} .beginner-pathway h3{margin:0 0 clamp(20px,2vw,28px);padding-right:clamp(50px,5vw,72px);padding-bottom:16px;border-bottom:4px solid var(--red-aa-dark);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(1.5rem,2.1vw,2rem);font-weight:900;line-height:.96;letter-spacing:-.025em;text-transform:uppercase} @media (max-width:560px){.beginner-pathway article::after{top:16px;right:16px;font-size:52px} .beginner-pathway h3{padding-right:64px} .seo-guide-numbered-cards .seo-guide-card::after{top:16px;right:16px;font-size:52px} .seo-guide-numbered-cards .seo-guide-card h3{padding-right:64px}} .seo-pathway.seo-guide-numbered-pathway{counter-reset:seo-guide-path-card;gap:clamp(16px,2vw,28px);background:transparent;border:0} .seo-guide-numbered-pathway article{counter-increment:seo-guide-path-card;position:relative;isolation:isolate;overflow:hidden;padding:clamp(28px,3vw,44px);border:1px solid #d7d1c5;background:rgba(255,255,255,.68);box-shadow:0 18px 42px rgba(23,23,20,.07)} .seo-guide-numbered-pathway article::after{content:counter(seo-guide-path-card,decimal-leading-zero);position:absolute;z-index:0;top:clamp(16px,1.8vw,24px);right:clamp(16px,1.8vw,24px);color:rgba(230,59,32,.16);font:900 clamp(48px,5vw,72px)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;pointer-events:none} .seo-guide-numbered-pathway article>*{position:relative;z-index:1} .seo-guide-numbered-pathway span{display:block;margin-bottom:clamp(34px,3.5vw,50px)} .seo-guide-numbered-pathway h3{margin:0 0 clamp(20px,2vw,28px);padding-right:clamp(50px,5vw,72px);padding-bottom:16px;border-bottom:4px solid var(--red-aa-dark);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(1.5rem,2.1vw,2rem);font-weight:900;line-height:.96;letter-spacing:-.025em;text-transform:uppercase} .seo-pathway.belt-pathway{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch} .belt-pathway .belt-card{--belt-color:var(--red-aa-dark);border-top:8px solid var(--belt-color)} .belt-pathway .belt-card h3{border-bottom-color:var(--belt-color)} .belt-pathway .belt-card--white{--belt-color:#d6d1c7} .belt-pathway .belt-card--red{--belt-color:#b72e20} .belt-pathway .belt-card--yellow{--belt-color:#d3a400} .belt-pathway .belt-card--orange{--belt-color:#d66a16} .belt-pathway .belt-card--green{--belt-color:#287747} .belt-pathway .belt-card--blue{--belt-color:#285ca8} .belt-pathway .belt-card--purple{--belt-color:#70448f} .belt-pathway .belt-card--brown{--belt-color:#704831} .belt-pathway .belt-card--black{--belt-color:#171714} @media (max-width:920px){.seo-pathway.belt-pathway{grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:680px){.seo-pathway.belt-pathway{grid-template-columns:minmax(0,1fr)}} @media (max-width:560px){.seo-guide-numbered-pathway article::after{top:16px;right:16px;font-size:52px} .seo-guide-numbered-pathway h3{padding-right:64px}} .seo-guide-note{max-width:900px;margin:clamp(2rem,4vw,3.5rem) auto 0;padding:clamp(1.4rem,3vw,2.2rem);border-left:6px solid var(--red-aa-dark);background:#fffdf8;color:#4e4a42;line-height:1.75} .seo-guide-note strong{color:var(--ink)} .seo-guide-main .local-faq-heading h2{font-size:clamp(48px,4.6vw,66px);line-height:.88} @media (max-width:920px){.seo-guide-hero{grid-template-columns:1fr} .seo-guide-hero-card{width:min(100% - 48px,620px);margin:0 24px 3rem} .seo-guide-heading{grid-template-columns:1fr} .seo-guide-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))} .seo-pathway{grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:680px){.seo-guide-hero-copy{padding-top:4rem;padding-bottom:3rem} .seo-guide-card-grid,.seo-guide-prose{grid-template-columns:1fr} .seo-guide-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:430px){.seo-guide-gallery,.seo-pathway{grid-template-columns:1fr}} .seo-guide-heading h2{font-size:clamp(3rem,4.6vw,4.65rem)} .seo-guide-main .local-faq-heading h2{font-size:clamp(44px,4.2vw,62px)} .method-copy h2{font-size:clamp(50px,5.2vw,78px)} .faq h2{font-size:clamp(46px,4.8vw,69px)} .bb-profile-hero h1{max-width:100%;font-size:clamp(3rem,6vw,5.9rem);overflow-wrap:anywhere} .local-service-hero h1{max-width:100%;font-size:clamp(58px,6.2vw,100px)} @media (min-width:701px) and (max-width:1100px){.local-service-hero h1{font-size:clamp(54px,5.8vw,64px)}} @media (max-width:480px){.faq h2{font-size:clamp(42px,12vw,58px)} .method-copy h2{font-size:clamp(36px,11.5vw,45px)} .instructors-hero-lite h1{max-width:100%;font-size:clamp(2rem,10.5vw,2.625rem);overflow-wrap:anywhere}} .bb-instructor-grid{counter-reset:bb-instructor-card;gap:clamp(1rem,2.2vw,2rem)} .bb-instructor-card{counter-increment:bb-instructor-card;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:18px;min-width:0;padding:clamp(24px,2.4vw,34px);overflow:hidden;border:1px solid #cfc8bc;background:linear-gradient(rgba(23,23,20,.027) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.027) 1px,transparent 1px),linear-gradient(145deg,rgba(255,253,248,.96) 0 83%,rgba(230,59,32,.075) 83% 84%,rgba(255,253,248,.96) 84% 100%);background-size:28px 28px,28px 28px,auto;box-shadow:0 18px 42px rgba(23,23,20,.08)} .bb-instructor-card::before{content:counter(bb-instructor-card,decimal-leading-zero);position:absolute;z-index:0;top:20px;right:22px;color:rgba(230,59,32,.13);font:900 clamp(3.1rem,5vw,4.7rem)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;pointer-events:none} .bb-instructor-card>*{position:relative;z-index:1} .bb-instructor-card:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(23,23,20,.14)} .bb-instructor-photo{grid-column:1;grid-row:2;align-self:start;display:block;width:72px;height:72px;aspect-ratio:1 / 1;margin-top:2px;overflow:hidden;border:1px solid #bdb5a8;background:#d9d3c8;box-shadow:0 7px 16px rgba(23,23,20,.13)} .bb-instructor-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top} .bb-instructor-card-copy{display:contents} .bb-instructor-card-copy h2{grid-column:1 / -1;grid-row:1;min-height:0;margin:0 0 24px;padding:0 clamp(54px,5vw,74px) 16px 0;border-bottom:4px solid var(--red-aa-dark);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(1.7rem,2.15vw,2.25rem);font-weight:900;line-height:.96;letter-spacing:-.02em;text-transform:uppercase} .bb-instructor-card-copy h2::before{content: 'BLACK BELT PROFILE';display:block;margin:0 0 clamp(30px,3vw,42px);color:var(--red-aa-dark);font-family:Arial,Helvetica,sans-serif;font-size:.63rem;font-weight:900;line-height:1.2;letter-spacing:.17em} .bb-instructor-card-copy h2>span{display:block} .bb-instructor-card-copy p{grid-column:1;grid-row:2;display:block;width:100%;min-height:0;margin:0;justify-self:stretch;overflow:visible;color:#3f3a33;font-size:.95rem;line-height:1.65;-webkit-line-clamp:unset} .bb-instructor-card-copy p>.bb-instructor-photo{float:left;display:block;width:72px;height:72px;margin:2px 16px 8px 0;border:1px solid #bdb5a8;background:#d9d3c8;box-shadow:0 7px 16px rgba(23,23,20,.13);shape-outside:inset(0)} .bb-instructor-card .bb-instructor-button{grid-column:1 / -1;grid-row:3;align-self:end;justify-self:center;max-width:100%;margin-top:28px} @media (max-width:560px){.bb-instructor-card{grid-template-columns:minmax(0,1fr);column-gap:0;padding:22px} .bb-instructor-photo{width:64px;height:64px} .bb-instructor-card-copy p>.bb-instructor-photo{width:64px;height:64px;margin-right:14px} .bb-instructor-card-copy h2{padding-right:52px;font-size:clamp(1.7rem,9vw,2.15rem)}} .free-feature-card,.adult-benefit-card,.junior-benefit-card,.kids-benefit-card,.private-tuition-card,.women-defence-card,.pricing-card,.qualification-card,.detail-content:not(.contact-detail) .detail-body,.local-service-card,.seo-guide-card,.beginner-start-section .seo-guide-card,.seo-guide-numbered-cards .seo-guide-card,.seo-pathway article,.bb-instructor-card{background-color:var(--soft-white);background-image:linear-gradient(rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,20,.014) 1px,transparent 1px),linear-gradient(135deg,transparent 0 86%,rgba(230,59,32,.07) 86.2% 87%,transparent 87.2%);background-size:38px 38px,38px 38px,auto} :where(.detail-content:not(.contact-detail) .detail-body,.free-feature-card,.adult-benefit-card,.junior-benefit-card,.kids-benefit-card,.private-tuition-card,.women-defence-card,.pricing-card,.qualification-card,.local-service-overview,.local-faq-section,.seo-guide-section,.privacy-summary,.privacy-body,.bb-biography) p a:not(.button):not([class*="button"]),.contact-direct p:not(:last-child) a{color:var(--red-aa-dark);font-weight:800;text-decoration-line:underline;text-decoration-color:currentColor;text-decoration-thickness:1.5px;text-underline-offset:3px;overflow-wrap:anywhere} :where(.detail-content:not(.contact-detail) .detail-body,.free-feature-card,.adult-benefit-card,.junior-benefit-card,.kids-benefit-card,.private-tuition-card,.women-defence-card,.pricing-card,.qualification-card,.local-service-overview,.local-faq-section,.seo-guide-section,.privacy-summary,.privacy-body,.bb-biography) p a:not(.button):not([class*="button"]):is(:hover,:focus-visible),.contact-direct p:not(:last-child) a:is(:hover,:focus-visible){color:#8f2117;text-decoration-thickness:2px} .contact-detail .contact-direct p:not(:last-child) a{gap:10px;color:var(--white);font-size:14px;text-decoration:none} .contact-detail .contact-direct p:not(:last-child) a:is(:hover,:focus-visible){color:var(--white);text-decoration:none} .contact-detail .contact-direct p:last-child a{font-size:14px} .contact-detail .contact-direct a{width:100%;max-width:360px;white-space:nowrap} .contact-detail .contact-direct p:last-child a{gap:10px;background:var(--ink)} .contact-detail .contact-direct p a:is(:hover,:focus-visible){background:var(--button-hover-dark);color:var(--white)} .contact-detail .contact-direct p a::before{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:var(--white);font:900 14px/1 Arial,sans-serif} .contact-detail .contact-direct p:first-child a::before{content: '\260e'} .contact-detail .contact-direct p:nth-child(2) a::before{content: '\2709'} .contact-detail .contact-direct p:last-child a::before{content: '\25C6'} .button-primary:is(:hover,:focus-visible),.top-cta:is(:hover,:focus-visible),.mobile-trial:is(:hover,:focus-visible),.venue-directions:is(:hover,:focus-visible),.info-overview-card .card-action:is(:hover,:focus-visible),.review-card .review-profile-link:is(:hover,:focus-visible),.bb-instructor-card .bb-instructor-button:is(:hover,:focus-visible),.local-card-button:is(:hover,:focus-visible),.free-prepare-actions .button:is(:hover,:focus-visible),.contact-detail .contact-direct p a:is(:hover,:focus-visible),.footer-card-contact .footer-phone-button:is(:hover,:focus-visible),.footer-card-contact .footer-contact-button:is(:hover,:focus-visible),.footer-card-contact .footer-social-link:is(:hover,:focus-visible){background:var(--button-hover-dark);color:var(--white)} h1,h2,.manifesto-large,blockquote>p,.art-caption,.method-note{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif !important;font-weight:900;letter-spacing:-.02em !important} h1,h2{line-height:.94 !important} .art-caption,.method-note{line-height:.94 !important} :where([class*="-card"]) :is(h2,h3,h4){font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif !important;font-weight:900}
