/* A modest reading-size increase on tablets and desktops; retain the mobile scale. */
@media (min-width: 761px) {
  body { font-size: 18px; }
  #main p { font-size: 17px; }
  #main :is(.hero-description, .yoles-lead, .social-intro > p:last-child) { font-size: 18px; }
  #main :is(.fun-intro > p:first-child, .licence-intro > p:first-of-type) { font-size: 20px; }
  #main :is(h2, .guide-section-intro h2, .reservation-copy h2, .enquiry-copy h2) {
    font-size: clamp(34px, 3.6vw, 49px);
  }
  #main .hero h1 { font-size: clamp(49px, 5.4vw, 78px); }
  #main :is(.guide-hero h1, .licence-hero h1) { font-size: clamp(46px, 4.6vw, 67px); }
  #main .yoles-hero h1 { font-size: clamp(43px, 5vw, 73px); }
  #main .fun-hero h1 { font-size: clamp(68px, 7.4vw, 106px); }
  #main #experience-title { font-size: clamp(43px, 4.8vw, 68px); }
  #main h3 { font-size: 26px; }
  #main .experience-copy h3 { font-size: clamp(26px, 2.4vw, 34px); }
  #main .experience-copy p { font-size: 15px; line-height: 1.6; max-width: 230px; }
  #main .licence-card h3 { font-size: 32px; }
  #main .destination-copy h3 { font-size: 29px; }
  #main .contact-unified h3 { font-size: 28px; }
  #main .yoles-calendar-bar h3 { font-size: 21px; }
  #main .yoles-closeup h3 { font-size: 34px; }
  #main .fun-card h2 { font-size: 25px; }
  #main :is(.fun-date, .fun-description) { font-size: 15px; }
  #main .fun-place { font-size: 14px; }
  #main .fun-agenda-header h2 { font-size: 30px; }
  #main :is(.button, .text-link, .gift-option) { font-size: 16px; line-height: 1.5; white-space: normal; }
  #main .button svg { flex-shrink: 0; }
  #main :is(.hero-actions, .licence-hero-actions) { flex-wrap: wrap; }
  #main .discovery-links > a { font-size: 20px; }
  #main :is(.eyebrow, .fine-print, .gift-note, .booking-note, .hashtag-note,
    .destination-coordinate, .destination-note, .map-disclaimer, .map-caption,
    .fun-note, .fun-checked, .fun-category, .fun-agenda-meta, .yoles-table-note,
    .yoles-booking-note, .form-privacy, .form-required, .licence-availability,
    .guide-sources, .licence-sources, .boat-equipment > span, .guide-back,
    .guide-facts > span, .guide-jump, .licence-conditions, .small-note, figcaption) {
    font-size: 14px; line-height: 1.7;
  }
  #main :is(.card-number, .discovery-number, .fish-tag, .image-label) { font-size: 12px; }
  #main .boat-ribbon { font-size: 12px; line-height: 1.6; }
  #main .spec-grid p { font-size: 14px; }
  #main .mode-tabs button { font-size: 15px; line-height: 1.5; }
  #main .simple-benefits { font-size: 13px; flex-wrap: wrap; }
  #main :is(.faq-list summary, .fishing-rules li) { font-size: 17px; }
  #main :is(.departure-checklist > label, .map-stop) { font-size: 16px; }
  #main :is(.region-filters button, .fun-filters button, .destination-links > a) { font-size: 15px; }
  #main .destination-links { flex-wrap: wrap; }
  #main .booking-steps { font-size: 15px; }
  #main .booking-steps li { font-size: 15px; line-height: 1.7; }
  #main .booking-card-top { font-size: 13px; }
  #main .booking-price { font-size: 14px; }
  #main .booking-price strong { font-size: 54px; }
  #main .booking-price > span { font-size: 13px; }
  #main .booking-detail { font-size: 14px; line-height: 1.6; }
  #main .booking-question { font-size: 14px; }
  #main .gift-voucher > .eyebrow { font-size: 20px; }
  #main .gift-voucher > p:not(.eyebrow) { font-size: 49px; }
  #main .yoles-tabs a { font-size: 15px; }
  #main .yoles-table { font-size: 15px; }
  #main .yoles-table :is(caption, thead th, tbody small) { font-size: 13px; }
  #main .yoles-time { font-size: 15px; }
  #main .form-field { font-size: 14px; }
  #main .form-field :is(input, select) { font-size: 17px; }
  #main .enquiry-copy .enquiry-note { font-size: 14px !important; }
  .site-header nav { font-size: 15px; gap: 15px; }
  .site-header nav > .button { font-size: 15px; }
  .language-switch select { font-size: 14px; }
  .footer-main > p { font-size: 15px; }
  :is(.footer-bottom, .footer-photo-credits, .back-top) { font-size: 13px; }
  .info-dialog p { font-size: 17px; }
  .fun-dialog h2 { font-size: 17px; }
}

/* Larger original logo artwork, without changing its proportions or lettering. */
.site-header .brand { flex: 0 0 auto; gap: 10px; }
.site-header .brand-logo { width: 84px; height: auto; flex-shrink: 0; }
.site-header .brand .brand-wordmark { width: 148px; }
.site-header .brand small { font-size: 8px; }
.footer-main .brand-logo { width: 84px; height: auto; }
.footer-main .brand .brand-wordmark { width: 148px; }
#main .experience-copy > svg { display: block; width: 32px; height: 32px; flex: 0 0 32px; background: transparent; }
#main .experience-copy > div { min-width: 0; }

@media (min-width: 761px) and (max-width: 1440px) {
  .site-header nav { gap: 0; }
  .site-header nav > a:not(.button) { font-size: 18px; }
  .site-header nav > .button { font-size: 17px; }
}
@media (min-width: 761px) and (max-width: 1150px) {
  #main .experience-copy { flex-wrap: wrap; }
  #main .experience-copy > svg { margin-top: 0; }
  #main .experience-copy > div { flex-basis: 100%; }
  #main .experience-copy .circle-arrow { display: none; }
  #main .experience-card { min-height: 420px; }
  #main .gift-voucher > p:not(.eyebrow) { font-size: 43px; }
}
@media (max-width: 760px) {
  .site-header .brand { gap: 8px; }
  .site-header .brand-logo { width: 66px; }
  .site-header .brand .brand-wordmark { width: 102px; }
  .site-header .brand small { font-size: 7px; }
  .site-header .nav-shell { width: calc(100% - 32px); gap: 8px; }
  .footer-main .brand-logo { width: 76px; }
  .footer-main .brand .brand-wordmark { width: 142px; }
}
@media (max-width: 480px) {
  .footer-main { grid-template-columns: 1fr; gap: 20px; }
  .footer-main > .brand { grid-row: 1; grid-column: 1; }
  .footer-main > p { grid-row: 2; grid-column: 1; }
  .footer-main > .back-top { grid-row: 3; grid-column: 1; }
}
@media (max-width: 380px) {
  .site-header .brand { gap: 6px; }
  .site-header .brand-logo { width: 56px; }
  .site-header .brand .brand-wordmark { width: 84px; }
  .site-header .nav-shell { width: calc(100% - 24px); gap: 6px; }
  .language-switch select { width: 92px; }
  .footer-main .brand-logo { width: 66px; }
  .footer-main .brand .brand-wordmark { width: 128px; }
}
