/* Memphis, felt first: image-led opening and one purposeful motion story. */
:root{--night:#00335f;--river:#63ccca;--motion-duration:600ms}
.masthead{padding-block:18px}.brand-pair img{width:83px}.masthead-right .review-note{font-size:14px}
.cinematic-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--blue);color:#fff;min-height:780px}
.city-hero-image,.city-hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.city-hero-image{object-fit:cover;object-position:center 45%}
.city-hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(0,37,71,.89) 0%,rgba(0,37,71,.65) 43%,rgba(0,37,71,.12) 80%),linear-gradient(0deg,rgba(0,37,71,.94),transparent 48%)}
.city-hero-content{position:relative;display:grid;grid-template-columns:1.25fr 1fr;gap:25px 45px;padding-top:76px;padding-bottom:25px;align-items:center}
.hero-kicker{font-family:var(--story);color:var(--aqua);font-size:18px;margin-bottom:24px}
.cinematic-hero h1{font-size:clamp(64px,7.2vw,108px);line-height:.98;letter-spacing:-5.5px;color:white;font-weight:900;margin:0 0 26px;max-width:750px}
.city-hero-lead{font-family:var(--story);font-size:23px;line-height:1.6;color:white}
.city-hero-description{font-size:17px;line-height:1.85;color:#e1eef5;max-width:430px;margin-top:17px}
.city-hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}
.hero-primary{background:var(--gold);border-color:var(--gold);color:var(--blue);box-shadow:none;gap:12px}.hero-primary:hover{box-shadow:0 4px 0 var(--aqua)}.play-mark{font-size:16px}
.hero-secondary{font-size:14px;font-weight:700;color:white}
.hero-plan-art{position:relative;min-height:435px;align-self:center;margin-top:25px}
.hero-photo-tile{position:absolute;top:0;right:0;width:70%;max-width:340px;background:white;transform:rotate(5deg);box-shadow:0 22px 70px #001f3d80;padding:9px 9px 0}
.hero-photo-tile img{width:100%;height:190px;object-fit:cover}.hero-photo-tile figcaption{font-family:var(--story);color:var(--blue);font-size:16px;padding:9px 4px 12px}
.hero-plan-ticket{position:absolute;top:155px;left:15px;width:315px;background:white;color:var(--blue);box-shadow:8px 8px 0 var(--aqua);padding:23px 26px;transform:rotate(-3deg)}
.plan-ticket-top{display:flex;justify-content:space-between;gap:10px;font-size:14px;font-weight:700;align-items:center}.plan-ticket-top>span:last-child{padding:4px 7px;background:#e5f6f4;color:var(--blue)}
.hero-plan-ticket h2{font-size:33px;line-height:1.12;letter-spacing:-1.2px;margin:15px 0 17px;font-weight:900}.mini-plan>div{display:flex;align-items:center;gap:12px;font-size:14px;margin:8px 0}.mini-plan>div>span{width:7px;height:7px;border:1px solid var(--plum);border-radius:50%}.mini-plan>div:first-child>span{background:var(--plum)}
.hero-concept-tag{font-size:14px;color:var(--muted);display:block;border-top:1px solid var(--line);padding-top:12px;margin-top:15px}
.hero-value-rail{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid #ffffff44;padding-top:22px;margin-top:48px}
.hero-value-rail strong{display:block;font-size:16px;font-weight:700;color:white}.hero-value-rail span{display:block;color:#d5e9f4;font-size:14px;margin-top:5px}.hero-photo-credit{grid-column:1/-1;font-size:14px;color:#c0d6e7;margin-top:0}
@media(prefers-reduced-motion:no-preference){.city-hero-copy{animation:hero-arrive .65s cubic-bezier(.2,.8,.2,1) both}.hero-plan-art{animation:hero-arrive .7s .12s cubic-bezier(.2,.8,.2,1) both}}
@keyframes hero-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.vision-section{padding-block:85px 70px;background:#fff}.vision-heading{max-width:860px;margin:0 auto 38px;text-align:center}.vision-heading h2{font-size:clamp(35px,4.6vw,62px);letter-spacing:-2.5px;line-height:1.08}.vision-heading>p:last-child{font-size:18px;line-height:1.85;color:var(--muted);margin:22px auto 0;max-width:660px}.vision-heading .intro-label{margin-bottom:17px}
.vision-player{background:var(--blue);color:white;border:1px solid var(--blue);box-shadow:0 15px 55px #004a8814}.vision-player-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 38px 0}.vision-player-head>div>span{font-size:14px;color:var(--aqua);font-weight:700}.vision-player-head h3{color:#fff;font-size:26px;letter-spacing:-.7px;margin-top:7px}.vision-concept{font-size:14px;border:1px solid #ffffff55;padding:7px 11px;white-space:nowrap;color:#dcecf4}
.vision-stage{width:100%;display:block;height:auto;overflow:hidden}.vision-stage text{font-family:var(--heading)}.v-label{font-size:25px;font-weight:700;fill:white}.v-small{font-size:19px;fill:#dfedf6}.v-card-title{font-size:20px;font-weight:800;fill:var(--blue)}.v-card-copy{font-size:17px;font-weight:500;fill:#516b80}.v-badge{font-size:16px;font-weight:700;fill:var(--blue)}.v-value-title{font-size:19px;font-weight:800;fill:var(--blue)}.v-proposed{font-size:16px;fill:var(--plum);font-weight:700}.v-count-number{font-size:41px;fill:var(--gold);font-weight:800}.v-caption{font-size:16px;fill:#cfdfeb}
.vision-controls{display:flex;align-items:center;gap:20px;padding:0 35px 24px}.vision-controls .button{background:var(--gold);border-color:var(--gold);color:var(--blue);box-shadow:none;gap:10px;white-space:nowrap;min-width:167px}.vision-replay{background:transparent;border:1px solid #ffffff88;color:white;width:40px;height:40px;font-size:24px;line-height:1;flex-shrink:0}.vision-timeline-label{font-size:0;flex:1;display:flex;align-items:center}.vision-timeline-label input{width:100%;accent-color:var(--gold);cursor:pointer}.vision-controls output{font-size:14px;color:#d6e9f4;white-space:nowrap}.vision-controls button:focus-visible,.vision-chapters button:focus-visible{outline-color:var(--gold)}
.vision-chapters{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff44;background:var(--night)}.vision-chapters button{background:none;border:0;color:#dbeaf2;padding:17px 12px;border-bottom:4px solid transparent;font-size:16px;font-weight:600}.vision-chapters button[aria-pressed=true]{color:white;border-color:var(--gold);background:#ffffff0c}.vision-under{display:flex;justify-content:space-between;gap:40px;align-items:center;margin-top:24px}.vision-under>p{font-size:17px;line-height:1.85;color:var(--muted);max-width:800px;min-height:52px}.vision-under>a{flex-shrink:0}.vision-section>.wrap>.source-note{font-size:14px;margin-top:13px;max-width:none}
.story-section{background:#f2f7fa;padding-block:75px 85px}.story-section .section-heading h2{font-size:clamp(35px,4vw,54px);line-height:1.1}.story-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.story-tabs button{background:transparent;border:0;border-bottom:4px solid transparent;text-align:left;padding:17px 20px;font-size:16px;line-height:1.5;font-weight:700;color:var(--blue)}.story-tabs button[aria-selected=true]{background:white;border-bottom-color:var(--plum);color:var(--plum)}
.story-panel{display:grid;grid-template-columns:1.2fr 1fr;background:white;min-height:495px}.story-picture{position:relative;overflow:hidden;background:var(--blue);min-height:490px}.story-picture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.story-photo-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,33,62,.86),rgba(0,33,62,.05) 70%)}.story-photo-quote{position:absolute;left:35px;right:35px;bottom:64px;color:white;font-family:var(--story);font-size:32px;line-height:1.4;max-width:500px}.story-photo-credit{position:absolute;left:35px;right:25px;bottom:22px;color:#dcebf4;font-size:14px}.story-copy{padding:42px}.story-copy h3{font-size:30px;line-height:1.2;letter-spacing:-.9px}.story-copy>p:not(.source-note){color:var(--muted);font-size:16px;margin-top:20px;line-height:1.9}.story-copy ol{margin:24px 0;padding-left:20px;font-size:16px;display:grid;gap:12px;color:var(--blue)}.story-copy .source-note{font-size:14px;margin-top:20px}
#opportunity{padding-block:67px}#opportunity .journey article{padding-left:0}#opportunity .journey h3{font-size:19px}#opportunity .journey p{font-size:16px}#opportunity .section-heading>p{font-size:18px}
.proof-section{background:white}.proof-frame{box-shadow:0 12px 40px #004a8810}.proof-caption p{font-size:16px}.proof-frame img{max-height:590px}.section-heading>p{font-size:18px;line-height:1.9}.directory-card>img{height:165px}.directory-card h3{font-size:18px}.directory-card p{font-size:14px}.listing-actions button{font-size:14px;min-height:38px}.directory-credit{font-size:14px}
.gather-interlude{position:relative;isolation:isolate;overflow:hidden;min-height:530px;display:flex;align-items:center;color:white;background:var(--blue)}.gather-interlude>img,.gather-interlude-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.gather-interlude>img{object-fit:cover;object-position:center 45%}.gather-interlude-shade{z-index:-1;background:linear-gradient(90deg,rgba(0,37,71,.85),rgba(0,37,71,.38) 65%,rgba(0,37,71,.12))}.gather-interlude .wrap{padding-block:80px}.gather-interlude p{font-family:var(--story);font-size:21px;color:#e3f0f7;margin-bottom:20px}.gather-interlude h2{font-size:clamp(36px,5.1vw,70px);line-height:1.08;letter-spacing:-2.6px;color:white;font-weight:900}.gather-interlude a{display:inline-block;margin-top:25px;color:var(--gold);font-size:16px;font-weight:700}.interlude-credit{display:block;font-size:14px;margin-top:35px;color:#d6e5ee}.gather-section{padding-block:70px}
.revenue-section .section-heading h2{font-size:clamp(34px,4.2vw,57px);line-height:1.08}.sponsor-packages p,.sponsor-policy p{font-size:16px}.sponsor-example{background:var(--blue);color:white;border-color:var(--blue);box-shadow:8px 8px 0 var(--gold);padding:32px}.sponsor-example h4{color:white;font-size:24px}.sponsor-example p,.sponsor-example small{color:#d8e7f1}.sponsor-example .sample-rating{color:var(--aqua)}.sponsor-example .sponsored-label{color:var(--gold);border-color:var(--gold)}.sponsor-example small{border-top-color:#ffffff44}
@media(min-width:1600px){.city-hero-content{padding-top:95px;gap:30px 50px}.cinematic-hero{min-height:845px}.hero-plan-art{margin-left:20px}.city-hero-image{object-position:center 53%}}
@media(max-width:1100px){.city-hero-content{gap:25px 20px}.cinematic-hero h1{font-size:75px;letter-spacing:-4px}.city-hero-lead{font-size:20px}.hero-plan-ticket{left:0;width:280px}.hero-plan-art{min-height:400px}.hero-photo-tile{width:80%;right:-10px}.hero-plan-ticket h2{font-size:29px}.story-copy{padding:30px}.story-copy h3{font-size:26px}.story-photo-quote{font-size:28px}.vision-player-head h3{font-size:23px}.vision-stage .v-card-copy{font-size:18px}}
@media(max-width:760px){.masthead{padding-block:14px}.cinematic-hero{min-height:0}.city-hero-content{grid-template-columns:1fr;padding-top:44px;padding-bottom:20px;gap:26px}.city-hero-image{object-position:65% 40%}.city-hero-shade{background:linear-gradient(90deg,rgba(0,37,71,.85),rgba(0,37,71,.35)),linear-gradient(0deg,rgba(0,37,71,.97),transparent 75%)}.hero-kicker{font-size:16px;margin-bottom:20px}.cinematic-hero h1{font-size:clamp(52px,11.5vw,78px);letter-spacing:-3px;margin-bottom:24px}.city-hero-lead{font-size:19px;line-height:1.6}.city-hero-description{font-size:16px;max-width:420px;line-height:1.85}.city-hero-actions{gap:20px;margin-top:24px}.hero-primary{font-size:14px;padding:12px 16px;min-height:47px}.hero-secondary{font-size:14px}.hero-plan-art{height:340px;min-height:340px;max-width:440px;width:100%;margin:4px auto 10px}.hero-photo-tile{width:62%;right:4px;max-width:280px}.hero-photo-tile img{height:150px}.hero-plan-ticket{top:100px;left:12px;width:240px;padding:18px 21px}.hero-plan-ticket h2{font-size:28px}.plan-ticket-top{font-size:14px}.hero-value-rail{margin-top:0;gap:14px;grid-template-columns:1fr;padding-top:20px}.hero-value-rail>div{display:grid;grid-template-columns:1fr 1.1fr;gap:15px}.hero-value-rail strong{font-size:14px}.hero-value-rail span{font-size:14px;margin-top:0}.hero-photo-credit{font-size:14px;line-height:1.6}.vision-section{padding-block:58px 45px}.vision-heading h2{font-size:34px;letter-spacing:-1.4px}.vision-heading>p:last-child{font-size:16px;line-height:1.9;margin-top:20px}.vision-heading{margin-bottom:26px;text-align:left}.vision-heading .intro-label{font-size:14px}.vision-player-head{padding:20px 18px 3px;display:block}.vision-player-head h3{font-size:20px;line-height:1.3}.vision-player-head>div>span{font-size:14px}.vision-concept{display:block;border:0;padding:0;margin-top:9px;font-size:14px}.vision-stage{margin-top:8px}.vision-controls{padding:8px 17px 16px;gap:10px;flex-wrap:wrap}.vision-controls .button{min-width:150px;font-size:14px}.vision-replay{width:36px;height:36px;font-size:22px}.vision-timeline-label{order:4;flex-basis:100%;padding-top:9px}.vision-controls output{margin-left:auto;font-size:14px}.vision-chapters button{font-size:14px;padding:13px 6px;line-height:1.5}.vision-under{display:block;margin-top:20px}.vision-under>p{font-size:16px;min-height:0}.vision-under>a{display:inline-block;margin-top:15px;font-size:14px}.vision-section>.wrap>.source-note{font-size:14px}.story-section{padding-block:50px}.story-section .section-heading h2{font-size:34px}.story-tabs button{font-size:14px;padding:12px 9px}.story-panel{grid-template-columns:1fr}.story-picture{min-height:320px}.story-photo-quote{font-size:27px;left:23px;right:23px;bottom:58px}.story-photo-credit{left:23px;font-size:14px}.story-copy{padding:27px}.story-copy h3{font-size:27px}.story-copy>p:not(.source-note){font-size:16px;margin-top:15px}.story-copy ol{font-size:14px;gap:10px;margin:20px 0}.story-copy .source-note{font-size:14px}#opportunity{padding-block:50px}#opportunity .section-heading>p{font-size:16px}#opportunity .journey p{font-size:16px}.section-heading>p{font-size:16px}.proof-frame img{max-height:none}.proof-caption p{font-size:14px}.directory-card>img{height:125px}.directory-card h3{font-size:16px}.directory-card p{font-size:14px}.listing-actions button{font-size:14px}.gather-interlude{min-height:415px}.gather-interlude .wrap{padding-block:58px}.gather-interlude p{font-size:19px}.gather-interlude h2{font-size:42px;letter-spacing:-1.7px}.gather-interlude a{font-size:14px}.interlude-credit{font-size:14px}.gather-section{padding-block:50px}.revenue-section .section-heading h2{font-size:36px}.sponsor-packages p,.sponsor-policy p{font-size:16px}.sponsor-example{padding:25px}.sponsor-example h4{font-size:22px}}
@media(max-width:380px){.cinematic-hero h1{font-size:49px;letter-spacing:-2.8px}.hero-plan-ticket{left:0;width:225px}.hero-photo-tile{right:0}.hero-plan-art{height:330px;min-height:330px}.vision-heading h2{font-size:30px}.vision-controls{gap:9px;padding-inline:12px}.vision-controls .button{min-width:140px}.vision-chapters button{font-size:14px}.story-copy{padding:23px}.story-tabs button{font-size:14px;padding:11px 6px}.directory-card>img{height:165px}.directory-card h3{font-size:18px}.gather-interlude h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.cinematic-hero *,.story-panel *{animation:none!important;transition:none!important}.vision-stage *{transition:none!important}}
@media print{.cinematic-hero{min-height:0;background:white;color:var(--blue)}.city-hero-image,.city-hero-shade,.hero-plan-art,.hero-photo-credit,.hero-value-rail,.city-hero-actions{display:none}.city-hero-content{display:block;padding-block:30px}.cinematic-hero h1,.city-hero-lead{color:var(--blue)}.city-hero-description{color:var(--muted)}.vision-section,.story-section{padding-block:30px}.vision-controls,.vision-chapters,.story-tabs{display:none}.vision-player{print-color-adjust:exact}.vision-player-head h3{color:white}.story-picture{min-height:300px}.gather-interlude{min-height:300px;print-color-adjust:exact}.sponsor-example{print-color-adjust:exact}}
.story-photo-quote,.story-copy h3{white-space:pre-line}
.directory-photo-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:30px}.directory-photo-paths button{position:relative;border:0;background:var(--blue);padding:0;height:210px;text-align:left;isolation:isolate;overflow:hidden}.directory-photo-paths img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.directory-photo-paths button:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,28,54,.88),transparent 85%);z-index:-1}.directory-photo-paths span{position:absolute;left:22px;right:15px;bottom:20px;font-size:22px;color:white;font-weight:800;line-height:1.3;letter-spacing:-.7px}.directory-photo-paths small{display:block;font-size:14px;letter-spacing:0;font-weight:500;color:#dcecf6;margin-top:7px}.directory-photo-paths button:hover small{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.directory-photo-paths{gap:10px;margin-bottom:22px}.directory-photo-paths button{height:165px}.directory-photo-paths span{left:12px;right:9px;bottom:14px;font-size:18px;letter-spacing:-.4px}.directory-photo-paths small{font-size:14px;line-height:1.5}.story-photo-quote{font-size:25px}}
@media(max-width:380px){.directory-photo-paths{grid-template-columns:1fr}.directory-photo-paths button{height:140px}.directory-photo-paths span{font-size:20px;left:18px}.directory-photo-paths small{font-size:14px}}
@media(min-width:1101px){.cinematic-hero h1{font-size:clamp(70px,5.6vw,84px);letter-spacing:-4px}}
@media(max-width:760px){.hero-plan-art{height:415px;min-height:415px}}
@media(max-width:380px){.hero-plan-art{height:405px;min-height:405px}}

/* Let the larger mobile itinerary ticket establish its own height. */
@media screen and (max-width:760px){.hero-plan-art{height:auto;min-height:0;padding:100px 0 28px}.hero-plan-ticket{position:relative;top:auto;left:12px}.hero-value-rail>div{grid-template-columns:1fr;gap:4px}.vision-concept{white-space:normal}.vision-controls{flex-wrap:wrap}}
@media screen and (max-width:380px){.hero-plan-ticket{left:0}}
