.engine-home{margin:8px 0 54px;padding-bottom:36px;border-bottom:1px solid var(--line)}.engine-home[hidden]{display:none}.engine-home>.section-title{align-items:center;gap:20px;flex-wrap:wrap}.engine-home .section-title p:not(.eyebrow){color:var(--muted);font-size:13px;margin-top:10px}.engine-scope{font-size:11px;color:var(--muted);margin:12px 0 24px}.engine-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.engine-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;background:#fff}.engine-card>a{flex:1;display:block}.engine-card img,.engine-no-photo{width:100%;height:170px;object-fit:cover;display:grid;place-items:center;background:var(--surface);font-size:45px;color:var(--accent)}.engine-card>a>div{padding:16px}.engine-card h3{font-size:17px;line-height:1.4;margin:7px 0}.engine-card p,.engine-card small{font-size:11px;color:var(--muted);line-height:1.6}.engine-card strong{display:block;margin-top:12px;font-size:18px}.engine-card-actions{display:flex;gap:10px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:12px 16px}.engine-card-actions button{font-size:10px}.engine-card-actions button[data-engine-save]{border:1px solid var(--line);border-radius:50%;padding:7px;color:var(--accent)}.engine-home>h2{font-size:24px;margin:36px 0 22px}.engine-preferences>h2{font-size:25px;margin:0 0 18px}.engine-preferences p{font-size:13px;color:var(--muted);line-height:1.8;margin:18px 0}.engine-preferences fieldset{border:0;border-block:1px solid var(--line);padding:22px 0;margin:24px 0}.engine-preferences legend{font-size:18px;font-weight:750;padding-right:12px}.engine-interests{display:flex;flex-wrap:wrap;gap:10px}.engine-interests label{position:relative}.engine-interests input{position:absolute;opacity:0;inset:0}.engine-interests span{display:block;border:1px solid var(--line);border-radius:999px;padding:10px 16px;font-size:12px;cursor:pointer}.engine-interests input:checked+span{border-color:var(--accent);background:var(--blue-soft);color:var(--accent)}.engine-interests input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}.engine-toggle{display:flex!important;align-items:center;gap:12px;font-size:13px;font-weight:650}.engine-toggle input{flex:none;width:18px;height:18px;accent-color:var(--accent)}.engine-form-actions{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin:26px 0}.engine-preferences details{border-top:1px solid var(--line);padding-top:20px}.engine-preferences [role=status]{color:var(--accent)}
@media(max-width:1000px){.engine-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.engine-cards{gap:12px}.engine-card img,.engine-no-photo{height:132px}.engine-card>a>div{padding:12px}.engine-card h3{font-size:14px}.engine-card strong{font-size:16px}.engine-card-actions{padding:10px;flex-wrap:wrap}.engine-card-actions button{font-size:10px}.engine-home .section-title h2{font-size:26px}.engine-interests span{padding:9px 13px}.engine-form-actions{align-items:stretch;flex-direction:column}}

.engine-card-actions [aria-pressed=true] .heart-icon{fill:var(--accent);stroke:var(--accent)}

