*{box-sizing:border-box}:root{--navy:#101f31;--cream:#f8f5ee;--gold:#c8a766}body{margin:0;background:var(--cream);color:var(--navy);font:17px/1.6 system-ui,-apple-system,sans-serif}a{color:inherit}header{background:var(--navy);color:white;padding:24px max(22px,calc((100vw - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.brand{text-decoration:none;letter-spacing:2px;font-weight:800;line-height:1.3}.brand small{display:block;letter-spacing:0;color:var(--gold);font-weight:400;font-size:18px}nav{display:flex;gap:20px;flex-wrap:wrap}nav a{text-decoration:none;font-size:15px}nav a:hover{text-decoration:underline}main{max-width:1100px;margin:auto;padding:45px 22px 80px}h1{font-size:clamp(33px,6vw,61px);line-height:1.13;letter-spacing:-1.5px}h1 em{color:#715a2d;font-style:normal}h2{line-height:1.25}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:#6a5128}.lede{font-size:21px;max-width:770px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.button{display:inline-block;padding:15px 24px;border:2px solid var(--navy);border-radius:8px;background:var(--navy);color:white;text-decoration:none;min-height:48px;font-weight:650}.gold{background:var(--gold);color:var(--navy);border-color:var(--gold)}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:35px 0}.card{border:2px solid var(--navy);background:white;border-radius:12px;padding:25px}.card h2{margin:5px 0}.fine{font-size:14px;color:#536273}.preview{background:#eee3ce;padding:10px 22px;font-size:13px;text-align:center}.notice{border-left:4px solid var(--gold);padding:20px;background:white}footer{padding:30px 22px;background:#e9e5dc;text-align:center;font-size:13px}a:focus-visible,button:focus-visible{outline:3px solid #917123;outline-offset:4px}.skip{position:absolute;top:-100px;background:white;color:var(--navy);padding:10px}.skip:focus{top:0}.formlink{font-weight:700}.iframe-wrap{width:100%;max-width:1100px;margin:auto}iframe{width:100%;border:0;min-height:1100px;background:var(--cream)}@media(max-width:650px){.cards{grid-template-columns:1fr}header{padding:20px}nav{gap:14px}main{padding-top:30px}.actions .button{width:100%;text-align:center}}
nav a{display:inline-flex;align-items:center;min-height:44px}h1,.card{overflow-wrap:break-word}
.homepage-hero{color:var(--navy)}.homepage-hero em{color:var(--gold)}
.homepage-hero em{font-family:inherit;font-size:inherit;font-weight:inherit}

/* Homepage brand line: approved doubling; headline and navigation unchanged. */
.homepage-brand{font-size:24px;text-wrap:balance}

/* Shared card treatment; border is constant, shadows never move the card. */
.card:has(a[href]):focus-within,.card:has(button:enabled):focus-within{box-shadow:0 3px 10px rgba(16,31,49,.10)}
@media(hover:hover){.card:has(a[href]):hover,.card:has(button:enabled):hover{box-shadow:0 3px 10px rgba(16,31,49,.10)}}

/* Approved full book title/subtitle: page, listing and placeholder hierarchy. */
.book-title{margin-bottom:12px}
.book-subtitle{font-size:25.5px;font-weight:600;line-height:1.35;margin:0 0 20px;max-width:42ch;color:var(--navy)}
.card .book-subtitle{font-size:18px;line-height:1.45;margin:8px 0 16px}
.cover-placeholder .book-subtitle{font-size:16px;color:inherit;margin:12px 0 0}

/* Owner-approved product descriptions use readable natural-flow paragraphs. */
.product-description{max-width:72ch}

/* Current215: readable brand accents and control boundaries; no content or security changes. */
:root{--gold-ink:#806022;--control-border:#7b7468}
.homepage-hero em{color:var(--gold-ink)}
/* Decorative gold remains light on navy and on nonessential dividers. */
main input:not([type=checkbox]):not([type=radio]),main select,main textarea{border:1px solid var(--control-border);background:#fff;color:#101f31;font:inherit;max-width:100%;min-height:44px;border-radius:6px;padding:10px}
main input::placeholder,main textarea::placeholder{color:#536273;opacity:1}
main input[type=checkbox],main input[type=radio]{accent-color:#101f31;width:22px;height:22px;vertical-align:middle}
:focus-visible{outline:3px solid #806022;outline-offset:4px;box-shadow:0 0 0 7px #fff}
header a:focus-visible{outline-color:#fff;box-shadow:0 0 0 7px #101f31}
.button:not([aria-disabled=true]):not(:disabled):hover,button:not(:disabled):hover{background:#243b54;color:#fff;border-color:#243b54}
.button.gold:not([aria-disabled=true]):not(:disabled):hover{background:#b89959;color:#101f31;border-color:#b89959}
button:disabled,.button[aria-disabled=true]{opacity:1;background:#e6e2d9;color:#536273;border-color:#7b7468;cursor:not-allowed}
main a:not(.button){text-underline-offset:.18em;text-decoration-thickness:1px}
main a:not(.button):hover{text-decoration-thickness:2px}
.cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{min-width:0}.card p{max-width:68ch}.card h2{line-height:1.3}
main>p:not(.eyebrow):not(.lede){max-width:78ch}
main h2{margin-top:1.6em}p,li,dd,label{overflow-wrap:break-word}
/* Existing assessment remains the primary action. Related books follow it. */
.flagship-intro{max-width:820px;margin-bottom:28px}
.flagship-intro h1{margin-top:12px;margin-bottom:20px}
.flagship-intro .lede{margin-top:0}
.flagship-intro .actions{margin:20px 0}
#checkup{scroll-margin-top:20px}
.assessment-reading{margin-top:48px;padding-top:28px;border-top:2px solid #c8a766;max-width:880px}
.assessment-reading h2{margin-top:0;font-size:clamp(25px,4vw,32px)}
.assessment-reading>p{max-width:66ch}
.assessment-book-pair{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:clamp(20px,5vw,44px);align-items:start;margin:28px 0}
.assessment-book-pair figure{margin:0;min-width:0}
.assessment-book-pair img{display:block;width:100%;height:auto;max-height:300px;object-fit:contain;object-position:center bottom}
.assessment-book-pair figcaption{font-size:15px;font-weight:650;line-height:1.45;margin-top:12px}
.assessment-preview{margin:0 0 32px;padding:20px;background:#fff;border:2px solid #101f31;border-radius:12px}
.assessment-preview img{display:block;max-width:100%;height:auto}
.assessment-preview figcaption{font-size:14px;color:#536273;margin-top:12px}
@media(max-width:650px){.cards{grid-template-columns:minmax(0,1fr)}.flagship-intro{margin-bottom:20px}.assessment-reading{margin-top:32px}.assessment-book-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.assessment-book-pair img{max-height:240px}.assessment-book-pair figcaption{font-size:14px}}
@media(max-width:360px){.assessment-book-pair{grid-template-columns:minmax(0,1fr);max-width:200px;margin-inline:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight;box-shadow:none}.card,.assessment-preview{border-color:CanvasText}}
main .discovery-controls input,main .discovery-controls select{border-color:#7b7468}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #806022;outline-offset:4px;box-shadow:0 0 0 7px #fff}
header a:focus-visible{outline-color:#fff;box-shadow:0 0 0 7px #101f31}
/* Legacy placeholder foreground inherited cream while the storefront supplied a light background. */
main .cover-placeholder{color:#101f31}

/* Reviewer links stay visible and wrap; no collapsed or script-dependent mobile menu. */
header nav{max-width:100%;align-items:center;column-gap:16px;row-gap:6px}
header nav a{min-height:44px}
footer .reviewer-links{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 20px;margin:18px 0 8px}
footer .reviewer-links a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:.18em}
.session-options{max-width:760px}.session-options .notice{margin:24px 0}
@media(max-width:650px){header nav{width:100%;gap:6px 14px}.session-options .actions .button{width:100%}}

/* Current241: match the existing assessment corner ribbon on both homepage features. */
.home-feature-card{position:relative;overflow:hidden}
.home-feature-card>h2,.home-feature-card>.eyebrow{padding-right:72px}
.home-feature-card>.home-corner-ribbon{position:absolute;top:23px;right:-43px;transform:rotate(45deg);width:174px;padding:7px 0;background:#b41522;color:#fff;font-size:12px;line-height:1.4;font-weight:800;text-align:center;letter-spacing:.04em;box-shadow:0 2px 4px #0003;pointer-events:none}
@media(forced-colors:active){.home-feature-card>.home-corner-ribbon{background:Canvas;color:CanvasText;border:1px solid CanvasText;box-shadow:none}}

/* Current245: separate the homepage checkup and Decoder cards on all screens. */
.home-feature-card + .home-feature-card{margin-top:24px}

/* Current247: progressive mobile navigation; links stay visible without JavaScript. */
[hidden]{display:none !important}.menu-toggle{display:none;border:1px solid #c8a766;border-radius:6px;background:#101f31;color:white;font:inherit;min-height:44px;padding:8px 16px}@media(max-width:650px){.menu-toggle{display:block}header nav{display:flex;flex-direction:column;align-items:stretch}header nav a{padding:4px 0}}
.toolbox-bundle{margin:28px 0}

/* Current282: larger readable header links; wrap instead of shrinking words. */
header nav{column-gap:22px;row-gap:8px}
header nav a{font-size:19px;font-weight:600;line-height:1.4;white-space:nowrap}
@media(min-width:1100px){header{padding-left:24px;padding-right:24px}header nav{width:100%;justify-content:center;flex-wrap:wrap}}
@media(max-width:650px){header nav{gap:8px 14px}header nav a{font-size:18px;padding:8px 0}}

.social-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 0 20px}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid currentColor;border-radius:50%;text-decoration:none}.social-links a:hover{background:#e8dfca}.social-links a:focus-visible{outline:3px solid #b58b37;outline-offset:4px}.social-links svg{display:block}

.book-format-choice{margin:36px 0;padding:24px;border:2px solid var(--navy);border-radius:12px;background:white}.book-format-choice label{display:block;font-weight:650;margin-bottom:8px}.book-format-choice select{display:block;width:100%;max-width:560px;padding:14px;font:inherit;color:var(--navy);background:white;border:1px solid var(--navy);border-radius:6px;min-height:48px}

/* Current287: owner-approved uniform navy website buttons, including legacy variants. */
main .button,main button{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important}
main .button:hover,main button:hover{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important}
main button:disabled,main .button[aria-disabled=true]{cursor:not-allowed}
main .button:hover:not([aria-disabled=true]),main button:hover:not(:disabled){box-shadow:0 0 0 2px var(--gold)}

/* Additive homepage candidate: preserve original hero and feature cards. */
.home-introduction,.home-resources,.home-books,.home-collection{margin-top:44px}.home-introduction{max-width:76ch}.home-resources .cards{grid-template-columns:repeat(3,minmax(0,1fr))}.home-book-cover{display:block;width:auto;max-width:100%;height:240px;object-fit:contain;margin:0 auto 22px}.home-books .card h3,.home-resources .card h3{line-height:1.3}.home-collection .actions{gap:14px}@media(max-width:760px){.home-resources .cards{grid-template-columns:1fr}.home-collection .actions .button{max-width:100%}.home-book-cover{height:220px}}

.home-collection button{min-height:44px;padding:10px 14px;max-width:100%;margin:8px 0;border:2px solid #101f31;border-radius:8px;font:inherit}.home-collection button+button{margin-left:12px}

