/* Royale Fishing: reconstructed from the original page composition. */
.legacy-page {
    padding: 0 0 5rem;
    background: var(--color-bg-light);
}

.legacy-page .container {
    max-width: var(--container-max-width);
    padding: 0 2rem;
}

.legacy-page h1 {
    width: 100vw;
    min-height: 425px;
    margin: 0 0 5.5rem calc(50% - 50vw);
    padding: 11.5rem 1.5rem 4rem;
    display: grid;
    place-items: center;
    text-align: center;
    color: #fff;
    background: linear-gradient(rgb(7 15 30 / 48%), rgb(7 15 30 / 48%)), url('../images/services/royale-fishing/hero.webp') center / cover no-repeat;
}

.legacy-page h1 + h3 {
    max-width: 510px;
    margin: 0 0 1.4rem;
    color: var(--color-primary);
}

.legacy-page h1 + h3::after {
    content: "Want to enjoy the best of sports fishing in Costa Rica, Jaco Royale should be your preferred choice for ultimate Costa Rica fishing packages with remarkable fish catching experiences. Whether you prefer inshore or offshore fishing, we take you to the incredibly fertile fishing destinations for a fulfilling experience. We arrange you the best fishing tours on both Pacific and Caribbean coasts where you can catch a huge variety of specifies under the guidance of fishing experts. Our professional captains assure your safety while making sure you pick the fish of your dream while sailing on well-equipped boats.";
    display: block;
    margin-top: 1rem;
    color: var(--color-text-muted);
    font-family: var(--font-body);
    font-size: 1.05rem;
    font-weight: 400;
    line-height: 1.8;
    text-transform: none;
}

.legacy-page h1 + h3 + h2,
.legacy-page h1 + h3 + h2 + h2 {
    width: 50%;
    min-height: 330px;
    margin: 5rem 0 0;
    padding: 13rem 2.5rem 2.25rem;
    display: inline-flex;
    align-items: flex-end;
    color: #fff;
    background: linear-gradient(0deg, rgb(7 15 30 / 72%), transparent 65%), url('../images/services/royale-fishing/offshore.png') center / cover no-repeat;
    vertical-align: bottom;
}

.legacy-page h1 + h3 + h2 + h2 {
    margin-left: -0.35rem;
    background-image: linear-gradient(0deg, rgb(7 15 30 / 72%), transparent 65%), url('../images/services/royale-fishing/inshore.png');
}

.legacy-page h1 + h3 + h2::after {
    content: "It’s the ultimate in fishing for those who can’t resist a serious challenge. Marlin, sailfish, wahoo, yellowfin tuna – there’s big game out there for seasoned anglers and for those who want to learn the ropes of deep sea fishing. Known to put up a tenacious fight, these stalwarts of the ocean can keep you on tenterhooks for hours, giving you the real taste of a Costa Rica fishing adventure.";
    position: absolute;
    width: min(510px, 42vw);
    margin: 12.2rem 0 0;
    color: var(--color-text-muted);
    font-family: var(--font-body);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.7;
}

.legacy-page h1 + h3 + h2 + h2 + p {
    width: calc(50% - 2rem);
    margin: 1.5rem 0 7rem auto;
    color: var(--color-text-muted);
}

.legacy-page h1 + h3 + h2 + h2 + p + h2 {
    clear: both;
    margin-top: 0;
    text-align: center;
}

.legacy-page figure {
    display: inline-flex;
    width: 24%;
    min-height: 155px;
    margin: 1.5rem 0 1.25rem;
    align-items: center;
    justify-content: center;
    vertical-align: top;
}

.legacy-page figure img {
    width: auto;
    max-width: 88%;
    max-height: 150px;
    object-fit: contain;
    border-radius: 0;
    box-shadow: none;
}

.legacy-page h3:not(:first-of-type) {
    clear: both;
    margin-top: 5rem;
    text-align: center;
    color: var(--color-primary);
}

