/* Accomplir STEP 3 design-system foundation — 2026-07-25 */
:root{
  --acm-logo-official:#231815;
  --acm-brand-deep:#72001F;--acm-brand:#A80233;--acm-brand-bright:#C30A43;--acm-brand-soft:#F7E9EE;
  --acm-gold:#A98045;--acm-gold-soft:#E6D5B7;
  --acm-ink:#231F20;--acm-ink-soft:#514A4C;--acm-muted:#746D70;
  --acm-ivory:#F7F3EE;--acm-paper:#FFFFFF;--acm-surface:#F6F4F2;--acm-stone:#DED8D2;--acm-line:#D8D1CB;--acm-dark:#180B10;
  --acm-focus:#005FCC;
  --acm-font-display:"Yu Mincho","Hiragino Mincho ProN","Hiragino Mincho Pro",serif;
  --acm-font-body:"Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic",Meiryo,sans-serif;
  --acm-content:1240px;--acm-reading:760px;--acm-gutter:clamp(18px,4vw,56px);
  --acm-section-y:clamp(88px,10vw,152px);--acm-header-h:84px;
  --acm-radius-hero:clamp(88px,10vw,180px) 28px 28px 28px;
  --acm-radius-section:72px 22px 22px 22px;--acm-radius-card:34px 14px 14px 14px;--acm-radius-soft:18px;
  --acm-shadow-soft:0 18px 50px rgba(35,24,21,.08);--acm-shadow-lift:0 28px 80px rgba(35,24,21,.14);--acm-shadow-brand:0 18px 42px rgba(114,0,31,.24);
  --acm-logo-backdrop-opacity:.115;--acm-logo-backdrop-x:0px;--acm-logo-backdrop-y:0px;
  --acm-motion-fast:160ms;--acm-motion-base:420ms;--acm-motion-slow:900ms;--acm-ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--acm-ivory)}