.engine-city-country{display:block;color:var(--muted);font-size:10px;margin-top:3px;font-weight:500}
.engine-home{margin:8px 0 54px;padding-bottom:36px;border-bottom:1px solid var(--line)}.engine-home[hidden]{display:none}.engine-home>.section-title{align-items:center;gap:20px;flex-wrap:wrap}.engine-home .section-title p:not(.eyebrow){color:var(--muted);font-size:13px;margin-top:10px}.engine-scope{font-size:11px;color:var(--muted);margin:12px 0 24px}.engine-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.engine-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;background:#fff}.engine-card>a{flex:1;display:block}.engine-card img,.engine-no-photo{width:100%;height:170px;object-fit:cover;display:grid;place-items:center;background:var(--surface);font-size:45px;color:var(--accent)}.engine-card>a>div{padding:16px}.engine-card h3{font-size:17px;line-height:1.4;margin:7px 0}.engine-card p,.engine-card small{font-size:11px;color:var(--muted);line-height:1.6}.engine-card strong{display:block;margin-top:12px;font-size:18px}.engine-card-actions{display:flex;gap:10px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:12px 16px}.engine-card-actions button{font-size:10px}.engine-card-actions button[data-engine-save]{border:1px solid var(--line);border-radius:50%;padding:7px;color:var(--accent)}.engine-home>h2{font-size:24px;margin:36px 0 22px}.engine-preferences>h2{font-size:25px;margin:0 0 18px}.engine-preferences p{font-size:13px;color:var(--muted);line-height:1.8;margin:18px 0}.engine-preferences fieldset{border:0;border-block:1px solid var(--line);padding:22px 0;margin:24px 0}.engine-preferences legend{font-size:18px;font-weight:750;padding-right:12px}.engine-interests{display:flex;flex-wrap:wrap;gap:10px}.engine-interests label{position:relative}.engine-interests input{position:absolute;opacity:0;inset:0}.engine-interests span{display:block;border:1px solid var(--line);border-radius:999px;padding:10px 16px;font-size:12px;cursor:pointer}.engine-interests input:checked+span{border-color:var(--accent);background:var(--blue-soft);color:var(--accent)}.engine-interests input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}.engine-toggle{display:flex!important;align-items:center;gap:12px;font-size:13px;font-weight:650}.engine-toggle input{flex:none;width:18px;height:18px;accent-color:var(--accent)}.engine-form-actions{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin:26px 0}.engine-preferences details{border-top:1px solid var(--line);padding-top:20px}.engine-preferences [role=status]{color:var(--accent)}
@media(max-width:1000px){.engine-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.engine-cards{gap:12px}.engine-card img,.engine-no-photo{height:132px}.engine-card>a>div{padding:12px}.engine-card h3{font-size:14px}.engine-card strong{font-size:16px}.engine-card-actions{padding:10px;flex-wrap:wrap}.engine-card-actions button{font-size:10px}.engine-home .section-title h2{font-size:26px}.engine-interests span{padding:9px 13px}.engine-form-actions{align-items:stretch;flex-direction:column}}

.engine-card-actions [aria-pressed=true] .heart-icon{fill:var(--accent);stroke:var(--accent)}

.engine-city-country{display:block;color:var(--muted);font-size:10px;margin-top:3px;font-weight:500}

