/* Two transfer journeys: morning lake / evening expedition.
   Explicitly loaded on transfer pages only; shared product styles stay intact. */
.transfer-scene { position: relative; isolation: isolate; overflow: hidden; }
.transfer-scene__art { pointer-events: none; }
.transfer-scene__art img { width: 100%; height: 100%; object-fit: cover; }
.transfer-scene__canvas { display: block; width: 100%; height: 100%; max-width: none; }
.transfer-scene__pause { position: absolute; right: var(--gutter); bottom: 30px; z-index: 3; color: #effcf7; background: #062d32d9; border: 1px solid #c4ebdf70; border-radius: 30px; padding: 9px 15px; font-size: 12px; font-weight: 650; }
.transfer-scene__pause[hidden] { display: none; }
.transfer-scene__pause:hover { background: #075e49; }
.transfer-scene__pause:focus-visible { outline: 3px solid #84e0bc; outline-offset: 4px; }
.transfer-water { display: none; }
.has-scene-motion .transfer-water { display: block; }
.has-scene-motion .transfer-mist--near { animation: transfer-mist-drift 36s ease-in-out infinite alternate; }
.has-scene-motion .transfer-mist--far { animation: transfer-mist-drift 52s ease-in-out -18s infinite alternate-reverse; opacity: .65; }
.has-scene-motion .transfer-cloud--back { animation: transfer-cloud-drift 65s ease-in-out -20s infinite alternate; }
.has-scene-motion .transfer-cloud--front { animation: transfer-cloud-drift 48s ease-in-out infinite alternate-reverse; opacity: .7; }
.has-scene-motion .transfer-stars { transform-origin: 836px 100px; animation: transfer-stars-turn 1800s linear infinite; }
.is-scene-paused .transfer-stars { animation-play-state: paused; }
.is-scene-paused .transfer-mist, .is-scene-paused .transfer-cloud { animation-play-state: paused; }
@keyframes transfer-mist-drift { from { transform: translate(-45px, 0); opacity: .45; } to { transform: translate(85px, -4px); opacity: .9; } }
@keyframes transfer-cloud-drift { from { transform: translateX(-100px); } to { transform: translateX(130px); } }
@keyframes transfer-stars-turn { to { transform: rotate(360deg); } }
/* Firefox can repaint the full photographic SVG for each moving layer.
   Keep the same artwork still there rather than continuously repainting it. */
@supports (-moz-appearance: none) {
  .transfer-expedition.has-scene-motion .transfer-cloud,
  .transfer-expedition.has-scene-motion .transfer-stars { animation: none; transform: none; }
  .transfer-expedition .transfer-scene__pause { display: none; }
}
.transfer-scene .breadcrumb { position: relative; z-index: 2; padding-block: 26px; margin: 0; font-size: 12px; }
.transfer-scene__label { display: flex; align-items: center; gap: 10px; font-size: 12px; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.transfer-scene__label::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px #12a66f20; }
.transfer-scene h1 { font-size: clamp(50px, 4.7vw, 80px); line-height: 1.03; letter-spacing: -.052em; margin: 22px 0; }
.transfer-scene h1 span { display: block; }
.transfer-scene__lead { font-size: 17px; line-height: 1.7; max-width: 52ch; }
.transfer-scene__note { font-size: 12px; line-height: 1.7; margin-top: 14px; }
.transfer-kayak { background: #edf7f7; color: #102934; }
.transfer-kayak .transfer-scene__art { position: absolute; inset: 0; z-index: -2; }
.transfer-kayak .transfer-scene__art img { object-position: 38% 100%; }
.transfer-kayak::after { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, transparent 30%, #f0f8f863 48%, #f3f9f8ed 69%, #f1f8f7f5 100%); }
.transfer-kayak .breadcrumb { color: #355663; }
.transfer-kayak .breadcrumb a { color: #274e5b; }
.transfer-kayak .breadcrumb [aria-current] { color: #315761; }
.transfer-kayak__inner { min-height: clamp(900px, 55vw, 1050px); display: flex; align-items: center; justify-content: flex-end; padding-block: 55px 115px; }
.transfer-kayak__copy { width: 48%; max-width: 600px; }
.transfer-kayak h1 { color: #102934; }
.transfer-kayak .transfer-scene__label, .transfer-kayak h1 span { color: #08714e; }
.transfer-kayak .domain-search { margin-top: 30px; padding: 7px; border: 1px solid #b4cfc8; background: #fff; border-radius: 18px; box-shadow: 0 12px 35px #0a44331a; display: flex; gap: 6px; }
.transfer-kayak .domain-search input { width: 0; min-width: 0; flex: 1; padding: 12px 14px; background: transparent; border: 0; box-shadow: none; color: #102934; font-size: 16px; }
.transfer-kayak .domain-search .btn { flex-shrink: 0; border-radius: 12px; padding: 17px 20px; }
.transfer-kayak .domain-search:focus-within { outline: 3px solid #0a81584d; outline-offset: 3px; }
.transfer-kayak__links { margin-top: 22px; display: flex; gap: 12px 24px; flex-wrap: wrap; font-size: 13px; font-weight: 650; color: #075e44; }
.transfer-kayak__caption { position: absolute; bottom: 35px; left: var(--gutter); padding: 8px 14px; border-radius: 30px; background: #062d32c9; color: #eefdf6; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.transfer-expedition { background: #06152c; color: #fff; }
.transfer-expedition .transfer-scene__art { position: absolute; inset: 0; z-index: -2; }
.transfer-expedition .transfer-scene__art img { object-position: center bottom; }
.transfer-expedition::after { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(180deg, #06152ccc, #06152c77 33%, transparent 58%, #030d20aa); }
.transfer-expedition .breadcrumb { color: #b6cbdc; }
.transfer-expedition .breadcrumb a { color: #b6cbdc; }
.transfer-expedition .breadcrumb [aria-current] { color: #d8e7f1; }
.transfer-expedition__inner { text-align: center; min-height: clamp(900px, 55vw, 1050px); padding: 10px 0 390px; }
.transfer-expedition .transfer-scene__label { justify-content: center; color: #84e0bc; }
.transfer-expedition h1 { color: #fff; font-size: clamp(52px, 4.8vw, 84px); margin: 20px 0; }
.transfer-expedition h1 span { color: #84e0bc; }
.transfer-expedition .transfer-scene__lead { margin-inline: auto; color: #e0eaf4; max-width: 61ch; }
.transfer-expedition .btn-row { justify-content: center; margin-top: 26px; }
.transfer-expedition .transfer-scene__note { color: #c4d6e6; }
.transfer-expedition .btn--outline { color: #fff; border-color: #ffffff70; background: #091d3677; }
.transfer-prep { background: #f0f7f5; border-bottom: 1px solid #dbe8e3; }
.transfer-prep__list { list-style: none; padding: 27px 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin: 0; }
.transfer-prep__list li { display: flex; gap: 14px; margin: 0; align-items: flex-start; min-width: 0; }
.transfer-prep__number { font-size: 12px; color: #08714e; font-weight: 750; padding-top: 3px; }
.transfer-prep__list strong { display: block; color: #153c36; font-size: 14px; }
.transfer-prep__list p { font-size: 13px; color: #4d6864; margin-top: 3px; line-height: 1.6; }
@media (min-width: 1700px) {
  .transfer-kayak > .container { max-width: 1700px; }
  .transfer-kayak__copy { margin-right: 3%; }
}
@media (max-width: 1100px) and (min-width: 851px) {
  .transfer-kayak__copy { width: 51%; }
  .transfer-kayak::after { background: linear-gradient(90deg, transparent 10%, #f1f8f7e8 57%, #f1f8f7f5); }
  .transfer-kayak .domain-search { flex-wrap: wrap; }
  .transfer-kayak .domain-search input { flex-basis: 100%; }
  .transfer-kayak .domain-search .btn { width: 100%; }
}
@media (max-width: 850px) {
  .transfer-scene .breadcrumb { padding-block: 20px; }
  .transfer-scene h1 { font-size: clamp(43px, 7.8vw, 66px); }
  .transfer-scene__lead { font-size: 16px; }
  .transfer-kayak__inner { min-height: 0; padding: 24px 0 35px; }
  .transfer-kayak__copy { width: 100%; max-width: 610px; margin-inline: auto; }
  .transfer-kayak::after { display: none; }
  .transfer-kayak .transfer-scene__art { position: relative; height: clamp(360px, 65vw, 520px); z-index: 0; }
  .transfer-kayak .transfer-scene__art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(#edf7f5, transparent 22%); }
  .transfer-kayak .transfer-scene__art img { object-position: 18% 85%; }
  .transfer-kayak__caption { display: none; }
  .transfer-scene__pause { bottom: 20px; }
  .transfer-expedition__inner { min-height: 0; padding: 22px 0 30px; }
  .transfer-expedition .transfer-scene__art { position: relative; height: clamp(290px, 56vw, 480px); z-index: 0; }
  .transfer-expedition .transfer-scene__art img { object-position: 65% bottom; }
  .transfer-expedition .transfer-scene__art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(#06152c, transparent 32%); }
  .transfer-expedition::after { display: none; }
  .transfer-expedition .transfer-scene__note { max-width: 52ch; margin-inline: auto; }
  .transfer-prep__list { gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .transfer-scene .transfer-mist, .transfer-scene .transfer-cloud, .transfer-scene .transfer-stars { animation: none; transform: none; }
  .transfer-scene .transfer-water { display: none; }
}
/* Phone composition: headline, a compact panorama, then an overlapping task
   panel. Avoid the former long intro followed by a detached scenic footer. */
@media (max-width: 850px) {
  .transfer-kayak { display: grid; grid-template-columns: minmax(0,1fr); grid-template-areas: 'crumb' 'label' 'title' 'scene' 'panel'; padding-bottom: 28px; }
  .transfer-kayak > .container, .transfer-kayak__inner, .transfer-kayak__copy { display: contents; }
  .transfer-kayak .breadcrumb { grid-area: crumb; margin-inline: var(--gutter); }
  .transfer-kayak .transfer-scene__label { grid-area: label; margin: 9px var(--gutter) 0; font-size: 10px; }
  .transfer-kayak h1 { grid-area: title; font-size: clamp(39px, 7.8vw, 62px); margin: 15px var(--gutter) 10px; line-height: 1.03; }
  .transfer-kayak .transfer-scene__art { grid-area: scene; height: clamp(250px, 47vw, 350px); }
  .transfer-kayak .transfer-scene__art::after { background: linear-gradient(#edf7f5, transparent 15%, transparent 85%, #edf7f540); }
  .transfer-kayak__panel { grid-area: panel; position: relative; z-index: 1; margin: -20px var(--gutter) 0; padding: 23px; border: 1px solid #c6dcd5; border-radius: 22px; background: #fcfefd; box-shadow: 0 16px 35px -22px #134c3b66; }
  .transfer-kayak__panel .transfer-scene__lead { font-size: 15px; line-height: 1.6; }
  .transfer-kayak__panel .domain-search { margin-top: 18px; box-shadow: none; border-radius: 14px; }
  .transfer-kayak__panel .transfer-scene__note { font-size: 11px; }
  .transfer-kayak__links { margin-top: 15px; gap: 10px 18px; }
  .transfer-kayak .transfer-scene__pause { grid-area: scene; align-self: start; justify-self: end; position: relative; right: auto; bottom: auto; margin: 18px var(--gutter) 0; }
}
@media (max-width: 380px) {
  .transfer-kayak__panel { padding: 18px; }
  .transfer-kayak .domain-search input { padding: 14px 10px; }
  .transfer-kayak .domain-search .btn { padding: 14px 12px; }
}
@media (max-width: 600px) {
  .transfer-kayak .domain-search { display: block; margin-top: 23px; }
  .transfer-kayak .domain-search input { width: 100%; padding: 16px; }
  .transfer-kayak .domain-search .btn { width: 100%; margin-top: 4px; }
  .transfer-kayak__links { font-size: 12px; gap: 10px 20px; }
  .transfer-expedition .btn-row { flex-direction: column; align-items: stretch; gap: 12px; }
  .transfer-expedition .btn-row .btn { font-size: 14px; padding-inline: 16px; }
  .transfer-expedition h1 { font-size: clamp(42px, 10vw, 60px); }
  .transfer-prep__list { grid-template-columns: 1fr; gap: 18px; padding-block: 25px; }
  .transfer-prep__list li + li { padding-top: 17px; border-top: 1px solid #d6e5df; }
}