body{margin:0;color:var(--acm-ink);font-family:var(--acm-font-body);line-height:1.9;background:var(--acm-ivory);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}
.acm-shell{position:relative;isolation:isolate;min-height:100vh;overflow:clip}
.acm-page-layer{position:relative;z-index:1}.acm-section>.acm-container{position:relative;z-index:3}
.acm-container{width:min(var(--acm-content),calc(100% - 2 * var(--acm-gutter)));margin-inline:auto}
.acm-section{position:relative;padding-block:var(--acm-section-y)}
.acm-section[data-brand-surface="paper"]{background:rgba(255,255,255,.84)}
.acm-section[data-brand-surface="ivory"]{background:rgba(247,243,238,.88)}
.acm-section[data-brand-surface="soft"]{background:rgba(246,244,242,.92)}
.acm-section[data-brand-surface="dark"]{color:#fff;background:linear-gradient(135deg,#180B10,#3A0B19 56%,#72001F)}
.acm-brand-backdrop{position:fixed;z-index:2;left:clamp(-260px,-18vw,-160px);top:clamp(108px,15vh,180px);width:clamp(900px,72vw,1160px);pointer-events:none;user-select:none;opacity:var(--acm-logo-backdrop-opacity);transform:translate3d(var(--acm-logo-backdrop-x),var(--acm-logo-backdrop-y),0);transition:opacity var(--acm-motion-base) var(--acm-ease);mask-image:linear-gradient(90deg,#000 0 64%,rgba(0,0,0,.6) 82%,transparent 100%);mix-blend-mode:multiply}
.acm-brand-backdrop img{width:100%;height:auto}
.acm-section-heading{max-width:900px}.acm-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 16px;color:var(--acm-brand);font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.acm-eyebrow::before{content:"";width:42px;height:1px;background:var(--acm-gold)}
.acm-display,.acm-h1,.acm-h2,.acm-h3{font-family:var(--acm-font-display);font-weight:600;letter-spacing:-.035em}.acm-display{font-size:clamp(2.75rem,6.2vw,6.75rem);line-height:1.12}.acm-h1{font-size:clamp(2.5rem,5vw,5.5rem);line-height:1.16}.acm-h2{font-size:clamp(2rem,3.6vw,4rem);line-height:1.28}.acm-h3{font-size:clamp(1.35rem,2vw,2rem);line-height:1.4}.acm-lead{max-width:760px;font-size:clamp(1rem,1.4vw,1.25rem);color:var(--acm-ink-soft)}
.acm-frame{position:relative;padding:10px;border:1px solid rgba(35,24,21,.12);border-radius:var(--acm-radius-section);background:linear-gradient(145deg,var(--acm-stone),#EEE9E4);box-shadow:var(--acm-shadow-soft)}
.acm-frame-inner{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.78);border-radius:calc(72px - 10px) 14px 14px 14px;background:rgba(255,255,255,.92)}
.acm-panel{position:relative;overflow:hidden;padding:clamp(26px,4vw,54px);border:1px solid rgba(35,24,21,.12);border-radius:var(--acm-radius-card);background:rgba(255,255,255,.86);box-shadow:var(--acm-shadow-soft)}
.acm-panel::before{content:"";position:absolute;inset:0 auto auto 0;width:54%;height:1px;background:linear-gradient(90deg,var(--acm-gold),transparent)}
.acm-grid-3{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px}.acm-grid-2{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,5vw,72px);align-items:center}
.acm-btn{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:12px 24px;border:1px solid transparent;border-radius:999px;font-weight:800;transition:transform var(--acm-motion-fast) ease,box-shadow var(--acm-motion-fast) ease,background var(--acm-motion-fast) ease}.acm-btn:hover{transform:translateY(-2px)}.acm-btn:focus-visible{outline:3px solid var(--acm-focus);outline-offset:3px}.acm-btn-primary{color:#fff;background:var(--acm-brand);box-shadow:var(--acm-shadow-brand)}.acm-btn-secondary{color:var(--acm-brand-deep);background:#fff;border-color:rgba(114,0,31,.42)}
.acm-section[data-brand-surface="dark"] .acm-eyebrow{color:var(--acm-gold-soft)}.acm-section[data-brand-surface="dark"] .acm-lead{color:rgba(255,255,255,.78)}.acm-section[data-brand-surface="dark"] .acm-panel{color:#fff;background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.18);box-shadow:none}
.acm-orbit{position:relative;min-height:460px}.acm-orbit-core{position:absolute;left:50%;top:50%;width:min(42vw,360px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.9),rgba(195,10,67,.42) 22%,rgba(114,0,31,.88) 66%,#180B10);box-shadow:0 0 0 34px rgba(168,2,51,.05),0 0 90px rgba(168,2,51,.26)}.acm-orbit-ring{position:absolute;left:50%;top:50%;width:78%;height:34%;border:1px solid rgba(169,128,69,.72);border-radius:50%;transform:translate(-50%,-50%) rotate(-18deg)}.acm-orbit-ring:nth-child(2){width:64%;height:58%;transform:translate(-50%,-50%) rotate(48deg);border-color:rgba(255,255,255,.35)}.acm-orbit-node{position:absolute;width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 18px rgba(255,255,255,.95)}
[data-motion-scope]{--acm-pointer-x:0;--acm-pointer-y:0}[data-motion-layer]{will-change:transform}[data-motion-reveal]{opacity:1;transform:none}
@media (max-width:960px){.acm-grid-3,.acm-grid-2{grid-template-columns:1fr}.acm-brand-backdrop{left:-220px;width:780px;opacity:.08}.acm-orbit{min-height:370px}}
@media (max-width:640px){:root{--acm-header-h:72px;--acm-section-y:84px}.acm-brand-backdrop{left:-205px;top:92px;width:520px;opacity:.055}.acm-frame{padding:7px;border-radius:88px 18px 18px 18px}.acm-frame-inner{border-radius:78px 12px 12px 12px}.acm-panel{border-radius:30px 12px 12px 12px}.acm-display{font-size:clamp(2.4rem,12vw,4.15rem)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.acm-brand-backdrop{transform:none!important}[data-motion-layer]{transform:none!important}}
