/* Shared public utilities and scoped portal readability corrections. */
.tn-skip{position:fixed;top:-100px;left:16px;z-index:2147483647;padding:14px 20px;background:#fff;color:#102e3d;border:2px solid #236475;border-radius:8px}.tn-skip:focus{top:12px}
.tn-tools{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;padding:18px 24px;border-top:1px solid #82b7bd33;background:#09232f;color:#d9e8e7;font:500 12px/1.6 Arial,sans-serif}.tn-tools button,.tn-tools a{appearance:none;border:1px solid #acd6d244;border-radius:7px;background:#173d48;color:#e6f0ea;padding:9px 12px;text-decoration:none;cursor:pointer}.tn-tools button:hover,.tn-tools a:hover{border-color:#e4c583}.tn-tools small{color:#afc6cb}
.tn-backtop{position:fixed;left:18px;bottom:18px;width:42px;height:42px;background:#123e4e;color:#effbf7;border:1px solid #a5d9d466;border-radius:50%;z-index:60;box-shadow:0 6px 20px #0004;font-size:22px;cursor:pointer}.tn-backtop[hidden]{display:none}
.tn-cookie{position:fixed;left:24px;bottom:24px;z-index:2147483000;width:min(540px,calc(100vw - 48px));box-sizing:border-box;border:1px solid #b7d7d5;border-radius:16px;background:#102f3e;color:#f0f6f1;box-shadow:0 16px 70px #0008;padding:24px;font:14px/1.65 Arial,sans-serif}.tn-cookie[hidden]{display:none}.tn-cookie h2{font:700 20px/1.3 Arial,sans-serif;margin:0 0 10px;color:#fff}.tn-cookie p{margin:0 0 14px;color:#cadcde}.tn-cookie a{color:#b7efe1;text-decoration:underline}.tn-cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.tn-cookie button{padding:11px 15px;border:1px solid #c2ded8;border-radius:7px;background:#c1eee2;color:#123442;font-weight:700;cursor:pointer;min-height:44px}.tn-cookie button[data-choice=essential_only]{background:#183c4b;color:#fff}.tn-cookie button.tn-cookie-close{background:transparent;color:#e2ece8;border:0;text-decoration:underline}
.tn-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(590px,calc(100vw - 36px));max-height:80dvh;overflow:auto;border:1px solid #b7d8d3;border-radius:18px;padding:28px;background:#102d3d;color:#f0f5f0;z-index:2147483000;font:14px/1.6 Arial,sans-serif}.tn-dialog::backdrop{background:#020c17bb;backdrop-filter:blur(3px)}.tn-dialog h2{font-size:24px;margin:0 0 16px;color:#fff}.tn-dialog input{box-sizing:border-box;width:100%;padding:13px;border:1px solid #a4c7cb;border-radius:8px;background:#f5faf9;color:#103442;font:16px Arial}.tn-dialog label{display:block;margin-bottom:9px}.tn-dialog button{background:#b7e9dd;color:#103442;padding:10px 14px;border:1px solid #c8ddd6;border-radius:7px;cursor:pointer}.tn-dialog .tn-close{float:right;background:transparent;color:#e5f4ee}.tn-search-results{display:grid;gap:7px;margin-top:18px}.tn-search-results a{display:block;padding:12px 14px;border:1px solid #8cbabc44;border-radius:8px;color:#dcefe9;text-decoration:none}.tn-search-results a:hover{background:#225362}.tn-status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:2147483647;background:#eff9f4;color:#153c49;border:1px solid #84afa9;border-radius:10px;padding:12px 18px;font:14px/1.5 Arial;box-shadow:0 6px 25px #0003;max-width:80vw}.tn-status:empty{display:none}
.tn-copy{display:block;margin-top:12px;padding:8px 12px;border:1px solid #b7d4cd55;border-radius:7px;background:#1b4350;color:#deeee7;cursor:pointer}
.tn-faq{padding:70px max(7%,calc((100% - 1240px)/2));background:#0a2432;color:#dcece7;border-top:1px solid #91c7cb33}.tn-faq h2{font-size:36px;line-height:1.2;color:#eff4ee;margin:0 0 28px}.tn-faq details{padding:20px 0;border-top:1px solid #a2c8cc33}.tn-faq summary{font-size:16px;font-weight:700;cursor:pointer;line-height:1.6}.tn-faq p{max-width:800px;font-size:14px;line-height:1.9;color:#bfd5d9}.tn-faq a{color:#b9ebdd}
/* These controls sit on pale completion cards, so always use dark readable text. */
.completion-page .completion-actions .sv-secondary-btn,.completion .completion-actions .sv-secondary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;background:#f2f8fb!important;color:#173f56!important;border:1px solid #a6bdcc!important;border-radius:12px;text-decoration:none;font-weight:700;line-height:1.5}
.completion-page .completion-message,.completion-page .completion-next{color:#234b62!important}.completion-page .completion-next p{color:#405a71!important}
/* Candidate 360 is a viewport modal and must clear every workspace sidebar. */
.ad-root.ad-modal-portal{position:fixed!important;inset:0!important;z-index:100000!important;background:transparent!important;margin:0!important;padding:0!important;width:100vw!important;max-width:none!important;transform:none!important;color:#193e54!important}
.ad-modal-portal .ad-modal-backdrop{position:fixed!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important;background:#020e18b8!important;overflow:auto!important;box-sizing:border-box}
.ad-modal-portal .ad-modal{box-sizing:border-box!important;width:min(940px,100%)!important;max-width:100%!important;max-height:calc(100dvh - 48px)!important;overflow:auto!important;margin:auto!important;padding:28px!important;background:#f4f8fb!important;color:#193e54!important;border:1px solid #aec3d0!important;border-radius:20px!important;transform:none!important;position:relative!important}
.ad-modal-portal .ad-modal.wide{width:min(1160px,100%)!important}.ad-modal-portal .ad-modal-head{position:sticky;top:-28px;z-index:3;background:#f4f8fb!important;padding:12px 0 18px!important;color:#15394f!important;border-bottom:1px solid #bdcdd8}
.ad-modal-portal :is(h2,h3,h4,b,strong){color:#163c53!important}.ad-modal-portal :is(p,span,small,dt,dd){color:#496579!important}.ad-modal-portal .ad-info{background:#eaf2f7!important;border:1px solid #c5d5df!important;color:#193e54!important;min-width:0;overflow-wrap:anywhere}.ad-modal-portal .ad-info b{color:#163e56!important}.ad-modal-portal .ad-candidate-hero{display:flex;flex-wrap:wrap;gap:20px;background:#e9f2f7!important;border:1px solid #c5d5df!important;color:#173b53!important}.ad-modal-portal .ad-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.ad-modal-portal button:not(.ad-primary){color:#1b4b61!important;background:#edf5f8!important;border:1px solid #aec8d4!important;min-height:40px}.ad-modal-portal .ad-primary{color:#fff!important;background:#135767!important}.ad-modal-portal .ad-tabs{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:14px 0}.ad-modal-portal .ad-tabs button{white-space:nowrap;padding:10px 15px}.ad-modal-portal .ad-tabs button.active{background:#145365!important;color:#fff!important}.ad-modal-portal .ad-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ad-modal-portal table{color:#264b61!important}.ad-modal-portal th{color:#163e56!important;background:#dfecf3!important}.ad-modal-portal td{color:#294d62!important;background:#f2f7fa!important;border-color:#c1d2dd!important}
.wf-candidate-dialog{position:fixed!important;inset:0!important;margin:auto!important;width:min(1100px,calc(100vw - 40px))!important;max-height:calc(100dvh - 40px)!important;overflow:auto!important;box-sizing:border-box!important;background:#102f3b!important;color:#ecf6ee!important}.wf-candidate-dialog :is(h2,h3,dd,b,strong){color:#edf5ed!important}.wf-candidate-dialog :is(p,dt,small){color:#bfd7db!important}.wf-candidate-dialog::backdrop{background:#020b16b8}
.tn-print-note{display:none}.tn-tools :focus-visible,.tn-dialog :focus-visible,.tn-cookie :focus-visible,.tn-faq :focus-visible{outline:3px solid #e7ca83;outline-offset:4px}
@media(max-width:700px){.tn-cookie{left:12px;bottom:12px;width:calc(100vw - 24px);padding:20px}.tn-cookie-actions button{flex:1}.tn-tools{gap:8px;padding:20px 14px}.tn-backtop{left:12px;bottom:16px;width:38px;height:38px}.ad-modal-portal .ad-modal-backdrop{padding:10px!important}.ad-modal-portal .ad-modal{padding:18px!important;max-height:calc(100dvh - 20px)!important;border-radius:14px!important}.ad-modal-portal .ad-modal-head{top:-18px}.ad-modal-portal .ad-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tn-faq h2{font-size:30px}.completion-actions{display:flex!important;flex-direction:column!important;gap:12px!important}.completion-actions a{width:100%;box-sizing:border-box}}
@media(max-width:420px){.ad-modal-portal .ad-detail-grid{grid-template-columns:1fr}.ad-modal-portal .ad-candidate-hero{padding:18px!important}}
@media print{.nav,.tn-tools,.tn-cookie,.tn-backtop,.genie-launch,.genie-panel,.progress-line,.site-universe,.wf-side,.ad-side,.tn-skip,.hero .signal-scene{display:none!important}body,main,section,article,footer{background:#fff!important;color:#172f40!important;box-shadow:none!important;filter:none!important;overflow:visible!important}h1,h2,h3,p,span,a{color:#172f40!important;text-shadow:none!important}.section{break-inside:avoid}.tn-print-note{display:block}a[href^=http]::after{content:' (' attr(href) ')';font-size:9pt}}
/* Optional light appearance applies only to the public cinematic page. */
body.tn-daylight main .hero,body.tn-daylight main .section,body.tn-daylight main .section:nth-of-type(even){background:radial-gradient(ellipse at 85% 20%,#c5e9e5,transparent 65%),linear-gradient(145deg,#f2f6f4,#e7eff0)!important;color:#193f52!important}
body.tn-daylight main .hero h1,body.tn-daylight main .section h2,body.tn-daylight main .founder-story blockquote{color:#173e52!important;text-shadow:none!important}
body.tn-daylight main .hero h1 .serif,body.tn-daylight main .section h2 em{color:#226f70!important;text-shadow:none!important}body.tn-daylight main .hero-description,body.tn-daylight main .section .eyebrow,body.tn-daylight main .mission-intro,body.tn-daylight main .proof-intro>p,body.tn-daylight main .section-top>p,body.tn-daylight main .founder-story>p:not(.eyebrow),body.tn-daylight main .journey-disclaimer,body.tn-daylight main .tier-governance{color:#355d70!important}
body.tn-daylight main .hero .eyebrow,body.tn-daylight main .hero-note,body.tn-daylight main .journey-cue,body.tn-daylight main .hero-login-link{color:#285166!important}body.tn-daylight .tn-faq{background:#eaf1f1;color:#173f52}body.tn-daylight .tn-faq h2,body.tn-daylight .tn-faq p,body.tn-daylight .tn-faq summary{color:#244e62}
.tn-career-entry .tn-tools-lead{max-width:670px;color:#bdd2d5;font-size:15px;line-height:1.9;margin:25px 0 36px}.tn-career-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tn-career-grid>a{display:flex;flex-direction:column;align-items:start;padding:28px;border:1px solid #a8d8d339;border-radius:18px;background:linear-gradient(135deg,#1a46546b,#0c263c);text-decoration:none;color:#e9f2e9;min-width:0;transition:transform .25s,border-color .25s;box-shadow:0 20px 50px #0002}.tn-career-grid>a:hover{transform:translateY(-4px);border-color:#d5c184}.tn-career-grid>a>span{font-size:8px;letter-spacing:.18em;color:#b7d7d0}.tn-career-grid h3{font-size:24px!important;line-height:1.3;color:#f1f6ed!important;margin:22px 0 13px!important}.tn-career-grid p{font-size:13px;line-height:1.8;color:#bad1d6;margin:0 0 25px}.tn-career-grid b{font-size:12px;color:#dfc789;margin-top:auto}.tn-prep-note{font-size:11px;line-height:1.9;color:#a4bec8;margin-top:26px;max-width:850px}body.tn-daylight .tn-tools-lead,body.tn-daylight .tn-prep-note{color:#365e71!important}
@media(max-width:900px){.tn-career-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.tn-career-grid{grid-template-columns:1fr}.tn-career-grid>a{padding:24px}.tn-career-grid h3{font-size:23px!important}}
body.tn-daylight main .proof-benefits span,body.tn-daylight main .underlined,body.tn-daylight main .filter-labels,body.tn-daylight main .lab-caption,body.tn-daylight main .lab-metric small,body.tn-daylight main .journey-steps h3,body.tn-daylight main .journey-steps p{color:#294f63!important}body.tn-daylight main .lab-metric b[data-cinema-number]::after{color:#234e60!important}body.tn-daylight main .final-paths .button.outline{color:#163e51!important;border-color:#467482!important;background:#d9e8e9!important}

/* Footer utilities remain secondary to the main footer navigation. */
.tn-tools{gap:6px 14px!important;padding:13px 0!important;margin-top:20px!important;justify-content:center!important}
.tn-tools button,.tn-tools a{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:4px 0!important;min-height:28px!important;font:400 11px/1.4 Arial,sans-serif!important;color:#acc5cc!important;text-decoration:none!important}
.tn-tools button:hover,.tn-tools a:hover{color:#fff!important;text-decoration:underline!important}.tn-tools small{font-size:9px!important;opacity:.65;flex-basis:100%;text-align:center}
