.book{--book-embed-min:640px}.book-hero{padding-bottom:clamp(32px,5vw,56px)}.book-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);align-items:center;gap:clamp(28px,5vw,64px);display:grid}.book-hero .dfy-badges{margin-top:24px}.book-jump{margin-top:26px}.book-jump svg{transition:transform var(--dfy-fast) var(--dfy-ease)}.book-jump:hover svg{transform:translateY(2px)}.book-topics{border-radius:var(--dfy-radius-lg);background:var(--dfy-surface);border:1px solid var(--dfy-line);box-shadow:var(--dfy-lift);padding:clamp(22px,3vw,30px)}.book-topics h2{margin:0 0 18px;font-size:1.25rem}.book-topics ul{gap:18px;margin:0;padding:0;list-style:none;display:grid}.book-topics li{grid-template-columns:36px minmax(0,1fr);align-items:start;gap:14px;display:grid}.book-topics strong{font-size:1rem;display:block}.book-topics p{color:var(--dfy-muted);margin:4px 0 0;font-size:.92rem;line-height:1.55}.book-topic-icon{background:var(--dfy-blush);width:36px;height:36px;color:var(--dfy-rose-deep);border-radius:50%;place-items:center;display:grid}.book-calendar{background:var(--dfy-surface);border-block:1px solid var(--dfy-line);padding:clamp(40px,6vw,80px) 0;scroll-margin-top:72px}.book-embed{position:relative}.book-embed-stage{min-height:var(--book-embed-min);position:relative}.book-embed-frame{width:100%;min-height:var(--book-embed-min)}.book-embed[data-status=ready] .book-embed-stage,.book-embed[data-status=booked] .book-embed-stage,.book-embed[data-status=ready] .book-embed-frame,.book-embed[data-status=booked] .book-embed-frame{min-height:0}.book-skeleton{border:1px solid var(--dfy-line);border-radius:var(--dfy-radius-lg);pointer-events:none;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr) minmax(0,.8fr);gap:16px;padding:clamp(12px,2vw,24px);display:grid;position:absolute;inset:0}.book-skeleton span{background:linear-gradient(100deg,#f6f1f3 30%,#fdf9fa 50%,#f6f1f3 70%) 0 0/200% 100%;border-radius:14px;animation:1.4s linear infinite book-shimmer}.book-skeleton-panel{height:45%}.book-skeleton-slots{height:70%}@keyframes book-shimmer{to{background-position:-200% 0}}.book-status{align-items:center;gap:10px;margin:0;display:flex}.book-status:has(span:not(.dfy-sr)){background:var(--dfy-sage-soft);color:var(--dfy-sage);border-radius:14px;margin:4px 4px 12px;padding:14px 16px;font-weight:600}.book-slow{background:var(--dfy-amber-soft);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 4px 4px;padding:14px 16px;display:flex}.book-slow p{margin:0;font-weight:600}.book-fallback{align-content:center;justify-items:start;gap:6px;min-height:280px;padding:clamp(20px,4vw,48px);display:grid}.book-fallback h3{margin:0;font-size:1.4rem}.book-fallback p{max-width:56ch;margin:0;line-height:1.6}.book-fallback-actions{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.book-noscript{margin:16px 0 0}.book-noscript a{color:var(--dfy-rose-deep);font-weight:700}.book-alt{padding:clamp(36px,5vw,64px) 0}.book-alt-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px 32px;display:flex}.book-alt h2{margin:0;font-size:clamp(1.4rem,1rem + 1.2vw,1.9rem)}.book-alt-links{flex-wrap:wrap;gap:10px;display:flex}.book-alt-links a{border:1px solid var(--dfy-line);background:var(--dfy-surface);min-height:44px;color:var(--dfy-ink);transition:border-color var(--dfy-fast), color var(--dfy-fast), transform var(--dfy-fast) var(--dfy-ease);border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.book-alt-links a:hover{border-color:var(--dfy-rose);color:var(--dfy-rose-deep);transform:translateY(-1px)}.book-alt-links a svg{transition:transform var(--dfy-fast) var(--dfy-ease)}.book-alt-links a:hover svg{transform:translate(2px)}@media (max-width:900px){.book-hero-grid{grid-template-columns:minmax(0,1fr)}.book-skeleton{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr)}.book-skeleton-panel,.book-skeleton-slots{height:80px}.book{--book-embed-min:560px}}@media (max-width:560px){.book-slow .dfy-btn,.book-fallback-actions .dfy-btn{width:100%}}@media (prefers-reduced-motion:reduce){.book-skeleton span{animation:none}.book-jump svg,.book-alt-links a,.book-alt-links a svg{transition:none}}
