/* SATIS Framework v2 — page-scoped high-tech system architecture */
.page-framework.framework-v2{
  --fw-navy:#071a31;
  --fw-ink:#0d3553;
  --fw-blue:#117fc5;
  --fw-cyan:#52c8ea;
  --fw-mint:#39b9aa;
  --fw-line:rgba(78,151,201,.28);
  --fw-soft:#edf6fb;
  background:#f7fbfd;
}
.page-framework.framework-v2 .framework-hero-v2{
  position:relative;
  min-height:820px;
  padding:145px 0 92px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 80% 24%,rgba(65,189,230,.18),transparent 28%),
    radial-gradient(circle at 9% 82%,rgba(69,168,224,.11),transparent 30%),
    linear-gradient(135deg,#fbfdff 0%,#f2f9fd 52%,#eaf5fa 100%);
}
.page-framework.framework-v2 .framework-hero-v2::before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(28,111,164,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(28,111,164,.055) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(90deg,transparent,black 20%,black 88%,transparent),linear-gradient(180deg,black,transparent 92%);
}
.page-framework.framework-v2 .framework-hero-v2::after{
  content:"";position:absolute;right:-160px;top:-235px;width:650px;height:650px;border-radius:50%;border:1px solid rgba(67,164,219,.18);box-shadow:0 0 0 45px rgba(67,164,219,.025),0 0 0 100px rgba(67,164,219,.018);
}
.page-framework.framework-v2 .framework-hero-grid{
  position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.92fr) minmax(560px,1.08fr);gap:72px;align-items:center;
}
.page-framework.framework-v2 .framework-hero-copy{max-width:690px}
.page-framework.framework-v2 .framework-hero-copy .display{font-size:clamp(54px,5.4vw,80px);line-height:1.02;letter-spacing:-.045em;color:#0a2c48}
.page-framework.framework-v2 .framework-hero-copy .display .accent{background:linear-gradient(120deg,#0e72b8,#41c3e6 72%);-webkit-background-clip:text;background-clip:text;color:transparent}
.page-framework.framework-v2 .framework-hero-copy .lead{max-width:665px;color:#4f6e84}
.page-framework.framework-v2 .framework-status-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.page-framework.framework-v2 .framework-status-row span{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid rgba(76,149,199,.30);border-radius:999px;background:rgba(255,255,255,.72);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#315f7d;box-shadow:0 7px 22px rgba(8,65,106,.045)}
.page-framework.framework-v2 .framework-status-row span::before{content:"";width:6px;height:6px;border-radius:50%;background:#39b9aa;box-shadow:0 0 10px rgba(57,185,170,.55)}
.page-framework.framework-v2 .framework-status-row span.future::before{background:#7f9db0;box-shadow:none}

.page-framework.framework-v2 .framework-decision-field{position:relative;height:610px;perspective:1200px}
.page-framework.framework-v2 .framework-decision-field::before{content:"";position:absolute;inset:28px 2px 24px;border:1px solid rgba(76,153,203,.22);border-radius:36px 36px 36px 10px;background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(232,245,251,.48));box-shadow:0 36px 90px rgba(9,67,106,.11),inset 0 0 0 1px rgba(255,255,255,.72);backdrop-filter:blur(15px)}
.page-framework.framework-v2 .framework-decision-field::after{content:"";position:absolute;inset:52px 28px;background:radial-gradient(circle at center,rgba(42,180,224,.14),transparent 44%),linear-gradient(rgba(20,122,181,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(20,122,181,.045) 1px,transparent 1px);background-size:auto,38px 38px,38px 38px;border-radius:26px;mask-image:radial-gradient(circle,black,transparent 78%)}
.page-framework.framework-v2 .framework-core{position:absolute;z-index:4;left:50%;top:50%;width:210px;height:210px;transform:translate(-50%,-50%);display:grid;place-items:center;text-align:center;border-radius:50%;background:radial-gradient(circle at 38% 30%,#164f78,#071b33 68%);box-shadow:0 0 0 1px rgba(75,202,235,.45),0 0 0 14px rgba(255,255,255,.68),0 0 0 15px rgba(58,162,215,.22),0 26px 70px rgba(5,54,89,.28),inset 0 0 42px rgba(65,205,238,.15)}
.page-framework.framework-v2 .framework-core::before,.page-framework.framework-v2 .framework-core::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(74,194,230,.25)}
.page-framework.framework-v2 .framework-core::before{inset:-56px;animation:fwOrbit 12s linear infinite}
.page-framework.framework-v2 .framework-core::after{inset:-99px;border-style:dashed;animation:fwOrbit 18s linear infinite reverse}
@keyframes fwOrbit{to{transform:rotate(360deg)}}
.page-framework.framework-v2 .framework-core img{width:54px;height:54px;margin:auto;border-radius:13px;background:#fff;box-shadow:0 9px 28px rgba(0,0,0,.20)}
.page-framework.framework-v2 .framework-core strong,.page-framework.framework-v2 .framework-core span{display:block;position:relative;z-index:2}
.page-framework.framework-v2 .framework-core strong{margin-top:12px;font-size:18px;letter-spacing:.02em;color:#fff}
.page-framework.framework-v2 .framework-core span{margin-top:4px;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#87d9f0}
.page-framework.framework-v2 .framework-path{position:absolute;z-index:5;width:174px;min-height:118px;padding:16px 16px 14px;border:1px solid rgba(83,158,207,.32);border-radius:17px 17px 17px 5px;background:rgba(255,255,255,.88);box-shadow:0 18px 46px rgba(8,65,104,.09);backdrop-filter:blur(13px)}
.page-framework.framework-v2 .framework-path::before{content:"";position:absolute;width:34px;height:1px;background:linear-gradient(90deg,rgba(44,155,211,.1),rgba(44,155,211,.65))}
.page-framework.framework-v2 .framework-path strong{display:block;font-size:14px;color:#113b59}
.page-framework.framework-v2 .framework-path small{display:block;margin-top:5px;font-size:10px;line-height:1.45;color:#6c8293}
.page-framework.framework-v2 .framework-path .path-state{display:inline-flex;margin-top:10px;padding:5px 7px;border-radius:999px;background:#e5f7f3;color:#147467;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.page-framework.framework-v2 .framework-path.market .path-state{background:#e7f3fb;color:#196d9c}
.page-framework.framework-v2 .framework-path.conditional .path-state{background:#fff4df;color:#9a651c}
.page-framework.framework-v2 .framework-path.future .path-state{background:#edf0f3;color:#6a7b89}
.page-framework.framework-v2 .path-hold{left:32px;top:70px}.page-framework.framework-v2 .path-transfer{right:27px;top:80px}.page-framework.framework-v2 .path-market{left:18px;bottom:76px}.page-framework.framework-v2 .path-payback{right:15px;bottom:80px}.page-framework.framework-v2 .path-future{left:50%;bottom:19px;transform:translateX(-50%);width:205px;min-height:93px}
.page-framework.framework-v2 .path-hold::before,.page-framework.framework-v2 .path-market::before{right:-34px;top:50%}.page-framework.framework-v2 .path-transfer::before,.page-framework.framework-v2 .path-payback::before{left:-34px;top:50%;transform:rotate(180deg)}.page-framework.framework-v2 .path-future::before{left:50%;top:-25px;width:25px;transform:rotate(90deg);transform-origin:left}

.page-framework.framework-v2 .framework-section{position:relative;overflow:hidden}
.page-framework.framework-v2 .framework-section-light{background:#fff}
.page-framework.framework-v2 .framework-section-soft{background:linear-gradient(180deg,#f2f8fb,#eaf4f8)}
.page-framework.framework-v2 .framework-section .section-head{position:relative;z-index:2}
.page-framework.framework-v2 .framework-route-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:42px}
.page-framework.framework-v2 .framework-route-card{position:relative;min-height:264px;padding:65px 22px 23px;border:1px solid var(--fw-line);border-radius:20px 20px 20px 6px;background:#fff;box-shadow:0 20px 55px rgba(7,59,95,.06);overflow:hidden}
.page-framework.framework-v2 .framework-route-card::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:#36b9aa}
.page-framework.framework-v2 .framework-route-card.market::before{background:#1887ca}.page-framework.framework-v2 .framework-route-card.conditional::before{background:#df9a36}.page-framework.framework-v2 .framework-route-card.future::before{background:#8497a5}
.page-framework.framework-v2 .framework-route-index{position:absolute;left:22px;top:18px;font-size:10px;font-weight:850;letter-spacing:.17em;color:#1980b9}
.page-framework.framework-v2 .framework-route-card h3{margin:0 0 12px;font-size:18px;color:#113b58}
.page-framework.framework-v2 .framework-route-card p{margin:0;font-size:12.5px;line-height:1.72;color:#60788c}
.page-framework.framework-v2 .framework-route-card .route-state{display:inline-flex;margin-top:19px;padding:6px 8px;border-radius:999px;background:#e5f7f3;color:#157568;font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.page-framework.framework-v2 .framework-route-card.market .route-state{background:#e7f3fb;color:#196d9c}.page-framework.framework-v2 .framework-route-card.conditional .route-state{background:#fff4df;color:#96621b}.page-framework.framework-v2 .framework-route-card.future .route-state{background:#edf0f3;color:#667987}

.page-framework.framework-v2 .framework-architecture{display:grid;grid-template-columns:minmax(0,.78fr) minmax(550px,1.22fr);gap:70px;align-items:center}
.page-framework.framework-v2 .framework-layer-stack{position:relative;padding:28px 0 28px 54px}
.page-framework.framework-v2 .framework-layer-stack::before{content:"";position:absolute;left:24px;top:47px;bottom:47px;width:2px;background:linear-gradient(#32b6aa 0 38%,#36a9dc 38% 61%,#8ba6b7 61%);box-shadow:0 0 16px rgba(47,167,210,.18)}
.page-framework.framework-v2 .framework-layer{position:relative;margin:0 0 12px;padding:19px 21px 18px 56px;border:1px solid rgba(81,153,201,.28);border-radius:17px 17px 17px 5px;background:rgba(255,255,255,.80);box-shadow:0 15px 42px rgba(7,58,94,.055)}
.page-framework.framework-v2 .framework-layer:last-child{margin-bottom:0}
.page-framework.framework-v2 .framework-layer::before{content:"";position:absolute;left:-42px;top:50%;width:22px;height:22px;transform:translateY(-50%) rotate(45deg);background:#fff;border:2px solid #54c6b8;box-shadow:0 0 0 6px rgba(255,255,255,.82),0 8px 18px rgba(7,73,108,.14)}
.page-framework.framework-v2 .framework-layer.development::before{border-color:#45aeda}.page-framework.framework-v2 .framework-layer.future::before{border-color:#92a9b7}
.page-framework.framework-v2 .framework-layer .layer-no{position:absolute;left:19px;top:20px;font-size:9px;font-weight:850;letter-spacing:.13em;color:#1785bd}
.page-framework.framework-v2 .framework-layer strong{display:block;font-size:16px;color:#103a57}
.page-framework.framework-v2 .framework-layer p{margin:5px 0 0;font-size:11.5px;line-height:1.6;color:#657c8f}
.page-framework.framework-v2 .framework-layer .layer-state{position:absolute;right:17px;top:17px;padding:5px 7px;border-radius:999px;background:#e3f7f2;font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:#167566}
.page-framework.framework-v2 .framework-layer.development .layer-state{background:#e7f3fb;color:#216f9b}.page-framework.framework-v2 .framework-layer.future .layer-state{background:#edf0f3;color:#687b89}

.page-framework.framework-v2 .framework-protection-section{position:relative;background:#071a31;color:#eaf7ff;overflow:hidden}
.page-framework.framework-v2 .framework-protection-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 26%,rgba(51,189,225,.16),transparent 29%),linear-gradient(rgba(92,190,226,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(92,190,226,.045) 1px,transparent 1px);background-size:auto,58px 58px,58px 58px;mask-image:linear-gradient(90deg,black,transparent 92%)}
.page-framework.framework-v2 .framework-protection-section .h2{color:#f2faff}.page-framework.framework-v2 .framework-protection-section .section-copy{color:#bfd5e4}.page-framework.framework-v2 .framework-protection-section .label{color:#70d4f0}
.page-framework.framework-v2 .framework-protection-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:40px}
.page-framework.framework-v2 .framework-protection-card{min-height:300px;padding:30px;border:1px solid rgba(104,199,233,.20);border-radius:22px 22px 22px 7px;background:rgba(255,255,255,.055);backdrop-filter:blur(14px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
.page-framework.framework-v2 .framework-protection-card .protect-no{font-size:9px;letter-spacing:.16em;color:#65d0ed}
.page-framework.framework-v2 .framework-protection-card h3{margin:34px 0 13px;font-size:22px;color:#f1f9fd}
.page-framework.framework-v2 .framework-protection-card p{margin:0;color:#bed2e1;line-height:1.72}
.page-framework.framework-v2 .framework-protection-card ul{margin:20px 0 0;padding:0;list-style:none}
.page-framework.framework-v2 .framework-protection-card li{position:relative;padding:9px 0 9px 17px;border-top:1px solid rgba(117,203,233,.11);font-size:11px;color:#a9c5d7}
.page-framework.framework-v2 .framework-protection-card li::before{content:"";position:absolute;left:0;top:16px;width:5px;height:5px;border-radius:50%;background:#5fcce8}

.page-framework.framework-v2 .framework-market-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:39px}
.page-framework.framework-v2 .framework-market-card{position:relative;min-height:265px;padding:64px 25px 25px;border:1px solid var(--fw-line);border-radius:21px 21px 21px 6px;background:#fff;box-shadow:0 18px 50px rgba(7,59,95,.055)}
.page-framework.framework-v2 .framework-market-card span{position:absolute;left:25px;top:20px;font-size:9px;letter-spacing:.16em;color:#1683bb}
.page-framework.framework-v2 .framework-market-card h3{margin:0 0 12px;font-size:20px;color:#103a57}.page-framework.framework-v2 .framework-market-card p{margin:0;color:#60788d;line-height:1.72}
.page-framework.framework-v2 .framework-distinction{display:flex;align-items:center;gap:17px;margin-top:26px;padding:22px 25px;border:1px solid rgba(76,149,197,.27);border-radius:18px 18px 18px 5px;background:linear-gradient(100deg,#edf8fb,#fff);color:#315f7b}
.page-framework.framework-v2 .framework-distinction strong{color:#0e496e}
.page-framework.framework-v2 .framework-distinction i{width:46px;height:1px;background:linear-gradient(90deg,#20a6cf,#63d1e8);flex:none}

.page-framework.framework-v2 .framework-gate-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(550px,1.1fr);gap:70px;align-items:center}
.page-framework.framework-v2 .framework-gate{position:relative;display:grid;grid-template-columns:1fr 84px 1fr;align-items:center;gap:10px;padding:30px;border:1px solid rgba(78,151,199,.27);border-radius:27px 27px 27px 8px;background:rgba(255,255,255,.72);box-shadow:0 27px 70px rgba(8,61,98,.09)}
.page-framework.framework-v2 .gate-node{min-height:205px;padding:28px 21px;display:flex;flex-direction:column;justify-content:center;text-align:center;border:1px solid rgba(78,151,199,.25);border-radius:19px 19px 19px 6px;background:#fff}
.page-framework.framework-v2 .gate-node strong{font-size:19px;color:#113d5b}.page-framework.framework-v2 .gate-node p{margin:8px 0 0;font-size:11px;line-height:1.55;color:#687f92}
.page-framework.framework-v2 .gate-node.future{background:linear-gradient(145deg,#f2f7fa,#e9f2f7);border-style:dashed}
.page-framework.framework-v2 .gate-control{position:relative;width:74px;height:156px;margin:auto;display:grid;place-items:center;border:1px solid rgba(70,153,204,.30);border-radius:18px;background:#071f39;color:#7ed8ee;box-shadow:0 15px 38px rgba(6,49,80,.20)}
.page-framework.framework-v2 .gate-control::before{content:"";position:absolute;left:-12px;right:-12px;top:50%;height:1px;background:linear-gradient(90deg,transparent,#58c3e2,transparent)}
.page-framework.framework-v2 .gate-control span{position:relative;z-index:2;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.page-framework.framework-v2 .gate-conditions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px;grid-column:1/-1}
.page-framework.framework-v2 .gate-conditions span{padding:9px 7px;border-radius:10px;background:#edf5f8;text-align:center;font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#446a82}
.page-framework.framework-v2 .framework-payback-list{display:grid;gap:10px;margin-top:26px}
.page-framework.framework-v2 .framework-payback-item{display:grid;grid-template-columns:43px 1fr;column-gap:14px;padding:17px 18px;border:1px solid rgba(80,151,199,.24);border-radius:15px 15px 15px 5px;background:rgba(255,255,255,.78)}
.page-framework.framework-v2 .framework-payback-item span{grid-row:1/3;font-size:10px;font-weight:850;color:#1683bd}.page-framework.framework-v2 .framework-payback-item strong{font-size:14px;color:#123c59}.page-framework.framework-v2 .framework-payback-item p{margin:4px 0 0;font-size:11.5px;color:#667e91}

.page-framework.framework-v2 .framework-evolution-section{background:#fff}
.page-framework.framework-v2 .framework-evolution-gate{display:grid;grid-template-columns:1fr 150px 1fr;align-items:center;gap:18px;margin-top:36px}
.page-framework.framework-v2 .evolution-unit{min-height:235px;padding:34px;display:flex;flex-direction:column;justify-content:center;text-align:center;border:1px solid rgba(76,151,199,.28);border-radius:24px 24px 24px 7px;background:linear-gradient(145deg,#fff,#eef7fb);box-shadow:0 22px 60px rgba(7,59,95,.07)}
.page-framework.framework-v2 .evolution-unit.current{background:linear-gradient(145deg,#0a3154,#0c6eab);border-color:transparent;color:#fff}
.page-framework.framework-v2 .evolution-unit .unit-state{font-size:9px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;color:#77d5ee}.page-framework.framework-v2 .evolution-unit.future .unit-state{color:#728a9b}
.page-framework.framework-v2 .evolution-unit strong{margin:12px 0 8px;font-size:28px}.page-framework.framework-v2 .evolution-unit.future strong{color:#143f5c}.page-framework.framework-v2 .evolution-unit p{margin:0;font-size:11.5px;line-height:1.62;color:#c2dbe9}.page-framework.framework-v2 .evolution-unit.future p{color:#667e91}
.page-framework.framework-v2 .approval-gate{position:relative;height:160px;display:grid;place-items:center;text-align:center}
.page-framework.framework-v2 .approval-gate::before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:linear-gradient(90deg,#2bb5d6,#7a9eb2);transform:translateY(-50%)}
.page-framework.framework-v2 .approval-gate::after{content:"";position:absolute;width:58px;height:58px;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%);background:#fff;box-shadow:0 0 0 1px rgba(62,154,203,.38),0 0 0 9px rgba(244,249,252,.92),0 13px 35px rgba(8,67,106,.16)}
.page-framework.framework-v2 .approval-gate span{position:relative;z-index:2;max-width:105px;margin-top:112px;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#507288}

.page-framework.framework-v2 .framework-final-cta{position:relative;padding:92px 0;background:linear-gradient(135deg,#eaf5fa,#f9fcfe 58%,#e8f4f9);overflow:hidden}
.page-framework.framework-v2 .framework-final-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 84% 40%,rgba(48,183,220,.16),transparent 25%),linear-gradient(90deg,transparent,rgba(34,134,187,.045),transparent)}
.page-framework.framework-v2 .framework-final-box{position:relative;z-index:2;padding:58px 60px;border:1px solid rgba(72,149,200,.28);border-radius:29px 29px 29px 9px;background:rgba(255,255,255,.75);box-shadow:0 28px 75px rgba(7,59,95,.08);backdrop-filter:blur(14px)}
.page-framework.framework-v2 .framework-final-box .h2{max-width:900px}.page-framework.framework-v2 .framework-final-box p{max-width:790px;color:#587287;line-height:1.72}

@media(max-width:1200px){
  .page-framework.framework-v2 .framework-hero-grid{grid-template-columns:1fr 510px;gap:38px}
  .page-framework.framework-v2 .framework-decision-field{height:580px}
  .page-framework.framework-v2 .framework-route-grid{grid-template-columns:repeat(3,1fr)}
  .page-framework.framework-v2 .framework-architecture,.page-framework.framework-v2 .framework-gate-layout{grid-template-columns:1fr 1fr;gap:45px}
}
@media(max-width:960px){
  .page-framework.framework-v2 .framework-hero-v2{padding-top:125px;min-height:auto}
  .page-framework.framework-v2 .framework-hero-grid,.page-framework.framework-v2 .framework-architecture,.page-framework.framework-v2 .framework-gate-layout{grid-template-columns:1fr}
  .page-framework.framework-v2 .framework-decision-field{width:min(650px,100%);margin:0 auto}
  .page-framework.framework-v2 .framework-protection-grid,.page-framework.framework-v2 .framework-market-grid{grid-template-columns:1fr}
  .page-framework.framework-v2 .framework-protection-card,.page-framework.framework-v2 .framework-market-card{min-height:auto}
  .page-framework.framework-v2 .framework-evolution-gate{grid-template-columns:1fr 100px 1fr}
}
@media(max-width:700px){
  .page-framework.framework-v2 .framework-hero-copy .display{font-size:44px}
  .page-framework.framework-v2 .framework-decision-field{height:auto;padding:25px 0}
  .page-framework.framework-v2 .framework-decision-field::before,.page-framework.framework-v2 .framework-decision-field::after{display:none}
  .page-framework.framework-v2 .framework-core{position:relative;left:auto;top:auto;transform:none;margin:0 auto 33px;width:175px;height:175px}
  .page-framework.framework-v2 .framework-core::before{inset:-30px}.page-framework.framework-v2 .framework-core::after{display:none}
  .page-framework.framework-v2 .framework-path{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:100%!important;min-height:auto;margin:10px 0;padding:16px 18px}
  .page-framework.framework-v2 .framework-path::before{display:none}
  .page-framework.framework-v2 .framework-route-grid{grid-template-columns:1fr}
  .page-framework.framework-v2 .framework-route-card{min-height:auto}
  .page-framework.framework-v2 .framework-layer-stack{padding-left:37px}
  .page-framework.framework-v2 .framework-layer-stack::before{left:14px}
  .page-framework.framework-v2 .framework-layer{padding:51px 17px 17px 17px}
  .page-framework.framework-v2 .framework-layer::before{left:-32px;width:18px;height:18px}.page-framework.framework-v2 .framework-layer .layer-state{left:16px;right:auto;top:15px}.page-framework.framework-v2 .framework-layer .layer-no{right:16px;left:auto;top:18px}
  .page-framework.framework-v2 .framework-gate{grid-template-columns:1fr;padding:20px}
  .page-framework.framework-v2 .gate-control{width:100%;height:70px}.page-framework.framework-v2 .gate-control span{writing-mode:horizontal-tb;transform:none}.page-framework.framework-v2 .gate-control::before{left:50%;top:-12px;bottom:-12px;right:auto;width:1px;height:auto;background:linear-gradient(transparent,#58c3e2,transparent)}
  .page-framework.framework-v2 .gate-conditions{grid-template-columns:1fr 1fr}
  .page-framework.framework-v2 .framework-evolution-gate{grid-template-columns:1fr}
  .page-framework.framework-v2 .approval-gate{height:95px}.page-framework.framework-v2 .approval-gate::before{left:50%;right:auto;top:0;bottom:0;width:2px;height:auto;transform:translateX(-50%);background:linear-gradient(#2bb5d6,#7a9eb2)}.page-framework.framework-v2 .approval-gate span{margin-top:82px}
  .page-framework.framework-v2 .framework-final-box{padding:42px 24px}
  .page-framework.framework-v2 .framework-distinction{display:grid;grid-template-columns:1fr;gap:8px;padding:20px;text-align:center}
  .page-framework.framework-v2 .framework-distinction i{width:1px;height:18px;margin:auto;background:linear-gradient(#20a6cf,#63d1e8)}
  .page-framework.framework-v2 .framework-status-row span,
  .page-framework.framework-v2 .framework-path .path-state,
  .page-framework.framework-v2 .framework-route-card .route-state,
  .page-framework.framework-v2 .framework-layer .layer-state,
  .page-framework.framework-v2 .gate-control span,
  .page-framework.framework-v2 .gate-conditions span,
  .page-framework.framework-v2 .evolution-unit .unit-state,
  .page-framework.framework-v2 .approval-gate span{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.page-framework.framework-v2 .framework-core::before,.page-framework.framework-v2 .framework-core::after{animation:none}}