.legacy-page h3:not(:first-of-type)::after {
    content: "You can pick a Costa Rica Sport fishing package from a host of options, which range from half-day to multi-day tours.";
    display: block;
    max-width: 640px;
    margin: 1rem auto 0;
    color: var(--color-text-muted);
    font-family: var(--font-body);
    font-size: 1.05rem;
    font-weight: 400;
    line-height: 1.7;
    text-transform: none;
}

.legacy-page h3:not(:first-of-type) ~ figure {
    width: 24%;
}

.legacy-page h3:not(:first-of-type) ~ figure img {
    max-width: 232px;
    border-radius: 50%;
}

.legacy-page h3:not(:first-of-type) ~ figure + p {
    display: inline-block;
    width: 24%;
    margin: 0 0 3rem;
    padding: 0 1rem;
    vertical-align: top;
    font-size: 0.96rem;
    line-height: 1.65;
}

.legacy-page h2:last-of-type {
    margin-top: 4rem;
    text-align: center;
}

@media (max-width: 800px) {
    .legacy-page .container { padding: 0 1.25rem; }
    .legacy-page h1 { min-height: 330px; margin-bottom: 4rem; padding-top: 9rem; }
    .legacy-page h1 + h3 + h2,
    .legacy-page h1 + h3 + h2 + h2 { width: 100%; margin: 3rem 0 0; }
    .legacy-page h1 + h3 + h2 + h2 { margin-top: 0; }
    .legacy-page h1 + h3 + h2::after { position: static; display: block; width: auto; margin: 2rem 0 0; color: var(--color-text-muted); }
    .legacy-page h1 + h3 + h2 + h2 + p { width: auto; margin: 1.5rem 0 4rem; }
    .legacy-page figure, .legacy-page h3:not(:first-of-type) ~ figure { width: 49%; }
    .legacy-page h3:not(:first-of-type) ~ figure + p { width: 49%; padding: 0 .5rem; }
}