.engine-no-photo>.place-art,.nearby-no-photo>.place-art{width:100%;height:100%;position:relative;overflow:hidden;background:#e9f2ff;color:#3c78c5}
.engine-no-photo>.place-art>svg,.nearby-no-photo>.place-art>svg{width:100%;height:100%}.engine-no-photo .place-art-icon,.nearby-no-photo .place-art-icon{display:none}
.engine-no-photo,.nearby-no-photo,.regional-city-art{background:#e9f2ff;color:#3c78c5}

/* Discover: confident blue actions, clear typography and strong interactive states. */
body{--discover-action:#0866e8;--discover-action-hover:#064bb5;--discover-ink:#172c50;--discover-border:#b3c8e7;color:var(--discover-ink)}
body :is(button,input,textarea,select,a.primary){font-family:'Discover Sans','Avenir Next',Arial,sans-serif}
body :is(h1,h2,h3){color:#152b50;font-weight:800;letter-spacing:-.035em}
body :is(.primary,.primary-button,.profile-button),body #search>.primary{background:#0866e8!important;border-color:#0866e8!important;color:#fff!important;font-weight:800;box-shadow:0 5px 12px #0866e824}
body :is(.primary,.primary-button,.profile-button):hover,body #search>.primary:hover{background:#064bb5!important;border-color:#064bb5!important;box-shadow:0 7px 18px #0866e836}
body :is(.outline-button,.text-button){color:#154d9a;font-weight:750}
body .outline-button{background:#fff;border:1.5px solid #2876db;box-shadow:0 2px 5px #163d7110}
body .outline-button:hover{background:#e7f1ff;color:#083f93;border-color:#075bd0}
body .text-button:hover{color:#064bb5;text-decoration:underline;text-underline-offset:4px}
body :is(button,a,input,textarea,select):focus-visible{outline:3px solid #f0a400;outline-offset:3px}
body :is(button,.primary,.outline-button):disabled{opacity:.5;box-shadow:none!important;cursor:not-allowed}
body :is(.header nav a,.header nav button){font-weight:750;color:#263d60}
body .header nav :is(.active,[aria-current=page]){color:#075fda}
body :is(.card-info h3,.engine-card h3,.nearby-card h3){font-weight:800;line-height:1.35}
body :is(.category-section button,.program-filters button){font-weight:750;border-color:#a9c4e7;color:#1c487f}
body :is(.category-section button,.program-filters button)[aria-pressed=true]{background:#0866e8;color:#fff;border-color:#0866e8}
body :is(.save,.nearby-save,[data-engine-save]){color:#125cbe;background:#fff;border:1px solid #bbd0ed;box-shadow:0 3px 10px #11386920}
body :is(.save,.nearby-save,[data-engine-save])[aria-pressed=true]{color:#c51958;background:#fff0f5;border-color:#db5b88}
body :is(.nearby-photo,.engine-card>a>img,.engine-no-photo){aspect-ratio:1/1;height:auto;min-height:0}
body .nearby-photo>.place-art{width:100%;height:100%;aspect-ratio:1/1}
.live-search-results .card-open{grid-template-columns:210px minmax(0,1fr)}
.live-search-results .card-photo{height:210px;width:210px;aspect-ratio:1/1;overflow:hidden}
.live-search-results .card-photo>.place-art{height:100%;width:100%}
.live-search-results .card-info{padding:18px 22px!important}
.live-search-results .card-info h3{font-size:21px;font-weight:800}
@media(max-width:650px){.live-search-results .card-open{grid-template-columns:130px minmax(0,1fr)}.live-search-results .card-photo{width:130px;height:130px}.live-search-results .card-info{padding:12px!important}.live-search-results .card-info h3{font-size:17px}}

/* Shared Discover typography: strong titles, quieter readable body. */
body{font-family:'Discover Sans','Avenir Next',Arial,sans-serif;font-weight:425;line-height:1.5}
body :is(button,input,textarea,select){font-family:inherit}
body :is(h1,.hero h1,#detail-title,.profile-page-title){font-family:inherit;font-weight:800;line-height:1.2;letter-spacing:-.035em}
body :is(h2,h3,h4){font-family:inherit;font-weight:650;line-height:1.3;letter-spacing:-.02em}
body :is(.card-info h3,.engine-card h3,.nearby-card h3){font-weight:750}
body :is(button,.primary,.outline-button){font-weight:650}
body :is(p,.muted,.field-help){line-height:1.55}

body{font-family:'Discover Sans','Avenir Next',Arial,sans-serif!important;font-weight:425!important}
body :is(h2,h3,h4){font-weight:650!important}
body :is(h1,.hero h1,#detail-title,.profile-page-title){font-weight:800!important}
body :is(.card-info h3,.engine-card h3,.nearby-card h3){font-weight:750!important}

/* Readable visitor reviews across place and ticket detail pages. */
body .review-list .review,body #detail .review{padding:24px;border:1px solid #cbd9ed;border-radius:18px;background:#fff;margin:18px 0;color:#203452;font-size:16px}
body .review-list .review p,body #detail .review p,body #detail .attraction-review-highlights article p{font-family:inherit;font-size:17px;font-weight:500;line-height:1.65;color:#203452;margin:14px 0;overflow-wrap:anywhere}
body .review-list .contribution-author>strong,body #detail .contribution-author>strong{font-size:17px;font-weight:750;color:#142d51;line-height:1.4}
body .review-list .contribution-avatar,body #detail .contribution-avatar{width:50px;height:50px;font-size:18px;font-weight:750;background:#dceaff;color:#1457ab}
body .review-list .review time,body #detail .review time{display:block;font-size:14px;font-weight:500;line-height:1.5;color:#52647d;margin-top:8px}
body .review-list .review-score,body #detail .review-score{font-size:18px;font-weight:800;color:#9a5700;white-space:nowrap}
body #detail .attraction-review-highlights article{padding:22px;background:#f2f7ff;border-color:#cbdcf3}
body #detail .attraction-review-highlights article strong{font-size:17px;font-weight:750;color:#142d51}
body #detail .attraction-review-highlights article span{font-size:17px;font-weight:800;color:#9a5700}
body .review-list .review blockquote{background:#edf4ff;border-left:4px solid #0866e8;padding:16px 20px;margin:18px 0;border-radius:0 12px 12px 0}
@media(max-width:650px){body .review-list .review,body #detail .review{padding:18px}body .review-list .review p,body #detail .review p,body #detail .attraction-review-highlights article p{font-size:16px;line-height:1.65}body .review-list .contribution-author>strong,body #detail .contribution-author>strong{font-size:16px}body .review-list .review>div:first-child{flex-wrap:wrap;gap:12px}}

/* White abstract original illustration only when no real photo is available. */
body .place-art{background:#fff!important;border:1px solid #e4eaf2;color:#9aafc9!important;box-sizing:border-box}
body .place-art .place-art-scene{color:#9aafc9}
body .place-art .place-art-icon{background:#f4f7fb;color:#8099b8;border:1px solid #e3eaf3}
body .place-art small{color:#697b92}
