/* Book sales pages; scoped to preserve the catalogue. */
.lp-homework .lp-editions {grid-template-columns:repeat(2,minmax(0,1fr));}
.lp.lp-homework .lp-hero-image img {object-position:center top;}
@media(max-width:680px){.lp-homework .lp-editions{grid-template-columns:1fr;}}
.lp { --lp-gold:#aa803e; --lp-paper:#faf6ed; font-family:var(--f-ui); font-size:18px; line-height:1.65; }
.lp h1,.lp h2,.lp h3 {font-family:var(--f-display);font-weight:400;}
.lp h2 {font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.17;letter-spacing:-.025em;}
.lp p {margin:0 0 1.25rem;}
.lp a {text-underline-offset:5px;}
.lp [id] {scroll-margin-top:110px;}
.lp-kicker {font:500 .72rem/1.6 var(--f-ui);letter-spacing:.19em;text-transform:uppercase;color:#80602d;}
.lp-hero {display:grid;grid-template-columns:1.07fr 1fr;background:var(--ink-deep);color:var(--ivory);}
.lp-hero-copy {padding:clamp(45px,5.8vw,90px) clamp(24px,5vw,80px);align-self:center;}
.lp-hero .lp-kicker {color:#d8bc85;}
.lp-hero h1 {font-size:clamp(2.6rem,4.4vw,4.8rem);line-height:1.08;letter-spacing:-.035em;max-width:720px;}
.lp-hero h1 em {font-style:normal;color:#e6c58b;}
.lp-hero-lede {font-size:clamp(1.15rem,1.65vw,1.5rem);line-height:1.4;padding-top:1.5rem;}
.lp-hero-text {font-size:1rem;color:#d6dce2;max-width:560px;}
.lp-hero-image {min-height:620px;position:relative;}
.lp-hero-image img {width:100%;height:100%;object-fit:cover;position:absolute;inset:0;object-position:center 44%;}
.lp-actions {display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin:28px 0 24px;}
.lp-button {display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 24px;background:#ead0a0;color:#102039;border:1px solid #ead0a0;text-decoration:none;font:500 .95rem/1.4 var(--f-ui);transition:background .18s,color .18s;min-height:50px;}
.lp-button:hover {background:#f7e8cb;color:#071228;}
.lp-text-link {font-size:.95rem;font-weight:500;}
.lp-availability {font-size:.8rem;letter-spacing:.02em;line-height:1.8;margin:0!important;color:#edf0f3;}
.lp-availability span {color:#b8c3ce;font-size:.75rem;}
.lp-facts {display:flex;justify-content:center;flex-wrap:wrap;gap:18px 50px;padding:23px 24px;background:#ede4d3;font-size:.82rem;color:#344252;}
.lp-facts span:first-child {font-size:.72rem;letter-spacing:.13em;font-weight:600;}
.lp-section {max-width:1180px;margin:auto;padding:85px 32px;}
.lp-scene,.lp-two {display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start;}
.lp-prose {font-size:1.06rem;}
.lp-prose p:last-child {margin-bottom:0;}
.lp-method {background:#e9e4d9;}
.lp-section-intro {max-width:720px;margin-bottom:40px;}
.lp-section-intro h2 {margin-bottom:20px;}
.lp-section-intro>p:last-child {color:#4f5b66;}
.lp-three {display:grid;grid-template-columns:repeat(3,1fr);gap:45px;}
.lp-three article {border-top:1px solid #bdb3a0;padding-top:24px;}
.lp-number {font:400 2.5rem var(--f-display);color:#8b6832;}
.lp-three h3 {font-size:1.7rem;margin:16px 0 14px;}
.lp-three p {font-size:.97rem;color:#3d4b58;}
.lp-method-end {margin:30px 0 0!important;font-size:.95rem;max-width:750px;}
.lp-book {display:grid;grid-template-columns:.75fr 1.25fr;gap:85px;align-items:center;}
.lp-cover-wrap {padding:32px;background:#ebe2d1;}
.lp-cover-wrap img {width:100%;height:auto;max-width:330px;margin:auto;box-shadow:10px 16px 28px #15203230;}
.lp-book h2 {margin-bottom:16px;}
.lp-subtitle {font-family:var(--f-text);font-style:italic;font-size:1.17rem;line-height:1.45;}
.lp-byline {font-size:.8rem;color:#5f6366;}
.lp-benefits {list-style:none;margin:25px 0;padding:0;}
.lp-benefits li {padding:14px 0 14px 22px;position:relative;border-bottom:1px solid #ded7ca;font-size:.95rem;}
.lp-benefits li:before {content:'↗';position:absolute;left:0;color:#8b6832;}
.lp-excerpt {background:var(--ink-deep);color:var(--ivory);}
.lp-excerpt .lp-section {max-width:950px;}
.lp-excerpt .lp-kicker {color:#d8bc85;}
.lp-excerpt h2 {font-size:1.7rem;margin-bottom:30px;}
.lp-excerpt blockquote {margin:0;font:400 clamp(1.55rem,2.5vw,2.25rem)/1.55 var(--f-text);}
.lp-excerpt-credit {font-size:.8rem;color:#d8bc85;}
.lp-excerpt-note {font-size:.94rem;color:#c2cbd5;max-width:600px;margin-top:30px!important;}
.lp-parts {display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;}
.lp details {border-top:1px solid #cfc7b9;}
.lp summary {cursor:pointer;position:relative;list-style:none;padding:22px 36px 22px 0;font-size:1.05rem;font-weight:500;}
.lp summary::-webkit-details-marker {display:none;}
.lp summary:after {content:'+';position:absolute;right:5px;top:20px;font-size:1.3rem;font-weight:400;}
.lp details[open]>summary:after {content:'−';}
.lp summary span {display:block;font-size:.65rem;letter-spacing:.15em;color:#80602d;margin-bottom:7px;}
.lp details ol {padding:0 24px 15px;font-size:.95rem;}
.lp details li {padding:4px 0;}
.lp-fit {background:#e9e4d9;}
.lp-editions {display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.lp-edition {border:1px solid #c9beaa;padding:28px;display:flex;flex-direction:column;background:var(--lp-paper);}
.lp-edition:first-child {background:var(--ink-deep);color:var(--ivory);border-color:var(--ink-deep);}
.lp-edition:first-child .lp-kicker {color:#d8bc85;}
.lp-edition h3 {font-size:2rem;margin-bottom:14px;}
.lp-edition p:not(.lp-kicker) {font-size:.95rem;}
.lp-edition .lp-button {margin-top:auto;font-size:.84rem;padding:14px;gap:8px;}
.lp-note {font-size:.8rem;color:#5d636a;max-width:760px;margin:24px 0 0!important;}
.lp-faq {display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding-top:0;}
.lp-faq details p {font-size:.95rem;padding-right:28px;color:#465361;}
.lp-last {background:#ebe2d1;text-align:center;padding:55px 24px;}
.lp-last p {font:400 1.8rem/1.35 var(--f-display);}
.lp-last strong {font-weight:400;}
.lp-last .lp-button {background:var(--ink-deep);color:var(--ivory);border-color:var(--ink-deep);}
.lp a:focus-visible,.lp summary:focus-visible,.lp-skip:focus-visible {outline:3px solid #ab7130;outline-offset:5px;}
.lp-skip {position:fixed;top:-100px;left:15px;padding:10px 20px;background:white;color:#071228;z-index:1000;}
.lp-skip:focus {top:10px;}
@media(min-width:1600px){.lp-hero-copy{padding-left:max(60px,calc((100vw - 1400px)/2));}}
@media(max-width:950px){.lp-hero-copy{padding:45px 28px;}.lp-hero-image{min-height:580px;}.lp-section{padding:65px 28px;}.lp-book{gap:40px;}.lp-three{gap:25px;}.lp-scene,.lp-two,.lp-faq{gap:35px;}.lp-edition{padding:20px;}}
@media(max-width:680px){.lp{font-size:17px;}.lp-hero{grid-template-columns:1fr;}.lp-hero-copy{padding:40px 24px;}.lp-hero h1{font-size:2.85rem;}.lp-hero-image{min-height:0;height:330px;}.lp-hero-image img{object-position:center 39%;}.lp-actions{gap:18px;}.lp-facts{justify-content:flex-start;gap:8px 22px;padding:20px 24px;}.lp-facts span:first-child{width:100%;}.lp-section{padding:52px 24px;}.lp-scene,.lp-two,.lp-book,.lp-faq{grid-template-columns:1fr;gap:28px;}.lp-three,.lp-editions,.lp-parts{grid-template-columns:1fr;gap:18px;}.lp-three article{padding-top:16px;}.lp-number{font-size:2rem;}.lp-three h3{margin:6px 0 10px;}.lp-cover-wrap{max-width:300px;margin:0 auto;padding:24px;}.lp-faq{padding-top:0;}.lp-section-intro{margin-bottom:28px;}.lp-edition{padding:26px;}.lp-edition .lp-button{font-size:.95rem;}.lp-excerpt h2{font-size:1.5rem;}.lp-hero-lede{font-size:1.25rem;}.lp-hero-text{font-size:1rem;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lp-button{transition:none;}}
.lp-conversation .lp-script-pair {display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:35px 0;}
.lp-conversation .lp-script-pair article {border-top:1px solid #bdb3a0;padding:24px 0 0;}
.lp-conversation .lp-script-pair blockquote {margin:0;font-size:clamp(1.4rem,2.5vw,2rem);}
@media(max-width:680px){.lp-conversation .lp-script-pair{grid-template-columns:1fr;gap:20px;}}
.lp-success .lp-hero {grid-template-columns:.85fr 1.15fr;}
.lp.lp-ellis .lp-hero-image img {object-position:center 24%;}
.lp-success .lp-hero h1 {font-size:clamp(2.65rem,3.8vw,3.65rem);}
.lp-success .lp-hero-image img {object-position:47% center;}
.lp-conversation .lp-hero-copy {padding:50px 44px;}
.lp-conversation .lp-hero h1 {font-size:clamp(2.5rem,3.3vw,3.25rem);}
@media(max-width:680px){.lp-conversation .lp-hero-copy{padding:40px 24px;}}
@media(max-width:680px){.lp-success .lp-hero{grid-template-columns:1fr;}.lp-success .lp-hero h1{font-size:2.65rem;}.lp-success .lp-hero-image{height:300px;}.lp-success .lp-hero-image img{object-position:center;}}
