/* The 1% Doctor. Part 1 is the frames' own stylesheet (02 HTML templates, identical in every frame), copied
   as it is minus the developer spec panel and the fixed frame width. Part 2 is what the frames do not draw:
   the Services dropdown, the phone menu, video and library states, focus rings. */

/* ---------- 1. From the frames ---------- */
body{margin:0;background:#0A1422}
*{box-sizing:border-box}
a{color:#1C6AA0;text-decoration:none}
a:hover{color:#0F4C77}
.disp{font-family:'Bebas Neue','Arial Narrow',Impact,sans-serif;font-weight:400;letter-spacing:.01em}
.nav-links{display:flex}
.menu-btn{display:none}
.stair{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:end}
.bar1{height:32px}.bar2{height:64px}.bar3{height:96px}.bar4{height:128px}
.eco-grid{display:grid;grid-template-columns:680px minmax(0,1fr);gap:56px;align-items:center}
.orbit{display:block}
.orbit-list{display:none}
.steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.m-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr)) 72px;row-gap:26px}.m-g1{grid-column:1/4;grid-row:1;margin-right:28px}.m-g2{grid-column:4/7;grid-row:1;margin-right:28px}.m-s1{grid-column:1;grid-row:2}.m-s2{grid-column:2;grid-row:2}.m-s3{grid-column:3;grid-row:2}.m-s4{grid-column:4;grid-row:2}.m-s5{grid-column:5;grid-row:2}.m-s6{grid-column:6;grid-row:2}.m-rep{grid-column:7;grid-row:2}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}

@media (max-width:1180px){.eco-grid{grid-template-columns:minmax(0,1fr)}.orbit{margin:0 auto}.steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:32px}}
@media (max-width:900px){.m-grid{grid-template-columns:minmax(0,1fr);row-gap:18px}.m-g1,.m-g2,.m-s1,.m-s2,.m-s3,.m-s4,.m-s5,.m-s6,.m-rep{grid-column:auto;grid-row:auto;margin-right:0}.m-g2{margin-top:14px}.m-step{display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px}.m-line{display:none !important}.m-txt .disp{margin-top:8px !important}.m-rep{flex-direction:row !important;gap:16px}.m-rep br{display:none}}
@media (max-width:940px){.nav-links{display:none}.menu-btn{display:flex}.stair{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:40px}}
@media (max-width:1180px){.hero-img{position:relative !important;width:100% !important;height:460px !important;object-position:74% 30% !important}.hero-scrim{display:none}.hero-inner{min-height:0 !important;padding-top:36px !important}}
@media (max-width:760px){
.hero-img{height:400px !important}
.hero-inner{padding-top:28px !important}
.orbit{display:none}.orbit-list{display:block}
.steps{grid-template-columns:minmax(0,1fr);row-gap:0}
.split{grid-template-columns:minmax(0,1fr)}
.split-r{border-left:0 !important;padding-left:0 !important;margin-top:36px}
.case-track{grid-template-columns:minmax(0,1fr)}
.stair{grid-template-columns:minmax(0,1fr);row-gap:28px}
.bar1,.bar2,.bar3,.bar4{height:10px}
.bar1{width:25%}.bar2{width:50%}.bar3{width:75%}.bar4{width:100%}
}
@media (max-width:760px){.cred{border-right:0 !important;padding-right:0 !important;margin-right:0 !important;width:100%}}
@media (max-width:600px){.mm-quote{grid-template-columns:minmax(0,1fr) !important}}
@media (max-width:520px){.hdr-cta{display:none !important}}

