/* Add-on extension of the approved hospitality layout. */
.sp-addon-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 35px}
.sp-addon-card{display:flex;flex-direction:column;align-items:start;gap:15px;min-width:0;color:#101612}
.sp-addon-card-image{width:100%;height:290px;overflow:hidden;background:#e7ece3;margin:0 0 8px}
.sp-addon-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.sp-addon-card-image.is-screen{background:#121713;display:flex;align-items:center}
.sp-addon-card-image.is-screen img{height:auto;object-fit:contain}
.sp-addon-card:hover .sp-addon-card-image img{transform:scale(1.025)}
.sp-addon-card h3{font-size:29px;line-height:1.2;letter-spacing:-.04em;margin:0}
.sp-addon-card p{font-size:18px;line-height:1.55;color:#526056;max-width:38ch;margin:0}
.sp-addon-card .sp-text-link{margin-top:auto;padding-top:8px;font-size:15px}
.sp-addon-page .sp-addon-screen{display:flex;align-items:center;background:#111611;height:550px}
.sp-addon-page .sp-addon-screen img{height:auto;object-fit:contain;transform:none!important}
.sp-addon-caption{position:absolute;left:20px;right:20px;bottom:13px;font-size:12px;color:#263c2a;background:#fffffff2;padding:9px 12px;z-index:2;line-height:1.4}
.sp-addon-tv-view{margin:0;background:#eef2e9;min-width:0;align-self:center}
.sp-addon-tv-view img{display:block;width:100%;height:auto}
.sp-addon-tv-view figcaption{padding:15px 20px;font-size:13px;line-height:1.4;color:#526753}
.sp-addon-page .sp-related .sp-addon-directory{grid-template-columns:repeat(2,minmax(0,1fr))}
.site-finished a.addon-mod{color:inherit;transition:background .2s}
.site-finished a.addon-mod:hover{background:#edf3e8}
.site-finished a.addon-mod h4{text-decoration:underline;text-underline-offset:5px;text-decoration-color:#b4c9b5}
@media(max-width:767px){.sp-addon-directory,.sp-addon-page .sp-related .sp-addon-directory{grid-template-columns:1fr;gap:40px}.sp-addon-card-image{height:300px}.sp-addon-page .sp-addon-screen{height:auto;min-height:240px;max-height:none}.sp-addon-page .sp-addon-screen img{width:100%}.sp-addon-card h3{font-size:27px}.sp-addon-caption{left:10px;right:10px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.sp-addon-card-image img{transition:none!important;transform:none!important}}
/* Preserve the full native TV frame rather than cropping the screenshot. */
.sp-addon-card-image.is-screen img{width:100%;height:100%;object-fit:contain}
.sp-addon-page .sp-addon-screen{height:auto;min-height:0;max-height:none;aspect-ratio:16/9;align-self:center}
