/* Chicago's native provider presentation. Content and placements belong to TravelSpark. */
.site-footer__grid { margin-inline:auto; }
.site-footer__grid > * { min-width:0; }
.page-shell--tours .page-content { width:var(--content); max-width:1280px; margin-block:60px; }
.page-shell--tours .page-content > * { max-width:none; }
.tours-hero { display:grid; grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr); background:var(--ink); color:var(--bg); min-height:620px; }
.tours-hero__copy { min-width:0; padding:70px clamp(28px,calc((100vw - 1180px)/2),96px); padding-right:35px; align-self:center; }
.tours-hero__copy > p { font:600 13px/1.4 var(--ui); letter-spacing:.1em; text-transform:uppercase; color:var(--mist); }
.tours-hero__copy h1 { font:700 clamp(76px,8vw,128px)/.9 var(--display); margin:18px 0 25px; }
.tours-hero__copy > span { display:block; max-width:28ch; font-size:21px; margin-bottom:30px; }
.tours-hero__photos { display:grid; grid-template-columns:1fr .65fr; grid-template-rows:minmax(0,1.3fr) minmax(0,1fr); gap:8px; padding:24px 24px 24px 0; min-width:0; height:620px; }
.tours-hero__photos figure { margin:0; min-width:0; min-height:0; overflow:hidden; }
.tours-hero__photos figure:first-child { grid-row:span 2; }
.tours-hero__photos img { width:100%; height:100%; object-fit:cover; }
.tours-hero__photos figure:first-child img { object-position:62% center; }
.article-layout { grid-template-columns:minmax(0,1fr) 310px; gap:48px; }
.article-content,.provider-rail { min-width:0; }
.provider-rail__widget { position:static; }
.provider-rail { align-self:start; }
.provider-rail .travelspark-widget__grid--sidebar { display:grid!important; grid-template-columns:minmax(0,1fr)!important; gap:24px!important; }
.site-main .travelspark-widget:not(.travelspark-widget--text):not(.travelspark-widget--graphic) { border:0!important; border-radius:0!important; box-shadow:none!important; background:transparent!important; padding:0!important; }
.site-main :is(.travelspark-card,.travelspark-featured-card,.travelspark-live-card,.travelspark-hotel-card) { overflow:hidden; border:1px solid var(--mist)!important; border-radius:2px!important; background:var(--surface)!important; box-shadow:none!important; color:var(--ink)!important; min-width:0; }
.site-main :is(.travelspark-card,.travelspark-live-card) { display:flex!important; flex-direction:column!important; height:100%; }
.site-main :is(.travelspark-card,.travelspark-featured-card,.travelspark-live-card) img { width:100%!important; object-fit:cover!important; border-radius:0!important; }
.site-main .travelspark-card > a:first-child { display:block; aspect-ratio:16/10; overflow:hidden; }
.site-main .travelspark-card > a:first-child img { height:100%!important; }
.site-main :is(.travelspark-card__content,.travelspark-featured-card__content,.travelspark-live-card__body) { padding:22px!important; display:flex; flex-direction:column; flex:1; gap:10px; min-width:0; }
.site-main :is(.travelspark-card__title,.travelspark-featured-card__title,.travelspark-live-card__title) { font:700 29px/1.08 var(--display)!important; margin:0!important; color:var(--ink)!important; }
.site-main :is(.travelspark-card__title,.travelspark-featured-card__title,.travelspark-live-card__title) a { color:inherit!important; text-decoration:none; }
.site-main :is(.travelspark-card__description,.travelspark-featured-card__description,.travelspark-live-card__description) { font:400 15px/1.6 var(--ui)!important; color:var(--ink)!important; margin:0 0 8px!important; }
.site-main :is(.tsva-rating,.travelspark-card__rating,.travelspark-live-card__rating) { font:600 13px/1.4 var(--ui)!important; color:var(--brand)!important; background:transparent!important; }
.site-main :is(.travelspark-card__footer,.travelspark-live-card__footer) { display:flex!important; align-items:center; flex-wrap:wrap; gap:12px; border-top:1px solid var(--mist); padding-top:16px!important; margin-top:auto!important; }
.site-main :is(.travelspark-card__button,.travelspark-live-card__cta,.tsva-button) { background:var(--brand)!important; color:var(--surface)!important; border:0!important; border-radius:2px!important; box-shadow:none!important; min-height:46px; padding:12px 16px!important; font:600 14px/1.3 var(--ui)!important; text-decoration:none; }
.site-main :is(.travelspark-card__button,.travelspark-live-card__cta,.tsva-button):hover { background:var(--ink)!important; }
.site-main :is(.tsva-price,.travelspark-card__price,.travelspark-live-card__price) { font-family:var(--ui)!important; color:var(--ink)!important; }
.site-main .travelspark-widget__title { font-family:var(--display)!important; color:var(--ink)!important; }
.provider-rail .travelspark-widget__title { font-size:32px!important; }
.provider-rail .travelspark-card__content { padding:18px!important; }
.provider-rail .travelspark-card__title { font-size:28px!important; }
#main .travelspark-widget .travelspark-card { display:flex!important; flex-direction:column!important; grid-template-columns:none!important; border:1px solid var(--mist)!important; border-radius:2px!important; background:var(--surface)!important; box-shadow:none!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__media { width:100%!important; flex:none!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__image-link { display:block!important; width:100%!important; aspect-ratio:16/10; border-radius:0!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__image { width:100%!important; height:100%!important; aspect-ratio:16/10!important; object-fit:cover!important; border-radius:0!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__content { padding:20px!important; display:flex!important; flex-direction:column!important; gap:10px!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__title { font:700 28px/1.1 var(--display)!important; margin:0!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__title a { font:inherit!important; color:var(--ink)!important; }
#main .provider-rail .travelspark-widget__title { font:700 32px/1.1 var(--display)!important; color:var(--ink)!important; margin-bottom:20px!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__description { display:block!important; visibility:visible!important; font:400 15px/1.6 var(--ui)!important; margin:0 0 8px!important; color:var(--ink)!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__footer { display:flex!important; flex-wrap:wrap!important; gap:12px!important; border-top:1px solid var(--mist)!important; padding-top:16px!important; margin-top:auto!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__button { min-height:46px!important; background:var(--brand)!important; color:var(--surface)!important; border-radius:2px!important; padding:12px 16px!important; font:600 14px/1.3 var(--ui)!important; }
#main .travelspark-widget .travelspark-card .travelspark-card__rating { font:600 13px/1.4 var(--ui)!important; color:var(--brand)!important; }
.provider-field .travelspark-widget__title { font-size:40px; }
.affiliate-note,.tsva-powered { font:400 13px/1.5 var(--ui); }
.prose table { display:table; width:100%; border-collapse:separate; border-spacing:0; border:1px solid var(--mist); border-radius:3px; overflow:hidden; background:var(--surface); font:400 15px/1.55 var(--ui); margin-block:32px; }
.prose table th { background:var(--brand); color:var(--surface); font-weight:600; padding:16px; border:0; text-align:left; vertical-align:top; }
.prose table td { border:0; border-top:1px solid var(--mist); padding:16px; vertical-align:top; }
.prose table tbody tr:nth-child(even) { background:var(--bg); }
.chiawaits-table-scroll { overflow-x:auto; max-width:100%; border-radius:3px; }
.chiawaits-table-scroll:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.newsletter__form { background:var(--surface); padding:30px; border-top:4px solid var(--brand); }
.newsletter__form label,.chiawaits-contact-form label { display:block; font:600 15px/1.5 var(--ui); margin-bottom:8px; }
.newsletter__form input[type=email],.chiawaits-contact-form input:not([type=hidden]),.chiawaits-contact-form textarea { width:100%; max-width:100%; padding:12px 14px; border:1px solid var(--stone); border-radius:2px; color:var(--ink); background:var(--surface); font:400 17px/1.5 var(--ui); }
.newsletter__form input[type=submit] { background:var(--brand); color:var(--surface); border:0; padding:14px 22px; min-height:48px; font:600 15px var(--ui); cursor:pointer; }
.newsletter__form .newsletter-consent { display:flex; gap:10px; font-size:13px; font-weight:400; align-items:start; }
.newsletter-consent input { flex:0 0 auto; margin-top:4px; width:18px; height:18px; }
.form-note,.form-status { font:400 14px/1.6 var(--ui); }
.form-honeypot { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; overflow:hidden!important; clip-path:inset(50%)!important; }
.chiawaits-contact-form { max-width:680px; margin-block:30px; }
.chiawaits-contact-form textarea { resize:vertical; }
@media(max-width:1000px) {
 .article-layout { grid-template-columns:minmax(0,1fr); }
 .provider-rail .travelspark-widget__grid--sidebar { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
 .tours-hero { grid-template-columns:1fr; }
 .tours-hero__copy { padding:44px 30px; }
 .tours-hero__copy h1 { font-size:80px; }
 .tours-hero__photos { height:420px; padding:0 22px 22px; }
}
@media(max-width:680px) {
 .site-footer__grid { text-align:center; padding-inline:12px; }
 .site-footer__logo { margin-inline:auto; }
 .site-footer__legal { text-align:center; }
 .tours-hero__copy { padding:38px 22px; }
 .tours-hero__copy h1 { font-size:70px; }
 .tours-hero__photos { height:330px; gap:6px; padding-inline:16px; }
 .provider-rail .travelspark-widget__grid--sidebar { grid-template-columns:minmax(0,1fr)!important; }
 .newsletter__form { padding:22px; }
 .prose table { min-width:540px; font-size:14px; }
 .prose table th,.prose table td { padding:13px; }
}
