/* Overload / release 2. Tokens → structure → components → integration → responsive. */
:root{--oc-ink:#14241d;--oc-paper:#f7f8f2;--oc-lime:#d3f36b;--oc-muted:#4c5c51;--oc-line:#bdc6ba;--oc-field:#68736a;--oc-white:#fff;--oc-rust:#a33f2b;--oc-width:1280px;--oc-radius:4px;--oc-space:clamp(24px,5vw,76px);--sc-color-primary-500:#14241d;--sc-color-primary-600:#243d30;--sc-color-primary-text:#fff;--sc-border-radius-medium:4px}
*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:110px}body.oc-site,body{margin:0;color:var(--oc-ink);background:var(--oc-paper);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}body{--ast-global-color-0:#14241d;--ast-global-color-1:#243d30;--ast-global-color-2:#14241d;--ast-global-color-3:#4c5c51;--ast-global-color-4:#f7f8f2;--ast-global-color-5:#fff}a{color:inherit;text-underline-offset:.25em}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--oc-rust);outline-offset:5px}img{max-width:100%;height:auto}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{color:var(--oc-ink);font-weight:650;line-height:1.5;letter-spacing:-.035em}h1{font-size:clamp(34px,4.5vw,66px)}h2{font-size:clamp(28px,3.1vw,44px)}h3{font-size:23px}p{margin-bottom:1.3em}ul{padding-left:1.4em}a,button{ -webkit-tap-highlight-color:transparent}[data-offer-goals][hidden],[data-practice-front][hidden],[data-practice-back][hidden],[data-scene-controls][hidden],[data-scene-start][hidden]{display:none!important}.oc-wrap{width:min(var(--oc-width),calc(100% - var(--oc-space)*2));margin-inline:auto}.oc-header{position:relative;z-index:10;border-bottom:1px solid var(--oc-line);background:var(--oc-paper)}.oc-header__inner{min-height:94px;display:flex;align-items:center;gap:28px}.oc-brand{display:flex;align-items:center;flex-shrink:0;text-decoration:none}.oc-brand img{width:180px;height:56px;object-fit:cover}.oc-nav{display:flex;align-items:center;gap:25px;margin-left:auto;font-size:14px;font-weight:600}.oc-nav a{text-decoration:none}.oc-nav a:hover{text-decoration:underline}.oc-button{display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:52px;padding:13px 25px;border:1px solid var(--oc-ink);border-radius:var(--oc-radius);background:var(--oc-ink);color:var(--oc-paper);font-size:15px;font-weight:650;line-height:1.55;text-decoration:none;transition:background .18s ease,box-shadow .18s ease}.oc-button:hover{background:#2d4939;color:var(--oc-paper);box-shadow:0 3px 0 #bac6ae}.oc-button--lime{background:var(--oc-lime);color:var(--oc-ink)}.oc-button--lime:hover{background:#c6e65e;color:var(--oc-ink)}.oc-button--outline{background:transparent;color:var(--oc-ink)}.oc-button--outline:hover{background:#e9eddf;color:var(--oc-ink)}.oc-button:disabled{opacity:.65;cursor:wait}.oc-arrow{font-size:21px;line-height:1}.oc-mobile-menu{display:none;margin-left:auto}.oc-mobile-menu summary{list-style:none;border:1px solid var(--oc-ink);padding:8px 14px;font-size:14px;cursor:pointer}.oc-mobile-menu summary::-webkit-details-marker{display:none}.oc-mobile-menu nav{position:absolute;left:0;right:0;top:100%;background:var(--oc-paper);border-block:1px solid var(--oc-line);padding:20px var(--oc-space);box-shadow:0 20px 30px #14241d14}.oc-mobile-menu nav a{display:block;padding:10px 0;text-decoration:none}.oc-skip{position:absolute;left:20px;top:-100px;background:var(--oc-lime);padding:10px;z-index:100}.oc-skip:focus{top:10px}.oc-eyebrow{font-family:Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.13em;line-height:1.5;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:24px}.oc-eyebrow:before{content:"";width:24px;height:2px;background:currentColor}.oc-hero{padding-top:62px;padding-bottom:64px;display:grid;grid-template-columns:1.02fr 1.08fr;gap:20px;align-items:center}.oc-hero h1{font-size:clamp(38px,4.6vw,66px);line-height:1.53;margin-bottom:25px;letter-spacing:-.05em}.oc-hero__copy{padding-block:20px}.oc-hero__copy>p{font-size:17px;max-width:31em;color:var(--oc-muted)}.oc-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:30px}.oc-text-link{font-size:14px;font-weight:600;text-decoration:underline}.oc-small{font-size:13px;color:var(--oc-muted)}.oc-hero__note{margin:18px 0 0;font-size:13px}.oc-scene{position:relative;min-width:0;isolation:isolate}.oc-scene__art{position:relative;aspect-ratio:1.18;width:100%;overflow:hidden}.oc-scene__poster{position:absolute;width:100%;height:100%;object-fit:cover;display:block}.oc-scene__mount{position:absolute;inset:0;opacity:0}.oc-scene__mount canvas{width:100%;height:100%;display:block}.oc-scene[data-scene=ready] .oc-scene__mount{opacity:1}.oc-scene[data-scene=ready] .oc-scene__poster{visibility:hidden}.oc-scene__caption{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;border-top:1px solid var(--oc-line);padding-top:13px;margin-top:-8px;position:relative}.oc-scene__caption span{font-family:Arial,sans-serif;letter-spacing:.04em}.oc-scene button{font-size:12px;background:transparent;border:1px solid var(--oc-field);padding:7px 12px;color:var(--oc-ink);line-height:1.6;min-height:38px}.oc-scene__controls{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.oc-scene__status{font-size:11px;line-height:1.6;margin:8px 0 0;color:var(--oc-muted);min-height:18px}.oc-facts{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--oc-line);padding-block:23px;gap:24px}.oc-facts>div{border-right:1px solid var(--oc-line);padding-right:20px;display:flex;align-items:center;gap:20px}.oc-facts>div:last-child{border:0}.oc-facts strong{font-family:Arial,sans-serif;font-size:26px;font-weight:500;letter-spacing:-.04em;white-space:nowrap}.oc-facts span{font-size:13px;color:var(--oc-muted);line-height:1.7}.oc-section{padding-block:88px}.oc-section__head{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;margin-bottom:46px;align-items:end}.oc-section__head h2{margin-bottom:0}.oc-section__head p{margin:0;color:var(--oc-muted)}.oc-goals{border-top:1px solid var(--oc-ink)}.oc-goal{display:grid;grid-template-columns:58px 1fr 1.2fr 35px;gap:22px;border-bottom:1px solid var(--oc-line);padding:28px 8px;text-decoration:none;align-items:center}.oc-goal:hover{background:#eaf0df}.oc-goal__n{font-family:Arial,sans-serif;font-size:12px;color:var(--oc-muted)}.oc-goal h3{margin:0;font-size:24px}.oc-goal p{font-size:14px;margin:0;color:var(--oc-muted)}.oc-goal__arrow{font-size:27px}.oc-process{background:var(--oc-ink);color:var(--oc-paper)}.oc-process h2,.oc-process h3{color:var(--oc-paper)}.oc-process .oc-section__head p{color:#c5cec1}.oc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;counter-reset:steps}.oc-step{border-top:1px solid #6a7c6c;padding-top:25px}.oc-step__n{color:var(--oc-lime);font-family:Arial,sans-serif;font-size:13px}.oc-step h3{font-size:22px;margin:22px 0 15px}.oc-step p{font-size:14px;color:#c5cec1}.oc-process .oc-text-link{color:var(--oc-lime)}.oc-sample{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.oc-sample__copy p{color:var(--oc-muted)}.oc-practice{background:#e5ead9;padding:35px;position:relative}.oc-practice__tabs{display:flex;gap:7px;margin-bottom:25px}.oc-practice__tabs button{background:transparent;border:1px solid var(--oc-field);font-size:12px;padding:7px 14px;color:var(--oc-ink)}.oc-practice__tabs button[aria-pressed=true]{background:var(--oc-ink);color:var(--oc-paper)}.oc-practice__card{background:var(--oc-white);padding:32px;min-height:290px;border:1px solid #a9b4a1;box-shadow:8px 8px 0 #c8d5b2}.oc-practice__card h3{font-family:Arial,sans-serif;font-size:25px;letter-spacing:-.025em;line-height:1.5}.oc-practice__card p{font-size:14px}.oc-practice__label{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.14em;margin-bottom:25px}.oc-practice__card mark{background:var(--oc-lime);color:var(--oc-ink);padding-inline:3px}.oc-band{background:var(--oc-lime);padding-block:60px}.oc-band__inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.oc-band h2{font-size:clamp(26px,3vw,40px);margin-bottom:12px}.oc-band p{margin:0;font-size:14px}.oc-footer{background:var(--oc-ink);color:var(--oc-paper);padding-block:56px 24px}.oc-footer__top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px}.oc-footer .oc-brand img{filter:invert(1);mix-blend-mode:screen}.oc-footer p{font-size:13px;color:#c5cec1;max-width:26em;margin-top:20px}.oc-footer nav{display:flex;flex-direction:column;gap:12px;font-size:13px}.oc-footer a{color:var(--oc-paper);text-decoration:none}.oc-footer a:hover{text-decoration:underline}.oc-footer__bottom{border-top:1px solid #6a7c6c;margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;font-size:11px;color:#c5cec1;gap:20px}.oc-page-head{padding-block:65px 50px;border-bottom:1px solid var(--oc-line)}.oc-page-head h1{margin-bottom:20px;font-size:clamp(34px,4.4vw,58px)}.oc-page-head p{max-width:43em;color:var(--oc-muted);font-size:17px}.oc-page-body{padding-block:60px 80px}.oc-prose{max-width:850px;margin-inline:auto}.oc-prose h2{font-size:29px;margin-top:2.3em}.oc-prose h3{font-size:21px;margin-top:1.8em}.oc-prose :first-child{margin-top:0}.oc-prose p,.oc-prose li{color:var(--oc-muted)}.oc-split{display:grid;grid-template-columns:1fr 1fr;gap:65px}.oc-panel{padding:30px;border:1px solid var(--oc-line);background:#fff}.oc-panel h2{font-size:25px}.oc-panel p{font-size:15px}.oc-faq{border-top:1px solid var(--oc-line)}.oc-faq details{border-bottom:1px solid var(--oc-line);padding:0}.oc-faq summary{cursor:pointer;padding:22px 45px 22px 0;position:relative;list-style:none;font-size:17px;font-weight:600;line-height:1.8}.oc-faq summary:after{content:'＋';position:absolute;right:8px;top:23px}.oc-faq details[open] summary:after{content:'−'}.oc-faq summary::-webkit-details-marker{display:none}.oc-faq details>div{padding:0 30px 22px 0;color:var(--oc-muted);font-size:15px}.oc-filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:15px}.oc-filters button{background:transparent;border:1px solid var(--oc-field);color:var(--oc-ink);padding:9px 18px;border-radius:30px;font-size:14px;min-height:44px}.oc-filters button[aria-pressed=true]{background:var(--oc-ink);color:var(--oc-paper)}.oc-catalogue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-top:28px}.oc-offer{border:1px solid var(--oc-line);background:var(--oc-white);display:flex;flex-direction:column;min-width:0}.oc-offer__art{height:180px;overflow:hidden;background:#e6ebdc}.oc-offer__art img{width:100%;height:100%;object-fit:cover}.oc-offer__copy{padding:27px 30px 30px;display:flex;flex:1;flex-direction:column}.oc-offer__type{font-size:11px;font-family:Arial,sans-serif;letter-spacing:.09em;color:var(--oc-muted)}.oc-offer h2{font-size:24px;margin:12px 0}.oc-offer p{font-size:14px;color:var(--oc-muted);margin-bottom:20px}.oc-offer__bottom{display:flex;justify-content:space-between;align-items:center;margin-top:auto;gap:14px}.oc-offer__price{font-family:Arial,sans-serif;font-size:25px;line-height:1.5;white-space:nowrap}.oc-offer__price small{font-size:11px;font-family:inherit}.oc-offer__bottom .oc-button{font-size:13px;min-height:46px;padding:11px 18px}.oc-inline-note{border-left:3px solid var(--oc-ink);padding:12px 22px;background:#ebeee3;margin-block:28px;font-size:14px}.oc-topic{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;border-bottom:1px solid var(--oc-line);padding-block:42px;scroll-margin-top:25px}.oc-topic h2{font-size:29px}.oc-topic p{color:var(--oc-muted)}.oc-topic__links{display:flex;gap:15px;flex-wrap:wrap}.oc-coach-mark{font-family:Arial,sans-serif;font-size:clamp(78px,16vw,180px);letter-spacing:-.09em;line-height:1;color:var(--oc-lime);background:var(--oc-ink);padding:70px 35px;font-weight:700}.oc-numbered{list-style:none;padding:0;counter-reset:step}.oc-numbered li{display:grid;grid-template-columns:50px 1fr;gap:20px;padding-block:26px;border-bottom:1px solid var(--oc-line);counter-increment:step}.oc-numbered li:before{content:counter(step,decimal-leading-zero);font-family:Arial,sans-serif;font-size:14px}.oc-numbered h2{font-size:25px;margin-bottom:10px}.oc-numbered p{font-size:15px;color:var(--oc-muted);margin:0}.oc-form-wrap{background:white;border:1px solid var(--oc-line);padding:30px}
/* Astra shell and native content integrations. Specific wrappers keep ownership bounded. */
body.oc-site #content>.ast-container{display:block;max-width:none;padding:0}body.oc-site #primary{width:100%;margin:0;padding:0;float:none}body.oc-site #secondary{display:none}body.oc-site .site-main>article{margin:0;padding:0;background:transparent;border:0}body.oc-site .entry-content{margin:0}body.oc-site .entry-header{display:none}body.oc-site .entry-content .oc-page h1,body.oc-site .entry-content .oc-page h2,body.oc-site .entry-content .oc-page h3{margin-top:0}body.oc-site .entry-content .oc-prose h2{margin-top:2.3em}body.oc-site .entry-content>.oc-page{max-width:none;margin:0}body.oc-site .entry-content>.oc-page>*{max-width:none}body.oc-site .entry-content .oc-wrap{width:min(var(--oc-width),calc(100% - var(--oc-space)*2));margin-inline:auto}body.oc-site .entry-content .oc-prose{max-width:850px;margin-inline:auto}body.oc-site .entry-content .oc-button{color:var(--oc-paper)}body.oc-site .entry-content .oc-button--lime,body.oc-site .entry-content .oc-button--outline{color:var(--oc-ink)}body.oc-site .entry-content .oc-process h2,body.oc-site .entry-content .oc-process h3{color:var(--oc-paper)}body.oc-site.oc-utility #primary,body.oc-site.single-sc_product #primary{max-width:1160px;width:calc(100% - var(--oc-space)*2);margin:45px auto 70px}body.oc-site.single-sc_product .entry-header{display:block}body.oc-site.single-sc_product .entry-header h1{font-size:38px}body.oc-site .fluentform .ff-el-form-control{border:1px solid var(--oc-field);border-radius:3px;color:var(--oc-ink);background:white;padding:12px 14px;box-shadow:none}body.oc-site .fluentform .ff-el-form-control::placeholder{color:#5c665f;opacity:1}body.oc-site .fluentform .ff-el-form-control:focus{outline:3px solid var(--oc-rust);outline-offset:2px;border-color:var(--oc-ink)}body.oc-site .fluentform .ff-btn-submit{background:var(--oc-ink);color:white;border-radius:3px;padding:14px 25px;font-size:16px}body.oc-site .fluentform .ff-el-input--label label{font-weight:600;color:var(--oc-ink);font-size:15px}body.oc-site .fluentform .error.text-danger{color:#982d25;font-size:14px}body.oc-site .entry-content table{border-collapse:collapse;width:100%}body.oc-site .entry-content td,body.oc-site .entry-content th{border:1px solid var(--oc-line);padding:14px;vertical-align:top}
@media(min-width:1500px){.oc-hero{padding-block:80px}.oc-scene__art{aspect-ratio:1.16}}
@media(max-width:1100px){.oc-nav{gap:16px;font-size:13px}.oc-header__inner{gap:18px}.oc-brand img{width:150px;height:48px}.oc-header .oc-button{padding-inline:16px;font-size:13px}.oc-hero h1{font-size:45px}.oc-hero{grid-template-columns:1fr 1fr}.oc-scene__art{aspect-ratio:1}.oc-sample{gap:35px}}
@media(max-width:850px){:root{--oc-space:28px}.oc-nav,.oc-header__inner>.oc-button{display:none}.oc-header__inner{min-height:80px}.oc-mobile-menu{display:block}.oc-hero{padding-top:35px;grid-template-columns:1fr;gap:8px}.oc-hero h1{font-size:52px}.oc-hero__copy{max-width:620px}.oc-hero__copy>p{max-width:40em}.oc-scene{max-width:650px;width:100%;margin-inline:auto}.oc-scene__art{aspect-ratio:1.5}.oc-section{padding-block:64px}.oc-section__head{gap:25px}.oc-steps{grid-template-columns:1fr 1fr;gap:30px}.oc-sample{grid-template-columns:1fr;gap:30px}.oc-practice{max-width:600px}.oc-band__inner{align-items:start}.oc-footer__top{gap:30px}.oc-goal{grid-template-columns:35px 1fr 1.1fr 25px;gap:15px}.oc-goal h3{font-size:21px}.oc-split{gap:30px}.oc-facts{gap:16px}.oc-facts>div{display:block}.oc-facts strong{display:block;font-size:24px}.oc-topic{gap:30px}}
@media(max-width:600px){:root{--oc-space:22px}.oc-header__inner{min-height:74px}.oc-brand img{width:147px;height:47px}.oc-eyebrow{font-size:10px;margin-bottom:23px}.oc-hero{padding-top:25px;padding-bottom:35px}.oc-hero h1{font-size:38px;line-height:1.6;letter-spacing:-.055em}.oc-hero__copy>p{font-size:15px;line-height:2}.oc-actions{gap:18px;margin-top:24px}.oc-actions .oc-button{font-size:14px;padding-inline:20px}.oc-hero__note{font-size:11px}.oc-scene__art{aspect-ratio:1.18;margin-top:5px}.oc-scene__caption{font-size:10px}.oc-scene__caption button{font-size:11px;padding:6px 9px}.oc-scene__status{font-size:10px}.oc-facts{gap:13px;padding-block:19px}.oc-facts strong{font-size:20px}.oc-facts span{font-size:10px}.oc-facts>div{padding-right:10px}.oc-section{padding-block:52px}.oc-section__head{display:block;margin-bottom:30px}.oc-section__head h2{font-size:28px;margin-bottom:21px}.oc-section__head p{font-size:14px}.oc-goal{grid-template-columns:26px 1fr 22px;gap:13px;padding:23px 0}.oc-goal h3{font-size:21px}.oc-goal p{grid-column:2;grid-row:2;font-size:13px}.oc-goal__arrow{grid-column:3;grid-row:1/3}.oc-steps{gap:22px}.oc-step h3{font-size:19px;margin:16px 0 12px}.oc-step p{font-size:12px}.oc-sample__copy h2{font-size:28px}.oc-sample__copy p{font-size:14px}.oc-practice{padding:21px}.oc-practice__card{padding:23px;min-height:290px}.oc-practice__card h3{font-size:23px}.oc-band{padding-block:42px}.oc-band__inner{display:block}.oc-band h2{font-size:27px}.oc-band .oc-button{margin-top:25px}.oc-footer{padding-top:38px}.oc-footer__top{grid-template-columns:1fr 1fr;gap:25px}.oc-footer__top>div:first-child{grid-column:1/-1}.oc-footer__top p{margin-top:12px;font-size:12px}.oc-footer nav{font-size:12px}.oc-footer__bottom{display:block;font-size:10px}.oc-page-head{padding-block:40px 30px}.oc-page-head h1{font-size:34px}.oc-page-head p{font-size:15px}.oc-page-body{padding-block:38px 52px}.oc-split,.oc-topic{grid-template-columns:1fr;gap:20px}.oc-topic{padding-block:30px}.oc-topic h2{font-size:26px;margin-bottom:10px}.oc-topic p{font-size:14px}.oc-catalogue{grid-template-columns:1fr;gap:24px}.oc-offer__art{height:170px}.oc-offer__copy{padding:23px}.oc-offer h2{font-size:23px}.oc-filters{gap:7px}.oc-filters button{font-size:12px;padding:8px 13px}.oc-panel,.oc-form-wrap{padding:23px}.oc-faq summary{font-size:15px}.oc-faq details>div{font-size:14px}.oc-numbered li{grid-template-columns:28px 1fr;gap:15px}.oc-numbered h2{font-size:22px}.oc-coach-mark{padding:50px 25px;font-size:120px}body.oc-site.single-sc_product .entry-header h1{font-size:28px}}
@media(max-width:359px){:root{--oc-space:17px}.oc-hero h1{font-size:33px}.oc-actions{gap:14px}.oc-button{padding-inline:18px}.oc-facts strong{font-size:18px}.oc-facts span{font-size:10px}.oc-practice{padding:16px}.oc-practice__card{padding:20px}.oc-practice__card h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto;transition:none!important;animation:none!important}}

.oc-scene{margin:0}.oc-scene__art{border-radius:2px}
body.oc-site .entry-content .oc-button{text-decoration:none}
.oc-product-visual{border:1px solid var(--oc-line);background:white;align-self:start}
.oc-product-visual>img{display:block;width:100%;height:auto}
.oc-product-visual__body{padding:30px}
.oc-product-visual__body h2{font-size:25px}
.oc-product-visual__body ul,.oc-product-visual__body p{font-size:14px}
.oc-product-summary{margin-block:20px 30px}
.oc-product-summary p{font-size:16px}
.oc-session-details{margin-top:60px;padding-top:45px;border-top:1px solid var(--oc-line)}
.oc-session-details h2{font-size:25px;margin-top:1.8em}
.oc-session-details p{font-size:16px}
body.oc-site.single-sc_product .entry-content .oc-session-details .oc-prose{max-width:850px}
@media(max-width:600px){.oc-product-visual__body{padding:23px}.oc-product-visual__body h2{font-size:22px}.oc-session-details{margin-top:35px;padding-top:30px}.oc-session-details p{font-size:14px}}
@media(max-width:600px){.oc-product-visual__body{display:none}}

