.method-hero{position:relative;padding:88px 0 64px;overflow:hidden}.method-hero__inner{display:grid;gap:24px;max-width:880px}.method-hero h1{font-size:clamp(34px,5.4vw,56px);line-height:1.05;letter-spacing:-.025em;font-weight:var(--ms-font-semibold);margin:0;max-width:22ch;color:var(--ms-text)}.method-hero h1 em{font-style:normal;background:linear-gradient(120deg,var(--ms-accent),color-mix(in srgb,var(--ms-accent) 60%,var(--ms-text)));-webkit-background-clip:text;background-clip:text;color:transparent}.method-hero__lede{font-size:clamp(17px,1.6vw,19px);line-height:1.55;color:var(--ms-text-secondary);max-width:60ch;margin:0}.loop{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.loop__step{position:relative;display:flex;flex-direction:column;gap:12px;padding:20px 18px;border:1px solid var(--ms-border);border-radius:var(--ms-radius-md);background:var(--ms-bg);min-height:180px}.loop__step--terminal{background:linear-gradient(135deg,color-mix(in srgb,var(--ms-accent) 5%,var(--ms-bg)) 0%,var(--ms-bg) 100%);border-color:color-mix(in srgb,var(--ms-accent) 30%,var(--ms-border))}.loop__step-num{font-family:var(--ms-font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ms-accent);margin:0}.loop__step h3{font-size:var(--ms-text-md);font-weight:var(--ms-font-semibold);letter-spacing:-.005em;margin:0;color:var(--ms-text);line-height:1.25}.loop__step p{font-size:13.5px;line-height:1.5;color:var(--ms-text-secondary);margin:0}.loop__back{margin-top:16px;font-family:var(--ms-font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ms-text-tertiary);display:inline-flex;align-items:center;gap:8px}.loop__back:before,.loop__back:after{content:"";flex:1;height:1px;background:var(--ms-border)}@media(max-width:1023.95px){.loop{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.loop{grid-template-columns:1fr}}.phases{display:flex;flex-direction:column;gap:0;max-width:1080px}.phase{display:grid;grid-template-columns:88px minmax(0,1fr);gap:40px;padding:32px 0;border-top:1px solid var(--ms-border);align-items:start}.phase:first-child{border-top:none;padding-top:12px}.phase__num{font-family:var(--ms-font-mono);font-size:56px;font-weight:var(--ms-font-medium);line-height:1;color:var(--ms-accent);margin:0;letter-spacing:-.02em}.phase__body{display:flex;flex-direction:column;gap:10px}.phase__title{font-size:var(--ms-text-xl);font-weight:var(--ms-font-semibold);letter-spacing:-.01em;margin:0;color:var(--ms-text)}.phase__question{font-style:italic;font-size:var(--ms-text-md);color:var(--ms-text-secondary);margin:0;line-height:1.45}.phase__prose{font-size:var(--ms-text-sm);line-height:1.65;color:var(--ms-text);margin:4px 0 0;max-width:68ch}@media(max-width:767.95px){.phase{grid-template-columns:64px minmax(0,1fr);gap:20px;padding:24px 0}.phase__num{font-size:40px}}.principle{display:grid;grid-template-columns:220px 1fr;gap:40px;padding:32px 0;border-bottom:1px solid var(--ms-border)}.principle:first-of-type{border-top:1px solid var(--ms-border)}.principle__lhs{display:flex;flex-direction:column;gap:8px}.principle__num{font-family:var(--ms-font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ms-accent);margin:0}.principle__name{font-size:var(--ms-text-xl);font-weight:var(--ms-font-semibold);letter-spacing:-.01em;margin:0;color:var(--ms-text)}.principle__rhs{display:grid;gap:16px}.principle__rhs p{margin:0;font-size:var(--ms-text-md);line-height:1.65;color:var(--ms-text-secondary)}.principle__rhs strong{color:var(--ms-text);font-weight:var(--ms-font-semibold)}.principle__example{padding:16px 18px;background:var(--ms-bg-subtle, var(--ms-bg));border-left:2px solid var(--ms-accent);border-radius:2px}.principle__example p{font-size:14px;color:var(--ms-text);line-height:1.6;margin:0}.principle__example-label{font-family:var(--ms-font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ms-accent);margin:0 0 6px}@media(max-width:767.95px){.principle{grid-template-columns:1fr;gap:16px;padding:28px 0}}.toolset{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid var(--ms-border);border-radius:var(--ms-radius-md);overflow:hidden}.tool{padding:24px;background:var(--ms-bg);display:flex;flex-direction:column;gap:12px}.tool+.tool{border-left:1px solid var(--ms-border)}.tool__num{font-family:var(--ms-font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ms-accent);margin:0}.tool__name{font-size:var(--ms-text-md);font-weight:var(--ms-font-semibold);letter-spacing:-.005em;margin:0;color:var(--ms-text);line-height:1.25}.tool__body{font-size:13.5px;line-height:1.55;color:var(--ms-text-secondary);margin:0}.tool__when{margin-top:auto;padding-top:12px;border-top:1px solid var(--ms-border);font-family:var(--ms-font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ms-text-tertiary)}.tool__when-val{display:block;margin-top:4px;font-family:var(--ms-font-sans);font-size:13.5px;letter-spacing:0;text-transform:none;color:var(--ms-text);line-height:1.5}@media(max-width:1023.95px){.toolset{grid-template-columns:repeat(2,1fr)}.tool+.tool{border-left:0;border-top:1px solid var(--ms-border)}.tool:nth-child(2n){border-left:1px solid var(--ms-border)}.tool:nth-child(-n+2){border-top:0}}@media(max-width:600px){.toolset{grid-template-columns:1fr}.tool+.tool{border-left:0;border-top:1px solid var(--ms-border)}.tool:nth-child(2n){border-left:0}}.anti{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.anti__item{display:grid;grid-template-columns:32px 1fr;gap:16px;padding:20px 22px;border:1px solid var(--ms-border);border-radius:var(--ms-radius-md);background:var(--ms-bg)}.anti__mark{font-family:var(--ms-font-mono);font-size:14px;font-weight:var(--ms-font-semibold);color:color-mix(in srgb,var(--ms-text) 35%,transparent);line-height:1.4}.anti__item h3{font-size:var(--ms-text-md);font-weight:var(--ms-font-semibold);letter-spacing:-.005em;margin:0 0 6px;color:var(--ms-text)}.anti__item p{margin:0;font-size:13.5px;line-height:1.6;color:var(--ms-text-secondary)}@media(max-width:767.95px){.anti{grid-template-columns:1fr}}
