.ferry-care-section{padding-block:2.25rem;background:var(--sand,#f1f7fa)}
.ferry-care{margin:0;padding:1.35rem 1.4rem 1.2rem;background:#fff;border:1px solid rgba(10,37,64,.07);border-radius:18px}
.ferry-care__kicker{margin:0 0 .35rem;color:#008f8c;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ferry-care__title{margin:0 0 .4rem;font-size:1.35rem;line-height:1.3;color:#0f172a}
.ferry-care__lead{margin:0 0 .85rem;color:#475569;font-size:.95rem;line-height:1.5}
.ferry-care__list{margin:0;padding:0;list-style:none;display:grid;gap:.4rem}
.ferry-care__list li{display:flex;gap:.5rem;align-items:flex-start;color:#334155;font-size:.9rem;line-height:1.45}
.ferry-care__list svg{width:14px;height:14px;margin-top:.2rem;color:#008f8c;flex:0 0 auto}
.ferry-care__note{margin:.85rem 0 0;color:#64748b;font-size:.8rem;line-height:1.45}
.ferry-care__rewards{margin:.55rem 0 0;font-size:.9rem}
.ferry-care__rewards a{color:#008f8c;font-weight:700}
.nautika-rewards-apply{padding:1rem 1.1rem}
.nautika-rewards-apply p{color:#334155}
@media (max-width:767.98px){.ferry-care-section{padding-block:1.6rem}.ferry-care{padding:1.1rem 1rem}.ferry-care__title{font-size:1.2rem}}
.ferry-rewards-promo-section{
  padding-block:var(--aa-section-y,4rem);
  background:var(--sand,#f1f7fa);
}
@media (max-width:767.98px){
  .ferry-rewards-promo-section{padding-block:3rem}
}
.ferry-rewards-promo{
  position:relative;
  overflow:hidden;
  margin:0;
  padding:2rem 2rem 1.7rem;
  background:#fff;
  border:1px solid rgba(10,37,64,.07);
  border-radius:var(--radius-lg,22px);
  box-shadow:var(--shadow-card,0 14px 40px rgba(10,37,64,.08));
  color:var(--navy,#0a2540);
}
.ferry-rewards-promo::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg,var(--coral,#ff600a),#ff8533,var(--lagoon,#00aaa6));
}
.ferry-rewards-promo__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1.5rem 2rem;
}
.ferry-rewards-promo__intro{min-width:0;flex:1}
.ferry-rewards-promo__kicker{
  margin:0 0 .45rem;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--coral,#ff600a);
}
.ferry-rewards-promo__title{
  margin:0 0 .7rem;
  font-size:clamp(1.45rem,2.4vw,2rem);
  font-weight:800;
  line-height:1.25;
  color:var(--navy,#0a2540);
  text-shadow:none;
}
.ferry-rewards-promo__value{
  display:inline-block;
  margin:0 0 .7rem;
  padding:.45rem .75rem;
  max-width:100%;
  border-radius:999px;
  background:rgba(255,96,10,.08);
  color:var(--navy,#0a2540);
  font-size:.9rem;
  line-height:1.45;
  font-weight:700;
}
.ferry-rewards-promo__value strong{
  color:var(--coral,#ff600a);
  font-weight:800;
}
.ferry-rewards-promo__lead{
  margin:0;
  max-width:none;
  font-size:.95rem;
  line-height:1.6;
  font-weight:500;
  color:var(--muted,#66747b);
  text-shadow:none;
}
.ferry-rewards-promo__lead strong{
  color:var(--coral,#ff600a);
  font-weight:800;
}
.ferry-rewards-promo__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  margin:1.5rem 0 0;
  padding:0;
  list-style:none;
}
.ferry-rewards-promo__card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:1.2rem 1.15rem 1.15rem;
  background:#fff;
  border:1px solid rgba(10,37,64,.07);
  border-radius:18px;
  box-shadow:var(--shadow-soft,0 8px 32px rgba(10,37,64,.06));
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.ferry-rewards-promo__card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-card,0 14px 40px rgba(10,37,64,.1));
  border-color:transparent;
}
.ferry-rewards-promo__card--complete{
  background:linear-gradient(180deg,#fff 0%,#eef8f8 100%);
  border:1.5px solid rgba(0,170,166,.38);
  box-shadow:0 10px 28px rgba(0,143,140,.1);
}
.ferry-rewards-promo__card--complete:hover{
  border-color:rgba(0,170,166,.5);
}
.ferry-rewards-promo__card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  margin:0 0 1rem;
}
.ferry-rewards-promo__icon{
  width:48px;
  height:48px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,var(--coral,#ff600a),#ff8533);
  color:#fff;
  box-shadow:0 8px 20px rgba(255,96,10,.28);
}
.ferry-rewards-promo__icon .aa-icon,
.ferry-rewards-promo__icon svg{
  width:1.2rem;
  height:1.2rem;
  fill:#fff;
  color:#fff;
}
.ferry-rewards-promo__card--complete .ferry-rewards-promo__icon{
  background:linear-gradient(135deg,var(--lagoon,#00aaa6),var(--lagoon-deep,#008f8c));
  box-shadow:0 8px 20px rgba(0,170,166,.28);
}
.ferry-rewards-promo__num{
  min-width:28px;
  height:28px;
  padding:0 .4rem;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,96,10,.1);
  color:var(--coral,#ff600a);
  font-size:.78rem;
  font-weight:800;
}
.ferry-rewards-promo__card--complete .ferry-rewards-promo__num{
  background:rgba(0,170,166,.12);
  color:var(--lagoon-deep,#008f8c);
}
.ferry-rewards-promo__card-label{
  margin:0 0 .35rem;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
  color:var(--lagoon-deep,#008f8c);
}
.ferry-rewards-promo__card-title{
  margin:0 0 .4rem;
  font-size:1.02rem;
  font-weight:800;
  line-height:1.35;
  color:var(--navy,#0a2540);
}
.ferry-rewards-promo__card-text{
  margin:0;
  font-size:.88rem;
  line-height:1.55;
  font-weight:600;
  color:var(--muted,#66747b);
}
.ferry-rewards-promo__unlocks{
  margin:.65rem 0 0;
  padding:0;
  list-style:none;
  color:var(--navy,#0a2540);
  font-size:.82rem;
  line-height:1.45;
  font-weight:600;
}
.ferry-rewards-promo__unlocks li{
  display:flex;
  align-items:flex-start;
  gap:.45rem;
}
.ferry-rewards-promo__unlocks li+li{margin-top:.4rem}
.ferry-rewards-promo__unlocks svg,
.ferry-rewards-promo__unlocks i{
  flex-shrink:0;
  width:14px;
  height:14px;
  margin-top:.15rem;
  color:var(--lagoon-deep,#008f8c);
  fill:var(--lagoon-deep,#008f8c);
}
.ferry-rewards-promo__note{
  margin:1.15rem 0 0;
  font-size:.8rem;
  line-height:1.5;
  font-weight:600;
  color:var(--muted,#66747b);
}
.ferry-rewards-promo__cta{
  flex-shrink:0;
  background:var(--coral,#ff600a);
  border:0;
  color:#fff;
  font-weight:700;
  border-radius:999px;
  padding:.75rem 1.45rem;
  box-shadow:0 12px 28px rgba(255,96,10,.28);
  white-space:nowrap;
}
.ferry-rewards-promo__cta:hover{
  background:var(--coral-deep,#e05408);
  color:#fff;
  transform:translateY(-2px);
}
@media (min-width:1200px){
  .ferry-rewards-promo__card--step:not(:nth-child(3))::after{
    content:"";
    position:absolute;
    top:2.15rem;
    right:-1.05rem;
    width:.95rem;
    height:2px;
    background:linear-gradient(90deg,rgba(255,96,10,.55),rgba(255,96,10,.12));
    pointer-events:none;
  }
}
@media (max-width:1199.98px){
  .ferry-rewards-promo__value{font-size:.85rem}
}
@media (max-width:991.98px){
  .ferry-rewards-promo{padding:1.5rem 1.25rem 1.35rem}
  .ferry-rewards-promo__head{flex-direction:column;align-items:stretch}
  .ferry-rewards-promo__cta{width:100%;white-space:normal}
  .ferry-rewards-promo__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ferry-rewards-promo__value{
    display:block;
    border-radius:14px;
    white-space:normal;
  }
}
@media (max-width:575.98px){
  .ferry-rewards-promo{padding:1.25rem 1.05rem 1.15rem}
  .ferry-rewards-promo__grid{grid-template-columns:1fr;gap:.9rem}
  .ferry-rewards-promo__title{font-size:1.3rem}
  .ferry-rewards-promo__card--step:not(:nth-child(3))::after{
    content:"";
    position:absolute;
    left:1.55rem;
    bottom:-.7rem;
    width:2px;
    height:.7rem;
    background:linear-gradient(180deg,rgba(255,96,10,.5),rgba(255,96,10,.08));
    pointer-events:none;
  }
}

/* Compact rewards teaser attached under the hub Search button */
.nautika-ferry-search:has(.nautika-ferry-search__rewards) .nautika-ferry-search__actions{
  padding-bottom:.65rem;
}
.nautika-ferry-search__rewards{
  display:flex;
  align-items:center;
  gap:.65rem;
  padding:.65rem 1.25rem .75rem;
  border-top:1px solid rgba(6,59,92,.07);
  background:linear-gradient(180deg,rgba(255,96,10,.045),#f8fbfc);
  text-decoration:none;
  color:var(--navy,#0a2540);
  transition:background .2s ease;
}
.nautika-ferry-search__rewards:hover,
.nautika-ferry-search__rewards:focus-visible{
  background:linear-gradient(180deg,rgba(255,96,10,.07),#f4f9fb);
  color:var(--navy,#0a2540);
}
.nautika-ferry-search__rewards:focus-visible{
  outline:2px solid var(--coral,#ff600a);
  outline-offset:-2px;
}
.nautika-ferry-search__rewards-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 1.75rem;
  width:1.75rem;
  height:1.75rem;
  margin-top:0;
  border-radius:8px;
  background:rgba(255,96,10,.1);
  color:var(--coral,#ff600a);
}
.nautika-ferry-search__rewards-icon .aa-icon,
.nautika-ferry-search__rewards-icon svg{
  width:.95rem;
  height:.95rem;
  fill:currentColor;
}
.nautika-ferry-search__rewards-copy{
  min-width:0;
}
.nautika-ferry-search__rewards-main{
  margin:0;
  font-size:.9rem;
  line-height:1.4;
  font-weight:600;
  color:var(--navy,#0a2540);
}
.nautika-ferry-search__rewards-main strong{
  color:var(--coral,#ff600a);
  font-weight:800;
  font-size:1.05em;
}
.nautika-ferry-search__rewards-more{
  font-weight:700;
  color:var(--lagoon-deep,#008f8c);
  white-space:nowrap;
}
.nautika-ferry-search__rewards:hover .nautika-ferry-search__rewards-more{
  text-decoration:underline;
}
@media (max-width:575.98px){
  .nautika-ferry-search__rewards{
    gap:.55rem;
    padding:.65rem 1rem .75rem;
  }
  .nautika-ferry-search__rewards-icon{
    width:1.6rem;
    height:1.6rem;
    flex-basis:1.6rem;
  }
  .nautika-ferry-search__rewards-main{font-size:.84rem}
  .nautika-ferry-search__rewards-more{white-space:normal}
}

/* Results page: compact reward strip + per-card CTA hint */
.nautika-leg-block__meta + .nautika-results-reward,
.nautika-leg-block .small.text-muted + .nautika-results-reward{
  margin-top:0;
}
.nautika-results-reward{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.65rem .9rem;
  margin:0 0 .85rem;
  padding:.8rem 1rem;
  border:1.5px solid rgba(255,96,10,.28);
  border-radius:14px;
  background:linear-gradient(180deg,#fff4eb 0%,#ffe8d6 100%);
  box-shadow:0 1px 0 rgba(255,255,255,.7) inset;
  color:var(--navy,#0a2540);
}
.nautika-results-reward__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 2.15rem;
  width:2.15rem;
  height:2.15rem;
  border-radius:50%;
  background:var(--coral,#ff600a);
  color:#fff;
  box-shadow:0 4px 10px rgba(255,96,10,.28);
}
.nautika-results-reward__icon .aa-icon,
.nautika-results-reward__icon svg{
  width:1.05rem;
  height:1.05rem;
  fill:currentColor;
}
.nautika-results-reward__copy{
  min-width:0;
  flex:1 1 16rem;
}
.nautika-results-reward__main{
  margin:0;
  font-size:1.02rem;
  line-height:1.35;
  font-weight:700;
  color:var(--navy,#0a2540);
}
.nautika-results-reward__main strong{
  color:var(--coral,#ff600a);
  font-weight:800;
  font-size:1.12em;
}
.nautika-results-reward__sub{
  margin:.18rem 0 0;
  font-size:.86rem;
  line-height:1.4;
  font-weight:600;
  color:var(--muted,#66747b);
}
.nautika-results-reward__link{
  margin-left:auto;
  font-size:.82rem;
  font-weight:700;
  color:var(--lagoon-deep,#008f8c);
  text-decoration:none;
  white-space:nowrap;
}
.nautika-results-reward__link:hover,
.nautika-results-reward__link:focus-visible{
  color:var(--lagoon-deep,#008f8c);
  text-decoration:underline;
}
.nautika-schedule-card__closed{
  margin:0;
  max-width:16rem;
  text-align:right;
  font-size:.8rem;
  line-height:1.4;
  font-weight:600;
  color:var(--muted,#66747b);
}
.nautika-schedule-card__cta{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:.35rem;
  flex:0 0 auto;
}
.nautika-schedule-card__reward{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  margin:0;
  padding:.28rem .65rem .28rem .38rem;
  border:1px solid rgba(255,96,10,.28);
  border-radius:999px;
  background:#fff4eb;
  font-size:.8rem;
  line-height:1.2;
  font-weight:800;
  color:var(--coral,#ff600a);
  white-space:nowrap;
}
.nautika-schedule-card__reward-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.2rem;
  height:1.2rem;
  border-radius:50%;
  background:var(--coral,#ff600a);
  color:#fff;
}
.nautika-schedule-card__reward-icon .aa-icon,
.nautika-schedule-card__reward-icon svg{
  width:.7rem;
  height:.7rem;
  fill:currentColor;
}
.nautika-schedule-card__price{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:.08rem;
  text-align:right;
  min-width:7.25rem;
}
.nautika-schedule-card__price-was{
  font-size:.82rem;
  font-weight:500;
  line-height:1.2;
  color:#94a3b8;
  text-decoration:line-through;
  text-decoration-thickness:1px;
}
.nautika-schedule-card__price-now{
  font-size:1.5rem;
  font-weight:800;
  line-height:1.1;
  color:#0f172a;
}
.nautika-schedule-card__price-now-label{
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:#64748b;
}
.nautika-schedule-card__classes{
  display:flex;
  flex-direction:column;
  gap:.2rem;
  line-height:1.4;
}
.nautika-schedule-card__class-line{display:block}
.nautika-schedule-card__class-was{
  font-size:.85em;
  color:#94a3b8;
  text-decoration:line-through;
  text-decoration-thickness:1px;
  margin-right:.3rem;
}
.nautika-schedule-card__class-now{
  font-weight:700;
  color:#0f172a;
}
@media (max-width:575.98px){
  .nautika-results-reward{
    align-items:flex-start;
    padding:.75rem .85rem;
    gap:.55rem .65rem;
  }
  .nautika-results-reward__main{font-size:.95rem}
  .nautika-results-reward__sub{font-size:.8rem}
  .nautika-results-reward__link{
    margin-left:0;
    width:100%;
    padding-left:2.8rem;
  }
  .nautika-schedule-card__cta{align-items:stretch}
  .nautika-schedule-card__reward{white-space:nowrap}
  .nautika-schedule-card__price{
    align-items:flex-start;
    text-align:left;
    margin-top:.15rem;
    min-width:0;
  }
  .nautika-schedule-card__price-now{font-size:1.35rem}
}
