@import url('shell.css');
:root{--navy:#08195b;--navy2:#102a78;--blue:#1f5bd8;--blue2:#4A7EF5;--ink:#172033;--muted:#64748b;--line:#dfe6ef;--soft:#f5f7fb;--panel:#fff;--green:#25966d;--greenSoft:#eaf7f1;--amber:#d99b2d;--amberSoft:#fff5dd;--red:#c65d56;--redSoft:#fff0ee;--gray:#7a8394;--graySoft:#eff1f5;--teal:#1f8b8b;--tealSoft:#eaf7f7;--shadow:0 14px 45px rgba(19,37,76,.10);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.5}button{font:inherit}a{color:inherit}.progress{position:fixed;left:0;top:0;height:4px;background:var(--blue2);width:0;z-index:1000}.wrap{max-width:1240px;margin:auto;padding:0 34px}.chapters{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:30;display:flex;flex-direction:column;gap:9px}.chapters a{width:9px;height:9px;border-radius:50%;background:#cbd5e1;border:2px solid #fff;box-shadow:0 0 0 1px #cbd5e1;text-decoration:none}.chapters a.active{background:var(--blue2);box-shadow:0 0 0 2px rgba(74,126,245,.20)}
.hero{min-height:calc(100vh - var(--brand-h) - var(--tabs-h));display:flex;align-items:center;padding:66px 0 62px;background:radial-gradient(circle at 83% 23%,rgba(74,126,245,.14),transparent 33%),radial-gradient(circle at 84% 75%,rgba(31,139,139,.08),transparent 24%),linear-gradient(180deg,#fff,#f8faff);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-7vw;bottom:-8vw;width:51vw;height:29vw;background:radial-gradient(circle,rgba(74,126,245,.22) 0 2px,transparent 2.8px);background-size:18px 18px;transform:rotate(-8deg);opacity:.38;clip-path:ellipse(50% 38% at 50% 50%);pointer-events:none}.heroGrid{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center;position:relative;z-index:1}.eyebrow{display:inline-flex;gap:8px;align-items:center;color:var(--blue);font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.eyebrow:before{content:"";width:28px;height:2px;background:var(--blue2)}h1{font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.035em;margin:18px 0 24px;color:var(--navy);max-width:820px}.lead{font-size:20px;color:#43516a;max-width:760px;margin:0}.heroNote{margin-top:24px;font-size:13px;color:var(--muted);max-width:760px}.heroSignal{background:linear-gradient(150deg,var(--navy),#173a8d);color:#fff;border-radius:26px;padding:30px 30px 26px;box-shadow:0 24px 55px rgba(8,25,91,.22);position:relative;overflow:hidden}.heroSignal:after{content:"";position:absolute;right:-50px;bottom:-70px;width:220px;height:220px;border:1px solid rgba(255,255,255,.17);border-radius:50%;box-shadow:0 0 0 34px rgba(255,255,255,.035),0 0 0 68px rgba(255,255,255,.025)}.heroSignalLabel{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.12);font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;position:relative;z-index:1}.heroSignal strong{display:block;font-size:32px;line-height:1.08;letter-spacing:-.025em;margin:18px 0 12px;position:relative;z-index:1}.heroSignal p{margin:0;color:#dce6ff;font-size:14px;line-height:1.55;position:relative;z-index:1}.heroSignalFoot{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px;position:relative;z-index:1}.heroSignalFoot span{display:inline-flex;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:7px 10px;font-size:9px;font-weight:800;color:#f2f6ff}
.section{padding:88px 0}.section.alt{background:var(--soft)}.chapter{scroll-margin-top:calc(var(--brand-h) + var(--tabs-h) + 18px)}.sectionHeader{display:grid;grid-template-columns:.84fr 1.16fr;gap:44px;margin-bottom:34px;align-items:start}.sectionHeader h2{font-size:clamp(30px,3.4vw,48px);line-height:1.08;letter-spacing:-.025em;margin:8px 0;color:var(--navy)}.sectionHeader p{font-size:17px;color:#526079;margin:6px 0 0}.compactHeader{margin-bottom:24px}.num{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--blue)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panelKicker{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef4ff;color:var(--blue);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.footer{padding:28px 0;color:#64748b;font-size:12px;border-top:1px solid var(--line)}

/* 01 message key */
.messageSection{padding-top:72px}.messageStage{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;padding:20px;background:linear-gradient(145deg,#fff,#f7faff)}.messageCore{grid-row:span 2;border-radius:20px;padding:30px;background:linear-gradient(155deg,#08195b,#143681);color:#fff;min-height:440px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.messageCore:after{content:"";position:absolute;right:-65px;top:-45px;width:240px;height:240px;border-radius:50%;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0 35px rgba(255,255,255,.025),0 0 0 70px rgba(255,255,255,.02)}.coreEyebrow{display:inline-flex;align-self:flex-start;border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.12);font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;position:relative;z-index:1}.messageCore h3{font-size:clamp(30px,3.2vw,46px);line-height:1.05;letter-spacing:-.03em;margin:18px 0;color:#fff;position:relative;z-index:1}.messageCore p{max-width:610px;margin:0;color:#dbe5ff;font-size:14px;line-height:1.55;position:relative;z-index:1}.messageBridge{display:grid;grid-template-columns:auto 1fr auto 1fr auto;gap:8px;align-items:center;margin-top:28px;position:relative;z-index:1}.messageBridge span,.messageBridge b{font-size:9px;text-transform:uppercase;letter-spacing:.07em}.messageBridge span{color:#b9c8ef}.messageBridge b{color:#fff}.messageBridge i{height:1px;background:rgba(255,255,255,.28)}.fiveFronts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.frontBtn{border:1px solid #dce4ef;background:#fff;border-radius:16px;padding:14px;text-align:left;cursor:pointer;transition:.16s ease;min-height:102px}.frontBtn:nth-child(5){grid-column:1/-1}.frontBtn:hover,.frontBtn.active{border-color:#87a7e5;box-shadow:0 10px 25px rgba(19,37,76,.08);transform:translateY(-2px)}.frontBtn span{display:flex;align-items:center;gap:7px;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#78869a}.frontBtn span i{width:8px;height:8px;border-radius:50%;background:var(--blue2)}.frontBtn b{display:block;color:var(--navy);font-size:12px;line-height:1.3;margin-top:7px}.frontDetail{border-radius:18px;border:1px solid #dce4ef;background:#f9fbff;padding:17px 18px;min-height:154px}.frontDetail span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--blue);font-weight:900}.frontDetail h4{font-size:20px;line-height:1.1;color:var(--navy);margin:7px 0}.frontDetail p{font-size:11px;color:#5c6b82;margin:0;line-height:1.5}.frontDetail small{display:block;margin-top:9px;color:#7d899b;font-size:9px}.startDecisions{display:grid;grid-template-columns:220px repeat(3,1fr);gap:10px;align-items:stretch;margin-top:14px}.startLabel{display:flex;align-items:center;color:var(--navy);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.startDecisions>div{border:1px solid #e0e6ef;border-radius:14px;padding:12px;background:#fff;display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center}.startDecisions b{width:26px;height:26px;border-radius:8px;background:#eef4ff;color:var(--blue);display:grid;place-items:center;font-size:9px}.startDecisions span{font-size:10px;color:#4f5f76;line-height:1.35}

/* 02 procedures */
.procedureWorkspace{padding:20px;background:linear-gradient(180deg,#fff,#fafcff)}.procedureTopbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px;border-bottom:1px solid #e6ebf3}.viewSwitch{display:flex;gap:4px;background:#f0f3f8;padding:4px;border-radius:999px;border:1px solid #dbe3ee}.viewSwitch button{border:0;background:transparent;border-radius:999px;padding:9px 12px;font-size:10px;font-weight:900;color:#6c7a90;cursor:pointer}.viewSwitch button.active{background:var(--navy);color:#fff;box-shadow:0 5px 14px rgba(8,25,91,.14)}.procedureHint{font-size:10px;color:#76849a}.macroFrame{padding-top:22px}.macroFlow{display:grid;grid-template-columns:1fr 46px 1fr 46px 1fr 46px 1fr 46px 1fr;align-items:center;gap:0}.macroNode{border:1px solid #dce4ef;background:#fff;border-radius:18px;min-height:188px;padding:17px;cursor:pointer;text-align:left;transition:.16s ease;position:relative}.macroNode:hover,.macroNode.active{transform:translateY(-3px);box-shadow:0 12px 26px rgba(19,37,76,.09);border-color:#95afe2}.macroNode.identified{background:#fff7ed;border-color:#efd7b3}.macroNode.pseudo{background:#eef4ff;border-color:#c9d9f6}.macroNode.analytic{background:#f2f5fb}.macroNode.release{background:#fff8e7;border-color:#ead59a}.macroNode.diffusion{background:#edf9f7;border-color:#c5e5df}.macroNode .stageNo{display:inline-flex;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#68778e}.macroNode b{display:block;color:var(--navy);font-size:16px;line-height:1.15;margin-top:10px}.macroNode p{font-size:10px;color:#5e6c80;line-height:1.45;margin:7px 0 0}.macroArrow{display:flex;align-items:center;justify-content:center}.macroArrow i{width:30px;height:2px;background:#9aabc8;position:relative}.macroArrow i:after{content:"";position:absolute;right:-1px;top:50%;width:7px;height:7px;border-top:2px solid #7188b0;border-right:2px solid #7188b0;transform:translateY(-50%) rotate(45deg)}.equivalenceCard{width:210px;margin:0 0 12px 20%;padding:11px 14px;background:var(--navy);color:#fff;border-radius:12px;box-shadow:0 10px 22px rgba(8,25,91,.15)}.equivalenceCard b{display:block;font-size:10px}.equivalenceCard span{display:block;font-size:8px;color:#c7d5f5;margin-top:3px}.reidRail{margin-top:14px;border:1px dashed #d44c99;border-radius:14px;padding:12px 14px;background:#fff9fd;display:grid;grid-template-columns:190px 1fr;gap:14px;align-items:center}.reidRail b{color:#a92d74;font-size:11px}.reidRail span{font-size:9px;color:#69778c}.transverseRail{margin-top:10px;border-radius:12px;background:#f0f2f6;padding:11px 14px;color:#55647a;font-size:9px}.macroInspector{margin-top:16px;display:grid;grid-template-columns:260px 1fr;gap:16px;padding:16px;border:1px solid #e1e7f0;border-radius:16px;background:#fff}.macroInspector h3{margin:5px 0 0;color:var(--navy);font-size:21px}.macroInspector p{margin:0;color:#5c6b80;font-size:11px;line-height:1.5}.zoomFrame{padding-top:20px}.zoomHeader{display:flex;justify-content:space-between;gap:14px;align-items:end;margin-bottom:14px}.zoomHeader h3{margin:5px 0 0;color:var(--navy);font-size:25px}.zoomHeader p{max-width:520px;margin:0;color:#627086;font-size:11px}.zoomColumns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.zoomColHead{border-radius:12px;padding:10px 12px;color:#fff;font-size:11px;font-weight:900}.zoomColHead.current{background:var(--navy)}.zoomColHead.future{background:var(--blue)}.zoomRows{display:grid;gap:9px;margin-top:9px}.zoomRow{display:grid;grid-template-columns:1fr 34px 1fr;gap:8px;align-items:stretch}.zoomCell{border:1px solid #dfe5ef;border-radius:14px;padding:12px 13px;background:#fff;min-height:126px}.zoomCell.future{border-color:#9ab8f0;background:#f4f7ff}.zoomCell b{display:block;color:var(--navy);font-size:12px}.zoomCell p{margin:6px 0 0;color:#58677d;font-size:10px;line-height:1.4}.zoomCell .gap{display:block;margin-top:7px;color:#b54f49;font-size:9px}.zoomCell .req{display:block;margin-top:7px;color:#4366ad;font-size:8.5px;font-weight:800}.zoomArrow{display:grid;place-items:center}.zoomArrow i{width:22px;height:2px;background:#8f9db4;position:relative}.zoomArrow i:after{content:"";position:absolute;right:-1px;top:50%;width:6px;height:6px;border-right:2px solid #6f7d95;border-top:2px solid #6f7d95;transform:translateY(-50%) rotate(45deg)}.zoomExtra{margin-top:10px;border:1px dashed #d44c99;border-radius:12px;background:#fff8fd;padding:10px 12px;color:#6e5870;font-size:9.5px}.zoomExtra b{color:#aa2b73}

/* 03 traffic light */
.trafficWorkspace{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;align-items:start}.trafficSummary{padding:20px;position:sticky;top:calc(var(--brand-h) + var(--tabs-h) + 18px)}.trafficSignal{display:grid;grid-template-columns:1fr;gap:10px}.signalBtn{border:1px solid #e0e6ef;background:#fff;border-radius:16px;padding:12px;display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;cursor:pointer;text-align:left;transition:.16s ease}.signalBtn:hover,.signalBtn.active{transform:translateX(3px);box-shadow:0 10px 22px rgba(19,37,76,.07)}.signalLamp{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:20px;font-weight:900;box-shadow:inset 0 -8px 14px rgba(0,0,0,.08)}.signalBtn.green .signalLamp{background:var(--green)}.signalBtn.amber .signalLamp{background:var(--amber)}.signalBtn.red .signalLamp{background:var(--red)}.signalBtn.gray .signalLamp{background:var(--gray)}.signalBtn b{display:block;color:var(--navy);font-size:12px}.signalBtn small{display:block;color:#78869a;font-size:8.5px;margin-top:3px}.signalBtn i{width:8px;height:8px;border-radius:50%;background:#c9d2df}.signalBtn.active i{background:var(--blue2)}.trafficMessage{margin-top:15px;border-radius:16px;padding:15px;background:#f7f9fd;border:1px solid #e0e7f1}.trafficMessage h3{font-size:21px;line-height:1.15;color:var(--navy);margin:8px 0}.trafficMessage p{margin:0;color:#65738a;font-size:10.5px}.trafficDetail{padding:20px}.trafficDetailHead{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-bottom:14px;border-bottom:1px solid #e7ebf2}.trafficDetailHead h3{margin:5px 0 0;color:var(--navy);font-size:23px}.trafficDetailHead button{border:1px solid #dce4ef;background:#fff;border-radius:999px;padding:8px 11px;color:#617087;font-size:9px;font-weight:900;cursor:pointer}.requirementGrid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.reqCard{border:1px solid #e1e6ef;border-left:5px solid #c7d1df;border-radius:13px;background:#fff;padding:11px 12px;min-height:92px}.reqCard.green{border-left-color:var(--green)}.reqCard.amber{border-left-color:var(--amber)}.reqCard.red{border-left-color:var(--red)}.reqCard.gray{border-left-color:var(--gray)}.reqCard b{display:block;color:#2c3b55;font-size:10.5px;line-height:1.3}.reqCard span{display:block;color:#7a879b;font-size:8px;margin-top:7px;line-height:1.35}

/* 04 opportunities */
.opportunityBoard{padding:20px;background:linear-gradient(180deg,#fff,#fafcff)}.priorityLegend{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.priorityLegend span{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.priorityLegend .crit{background:var(--redSoft);color:#a44d47}.priorityLegend .high{background:var(--amberSoft);color:#85631f}.priorityLegend .med{background:#eaf2fb;color:#3c6994}.opportunityMap{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.oppNode{border:1px solid #dfe5ee;background:#fff;border-radius:16px;padding:13px 12px;text-align:left;cursor:pointer;transition:.16s ease;min-height:150px;position:relative;overflow:hidden}.oppNode:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#9eb0c8}.oppNode.critical:before{background:var(--red)}.oppNode.high:before{background:var(--amber)}.oppNode.medium:before{background:#5d8fbd}.oppNode:hover,.oppNode.active{transform:translateY(-3px);box-shadow:0 12px 25px rgba(19,37,76,.09);border-color:#9db4df}.oppNode span{display:block;color:#78869a;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.oppNode b{display:block;color:var(--navy);font-size:11px;line-height:1.3;margin-top:9px}.oppNode small{display:block;color:#8692a4;font-size:8px;margin-top:10px}.opportunityDrawer{margin-top:14px;border-radius:18px;border:1px solid #dfe5ef;background:#f8faff;padding:17px;display:grid;grid-template-columns:220px minmax(0,1fr) 280px;gap:18px;align-items:start}.oppLead span{display:inline-flex;padding:4px 7px;border-radius:999px;background:#eef4ff;color:var(--blue);font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.oppLead h3{font-size:20px;line-height:1.12;color:var(--navy);margin:8px 0 0}.oppAction b,.oppReference b{display:block;color:#5c6b82;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.oppAction p,.oppReference p{margin:6px 0 0;color:#4c5c73;font-size:10px;line-height:1.45}.oppReference{border-left:1px solid #dce3ed;padding-left:16px}

/* 05 timeline */
.timelineBoard{padding:22px;background:linear-gradient(180deg,#fff,#fafcff)}.timelineAxis{display:grid;grid-template-columns:3fr 4fr 3fr;gap:14px;position:relative}.phaseBlock{border:1px solid #dfe6ef;border-radius:18px;background:#fff;padding:15px;position:relative}.phaseBlock:before{content:"";position:absolute;left:15px;right:15px;top:66px;height:3px;background:#d8e1ef;border-radius:999px}.phaseBlock.immediate{border-top:5px solid var(--navy)}.phaseBlock.short{border-top:5px solid var(--blue)}.phaseBlock.consolidation{border-top:5px solid var(--teal)}.phaseHead{display:flex;justify-content:space-between;gap:10px;align-items:end;margin-bottom:18px}.phaseHead b{color:var(--navy);font-size:14px}.phaseHead span{color:#758399;font-size:9px;font-weight:800}.phaseActions{display:grid;grid-template-columns:repeat(var(--count),1fr);gap:7px;position:relative;z-index:2}.timelineAction{border:0;background:transparent;padding:0;cursor:pointer;text-align:center}.actionDot{width:34px;height:34px;border-radius:50%;margin:0 auto 10px;background:#fff;border:3px solid #9eb2d6;color:var(--navy);display:grid;place-items:center;font-size:9px;font-weight:900;box-shadow:0 0 0 5px #fff;transition:.16s ease}.phaseBlock.immediate .timelineAction.active .actionDot,.phaseBlock.immediate .timelineAction:hover .actionDot{background:var(--navy);border-color:var(--navy);color:#fff}.phaseBlock.short .timelineAction.active .actionDot,.phaseBlock.short .timelineAction:hover .actionDot{background:var(--blue);border-color:var(--blue);color:#fff}.phaseBlock.consolidation .timelineAction.active .actionDot,.phaseBlock.consolidation .timelineAction:hover .actionDot{background:var(--teal);border-color:var(--teal);color:#fff}.timelineAction b{display:block;color:#44536a;font-size:8.5px;line-height:1.25}.timelineDetail{margin-top:16px;border:1px solid #dfe6ef;border-radius:16px;background:#f8faff;padding:16px;display:grid;grid-template-columns:68px 1.1fr .9fr .8fr;gap:16px;align-items:start}.timelineDetailNo{width:54px;height:54px;border-radius:16px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:900}.timelineDetail h3{margin:2px 0 0;color:var(--navy);font-size:19px;line-height:1.15}.timelineDetail p{margin:6px 0 0;color:#637188;font-size:10px;line-height:1.45}.detailBox{border-left:1px solid #dde4ef;padding-left:15px}.detailBox b{display:block;color:#647287;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.detailBox span{display:block;color:#33435c;font-size:9.5px;line-height:1.4;margin-top:5px}

/* 06 scope */
.scopeGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.scopeCard{padding:22px}.scopeCard h3{color:var(--navy);font-size:24px;line-height:1.12;margin:10px 0 12px}.scopeCard ul{margin:0;padding-left:18px;color:#59687e;font-size:12px}.scopeCard li{margin:7px 0}.closingBand{margin-top:22px;border-radius:22px;background:linear-gradient(135deg,var(--navy),#173985);color:#fff;padding:30px;display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:end}.closingBand h3{margin:0;font-size:28px;line-height:1.12;letter-spacing:-.02em}.closingBand p{margin:0;color:#dbe5ff;font-size:12px;line-height:1.55}

@media(max-width:1160px){.heroGrid{grid-template-columns:1fr}.messageStage{grid-template-columns:1fr}.messageCore{grid-row:auto;min-height:360px}.startDecisions{grid-template-columns:1fr 1fr}.startLabel{grid-column:1/-1}.trafficWorkspace{grid-template-columns:1fr}.trafficSummary{position:static;display:grid;grid-template-columns:1fr 1fr;gap:14px}.trafficMessage{margin-top:0}.opportunityMap{grid-template-columns:repeat(3,1fr)}.opportunityDrawer{grid-template-columns:220px 1fr}.oppReference{grid-column:2}.timelineAxis{grid-template-columns:1fr}.phaseBlock:before{top:66px}.timelineDetail{grid-template-columns:68px 1fr 1fr}.timelineDetail .detailBox:last-child{grid-column:2/-1}.macroFlow{grid-template-columns:1fr 34px 1fr 34px 1fr}.macroNode.release,.macroNode.diffusion{margin-top:12px}.macroNode.release{grid-column:1}.macroNode.diffusion{grid-column:3}.macroFlow>.macroArrow:nth-of-type(4){display:none}.zoomColumns{grid-template-columns:1fr}}
@media(max-width:860px){.wrap{padding:0 20px}.sectionHeader{grid-template-columns:1fr;gap:12px}.messageStage{padding:14px}.fiveFronts{grid-template-columns:1fr}.frontBtn:nth-child(5){grid-column:auto}.startDecisions{grid-template-columns:1fr}.procedureTopbar{align-items:flex-start;flex-direction:column}.viewSwitch{width:100%;overflow:auto}.macroFlow{grid-template-columns:1fr}.macroArrow{height:38px}.macroArrow i{width:2px;height:24px}.macroArrow i:after{right:auto;left:50%;top:auto;bottom:-1px;transform:translateX(-50%) rotate(135deg)}.macroNode.release,.macroNode.diffusion{grid-column:auto;margin-top:0}.macroFlow>.macroArrow:nth-of-type(4){display:flex}.equivalenceCard{width:auto;margin:0 0 10px}.reidRail{grid-template-columns:1fr}.macroInspector{grid-template-columns:1fr}.zoomRow{grid-template-columns:1fr}.zoomArrow{height:28px}.zoomArrow i{width:2px;height:18px}.zoomArrow i:after{right:auto;left:50%;top:auto;bottom:-1px;transform:translateX(-50%) rotate(135deg)}.trafficSummary{grid-template-columns:1fr}.requirementGrid{grid-template-columns:1fr}.opportunityMap{grid-template-columns:1fr 1fr}.opportunityDrawer{grid-template-columns:1fr}.oppReference{grid-column:auto;border-left:0;border-top:1px solid #dce3ed;padding-left:0;padding-top:12px}.timelineDetail{grid-template-columns:58px 1fr}.timelineDetail .detailBox{grid-column:2}.scopeGrid,.closingBand{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{padding:0 16px}.hero{padding:50px 0}.lead{font-size:17px}.heroSignal{padding:22px}.heroSignal strong{font-size:27px}.section{padding:62px 0}.messageCore{padding:22px;min-height:330px}.messageBridge{grid-template-columns:1fr;gap:5px}.messageBridge i{display:none}.startDecisions>div{grid-template-columns:28px 1fr}.opportunityMap{grid-template-columns:1fr}.timelineAxis{gap:10px}.phaseActions{gap:4px}.timelineAction b{font-size:8px}.actionDot{width:31px;height:31px}.timelineDetail{padding:13px;grid-template-columns:48px 1fr}.timelineDetailNo{width:44px;height:44px;border-radius:13px;font-size:17px}.scopeCard h3{font-size:21px}.closingBand h3{font-size:23px}}

/* V35 · PDP refinement */
/* Hero KPIs aligned with the other storytelling perspectives */
.kpiGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow);min-height:150px}
.kpi strong{display:block;font-size:44px;color:var(--navy);letter-spacing:-.04em;line-height:1}
.kpi strong.accent{color:var(--blue)}
.kpi span{display:block;font-size:13px;color:var(--muted);margin-top:10px;line-height:1.4}

/* 01 · executive finding */
.messageSection{padding-top:78px}.keyHeader{margin-bottom:26px}
.keyExperience{display:grid;grid-template-columns:minmax(360px,.92fr) 92px minmax(0,1.08fr);grid-template-rows:auto auto;gap:18px;padding:22px;background:linear-gradient(145deg,#fff,#f7faff);overflow:hidden}
.keyFoundation{grid-row:1/3;border-radius:22px;background:linear-gradient(160deg,#08195b 0%,#13327b 58%,#1d438f 100%);padding:30px;color:#fff;position:relative;overflow:hidden;display:grid;align-content:start;gap:0;min-height:470px}
.keyFoundation:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:46px 46px;opacity:.18;mask-image:linear-gradient(140deg,transparent 0 12%,#000 30% 100%)}
.keyFoundation:after{content:"";position:absolute;right:-70px;top:-55px;width:250px;height:250px;border-radius:50%;border:1px solid rgba(255,255,255,.16);box-shadow:0 0 0 36px rgba(255,255,255,.028),0 0 0 72px rgba(255,255,255,.018)}
.keyFoundation > *{position:relative;z-index:1}
.keyBadge{display:inline-flex;align-self:flex-start;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.12);font-size:9px;letter-spacing:.09em;text-transform:uppercase;font-weight:900}
.keyNumber{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:14px;margin:22px 0 10px}.keyNumber strong{font-size:clamp(62px,5.6vw,84px);line-height:.84;letter-spacing:-.06em}.keyNumber span{font-size:10.5px;line-height:1.35;color:#cbd8f6;font-weight:800;text-transform:uppercase;letter-spacing:.06em;max-width:140px;padding-bottom:7px}
.keyFoundation h3{font-size:clamp(28px,2.55vw,35px);line-height:1.06;letter-spacing:-.03em;margin:14px 0 16px;max-width:460px}.keyFoundation p{font-size:12.5px;line-height:1.58;color:#dbe5ff;margin:18px 0 0;max-width:460px}
.stateRail{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr);gap:10px;align-items:stretch;margin-top:6px}.stateStep{position:relative;display:flex;flex-direction:column;gap:7px;padding:16px 15px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.08));box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 12px 24px rgba(4,15,52,.18);backdrop-filter:blur(2px);min-width:0;min-height:168px}.stateStep:before{content:'';position:absolute;left:15px;top:14px;width:12px;height:12px;border-radius:50%;background:#f0f4ff;box-shadow:0 0 0 6px rgba(255,255,255,.08)}.stateStep small{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#b9c8ef;font-weight:900;padding-left:24px}.stateStep strong{font-size:clamp(20px,1.8vw,25px);line-height:1.05;letter-spacing:-.03em;color:#fff}.stateStep span{font-size:10px;line-height:1.52;color:#dbe5ff;max-width:none;padding-left:0}.stateStep.identified{background:linear-gradient(180deg,rgba(255,214,186,.19),rgba(255,255,255,.08));border-color:rgba(255,214,186,.46)}.stateStep.identified:before{background:#f5a363;box-shadow:0 0 0 6px rgba(245,163,99,.18)}.stateStep.pseudonymized{background:linear-gradient(180deg,rgba(112,161,255,.2),rgba(255,255,255,.08));border-color:rgba(140,179,255,.46)}.stateStep.pseudonymized:before{background:#72a1ff;box-shadow:0 0 0 6px rgba(114,161,255,.18)}.stateStep.anonymized{background:linear-gradient(180deg,rgba(92,218,201,.18),rgba(255,255,255,.08));border-color:rgba(123,221,206,.42)}.stateStep.anonymized:before{background:#54cbb0;box-shadow:0 0 0 6px rgba(84,203,176,.18)}.stateConnector{position:relative;display:block;align-self:center;height:2px;background:linear-gradient(90deg,rgba(255,255,255,.35),rgba(161,186,239,.82));border-radius:999px;margin:0 2px}.stateConnector:after{content:'';position:absolute;top:50%;right:0;transform:translateY(-50%) rotate(45deg);width:7px;height:7px;border-top:2px solid rgba(197,213,245,.95);border-right:2px solid rgba(197,213,245,.95)}
.foundationFoot{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.foundationFoot>div{padding:12px 13px;border-radius:16px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05));box-shadow:inset 0 1px 0 rgba(255,255,255,.06);min-width:0}.foundationFoot small{display:block;font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#b8c7eb;font-weight:900}.foundationFoot b{display:block;margin-top:7px;font-size:11px;line-height:1.45;color:#fff;font-weight:700}
.keyShift{grid-row:1/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;color:#73829a}.keyShift span,.keyShift b{font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.keyShift b{color:var(--blue);max-width:95px}.keyShift i{width:2px;height:132px;background:linear-gradient(180deg,#d5deeb,#7fa0e2);position:relative}.keyShift i:after{content:"";position:absolute;bottom:-1px;left:50%;width:8px;height:8px;border-right:2px solid #6489d7;border-bottom:2px solid #6489d7;transform:translateX(-50%) rotate(45deg)}
.controlArena{position:relative;min-height:340px;border-radius:20px;background:radial-gradient(circle at 50% 49%,#eef4ff 0 26%,rgba(238,244,255,.44) 27% 42%,transparent 43%),linear-gradient(180deg,#fbfcff,#f7faff);border:1px solid #e1e7f1;overflow:hidden}
.controlArena:before{content:"";position:absolute;inset:28px;border:1px dashed #cbd8ee;border-radius:50%}
.controlArena:after{content:"";position:absolute;inset:14px;border-radius:18px;background:linear-gradient(90deg,rgba(31,91,216,.03) 1px,transparent 1px),linear-gradient(rgba(31,91,216,.03) 1px,transparent 1px);background-size:30px 30px;opacity:.7}
.arenaLabel{position:absolute;left:18px;top:14px;display:inline-flex;padding:6px 10px;border-radius:999px;background:#eef4ff;color:var(--blue);font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;z-index:2}
.controlCenter{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:164px;height:164px;border-radius:50%;background:linear-gradient(145deg,#fff,#eef4ff);border:1px solid #c6d7f4;box-shadow:0 14px 34px rgba(31,91,216,.13);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:2;padding:15px}.controlCenter small{font-size:8px;color:#6f7f96;text-transform:uppercase;letter-spacing:.09em;font-weight:900}.controlCenter strong{font-size:19px;line-height:1.05;color:var(--navy);margin:6px 0}.controlCenter span{font-size:8px;color:#708098}
.controlArena .fiveFronts{position:absolute;inset:0;display:block}.controlArena .frontBtn{position:absolute;width:160px;min-height:74px;border:1px solid #dce4ef;background:rgba(255,255,255,.98);border-radius:14px;padding:11px 12px;text-align:left;cursor:pointer;transition:.16s ease;box-shadow:0 7px 18px rgba(19,37,76,.06)}.controlArena .frontBtn:hover,.controlArena .frontBtn.active{border-color:#7ea0e5;box-shadow:0 10px 24px rgba(19,37,76,.11);z-index:4}.controlArena .frontBtn span{display:flex;align-items:center;gap:6px;color:#77869b;font-size:7.25px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.controlArena .frontBtn span i{width:7px;height:7px;border-radius:50%;background:var(--blue2)}.controlArena .frontBtn b{display:block;color:var(--navy);font-size:10.8px;line-height:1.28;margin-top:5px}.controlArena .frontBtn:nth-child(1){left:50%;top:12px;transform:translateX(-50%)}.controlArena .frontBtn:nth-child(2){right:10px;top:86px}.controlArena .frontBtn:nth-child(3){right:26px;bottom:14px}.controlArena .frontBtn:nth-child(4){left:26px;bottom:14px}.controlArena .frontBtn:nth-child(5){left:10px;top:86px}.controlArena .frontBtn:nth-child(1):hover,.controlArena .frontBtn:nth-child(1).active{transform:translateX(-50%) translateY(-2px)}
.keyExperience>.frontDetail{grid-column:3;border-radius:16px;border:1px solid #dce4ef;background:#fff;padding:15px 17px;min-height:120px;display:grid;grid-template-columns:190px 1fr;column-gap:18px;align-items:center}.keyExperience>.frontDetail span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--blue);font-weight:900}.keyExperience>.frontDetail h4{font-size:20px;line-height:1.08;color:var(--navy);margin:6px 0}.keyExperience>.frontDetail p{font-size:10.5px;color:#5c6b82;margin:0;line-height:1.5}.keyExperience>.frontDetail small{display:block;margin-top:7px;color:#66758b;font-size:9px}.startDecisions{grid-template-columns:220px repeat(3,1fr);margin-top:14px}.startDecisions>div{border-color:#dfe6ef;box-shadow:0 5px 14px rgba(19,37,76,.04)}.startDecisions span strong{color:var(--navy)}

/* 02 · macro procedure model. Layout mirrors figure 1 of the report. */
.procedureWorkspace{padding:20px;background:linear-gradient(180deg,#fff,#fafcff)}
.modelTag{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 10px}.modelTag span{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef4ff;color:var(--blue);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.modelTag small{font-size:9px;color:#77869a}
.macroDiagram{position:relative;display:grid;grid-template-columns:1fr 42px 1fr 42px 1fr 42px 1fr 42px 1fr;grid-template-rows:82px 176px 96px 52px;align-items:center;gap:10px 0;padding:4px 2px 0;min-height:440px}
.macroLinks{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:visible}.macroLinks path{fill:none;stroke:#7e8fab;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.macroLinks path.reidLink{stroke:#c72d86;stroke-width:1.45}.macroLinks path.eqLink{stroke:#3d5ba3;stroke-width:1.35}
.macroNode,.equivalenceNode,.reidNode{position:relative;z-index:2;font:inherit;cursor:pointer;transition:.16s ease}.macroNode{border:1.5px solid #dbe3ee;background:#fff;border-radius:14px;min-height:148px;padding:15px 13px;text-align:center}.macroNode:hover,.macroNode.active,.equivalenceNode:hover,.equivalenceNode.active,.reidNode:hover,.reidNode.active{transform:translateY(-2px);box-shadow:0 10px 24px rgba(19,37,76,.10)}.macroNode .stageNo{display:inline-flex;font-size:7.2px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#69788f}.macroNode b{display:block;color:var(--navy);font-size:14.5px;line-height:1.1;margin-top:7px}.macroNode p{font-size:9.4px;color:#596981;line-height:1.42;margin:7px auto 0;max-width:150px}.macroNode .zoomCue{display:inline-flex;margin-top:8px;padding:3px 6px;border-radius:999px;background:rgba(31,91,216,.08);color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.macroNode.identified{grid-column:1;grid-row:2;background:#fff5f3;border-color:#f2aaa4}.macroNode.pseudo{grid-column:3;grid-row:2;background:#eef4ff;border-color:#7da4f2}.macroNode.analytic{grid-column:5;grid-row:2;background:#f2f5fb;border-color:#92ace3}.macroNode.release{grid-column:7;grid-row:2;background:#fff7dc;border-color:#e7c34a}.macroNode.diffusion{grid-column:9;grid-row:2;background:#ecf8fb;border-color:#77c2d7}
.equivalenceNode{grid-column:3;grid-row:1;align-self:end;justify-self:center;width:182px;border:0;border-radius:10px;background:var(--navy);color:#fff;padding:10px 12px;text-align:center;box-shadow:0 8px 18px rgba(8,25,91,.15)}.equivalenceNode b{display:block;font-size:9.5px;line-height:1.18}.equivalenceNode span{display:block;font-size:7.3px;color:#f1c63b;margin-top:3px}
.reidNode{grid-column:1/6;grid-row:3;align-self:start;border:1.5px dashed #c72d86;border-radius:12px;background:#fff9fd;min-height:76px;padding:12px 16px;text-align:center;color:#a62872}.reidNode b{display:block;font-size:10.5px}.reidNode span{display:block;color:#675b6b;font-size:8px;line-height:1.45;margin-top:6px}
.transverseRail{grid-column:1/10;grid-row:4;margin:0;border-radius:11px;background:#f0f2f6;padding:9px 12px;color:#55647a;font-size:8px;position:relative;z-index:2}.transverseRail b{color:var(--navy)}
.macroInspector{margin-top:14px;display:grid;grid-template-columns:230px 1fr auto;gap:15px;align-items:center;padding:14px 15px;border:1px solid #e1e7f0;border-radius:15px;background:#fff}.macroInspector h3{margin:5px 0 0;color:var(--navy);font-size:18px}.macroInspector p{margin:0;color:#5c6b80;font-size:10px;line-height:1.45}.macroZoomLink{border:1px solid #b8caeb;background:#eef4ff;color:var(--blue);border-radius:999px;padding:8px 10px;font-size:8px;font-weight:900;cursor:pointer;white-space:nowrap}.macroCaption{margin-top:9px;color:#7d899b;font-size:8.5px;font-style:italic}

@media(max-width:1240px){
  .keyExperience{grid-template-columns:minmax(320px,.96fr) 72px minmax(0,1.04fr)}.controlArena .frontBtn{width:150px}.controlArena .frontBtn b{font-size:9.9px}.keyExperience>.frontDetail{grid-column:3;grid-template-columns:1fr}.foundationFoot{grid-template-columns:1fr}.macroDiagram{grid-template-columns:1fr 28px 1fr 28px 1fr;grid-template-rows:82px 170px 170px 96px 52px}.macroNode.identified{grid-column:1;grid-row:2}.macroNode.pseudo{grid-column:3;grid-row:2}.macroNode.analytic{grid-column:5;grid-row:2}.macroNode.release{grid-column:1;grid-row:3}.macroNode.diffusion{grid-column:3;grid-row:3}.equivalenceNode{grid-column:3;grid-row:1}.reidNode{grid-column:1/6;grid-row:4}.transverseRail{grid-column:1/6;grid-row:5}.macroInspector{grid-template-columns:200px 1fr auto}
}
@media(max-width:1100px){
  .kpiGrid{grid-template-columns:1fr 1fr}.kpi{min-height:124px;padding:18px}.kpi strong{font-size:36px}.kpi span{font-size:11px}
  .keyExperience{grid-template-columns:1fr;grid-template-rows:auto;padding:16px}.keyFoundation{grid-row:auto;min-height:0;padding:26px}.keyShift{grid-row:auto;flex-direction:row;padding:6px 0}.keyShift i{width:72px;height:2px}.keyShift i:after{bottom:auto;right:-1px;left:auto;top:50%;transform:translateY(-50%) rotate(-45deg)}.controlArena{min-height:510px}.controlArena:before,.controlArena:after{display:none}.controlArena .fiveFronts{position:static;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:210px 10px 10px}.controlArena .frontBtn,.controlArena .frontBtn:nth-child(n){position:static;width:auto;min-height:72px;transform:none}.arenaLabel{left:50%;top:14px;transform:translateX(-50%)}.controlCenter{top:84px;transform:translateX(-50%)}.keyExperience>.frontDetail{grid-column:auto;grid-template-columns:1fr}.startDecisions{grid-template-columns:1fr}.startLabel{grid-column:auto}
  .stateRail{grid-template-columns:1fr;gap:8px}.stateConnector{display:none}.stateStep{padding:14px 15px;min-height:0}.stateStep strong{font-size:24px}.stateStep span{max-width:none}
  .macroDiagram{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding-top:14px;min-height:0}.macroLinks{display:none}.equivalenceNode{order:2;width:100%;align-self:stretch}.macroNode.identified{order:1}.macroNode.pseudo{order:3}.macroNode.analytic{order:4}.reidNode{order:5}.macroNode.release{order:6}.macroNode.diffusion{order:7}.transverseRail{order:8}.macroNode{min-height:112px}.macroInspector{grid-template-columns:1fr}.macroZoomLink{justify-self:start}.modelTag{align-items:flex-start;flex-direction:column}
}
@media(max-width:680px){.kpiGrid{grid-template-columns:1fr}.kpi{padding:15px;min-height:112px}.kpi strong{font-size:32px}.kpi span{font-size:10px}.controlArena{min-height:590px}.controlArena .fiveFronts{grid-template-columns:1fr;padding-top:200px}.keyFoundation h3{font-size:27px}.keyNumber{grid-template-columns:1fr}.keyNumber span{max-width:none;padding-bottom:0}.stateRail{grid-template-columns:1fr;gap:8px}.stateConnector{display:none}.stateStep strong{font-size:23px}.stateStep span{max-width:none}.foundationFoot{grid-template-columns:1fr}}
.macroLinks{z-index:1}

/* v38 · PDP hallazgo ejecutivo refinements */
.keyExperience{
  grid-template-columns:minmax(430px,.95fr) minmax(0,1.05fr);
  grid-template-areas:
    "foundation shift"
    "foundation control"
    "foundation detail";
  grid-template-rows:auto auto auto;
  column-gap:22px;
  row-gap:16px;
  align-items:start;
}
.keyFoundation{grid-area:foundation;padding:34px 32px 28px;min-height:0}
.keyFoundation h3{text-wrap:balance;max-width:510px;margin:14px 0 18px;font-size:clamp(30px,2.55vw,38px)}
.keyFoundation p{max-width:none;font-size:13px}
.keyNumber{margin:22px 0 12px;max-width:330px}
.keyNumber span{max-width:150px}
.stateRail{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;margin-top:10px}
.stateConnector{display:none}
.stateStep{gap:8px;padding:16px 15px 15px;min-height:178px;justify-content:flex-start}
.stateStep strong{font-size:clamp(18px,1.45vw,22px);line-height:1.04;overflow-wrap:anywhere;hyphens:auto;max-width:150px}
.stateStep span{font-size:10.5px;line-height:1.5}
.foundationFoot{margin-top:20px}
.foundationFoot b{font-size:11.2px}
.keyShift{grid-area:shift;grid-row:auto;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:4px 2px 0;color:#6f7f99}
.keyShift span,.keyShift b{font-size:9px;letter-spacing:.11em}
.keyShift b{max-width:none}
.keyShift i{width:92px;height:2px}
.keyShift i:after{top:50%;left:auto;right:-1px;bottom:auto;transform:translateY(-50%) rotate(-45deg)}
.controlArena{
  grid-area:control;
  min-height:430px;
  display:grid;
  grid-template-columns:minmax(150px,1fr) minmax(176px,212px) minmax(150px,1fr);
  grid-template-rows:auto 1fr 1fr;
  gap:14px 16px;
  align-items:center;
  padding:58px 18px 18px;
  background:
    radial-gradient(circle at 50% 50%,rgba(238,244,255,.98) 0 17%,rgba(238,244,255,.86) 18% 34%,rgba(238,244,255,.42) 35% 48%,transparent 49%),
    linear-gradient(180deg,#fbfcff,#f7faff);
}
.controlArena:before{inset:68px 54px 48px;border-radius:999px}
.controlArena:after{inset:18px}
.arenaLabel{left:50%;top:14px;transform:translateX(-50%);text-align:center;white-space:nowrap;max-width:calc(100% - 40px)}
.controlCenter{
  position:relative;left:auto;top:auto;transform:none;
  grid-column:2;grid-row:2 / span 2;justify-self:center;align-self:center;
  width:180px;height:180px;z-index:3;
}
.controlCenter strong{font-size:21px}
.controlArena .fiveFronts{position:static;display:contents}
.controlArena .frontBtn,.controlArena .frontBtn:nth-child(n){
  position:relative;left:auto;right:auto;top:auto;bottom:auto;transform:none;
  width:auto;min-height:92px;padding:14px 14px 13px;border-radius:16px;z-index:2;
}
.controlArena .frontBtn span{font-size:7.5px}
.controlArena .frontBtn b{font-size:11.3px;line-height:1.33}
.controlArena .frontBtn:nth-child(1){grid-column:2;grid-row:1;justify-self:center;max-width:214px;width:100%}
.controlArena .frontBtn:nth-child(2){grid-column:3;grid-row:1;align-self:end}
.controlArena .frontBtn:nth-child(3){grid-column:3;grid-row:3;align-self:start}
.controlArena .frontBtn:nth-child(4){grid-column:1;grid-row:3;align-self:start}
.controlArena .frontBtn:nth-child(5){grid-column:1;grid-row:1;align-self:end}
.keyExperience>.frontDetail{
  grid-area:detail;grid-column:auto;
  grid-template-columns:minmax(170px,205px) 1fr;
  min-height:128px;padding:16px 18px;
}
.keyExperience>.frontDetail h4{font-size:21px}
.keyExperience>.frontDetail p{font-size:11px;line-height:1.55}
.keyExperience>.frontDetail small{font-size:9.5px;line-height:1.5}

@media(max-width:1340px){
  .keyExperience{grid-template-columns:minmax(390px,.96fr) minmax(0,1.04fr)}
  .controlArena{grid-template-columns:minmax(142px,1fr) 190px minmax(142px,1fr);padding-inline:14px}
  .controlCenter{width:170px;height:170px}
}

@media(max-width:1220px){
  .keyExperience{
    grid-template-columns:1fr;
    grid-template-areas:
      "foundation"
      "shift"
      "control"
      "detail";
    padding:18px;
  }
  .keyFoundation{padding:30px 28px 26px}
  .keyShift{justify-content:center;padding-top:2px}
  .controlArena{min-height:0;grid-template-columns:1fr 184px 1fr;grid-template-rows:auto 1fr 1fr;padding:58px 16px 16px}
  .keyExperience>.frontDetail{grid-template-columns:1fr}
  .foundationFoot{grid-template-columns:1fr}
}

@media(max-width:940px){
  .controlArena{
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto auto auto auto;
    min-height:0;
    padding:58px 14px 14px;
  }
  .controlArena:before{inset:92px 36px 64px}
  .controlCenter{grid-column:1 / -1;grid-row:1;width:170px;height:170px;margin:0 auto 6px}
  .controlArena .frontBtn:nth-child(1){grid-column:1 / -1;grid-row:2;justify-self:center;max-width:280px}
  .controlArena .frontBtn:nth-child(2){grid-column:2;grid-row:3}
  .controlArena .frontBtn:nth-child(3){grid-column:2;grid-row:4}
  .controlArena .frontBtn:nth-child(4){grid-column:1;grid-row:4}
  .controlArena .frontBtn:nth-child(5){grid-column:1;grid-row:3}
}

@media(max-width:720px){
  .keyFoundation{padding:24px 22px 22px}
  .keyNumber strong{font-size:58px}
  .keyFoundation h3{font-size:28px}
  .stateRail{grid-template-columns:1fr}
  .stateStep{min-height:0}
  .controlArena{grid-template-columns:1fr;grid-template-rows:auto repeat(6,auto);padding:58px 12px 12px}
  .controlArena:before,.controlArena:after{display:none}
  .controlCenter{grid-column:1;grid-row:1;width:160px;height:160px}
  .controlArena .frontBtn,.controlArena .frontBtn:nth-child(n){grid-column:1;justify-self:stretch;max-width:none;align-self:stretch}
  .controlArena .frontBtn:nth-child(1){grid-row:2}
  .controlArena .frontBtn:nth-child(2){grid-row:3}
  .controlArena .frontBtn:nth-child(3){grid-row:4}
  .controlArena .frontBtn:nth-child(4){grid-row:5}
  .controlArena .frontBtn:nth-child(5){grid-row:6}
  .arenaLabel{white-space:normal;line-height:1.35}
}

/* v39 · hallazgo ejecutivo · control arena stabilisation */
#mensaje .keyExperience{
  grid-template-columns:minmax(420px,.98fr) minmax(0,1.02fr);
  grid-template-areas:
    "foundation shift"
    "foundation control"
    "foundation detail";
  grid-template-rows:auto auto auto;
  column-gap:24px;
  row-gap:16px;
  align-items:start;
}
#mensaje .keyFoundation{grid-area:foundation}
#mensaje .keyShift{grid-area:shift;justify-content:center;padding-top:0}
#mensaje .controlArena{
  grid-area:control;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-rows:52px 112px 188px 112px;
  gap:18px 16px;
  min-height:500px;
  padding:18px 22px 22px;
  border-radius:24px;
  align-items:stretch;
  background:
    radial-gradient(circle at 50% 48%,rgba(238,244,255,.98) 0 17%,rgba(238,244,255,.85) 18% 35%,rgba(238,244,255,.42) 36% 49%,transparent 50%),
    linear-gradient(180deg,#fbfcff,#f7faff);
}
#mensaje .controlArena:before{inset:70px 46px 52px;border-radius:999px}
#mensaje .controlArena:after{inset:20px;border-radius:22px}
#mensaje .arenaLabel{
  position:relative;
  left:auto;top:auto;transform:none;
  grid-column:3 / span 8;
  grid-row:1;
  justify-self:center;
  align-self:center;
  max-width:100%;
  white-space:normal;
  text-align:center;
  line-height:1.3;
}
#mensaje .controlCenter{
  position:relative;
  left:auto;top:auto;transform:none;
  grid-column:5 / span 4;
  grid-row:3;
  justify-self:center;
  align-self:center;
  width:224px;
  height:224px;
  z-index:2;
}
#mensaje .controlCenter strong{font-size:24px;line-height:1.02}
#mensaje .controlCenter span{font-size:10.5px}
#mensaje .controlArena .fiveFronts{position:static;display:contents}
#mensaje .controlArena .frontBtn,
#mensaje .controlArena .frontBtn:nth-child(n){
  position:relative;
  left:auto;right:auto;top:auto;bottom:auto;
  transform:none;
  width:auto;
  max-width:none;
  min-width:0;
  min-height:112px;
  padding:16px 16px 14px;
  border-radius:18px;
  box-shadow:0 7px 18px rgba(19,37,76,.06);
  z-index:3;
  overflow:hidden;
}
#mensaje .controlArena .frontBtn span{font-size:8px;letter-spacing:.095em}
#mensaje .controlArena .frontBtn b{
  font-size:11.6px;
  line-height:1.32;
  overflow-wrap:anywhere;
  text-wrap:balance;
}
#mensaje .controlArena .frontBtn:nth-child(1){grid-column:4 / span 6;grid-row:2}
#mensaje .controlArena .frontBtn:nth-child(2){grid-column:10 / span 3;grid-row:2}
#mensaje .controlArena .frontBtn:nth-child(3){grid-column:10 / span 3;grid-row:4}
#mensaje .controlArena .frontBtn:nth-child(4){grid-column:1 / span 3;grid-row:4}
#mensaje .controlArena .frontBtn:nth-child(5){grid-column:1 / span 3;grid-row:2}
#mensaje .keyExperience>.frontDetail{
  grid-area:detail;
  grid-template-columns:minmax(180px,220px) 1fr;
  min-height:132px;
}

@media (max-width:1300px){
  #mensaje .keyExperience{grid-template-columns:minmax(390px,.97fr) minmax(0,1.03fr)}
  #mensaje .controlArena{grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:52px 112px 184px 112px;padding-inline:18px}
  #mensaje .controlCenter{grid-column:4 / span 4;width:208px;height:208px}
  #mensaje .controlArena .frontBtn:nth-child(1){grid-column:3 / span 6}
  #mensaje .controlArena .frontBtn:nth-child(2){grid-column:8 / span 3}
  #mensaje .controlArena .frontBtn:nth-child(3){grid-column:8 / span 3}
  #mensaje .controlArena .frontBtn:nth-child(4){grid-column:1 / span 3}
  #mensaje .controlArena .frontBtn:nth-child(5){grid-column:1 / span 3}
}

@media (max-width:1180px){
  #mensaje .keyExperience{
    grid-template-columns:1fr;
    grid-template-areas:
      "foundation"
      "shift"
      "control"
      "detail";
  }
  #mensaje .keyShift{justify-content:center}
  #mensaje .controlArena{
    grid-template-columns:repeat(6,minmax(0,1fr));
    grid-template-rows:50px 186px 112px 112px;
    min-height:0;
    padding:18px 16px 18px;
  }
  #mensaje .controlArena:before{inset:82px 40px 58px}
  #mensaje .controlCenter{grid-column:3 / span 2;grid-row:2;width:186px;height:186px}
  #mensaje .controlArena .frontBtn{min-height:104px}
  #mensaje .controlArena .frontBtn:nth-child(1){grid-column:2 / span 4;grid-row:3}
  #mensaje .controlArena .frontBtn:nth-child(2){grid-column:5 / span 2;grid-row:2;align-self:start}
  #mensaje .controlArena .frontBtn:nth-child(3){grid-column:4 / span 3;grid-row:4}
  #mensaje .controlArena .frontBtn:nth-child(4){grid-column:1 / span 3;grid-row:4}
  #mensaje .controlArena .frontBtn:nth-child(5){grid-column:1 / span 2;grid-row:2;align-self:start}
  #mensaje .keyExperience>.frontDetail{grid-template-columns:1fr}
}

@media (max-width:860px){
  #mensaje .controlArena{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:44px 170px auto auto auto;
    gap:14px;
    padding:16px 14px 14px;
  }
  #mensaje .controlArena:before{inset:74px 22px 132px}
  #mensaje .controlCenter{grid-column:1 / -1;grid-row:2;width:170px;height:170px}
  #mensaje .controlCenter strong{font-size:22px}
  #mensaje .controlArena .frontBtn,
  #mensaje .controlArena .frontBtn:nth-child(n){min-height:96px}
  #mensaje .controlArena .frontBtn:nth-child(1){grid-column:1 / -1;grid-row:3}
  #mensaje .controlArena .frontBtn:nth-child(2){grid-column:2;grid-row:4}
  #mensaje .controlArena .frontBtn:nth-child(3){grid-column:2;grid-row:5}
  #mensaje .controlArena .frontBtn:nth-child(4){grid-column:1;grid-row:5}
  #mensaje .controlArena .frontBtn:nth-child(5){grid-column:1;grid-row:4}
}

@media (max-width:640px){
  #mensaje .controlArena{
    grid-template-columns:1fr;
    grid-template-rows:44px 156px repeat(5,auto);
    padding:14px 12px 12px;
  }
  #mensaje .controlArena:before,
  #mensaje .controlArena:after{display:none}
  #mensaje .arenaLabel{grid-column:1;grid-row:1}
  #mensaje .controlCenter{grid-column:1;grid-row:2;width:156px;height:156px}
  #mensaje .controlCenter strong{font-size:20px}
  #mensaje .controlArena .frontBtn,
  #mensaje .controlArena .frontBtn:nth-child(n){grid-column:1;min-height:88px}
  #mensaje .controlArena .frontBtn:nth-child(1){grid-row:3}
  #mensaje .controlArena .frontBtn:nth-child(2){grid-row:4}
  #mensaje .controlArena .frontBtn:nth-child(3){grid-row:5}
  #mensaje .controlArena .frontBtn:nth-child(4){grid-row:6}
  #mensaje .controlArena .frontBtn:nth-child(5){grid-row:7}
}