/* Complete fishing package page, rebuilt from the original hierarchy. */
body:has(.fishing-page) .legacy-page { display: none; }
.fishing-page { margin-top: var(--site-header-height); background: #fff; color: var(--color-text); }
.fishing-page h1, .fishing-page h2, .fishing-page h3, .fishing-page h4 { font-family: var(--font-headings); }
.fishing-page .fish-hero { min-height: clamp(280px, 27vw, 430px); display: grid; place-items: center; background: linear-gradient(rgba(5,25,56,.25),rgba(5,25,56,.25)),url('../images/services/royale-fishing/hero.webp') center / cover; }
/* The landing hero is the active page title, never inherited legacy copy. */
.fishing-page .fish-hero :is(h1, h2) { max-width: none; margin: 0 1rem; color: #fff; font-family: var(--font-headings); font-size: clamp(2.25rem, 5vw, 4.75rem); font-weight: 600; line-height: 1; letter-spacing: -.035em; text-align: center; text-transform: none; text-shadow: 0 3px 20px rgba(0,0,0,.36); }
.fishing-page .fish-container { width: min(1120px, calc(100% - 3rem)); margin: 0 auto; }
.fishing-page .fish-intro { display: grid; grid-template-columns: 1fr 1.1fr; gap: 4rem; align-items: center; padding: 5rem 0 3rem; }
.fishing-page h2 { color: var(--color-primary); font-size: clamp(1.7rem, 3vw, 2.7rem); line-height: 1.06; text-transform: uppercase; margin: 0 0 1rem; }
.fishing-page p { line-height: 1.75; color: var(--color-text-muted); }
.fishing-page .video-frame { aspect-ratio: 16 / 9; box-shadow: 0 15px 35px rgba(6,36,84,.17); }
.fishing-page .video-frame iframe { width: 100%; height: 100%; border: 0; }
.fishing-page .tour-section { background: linear-gradient(rgba(4,57,131,.93),rgba(4,57,131,.93)),url('../images/services/royale-fishing/tours-background.webp') center / cover; padding: 4.5rem 0; }
.fishing-page .tour-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1.8rem; align-items: stretch; }
.fishing-page .tour-card { display: flex; flex-direction: column; height: 100%; overflow: hidden; padding: .7rem .7rem 1.4rem; background: rgba(3,43,102,.78); border-radius: 13px; text-align: center; color: #fff; }
.fishing-page .tour-card img { display:block; width:100%; aspect-ratio: 1.8; object-fit:cover; }
.fishing-page .tour-card h2 { color:#fff; margin:1.2rem 0 .8rem; font-size:1.6rem; }
.fishing-page .tour-card p { margin: 0; color:#dce8fa; padding:0 .8rem; font-size:.93rem; }
.fishing-page .tour-card .fish-button { align-self: center; margin-top: auto; }
.fishing-page .fish-button { display:inline-block; margin-top:1rem; padding:.65rem 1rem; background:#f43b31; color:#fff; text-decoration:none; text-transform:uppercase; font-size:.78rem; font-weight:800; border-radius:4px; }
.fishing-page .species-section { padding: 4.8rem 0; text-align:center; }
.fishing-page .species-section > p, .fishing-page .highlights > p { max-width:760px; margin:0 auto 1.8rem; }
.fishing-page .species-grid { display:grid; grid-template-columns: repeat(4,1fr); gap:1.1rem; max-width:900px; margin:2.2rem auto 0; }
.fishing-page .species-grid article { color:var(--color-primary); font-family:var(--font-headings); font-size:1.1rem; font-weight:700; }
.fishing-page .species-grid img { width:100%; height:105px; object-fit:contain; display:block; margin-bottom:.45rem; }
.fishing-page .highlights { text-align:center; padding-bottom:4.8rem; }
.fishing-page .highlight-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.4rem; margin-top:2.5rem; }
.fishing-page .highlight-grid img { display:block; width:145px; height:145px; margin:0 auto 1rem; object-fit:cover; border-radius:50%; }
.fishing-page .highlight-grid h3 { color:var(--color-primary); margin:0 0 .5rem; font-size:1.25rem; }
.fishing-page .highlight-grid p { font-size:.88rem; margin:0; }
.fishing-page .itinerary { background:#e8e8e8; padding:4.5rem 0; }
.fishing-page .itinerary > .fish-container > h2, .fishing-page .itinerary > .fish-container > p { text-align:center; }
.fishing-page .itinerary > .fish-container > p { margin:0 0 2rem; }
.fishing-page .days-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; }
.fishing-page .day { background:rgba(255,255,255,.72); border-radius:12px; padding:1.3rem; }
.fishing-page .day h3 { color:var(--color-primary); margin:0 0 .7rem; font-size:1.3rem; }
.fishing-page .day ul { list-style:none; padding:0; margin:0; }
.fishing-page .day li { padding:.25rem 0 .25rem 1.1rem; position:relative; font-size:.9rem; }
.fishing-page .day li::before { content:'•'; color:#f43b31; position:absolute; left:0; font-weight:800; }
.fishing-page .fish-services { padding:4.5rem 0; text-align:center; }
.fishing-page .fish-services > p { max-width:780px; margin:0 auto 2rem; }
.fishing-page .fish-service-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1.3rem; align-items:stretch; text-align:left; }
.fishing-page .fish-service-cards article { display:flex; flex-direction:column; height:100%; background:#f6f6f6; padding:.8rem .8rem 1.2rem; }
.fishing-page .fish-service-cards img { width:100%; aspect-ratio:1.65; object-fit:cover; display:block; }
.fishing-page .fish-service-cards h3 { color:var(--color-primary); font-size:1.25rem; margin:1rem 0 .5rem; }
.fishing-page .fish-service-cards p, .fishing-page .fish-service-cards ul { font-size:.9rem; line-height:1.65; }
.fishing-page .fish-service-cards ul { padding-left:1.1rem; }
.fishing-page .fish-service-cards .fish-button { align-self:flex-start; margin-top:auto; }
@media (max-width:760px) { .fishing-page .fish-intro, .fishing-page .tour-grid, .fishing-page .days-grid, .fishing-page .fish-service-cards { grid-template-columns:1fr; } .fishing-page .species-grid { grid-template-columns:repeat(2,1fr); } .fishing-page .highlight-grid { grid-template-columns:repeat(2,1fr); } .fishing-page .fish-container { width:min(100% - 2.25rem, 1120px); } }
