:root {
    --authority-ink: #082340;
    --authority-muted: #4f667d;
    --authority-paper: #fffdf8;
    --authority-mint: #e8f7f2;
    --authority-teal: #168b7b;
    --authority-gold: #f4b942;
    --authority-coral: #dd654f;
    --authority-line: #cfdee8;
    --authority-shadow: 0 22px 60px rgba(8, 35, 64, .10);
}

.authority-shell {
    background:
        radial-gradient(circle at 8% 8%, rgba(244, 185, 66, .16), transparent 24rem),
        radial-gradient(circle at 94% 20%, rgba(22, 139, 123, .13), transparent 28rem),
        #f6fafc;
    color: var(--authority-ink);
    padding: 44px 0 80px;
}

.authority-container {
    margin: 0 auto;
    max-width: 1180px;
    padding: 0 28px;
}

.authority-breadcrumbs {
    align-items: center;
    color: #63788d;
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    gap: 9px;
    margin-bottom: 24px;
}

.authority-breadcrumbs a { color: #176f68; text-decoration: none; }
.authority-breadcrumbs a:hover { text-decoration: underline; }

.authority-kicker,
.authority-heading > span {
    color: #087a6e;
    display: block;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .16em;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.authority-hero {
    align-items: stretch;
    background: var(--authority-paper);
    border: 1px solid var(--authority-line);
    border-radius: 26px;
    box-shadow: var(--authority-shadow);
    display: grid;
    gap: 34px;
    grid-template-columns: minmax(0, 1.4fr) minmax(290px, .6fr);
    overflow: hidden;
    padding: 54px;
    position: relative;
}

.authority-hero::before {
    background: linear-gradient(90deg, var(--authority-gold), var(--authority-teal));
    content: "";
    height: 7px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.authority-hero h1,
.author-profile-intro h1 {
    color: var(--authority-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(40px, 5.2vw, 68px);
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: 1.02;
    margin: 0 0 22px;
}

.authority-hero > div > p,
.author-profile-intro > p {
    color: var(--authority-muted);
    font-size: 19px;
    line-height: 1.75;
    margin: 0;
    max-width: 760px;
}

.authority-policy-card,
.research-method-card {
    align-self: stretch;
    background: var(--authority-ink);
    border-radius: 18px;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
}

.authority-policy-card > strong,
.research-method-card > strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    line-height: 1.2;
}

.authority-policy-card ul {
    list-style: none;
    margin: 22px 0 0;
    padding: 0;
}

.authority-policy-card li {
    border-top: 1px solid rgba(255, 255, 255, .17);
    color: #d9e8f3;
    line-height: 1.5;
    padding: 12px 0 12px 24px;
    position: relative;
}

.authority-policy-card li::before {
    color: var(--authority-gold);
    content: "✓";
    font-weight: 900;
    left: 0;
    position: absolute;
}

.authority-section { margin-top: 76px; }

.authority-heading {
    margin-bottom: 28px;
    max-width: 800px;
}

.authority-heading h2,
.authority-split-section h2,
.author-responsibility-section h2,
.research-limitations h2,
.research-next-steps h2 {
    color: var(--authority-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(30px, 4vw, 46px);
    letter-spacing: -.025em;
    line-height: 1.1;
    margin: 0;
}

.authority-heading p {
    color: var(--authority-muted);
    font-size: 17px;
    line-height: 1.7;
    margin: 14px 0 0;
}

.authority-principle-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.authority-principle-grid article {
    background: rgba(255, 255, 255, .92);
    border: 1px solid var(--authority-line);
    border-radius: 16px;
    min-height: 245px;
    padding: 28px;
}

.authority-principle-grid article > strong {
    color: var(--authority-coral);
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 38px;
    margin-bottom: 34px;
}

.authority-principle-grid h3,
.authority-disclosure-grid h3,
.author-focus-grid h3 {
    color: var(--authority-ink);
    font-size: 21px;
    line-height: 1.25;
    margin: 0 0 10px;
}

.authority-principle-grid p,
.authority-disclosure-grid p,
.author-focus-grid p {
    color: var(--authority-muted);
    line-height: 1.7;
    margin: 0;
}

.authority-source-section {
    background: #eaf6f3;
    border-radius: 24px;
    padding: 44px;
}

.authority-source-list {
    display: grid;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.authority-source-list li {
    align-items: center;
    background: #fff;
    border: 1px solid #c9e1dc;
    border-radius: 14px;
    display: grid;
    gap: 20px;
    grid-template-columns: 52px 1fr;
    padding: 20px;
}

.authority-source-list li > span {
    align-items: center;
    background: var(--authority-ink);
    border-radius: 50%;
    color: #fff;
    display: flex;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    height: 48px;
    justify-content: center;
    width: 48px;
}

.authority-source-list strong { color: var(--authority-ink); display: block; font-size: 18px; margin-bottom: 4px; }
.authority-source-list p { color: var(--authority-muted); line-height: 1.55; margin: 0; }

.authority-workflow {
    counter-reset: workflow;
    display: grid;
    gap: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.authority-workflow article {
    border-left: 1px solid var(--authority-line);
    border-top: 1px solid var(--authority-line);
    min-height: 190px;
    padding: 28px;
}

.authority-workflow article:nth-child(3n) { border-right: 1px solid var(--authority-line); }
.authority-workflow article:nth-last-child(-n+3) { border-bottom: 1px solid var(--authority-line); }
.authority-workflow article:first-child { border-radius: 16px 0 0; }
.authority-workflow article:nth-child(3) { border-radius: 0 16px 0 0; }
.authority-workflow article:nth-child(4) { border-radius: 0 0 0 16px; }
.authority-workflow article:last-child { border-radius: 0 0 16px; }
.authority-workflow span { color: var(--authority-teal); display: block; font-size: 19px; font-weight: 900; margin-bottom: 16px; }
.authority-workflow p { color: var(--authority-muted); line-height: 1.7; margin: 0; }

.authority-split-section {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 76px;
}

.authority-split-section article {
    background: var(--authority-paper);
    border: 1px solid var(--authority-line);
    border-radius: 20px;
    padding: 36px;
}

.authority-split-section p { color: var(--authority-muted); font-size: 17px; line-height: 1.75; margin: 20px 0 0; }
.authority-split-section a { color: #087a6e; font-weight: 800; }

.authority-disclosure {
    background: var(--authority-ink);
    border-radius: 24px;
    color: #fff;
    padding: 44px;
}

.authority-disclosure .authority-heading h2 { color: #fff; }
.authority-disclosure .authority-heading > span { color: #6fe0cc; }

.authority-disclosure-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.authority-disclosure-grid > div {
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 14px;
    padding: 24px;
}

.authority-disclosure-grid h3 { color: #fff; }
.authority-disclosure-grid p { color: #cbdce8; }

.editorial-review-card {
    align-items: center;
    background: #fff;
    border: 1px solid var(--authority-line);
    border-left: 5px solid var(--authority-teal);
    border-radius: 14px;
    display: grid;
    gap: 18px;
    grid-template-columns: 48px 1fr auto;
    margin: 54px auto 0;
    max-width: 1180px;
    padding: 20px 24px;
}

.editorial-review-mark {
    align-items: center;
    background: var(--authority-mint);
    border-radius: 50%;
    color: var(--authority-teal);
    display: flex;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 800;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.editorial-review-copy > span {
    color: #087a6e;
    display: block;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.editorial-review-copy strong { color: var(--authority-ink); display: block; margin: 2px 0 3px; }
.editorial-review-copy strong a,
.editorial-review-meta a { color: #087a6e; }
.editorial-review-copy p { color: var(--authority-muted); font-size: 13px; line-height: 1.5; margin: 0; }
.editorial-review-meta { align-items: flex-end; display: flex; flex-direction: column; font-size: 13px; gap: 5px; text-align: right; }
.editorial-review-meta time { color: var(--authority-ink); font-weight: 800; }

.author-profile-hero {
    align-items: stretch;
    background: var(--authority-ink);
    border-radius: 26px;
    box-shadow: var(--authority-shadow);
    display: grid;
    grid-template-columns: 340px 1fr;
    overflow: hidden;
}

.author-profile-photo { background: #dbece8; min-height: 420px; }
.author-profile-photo img { display: block; height: 100%; object-fit: cover; width: 100%; }

.author-profile-intro {
    align-self: center;
    padding: 48px 56px;
}

.author-profile-intro .authority-kicker { color: #75e0ce; }
.author-profile-intro h1 { color: #fff; margin-bottom: 10px; }
.author-profile-intro > strong { color: var(--authority-gold); display: block; font-size: 19px; margin-bottom: 22px; }
.author-profile-intro > p { color: #d2e2ed; }

.author-profile-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.author-profile-actions a,
.research-next-steps a {
    background: var(--authority-gold);
    border: 2px solid var(--authority-gold);
    border-radius: 8px;
    color: var(--authority-ink);
    font-weight: 900;
    padding: 13px 18px;
    text-decoration: none;
}

.author-profile-actions a.is-secondary { background: transparent; color: #fff; }

.author-about-copy { color: var(--authority-muted); font-size: 18px; line-height: 1.8; max-width: 900px; }
.author-about-copy p { margin: 0 0 16px; }

.author-focus-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 30px;
}

.author-focus-grid article {
    background: #fff;
    border: 1px solid var(--authority-line);
    border-radius: 16px;
    padding: 26px;
}

.author-responsibility-section {
    align-items: start;
    background: #e9f6f3;
    border-radius: 22px;
    display: grid;
    gap: 44px;
    grid-template-columns: .9fr 1.1fr;
    margin-top: 70px;
    padding: 42px;
}

.author-responsibility-section > div > p { color: var(--authority-muted); line-height: 1.7; margin: 18px 0 0; }
.author-responsibility-section ol { list-style: none; margin: 0; padding: 0; }
.author-responsibility-section li { align-items: start; border-bottom: 1px solid #c7ddd8; display: grid; gap: 12px; grid-template-columns: 24px 1fr; padding: 14px 0; }
.author-responsibility-section li:first-child { padding-top: 0; }
.author-responsibility-section li:last-child { border: 0; padding-bottom: 0; }
.author-responsibility-section li span { color: var(--authority-teal); font-weight: 900; }
.author-responsibility-section li p { color: #314d61; line-height: 1.55; margin: 0; }

.author-resource-grid { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.author-resource-grid a { align-items: center; background: #fff; border: 1px solid var(--authority-line); border-radius: 14px; color: var(--authority-ink); display: grid; gap: 4px 12px; grid-template-columns: 1fr auto; padding: 22px; text-decoration: none; }
.author-resource-grid strong { font-size: 17px; }
.author-resource-grid span { color: var(--authority-muted); font-size: 14px; }
.author-resource-grid em { color: var(--authority-teal); font-size: 24px; font-style: normal; grid-column: 2; grid-row: 1 / span 2; }
.author-resource-grid a:hover { border-color: var(--authority-teal); transform: translateY(-2px); }

.research-method-card > span { color: #73dfcb; font-size: 12px; font-weight: 900; letter-spacing: .14em; margin-bottom: 12px; text-transform: uppercase; }
.research-method-card p { color: #d2e2ed; line-height: 1.65; margin: 16px 0 0; }

.research-reading-guide {
    align-items: baseline;
    background: #fff5dc;
    border: 1px solid #edd59d;
    border-radius: 14px;
    display: grid;
    gap: 18px;
    grid-template-columns: auto 1fr;
    margin-top: 28px;
    padding: 20px 24px;
}

.research-reading-guide strong { color: #68480c; white-space: nowrap; }
.research-reading-guide p { color: #725b2d; line-height: 1.55; margin: 0; }

.mistake-pattern-list { display: grid; gap: 22px; margin-top: 68px; }
.mistake-pattern { background: #fff; border: 1px solid var(--authority-line); border-radius: 20px; box-shadow: 0 12px 38px rgba(8, 35, 64, .06); overflow: hidden; }
.mistake-pattern > header { align-items: center; background: #f0f8f6; border-bottom: 1px solid #d4e4e0; display: flex; gap: 20px; padding: 24px 28px; }
.mistake-pattern > header > span { color: var(--authority-coral); font-family: Georgia, "Times New Roman", serif; font-size: 40px; font-weight: 800; }
.mistake-pattern header small { color: #087a6e; display: block; font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.mistake-pattern h2 { color: var(--authority-ink); font-family: Georgia, "Times New Roman", serif; font-size: 28px; line-height: 1.18; margin: 4px 0 0; }
.mistake-pattern-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mistake-pattern-grid > div { border-right: 1px solid #e1e9ef; border-top: 1px solid #e1e9ef; min-height: 175px; padding: 25px 28px; }
.mistake-pattern-grid > div:nth-child(odd) { border-left: 0; }
.mistake-pattern-grid > div:nth-child(-n+2) { border-top: 0; }
.mistake-pattern-grid > div:nth-child(even) { border-right: 0; }
.mistake-pattern-grid > div.is-example { background: #fffaf0; }
.mistake-pattern-grid strong { color: var(--authority-ink); display: block; font-size: 15px; margin-bottom: 9px; }
.mistake-pattern-grid p { color: var(--authority-muted); line-height: 1.65; margin: 0; }
.mistake-pattern-grid a { color: #087a6e; display: inline-block; font-size: 14px; font-weight: 900; margin-top: 12px; }

.research-limitations {
    align-items: start;
    background: var(--authority-ink);
    border-radius: 22px;
    color: #fff;
    display: grid;
    gap: 40px;
    grid-template-columns: .85fr 1.15fr;
    margin-top: 70px;
    padding: 42px;
}

.research-limitations h2 { color: #fff; }
.research-limitations .authority-kicker { color: #73dfcb; }
.research-limitations ul { margin: 0; padding-left: 22px; }
.research-limitations li { color: #d2e2ed; line-height: 1.65; margin-bottom: 14px; padding-left: 5px; }
.research-limitations li:last-child { margin-bottom: 0; }

.research-next-steps { align-items: center; display: flex; gap: 34px; justify-content: space-between; margin-top: 68px; }
.research-next-steps > div:last-child { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; min-width: 330px; }
.research-next-steps a.is-secondary { background: #fff; border-color: var(--authority-line); }

.authority-shell a:focus-visible,
.authority-shell button:focus-visible {
    outline: 3px solid #ef9f25;
    outline-offset: 3px;
}

@media (max-width: 900px) {
    .authority-hero,
    .author-responsibility-section,
    .research-limitations { grid-template-columns: 1fr; }
    .authority-principle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .authority-workflow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .authority-workflow article:nth-child(3n) { border-right: 0; }
    .authority-workflow article:nth-child(2n) { border-right: 1px solid var(--authority-line); }
    .authority-workflow article:nth-last-child(-n+3) { border-bottom: 0; }
    .authority-workflow article:nth-last-child(-n+2) { border-bottom: 1px solid var(--authority-line); }
    .authority-workflow article { border-radius: 0 !important; }
    .author-profile-hero { grid-template-columns: 260px 1fr; }
    .author-profile-photo { min-height: 380px; }
    .author-profile-intro { padding: 38px; }
    .author-profile-intro h1 { font-size: 48px; }
    .research-next-steps { align-items: flex-start; flex-direction: column; }
    .research-next-steps > div:last-child { justify-content: flex-start; min-width: 0; }
}

@media (max-width: 640px) {
    .authority-shell { padding: 24px 0 54px; }
    .authority-container { padding: 0 16px; }
    .authority-hero { border-radius: 18px; gap: 20px; padding: 34px 22px 22px; }
    .authority-hero h1,
    .author-profile-intro h1 { font-size: 38px; }
    .authority-hero > div > p,
    .author-profile-intro > p { font-size: 17px; }
    .authority-policy-card,
    .research-method-card { padding: 24px; }
    .authority-section { margin-top: 54px; }
    .authority-principle-grid,
    .authority-disclosure-grid,
    .authority-split-section,
    .author-focus-grid,
    .author-resource-grid,
    .mistake-pattern-grid { grid-template-columns: 1fr; }
    .authority-principle-grid article { min-height: 0; }
    .authority-principle-grid article > strong { margin-bottom: 20px; }
    .authority-source-section,
    .authority-disclosure,
    .author-responsibility-section,
    .research-limitations { border-radius: 16px; padding: 26px 20px; }
    .authority-source-list li { align-items: start; grid-template-columns: 40px 1fr; padding: 16px; }
    .authority-source-list li > span { font-size: 18px; height: 38px; width: 38px; }
    .authority-workflow { grid-template-columns: 1fr; }
    .authority-workflow article { border-right: 1px solid var(--authority-line) !important; min-height: 0; }
    .authority-workflow article:last-child { border-bottom: 1px solid var(--authority-line); }
    .editorial-review-card { align-items: start; gap: 12px; grid-template-columns: 42px 1fr; padding: 18px; }
    .editorial-review-meta { align-items: flex-start; grid-column: 2; text-align: left; }
    .author-profile-hero { grid-template-columns: 1fr; }
    .author-profile-photo { max-height: 390px; min-height: 0; }
    .author-profile-photo img { height: 390px; object-position: center top; }
    .author-profile-intro { padding: 30px 22px 34px; }
    .author-profile-actions { align-items: stretch; flex-direction: column; }
    .author-profile-actions a { text-align: center; }
    .research-reading-guide { grid-template-columns: 1fr; }
    .mistake-pattern > header { align-items: flex-start; padding: 20px; }
    .mistake-pattern h2 { font-size: 23px; }
    .mistake-pattern-grid > div { border-right: 0; border-top: 1px solid #e1e9ef !important; min-height: 0; padding: 22px; }
    .mistake-pattern-grid > div:first-child { border-top: 0 !important; }
    .research-next-steps > div:last-child { align-items: stretch; flex-direction: column; width: 100%; }
    .research-next-steps a { text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
    .author-resource-grid a { transition: none; }
}