html,body{margin:0;padding:0}
.wrap{max-width:1240px;margin:0 auto;padding-left:clamp(16px,4vw,40px);padding-right:clamp(16px,4vw,40px)}
.ph{background:#FFF1BF;color:#5C4500;border-radius:3px;padding:0 4px;font-weight:500}
.dark .ph{background:#5C4A10;color:#FFE9A8}
a.txt{color:#1C6AA0;text-decoration:underline;text-underline-offset:3px}
.dark a.txt{color:#5DAFE6}

/* ---------- 2. Not drawn in the frames ---------- */

/* Visible focus (site-wide rules: Accessibility). */
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #5DAFE6;outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:#FFFFFF;color:#0A1422;padding:10px 16px;border-radius:4px;font-weight:700}
.skip:focus{left:16px}

/* Header: the Services dropdown (build notes: Header). Opens on hover and on keyboard focus. */
.site-hdr{position:relative;z-index:50}
.nav-links a:hover{color:#FFFFFF !important}
.nav-dd{position:relative;display:flex;align-items:center}
.dd-panel{position:absolute;left:50%;top:100%;transform:translateX(-50%);padding-top:22px;visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s}
.nav-dd:hover .dd-panel,.nav-dd:focus-within .dd-panel{visibility:visible;opacity:1}
.dd-box{width:max-content;display:grid;grid-template-columns:repeat(2,minmax(180px,max-content));gap:24px 40px;padding:24px 28px;background:#0C1B2E;border:1px solid rgba(255,255,255,0.10);border-radius:4px;box-shadow:0 16px 40px rgba(0,0,0,0.35)}
.dd-col{display:flex;flex-direction:column;gap:9px;font-size:14.5px;font-weight:500;white-space:nowrap}
.dd-col .dd-head{color:#FFFFFF !important;font-weight:600;font-size:15px}
.dd-col a{color:#A9B6C6}

/* Header: phone menu (build notes: "Phone: menu button, same items"). */
.m-menu{display:none;background:#0A1422;border-top:1px solid rgba(255,255,255,0.08)}
.m-menu.open{display:block}
@media (min-width:941px){.m-menu.open{display:none}}
.m-menu ul{list-style:none;margin:0;padding:0}
.m-menu li{border-bottom:1px solid rgba(255,255,255,0.10)}
.m-menu a,.m-menu .m-sub-btn{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;padding:0;color:#DCE3EC;font:500 17px/1.3 'Libre Franklin','Helvetica Neue',Helvetica,sans-serif;background:none;border:0;text-align:left;cursor:pointer}
.m-sub{display:none;padding:0 0 12px 16px}
.m-sub.open{display:block}
.m-sub li{border:0}
.m-sub a{min-height:40px;font-size:15.5px;color:#A9B6C6}
.m-sub-btn svg{transition:transform .15s}
.m-sub-btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.m-cta{display:flex;align-items:center;justify-content:center;min-height:52px;margin:20px 0 28px;border-radius:4px;background:#3498DB;color:#0A1422 !important;font-weight:700;font-size:16px}

/* Video: the drawn poster and round play button rest on top; pressing it plays with native controls. */
.vid video{width:100%}
.vid-play{padding:0;cursor:pointer;font:inherit}
.vid-play:hover{background:rgba(10,20,34,0.88) !important}
.vid.playing .vid-play{display:none !important}

/* Buttons drawn as links: a hover state. */
a[href="/assessment/"][style*="background: #3498DB"]:hover{background:#2F8ACB !important;color:#0A1422 !important}
a[href="/assessment/"][style*="background: #0A1422"]:hover{background:#16243A !important;color:#FFFFFF !important}

/* Resource Library: tabs, rows, Show all (build notes: Resource Library). */
.lib-tab{background:none;border-top:0;border-left:0;border-right:0;cursor:pointer;font-family:inherit;line-height:inherit;padding-left:0;padding-right:0}
.lib-row[hidden],.lib-lesson[hidden],.lib-more[hidden],.pillar-desc[hidden]{display:none !important}
.lib-toggle{background:none;border:0;padding:0;cursor:pointer;font-family:inherit;line-height:inherit}
.lib-show{background:none;cursor:pointer;font-family:inherit;line-height:inherit}

/* Playbook form (frame 07b states). */
.pb-form input[type=text],.pb-form input[type=email]{display:block;width:100%;height:46px;padding:0 12px;border:1px solid #B8C4D2;border-radius:4px;background:#FFFFFF;font:16px 'Libre Franklin','Helvetica Neue',Helvetica,sans-serif;color:#0A1422}

.pb-form button[type=submit]{border:0;cursor:pointer;font-family:inherit;line-height:inherit}

.pb-form input.invalid{border:2px solid #B42318}
.pb-form input[type=checkbox]{appearance:none;-webkit-appearance:none;flex:0 0 18px;width:18px;height:18px;margin:1px 0 0;border:1.5px solid #6A7686;border-radius:3px;background:#FFFFFF center/12px no-repeat;cursor:pointer}
.pb-form input[type=checkbox]:checked{background-color:#0A1422;border-color:#0A1422;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E")}
.pb-form button[type=submit]:disabled{opacity:.6;cursor:progress}
.pb-form button[type=submit]:hover{background:#16243A !important}
.pb-form [hidden],.pb-sent[hidden],.pb-box form[hidden]{display:none !important}
