.line-rise{display:block;animation:line-rise 1s cubic-bezier(.22,1,.36,1) both}
@keyframes line-rise{from{transform:translateY(110%)}to{transform:translateY(0)}}
.hero-fade{animation:hero-fade .8s both}
@keyframes hero-fade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.hero .eyebrow.hero-fade{transform:none}
@keyframes hero-fade-flat{from{opacity:0}to{opacity:1}}
.hero .eyebrow.hero-fade{animation-name:hero-fade-flat}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}
.reveal.is-in{opacity:1;transform:none}
.title-word{opacity:0}
.title-word.is-in{animation:title-in .8s both}
@keyframes title-in{from{opacity:0;letter-spacing:.12em}to{opacity:1;letter-spacing:0}}
.poem>p.poem-line{opacity:.15;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.poem>p.poem-line.is-in{opacity:1;transform:none}

.quote-slide{display:none}
.quote-slide.active{display:block;animation:quote-in .45s ease}
@keyframes quote-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.perched{animation:perch-bob 3s ease-in-out infinite}
@keyframes perch-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.perched.away{animation:perch-away 2s forwards}
@keyframes perch-away{to{transform:translate(200px,-350px) rotate(-40deg);opacity:0}}

.flying-bird{animation-name:bird-cruise;animation-timing-function:linear;animation-iteration-count:infinite}
.bird-5{animation-name:bird-special}
@keyframes bird-cruise{
  0%{transform:translate3d(-12vw,0,0) rotate(4deg)}
  33%{transform:translate3d(28vw,-45px,0) rotate(-10deg)}
  66%{transform:translate3d(66vw,28px,0) rotate(6deg)}
  100%{transform:translate3d(112vw,-45px,0) rotate(-4deg)}
}
@keyframes bird-special{
  0%{transform:translate3d(-12vw,0,0) rotate(0)}
  30%{transform:translate3d(45vw,-50px,0) rotate(-10deg)}
  42%{transform:translate3d(46vw,-48px,0) rotate(0)}
  54%{transform:translate3d(47vw,-51px,0) rotate(0)}
  100%{transform:translate3d(112vw,-90px,0) rotate(-10deg)}
}
.humming-wing{transform-origin:34px 28px;animation:hum .08s linear infinite}
@keyframes hum{0%,100%{transform:scaleY(1)}50%{transform:scaleY(-.3)}}
.takeoff-bird{opacity:0}
.takeoff-bird.go{animation:takeoff 5s ease-out forwards}
@keyframes takeoff{
  0%{transform:translate(15vw,95vh) rotate(-35deg);opacity:0}
  45%{transform:translate(28vw,55vh) rotate(-28deg);opacity:.7}
  100%{transform:translate(65vw,-10vh) rotate(-35deg);opacity:0}
}
.falling-feather{animation:feather-fall 26s linear infinite}
@keyframes feather-fall{
  0%{transform:translate(0,-10vh) rotate(0)}
  40%{transform:translate(50px,40vh) rotate(70deg)}
  70%{transform:translate(-10px,70vh) rotate(-20deg)}
  100%{transform:translate(70px,110vh) rotate(100deg)}
}
.map-ship{offset-distance:0%;animation:sail 24s linear infinite}
@keyframes sail{to{offset-distance:100%}}
.travel-map{max-width:980px;margin:48px auto 36px;background:#fbf8f3;border:1px solid #e7e0d4;border-radius:16px;overflow:hidden}
.map-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding:22px 28px 16px}
.map-head .eyebrow{margin:0;color:#8d7349;font-size:11px;letter-spacing:.22em}
.map-head p{margin:6px 0 0;color:#1c3a4c;font-family:"Cormorant Garamond",serif;font-size:28px;font-weight:500;line-height:1.15}
.map-stat{display:inline-flex;align-items:center;gap:8px;color:#8d7349;font-size:13px;letter-spacing:.01em;white-space:nowrap;padding-bottom:4px}
.map-stat svg{flex:none}
.map-canvas{position:relative;background:#e4eef3;line-height:0}
.map-canvas>img{width:100%;height:auto;display:block}
.travel-map .map-pin{margin:0;padding:11px;min-width:0;min-height:0;background:none;border:0;z-index:2}
.travel-map .map-pin>span{width:8px;height:8px;background:#173044;box-shadow:0 0 0 3px #ffffffb8}
.travel-map .map-pin.selected>span,.travel-map .map-pin:hover>span,.travel-map .map-pin:focus-visible>span{box-shadow:0 0 0 5px #c4964a73}
.travel-map .map-pin strong{display:block;position:absolute;left:20px;top:50%;bottom:auto;transform:translateY(-50%);background:none;color:#1c3a4c;padding:0;border-radius:0;font-family:"Cormorant Garamond",serif;font-size:17px;font-weight:600;line-height:1;letter-spacing:0;text-shadow:0 1px 0 #fff8;pointer-events:none}
.travel-map .map-pin[data-place="Mississippi River"] strong{top:38%}
.travel-map .map-pin[data-place="Mediterranean"] strong{left:auto;right:8px;top:auto;bottom:26px;transform:none}
.travel-map .map-pin[data-place="Antarctica"] strong{left:auto;right:12px;top:auto;bottom:14px;transform:none}
.map-vessel{position:absolute;color:#8ea3b0;opacity:.8;transform:translate(-50%,-50%);pointer-events:none}
.map-vessel svg{width:15px;height:15px}
@media (max-width:720px){
  .map-head{flex-direction:column;align-items:flex-start;gap:10px;padding:16px 16px 12px}
  .map-head p{font-size:22px}
  .map-stat{padding-bottom:0}
  .travel-map .map-pin strong{font-size:12px}
  .travel-map .map-pin[data-place="Alaska"] strong{left:12px;top:18%}
  .travel-map .map-pin[data-place="Mississippi River"] strong{left:12px;top:auto;bottom:11px;transform:none;font-size:11px}
  .travel-map .map-pin[data-place="Caribbean"] strong{left:12px;top:78%;transform:translateY(0)}
  .travel-map .map-pin[data-place="Mediterranean"] strong{right:4px;bottom:14px;font-size:12px}
  .travel-map .map-pin[data-place="Antarctica"] strong{right:6px;bottom:12px;font-size:12px}
}
.audio-wave i{transform-origin:center;transform:scaleY(.4)}
.audio-wave.live i{animation:wave .7s ease-in-out infinite}
@keyframes wave{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}

.faq-item h3 button>span{display:inline-flex;transition:transform .25s}
.faq-item.open h3 button>span{transform:rotate(45deg)}
.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.faq-answer>div{overflow:hidden}
.faq-item.open .faq-answer{grid-template-rows:1fr}

.dialog-root{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:16px}
.dialog-root[hidden]{display:none}
.dialog-overlay{position:absolute;inset:0;background:#00000080}
.dialog-panel{position:relative;z-index:1;width:min(32rem,calc(100% - 2rem));background:#fff;border:1px solid var(--border);border-radius:8px;padding:24px;box-shadow:0 16px 50px #0000002e;max-height:90dvh;overflow:auto}
.dialog-close{position:absolute;top:16px;right:16px;opacity:.7}
.dialog-close:hover{opacity:1}
.custom-cursor .cursor-dove{display:none;width:22px}
.custom-cursor.show-dove .cursor-dove{display:block}
.custom-cursor.show-dove .cursor-dove svg{width:22px}
.social-panel[hidden]{display:none}
#intro[hidden]{display:none}
#intro:not([hidden]){animation:intro-hold 1.2s linear}
@keyframes intro-hold{0%,75%{opacity:1}100%{opacity:0}}

.anchor-decoration{display:block}
.anchor-decoration svg{width:120px;height:120px}

.second-inner:has(.elite-credential){gap:28px}
.second-inner:has(.elite-credential)>div{max-width:none;flex:1 1 auto;min-width:0}
.elite-credential{z-index:1;flex:0 0 248px;width:248px;margin:0;position:relative}
.elite-credential img{display:block;width:100%;height:auto;background:#fff;border:1px solid #e4dccb;border-radius:2px;box-shadow:0 12px 28px #12324a1a}
.elite-credential figcaption{margin-top:10px;text-align:center}
.elite-credential strong{display:block;color:#12324a;font-family:"Cormorant Garamond",serif;font-size:17px;font-weight:600;letter-spacing:.02em;line-height:1.15}
.elite-credential span{display:block;margin-top:3px;color:#8a7348;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.quarter-0 .quarter-image img{object-position:center 18%}
.quarter-1 .quarter-image img{object-position:center 8%}
.quarter-2 .quarter-image img{object-position:center 22%}
.second-inner .button-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:4px}
@media (max-width:900px){
  .elite-credential{flex-basis:auto;width:min(280px,100%)}
}

@media (prefers-reduced-motion:reduce){
  .reveal,.poem>p.poem-line,.title-word{opacity:1;transform:none}
  .line-rise,.hero-fade,.flying-bird,.falling-feather,.humming-wing,.map-ship,.perched{animation:none}
  .custom-cursor,.birds,.hero-video,.video-controls{display:none}
}
.paused-motion .reveal,
.paused-motion .poem>p.poem-line,
.paused-motion .title-word{opacity:1!important;transform:none!important}
.paused-motion .hero-video,
.paused-motion .video-controls,
.paused-motion .birds,
.paused-motion .custom-cursor{display:none!important}
