/* Shimoigusa uses the shared club template with the store's published orange palette. */
.pricing-cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:960px;margin-inline:auto}
.shimoigusa-coaches{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.shimoigusa-coaches .coach-card{grid-template-columns:40% 60%;align-items:start}
.shimoigusa-coaches .coach-copy{padding:28px 22px}
.shimoigusa-coaches .coach-copy h3{font-size:1.45rem}
.shimoigusa-coaches .coach-photo img{left:0;top:0;width:100%;height:100%;max-width:100%;transform:none;object-fit:cover;object-position:50% 12%}
.shimoigusa-coaches .coach-role{font-size:.65rem;letter-spacing:.13em;padding:8px 12px}
.hero-note{color:var(--muted)}
.main-nav .member-link{border-color:var(--line)}
@media(max-width:1000px){.shimoigusa-coaches{grid-template-columns:1fr}}
@media(max-width:700px){.pricing-cards{grid-template-columns:1fr}.shimoigusa-coaches .coach-copy{padding:20px 16px}.shimoigusa-coaches .coach-copy h3{font-size:1.3rem}.shimoigusa-coaches .coach-card{grid-template-columns:38% 62%}}

/* Text wordmark in place of a logo image (the store has no logo of its own on the public site). */
.brand-text span{gap:1px}
.brand-text small{font-size:11px;letter-spacing:.08em;color:var(--muted)}
.brand-text b{font-size:19px;letter-spacing:.06em}
.brand-text em{font-family:var(--sans);font-size:10px;letter-spacing:.04em;color:var(--green)}
.site-header{border-bottom:3px solid var(--brand)}
.site-footer{border-top:3px solid var(--brand)}
.hero .eyebrow span{background:var(--brand)}
.hero h1{font-size:clamp(1.9rem,3.4vw,3.3rem)}
.intro-copy h2 small{display:block;font-size:.55em;letter-spacing:.08em;color:var(--ink);margin-top:4px}
.intro-copy>p:not(.eyebrow)+p{margin-top:14px}
.feature-number{color:var(--brand)}
.plan-tax{font-size:12px;color:var(--muted);margin-top:8px!important}
.trial-steps p{text-align:left}
.footer-social a{color:var(--green)}

/* Store data mapped onto template pages: weekly timetable (indoor schedule), ZEROKARA PLUS banner (course schedule), usage flow (members). */
.timetable{margin-top:40px}
.timetable-legend{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;font-size:13px;color:var(--muted);padding:18px 2px 0}
.timetable-legend span{padding:4px 10px;border-radius:2px;color:var(--ink)}
.timetable-table{min-width:720px;font-size:13px;text-align:center}
.timetable-table th,.timetable-table td{padding:7px 6px;border:1px solid var(--line)}
.timetable-table thead{background:var(--green);color:white}
.timetable-table thead tr+tr{background:#fff;color:var(--ink)}
.timetable-table tbody th{font-family:var(--latin);color:var(--ink);background:var(--cream)}
.slot-lesson{background:#fbe9ee!important}
.slot-practice{background:#ebf3e6!important}
.zerokara-plus{position:relative;display:block;margin:40px auto 0;border-radius:4px;overflow:hidden;max-width:880px}
.zerokara-plus img{width:100%;height:auto}
.zerokara-plus>span{position:absolute;right:18px;bottom:18px;background:var(--green);color:white;font-size:13px;font-weight:700;padding:10px 16px;border-radius:3px}
.zerokara-plus:hover>span{background:var(--green-deep)}
.usage-steps{padding-left:1.4em;font-size:14px;color:var(--muted);line-height:1.9}
.usage-steps li+li{margin-top:6px}
@media(max-width:1250px){.brand-text b{font-size:17px}}
@media(max-width:800px){.zerokara-plus>span{position:static;display:block;border-radius:0;text-align:center}}
@media(max-width:480px){.hero h1{font-size:clamp(1.25rem,5.4vw,1.6rem);letter-spacing:0}.brand-text b{font-size:15px}.brand-text small{font-size:9px}.brand-text em{font-size:9px}}
.quick-facts+.news{margin-top:54px}
.quick-facts p span{white-space:nowrap}
