/* HomeCostEngine Interactive Book Preview — 2026-09-23 */
.hce-book-preview{scroll-margin-top:88px}
.hce-book-preview .section-head{align-items:end}
.hce-book-preview .section-head p{max-width:620px}
.hce-preview-shell{margin-top:28px}
.hce-preview-cover-stage{display:grid;grid-template-columns:minmax(250px,360px) minmax(0,1fr);gap:52px;align-items:center;max-width:960px;margin:0 auto;padding:34px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,#fff 0%,#fbf7f0 100%);box-shadow:0 24px 70px rgba(16,32,51,.12)}
.hce-preview-cover-wrap{position:relative;perspective:1100px}
.hce-preview-cover{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:7px;box-shadow:-12px 18px 34px rgba(16,32,51,.24);transform:rotateY(-8deg);transform-origin:left center;background:#102033}
.hce-preview-cover-wrap:before{content:"";position:absolute;left:7px;top:2%;bottom:2%;width:7px;z-index:2;border-radius:5px;background:linear-gradient(90deg,rgba(255,255,255,.4),rgba(0,0,0,.2));pointer-events:none}
.hce-preview-cover-copy h3{font-size:clamp(2rem,4vw,3.15rem);line-height:1.04;margin:10px 0 14px}
.hce-preview-cover-copy p{font-size:1.03rem;line-height:1.7;color:var(--ink-2);max-width:600px}
.hce-preview-meta{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 22px}
.hce-preview-meta span{padding:8px 11px;border:1px solid #e2d7c8;border-radius:999px;background:#fff7ec;color:#5f5345;font-size:.76rem;font-weight:800}
.hce-preview-open{min-width:210px}
.hce-preview-no-signup{display:block;margin-top:10px;color:#777066;font-size:.78rem}
.hce-reader[hidden]{display:none!important}
.hce-reader{max-width:1120px;margin:0 auto}
.hce-reader-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.hce-reader-top strong{font-size:.82rem;color:var(--ink)}
.hce-reader-progress{height:6px;flex:1;max-width:360px;border-radius:999px;background:#e8dfd3;overflow:hidden}
.hce-reader-progress i{display:block;height:100%;width:25%;background:#aa7640;border-radius:inherit;transition:width .25s ease}
.hce-book-spread{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:18px;background:#c7baa9;padding:12px;box-shadow:0 28px 70px rgba(16,32,51,.2);overflow:hidden;perspective:1600px}
.hce-book-spread:after{content:"";position:absolute;z-index:5;top:12px;bottom:12px;left:50%;width:24px;transform:translateX(-50%);pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(255,255,255,.4),rgba(0,0,0,.08));filter:blur(4px);opacity:.65}
.hce-book-page{position:relative;min-height:650px;padding:38px 36px 48px;background:#fffdf8;color:#172536;border:1px solid rgba(79,62,42,.12);overflow:hidden}
.hce-book-page:first-child{border-radius:11px 2px 2px 11px}
.hce-book-page:last-child{border-radius:2px 11px 11px 2px}
.hce-book-page.is-flipping{animation:hcePageFlip .36s ease}
@keyframes hcePageFlip{0%{opacity:.45;transform:rotateY(-7deg) translateX(8px)}100%{opacity:1;transform:none}}
.hce-page-kicker{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px;color:#9a6a35;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.hce-book-page h3{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.55rem,2.4vw,2rem);line-height:1.12;margin:0 0 14px;color:#102033}
.hce-book-page .hce-page-intro{font-size:.92rem;line-height:1.65;color:#465362;margin:0 0 18px}
.hce-page-list{display:grid;gap:9px;margin:0 0 20px;padding:0;list-style:none}
.hce-page-list li{position:relative;padding-left:24px;font-size:.86rem;line-height:1.48;color:#394755}
.hce-page-list li:before{content:"✓";position:absolute;left:0;top:0;color:#a26d35;font-weight:900}
.hce-preview-table-wrap{overflow:auto;margin:18px 0}
.hce-preview-table{width:100%;border-collapse:collapse;font-size:.78rem;background:#fff}
.hce-preview-table th,.hce-preview-table td{padding:9px 10px;border:1px solid #e4dbcf;text-align:left;vertical-align:top}
.hce-preview-table th{background:#f5eee4;color:#5b4d3e;font-size:.69rem;text-transform:uppercase;letter-spacing:.045em}
.hce-preview-table td:last-child{font-weight:700;color:#172536}
.hce-page-note{margin-top:18px;padding:14px 15px;border-left:4px solid #a8753d;background:#f7f1e8;border-radius:0 8px 8px 0;font-size:.8rem;line-height:1.5;color:#4c443b}
.hce-page-footer{position:absolute;left:36px;right:36px;bottom:20px;display:flex;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid #e6ddd1;color:#8b8277;font-size:.65rem}
.hce-locked-page{display:grid;place-items:center;background:linear-gradient(150deg,#f9f5ee,#efe6da)}
.hce-lock-content{width:100%;filter:blur(2.5px);opacity:.2;pointer-events:none;user-select:none}
.hce-lock-panel{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:min(84%,360px);padding:24px;text-align:center;border:1px solid #d9ccbc;border-radius:16px;background:rgba(255,253,248,.96);box-shadow:0 16px 42px rgba(16,32,51,.14)}
.hce-lock-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 12px;border-radius:50%;background:#102033;color:white;font-size:1.25rem}
.hce-lock-panel h3{font-size:1.45rem!important;margin:0 0 8px!important}
.hce-lock-panel p{font-size:.82rem;color:#5d6670;line-height:1.5}
.hce-lock-topics{display:grid;gap:6px;margin:13px 0 16px;text-align:left;font-size:.75rem;color:#394755}
.hce-lock-topics span:before{content:"•";color:#aa7640;margin-right:7px}
.hce-reader-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:16px}
.hce-reader-nav .btn{padding:10px 15px}
.hce-reader-nav .next{justify-self:end}
.hce-reader-nav .prev{justify-self:start}
.hce-reader-nav span{font-size:.78rem;font-weight:800;color:#686158}
.hce-reader-nav button:disabled{opacity:.45;cursor:not-allowed}
.hce-mobile-buy{display:none}
.hce-book-preview .btn.hce-buy-now{background:#b65a46!important;border-color:#b65a46!important;color:#fff!important}
.hce-library-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important}
.hce-library-actions .btn{width:100%;text-align:center}
.hce-library-actions .hce-card-buy{background:#b65a46;color:#fff;border-color:#b65a46}
.hce-library-actions .hce-card-buy:hover{background:#9f4938;color:#fff}
.hce-library-preview-note{display:block;margin-top:7px;color:#7a7168;font-size:.67rem;font-weight:700;text-align:center}
@media(max-width:840px){
  .hce-preview-cover-stage{grid-template-columns:240px 1fr;gap:30px;padding:26px}
  .hce-book-page{padding:30px 26px 44px;min-height:620px}
  .hce-page-footer{left:26px;right:26px}
}
@media(max-width:760px){
  .hce-preview-cover-stage{grid-template-columns:1fr;max-width:430px;padding:20px}
  .hce-preview-cover-wrap{max-width:270px;margin:0 auto}
  .hce-preview-cover-copy{text-align:center}
  .hce-preview-meta{justify-content:center}
  .hce-book-spread{display:block;padding:7px}
  .hce-book-spread:after{display:none}
  .hce-book-page{min-height:610px;border-radius:10px!important;padding:28px 24px 48px}
  .hce-book-page.hce-page-right{display:none}
  .hce-page-footer{left:24px;right:24px}
  .hce-reader-top{align-items:flex-start;flex-direction:column}
  .hce-reader-progress{width:100%;max-width:none}
  .hce-reader-nav{grid-template-columns:1fr 1fr}
  .hce-reader-nav span{grid-column:1/-1;grid-row:1;text-align:center}
  .hce-reader-nav .prev{grid-column:1;grid-row:2;width:100%}
  .hce-reader-nav .next{grid-column:2;grid-row:2;width:100%}
  .hce-mobile-buy{position:sticky;bottom:10px;z-index:12;display:none;margin-top:12px;width:100%;box-shadow:0 12px 30px rgba(16,32,51,.24)}
  .hce-preview-shell.show-mobile-buy .hce-mobile-buy{display:block}
  .hce-library-actions{grid-template-columns:1fr}
}
@media(max-width:460px){
  .hce-book-page{padding:24px 18px 48px;min-height:640px}
  .hce-page-footer{left:18px;right:18px}
  .hce-preview-table{font-size:.72rem}
}
@media(prefers-reduced-motion:reduce){
  .hce-book-page.is-flipping,.hce-preview-cover{animation:none!important;transition:none!important;transform:none!important}
}


/* Trailer-first product flow */
.book-detail .hce-book-preview{
  padding:28px 0 38px;
  margin:0;
  border-bottom:1px solid var(--line);
}
.book-detail .hce-book-preview .container{
  padding-left:0;
  padding-right:0;
}
.book-detail .hce-book-preview + .book-detail-grid{
  margin-top:42px;
}
.hce-buy-after-preview{
  margin-top:22px;
}
@media(max-width:700px){
  .book-detail .hce-book-preview{
    padding-top:18px;
    padding-bottom:28px;
  }
  .book-detail .hce-book-preview + .book-detail-grid{
    margin-top:28px;
  }
}


/* Calculator links inside the book trailer */
.hce-preview-meta-top{justify-content:flex-start;margin:14px 0 18px}
.hce-page-tool-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:16px 0 42px;
  padding:12px 14px;
  border:1px solid #d8c8b5;
  border-radius:10px;
  background:#f7f1e8;
  color:#102033;
  text-decoration:none;
}
.hce-page-tool-link span{
  color:#8e6335;
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hce-page-tool-link strong{font-size:.78rem;text-align:right}
.hce-page-tool-link:hover,.hce-page-tool-link:focus-visible{background:#efe3d4;border-color:#b78a59}
.hce-preview-tools{
  margin-top:16px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.hce-preview-tools>strong{display:block;margin-bottom:9px;font-size:.78rem;color:var(--ink)}
.hce-preview-tools>div{display:flex;gap:8px 16px;flex-wrap:wrap}
.hce-preview-tools a{font-size:.78rem;font-weight:800;color:#8f6031;text-decoration:underline;text-underline-offset:3px}
.book-detail .hce-book-preview{padding-top:18px}
@media(max-width:760px){
 .hce-preview-meta-top{justify-content:center}
 .hce-page-tool-link{align-items:flex-start;flex-direction:column;margin-bottom:42px}
 .hce-page-tool-link strong{text-align:left}
 .hce-preview-tools>div{display:grid}
}
