*{box-sizing:border-box}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}h1,h2,h3,h4{font-family:var(--font-heading);margin:0 0 .5em;line-height:1.25}a{color:var(--accent);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline}img{max-width:100%;display:block}.site-shell{flex-direction:column;min-height:100vh;display:flex}.wrap{width:100%;max-width:820px;margin:0 auto;padding:0 1.25rem}main.wrap{flex:1;padding-top:2rem;padding-bottom:3rem}.site-header{border-bottom:1px solid var(--border);background:var(--bg-elevated)}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;padding-bottom:1rem;display:flex}.site-header .brand{color:var(--text);align-items:center;text-decoration:none;display:inline-flex}.site-header .brand:hover,.site-header .brand:focus-visible{text-decoration:none}.site-header .wordmark{color:var(--text);font-family:Georgia,Iowan Old Style,Times New Roman,serif;font-size:1.25rem;font-weight:700}.site-header .brand-logo{width:auto;max-height:48px;display:block}.site-header--left .wrap{flex-direction:row;justify-content:space-between}.site-header--centered .wrap{text-align:center;flex-direction:column;justify-content:center;align-items:center}.site-nav{flex-wrap:wrap;gap:1.5rem;display:flex}.site-nav a{color:var(--text);font-weight:500}.site-nav a:hover,.site-nav a:focus-visible{color:var(--accent)}.nav-dropdown{align-items:center;gap:.15rem;display:inline-flex;position:relative}.nav-dropdown-toggle{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 .2rem}.nav-dropdown-menu{z-index:20;background:var(--bg-elevated);border:1px solid var(--border);min-width:15rem;box-shadow:var(--shadow);border-radius:8px;margin:0;padding:.5rem 0;list-style:none;display:none;position:absolute;top:100%;right:0}.nav-dropdown-menu li a{white-space:nowrap;padding:.5rem 1rem;display:block}@media (width<=640px){.nav-dropdown-menu{left:0;right:auto}}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{display:block}.series-tagline{font-family:var(--font-heading);color:var(--accent);margin:.25rem 0 1.25rem;font-size:1.6rem;font-weight:700}.site-footer{border-top:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);font-size:.9rem}.site-footer .wrap{flex-direction:column;gap:.6rem;padding-top:1.75rem;padding-bottom:1.75rem;display:flex}.site-footer .tagline{margin:0}.footer-links{flex-wrap:wrap;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.footer-links a{color:var(--text-muted)}.footer-links a:hover,.footer-links a:focus-visible{color:var(--accent)}.footer-social{flex-wrap:wrap;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.copyright{margin:0}.card{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;margin-bottom:1.25rem;padding:1.25rem 1.5rem}.card img,.cover{box-shadow:var(--shadow);border-radius:6px;width:auto;max-height:400px}section+section{margin-top:2.5rem}.subtitle{color:var(--text-muted);margin-top:-.5em}.legal-updated{color:var(--text-muted);font-size:.9rem}.not-found{text-align:center;padding:2rem 0 3rem}.not-found p{color:var(--text-muted)}.book-card{align-items:flex-start;gap:1.5rem;display:flex}.book-card .cover-link{flex-shrink:0;display:block}.book-card .cover-col{flex-direction:column;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.release-date{color:var(--text-muted);text-align:center;margin:0;font-size:.85rem}.series-info{color:var(--text-muted);margin:-.4em 0 .75em;font-size:.9rem}.get-book-section{margin-top:1.5rem}.comps-section,.hubs-section{margin-top:2.5rem}.book-card .book-card-body{flex:1;min-width:0}.book-card .book-card-body>:first-child{margin-top:0}@media (width<=640px){.book-card{flex-direction:column}.book-card .cover{max-height:320px}}.book-thumb-list{flex-direction:column;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.book-thumb-list li,.book-list-item{align-items:flex-start;gap:1rem;display:flex}.book-list-item .book-list-item-body{flex:1;min-width:0}.book-list-item .book-list-item-body>:first-child{margin-top:0}.book-number{color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;margin:-.3em 0 .5em;font-size:.85rem;font-weight:600}.book-blurb{font-size:.75rem}.series-description{margin:0 0 .75em}.book-thumb-list .book-thumb{width:auto;max-height:150px;box-shadow:var(--shadow);border-radius:4px;flex-shrink:0}@media (width<=560px){.book-thumb-list li,.book-list-item{flex-direction:column}}.series-card{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.series-card-body{flex:1;min-width:0}.series-card-body>:first-child{margin-top:0}.series-covers-stack{flex-shrink:0;display:flex}.series-covers-stack .stacked-cover{width:auto;max-height:120px;box-shadow:var(--shadow);border:3px solid var(--bg-elevated);border-radius:4px;position:relative}.stacked-cover+.stacked-cover{margin-left:-2.75rem}@media (width<=640px){.series-card{flex-direction:column;align-items:stretch}.series-covers-stack{margin-top:1rem}}.author-card{align-items:flex-start;gap:1.5rem;display:flex}.author-photo{box-shadow:var(--shadow);border-radius:10px;flex-shrink:0;width:auto;max-height:220px}.author-card .author-card-body{flex:1;min-width:0}.author-card .author-card-body>:first-child{margin-top:0}@media (width<=640px){.author-card{flex-direction:column}.author-photo{max-height:200px}}.site-slogan{color:var(--text-muted);margin:0 0 2rem;font-family:Georgia,Iowan Old Style,Times New Roman,serif;font-size:1.15rem}.breadcrumbs{color:var(--text-muted);font-size:.9rem}.breadcrumbs .wrap:empty{display:none}.breadcrumbs .wrap:not(:empty){padding-top:.75rem}.breadcrumbs a{color:var(--text-muted)}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{color:var(--accent)}.breadcrumbs .sep{opacity:.6;margin:0 .4em}@media (width<=560px){.site-header--left .wrap{flex-direction:column;align-items:flex-start}}:root{--preorder-badge-color:#e2a83a}.preorder-badge{letter-spacing:.04em;text-transform:uppercase;color:var(--preorder-badge-color);vertical-align:middle;white-space:nowrap;border:1px solid;border-radius:4px;margin-left:.6em;padding:.15em .55em;font-size:.7rem;font-weight:700;display:inline-block}.hero-slideshow{margin-bottom:2.5rem;position:relative}.hero-slide{display:none}.hero-slide.is-active{display:flex}.hero-eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin:0 0 .35em;font-size:.8rem;font-weight:600}.hero-arrow{z-index:2;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);cursor:pointer;width:2.25rem;height:2.25rem;box-shadow:var(--shadow);border-radius:999px;justify-content:center;align-items:center;font-size:1.4rem;line-height:1;display:flex;position:absolute;top:45%;transform:translateY(-50%)}.hero-arrow:hover,.hero-arrow:focus-visible{color:var(--accent)}.hero-arrow-prev{left:-.75rem}.hero-arrow-next{right:-.75rem}.hero-dots{justify-content:center;gap:.5rem;margin-top:.75rem;display:flex}.hero-dot{background:var(--border);cursor:pointer;border:none;border-radius:50%;width:.5rem;height:.5rem;padding:0}.hero-dot.is-active{background:var(--accent)}@media (width<=640px){.hero-arrow-prev{left:.25rem}.hero-arrow-next{right:.25rem}}.coming-soon-viewport{position:relative}.coming-soon-row{scroll-snap-type:x proximity;scrollbar-width:thin;gap:1.25rem;margin:0;padding:.25rem .25rem .75rem;list-style:none;display:flex;overflow-x:auto}.coming-soon-item{scroll-snap-align:start;flex:none;width:11rem}.coming-soon-cover{width:auto;max-height:200px;box-shadow:var(--shadow);border-radius:6px}.coming-soon-item h3{margin:.6em 0 .2em;font-size:1rem}.coming-soon-arrow{z-index:2;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);cursor:pointer;width:2.25rem;height:2.25rem;box-shadow:var(--shadow);border-radius:999px;font-size:1.4rem;line-height:1;position:absolute;top:40%;transform:translateY(-50%)}.coming-soon-arrow:hover,.coming-soon-arrow:focus-visible{color:var(--accent)}.coming-soon-arrow-prev{left:-.75rem}.coming-soon-arrow-next{right:-.75rem}.contact-form,.subscribe-form{flex-direction:column;gap:1rem;max-width:32rem;margin-top:1rem;display:flex}.contact-form label,.subscribe-form label{color:var(--text);flex-direction:column;gap:.4rem;font-weight:600;display:flex}.contact-form input,.contact-form textarea,.subscribe-form input,.subscribe-form textarea{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.6rem .75rem;font-weight:400}.contact-form input:focus-visible,.contact-form textarea:focus-visible,.subscribe-form input:focus-visible,.subscribe-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.contact-form textarea{resize:vertical}.contact-form .cf-turnstile{margin-top:.25rem}.contact-form button[type=submit],.subscribe-form button[type=submit]{font:inherit;color:var(--accent-contrast);background:var(--accent);cursor:pointer;border:none;border-radius:8px;align-self:flex-start;margin-top:.25rem;padding:.65rem 1.5rem;font-weight:600}.contact-form button[type=submit]:hover,.subscribe-form button[type=submit]:hover{filter:brightness(1.08)}.contact-form button[type=submit]:focus-visible,.subscribe-form button[type=submit]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.contact-form__status,.subscribe-form__status{color:var(--text-muted);margin:0}.world-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0;font-size:.8rem;font-weight:600}.world-page h1{margin-top:.2rem}.world-lede{max-width:46rem;color:var(--text-muted);font-size:1.15rem;line-height:1.7}.world-next{margin-top:2rem;font-size:1.05rem}.place-list{margin:1rem 0 0;padding:0;list-style:none}.place-card{grid-template-columns:auto 1fr;align-items:start;gap:1.25rem;display:grid}.place-card h3{font-family:var(--font-heading);margin:0;font-size:1.35rem}.place-num{font-family:var(--font-heading);color:var(--accent);opacity:.35;font-size:2.2rem;font-weight:700;line-height:1}.place-tag{color:var(--accent);margin:.2rem 0 .6rem;font-style:italic}.seen-in{color:var(--text-muted);font-size:.9rem}.seen-in span{margin-right:.3rem;font-weight:600}.couple-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.couple-card{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.couple-art{aspect-ratio:2/3;background:color-mix(in srgb, var(--accent) 12%, var(--bg));display:block;overflow:hidden}.couple-art img{object-fit:cover;object-position:center;width:100%;height:100%;max-height:none;box-shadow:none;border-radius:0;transition:transform .4s}.couple-art:hover img{transform:scale(1.04)}.couple-body{flex-direction:column;flex:1;padding:1rem 1.25rem 1.25rem;display:flex}.couple-role{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0;font-size:.8rem;font-weight:600}.couple-body h2{font-family:var(--font-heading);margin:.25rem 0 0;font-size:1.6rem}.couple-names{color:var(--text-muted);margin:.1rem 0 .6rem;font-size:.9rem}.couple-links{margin:0 0 1rem;padding-left:1.1rem;font-size:.92rem}.couple-links li{margin-bottom:.3rem}.couple-book{margin-top:auto;font-weight:600}.reading-group{margin:2rem 0}.reading-group h2{margin-bottom:.2rem}.reading-group .series-tagline{margin-bottom:1rem;font-size:1.15rem}.reading-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.reading-grid a{color:var(--text);flex-direction:column;display:flex;position:relative}.reading-grid img{aspect-ratio:2/3;object-fit:cover;width:100%;box-shadow:var(--shadow);border-radius:6px;transition:transform .25s}.reading-grid a:hover img{transform:translateY(-4px)}.reading-num{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-top:.5rem;font-size:.75rem;font-weight:600}.reading-title{font-size:.9rem;line-height:1.3}.reading-badges{z-index:1;flex-direction:column;gap:4px;display:flex;position:absolute;top:6px;left:6px}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:.15rem .45rem;font-size:.68rem;font-weight:700}.badge-start{background:var(--accent);color:var(--accent-contrast)}.badge-pre{color:#fff;background:#b26a00}.reading-tip p{margin:.4rem 0}.trope-intro{max-width:46rem;font-size:1.05rem}.trope-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.trope-card a{background:var(--bg-elevated);border:1px solid var(--border);height:100%;box-shadow:var(--shadow);color:var(--text);border-radius:12px;flex-direction:column;padding:1.1rem 1.25rem 1.25rem;transition:transform .2s,border-color .2s;display:flex}.trope-card a:hover{border-color:var(--accent);transform:translateY(-3px)}.trope-covers{margin-bottom:.9rem;display:flex}.trope-covers img{aspect-ratio:2/3;object-fit:cover;width:64px;box-shadow:var(--shadow);border:2px solid var(--bg-elevated);border-radius:4px;max-height:none}.trope-covers img+img{margin-left:-18px}.trope-name{font-family:var(--font-heading);color:var(--accent);font-size:1.35rem;font-weight:700}.trope-count{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:.15rem 0 .5rem;font-size:.75rem;font-weight:600}.trope-desc{font-size:.92rem;line-height:1.5}.trope-box-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.trope-box a{background:var(--bg-elevated);border:1px solid var(--border);border-top:4px solid var(--accent);height:100%;box-shadow:var(--shadow);color:var(--text);border-radius:10px;flex-direction:column;padding:1rem 1.1rem;transition:transform .2s;display:flex}.trope-box a:hover{transform:translateY(-3px)}.trope-box-name{font-family:var(--font-heading);color:var(--accent);margin-bottom:.4rem;font-size:1.2rem;font-weight:700}.trope-box-meaning{flex:1;font-size:.92rem;line-height:1.5}.trope-box-more{color:var(--accent);margin-top:.75rem;font-size:.85rem;font-weight:600}.couple-slider{position:relative}.couple-track{scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:2/3;background:color-mix(in srgb, var(--accent) 8%, var(--bg));display:flex;overflow-x:auto}.couple-track::-webkit-scrollbar{display:none}.couple-slide{scroll-snap-align:start;flex:0 0 100%;justify-content:center;align-items:center;display:flex}.couple-slide img{object-fit:cover;width:100%;height:100%;max-height:none;box-shadow:none;border-radius:0}.couple-slide--extra img{object-fit:contain}.slider-btn{width:2.2rem;height:2.2rem;color:var(--text);cursor:pointer;box-shadow:var(--shadow);background:#ffffffe0;border:0;border-radius:50%;font-size:1.5rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.slider-prev{left:.5rem}.slider-next{right:.5rem}.slider-btn:hover{color:var(--accent);background:#fff}.slider-dots{justify-content:center;gap:.35rem;display:flex;position:absolute;bottom:.6rem;left:0;right:0}.slider-dots span{background:#fff9;border-radius:50%;width:7px;height:7px;box-shadow:0 0 2px #0006}.slider-dots span.on{background:var(--accent)}.free-book-hero{grid-template-columns:minmax(200px,320px) 1fr;align-items:start;gap:2rem;display:grid}.free-book-cover img{width:100%;height:auto;max-height:none;box-shadow:var(--shadow);border-radius:8px}.free-book h1{margin:.2rem 0 .3rem}.free-book-couple{color:var(--text-muted);margin:0 0 1rem}.free-book-tagline{font-family:var(--font-heading);color:var(--accent);font-size:1.35rem;font-style:italic}.free-book-blurb p{margin:.45rem 0}.free-book-btn{background:var(--accent);color:var(--accent-contrast);box-shadow:var(--shadow);border-radius:999px;margin-top:1.25rem;padding:.85rem 1.6rem;font-size:1.05rem;font-weight:700;display:inline-block}.free-book-btn:hover{color:var(--accent-contrast);filter:brightness(1.08)}.free-book-small{color:var(--text-muted);font-size:.85rem}.free-book-perks{margin-top:2rem}.free-book-perks li{margin-bottom:.5rem}.site-nav a[href=\/free-book]{color:var(--accent);font-weight:700}@media (width<=700px){.free-book-hero{grid-template-columns:1fr}.free-book-cover{max-width:240px}}@media (width>=641px){.nav-dropdown-menu--wide{columns:2;column-gap:0;min-width:30rem}.nav-dropdown-menu--wide li{break-inside:avoid}}@media (width<=640px){.nav-dropdown-menu--wide{max-height:70vh;overflow-y:auto}}.web-figure{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;margin:1.5rem 0 2rem;padding:1rem}.web-figure svg{width:100%;height:auto;display:block}.web-group ellipse{fill:#3b82f612;stroke:#3b82f659;stroke-dasharray:6 6}.web-group text{font:600 18px var(--font-heading,serif);fill:#3b6fd1}.web-edge line{stroke-width:3px}.web-edge text{paint-order:stroke;stroke:var(--bg-elevated);stroke-width:5px;font:600 15px system-ui,sans-serif}.web-edge--family line{stroke:var(--accent)}.web-edge--family text{fill:var(--accent)}.web-edge--friends line{stroke:#3b6fd1}.web-edge--friends text{fill:#3b6fd1}.web-edge--crush line{stroke:#d9822b;stroke-dasharray:2 6;stroke-linecap:round}.web-edge--crush text{fill:#b5651d}.web-edge--cameo line{stroke:#b9b3c4;stroke-dasharray:8 6;stroke-width:2px}.web-edge--cameo text{fill:#6f6880}.web-edge--tropes line{stroke:#8b5cf6;stroke-dasharray:12 5}.web-edge--tropes text{fill:#7c3aed}.web-ring{fill:var(--bg-elevated);stroke:var(--accent);stroke-width:3px}.web-node:hover .web-ring{stroke-width:6px}.web-label{font:700 18px var(--font-heading,serif);fill:var(--text);paint-order:stroke;stroke:var(--bg-elevated);stroke-width:5px}.web-key{color:var(--text-muted);flex-wrap:wrap;justify-content:center;gap:.5rem 1.25rem;margin-top:.75rem;font-size:.85rem;display:flex}.key:before{content:"";vertical-align:middle;border-top:3px solid;width:26px;height:0;margin-right:.4rem;display:inline-block}.key--family:before{border-color:var(--accent)}.key--friends:before{border-color:#3b6fd1}.key--crush:before{border-color:#d9822b;border-top-style:dotted}.key--cameo:before{border-color:#b9b3c4;border-top-style:dashed}.key--tropes:before{border-color:#8b5cf6;border-top-style:dashed}.link-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;display:grid}.link-grid .card{margin:0}.link-grid h2{color:var(--accent);margin-top:0;font-size:1.3rem}.link-grid li{margin-bottom:.5rem}.estate-list{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.estate-list li{background:color-mix(in srgb, var(--accent) 10%, var(--bg));border-radius:999px;margin:0;padding:.3rem .8rem;font-size:.9rem;font-weight:600}.char-groups{margin:1.5rem 0 0;padding:0;list-style:none}.char-group{grid-template-columns:90px 1fr;align-items:center;gap:1.25rem;display:grid}.char-group-cover img{aspect-ratio:2/3;object-fit:cover;width:90px;max-height:none}.char-pills{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.75rem;margin-top:.5rem;display:grid}.char-pill{border:1px solid var(--border);border-left:4px solid var(--accent);color:var(--text);background:var(--bg);border-radius:8px;flex-direction:column;padding:.7rem .9rem;display:flex}.char-pill:hover{border-color:var(--accent)}.char-pill-name{font-family:var(--font-heading);color:var(--accent);font-size:1.1rem;font-weight:700}.char-pill-role{color:var(--text-muted);font-size:.85rem}.char-head{grid-template-columns:220px 1fr;align-items:start;gap:2rem;display:grid}.char-cover img{width:100%;height:auto;max-height:none}.char-head h1{margin:.2rem 0}.char-role{font-family:var(--font-heading);color:var(--accent);margin:0;font-size:1.25rem;font-style:italic}.char-book{color:var(--text-muted)}.char-glance{grid-template-columns:max-content 1fr;gap:.4rem 1rem;margin:1rem 0 0;display:grid}.char-glance dt{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding-top:.15rem;font-size:.8rem;font-weight:700}.char-glance dd{margin:0}.char-boxes{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:2rem;display:grid}.char-box>div{background:var(--bg-elevated);border:1px solid var(--border);border-top:4px solid var(--accent);height:100%;box-shadow:var(--shadow);border-radius:10px;padding:1rem 1.2rem}.char-box h2{color:var(--accent);margin:0 0 .5rem;font-size:1.2rem}.char-box ul{margin:0;padding-left:1.1rem}.char-box li{margin-bottom:.35rem}.char-more{margin:.75rem 0 0;font-size:.85rem;font-weight:600}.couple-names a{color:var(--text-muted);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--accent) 50%, transparent)}.couple-names a:hover{color:var(--accent)}@media (width<=640px){.char-head{grid-template-columns:1fr}.char-cover{max-width:180px}.char-group{grid-template-columns:64px 1fr}.char-group-cover img{width:64px}}.place-link{margin:.25rem 0 .5rem;font-weight:700}.more-spots{margin-top:2rem;font-size:1.2rem}.spot-links{line-height:1.9}.side-heading{margin-top:2.5rem}.supporting-line{color:var(--text-muted);margin-top:1rem}.link-grid strong a,.estate-list a{color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--accent) 50%, transparent)}.char-box{margin:0}.char-boxes{align-items:stretch}.buy-group{margin:.75rem 0 1.25rem}.buy-group h3{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 .5rem;font-family:inherit;font-size:.8rem}.buy-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.buy-btn{border:2px solid var(--accent);color:var(--accent);background:var(--bg-elevated);border-radius:999px;padding:.55rem 1rem;font-size:.92rem;font-weight:600;line-height:1.2;transition:background .15s,color .15s;display:inline-block}.buy-btn:hover,.buy-btn--primary{background:var(--accent);color:var(--accent-contrast)}.buy-btn--primary:hover{filter:brightness(1.08)}.spot-books{color:var(--text-muted);margin-top:.6rem;font-size:.82rem;display:block}.spot-books strong{color:var(--text)}.web-edge text{font-size:19px}.web-label{font-size:21px}.web-list{margin-bottom:2rem;display:block}.web-list ul{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.key--crew:before{background:#3b82f612;border:2px dashed #3b82f68c;border-radius:50%;width:20px;height:12px}.web-tip{text-align:center;color:var(--text-muted);margin:.4rem 0 0;font-size:.85rem}.web-list ul{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.web-li{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;align-items:flex-start;gap:.6rem;padding:.6rem .8rem;line-height:1.4;display:flex}.web-li small{color:var(--text-muted)}.web-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:.35rem}.web-li--family .web-dot{background:var(--accent)}.web-li--friends .web-dot{background:#3b6fd1}.web-li--crush .web-dot{background:#d9822b}.web-li--cameo .web-dot{background:#b9b3c4}.web-li--tropes .web-dot{background:#8b5cf6}.site-slogan{margin-bottom:.75rem}.no-spice-row{flex-wrap:wrap;gap:.5rem;margin:0 0 2rem;display:flex}.no-spice-pill{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:999px;padding:.3rem .85rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-block}a.no-spice-pill:hover{background:color-mix(in srgb, var(--accent) 18%, transparent)}.newsletter-box{background:color-mix(in srgb, var(--accent) 7%, var(--bg-elevated));border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);box-shadow:var(--shadow);border-radius:14px;align-items:center;gap:1.5rem;margin:2.5rem 0;padding:1.5rem;display:flex}.newsletter-cover img{width:120px;height:auto;box-shadow:var(--shadow);border-radius:6px;display:block}.newsletter-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0;font-size:.78rem;font-weight:700}.newsletter-box h2{margin:.2rem 0 .5rem;font-size:1.4rem}.newsletter-box p{margin:0 0 .9rem}.newsletter-btn{background:var(--accent);color:#fff;border-radius:999px;padding:.6rem 1.3rem;font-weight:700;text-decoration:none;display:inline-block}.newsletter-btn:hover{filter:brightness(1.08)}@media (width<=560px){.newsletter-box{text-align:center;flex-direction:column}}.faq-list{gap:.75rem;margin-top:1.5rem;display:grid}.faq-item{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;padding:1rem 1.25rem}.faq-item summary{cursor:pointer;font-family:var(--font-heading,Georgia, serif);color:var(--accent);font-size:1.15rem;font-weight:700}.faq-item p{margin:.6rem 0 0}.faq-links{font-size:.92rem}.quiz{gap:1.25rem;margin-top:1.5rem;display:grid}.quiz-q{border:1px solid var(--border);background:var(--bg-elevated);box-shadow:var(--shadow);border-radius:12px;padding:1rem 1.25rem}.quiz-q legend{font-family:var(--font-heading,Georgia, serif);color:var(--accent);padding:0 .3rem;font-size:1.15rem;font-weight:700}.quiz-options{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.quiz-option{position:relative}.quiz-option input{opacity:0;position:absolute}.quiz-option span{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);cursor:pointer;border-radius:999px;padding:.45rem .95rem;display:inline-block}.quiz-option input:checked+span{background:var(--accent);color:#fff}.quiz-option input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.quiz-submit{cursor:pointer;border:0;justify-self:start;font-size:1rem}.quiz-result{margin-top:2rem}.quiz-result-card{background:color-mix(in srgb, var(--accent) 7%, var(--bg-elevated));border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);border-radius:14px;align-items:flex-start;gap:1.5rem;padding:1.5rem;display:flex}.quiz-result-card img{width:180px;height:auto;box-shadow:var(--shadow);border-radius:6px}.quiz-result-card h2{margin-top:0}.quiz-coming{color:var(--accent);font-weight:700}.quiz-again{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}@media (width<=560px){.quiz-result-card{text-align:center;flex-direction:column;align-items:center}}.countdown{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);box-shadow:var(--shadow);text-align:center;border-radius:14px;margin:0 0 2rem;padding:1rem 1.25rem}.countdown-head{margin:0 0 .6rem}.countdown-boxes{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.countdown-boxes span{background:color-mix(in srgb, var(--accent) 9%, transparent);border-radius:10px;flex-direction:column;min-width:4.2rem;padding:.5rem .4rem;display:flex}.countdown-boxes b{font-family:var(--font-heading,Georgia, serif);color:var(--accent);font-size:1.7rem;line-height:1.1}.countdown-boxes small{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.countdown-cta{margin:.9rem 0 0}.countdown-out{margin:0;font-size:1.1rem}.teaser-card{align-items:flex-start;gap:1.5rem;margin:1.5rem 0;display:flex}.teaser-cover{aspect-ratio:2/3;width:180px;box-shadow:var(--shadow);text-align:center;color:#fff;background:linear-gradient(160deg, var(--accent), #6d2a8c);border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.6rem;display:flex}.teaser-cover span{font-family:var(--font-heading,Georgia, serif);font-size:1.35rem;font-weight:700;line-height:1.2}.teaser-cover small{opacity:.85;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.teaser-facts{padding-left:1.1rem}.teaser-facts li{margin:.3rem 0}@media (width<=560px){.teaser-card{flex-direction:column;align-items:center}}.review-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem;padding:0;list-style:none;display:grid}.review-card{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;padding:1rem 1.25rem}.review-card blockquote{font-family:var(--font-heading,Georgia, serif);margin:0;font-size:1.05rem;font-style:italic}.review-by{color:var(--text-muted);margin:.5rem 0 0;font-size:.9rem}.town-map{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;margin:1.5rem 0 2rem;padding:.75rem}.town-map svg{border-radius:10px;width:100%;height:auto;display:block}.town-map figcaption{text-align:center;color:var(--text-muted);margin-top:.5rem;font-size:.85rem}.tm-pin path{fill:var(--accent);stroke:#fff;stroke-width:2px;transition:transform .15s}.tm-pin:hover path,.tm-pin:focus path{fill:#8e0f42}.tm-label{fill:#3a2433;paint-order:stroke;stroke:#fff;stroke-width:5px;font:700 17px system-ui,sans-serif}.tm-small{fill:#6b6b6b;font:italic 14px Georgia,serif}.tm-area{fill:#3a2433;opacity:.55;letter-spacing:.04em;font:700 26px Georgia,serif}.site-header .wordmark{color:var(--accent);font-family:Dancing Script,Brush Script MT,cursive;font-size:2.1rem;font-weight:700;line-height:1}.site-header .brand:hover .wordmark,.site-header .brand:focus-visible .wordmark{color:#8e0f42}.tm-falls{fill:#2f7fb3;paint-order:stroke;stroke:#fff;stroke-width:5px;font:italic 700 17px Georgia,serif}.site-header .wordmark{font-size:2.8rem}@media (width<=560px){.site-header .wordmark{font-size:2.3rem}}.about-contact{margin-top:2.5rem}.about-contact h2{margin-top:0}.countdown--cover{justify-content:center;align-items:center;gap:2rem;display:flex}.countdown-cover img{width:150px;height:auto;box-shadow:var(--shadow);border-radius:6px;display:block}@media (width<=560px){.countdown--cover{flex-direction:column;gap:1rem}.countdown-cover img{width:130px}}main :is(p,dd,blockquote,figcaption,li:not(.trope-card):not(.trope-box))>a:is([href^="/characters/"],[href^=\/victoria-falls]),main :is(p,dd,blockquote,li:not(.trope-card):not(.trope-box))>strong>a:is([href^="/characters/"],[href^=\/victoria-falls]),main a.auto-link:is([href^="/characters/"],[href^=\/victoria-falls]){color:inherit;text-decoration:none}main :is(p,dd,blockquote,figcaption,li:not(.trope-card):not(.trope-box))>a:is([href^="/characters/"],[href^=\/victoria-falls]):hover,main :is(p,dd,blockquote,li:not(.trope-card):not(.trope-box))>strong>a:is([href^="/characters/"],[href^=\/victoria-falls]):hover,main a.auto-link:is([href^="/characters/"],[href^=\/victoria-falls]):hover{color:var(--accent)}@media (hover:none){main :is(p,dd,blockquote,figcaption,li:not(.trope-card):not(.trope-box))>a:is([href^="/characters/"],[href^=\/victoria-falls]),main :is(p,dd,blockquote,li:not(.trope-card):not(.trope-box))>strong>a:is([href^="/characters/"],[href^=\/victoria-falls]),main a.auto-link:is([href^="/characters/"],[href^=\/victoria-falls]){text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent);text-underline-offset:3px;text-decoration-thickness:1px}}:root{--font-heading:Georgia, "Iowan Old Style", "Times New Roman", serif}:root[data-theme=dark]{--bg:#0b0e14;--bg-elevated:#1b2233;--text:#e8eaf0;--text-muted:#9aa3b5;--accent:#5fd3ff;--accent-contrast:#04141a;--border:#323a52;--shadow:0 8px 24px #0006}:root[data-theme=light]{--bg:#fbfaf7;--bg-elevated:#fff;--text:#1b1f27;--text-muted:#5b6472;--accent:#1c5cff;--accent-contrast:#fff;--border:#e3e1da;--shadow:0 8px 24px #14141414}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/dancing-script-latin-700-normal.CX8AaSVl.woff2)format("woff2"),url(/_astro/dancing-script-latin-700-normal.LI5MgW9m.woff)format("woff")}
