
:root{
  --bg:#fafaf7;
  --paper:#ffffff;
  --ink:#172017;
  --muted:#526152;
  --line:#d7ded3;
  --soft:#d7ead0;
  --soft2:#ffffff;
  --accent:#2d5a36;
  --shadow:0 18px 50px rgba(25,45,25,.08);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:linear-gradient(180deg,#ffffff 0%,var(--bg) 100%);
  line-height:1.56;
}
a{color:inherit;text-decoration:none}
.container{width:min(1080px, calc(100% - 36px)); margin:0 auto;}
header{
  position:sticky; top:0; z-index:20;
  background:#ffffff;
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(219,231,215,.75);
}
.nav{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0;}
.brand{display:flex; flex-direction:column;}
.brand strong{font-size:17px; letter-spacing:.02em;}
.brand span{font-size:11px; color:var(--muted);}
.menu{display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end;}
.menu a{font-size:13px; padding:7px 10px; border-radius:999px;}
.menu a:hover{background:#f1f3ef;}
.hero{padding:38px 0 22px;}
.eyebrow{font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); font-weight:780;}
h1{font-size:clamp(36px,6.2vw,66px); line-height:.98; letter-spacing:-.058em; margin:12px 0 14px;}
h2{font-size:clamp(30px,4vw,50px); line-height:1.02; letter-spacing:-.045em; margin:0 0 12px;}
h3{font-size:22px; letter-spacing:-.025em; margin:0 0 10px;}
p{font-size:18px; color:var(--muted); margin:0 0 12px;}
.big-sub{font-size:clamp(18px,2vw,23px); color:#304030; max-width:830px;}
.card{
  background:#ffffff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  border-radius:var(--radius);
  padding:24px;
}
.section{padding:26px 0;}
.chips{display:flex; gap:12px; flex-wrap:wrap; margin:18px 0 0;}
.chip{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:14px 18px;
  min-height:48px;
  border:1px solid #b8d2af;
  background:#d7ead0;
  border-radius:999px;
  font-weight:780;
  color:#1b2b1b;
  box-shadow:0 8px 22px rgba(28,55,28,.08);
}
.hero .chip{font-size:19px; padding:14px 22px; min-height:54px; background:#d1e8c9; border-color:#abcba2;}
.chip:hover{transform:translateY(-1px); border-color:#9fbe96; background:#cce5c3;}
.chip.small{font-size:14px; padding:10px 13px; min-height:auto; font-weight:680;}
.grid{display:grid; gap:14px;}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr));}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr));}
.kicker{font-size:15px; font-weight:780; color:var(--accent); margin-bottom:6px;}
.before-after{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:16px 0;}
.panel{
  border:1px solid var(--line);
  background:var(--paper);
  border-radius:18px;
  padding:18px;
}
.panel.soft{background:#ffffff;}
.panel p{font-size:17px;}
.stat{
  display:flex; flex-direction:column; gap:4px;
  border:1px solid var(--line);
  background:#ffffff;
  border-radius:18px;
  padding:18px;
  margin-top:22px;
}
.stat strong{font-size:34px; letter-spacing:-.04em; line-height:1;}
.stat span{font-size:15px; color:var(--muted);}
.page-cta{margin-top:22px; padding-top:16px; border-top:1px solid var(--line);}
.page-cta p{font-size:16px;}
footer{padding:42px 0 64px; color:var(--muted);}
footer .container{border-top:1px solid var(--line); padding-top:22px;}
.breadcrumb{font-size:14px; color:var(--muted); margin-bottom:26px;}
.breadcrumb a{text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px;}
.bullet-list{margin:18px 0 0; padding-left:1.25rem; display:grid; gap:10px;}
.bullet-list li{font-size:17px; color:#2a392a; padding-left:.15rem;}
.bullet-list li::marker{color:var(--accent); font-size:1.1em;}
.list{margin:18px 0 0; padding-left:1.25rem; display:grid; gap:10px;}
.list div{display:list-item; list-style-position:outside; font-size:17px; color:#2a392a; padding-left:.15rem;}
.note{font-size:14px; color:#697869;}
.codeword{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size:15px; color:#2b3b2b; background:#ffffff;
  border:1px solid var(--line); border-radius:12px; padding:2px 7px;
}
.compact-hero{padding-bottom:18px;}
.more-title{font-size:clamp(42px,8vw,90px);}
@media (max-width:780px){
  .nav{align-items:flex-start; flex-direction:column; gap:8px; padding:10px 0;}
  .menu{justify-content:flex-start;}
  .hero{padding:36px 0 22px;}
  .grid.two,.grid.three,.before-after{grid-template-columns:1fr;}
  .card{padding:18px;}
  h1{font-size:40px;}
  .hero .chip{font-size:17px; width:100%; min-height:50px; padding:12px 18px;}
}


a.chip{cursor:pointer;}
a.chip::after{content:""; opacity:.55;}


.card, .panel, .stat{background:#ffffff;}
.bullet-list li{background:transparent;}
.resource-links{margin-top:18px;}
.resource-links a{display:inline-flex;}


.hero.compact-hero{padding:30px 0 16px;}
.architecture-figure{
  margin:18px 0 8px;
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:#ffffff;
}
.architecture-figure img{
  display:block;
  width:100%;
  height:auto;
}
.resource-card{
  display:grid;
  gap:10px;
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px;
  background:#ffffff;
}
.resource-card h3{margin:0;}
.resource-card p{font-size:16px; margin:0;}
.resource-card .chips{margin:4px 0 0;}
@media (max-width:780px){
  .hero{padding:30px 0 18px;}
  .section{padding:20px 0;}
  .card{padding:18px;}
  .panel{padding:16px;}
  h1{font-size:38px;}
  h2{font-size:30px;}
}


.safe-note{
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px 18px;
  background:#ffffff;
}
.resource-card .chip.disabled,
.chip.disabled{
  pointer-events:none;
  opacity:.62;
  background:#eef2ea;
  border-color:#d7ded3;
  color:#5d665b;
}


.section{padding-top:20px; padding-bottom:20px;}
.hero{padding-top:30px; padding-bottom:18px;}
.hero.compact-hero{padding-top:24px; padding-bottom:12px;}
.card{padding-top:18px; padding-bottom:18px;}
.viz-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:16px;}
.viz-card{border:1px solid var(--line); border-radius:18px; overflow:hidden; background:#fff;}
.viz-card img{display:block; width:100%; height:auto;}
.viz-card .viz-caption{padding:12px 14px;}
.viz-card h3{margin:0 0 5px; font-size:18px;}
.viz-card p{margin:0; font-size:15px;}
.pdf-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:16px;}
.pdf-card{border:1px solid var(--line); border-radius:18px; background:#fff; padding:16px; display:grid; gap:8px;}
.pdf-card h3{margin:0; font-size:18px;}
.pdf-card p{margin:0; font-size:15px;}
.safety-note{border:1px solid var(--line); border-radius:18px; background:#fff; padding:14px 16px; margin-top:14px;}
.architecture-figure{margin:14px 0 8px; border:1px solid var(--line); border-radius:18px; overflow:hidden; background:#fff;}
.architecture-figure img{display:block; width:100%; height:auto;}
@media (max-width:780px){
  .viz-grid,.pdf-grid{grid-template-columns:1fr;}
  .section{padding-top:16px; padding-bottom:16px;}
  .hero{padding-top:24px; padding-bottom:14px;}
}


.section{padding-top:18px; padding-bottom:18px;}
.hero{padding-top:26px; padding-bottom:14px;}
.hero.compact-hero{padding-top:22px; padding-bottom:10px;}
.card{padding:18px;}
.viz-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px;}
.viz-card{border:1px solid var(--line); border-radius:18px; overflow:hidden; background:#fff;}
.viz-card img{display:block; width:100%; height:auto;}
.viz-card .viz-caption{padding:12px 14px;}
.viz-card h3{margin:0 0 5px; font-size:18px;}
.viz-card p{margin:0; font-size:15px;}
.visual-downloads{margin-top:10px; display:flex; flex-wrap:wrap; gap:8px;}
.pdf-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px;}
.pdf-card{border:1px solid var(--line); border-radius:18px; background:#fff; padding:16px; display:grid; gap:8px;}
.pdf-card h3{margin:0; font-size:18px;}
.pdf-card p{margin:0; font-size:15px;}
.public-level{border:1px solid var(--line); border-radius:18px; background:#fff; padding:14px 16px; margin-top:14px;}
.public-level strong{color:var(--ink);}
@media (max-width:780px){
  .viz-grid,.pdf-grid{grid-template-columns:1fr;}
  .section{padding-top:14px; padding-bottom:14px;}
  .hero{padding-top:22px; padding-bottom:12px;}
  h1{font-size:36px;}
}

/* v108 public-level fusion */
.section{padding-top:16px; padding-bottom:16px;}
.hero{padding-top:24px; padding-bottom:12px;}
.hero.compact-hero{padding-top:20px; padding-bottom:10px;}
.card{padding:18px;}
.overview-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px;}
.overview-card{border:1px solid var(--line); border-radius:18px; background:#fff; padding:16px; display:grid; gap:8px;}
.overview-card h3{margin:0; font-size:19px;}
.overview-card p{margin:0; font-size:15px;}
.viz-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px;}
.viz-card{border:1px solid var(--line); border-radius:18px; overflow:hidden; background:#fff;}
.viz-card img{display:block; width:100%; height:auto;}
.viz-card .viz-caption{padding:12px 14px;}
.viz-card h3{margin:0 0 5px; font-size:18px;}
.viz-card p{margin:0; font-size:15px;}
.visual-downloads{margin-top:10px; display:flex; flex-wrap:wrap; gap:8px;}
.pdf-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px;}
.pdf-card{border:1px solid var(--line); border-radius:18px; background:#fff; padding:16px; display:grid; gap:8px;}
.pdf-card h3{margin:0; font-size:18px;}
.pdf-card p{margin:0; font-size:15px;}
.public-boundary{border:1px solid var(--line); border-radius:18px; background:#fff; padding:14px 16px;}
.flow-list{display:grid; gap:10px; margin-top:12px;}
.flow-list div{border:1px solid var(--line); border-radius:14px; background:#fff; padding:11px 13px;}
@media (max-width:780px){
  .overview-grid,.viz-grid,.pdf-grid{grid-template-columns:1fr;}
  .section{padding-top:13px; padding-bottom:13px;}
  .hero{padding-top:20px; padding-bottom:10px;}
  h1{font-size:35px;}
}

/* v109: public non-confidential inquiry contact */
.contact-note{
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  padding:14px 16px;
  margin-top:12px;
}
.contact-email{
  font-weight:700;
  font-size:18px;
  word-break:break-word;
}

/* v112: no mailto links, plain public contact only */
.manual-email-note{
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  padding:12px 14px;
  margin-top:10px;
  font-size:15px;
}

/* v112: mailto target fixed to koji.mochizuki@limflex.org */

/* v112: Home hero clarifies action boundary. */

/* v113: Why LimFlex / judgment-state model case */
:root{
  --deep:#102817;
  --accent-strong:#174c29;
  --accent-bright:#2f7a45;
  --mint:#e8f4e4;
  --mint-strong:#d2e9cd;
  --gate:#f2f3f0;
}
.home-hero{padding-top:58px; padding-bottom:54px;}
.home-hero h1{max-width:940px; margin-bottom:16px;}
.hero-decision{
  max-width:940px;
  margin:0 0 18px;
  color:var(--deep);
  font-size:clamp(26px,4.2vw,48px);
  font-weight:820;
  line-height:1.05;
  letter-spacing:-.042em;
}
.chip.secondary{background:#fff; border-color:var(--line); box-shadow:none;}
.chip.secondary:hover{background:#f4f7f2; border-color:#b9c8b5;}
.difference-banner{
  margin:8px 0 20px;
  padding:72px 0 74px;
  color:#fff;
  background:linear-gradient(125deg,#102817 0%,#1e5d31 100%);
}
.difference-label{
  font-size:14px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:800;
  color:#cce4cc;
  margin-bottom:12px;
}
.difference-banner h2{
  max-width:1000px;
  font-size:clamp(42px,7.8vw,86px);
  color:#fff;
  margin:0 0 20px;
  line-height:.94;
}
.difference-banner p{max-width:850px; color:#e0eee0; font-size:clamp(18px,2.2vw,24px);}
.section-heading{max-width:900px; margin-bottom:22px;}
.section-heading p{max-width:880px;}
.compact-heading{margin-bottom:18px;}
.decision-compare{display:grid; grid-template-columns:1.18fr .82fr; gap:18px; align-items:stretch;}
.decision-card{
  border-radius:22px;
  padding:26px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:var(--shadow);
}
.limflex-card{border:2px solid #75a979; background:linear-gradient(180deg,#f8fcf6 0%,#fff 100%);}
.gate-card{background:var(--gate); box-shadow:none;}
.decision-card-top{display:flex; gap:10px; justify-content:space-between; align-items:center; margin-bottom:18px; flex-wrap:wrap;}
.system-tag,.result-tag{display:inline-flex; align-items:center; border-radius:999px; padding:7px 11px; font-size:13px; font-weight:800;}
.system-tag{background:var(--accent-strong); color:#fff; letter-spacing:.04em;}
.muted-tag{background:#697169;}
.result-tag{background:#e6eee3; color:#29412d;}
.decision-card h3{font-size:clamp(25px,3vw,34px); line-height:1.05; margin-bottom:18px;}
.state-flow{margin:0; padding-left:1.45rem; display:grid; gap:12px;}
.state-flow li{font-size:17px; color:#263627; padding-left:.25rem;}
.state-flow li::marker{color:var(--accent-bright); font-weight:900;}
.gate-result{display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:24px 0;}
.gate-result span{display:flex; align-items:center; justify-content:center; padding:14px 8px; border-radius:12px; background:#fff; border:1px solid #d8ddd5; font-size:14px; font-weight:820; letter-spacing:.04em;}
.comparison-section{padding-top:34px;}
.comparison-card{padding:28px;}
.comparison-wrap{overflow-x:auto; margin-top:18px; border:1px solid var(--line); border-radius:18px;}
.capability-table{width:100%; border-collapse:collapse; min-width:700px; background:#fff;}
.capability-table th,.capability-table td{padding:15px 18px; border-bottom:1px solid #e3e8df; text-align:left; font-size:16px;}
.capability-table thead th{background:#f4f6f2; color:#344134; font-size:14px; text-transform:uppercase; letter-spacing:.06em;}
.capability-table th:nth-child(2),.capability-table th:nth-child(3),.capability-table td:nth-child(2),.capability-table td:nth-child(3){text-align:center; width:170px;}
.capability-table .limflex-col{background:#edf7e9;}
.capability-table thead .limflex-col{background:#cfe7c9; color:#183b20; font-size:15px;}
.capability-table .check{font-size:23px; color:#236337; font-weight:900; line-height:1;}
.capability-table tbody tr:last-child td{border-bottom:0;}
.choose-section{padding-top:26px;}
.choose-card{border-radius:26px; padding:34px; background:var(--deep); color:#fff; box-shadow:var(--shadow);}
.choose-card h2{color:#fff; max-width:960px;}
.choose-card .kicker{color:#b9dbb9;}
.selection-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:24px;}
.selection-grid div{border:1px solid rgba(255,255,255,.18); border-radius:16px; padding:17px; background:rgba(255,255,255,.055); display:grid; gap:5px;}
.selection-grid strong{font-size:18px;}
.selection-grid span{color:#d5e3d6; font-size:15px; line-height:1.45;}
.final-cta h2{max-width:900px;}
.disclosure-section{padding-top:4px; padding-bottom:0;}
.disclosure-section .note{max-width:920px;}
@media (max-width:780px){
  .home-hero{padding-top:38px; padding-bottom:34px;}
  .home-hero h1{font-size:46px;}
  .hero-decision{font-size:30px;}
  .difference-banner{padding:48px 0 50px;}
  .difference-banner h2{font-size:50px;}
  .decision-compare{grid-template-columns:1fr;}
  .decision-card{padding:20px;}
  .gate-result{grid-template-columns:1fr;}
  .selection-grid{grid-template-columns:1fr;}
  .choose-card{padding:24px 20px;}
  .comparison-card{padding:20px 14px;}
}

/* v113 mobile comparison: keep all three columns visible without horizontal scrolling */
@media (max-width:780px){
  .comparison-wrap{overflow-x:visible;}
  .capability-table{min-width:0; table-layout:fixed;}
  .capability-table th,.capability-table td{padding:10px 7px; font-size:11.5px; line-height:1.28; overflow-wrap:anywhere;}
  .capability-table th:first-child,.capability-table td:first-child{width:68%; text-align:left;}
  .capability-table th:nth-child(2),.capability-table th:nth-child(3),.capability-table td:nth-child(2),.capability-table td:nth-child(3){width:16%; padding-left:3px; padding-right:3px;}
  .capability-table thead th{font-size:9.5px; letter-spacing:.025em;}
  .capability-table thead .limflex-col{font-size:10px;}
  .capability-table .check{font-size:19px;}
}

/* v113 mobile comparison cards */
@media (max-width:520px){
  .capability-table,.capability-table thead,.capability-table tbody{display:block; width:100%;}
  .capability-table thead tr{display:grid; grid-template-columns:1fr 1fr;}
  .capability-table thead th:first-child{display:none;}
  .capability-table thead th:nth-child(2),
  .capability-table thead th:nth-child(3){display:block; width:auto; padding:9px 5px; text-align:center; font-size:10px;}
  .capability-table tbody tr{display:grid; grid-template-columns:1fr 1fr; border-bottom:1px solid #dfe6dc;}
  .capability-table tbody tr:last-child{border-bottom:0;}
  .capability-table tbody td{border-bottom:0;}
  .capability-table tbody td:first-child{grid-column:1 / -1; display:block; width:auto; padding:10px 10px 6px; font-size:12.5px; line-height:1.3; background:#fff;}
  .capability-table tbody td:nth-child(2),
  .capability-table tbody td:nth-child(3){display:flex; align-items:center; justify-content:center; width:auto; min-height:31px; padding:3px 5px 8px; font-size:18px;}
  .capability-table tbody td:nth-child(2){background:#edf7e9;}
}


/* v114: type-based comparison and responsibility-connected judgment state */
.type-comparison-card{padding:30px;}
.type-comparison-wrap{overflow-x:auto; border:1px solid var(--line); border-radius:18px; margin-top:18px;}
.type-comparison-table{width:100%; min-width:1040px; border-collapse:separate; border-spacing:0; background:#fff;}
.type-comparison-table th,.type-comparison-table td{padding:16px 15px; border-right:1px solid #e4e9e1; border-bottom:1px solid #e4e9e1; text-align:left; vertical-align:top; font-size:14px; line-height:1.42;}
.type-comparison-table th:last-child,.type-comparison-table td:last-child{border-right:0;}
.type-comparison-table tbody tr:last-child th,.type-comparison-table tbody tr:last-child td{border-bottom:0;}
.type-comparison-table thead th{position:sticky; top:0; z-index:1; background:#f3f5f1; color:#344134; font-size:12px; text-transform:uppercase; letter-spacing:.055em; font-weight:820;}
.type-comparison-table thead th:nth-child(1){width:17%;}
.type-comparison-table thead th:nth-child(2){width:21%;}
.type-comparison-table thead th:nth-child(3){width:18%;}
.type-comparison-table thead th:nth-child(4){width:21%;}
.type-comparison-table thead th:nth-child(5){width:23%;}
.type-comparison-table tbody th{font-size:15px; color:var(--ink); font-weight:780;}
.type-comparison-table tbody tr:not(.limflex-type-row):hover th,
.type-comparison-table tbody tr:not(.limflex-type-row):hover td{background:#fafcf9;}
.type-comparison-table .limflex-type-row th,
.type-comparison-table .limflex-type-row td{background:#eaf6e6; border-bottom-color:#c7ddc2;}
.type-comparison-table .limflex-type-row th{box-shadow:inset 5px 0 0 #2f7a45;}
.type-name{display:block; font-size:18px; color:#174c29; margin-bottom:5px;}
.type-badge{display:inline-flex; border-radius:999px; background:#cfe7c9; color:#183b20; padding:4px 8px; font-size:10px; line-height:1.2; text-transform:uppercase; letter-spacing:.045em; font-weight:850;}
.comparison-note{font-size:13px; margin:12px 2px 0; color:#667166;}
.audit-difference-section{padding-top:30px;}
.audit-evidence-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:18px;}
.audit-evidence-card{border:1px solid var(--line); border-radius:22px; padding:24px; background:#fff;}
.limflex-evidence-card{border:2px solid #75a979; background:linear-gradient(180deg,#f0f9ed 0%,#fff 100%); box-shadow:var(--shadow);}
.standard-evidence-card{background:#f3f4f1;}
.evidence-label{font-size:13px; text-transform:uppercase; letter-spacing:.085em; font-weight:850; color:#37533b; margin-bottom:15px;}
.evidence-list{margin:0; padding-left:1.25rem; display:grid; gap:9px;}
.evidence-list li{font-size:16px; color:#2c3a2d; padding-left:.2rem;}
.limflex-evidence-card .evidence-list li::marker{color:#2f7a45; font-weight:900;}
.control-unit-section{padding-top:30px;}
.control-unit-card{border-radius:28px; padding:38px; background:linear-gradient(125deg,#102817 0%,#1e5d31 100%); color:#fff; box-shadow:var(--shadow);}
.control-unit-card .kicker{color:#b9dbb9;}
.control-unit-lead{font-size:clamp(20px,2.7vw,30px); color:#dbe9dc; max-width:950px; margin-bottom:10px;}
.control-unit-card h2{font-size:clamp(38px,6vw,72px); color:#fff; max-width:1000px; line-height:.96; margin:0;}
@media (max-width:780px){
  .type-comparison-card{padding:20px 14px;}
  .type-comparison-wrap{overflow:visible; border:0; border-radius:0;}
  .type-comparison-table{min-width:0; display:block; background:transparent;}
  .type-comparison-table thead{display:none;}
  .type-comparison-table tbody{display:grid; gap:12px;}
  .type-comparison-table tbody tr{display:block; border:1px solid var(--line); border-radius:17px; overflow:hidden; background:#fff;}
  .type-comparison-table tbody th,.type-comparison-table tbody td{display:grid; grid-template-columns:42% 58%; width:100%; border-right:0; border-bottom:1px solid #e5e9e2; padding:11px 12px; font-size:13px; line-height:1.38;}
  .type-comparison-table tbody th::before,.type-comparison-table tbody td::before{content:attr(data-label); padding-right:10px; color:#647064; font-size:10px; line-height:1.35; text-transform:uppercase; letter-spacing:.045em; font-weight:820;}
  .type-comparison-table tbody th{font-size:14px;}
  .type-comparison-table tbody tr th:last-child,.type-comparison-table tbody tr td:last-child{border-bottom:0;}
  .type-comparison-table .limflex-type-row{border:2px solid #75a979; box-shadow:var(--shadow);}
  .type-comparison-table .limflex-type-row th{box-shadow:none;}
  .type-name{font-size:17px;}
  .type-badge{margin-top:4px; width:max-content;}
  .audit-evidence-grid{grid-template-columns:1fr;}
  .audit-evidence-card{padding:20px;}
  .control-unit-card{padding:28px 21px;}
  .control-unit-card h2{font-size:43px;}
}
@media (max-width:480px){
  .type-comparison-table tbody th,.type-comparison-table tbody td{grid-template-columns:1fr; gap:5px;}
  .type-comparison-table tbody th::before,.type-comparison-table tbody td::before{padding-right:0;}
}


/* v114: judgment capability beyond targeted governance functions */
.beyond-governance-section{padding-top:34px; padding-bottom:34px;}
.governance-contrast-grid{display:grid; grid-template-columns:.88fr 1.12fr; gap:18px; align-items:stretch;}
.governance-contrast-card{border:1px solid var(--line); border-radius:22px; padding:25px; background:#fff;}
.standard-control-card{background:#f3f4f1;}
.limflex-control-card{border:2px solid #75a979; background:linear-gradient(180deg,#eef8eb 0%,#fff 100%); box-shadow:var(--shadow);}
.contrast-label{font-size:12px; text-transform:uppercase; letter-spacing:.09em; font-weight:850; color:#3e5942; margin-bottom:10px;}
.governance-contrast-card h3{font-size:clamp(24px,3vw,34px); line-height:1.06; margin-bottom:16px;}
.contrast-list{margin:0; padding-left:1.25rem; display:grid; gap:10px;}
.contrast-list li{font-size:16px; color:#2c3a2d; padding-left:.18rem;}
.limflex-control-card .contrast-list li::marker{color:#2f7a45; font-weight:900;}
.value-strip{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px;}
.value-strip div{border:1px solid #cbdcc6; border-radius:16px; padding:16px; background:#f8fcf6; display:grid; gap:4px;}
.value-strip strong{font-size:18px; color:#174c29;}
.value-strip span{font-size:14px; line-height:1.38; color:#526152;}
@media (max-width:780px){
  .governance-contrast-grid,.value-strip{grid-template-columns:1fr;}
  .governance-contrast-card{padding:20px;}
  .beyond-governance-section{padding-top:24px; padding-bottom:24px;}
}

/* v114 root-difference message */
.outcome-line {
  margin: 18px auto 0;
  max-width: 940px;
  text-align: center;
  font-size: 1.02rem;
  line-height: 1.65;
  color: var(--muted);
}
.outcome-line strong { color: var(--text); }


/* v114 final: root comparison, broad/deep governance, responsibility and user experience */
.architecture-comparison-card{padding:30px;}
.architecture-capability-table td:first-child{font-weight:680;color:#263527;}
.architecture-capability-table td:nth-child(2),
.architecture-capability-table td:nth-child(3){text-align:center;vertical-align:middle;}
.type-map-section{padding-top:8px;}
.expanded-type-table{min-width:1420px;}
.expanded-type-table thead th:nth-child(1){width:13%;}
.expanded-type-table thead th:nth-child(2){width:15%;}
.expanded-type-table thead th:nth-child(3){width:17%;}
.expanded-type-table thead th:nth-child(4){width:17%;}
.expanded-type-table thead th:nth-child(5){width:13%;}
.expanded-type-table thead th:nth-child(6){width:13%;}
.expanded-type-table thead th:nth-child(7){width:12%;}
.expanded-type-table .limflex-type-row td strong{color:#174c29;}
@media (max-width:780px){
  .architecture-comparison-card{padding:20px 14px;}
  .architecture-capability-table tbody td:first-child{font-size:12.5px;}
  .expanded-type-table{min-width:0;}
}

/* v115: simplified home page and low-contrast one-glance comparison */
.v115-hero{
  padding-top:46px;
  padding-bottom:34px;
}
.v115-hero h1{
  max-width:900px;
  font-size:clamp(42px,6.8vw,72px);
}
.v115-hero .hero-decision{
  font-size:clamp(25px,3.8vw,43px);
  max-width:900px;
}
.root-difference-section{
  padding-top:8px;
  padding-bottom:20px;
}
.root-difference-card{
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  padding:28px;
}
.root-difference-card h2{
  max-width:920px;
  font-size:clamp(31px,4.6vw,54px);
}
.root-difference-card > p{
  max-width:780px;
}
.root-flow{
  display:grid;
  grid-template-columns:1fr auto 1.2fr auto 1fr;
  gap:12px;
  align-items:stretch;
  margin-top:22px;
}
.root-flow > div{
  display:grid;
  gap:5px;
  align-content:center;
  min-height:104px;
  padding:17px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fbfcfa;
}
.root-flow > div strong{
  font-size:18px;
  color:#263527;
}
.root-flow > div span{
  color:var(--muted);
  font-size:14px;
  line-height:1.4;
}
.root-flow .root-flow-core{
  background:#f1f7ee;
  border-color:#c7d7c2;
}
.root-flow .root-flow-core strong{
  color:var(--accent-strong);
}
.root-arrow{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#788478;
  font-size:24px;
}
.v115-comparison-card{
  padding:26px;
  box-shadow:0 10px 30px rgba(25,45,25,.055);
}
.v115-comparison-card .section-heading{
  max-width:980px;
}
.v115-comparison-card .section-heading h2{
  max-width:980px;
  font-size:clamp(29px,4vw,46px);
}
.v115-matrix-wrap{
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}
.v115-matrix{
  width:100%;
  min-width:1120px;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
  background:#fff;
}
.v115-matrix th,
.v115-matrix td{
  padding:13px 11px;
  border-right:1px solid #e5e9e2;
  border-bottom:1px solid #e5e9e2;
  text-align:left;
  vertical-align:middle;
  font-size:13px;
  line-height:1.35;
}
.v115-matrix th:last-child,
.v115-matrix td:last-child{
  border-right:0;
}
.v115-matrix tbody tr:last-child th,
.v115-matrix tbody tr:last-child td{
  border-bottom:0;
}
.v115-matrix thead th{
  background:#f5f6f3;
  color:#4d5a4d;
  font-size:10.5px;
  line-height:1.25;
  text-transform:uppercase;
  letter-spacing:.035em;
  font-weight:820;
  text-align:center;
}
.v115-matrix thead th:first-child,
.v115-matrix thead th:nth-child(2){
  text-align:left;
}
.v115-matrix thead th:first-child{width:15%;}
.v115-matrix thead th:nth-child(2){width:20%;}
.v115-matrix thead th:nth-child(n+3){width:10.83%;}
.v115-matrix tbody th{
  font-size:14px;
  font-weight:760;
  color:#263527;
}
.v115-matrix .matrix-check{
  text-align:center;
  font-size:22px;
  line-height:1;
  font-weight:900;
  color:#28633a;
}
.v115-matrix .muted-check{
  color:#758075;
  font-size:18px;
}
.v115-matrix .limflex-matrix-row th,
.v115-matrix .limflex-matrix-row td{
  background:#edf5ea;
  border-bottom-color:#cddbc9;
}
.v115-matrix .limflex-matrix-row th{
  box-shadow:inset 4px 0 0 #5d8b65;
}
.v115-matrix .limflex-matrix-row .matrix-check{
  color:#1f5f35;
  font-size:25px;
}
.v115-matrix .type-name{
  font-size:19px;
  color:#214f2e;
}
.v115-matrix .type-badge{
  background:#dcebd8;
  color:#31533a;
}
.v115-decision-compare{
  grid-template-columns:1.12fr .88fr;
}
.v115-limflex-card{
  border:1px solid #b8cdb3;
  background:#f7faf5;
  box-shadow:0 10px 28px rgba(25,45,25,.05);
}
.v115-gate-card{
  background:#fff;
  border-color:var(--line);
}
.compact-state-flow{
  gap:9px;
}
.final-position-section{
  padding-top:22px;
}
.final-position-card{
  border:1px solid var(--line);
  border-radius:22px;
  background:#f6f8f4;
  padding:30px;
}
.final-position-card h2{
  max-width:980px;
  font-size:clamp(29px,4vw,48px);
}
.final-position-line{
  margin:8px 0 12px;
  max-width:980px;
  color:#24472e;
  font-size:clamp(22px,3vw,34px);
  font-weight:800;
  line-height:1.12;
  letter-spacing:-.025em;
}
.final-position-card > p:last-child{
  max-width:860px;
  font-size:17px;
}
@media (max-width:780px){
  .v115-hero{
    padding-top:32px;
    padding-bottom:24px;
  }
  .v115-hero h1{
    font-size:44px;
  }
  .root-difference-card{
    padding:21px;
  }
  .root-flow{
    grid-template-columns:1fr;
    gap:8px;
  }
  .root-arrow{
    transform:rotate(90deg);
    height:22px;
  }
  .root-flow > div{
    min-height:auto;
  }
  .v115-comparison-card{
    padding:20px 14px;
  }
  .v115-matrix-wrap{
    overflow:visible;
    border:0;
    border-radius:0;
  }
  .v115-matrix{
    min-width:0;
    display:block;
    background:transparent;
  }
  .v115-matrix thead{
    display:none;
  }
  .v115-matrix tbody{
    display:grid;
    gap:11px;
  }
  .v115-matrix tbody tr{
    display:block;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:15px;
    background:#fff;
  }
  .v115-matrix tbody th,
  .v115-matrix tbody td{
    display:grid;
    grid-template-columns:57% 43%;
    width:100%;
    border-right:0;
    border-bottom:1px solid #e5e9e2;
    padding:9px 11px;
    font-size:12px;
    text-align:left;
  }
  .v115-matrix tbody th::before,
  .v115-matrix tbody td::before{
    content:attr(data-label);
    padding-right:8px;
    color:#687468;
    font-size:9.5px;
    line-height:1.3;
    text-transform:uppercase;
    letter-spacing:.035em;
    font-weight:800;
  }
  .v115-matrix tbody th{
    font-size:13px;
  }
  .v115-matrix tbody tr th:last-child,
  .v115-matrix tbody tr td:last-child{
    border-bottom:0;
  }
  .v115-matrix .matrix-check,
  .v115-matrix .muted-check{
    justify-items:start;
    font-size:20px;
  }
  .v115-matrix .limflex-matrix-row{
    border:1.5px solid #9bb697;
  }
  .v115-matrix .limflex-matrix-row th{
    box-shadow:none;
  }
  .v115-matrix .limflex-matrix-row .matrix-check{
    font-size:22px;
  }
  .v115-decision-compare{
    grid-template-columns:1fr;
  }
  .final-position-card{
    padding:22px;
  }
}

/* v115 simplified capability comparison */
.simple-comparison-wrap{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}
.simple-comparison-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
}
.simple-comparison-table th,
.simple-comparison-table td{
  padding:14px 16px;
  border-right:1px solid #e4e8e1;
  border-bottom:1px solid #e4e8e1;
  vertical-align:middle;
  font-size:15px;
  line-height:1.35;
}
.simple-comparison-table th:last-child,
.simple-comparison-table td:last-child{
  border-right:0;
}
.simple-comparison-table tbody tr:last-child td{
  border-bottom:0;
}
.simple-comparison-table thead th{
  background:#f5f6f3;
  color:#4d5a4d;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.045em;
  font-weight:820;
  text-align:center;
}
.simple-comparison-table thead th:first-child{
  width:62%;
  text-align:left;
}
.simple-comparison-table thead th:nth-child(2),
.simple-comparison-table thead th:nth-child(3){
  width:19%;
}
.simple-comparison-table td:first-child{
  color:#2d3b2e;
}
.simple-comparison-table .simple-limflex-col{
  background:#edf5ea;
}
.simple-comparison-table thead .simple-limflex-col{
  color:#255132;
  font-size:13px;
}
.simple-comparison-table .simple-check{
  text-align:center;
  font-size:25px;
  line-height:1;
  font-weight:900;
  color:#235e35;
}
.simple-comparison-table .muted-check{
  color:#788178;
  font-size:20px;
}
.control-type-strip{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.control-type-strip span{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:7px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fafbf9;
  color:#586558;
  font-size:12px;
  line-height:1.2;
}
@media (max-width:600px){
  .simple-comparison-table th,
  .simple-comparison-table td{
    padding:10px 7px;
    font-size:11.5px;
    line-height:1.28;
  }
  .simple-comparison-table thead th{
    font-size:8.5px;
    letter-spacing:.02em;
  }
  .simple-comparison-table thead th:first-child{
    width:58%;
  }
  .simple-comparison-table thead th:nth-child(2),
  .simple-comparison-table thead th:nth-child(3){
    width:21%;
  }
  .simple-comparison-table thead .simple-limflex-col{
    font-size:10px;
  }
  .simple-comparison-table .simple-check{
    font-size:21px;
  }
  .simple-comparison-table .muted-check{
    font-size:17px;
  }
  .control-type-strip{
    gap:6px;
  }
  .control-type-strip span{
    font-size:10.5px;
    padding:6px 8px;
  }
}

/* v116: simplified governed-judgment narrative */
.v116-hero{
  padding-top:48px;
  padding-bottom:34px;
}
.v116-hero h1{
  max-width:980px;
  font-size:clamp(44px,7vw,76px);
  line-height:.98;
}
.v116-hero .hero-decision{
  max-width:900px;
  font-size:clamp(25px,3.7vw,41px);
  color:#29422f;
}
.v116-hero .big-sub{
  max-width:920px;
}
.v116-principle-card{
  padding:28px;
  box-shadow:0 10px 28px rgba(25,45,25,.045);
}
.v116-principle-card h2{
  max-width:930px;
  font-size:clamp(31px,4.6vw,52px);
}
.v116-flow{
  display:grid;
  grid-template-columns:1fr auto 1.08fr auto 1fr;
  gap:12px;
  align-items:stretch;
  margin-top:22px;
}
.v116-flow-step{
  position:relative;
  min-height:158px;
  padding:20px 18px 18px;
  border:1px solid var(--line);
  border-radius:17px;
  background:#fbfcfa;
}
.v116-flow-step strong{
  display:block;
  margin:7px 0 5px;
  font-size:19px;
  line-height:1.25;
  color:#263527;
}
.v116-flow-step p{
  margin:0;
  font-size:14px;
  color:var(--muted);
  line-height:1.48;
}
.v116-flow-core{
  background:#f1f6ef;
  border-color:#c6d5c1;
}
.v116-flow-core strong{color:#285035;}
.v116-step-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border:1px solid #cdd7c9;
  border-radius:999px;
  color:#526152;
  background:#fff;
  font-size:12px;
  font-weight:800;
}
.v116-flow-arrow{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#8a9489;
  font-size:24px;
}
.v116-improvement-line{
  margin:18px 0 0;
  padding:16px 18px;
  border-left:3px solid #8cac8a;
  background:#f8faf7;
  color:#374638;
  font-size:16px;
}
.v116-comparison-card{
  padding:27px;
  box-shadow:0 10px 28px rgba(25,45,25,.045);
}
.v116-comparison-card .section-heading h2{
  max-width:900px;
  font-size:clamp(30px,4.2vw,48px);
}
.v116-table-wrap{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:17px;
  background:#fff;
}
.v116-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
}
.v116-table th,
.v116-table td{
  padding:14px 16px;
  border-right:1px solid #e5e8e2;
  border-bottom:1px solid #e5e8e2;
  vertical-align:middle;
  font-size:15px;
  line-height:1.35;
}
.v116-table th:last-child,
.v116-table td:last-child{border-right:0;}
.v116-table tbody tr:last-child td{border-bottom:0;}
.v116-table thead th{
  background:#f5f6f3;
  color:#536053;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
  text-align:center;
  font-weight:820;
}
.v116-table thead th:first-child{
  width:62%;
  text-align:left;
}
.v116-table thead th:nth-child(2),
.v116-table thead th:nth-child(3){width:19%;}
.v116-table td:first-child{color:#2d3b2e;}
.v116-table .v116-limflex-col{background:#eef4ec;}
.v116-table thead .v116-limflex-col{
  color:#31543a;
  font-size:13px;
}
.v116-table .v116-check{
  text-align:center;
  font-size:25px;
  line-height:1;
  font-weight:900;
  color:#315f3d;
}
.v116-table .v116-muted-check{
  color:#7d867c;
  font-size:20px;
}
.v116-table .v116-key-row td:first-child{
  color:#264d31;
}
.v116-table .v116-key-row .v116-limflex-col{
  background:#e8f1e5;
}
.v116-case-heading{max-width:900px;}
.v116-decision-compare{grid-template-columns:1.12fr .88fr;}
.v116-limflex-card{
  background:#f7faf6;
  border-color:#bdcdb8;
  box-shadow:0 8px 24px rgba(25,45,25,.04);
}
.v116-gate-card{
  background:#fff;
  border-color:var(--line);
}
.v116-final-cta{
  background:#f7f9f6;
  box-shadow:none;
}
.v116-final-cta h2{
  max-width:900px;
  font-size:clamp(30px,4.3vw,50px);
}
.v116-final-line{
  max-width:900px;
  margin:8px 0 0;
  color:#324a37;
  font-size:clamp(20px,2.7vw,30px);
  font-weight:760;
  line-height:1.2;
  letter-spacing:-.02em;
}
@media (max-width:780px){
  .v116-hero{padding-top:32px; padding-bottom:24px;}
  .v116-hero h1{font-size:44px;}
  .v116-principle-card,
  .v116-comparison-card{padding:20px 14px;}
  .v116-flow{grid-template-columns:1fr; gap:8px;}
  .v116-flow-arrow{transform:rotate(90deg); height:22px;}
  .v116-flow-step{min-height:auto;}
  .v116-decision-compare{grid-template-columns:1fr;}
}
@media (max-width:600px){
  .v116-table th,
  .v116-table td{
    padding:10px 7px;
    font-size:11.5px;
    line-height:1.28;
  }
  .v116-table thead th{
    font-size:8.5px;
    letter-spacing:.015em;
  }
  .v116-table thead th:first-child{width:58%;}
  .v116-table thead th:nth-child(2),
  .v116-table thead th:nth-child(3){width:21%;}
  .v116-table thead .v116-limflex-col{font-size:10px;}
  .v116-table .v116-check{font-size:21px;}
  .v116-table .v116-muted-check{font-size:17px;}
}

/* v118: impression-first landing page and real-method comparison */
:root{
  --v118-deep:#14301d;
  --v118-mid:#2d5b3a;
  --v118-soft:#edf4eb;
  --v118-soft-2:#f6f8f5;
  --v118-line:#d8dfd5;
}
.v118-impression{
  padding:76px 0 32px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfa 100%);
}
.v118-statement-stack{
  display:grid;
  justify-items:center;
  text-align:center;
  gap:18px;
}
.v118-statement-stack h1{
  margin:0;
  max-width:1050px;
  color:var(--v118-deep);
  font-size:clamp(54px,8vw,98px);
  line-height:.92;
  letter-spacing:-.065em;
}
.v118-statement-secondary,
.v118-statement-outcome{
  margin:0;
  max-width:1020px;
  color:#26392b;
  font-weight:820;
  letter-spacing:-.045em;
  line-height:1.02;
}
.v118-statement-secondary{font-size:clamp(30px,4.5vw,54px);}
.v118-statement-outcome{font-size:clamp(36px,5.5vw,66px); color:var(--v118-mid);}
.v118-statement-divider{
  width:52px;
  height:2px;
  background:#bac8b7;
}
.v118-comparison-section{padding:20px 0 24px;}
.v118-table-shell{
  overflow:hidden;
  border:1px solid var(--v118-line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 16px 42px rgba(25,45,25,.06);
}
.v118-comparison-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
}
.v118-comparison-table th,
.v118-comparison-table td{
  padding:13px 12px;
  border-right:1px solid #e4e9e1;
  border-bottom:1px solid #e4e9e1;
  vertical-align:middle;
  text-align:center;
  font-size:13px;
  line-height:1.28;
}
.v118-comparison-table tr:last-child th,
.v118-comparison-table tr:last-child td{border-bottom:0;}
.v118-comparison-table th:last-child,
.v118-comparison-table td:last-child{border-right:0;}
.v118-comparison-table thead th{
  min-height:66px;
  background:#f5f7f4;
  color:#536153;
  font-size:12px;
  font-weight:820;
  letter-spacing:.01em;
}
.v118-comparison-table thead th:first-child{width:18%;}
.v118-comparison-table thead th:not(:first-child){width:20.5%;}
.v118-comparison-table thead th span{font-size:10px; font-weight:700; color:#798479;}
.v118-comparison-table tbody th{
  background:#fafbfa;
  color:#536053;
  text-align:left;
  font-size:12px;
  font-weight:760;
}
.v118-comparison-table td{color:#4c594d;}
.v118-comparison-table .v118-limflex-head{
  background:#eaf3e7;
  color:#224e30;
  font-size:16px;
}
.v118-comparison-table .v118-limflex-cell{
  background:#f0f6ee;
  color:#21482d;
  font-size:14px;
}
.v118-mobile-comparison{display:none;}
.v118-try-section{padding:30px 0 58px;}
.v118-try-inner{
  text-align:center;
  border-radius:28px;
  padding:48px 22px;
  background:linear-gradient(135deg,#17391f 0%,#2c6540 100%);
  color:#fff;
  box-shadow:0 20px 50px rgba(18,49,27,.14);
}
.v118-try-lead{
  margin:0 0 10px;
  color:#dcebdc;
  font-size:clamp(23px,3.5vw,38px);
  font-weight:760;
  letter-spacing:-.03em;
}
.v118-try-inner h2{
  margin:0 0 24px;
  color:#fff;
  font-size:clamp(42px,6.5vw,76px);
  letter-spacing:-.055em;
}
.v118-try-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:15px 25px;
  border-radius:999px;
  background:#fff;
  color:#17391f;
  font-size:18px;
  font-weight:820;
  box-shadow:0 10px 24px rgba(0,0,0,.14);
}
.v118-try-button:hover{transform:translateY(-1px);}
.v118-understanding-boundary{
  width:min(1080px,calc(100% - 36px));
  height:1px;
  margin:0 auto 14px;
  background:linear-gradient(90deg,transparent,#cdd7ca 18%,#cdd7ca 82%,transparent);
}
.v118-understand-intro{padding-top:52px;}
.v118-architecture{display:grid; justify-items:center; gap:10px; margin-top:18px;}
.v118-layer{
  width:min(900px,100%);
  display:grid;
  gap:5px;
  padding:22px 24px;
  border:1px solid var(--v118-line);
  border-radius:20px;
  text-align:center;
}
.v118-layer strong{font-size:24px; letter-spacing:-.025em;}
.v118-layer span{font-size:15px; color:#596659;}
.v118-layer-top{background:#eef5ec; border-color:#b9ceb5;}
.v118-layer-top strong{color:#285538;}
.v118-layer-bottom{background:#fff;}
.v118-layer-arrow{font-size:24px; color:#879287;}
.v118-fruit-card,.v118-theory-card,.v118-criteria-card{box-shadow:0 10px 28px rgba(25,45,25,.045);}
.v118-fruit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:20px;
}
.v118-fruit-grid>div{
  display:grid;
  gap:6px;
  padding:17px;
  border:1px solid var(--v118-line);
  border-radius:16px;
  background:#fbfcfa;
}
.v118-fruit-grid strong{font-size:17px; color:#2b4934;}
.v118-fruit-grid span{font-size:14px; line-height:1.45; color:#657165;}
.v118-method-explain-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.v118-method-explain-grid article{
  padding:19px;
  border:1px solid var(--v118-line);
  border-radius:18px;
  background:#fff;
}
.v118-method-explain-grid h3{font-size:20px;}
.v118-method-explain-grid p{font-size:15px; margin:0;}
.v118-method-explain-limflex{background:#f1f6ef!important; border-color:#bdcfb8!important;}
.v118-theory-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:20px;
}
.v118-theory-grid>div{
  display:grid;
  gap:7px;
  padding:18px;
  border:1px solid var(--v118-line);
  border-radius:16px;
  background:#fbfcfa;
}
.v118-theory-grid strong{font-size:20px;}
.v118-theory-grid span{font-size:14px; color:#657165;}
.v118-theory-emphasis{background:#eef5ec!important; border-color:#b9ceb5!important;}
.v118-theory-emphasis strong{color:#285538;}
.v118-theory-line{
  margin:16px 0 0;
  padding:15px 17px;
  background:#f8faf7;
  border-left:3px solid #8cac8a;
  color:#3b4a3c;
  font-size:16px;
}
.v118-grade-line{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.v118-grade-line span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 13px;
  border:1px solid var(--v118-line);
  border-radius:999px;
  background:#fff;
  color:#415042;
  font-size:12px;
  font-weight:800;
  letter-spacing:.025em;
}
.v118-grade-line span:nth-child(n+5){background:#f0f5ee; color:#2c5337;}
.v118-criteria-flow{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:18px;
}
.v118-criteria-flow span{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:9px 12px;
  border:1px solid var(--v118-line);
  border-radius:13px;
  background:#fbfcfa;
  color:#465447;
  font-size:13px;
  font-weight:700;
}
.v118-criteria-flow b{color:#899489;}
.v118-final-cta{background:#f7f9f6; box-shadow:none;}
.v118-final-cta h2{max-width:850px;}
.v118-final-cta p{max-width:900px;}
@media (max-width:900px){
  .v118-comparison-table th,.v118-comparison-table td{padding:11px 8px; font-size:11px;}
  .v118-comparison-table thead th{font-size:10px;}
  .v118-comparison-table .v118-limflex-cell{font-size:12px;}
  .v118-fruit-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:680px){
  .v118-impression{padding:50px 0 24px;}
  .v118-statement-stack{gap:14px;}
  .v118-statement-stack h1{font-size:49px;}
  .v118-statement-secondary{font-size:27px;}
  .v118-statement-outcome{font-size:35px;}
  .v118-statement-divider{width:40px;}
  .v118-desktop-comparison{display:none;}
  .v118-mobile-comparison{display:grid; gap:11px;}
  .v118-method-card{
    overflow:hidden;
    border:1px solid var(--v118-line);
    border-radius:17px;
    background:#fff;
  }
  .v118-method-card h2{
    margin:0;
    padding:14px 15px;
    background:#f5f7f4;
    color:#475447;
    font-size:17px;
    letter-spacing:-.02em;
  }
  .v118-method-card dl{margin:0;}
  .v118-method-card dl>div{
    display:grid;
    grid-template-columns:38% 62%;
    border-top:1px solid #e7ebe4;
  }
  .v118-method-card dt,.v118-method-card dd{
    margin:0;
    padding:8px 11px;
    font-size:11.5px;
    line-height:1.25;
  }
  .v118-method-card dt{color:#748074; font-weight:760; background:#fafbfa;}
  .v118-method-card dd{color:#465347; font-weight:650;}
  .v118-method-limflex{border:1.5px solid #9fb99a;}
  .v118-method-limflex h2{background:#eaf3e7; color:#245132; font-size:20px;}
  .v118-method-limflex dd{color:#244a2f; font-weight:800; background:#f3f8f1;}
  .v118-try-section{padding:24px 0 42px;}
  .v118-try-inner{padding:38px 17px; border-radius:22px;}
  .v118-try-lead{font-size:23px;}
  .v118-try-inner h2{font-size:43px;}
  .v118-try-button{width:100%;}
  .v118-understand-intro{padding-top:38px;}
  .v118-fruit-grid,.v118-method-explain-grid,.v118-theory-grid{grid-template-columns:1fr;}
  .v118-layer{padding:18px 15px;}
  .v118-layer strong{font-size:21px;}
  .v118-layer span{font-size:13px;}
  .v118-grade-line span{font-size:10.5px; padding:8px 10px; min-height:36px;}
  .v118-criteria-flow{display:grid; grid-template-columns:1fr;}
  .v118-criteria-flow b{transform:rotate(90deg); text-align:center;}
}
@media (max-width:680px){
  .v118-mobile-comparison{grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start;}
  .v118-method-card h2{min-height:62px; display:flex; align-items:center; padding:11px 11px; font-size:14px; line-height:1.15;}
  .v118-method-limflex h2{font-size:17px;}
  .v118-method-card dl>div{grid-template-columns:42% 58%;}
  .v118-method-card dt,.v118-method-card dd{padding:7px 8px; font-size:9.5px;}
  .v118-method-card dt{font-size:8.8px;}
}

/* v118: horizontal comparison table, check-led comparison, lighter top palette */
.v118-statement-stack h1{color:#25352b;}
.v118-statement-secondary{color:#435147;}
.v118-statement-outcome{color:#58735f;}
.v118-statement-divider{background:#d5ddd3;}
.v118-table-shell{
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:#b8c5b5 #f5f7f4;
  border-radius:20px;
}
.v118-table-shell:focus{outline:2px solid #a9baa6; outline-offset:3px;}
.v118-comparison-table{
  width:100%;
  min-width:840px;
  table-layout:fixed;
}
.v118-comparison-table thead th:first-child{width:29%;}
.v118-comparison-table thead th:not(:first-child){width:17.75%;}
.v118-comparison-table th,
.v118-comparison-table td{height:50px;}
.v118-comparison-table tbody th{
  position:sticky;
  left:0;
  z-index:2;
  background:#fbfcfb;
  box-shadow:1px 0 0 #e4e9e1;
  color:#4f5b52;
  font-size:12.5px;
}
.v118-comparison-table thead th:first-child{
  position:sticky;
  left:0;
  z-index:4;
  background:#f7f8f7;
  box-shadow:1px 0 0 #e4e9e1;
}
.v118-comparison-table .v118-limflex-head{
  background:#edf5eb;
  color:#31523a;
}
.v118-comparison-table .v118-limflex-cell{background:#f4f8f2;}
.v118-check{
  font-size:25px!important;
  line-height:1;
  font-weight:850;
  color:#3f7850!important;
}
.v118-check-soft{color:#6f8b74!important; font-weight:760;}
.v118-try-inner{
  background:linear-gradient(135deg,#eef5ec 0%,#f8faf7 100%);
  color:#26372b;
  border:1px solid #d5dfd2;
  box-shadow:0 14px 36px rgba(25,45,25,.06);
}
.v118-try-lead{color:#53675a;}
.v118-try-inner h2{color:#293a2e;}
.v118-try-button{
  background:#ffffff;
  color:#34513c;
  border:1px solid #b9cbb6;
  box-shadow:0 8px 20px rgba(25,45,25,.07);
}
.v118-try-button:hover{background:#f7faf6; border-color:#9fb49c;}
.v118-mobile-comparison{display:none!important;}
@media (max-width:680px){
  .v118-desktop-comparison{display:block;}
  .v118-table-shell{
    margin-left:-18px;
    margin-right:-18px;
    border-left:0;
    border-right:0;
    border-radius:0;
  }
  .v118-comparison-table{min-width:760px;}
  .v118-comparison-table thead th:first-child{width:31%;}
  .v118-comparison-table thead th:not(:first-child){width:17.25%;}
  .v118-comparison-table th,.v118-comparison-table td{padding:10px 9px;}
  .v118-comparison-table tbody th{font-size:11px; line-height:1.22;}
  .v118-comparison-table thead th{font-size:10.5px;}
  .v118-comparison-table .v118-limflex-head{font-size:15px;}
  .v118-check{font-size:22px!important;}
  .v118-try-inner{padding:34px 17px;}
}

/* v119: asymmetric home page — effect first, explanation deferred */
:root{
  --v119-ink:#26342b;
  --v119-muted:#647067;
  --v119-line:#e1e7df;
  --v119-soft:#f7f9f6;
  --v119-limflex:#eef5ec;
  --v119-accent:#52705a;
}
.v119-impression{padding:76px 0 42px;background:linear-gradient(180deg,#ffffff 0%,#fbfcfb 100%);}
.v119-statement-stack{display:grid;justify-items:center;text-align:center;gap:20px;}
.v119-statement-stack h1{margin:0;max-width:980px;font-size:clamp(54px,8vw,108px);line-height:.95;letter-spacing:-.065em;color:var(--v119-ink);}
.v119-statement-divider{width:52px;height:1px;background:#d5ddd3;}
.v119-statement-secondary{margin:0;font-size:clamp(25px,3.2vw,43px);line-height:1.08;font-weight:720;letter-spacing:-.035em;color:#435047;}
.v119-statement-outcome{margin:0;font-size:clamp(35px,5vw,68px);line-height:1;letter-spacing:-.05em;font-weight:820;color:#5e7864;}
.v119-comparison-section{padding:26px 0 50px;background:#fbfcfb;}
.v119-table-shell{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;border:1px solid var(--v119-line);border-radius:20px;background:#fff;scrollbar-width:thin;scrollbar-color:#b8c5b5 #f5f7f4;}
.v119-table-shell:focus{outline:2px solid #a9baa6;outline-offset:3px;}
.v119-comparison-table{width:100%;min-width:860px;border-collapse:separate;border-spacing:0;table-layout:fixed;}
.v119-comparison-table th,.v119-comparison-table td{height:52px;padding:11px 12px;border-right:1px solid #e8ece6;border-bottom:1px solid #e8ece6;text-align:center;vertical-align:middle;}
.v119-comparison-table thead th{background:#f7f8f7;color:#516056;font-size:12px;font-weight:820;line-height:1.15;}
.v119-comparison-table thead th span{font-size:10px;font-weight:680;color:#7a857c;}
.v119-comparison-table thead th:first-child{width:31%;position:sticky;left:0;z-index:4;background:#f7f8f7;text-align:left;box-shadow:1px 0 0 #e4e9e1;}
.v119-comparison-table thead th:not(:first-child){width:17.25%;}
.v119-comparison-table tbody th{position:sticky;left:0;z-index:2;background:#fbfcfb;box-shadow:1px 0 0 #e4e9e1;text-align:left;color:#4f5b52;font-size:12.5px;font-weight:740;line-height:1.22;}
.v119-comparison-table tr:last-child th,.v119-comparison-table tr:last-child td{border-bottom:0;}
.v119-comparison-table th:last-child,.v119-comparison-table td:last-child{border-right:0;}
.v119-comparison-table .v119-limflex-head{background:#eaf3e7;color:#31523a;font-size:16px;}
.v119-comparison-table .v119-limflex-cell{background:#f3f8f1;}
.v119-check{font-size:25px!important;line-height:1;font-weight:880;color:#39744c!important;}
.v119-check-soft{color:#718c76!important;font-weight:770;}
.v119-try-section{padding:24px 0 64px;background:#fbfcfb;}
.v119-try-inner{padding:48px 36px;border:1px solid #d8e1d5;border-radius:28px;background:linear-gradient(135deg,#eef5ec 0%,#fafbf9 100%);text-align:center;box-shadow:0 14px 36px rgba(25,45,25,.05);}
.v119-try-lead{margin:0 0 10px;font-size:clamp(23px,3vw,36px);font-weight:760;letter-spacing:-.035em;color:#53675a;}
.v119-try-inner h2{margin:0;font-size:clamp(43px,5.5vw,72px);line-height:1;letter-spacing:-.055em;color:#293a2e;}
.v119-action-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:760px;margin:28px auto 0;}
.v119-action-buttons a{display:grid;gap:5px;padding:18px 20px;border-radius:16px;text-decoration:none;text-align:left;transition:transform .18s ease,border-color .18s ease,background .18s ease;}
.v119-action-buttons a:hover{transform:translateY(-2px);}
.v119-action-buttons strong{font-size:21px;letter-spacing:-.02em;}
.v119-action-buttons span{font-size:13px;line-height:1.35;}
.v119-action-primary{background:#fff;border:1px solid #adc0aa;color:#305039;box-shadow:0 8px 20px rgba(25,45,25,.06);}
.v119-action-primary span{color:#667469;}
.v119-action-secondary{background:rgba(255,255,255,.55);border:1px solid #d0dad0;color:#45544a;}
.v119-action-secondary span{color:#778179;}
.v119-what-section{padding:82px 0 72px;background:#fff;}
.v119-what-heading{max-width:820px;margin:0 auto;text-align:center;}
.v119-what-heading h2{margin:8px 0 14px;font-size:clamp(40px,5vw,64px);line-height:1.02;letter-spacing:-.05em;color:var(--v119-ink);}
.v119-what-heading p{margin:0 auto;max-width:680px;font-size:18px;line-height:1.55;color:var(--v119-muted);}
.v119-outcome-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px;}
.v119-outcome-grid article{min-height:210px;padding:24px;border:1px solid var(--v119-line);border-radius:20px;background:#fbfcfb;}
.v119-outcome-number{display:block;margin-bottom:28px;font-size:12px;font-weight:820;letter-spacing:.1em;color:#8a958c;}
.v119-outcome-grid h3{margin:0 0 10px;font-size:25px;line-height:1.08;letter-spacing:-.035em;color:#33463a;}
.v119-outcome-grid p{margin:0;font-size:15px;line-height:1.5;color:#6c786f;}
.v119-explore-section{padding:66px 0 82px;background:#f7f9f6;}
.v119-explore-heading{text-align:center;}
.v119-explore-heading h2{margin:8px 0 0;font-size:clamp(34px,4.2vw,54px);line-height:1.05;letter-spacing:-.045em;color:var(--v119-ink);}
.v119-explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px;}
.v119-explore-grid a{display:grid;gap:7px;min-height:146px;padding:22px;border:1px solid #dce4da;border-radius:18px;background:#fff;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;}
.v119-explore-grid a:hover{transform:translateY(-2px);border-color:#b9cbb6;box-shadow:0 10px 24px rgba(25,45,25,.055);}
.v119-explore-grid strong{font-size:23px;letter-spacing:-.025em;color:#34513c;}
.v119-explore-grid span{font-size:14px;line-height:1.45;color:#6b776e;}
.v119-disclosure-section{padding:28px 0 36px;background:#fff;}
.v119-disclosure-section .note{max-width:1040px;margin:0 auto;color:#7a847c;font-size:11px;line-height:1.5;}
@media (max-width:900px){
  .v119-outcome-grid,.v119-explore-grid{grid-template-columns:1fr;}
  .v119-outcome-grid article{min-height:0;}
}
@media (max-width:680px){
  .v119-impression{padding:50px 0 26px;}
  .v119-statement-stack{gap:14px;}
  .v119-statement-stack h1{font-size:49px;}
  .v119-statement-secondary{font-size:27px;}
  .v119-statement-outcome{font-size:35px;}
  .v119-statement-divider{width:40px;}
  .v119-comparison-section{padding:18px 0 34px;}
  .v119-table-shell{margin-left:-18px;margin-right:-18px;border-left:0;border-right:0;border-radius:0;}
  .v119-comparison-table{min-width:760px;}
  .v119-comparison-table th,.v119-comparison-table td{height:48px;padding:9px 8px;}
  .v119-comparison-table tbody th{font-size:10.5px;}
  .v119-comparison-table thead th{font-size:10px;}
  .v119-comparison-table .v119-limflex-head{font-size:14px;}
  .v119-check{font-size:22px!important;}
  .v119-try-section{padding:18px 0 46px;}
  .v119-try-inner{padding:34px 17px;border-radius:22px;}
  .v119-try-lead{font-size:22px;}
  .v119-try-inner h2{font-size:43px;}
  .v119-action-buttons{grid-template-columns:1fr;margin-top:22px;}
  .v119-action-buttons a{text-align:center;}
  .v119-what-section{padding:58px 0 52px;}
  .v119-what-heading h2{font-size:40px;}
  .v119-what-heading p{font-size:16px;}
  .v119-outcome-grid{margin-top:26px;}
  .v119-outcome-grid article{padding:20px;}
  .v119-outcome-number{margin-bottom:18px;}
  .v119-explore-section{padding:52px 0 62px;}
  .v119-explore-grid{margin-top:24px;}
  .v119-explore-grid a{min-height:124px;}
}


/* v120: final asymmetric landing-page refinements */
.home-v120 .v120-nav{padding-top:11px;padding-bottom:11px;}
.home-v120 .v120-brand{display:block;}
.home-v120 .v120-brand strong{font-size:19px;letter-spacing:.01em;}
.home-v120 .v120-menu{gap:6px;}
.home-v120 .v120-menu a{font-size:13px;padding:7px 10px;color:#566258;}
.home-v120 .v119-statement-secondary{max-width:900px;}
.v120-comparison-title{
  margin:0 0 13px;
  font-size:13px;
  line-height:1.2;
  letter-spacing:.09em;
  text-transform:uppercase;
  text-align:center;
  color:#6c786f;
}
.v120-table-frame{position:relative;}
.v120-table-shell{position:relative;}
.v120-comparison-table{min-width:820px;table-layout:fixed;}
.v120-comparison-table col.v120-capability-col{width:220px;}
.v120-comparison-table col.v120-limflex-col{width:120px;}
.v120-comparison-table col.v120-other-col{width:160px;}
.v120-comparison-table thead th:first-child,
.v120-comparison-table tbody th{
  width:220px;
  min-width:220px;
  max-width:220px;
  left:0;
}
.v120-comparison-table thead th:nth-child(2),
.v120-comparison-table tbody td:nth-child(2){
  position:sticky;
  left:220px;
  z-index:3;
  width:120px;
  min-width:120px;
  max-width:120px;
  box-shadow:2px 0 0 #dfe6dd, 8px 0 14px rgba(35,55,39,.035);
}
.v120-comparison-table thead th:nth-child(2){z-index:6;}
.v120-comparison-table tbody th{z-index:5;}
.v120-comparison-table thead th:first-child{z-index:7;}
.v120-comparison-table tbody th{font-size:12px;}
.v120-comparison-table .v119-limflex-head{background:#eaf3e7;}
.v120-comparison-table .v119-limflex-cell{background:#f3f8f1;}
.v120-scroll-cue{
  display:none;
  position:absolute;
  right:-1px;
  top:0;
  bottom:0;
  width:44px;
  z-index:8;
  align-items:center;
  justify-content:flex-end;
  padding-right:8px;
  pointer-events:none;
  font-size:22px;
  font-weight:800;
  color:#68756b;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.95) 62%);
}
.v120-outcome-grid article{min-height:190px;}
.v120-trust-section{padding:0 0 42px;background:#fff;}
.v120-trust-strip{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:0;
  padding:17px 20px;
  border-top:1px solid #e2e7e0;
  border-bottom:1px solid #e2e7e0;
  color:#5f6c62;
  font-size:13px;
  font-weight:720;
  letter-spacing:.015em;
}
.v120-trust-strip span{display:flex;align-items:center;}
.v120-trust-strip span:not(:last-child)::after{content:"·";margin:0 18px;color:#9ca69e;}
.home-v120 .v119-disclosure-section .note{max-width:900px;text-align:center;}
@media (max-width:780px){
  .home-v120 .v120-nav{flex-direction:row;align-items:center;padding-top:9px;padding-bottom:9px;}
  .home-v120 .v120-menu{justify-content:flex-end;gap:0;}
  .home-v120 .v120-menu a{font-size:11px;padding:6px 7px;}
  .v120-comparison-title{text-align:left;font-size:11px;margin-bottom:10px;}
  .v120-comparison-table{min-width:720px;}
  .v120-comparison-table col.v120-capability-col{width:150px;}
  .v120-comparison-table col.v120-limflex-col{width:92px;}
  .v120-comparison-table col.v120-other-col{width:150px;}
  .v120-comparison-table thead th:first-child,
  .v120-comparison-table tbody th{
    width:150px;
    min-width:150px;
    max-width:150px;
  }
  .v120-comparison-table thead th:nth-child(2),
  .v120-comparison-table tbody td:nth-child(2){
    left:150px;
    width:92px;
    min-width:92px;
    max-width:92px;
  }
  .v120-comparison-table tbody th{font-size:10px;line-height:1.15;}
  .v120-comparison-table .v119-limflex-head{font-size:13px;}
  .v120-scroll-cue{display:flex;}
  .v120-trust-section{padding-bottom:28px;}
  .v120-trust-strip{display:grid;gap:7px;text-align:center;font-size:12px;}
  .v120-trust-strip span{justify-content:center;}
  .v120-trust-strip span:not(:last-child)::after{display:none;}
}


/* v121: Human–AI Collaboration Phase Map */
.v121-phase-hero .big-sub{max-width:900px;}
.v121-phase-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;align-items:start;}
.v121-phase-intro .card{height:100%;}
.v121-phase-principles{display:grid;gap:10px;margin-top:18px;}
.v121-phase-principle{padding:14px 16px;border:1px solid #dfe6dd;border-radius:14px;background:#fbfcfb;}
.v121-phase-principle strong{display:block;margin-bottom:3px;color:#344c3b;font-size:14px;}
.v121-phase-principle span{display:block;color:#6a766d;font-size:13px;line-height:1.45;}
.v121-phase-map-card{overflow:hidden;}
.v121-phase-map-heading{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:18px;}
.v121-phase-map-heading h2{margin-bottom:6px;}
.v121-phase-map-heading p{margin:0;max-width:760px;}
.v121-scroll-note{flex:0 0 auto;font-size:12px;font-weight:760;color:#667269;white-space:nowrap;}
.v121-phase-table-wrap{position:relative;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;border:1px solid #dce3da;border-radius:18px;background:#fff;scrollbar-gutter:stable;}
.v121-phase-table-wrap:focus{outline:3px solid rgba(74,115,80,.22);outline-offset:3px;}
.v121-phase-table{width:100%;min-width:1080px;border-collapse:separate;border-spacing:0;table-layout:fixed;}
.v121-phase-table col.phase{width:84px;}
.v121-phase-table col.name{width:230px;}
.v121-phase-table col.feature{width:390px;}
.v121-phase-table col.next{width:376px;}
.v121-phase-table th,.v121-phase-table td{padding:15px 16px;border-right:1px solid #e4e9e2;border-bottom:1px solid #e4e9e2;text-align:left;vertical-align:top;}
.v121-phase-table thead th{position:sticky;top:0;z-index:4;background:#edf4ea;color:#34473a;font-size:12px;font-weight:820;letter-spacing:.04em;text-transform:uppercase;}
.v121-phase-table tbody th{position:sticky;left:0;z-index:3;background:#f8faf7;color:#31503a;font-size:16px;font-weight:850;box-shadow:1px 0 0 #dfe5dd;}
.v121-phase-table thead th:first-child{position:sticky;left:0;z-index:6;box-shadow:1px 0 0 #dfe5dd;}
.v121-phase-table td:nth-child(2){font-weight:780;color:#263c2d;font-size:15px;}
.v121-phase-table td:nth-child(3),.v121-phase-table td:nth-child(4){font-size:14px;line-height:1.48;color:#58665c;}
.v121-phase-table tr:last-child th,.v121-phase-table tr:last-child td{border-bottom:0;}
.v121-phase-table th:last-child,.v121-phase-table td:last-child{border-right:0;}
.v121-phase-table tbody tr:hover td,.v121-phase-table tbody tr:hover th{background:#f5f9f3;}
.v121-phase-band-start th,.v121-phase-band-start td{border-top:3px solid #cbd9c7;}
.v121-phase-table .v121-limflex-row th,.v121-phase-table .v121-limflex-row td{background:#f0f7ed;}
.v121-phase-table .v121-research-row th,.v121-phase-table .v121-research-row td{background:#faf9f5;}
.v121-phase-note{margin-top:15px;color:#707b72;font-size:12px;line-height:1.5;}
.v121-transition-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px;}
.v121-transition-grid article{padding:20px;border:1px solid #dce4da;border-radius:17px;background:#fbfcfb;}
.v121-transition-grid span{display:block;margin-bottom:9px;color:#7c887e;font-size:11px;font-weight:820;letter-spacing:.08em;text-transform:uppercase;}
.v121-transition-grid h3{margin:0 0 8px;font-size:19px;color:#334a3a;}
.v121-transition-grid p{margin:0;font-size:13px;line-height:1.48;color:#67736a;}
.v121-limflex-position{border-color:#c8d9c4;background:linear-gradient(135deg,#edf5ea 0%,#fbfcfa 100%);}
.v121-limflex-flow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin:22px 0 10px;}
.v121-limflex-flow span{padding:9px 12px;border:1px solid #cddbc9;border-radius:999px;background:#fff;color:#3d5844;font-size:13px;font-weight:760;}
.v121-limflex-flow b{color:#819083;font-size:18px;}
.v121-link-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;border:1px solid #d9e3d6;border-radius:18px;background:linear-gradient(135deg,#f1f6ef 0%,#fff 100%);}
.v121-link-card h3{margin:0 0 6px;font-size:23px;color:#324a39;}
.v121-link-card p{margin:0;color:#667269;}
.v121-link-card .chip{flex:0 0 auto;}
.home-v120 .v119-explore-grid.v121-explore-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
@media (max-width:980px){
  .v121-phase-intro{grid-template-columns:1fr;}
  .v121-transition-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .home-v120 .v119-explore-grid.v121-explore-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:680px){
  .v121-phase-map-heading{display:block;}
  .v121-scroll-note{margin-top:9px;white-space:normal;}
  .v121-phase-table-wrap{margin-left:-18px;margin-right:-18px;border-left:0;border-right:0;border-radius:0;}
  .v121-phase-table{min-width:940px;}
  .v121-phase-table col.phase{width:70px;}
  .v121-phase-table col.name{width:205px;}
  .v121-phase-table col.feature{width:335px;}
  .v121-phase-table col.next{width:330px;}
  .v121-phase-table th,.v121-phase-table td{padding:13px 12px;}
  .v121-phase-table tbody th{font-size:14px;}
  .v121-phase-table td:nth-child(2){font-size:14px;}
  .v121-phase-table td:nth-child(3),.v121-phase-table td:nth-child(4){font-size:13px;}
  .v121-transition-grid{grid-template-columns:1fr;}
  .v121-link-card{display:block;}
  .v121-link-card .chip{display:inline-flex;margin-top:16px;}
  .home-v120 .v119-explore-grid.v121-explore-grid{grid-template-columns:1fr;}
}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}
