:root{--ink:#191816;--violet:#392b94;--violet-light:#7464bd;--paper:#faf7f0;--cream:#f2ece1;--line:#d9d1c5;--muted:#68645e;--red:#dc1734;--blue:#00549b}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Oswald,Impact,"Arial Narrow",sans-serif;font-weight:600;line-height:.98;letter-spacing:-.03em}::selection{background:#b9acee;color:#181322}.container{width:min(calc(100% - 96px),1360px);margin:auto}.section-space{padding:120px 0}.skip-link{position:absolute;z-index:100;left:14px;top:-100px;padding:12px 18px;background:#fff;color:#000}.skip-link:focus{top:14px}
.site-header{background:#fffefa;border-bottom:1px solid #e6e0d4;position:relative;z-index:20}.header-inner{min-height:100px;display:flex;align-items:center;gap:48px}.brand{display:flex;align-items:center;gap:20px;min-width:300px}.brand img{width:78px;height:78px;object-fit:contain}.brand span{border-left:1px solid #a9a39b;padding-left:18px;font-family:Oswald,Impact,sans-serif;font-size:15px;letter-spacing:.16em;line-height:1.4}.brand span b{font-size:21px;letter-spacing:.07em}.site-nav{display:flex;align-items:center;justify-content:center;gap:clamp(14px,2.2vw,35px);flex:1}.site-nav a,.header-action{font-family:Oswald,Impact,sans-serif;font-size:14px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.site-nav a:hover,.site-nav a:focus-visible{color:var(--violet)}.header-action{background:var(--violet);color:white;padding:17px 20px;display:flex;gap:28px;align-items:center;transition:background .2s}.header-action:hover{background:#261a77}.header-action span{font-size:20px;line-height:1}.menu-toggle{display:none}
.hero{position:relative;aspect-ratio:1672/940;background:#fdf8ef;overflow:hidden}.hero-scene,.scene-inner{position:absolute;inset:0}.hero-art{width:100%;height:100%;object-fit:cover;object-position:center}.gi-calligraphy{position:absolute;left:76.3%;top:28.1%;width:1.3%;height:auto;mix-blend-mode:multiply;transform:rotate(7deg);opacity:.9}.hero-content{position:relative;z-index:2;padding-top:clamp(78px,8vw,142px);pointer-events:none}.hero-content>*{pointer-events:auto}.eyebrow,.section-kicker,.hero-caption,.contact-label,.training-image figcaption{font-family:Oswald,Impact,sans-serif;font-size:13px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.eyebrow{margin-bottom:28px}.hero h1{font-size:clamp(73px,7.8vw,128px);max-width:700px;line-height:.97}.hero h1 span{color:var(--violet)}.hero-intro{font-size:16px;line-height:1.55;max-width:430px;margin:24px 0 25px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:19px 25px;min-height:62px;font-family:Oswald,Impact,sans-serif;font-size:15px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button span{font-family:Manrope,sans-serif;font-size:21px;font-weight:400}.button-primary{background:var(--violet);color:#fff}.button-primary:hover{background:#281c78}.hero-caption{position:absolute;z-index:2;right:3.5%;bottom:3.5%;font-size:11px;color:#fff;text-shadow:0 1px 3px #332f30}
.fact-strip{background:var(--violet);color:#fff}.fact-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:25px}.fact-inner>span{font-size:12px;text-transform:uppercase;letter-spacing:.07em;display:flex;align-items:center;gap:12px}.fact-inner b{font-family:Oswald,sans-serif;font-size:30px;line-height:1}.fact-inner a{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:13px;letter-spacing:.12em;border-bottom:1px solid #aaa0db;padding-bottom:6px}.fact-inner a span{margin-left:17px}
.section-kicker{color:var(--violet);white-space:nowrap}.section-kicker span{color:#9489c5;margin-right:9px}.club-section{background:#fffefa}.club-grid{display:grid;grid-template-columns:180px minmax(0,1fr) 270px;gap:clamp(35px,5vw,90px);align-items:start}.club-copy h2,.training-heading h2,.coaches-heading h2,.schedule-grid h2,.contacts-section h2{font-size:clamp(64px,7vw,112px)}.club-copy h2 em,.contacts-section h2 em{font-style:normal;color:var(--violet)}.club-copy p{margin-top:31px;max-width:660px;font-size:17px;line-height:1.85;color:#4a4743}.brand-symbols{display:flex;gap:16px;margin-top:37px}.round-sign{width:55px;height:55px;filter:drop-shadow(0 5px 0 #eee9df)}.red-sign{color:var(--red)}.blue-sign{color:var(--blue)}.calligraphy-panel{border-left:1px solid var(--line);min-height:360px;display:flex;align-items:center;flex-direction:column;justify-content:center;padding-left:45px}.calligraphy-panel img{width:110px;max-height:305px;object-fit:contain;mix-blend-mode:multiply}.calligraphy-panel span{font-family:Oswald,sans-serif;font-size:10px;letter-spacing:.13em;line-height:1.5;text-align:center;margin-top:20px;color:#878079}
.training-section{background:#f0ebe2}.training-heading,.coaches-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin:26px 0 45px}.training-heading p,.coaches-heading p{max-width:350px;font-size:16px;line-height:1.8;color:#514c49;padding-bottom:7px}.training-image{position:relative;overflow:hidden}.training-image img{width:100%;height:auto}.training-image figcaption{position:absolute;right:0;bottom:0;color:#fff;background:rgba(35,28,47,.84);padding:12px 16px;font-size:10px;letter-spacing:.1em}.training-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #bfb6ad;margin-top:38px}.training-options>div{padding:25px 32px 0 0;border-right:1px solid #cfc5ba}.training-options>div+div{padding-left:32px}.training-options>div:last-child{border-right:0}.training-options b{font-family:Oswald,sans-serif;font-size:14px;color:var(--violet)}.training-options h3{font-size:35px;margin:16px 0 14px}.training-options p{font-size:14px;line-height:1.7;color:#514d49}.training-options a{display:inline-block;margin-top:18px;border-bottom:1px solid var(--violet);padding-bottom:5px;color:var(--violet);font-size:13px;font-weight:800}
.coaches-section{background:#fffefa}.coaches-heading{margin-bottom:50px}.coach-list{border-top:1px solid #bfb6ad}.coach-row{display:grid;grid-template-columns:80px 1.25fr 1fr 40px;align-items:center;gap:20px;min-height:112px;border-bottom:1px solid #bfb6ad;transition:padding .2s,background .2s}.coach-row:hover{padding-left:18px;background:#f3eee7}.row-no{font-family:Oswald,sans-serif;color:var(--violet);font-size:16px}.coach-name{font-family:Oswald,sans-serif;font-size:clamp(25px,2.5vw,38px);font-weight:500;text-transform:uppercase;line-height:1.1}.coach-rank{font-size:14px;color:#615c56}.row-arrow{font-size:28px;color:var(--violet);text-align:right}
.schedule-section{background:#e8e2f3;overflow:hidden}.schedule-grid{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:8%}.schedule-grid h2{margin:26px 0}.schedule-grid p{max-width:560px;color:#514b59;font-size:16px;line-height:1.8;margin-bottom:31px}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:var(--violet)}.schedule-art{position:relative;height:460px;display:grid;place-items:center;background:var(--violet);overflow:hidden;color:#fff}.schedule-art:before,.schedule-art:after{content:"";position:absolute;border:1px solid #897dc4;border-radius:50%;width:370px;height:370px;transform:rotate(-30deg)}.schedule-art:after{width:450px;height:450px;opacity:.5}.schedule-ring{position:absolute;border:8px solid rgba(255,255,255,.83);border-radius:50%;width:280px;height:280px;transform:rotate(-12deg);border-right-color:transparent}.schedule-word{font-family:Oswald,sans-serif;font-weight:600;font-size:80px;letter-spacing:-.05em;position:relative}.schedule-side{position:absolute;right:20px;bottom:20px;font-family:Oswald,sans-serif;font-size:12px;letter-spacing:.2em}
.contacts-section{background:#19171e;color:#fff}.contacts-section .section-kicker{color:#a89be8}.contacts-section h2{margin:26px 0 62px}.contacts-section h2 em{color:#a79be1}.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid #55515c;padding-top:36px}.contact-label{color:#a89be8;font-size:12px}.address{font-family:Oswald,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(25px,3vw,41px);line-height:1.25;margin:24px 0 31px}.underlink{display:inline-block;border-bottom:1px solid #9182c9;padding-bottom:7px;font-size:14px;font-weight:700}.underlink:hover{color:#c1b2ff}.contact-links{display:flex;flex-direction:column;align-items:start}.contact-links>.contact-label{margin-bottom:16px}.contact-links>a:not(.vk-link){font-family:Oswald,sans-serif;font-size:clamp(25px,2.8vw,38px);padding:9px 0}.contact-links>a:not(.vk-link):hover{color:#b6a7f3}.contact-links small{font-family:Manrope,sans-serif;font-size:12px;color:#9d98a4;margin-left:14px}.vk-link{margin-top:31px}.site-footer{background:#121117;color:#a29eaa}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:78px;font-family:Oswald,sans-serif;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.site-footer a:hover{color:#fff}
@media(max-width:1240px){.container{width:min(calc(100% - 64px),1360px)}.header-inner{gap:20px}.brand{min-width:225px;gap:10px}.brand img{width:63px;height:63px}.brand span{font-size:12px;padding-left:10px}.brand span b{font-size:18px}.site-nav{gap:15px}.site-nav a{font-size:12px}.header-action{font-size:12px;padding:14px}.hero-content{padding-top:7vw}.hero h1{font-size:8vw}.hero-intro{font-size:14px;margin:16px 0 20px}.button{min-height:52px;padding:14px 19px;font-size:12px}.club-grid{grid-template-columns:130px minmax(0,1fr) 200px;gap:35px}.calligraphy-panel{padding-left:24px}}
@media(max-width:900px){.header-inner{min-height:80px}.site-nav{display:none;position:absolute;top:80px;left:0;right:0;background:#fffefa;flex-direction:column;align-items:stretch;padding:18px 32px 28px;box-shadow:0 20px 30px #1d172633}.site-nav.is-open{display:flex}.site-nav a{font-size:16px;padding:10px 0;border-bottom:1px solid #e6e0d4}.menu-toggle{margin-left:auto;width:44px;height:44px;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:5px;border:1px solid #c4b9ac;background:transparent}.menu-toggle span{width:19px;height:2px;background:var(--ink)}.header-action{display:none}.hero h1{font-size:clamp(56px,8vw,75px)}.hero-content{padding-top:6vw}.hero-intro{max-width:320px}.club-grid{grid-template-columns:1fr 180px}.club-grid>.section-kicker{grid-column:1/-1}.club-copy h2,.training-heading h2,.coaches-heading h2,.schedule-grid h2,.contacts-section h2{font-size:clamp(57px,8vw,85px)}.calligraphy-panel{min-height:330px}.section-space{padding:90px 0}.schedule-art{height:380px}}
@media(max-width:650px){html{scroll-padding-top:72px}.container{width:min(calc(100% - 36px),1360px)}.header-inner{min-height:72px}.site-nav{top:72px}.brand{min-width:0}.brand img{width:55px;height:55px}.brand span{font-size:11px}.brand span b{font-size:16px}.hero{aspect-ratio:auto;display:flex;flex-direction:column;min-height:0}.hero-content{order:1;padding-top:42px;padding-bottom:15px}.eyebrow{font-size:10px;margin-bottom:19px}.hero h1{font-size:clamp(54px,13.5vw,78px)}.hero-intro{font-size:13px;margin:21px 0 22px}.hero-scene{order:2;position:relative;height:510px;overflow:hidden}.scene-inner{left:auto;right:-150px;top:0;width:900px;height:506px}.hero-art{width:900px;height:auto;max-width:none;object-fit:initial}.gi-calligraphy{left:76.3%;top:28.1%;width:1.3%;max-width:none}.hero-caption{bottom:14px;right:18px;font-size:9px}.fact-inner{min-height:0;display:grid;grid-template-columns:1fr 1fr;padding:20px 0;gap:18px}.fact-inner>span{font-size:10px;line-height:1.3}.fact-inner b{font-size:23px}.fact-inner a{font-size:11px;grid-column:1/-1;width:max-content}.section-space{padding:70px 0}.section-kicker{font-size:11px}.club-grid{display:block}.club-copy{margin-top:24px}.club-copy h2,.training-heading h2,.coaches-heading h2,.schedule-grid h2,.contacts-section h2{font-size:clamp(54px,12vw,76px)}.club-copy p{font-size:14px;line-height:1.75;margin-top:23px}.brand-symbols{margin-top:25px}.round-sign{width:48px;height:48px}.calligraphy-panel{border-left:0;border-top:1px solid var(--line);margin-top:35px;padding:25px 0 0;min-height:0}.calligraphy-panel img{width:78px;max-height:220px}.calligraphy-panel span{margin-top:8px}.training-heading,.coaches-heading{display:block;margin:25px 0 26px}.training-heading p,.coaches-heading p{font-size:13px;margin-top:22px;max-width:100%}.training-image img{min-height:310px;object-fit:cover;object-position:center}.training-image figcaption{font-size:8px}.training-options{grid-template-columns:1fr;margin-top:20px}.training-options>div,.training-options>div+div{padding:21px 0;border-right:0;border-bottom:1px solid #cfc5ba}.training-options h3{font-size:29px;margin:9px 0}.training-options p{font-size:13px}.coach-row{grid-template-columns:28px 1fr 28px;gap:9px;padding:17px 0;min-height:0}.coach-name{font-size:22px}.coach-rank{grid-column:2;font-size:11px;margin-top:-4px}.row-arrow{grid-column:3;grid-row:1/3;font-size:22px}.schedule-grid{grid-template-columns:1fr;gap:35px}.schedule-grid p{font-size:13px}.schedule-art{height:320px}.schedule-ring{width:210px;height:210px}.schedule-word{font-size:62px}.contacts-section h2{margin-bottom:38px}.contacts-grid{grid-template-columns:1fr;gap:45px}.address{font-size:30px}.contact-links>a:not(.vk-link){font-size:29px}.contact-links small{font-size:10px}.footer-inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:23px 0;gap:9px;font-size:10px}}
@media(max-width:400px){.hero h1{font-size:13vw}.scene-inner{right:-220px}.hero-scene{height:440px}.hero-caption{display:none}.fact-inner>span{display:block}.fact-inner b{display:block;margin-bottom:5px}.contact-links>a:not(.vk-link){font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:900px){.hero{aspect-ratio:auto;display:flex;flex-direction:column}.hero-content{order:1;padding-top:46px;padding-bottom:30px}.hero-scene{order:2;position:relative;height:500px;overflow:hidden}.scene-inner{left:auto;right:-100px;top:0;width:900px;height:506px}.hero-art{width:900px;height:auto;max-width:none;object-fit:initial}.gi-calligraphy{left:76.3%;top:28.1%;width:1.3%;max-width:none}.hero h1{font-size:clamp(58px,9vw,84px)}.hero-caption{bottom:15px}.fact-inner{min-height:0;display:grid;grid-template-columns:1fr 1fr;padding:24px 0;gap:20px}.fact-inner b{white-space:nowrap}.fact-inner a{grid-column:1/-1;width:max-content}}
@media(max-width:650px){.hero-content{padding-top:42px;padding-bottom:18px}.hero h1{font-size:clamp(54px,13.5vw,78px)}.scene-inner{right:-150px}.hero-scene{height:505px}}
@media(max-width:400px){.hero h1{font-size:13vw}.scene-inner{right:-190px}.hero-scene{height:455px}}
.site-header{position:absolute;top:0;left:0;right:0;z-index:20;background:transparent;border:0}.site-header .container,.hero-content.container{width:min(calc(100% - 11vw),1500px)}.header-inner{min-height:150px;gap:45px}.brand{min-width:360px;gap:20px}.brand img{width:145px;height:145px;mix-blend-mode:multiply}.brand span{border-color:#6a625a;padding-left:23px;font-size:16px}.brand span b{font-size:23px}.site-nav{justify-content:flex-start;gap:clamp(28px,3vw,55px)}.site-nav a{font-size:15px;letter-spacing:.18em}.header-action{display:none}.hero-content{padding-top:clamp(165px,11.2vw,205px)}.hero h1{font-size:clamp(83px,7.9vw,136px);line-height:.95;letter-spacing:-.045em;max-width:780px;color:#111}.hero h1 span{color:#111}.hero-intro{font-size:21px;font-weight:500;line-height:1.4;letter-spacing:.31em;margin:28px 0 26px;text-transform:uppercase;max-width:510px}.hero-button{width:310px;min-height:78px;padding:12px 28px}.hero-button .button-label{font-family:Oswald,sans-serif;font-size:15px;font-weight:400;line-height:1.35;letter-spacing:.23em}.hero-button .button-arrow{font-size:32px;line-height:1}.section-kicker{letter-spacing:.18em}.blue-symbol{display:block;position:relative;width:66px;height:66px;overflow:hidden;mix-blend-mode:multiply}.blue-symbol img{position:absolute;max-width:none;width:241px;height:110px;left:-127px;top:-21px}.coach-row{grid-template-columns:1.4fr 1fr 40px}.row-arrow{grid-column:3}
@media(max-width:1240px){.header-inner{min-height:110px;gap:18px}.brand{min-width:255px;gap:12px}.brand img{width:90px;height:90px}.brand span{font-size:12px;padding-left:13px}.brand span b{font-size:18px}.site-nav{gap:21px}.site-nav a{font-size:12px}.hero-content{padding-top:135px}.hero h1{font-size:8.1vw}.hero-intro{font-size:16px;margin:20px 0}.hero-button{min-height:65px}}
@media(max-width:900px){.header-inner{min-height:80px}.brand img{width:72px;height:72px}.brand{min-width:0}.site-nav{top:80px;gap:0}.site-nav a{font-size:15px}.hero-content{padding-top:118px}.hero h1{font-size:clamp(58px,9vw,84px)}.hero-intro{font-size:14px;line-height:1.45;letter-spacing:.2em}.hero-button{min-height:60px;width:280px}.coach-row{grid-template-columns:1fr 1fr 30px}}
@media(max-width:650px){.site-header .container,.hero-content.container{width:min(calc(100% - 36px),1360px)}.header-inner{min-height:72px}.brand img{width:59px;height:59px}.brand span{font-size:11px;padding-left:11px}.brand span b{font-size:16px}.site-nav{top:72px}.hero-content{padding-top:100px}.hero h1{font-size:clamp(55px,12.6vw,78px);line-height:.96}.hero-intro{font-size:13px;letter-spacing:.17em;margin:22px 0}.hero-button{width:270px;min-height:60px}.hero-button .button-label{font-size:13px}.coach-row{grid-template-columns:1fr 28px}.coach-name{grid-column:1}.coach-rank{grid-column:1}.row-arrow{grid-column:2;grid-row:1/3}}
@media(max-width:400px){.hero h1{font-size:12.7vw}}

/* Keep the city visible and place the exact supplied calligraphy on the gi. */
.hero-button{position:absolute;z-index:4;left:5.5vw;bottom:4%;width:216px;min-height:54px;padding:8px 15px;gap:10px;box-shadow:0 5px 18px #291e6d24}
.hero-button .button-label{font-size:11px;line-height:1.25;letter-spacing:.16em}
.hero-button .button-arrow{font-size:24px}
.training-image .training-glyph{width:1.2%;opacity:.78;filter:contrast(.9)}
.training-image .glyph-one{left:16.45%;top:40.8%;transform:rotate(5deg)}
.training-image .glyph-two{left:31.25%;top:43.6%;transform:rotate(-4deg)}
.training-image .glyph-three{left:54.5%;top:31.8%;width:1.65%;transform:rotate(6deg)}
.training-image .glyph-four{left:87.3%;top:48.1%;transform:rotate(-5deg)}
@media(max-width:900px){.hero-button{position:relative;order:2;left:auto;bottom:auto;align-self:flex-start;margin:0 0 20px 5.5vw}.hero-scene{order:3}}
@media(max-width:650px){.hero-button{margin-left:18px;width:214px;min-height:52px}}
.training-image .training-glyph{min-height:0;object-fit:contain;width:1.75%}.training-image .glyph-three{width:2.2%}
.header-inner{gap:20px}.brand{min-width:315px}.site-nav{gap:clamp(18px,2vw,32px)}.site-nav a{font-size:13px}.hero-content{padding-top:clamp(150px,10vw,180px)}.hero h1{font-size:clamp(80px,7vw,120px)}.hero-intro{margin:17px 0 23px}.hero-signboard{position:absolute;z-index:2;top:8%;right:4.2%;width:8.2%;height:31%;display:grid;place-items:center;padding:9px;background:linear-gradient(90deg,#b99e77,#d1b990 25%,#c4a77e 70%,#a68a65);border:5px ridge #604d39;box-shadow:0 4px 0 #372d25,0 8px 15px #2d241d66;transform:rotate(2deg)}.hero-signboard img{width:68%;max-height:95%;height:auto;object-fit:contain;mix-blend-mode:multiply}.training-glyph{position:absolute;width:1.75%;height:auto;max-width:none;mix-blend-mode:multiply;pointer-events:none}.glyph-one{left:18.2%;top:43.2%;transform:rotate(-5deg)}.glyph-two{left:31.5%;top:43%;transform:rotate(2deg)}.glyph-three{left:55.2%;top:26%;width:2.2%;transform:rotate(6deg)}.glyph-four{left:87.7%;top:45.5%;transform:rotate(4deg)}
@media(max-width:1240px){.brand{min-width:255px}.site-nav{gap:16px}.site-nav a{font-size:12px}.hero-content{padding-top:130px}.hero h1{font-size:7.4vw}.hero-intro{margin:12px 0 18px}}
@media(max-width:900px){.hero-content{padding-top:118px}.hero h1{font-size:clamp(58px,9vw,84px)}.hero-intro{margin:18px 0}.hero-signboard{display:none}}
@media(max-width:650px){.hero-content{padding-top:100px}.hero h1{font-size:clamp(55px,12.6vw,78px)}.training-image img:first-child{min-height:0;height:auto}.training-glyph{display:block}.glyph-three{width:2.2%}}
@media(max-width:400px){.hero h1{font-size:12.7vw}}

.training-image .training-glyph{width:1.2%;opacity:.78;filter:contrast(.9)}
.training-image .glyph-three{width:1.65%}

/* The provided calligraphy file is layered over the generated blank gi. */
.hero-glyph{position:absolute;z-index:2;height:auto;max-width:none;mix-blend-mode:multiply;opacity:.9;pointer-events:none}
.glyph-mother{left:65.3%;top:32.3%;width:1.28%;transform:rotate(5deg)}
.glyph-father{left:81.1%;top:27.3%;width:1.34%;transform:rotate(-3deg)}
.glyph-son{left:73.7%;top:47.4%;width:1.04%;transform:rotate(4deg)}
.training-image .glyph-one{left:20.1%;top:47.8%;width:1.2%;transform:rotate(3deg)}
.training-image .glyph-two{left:39.1%;top:51.1%;width:1%;transform:rotate(-4deg)}
.training-image .glyph-three{left:61.4%;top:31.5%;width:1.55%;transform:rotate(4deg)}
.training-image .glyph-four{left:84.1%;top:49.5%;width:1.12%;transform:rotate(-5deg)}

/* Invite visitors into the dojo instead of showing a flat purple panel. */
.schedule-art{position:relative;display:block;height:520px;background:#a8917b;overflow:hidden}
.schedule-art::before,.schedule-art::after{display:none}
.schedule-photo{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .35s ease}
.schedule-art:hover .schedule-photo{transform:scale(1.025)}
.schedule-glyph{position:absolute;left:48.3%;top:29.5%;width:2.8%;height:auto;mix-blend-mode:multiply;opacity:.88;pointer-events:none}
.schedule-invite{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:25px 28px 23px;background:linear-gradient(transparent,#241d1bd9 35%);color:#fff;font-family:Oswald,Impact,sans-serif;font-size:22px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.schedule-invite b{font-family:Manrope,sans-serif;font-size:27px;font-weight:400}
.brand img{mix-blend-mode:darken;filter:brightness(1.09) contrast(1.12);background:transparent}
@media(max-width:900px){.schedule-art{height:440px}}
@media(max-width:650px){.schedule-art{height:410px}.schedule-invite{font-size:17px;padding:20px}}
.brand img{filter:none;mix-blend-mode:normal;mask-image:linear-gradient(#000,#000),url('assets/kaitaka-logo.jpg');mask-mode:alpha,luminance;mask-composite:exclude;mask-size:100% 100%;mask-repeat:no-repeat}

/* Mark placement: each top edge starts at the wearer's left breast. */
.glyph-mother{left:66%;top:34.7%;width:1.22%}
.glyph-father{left:81.8%;top:30.3%;width:1.28%}
.glyph-son{left:72.5%;top:48.7%;width:1.1%}
.training-image .glyph-one{left:20.5%;top:49.7%;width:1.18%}
.training-image .glyph-two{left:39.5%;top:53.3%;width:.98%}
.training-image .glyph-three{left:62.1%;top:34.3%;width:1.5%}
.training-image .glyph-four{left:84.6%;top:52%;width:1.1%}
.schedule-glyph{left:48.3%;top:32.5%;width:2.8%}
@media(max-width:900px){.schedule-glyph{top:28%}}
