/* Shared Dream Horizon screen foundations. Preserve the distinct tool and reader layouts. */
@font-face{font-family:'Open Sans';src:url('/assets/open-sans-400.ttf');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Open Sans';src:url('/assets/open-sans-700.ttf');font-weight:700;font-style:normal;font-display:swap}
@media screen{
 body,body.academy-reader,body.blueprint-page{font-family:'Open Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}
 button,input,select,textarea,summary,.reader-menu,.reader-menu nav a,.reader-options,.back-link,.module-focused .brand{font-family:'Open Sans',Arial,sans-serif}
 :focus-visible{outline:3px solid #9b783f;outline-offset:4px}
 header :focus-visible,.academy-bar :focus-visible,.reading-header :focus-visible{outline-color:#e4d3b4}
 input,select,textarea{font-size:max(16px,1em)}
 [hidden]{display:none!important}
 .blueprint-page{font-size:16px;line-height:1.75}
 .blueprint-page .tools summary,.blueprint-page .tools details>div{font-size:14px;line-height:1.7}
 .blueprint-page .tools summary{min-height:44px}
 .blueprint-page .lane-head .eyebrow,.blueprint-page .next-steps span{color:#78613b}
 .blueprint-page .event-detail{font-size:14px;line-height:1.7}
 .blueprint-page .event-detail .owner{font-size:11px;line-height:1.6}
 .blueprint-page .responsibility-note{font-size:13px;line-height:1.7}
 .blueprint-page .hero h1{letter-spacing:-.05em}
 .reader-menu summary,.reader-options>summary{min-height:44px;display:inline-flex;align-items:center}
 .reading-header .language-picker a,.reading-header .language-picker span,.academy-bar .language-picker a,.academy-bar .language-picker span{min-height:44px;display:inline-flex;align-items:center;padding:8px 10px}
 .legal-page a{text-underline-offset:3px}
 .resource-card .bookmark{min-width:44px;min-height:44px}
 .resource-card .card-footer a{min-height:44px;display:inline-flex;align-items:center}
 .blueprint-page .mobile-map small{font-size:13px}
 .module-focused .tool-footer nav{flex-wrap:wrap;row-gap:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media screen{
 .reader-mobile-label{display:none}
 .print-preview-toolbar{font-family:'Open Sans',Arial,sans-serif}
}
@media screen and (max-width:760px){
 .reading-header{padding:10px 16px;gap:4px 8px;align-items:center;min-height:0}
 .reading-header .reader-brand{display:none}
 .reading-header .back-link{order:0;flex:1 1 100%;margin:0;min-height:36px}
 .reading-header .reading-controls{order:1;display:flex;flex:1 1 100%;width:100%;gap:6px;justify-content:flex-start;margin:0;align-items:center}
 .reader-options .reader-desktop-label{display:none}.reader-options .reader-mobile-label{display:inline}
 .reading-controls .reader-options>summary,.reading-controls .reader-menu>summary{padding:8px;font-size:12px}
 .reading-controls .language-picker{gap:0}
 .reading-controls .language-picker a,.reading-controls .language-picker span{min-width:44px;padding:8px}
 .module-focused .activity-day{grid-template-columns:minmax(0,1fr)}
 .module-focused .day-group{min-width:0;padding:18px}
 .module-focused .day-field{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:10px}
 .module-focused .day-field>span{min-width:0;overflow-wrap:anywhere;hyphens:auto}
 .module-focused .day-field input{width:72px;min-width:0}
}
@media screen and (max-width:760px){
 .reading-hero{grid-template-columns:minmax(0,1fr);gap:20px}
 .reading-hero>.reading-cover,.academy-hero>img{display:none}
 .reading-hero>div,.academy-hero>div{min-width:0}
 .reading-hero h1,.academy-hero h1{overflow-wrap:normal;hyphens:auto}
}
/* Authoritative CI typography applies to emphasis, diagrams and printed web views as well. */
body,body.academy-reader,body.blueprint-page,button,input,select,textarea,summary,svg text,code,kbd,samp,pre{font-family:'Open Sans',Arial,sans-serif}
em,i{font-style:normal}h1 em,h2 em,h3 em{font-weight:700}
.blueprint-page h2 em,.blueprint-page blockquote,.blueprint-page .number,.blueprint-page .foundation>span{font-family:'Open Sans',Arial,sans-serif;font-style:normal}
.blueprint-page h2 em{font-weight:700}
.ci-signoff{font-family:'Open Sans',Arial,sans-serif;font-size:12px;line-height:1.6;font-weight:400}
.ci-signoff>span{display:block}.ci-signoff>small{display:block;font-size:11px;line-height:1.6;font-weight:400}
.footer-identity .ci-signoff{max-width:300px;text-align:left;color:#f8f4ec}
.reading-footer .ci-signoff{width:100%;display:block;margin-top:18px}.reading-footer .ci-signoff>small{display:block}
.module-focused .tool-footer-top .ci-signoff{max-width:300px}
.academy-reader footer .ci-signoff{margin-top:16px}
.blueprint-page footer small,.site-brandline small{font-size:11px}
@media(max-width:760px){.footer-identity .ci-signoff{max-width:100%}.module-focused .tool-footer-top .ci-signoff{margin-bottom:12px}}
b,strong{font-weight:700}
.blueprint-page .action{color:#242829;border-left-color:#c4b18e}
.blueprint-page .tools a{color:#192541;text-decoration-color:#c4b18e;text-underline-offset:4px}
/* One language state on every page, including Blueprint and Academy tools. */
@media screen{
 html body .language-picker [data-locale-link]{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 10px!important;border:1px solid #c4b18e!important;border-radius:7px!important;background:transparent!important;color:#f8f4ec!important;text-decoration:none!important;font:700 13px/1.4 'Open Sans',Arial,sans-serif;white-space:nowrap}
 html body .language-picker [data-locale-link][aria-current="page"]{background:#c4b18e!important;color:#192541!important}
 html body .language-picker [data-locale-link]:focus-visible{outline:3px solid #f8f4ec!important;outline-offset:3px}
}




/* Language flag cues: display labels are independent from routing codes. */
@media screen{html body .language-picker [data-locale-link]{flex-direction:row;gap:6px;min-height:44px;padding:8px 10px!important}html body .language-picker [data-locale-link] .locale-code{display:block;line-height:1.2;min-height:0!important;min-width:0!important;padding:0!important;border:0!important;background:none!important;color:inherit!important;font:inherit!important}html body .language-picker [data-locale-link] .locale-flag{display:block!important;width:21px!important;height:14px!important;max-width:none;object-fit:contain;border-radius:1px;box-shadow:0 0 0 .5px #c4b18e}}

/* Compact language frames: 75 percent visual size, unchanged touch area. */
@media screen{html body .language-picker [data-locale-link]{position:relative;isolation:isolate;border-color:transparent!important;background:transparent!important}html body .language-picker [data-locale-link]::before{content:"";position:absolute;inset:5px 2px;z-index:-1;border:1px solid #c4b18e;border-radius:6px;background:transparent}html body .language-picker [data-locale-link][aria-current="page"]{background:transparent!important}html body .language-picker [data-locale-link][aria-current="page"]::before{background:#c4b18e;border-color:#192541}}
