/* Author page · Premium editorial profile */
.ds-author-page{background:linear-gradient(180deg,#f5f2ee 0%,#f1efec 25%,#f7f5f2 100%);padding:0 0 72px;color:#211d1a}
.ds-author-page section{position:relative}
.ds-author-page .container{width:min(100% - 36px,1240px)}
.ds-author-hero-section{padding:44px 0 26px;background:radial-gradient(circle at top right,rgba(212,26,26,.07),transparent 30%),linear-gradient(180deg,#f7f3ef 0%,#f3efeb 100%)}
.ds-author-hero-grid,.ds-author-story-grid,.ds-author-journey-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:34px;align-items:center}
.ds-author-eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 14px;color:#8d1111;font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase}
.ds-author-eyebrow:before{content:'';width:38px;height:2px;background:linear-gradient(90deg,#cb1515,#efb66c)}
.ds-author-title{margin:0 0 16px;font:700 clamp(34px,4.3vw,58px)/1.06 Georgia,'Times New Roman',serif;color:#1f1916;letter-spacing:-.03em;text-wrap:balance}
.ds-author-intro{max-width:760px;margin:0;font-size:18px;line-height:1.78;color:#4a4440}
.ds-author-actions{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 28px}
.ds-author-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;transition:transform .24s ease,box-shadow .24s ease,background .24s ease,color .24s ease,border-color .24s ease}
.ds-author-btn:hover,.ds-author-btn:focus-visible{transform:translateY(-2px)}
.ds-author-btn-primary{background:linear-gradient(135deg,#cf1010,#94000d);color:#fff;box-shadow:0 12px 28px rgba(163,16,16,.22)}
.ds-author-btn-primary:hover,.ds-author-btn-primary:focus-visible{color:#fff;box-shadow:0 16px 34px rgba(163,16,16,.28)}
.ds-author-btn-secondary{border:1px solid rgba(145,20,20,.17);background:#ffffff;color:#211d1a;box-shadow:0 8px 22px rgba(22,28,40,.06)}
.ds-author-meta-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ds-author-meta-card{padding:18px 18px 16px;border-radius:20px;background:linear-gradient(180deg,#fff,#f7f2ee);border:1px solid rgba(126,62,34,.09);box-shadow:0 12px 30px rgba(20,24,33,.06)}
.ds-author-meta-card span{display:block;margin-bottom:8px;color:#7c726b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.ds-author-meta-card strong{display:block;font-size:15px;line-height:1.45;color:#211d1a}
.ds-author-hero-visual,.ds-author-story-visual,.ds-author-journey-visual{min-width:0}
.ds-author-image-frame{position:relative;padding:12px;border-radius:28px;background:linear-gradient(135deg,#ffffff,#f3ece6);border:1px solid rgba(144,81,43,.12);box-shadow:0 28px 55px rgba(18,23,31,.12);overflow:hidden}
.ds-author-image-frame:before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.65),transparent 45%,transparent 100%);pointer-events:none}
.ds-author-image-frame img{display:block;width:100%;height:auto;border-radius:18px;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .45s ease;box-shadow:0 8px 22px rgba(0,0,0,.14)}
.ds-author-image-frame:hover img{transform:scale(1.03);filter:saturate(1.04) contrast(1.03)}
.ds-author-image-frame-hero img{aspect-ratio:16/11}
.ds-author-image-frame-soft{background:linear-gradient(135deg,#fffefb,#efe7de)}
.ds-author-story-section,.ds-author-journey-section,.ds-author-craft-section,.ds-author-seo-section,.ds-author-closing-section{padding:22px 0}
.ds-author-story-copy h2,.ds-author-journey-copy h2,.ds-author-section-heading h2,.ds-author-craft-copy h2,.ds-author-seo-wrap h2,.ds-author-closing-box h2{margin:0 0 15px;font:700 clamp(28px,3.2vw,42px)/1.13 Georgia,'Times New Roman',serif;color:#1d1714;letter-spacing:-.02em}
.ds-author-story-copy p,.ds-author-journey-copy p,.ds-author-section-heading p,.ds-author-craft-copy p,.ds-author-seo-wrap p,.ds-author-closing-box p{margin:0 0 16px;font-size:17px;line-height:1.84;color:#47413d}
.ds-author-story-copy blockquote{margin:26px 0 0;padding:20px 24px;border-left:4px solid #c50a0a;border-radius:0 18px 18px 0;background:linear-gradient(180deg,#fff,#f7f1ea);font:italic 600 20px/1.6 Georgia,serif;color:#6a1d16;box-shadow:0 10px 24px rgba(18,23,31,.05)}
.ds-saga-story-link{color:#b10012;font-weight:800;text-decoration:none;background:linear-gradient(180deg,transparent 68%,rgba(207,16,16,.10) 0);transition:color .2s ease,background-size .25s ease}
.ds-saga-story-link:hover,.ds-saga-story-link:focus-visible{color:#7d0000;text-decoration:none}
.ds-author-section-heading{max-width:900px;margin:0 0 22px}
.ds-author-saga-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ds-author-saga-card{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) 28px;align-items:center;gap:18px;padding:24px 24px;border-radius:26px;background:linear-gradient(135deg,#201418 0%,#4b1d27 55%,#201116 100%);border:1px solid rgba(241,194,135,.22);box-shadow:0 20px 45px rgba(33,13,17,.22);overflow:hidden;min-height:146px;color:#fff;text-decoration:none!important;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.ds-author-saga-card:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(255,220,170,.18),transparent 32%),linear-gradient(120deg,transparent 0 46%,rgba(255,255,255,.06) 50%,transparent 54%);opacity:.95;pointer-events:none}
.ds-author-saga-card:hover,.ds-author-saga-card:focus-visible{transform:translateY(-4px);box-shadow:0 28px 55px rgba(33,13,17,.30);border-color:rgba(241,194,135,.34)}
.ds-author-saga-card-human{background:linear-gradient(135deg,#251915 0%,#5b382b 55%,#231714 100%)}
.ds-author-saga-emblem{width:72px;height:72px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,#d53b32,#7c1017);border:1px solid rgba(255,220,185,.30);box-shadow:0 10px 25px rgba(0,0,0,.23),inset 0 1px 0 rgba(255,255,255,.24);font:700 36px/1 Georgia,serif;color:#ffe3b0;position:relative;z-index:1}
.ds-author-saga-card-human .ds-author-saga-emblem{background:linear-gradient(145deg,#d79a58,#805337)}
.ds-author-saga-copy{position:relative;z-index:1;display:flex;flex-direction:column;gap:7px}
.ds-author-saga-copy strong{font-size:25px;line-height:1.15;letter-spacing:-.02em}
.ds-author-saga-copy small{font-size:14px;line-height:1.6;color:#efe0d6}
.ds-author-saga-arrow{position:relative;z-index:1;justify-self:end;font-size:26px;color:#ffe3b0;transition:transform .22s ease}
.ds-author-saga-card:hover .ds-author-saga-arrow,.ds-author-saga-card:focus-visible .ds-author-saga-arrow{transform:translate(3px,-3px)}
.ds-author-craft-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:26px;align-items:start}
.ds-author-craft-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ds-author-craft-card{padding:22px 20px;border-radius:22px;background:#fff;border:1px solid rgba(140,83,46,.10);box-shadow:0 14px 34px rgba(21,25,34,.06)}
.ds-author-craft-card h3{margin:0 0 10px;font-size:19px;color:#1f1916}
.ds-author-craft-card p{margin:0;font-size:15px;line-height:1.72;color:#56504c}
.ds-author-seo-wrap{padding:34px 36px;border-radius:28px;background:linear-gradient(145deg,#fff,#f5eee8);border:1px solid rgba(147,74,41,.12);box-shadow:0 20px 40px rgba(18,23,31,.08)}
.ds-author-closing-box{padding:38px 40px;border-radius:30px;background:linear-gradient(135deg,#1f1416,#4d1b20 60%,#1e1115);text-align:center;color:#fff;box-shadow:0 28px 52px rgba(24,9,12,.22);overflow:hidden}
.ds-author-closing-box h2{color:#fff}
.ds-author-closing-box p{max-width:840px;margin-inline:auto;color:#f2e8e1}
.ds-author-closing-box .ds-author-btn{margin-top:10px}

/* Elegant entrance on the author page */
.ds-author-page .ds-author-hero-copy,.ds-author-page .ds-author-hero-visual,.ds-author-page .ds-author-story-section,.ds-author-page .ds-author-journey-section,.ds-author-page .ds-author-sagas-section,.ds-author-page .ds-author-craft-section,.ds-author-page .ds-author-seo-section,.ds-author-page .ds-author-closing-section{animation:dsAuthorFade .9s ease both}
.ds-author-page .ds-author-hero-visual{animation-delay:.12s}.ds-author-page .ds-author-story-section{animation-delay:.16s}.ds-author-page .ds-author-journey-section{animation-delay:.22s}.ds-author-page .ds-author-sagas-section{animation-delay:.28s}.ds-author-page .ds-author-craft-section{animation-delay:.34s}.ds-author-page .ds-author-seo-section{animation-delay:.4s}.ds-author-page .ds-author-closing-section{animation-delay:.46s}
@keyframes dsAuthorFade{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Premium transition when opening Author */
.ds-author-transition{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;background:radial-gradient(circle at 50% 30%,rgba(180,37,37,.16),transparent 35%),linear-gradient(140deg,#0f0f13 0%,#1b1516 46%,#0c0d10 100%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .36s ease,visibility .36s ease;overflow:hidden}
.ds-author-transition.is-active{opacity:1;visibility:visible;pointer-events:all}
.ds-author-transition:before,.ds-author-transition:after{content:'';position:absolute;inset:-40%;background:conic-gradient(from 120deg,transparent 0 76%,rgba(247,190,128,.13) 83%,transparent 93%);animation:dsAuthorSpin 14s linear infinite}
.ds-author-transition:after{animation-direction:reverse;animation-duration:17s;opacity:.55}
.ds-author-transition-dialog{position:relative;z-index:1;display:grid;justify-items:center;gap:16px;padding:34px 24px;text-align:center;color:#fff}
.ds-author-transition-mark{width:94px;height:94px;border-radius:28px;display:grid;place-items:center;background:linear-gradient(145deg,#d23131,#7f0e18);border:1px solid rgba(255,230,201,.28);box-shadow:0 0 0 8px rgba(255,255,255,.06),0 0 65px rgba(194,24,24,.28);font:700 44px/1 Georgia,serif;color:#ffe3b0}
.ds-author-transition-tag{font-size:11px;font-weight:800;letter-spacing:.25em;color:#f0c38d;text-transform:uppercase}
.ds-author-transition-title{margin:0;font:700 clamp(30px,5vw,58px)/1.06 Georgia,'Times New Roman',serif;color:#fff7f0;letter-spacing:-.03em}
.ds-author-transition-sub{font-size:12px;letter-spacing:.16em;color:#dac3bb;text-transform:uppercase}
.ds-author-transition-bar{width:min(260px,65vw);height:3px;background:rgba(255,255,255,.14);border-radius:999px;overflow:hidden}
.ds-author-transition-bar span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#8e1d1d,#f2c28d,#db1d2f);transform-origin:left;animation:dsAuthorLoad .7s linear forwards}
@keyframes dsAuthorSpin{to{transform:rotate(360deg)}}
@keyframes dsAuthorLoad{from{transform:scaleX(0)}to{transform:scaleX(1)}}

@media(max-width:1100px){
 .ds-author-meta-cards{grid-template-columns:1fr}
 .ds-author-craft-grid{grid-template-columns:1fr}
 .ds-author-craft-cards{grid-template-columns:1fr 1fr 1fr}
}
@media(max-width:960px){
 .ds-author-hero-grid,.ds-author-story-grid,.ds-author-journey-grid,.ds-author-craft-grid{grid-template-columns:1fr}
 .ds-author-saga-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
 .ds-author-page{padding-bottom:54px}
 .ds-author-hero-section{padding-top:28px}
 .ds-author-title{font-size:33px}
 .ds-author-intro,.ds-author-story-copy p,.ds-author-journey-copy p,.ds-author-section-heading p,.ds-author-craft-copy p,.ds-author-seo-wrap p,.ds-author-closing-box p{font-size:16px;line-height:1.72}
 .ds-author-actions{flex-direction:column;align-items:stretch}
 .ds-author-btn{width:100%}
 .ds-author-meta-cards,.ds-author-craft-cards{grid-template-columns:1fr}
 .ds-author-saga-card{grid-template-columns:58px minmax(0,1fr) 22px;padding:19px 18px;border-radius:22px;min-height:126px}
 .ds-author-saga-emblem{width:58px;height:58px;border-radius:16px;font-size:31px}
 .ds-author-saga-copy strong{font-size:22px}
 .ds-author-seo-wrap,.ds-author-closing-box{padding:26px 22px}
 .ds-author-story-copy blockquote{font-size:18px;padding:18px 18px}
}
@media(prefers-reduced-motion:reduce){
 .ds-author-page *,.ds-author-transition,.ds-author-transition:before,.ds-author-transition:after,.ds-author-transition-bar span{animation:none!important;transition:none!important}
}

/* v3.1: in-page author links jump immediately instead of smooth-scrolling. */
html:has(.ds-author-page){scroll-behavior:auto}

/* First published book: a restrained editorial milestone inside the biography. */
.ds-author-debut{position:relative;margin:24px 0 26px;padding:23px 25px 21px;
 border:1px solid rgba(147,94,52,.20);border-left:4px solid #ad1420;border-radius:0 18px 18px 0;
 background:linear-gradient(120deg,#fffdfa 0%,#f7f0e8 100%);
 box-shadow:0 14px 30px rgba(23,25,34,.07)}
.ds-author-debut-eyebrow{display:block;margin-bottom:10px;color:#981323;
 font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.ds-author-debut h3{font:700 clamp(22px,2.4vw,29px)/1.18 Georgia,'Times New Roman',serif;
 color:#2a211e;margin:0 0 12px}
.ds-author-journey-copy .ds-author-debut p{margin:0;color:#4c413b;font-size:16px;line-height:1.75}
@media(max-width:700px){.ds-author-debut{padding:19px 19px 17px;margin:19px 0 23px}}
