@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../vendor/fonts/source-sans-pro-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../vendor/fonts/source-sans-pro-600.ttf) format('truetype');
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../vendor/fonts/source-sans-pro-700.ttf) format('truetype');
}

/* Site source styles. OnePress build output remains unchanged. */
:root{--fw-blue:#123b58;--fw-teal:#008a9b;--fw-ink:#243c4b;--fw-muted:#60727d;--fw-line:#dce5e9;--fw-tint:#f2f6f7;--swiper-theme-color:#fff}
html{scroll-behavior:smooth}body.freewave-site{font-family:'Source Sans Pro',Arial,sans-serif;color:var(--fw-ink);line-height:1.7;background:white}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:'Source Sans Pro',Arial,sans-serif;color:var(--fw-blue);line-height:1.2;letter-spacing:normal;text-transform:none;font-weight:600}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:15px}a{color:var(--fw-teal)}a:hover{color:var(--fw-blue);text-decoration:none}img{max-width:100%;height:auto}button,a,input{touch-action:manipulation}button{cursor:pointer}:focus-visible{outline:3px solid #00aebc;outline-offset:4px}.container{max-width:1240px}.freewave-topbar{background:var(--fw-blue);color:white;letter-spacing:.035em}.freewave-topbar .container{display:flex;align-items:center;gap:24px;padding-top:8px;padding-bottom:8px}.freewave-topbar a{color:white}.freewave-languages{margin-left:auto;display:flex;gap:15px}.freewave-languages [aria-current]{color:#7de1e7;text-decoration:underline;text-underline-offset:5px}.freewave-header{background:white;position:relative;z-index:30;border-bottom:1px solid var(--fw-line)}.freewave-header>.container{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:108px}.freewave-logo{display:block;flex:0 0 210px}.freewave-logo img{width:210px;height:auto}.freewave-menu{display:flex;align-items:center;gap:23px;list-style:none;margin:0;padding:0}.freewave-menu>li{position:relative;display:flex;align-items:center}.freewave-menu a{display:block;color:var(--fw-blue);font-weight:600;padding:24px 0}.freewave-menu .sub-menu{display:none;list-style:none;margin:0;padding:10px 20px;position:absolute;left:0;top:100%;min-width:230px;background:white;box-shadow:0 12px 30px #123b581c}.freewave-menu li:hover>.sub-menu,.freewave-menu li:focus-within>.sub-menu,.freewave-menu li.submenu-open>.sub-menu{display:block}.freewave-menu .sub-menu a{padding:8px 0}.freewave-menu .sub-menu li{position:relative}.freewave-menu .sub-menu .sub-menu{left:100%;top:0}.submenu-toggle{padding:0 0 0 5px;border:0;background:transparent;color:var(--fw-blue)}.menu-toggle{display:none;background:transparent;border:1px solid var(--fw-line);padding:8px 14px;color:var(--fw-blue)}.freewave-slider{height:clamp(420px,42vw,670px);background:var(--fw-blue)}.freewave-slider .swiper-slide{height:100%;position:relative}.slide-image{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.slide-shade{position:absolute;inset:0;background:linear-gradient(90deg,#082c45b8,transparent 90%)}.slide-copy{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-left:60px;padding-right:70px}.slide-copy h2{color:white!important;max-width:850px;font-weight:500!important;margin:15px 0 25px}.slide-copy .eyebrow{color:white}.slide-description{max-width:620px;color:white}.slide-description a{color:white;text-decoration:underline}.slide-description p{margin:0 0 10px}.eyebrow{letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--fw-teal)}.swiper-button-prev,.swiper-button-next{background:transparent;border:0}.freewave-slider .swiper-button-prev,.freewave-slider .swiper-button-next{width:35px;height:35px}.slider-pause{position:absolute;bottom:22px;right:24px;z-index:5;background:#103a5866;color:white;border:1px solid #ffffff80;width:38px;height:38px}.freewave-search{padding:28px 0;background:var(--fw-tint);border-bottom:1px solid var(--fw-line)}#nsWidget{min-height:110px;width:100%;position:relative}body.page-template-searchresults #nsWidget{min-height:500px}.freewave-section{padding:85px 0}.section-tint{background:var(--fw-tint)}.section-heading{max-width:840px;margin:0 auto 38px;text-align:center}.section-heading h1{}.section-heading h3{font-weight:400!important;line-height:1.5!important}.featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:45px}.featured-card{position:relative}.featured-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.featured-card a{display:block;position:relative}.featured-card a:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,#092b43c9)}.featured-card a>div{position:absolute;bottom:26px;left:28px;z-index:1;color:white}.featured-card h2{color:white!important;margin-bottom:12px}.split-panel{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split-panel>img{width:100%;aspect-ratio:5/4;object-fit:cover}.split-panel.reverse>img{order:2}.split-panel h2{margin-bottom:25px}.yacht-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.freewave-card{background:white;border:1px solid var(--fw-line);height:100%;display:flex;flex-direction:column}.freewave-card>a{display:block}.freewave-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.card-copy{padding:24px;flex:1;display:flex;flex-direction:column}.card-copy h3{min-height:2.5em;margin-bottom:20px}.card-copy h3 a{color:var(--fw-blue)}.yacht-facts{display:flex;justify-content:space-between;gap:6px;color:var(--fw-muted);margin-bottom:22px}.yacht-facts strong{display:block;color:var(--fw-blue);}.button0,button.button0{display:inline-flex;justify-content:center;gap:20px;align-items:center;background:var(--fw-teal);color:white;border:0;padding:12px 22px;line-height:1.5;font-weight:600;text-decoration:none}.button0:hover{background:var(--fw-blue);color:white}.card-copy>.button0{margin-top:auto}.fleet-banner{background:linear-gradient(#092b4359,#092b4373),url('../images/slide2.webp') center/cover;background-attachment:fixed;color:white;text-align:center}.fleet-banner h2{color:white!important}.fleet-banner .container{max-width:850px}.fleet-banner .eyebrow{color:#7de1e7}.fleet-banner .button0{margin-top:18px}.news-item{border-bottom:1px solid var(--fw-line);padding:24px 0}.news-item time{color:var(--fw-muted)}.news-item h3{margin:8px 0}.news-item h3 a{color:var(--fw-blue)}.news-item p{margin:0}.freewave-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.freewave-gallery a{display:block}.freewave-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.recommendation-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;margin-top:32px}.recommendation-grid img{width:100%}.recommendation-grid audio{width:100%}.freewave-footer{background:#10344d;color:#d3e0e8;padding:65px 0 20px;}.freewave-footer h3{color:white!important;margin:22px 0 16px}.freewave-footer a{color:#d3e0e8}.footer-logo{background:white;padding:12px;max-width:220px}.freewave-footer input[type=email]{width:100%;background:white;color:var(--fw-ink);padding:10px}.newsletter-consent{display:flex;gap:10px;line-height:1.5;margin:15px 0}.newsletter-consent input{flex-shrink:0;margin-top:4px}.partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.partner-grid img{max-height:75px;max-width:150px;object-fit:contain;background:white;padding:8px}.partner-logo{max-width:180px;margin-top:25px}.freewave-footer-bottom{margin-top:45px;border-top:1px solid #ffffff26;padding-top:22px;display:flex;gap:25px;align-items:center;justify-content:space-between;}.footer-menu{list-style:none;display:flex;flex-wrap:wrap;gap:15px;margin:0;padding:0}.freewave-footer-bottom p{margin:0}.parallax-page{background:var(--fw-tint);padding:45px 0}.single-intro{text-align:center}.single-intro h1{margin:0}.single-intro .h1{}.entry{line-height:1.8}.entry h2,.entry h3{margin-top:28px;margin-bottom:20px}main>section:not(.freewave-section):not(.freewave-slider):not(.freewave-search):not(.parallax-page){padding:50px 0}.entry ul{padding-left:22px}.entry table{border-collapse:collapse;min-width:100%;margin:0}.entry th{background:var(--fw-blue);color:white;white-space:nowrap;padding:12px}.entry td{border-bottom:1px solid var(--fw-line);padding:10px}.entry tr:nth-child(even){background:var(--fw-tint)}.table-scroll{max-width:100%;overflow-x:auto;margin:25px 0;overscroll-behavior-x:contain}.entry table[width]{width:max-content}.img-responsive{display:block;max-width:100%;height:auto}.leadimg{width:100%;margin-bottom:20px}.yacht-swiper{--swiper-theme-color:white;background:var(--fw-tint);margin-bottom:35px}.yacht-swiper .swiper-slide img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}.yacht-swiper .swiper-button-next,.yacht-swiper .swiper-button-prev{background:#10344d99;width:36px;height:48px;padding:10px}.single-yacht-content .tech-block h1{}.single-yacht-content .tech-block h1 span{font-weight:400}.single-yacht-content .tech-block>.row>.col-md-6{flex:0 0 100%;max-width:100%}.tech-block ul{list-style:none;padding:0}.tech-block li{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid var(--fw-line);}.tech-block li span{text-align:right;font-weight:600}.tech-block .canvas li{display:block}.blueprint{margin:30px 0}.yacht-charter-sale-form{background:var(--fw-tint);padding:30px;margin-top:35px}.wpcf7 input:not([type=checkbox]):not([type=radio]),.wpcf7 select,.wpcf7 textarea{max-width:100%;width:100%;padding:10px;border:1px solid #cad6dd;background:white}.wpcf7 input[type=submit]{background:var(--fw-teal)!important;color:white}.wpcf7 label{display:block}.freewave-lightbox{border:0;padding:50px 55px;background:#0b253b;color:white;max-width:95vw;max-height:95vh;overflow:hidden}.freewave-lightbox::backdrop{background:#061e2bef}.freewave-lightbox img{display:block;max-width:calc(95vw - 110px);max-height:calc(95vh - 100px);object-fit:contain}.freewave-lightbox button{position:absolute;background:transparent;border:0;color:white;padding:5px 15px}.lightbox-close{right:0;top:0}.lightbox-prev{left:0;top:45%}.lightbox-next{right:0;top:45%}.aligncenter{text-align:center}.alignright{text-align:right}.box.extras{padding:20px;background:var(--fw-tint);margin-bottom:25px}.list-boat{border:1px solid var(--fw-line);margin-bottom:25px}.list-boat img{width:100%;aspect-ratio:4/3;object-fit:cover}.list-boat-content{padding:20px}.list-boat-content h3{min-height:3em}.latest-yachts .row{row-gap:20px}.training-dates .bricklayer{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.training-dates .bricklayer>.entry{padding:25px;background:var(--fw-tint)}.training-dates .nr{color:var(--fw-teal)}
@media(min-width:1500px){.freewave-slider .swiper-button-prev{left:4%}.freewave-slider .swiper-button-next{right:4%}}
@media(max-width:1100px){.freewave-header>.container{gap:18px}.freewave-menu{gap:13px}.freewave-menu a{}.freewave-logo{flex-basis:175px}.yacht-grid{grid-template-columns:repeat(2,1fr)}.split-panel{gap:35px}}
@media(max-width:900px){.menu-toggle{display:block;margin-left:auto}#freewave-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:white;box-shadow:0 18px 25px #123b5826;padding:15px 25px;max-height:75vh;overflow:auto}#freewave-navigation.is-open{display:block}.freewave-menu{display:block}.freewave-menu>li{display:block;border-bottom:1px solid var(--fw-line)}.freewave-menu a{padding:12px 30px 12px 0;}.submenu-toggle{position:absolute;right:0;top:10px;padding:0 8px}.freewave-menu .sub-menu{position:static;box-shadow:none;padding:0 0 8px 20px}.freewave-menu li:hover>.sub-menu{display:none}.freewave-menu li.submenu-open>.sub-menu,.freewave-menu li:focus-within>.sub-menu{display:block}.freewave-header>.container{min-height:90px}.recommendation-grid{grid-template-columns:1fr 1fr}.recommendation-grid>div{grid-column:1/-1;max-width:500px}.training-dates .bricklayer{grid-template-columns:1fr 1fr}}
@media(max-width:600px){body.freewave-site{}.freewave-topbar .container>a:nth-child(2){display:none}.freewave-topbar .container{gap:10px}.freewave-languages{gap:12px}.freewave-section{padding:48px 0}.slide-copy{padding-left:38px;padding-right:38px}.slide-copy h2{}.slide-description{}.freewave-slider{height:450px}.freewave-slider .swiper-button-prev{left:0;width:25px}.freewave-slider .swiper-button-next{right:0;width:25px}.freewave-slider .swiper-button-prev svg,.freewave-slider .swiper-button-next svg{width:15px}.split-panel{grid-template-columns:1fr;gap:28px}.split-panel.reverse>img{order:0}.featured-grid{grid-template-columns:1fr;gap:20px}.yacht-grid{grid-template-columns:1fr;gap:22px}.freewave-card{max-width:440px;margin:0 auto;width:100%}.card-copy h3{min-height:0}.recommendation-grid{grid-template-columns:1fr}.recommendation-grid>div{grid-column:auto}.freewave-footer-bottom{display:block}.freewave-footer-bottom>*{margin:15px 0!important}.partner-grid{margin-top:15px}.freewave-lightbox{padding:45px 35px}.freewave-lightbox img{max-width:calc(95vw - 70px)}.training-dates .bricklayer{grid-template-columns:1fr}.single-yacht-content .tech-block h1{margin-top:30px}.section-heading h1{}.parallax-page{padding:30px 0}.latest-yachts .col-6{flex:0 0 100%;max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* Explicit iframe dimensions prevent the embedded booking form being clipped. */
#nsWidget iframe{display:block;width:100%;height:220px;border:0}.freewave-search #nsWidget{min-height:220px}body.page-template-searchresults #nsWidget iframe{height:1000px}
.fleet-group{margin-bottom:55px}.fleet-group>h2,.fleet-group>h3{margin-bottom:28px}.news-wrapper{padding:20px 0;border-bottom:1px solid var(--fw-line)}.news-date{color:var(--fw-muted);display:flex;gap:6px}.news-info h4{margin:8px 0}.news-info p{}
.freewave-slider{--swiper-theme-color:#fff}.freewave-slider .swiper-pagination-bullet-active{background:#fff}

@media(max-width:600px){.freewave-search #nsWidget,.freewave-search #nsWidget iframe{min-height:340px;height:340px}}

/* Typography follows the Villa Nena approach: reading copy and navigation
   keep explicit sizes instead of shrinking with the OnePress root scale. */
body.freewave-site {  line-height:1.4; }
.freewave-menu a {  }
.freewave-topbar, .freewave-languages a {  }
.entry, .section-heading, .split-panel, .fleet-banner, .recommendation-grid,
.slide-description, .slide-description p, .news-item p {  line-height:1.4; }
.section-heading h3 {  line-height:1.2 !important; }
.home-intro .section-heading h3 {  line-height:1.4 !important; }
.slide-copy h2 {  line-height:1.12; }
.slide-description { max-width:740px; }
.card-copy h3 {  line-height:1.3; }
.yacht-facts {  line-height:1.4; flex-wrap:wrap; }
.yacht-facts strong {  }
.button0, button.button0 {  }
.freewave-footer, .freewave-footer p, .freewave-footer a {  line-height:1.4; }
.freewave-footer h3 {  font-weight:700; }
.freewave-footer-bottom, .freewave-footer-bottom p, .freewave-footer-bottom a {  }
.newsletter-consent {  }
@media(max-width:1100px) { .freewave-menu { gap:12px; } }
@media(max-width:600px) {
    body.freewave-site {  }
    .freewave-topbar, .freewave-languages a {  }
    .freewave-menu a {  }
    .slide-copy h2 {  }
    .slide-description, .slide-description p {  }
    .section-heading h3 {  }
}

/* Retain the original full-width alternating photo / dark-copy sections. */
.freewave-contrast { padding:0; background:#244c65; color:#fff; }
.freewave-contrast .split-panel { grid-template-columns:1fr 1fr; gap:0; align-items:stretch; }
.freewave-contrast .split-panel > img { width:100%; height:100%; min-height:460px; aspect-ratio:auto; object-fit:cover; }
.freewave-contrast .contrast-copy { padding:clamp(36px,4.3vw,80px); align-self:center; min-width:0; }
body.freewave-site .freewave-contrast h2 { color:#fff;  margin:0 0 20px; }
.freewave-contrast h2::after { content:""; display:block; width:60px; height:2px; margin-top:16px; background:#85a5cb; }
.freewave-contrast p {  line-height:1.5; margin:0 0 18px; }
.freewave-contrast .button0 { background:#85a5cb; margin-top:16px; }
.freewave-contrast .button0:hover { background:#668bb6; }
@media(max-width:767px) {
    .freewave-contrast .split-panel { grid-template-columns:1fr; }
    .freewave-contrast .split-panel > img { height:300px; min-height:0; order:0; }
    .freewave-contrast .contrast-copy { order:1; padding:36px 24px; }
}

/* One family throughout all theme components and inherited form controls. */
body.freewave-site, body.freewave-site :is(p,a,li,span,label,input,select,textarea,button,table) { font-family:'Source Sans Pro',Arial,sans-serif; }

/* Container breakpoints match the current Villa Nena theme exactly. */
.site .container {
    width:100%;
    max-width:100%;
    padding-left:20px;
    padding-right:20px;
    margin-left:auto;
    margin-right:auto;
}
@media(min-width:1680px) {
    .site .container {
        width:1380px;
        max-width:100%;
        padding-left:15px;
        padding-right:15px;
    }
}
@media(min-width:1700px) {
    .site .container { width:1630px; }
}
/* Slide copy retains room for the arrow controls inside the container. */
.site .freewave-slider .slide-copy { padding-left:60px; padding-right:70px; }
@media(max-width:600px) {
    .site .freewave-slider .slide-copy { padding-left:38px; padding-right:38px; }
}

/* Original Freewave fleet section and white, centred yacht items. */
.section-meta { background:#eee; padding:60px 0 80px; }
.section-meta .section-heading { max-width:none; margin-bottom:16px; color:#424242; }
body.freewave-site .section-meta .section-heading h3 {  margin:0 0 28px; color:#424242; }
.section-meta .section-heading p { margin-bottom:0; }
.yacht-grid { gap:30px; }
.freewave-card { background:#fff; border:1px solid #e8e8e8; text-align:center; }
.freewave-card img { aspect-ratio:1.65; object-fit:cover; }
.freewave-card .card-copy { padding:16px 25px 20px; align-items:center; }
body.freewave-site .freewave-card .card-copy h3 { position:relative;  font-weight:600; line-height:1.25; width:100%; min-height:96px; padding-bottom:30px; margin:0 0 16px; }
.freewave-card .card-copy h3 a { color:#424242; }
.freewave-card .card-copy h3::after { content:""; position:absolute; bottom:5px; left:50%; transform:translateX(-50%); width:60px; height:2px; background:#85a5cc; }
.freewave-card .yacht-facts { display:block;  line-height:1.55; margin-bottom:20px; color:#424242; }
.freewave-card .yacht-facts>span { display:block; }
.freewave-card .yacht-facts strong { display:inline;  font-weight:400; color:inherit; }
.freewave-card .card-copy>.button0 { align-self:center; width:auto; margin-top:auto; }
/* Original rectangular pale-blue buttons throughout the theme. */
body.freewave-site .button0,
body.freewave-site button[type="submit"],
body.freewave-site input[type="submit"] {
    display:inline-flex; align-items:center; justify-content:center; gap:16px;
    width:auto; padding:12px 25px; border:0; border-radius:0;
    background-color:#85a5cc !important; color:#fff !important;
    font-family:'Source Sans Pro',Arial,sans-serif;  font-weight:600; line-height:1.5;
    text-decoration:none; box-shadow:none;
}
body.freewave-site .button0:hover,
body.freewave-site button[type="submit"]:hover,
body.freewave-site input[type="submit"]:hover { background-color:#7396c0 !important; color:#fff !important; }
.button0::after, button[type="submit"]::after {
    content:""; display:inline-block; width:8px; height:8px; flex:0 0 8px;
    border-top:2px solid currentColor; border-right:2px solid currentColor;
    transform:rotate(45deg); margin-right:2px;
}
.button0>.fa { display:none; }
body.freewave-site input[type="submit"] {
    padding-right:48px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='14' viewBox='0 0 10 14'%3E%3Cpath d='M2 2l5 5-5 5' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E") !important;
    background-position:right 24px center !important; background-repeat:no-repeat !important;
}

/* Four news items, two per row, beside the Swiper photo gallery. */
.news-gallery-section { background:#eee; }
.news-gallery-title { display:block;font-weight:600;text-align:center;margin:0 0 44px; }
.news-gallery-title::after { content:""; display:block; width:60px; height:2px; background:#85a5cc; margin:20px auto 0; }
.news-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 26px; }
.news-grid .news-item { display:grid; grid-template-columns:54px minmax(0,1fr); gap:16px; border:0; padding:0; }
.news-grid .news-item h3,.freewave-blog-grid h3 { font-size:26px;line-height:34px;font-weight:600;margin:0 0 15px; }
.news-grid .news-item h3 a { color:#424242; }
.news-grid .news-item p {  line-height:1.5; color:#777; }
.news-badge { display:block; height:fit-content; background:#fff; text-align:center; border:1px solid #e3e3e3; }
.news-badge span { display:block; background:#85a5cc; color:#fff; padding:7px 3px;  text-transform:uppercase; }
.news-badge strong { display:block; color:#424242;  line-height:1.2; font-weight:600; padding:8px 0; }
.home-photo-swiper { margin:0; background:transparent; }
.home-photo-swiper .swiper-slide img { aspect-ratio:1.5; width:100%; object-fit:cover; }
.home-photo-swiper .swiper-pagination { bottom:15px; }
@media(max-width:991px) { .news-gallery-section .col-lg-6 + .col-lg-6 { margin-top:48px; } }
@media(max-width:575px) { .news-grid { grid-template-columns:1fr; } }

/* Icon glyphs retain their icon font; surrounding text uses Source Sans Pro. */
body.freewave-site .lg-icon { font-family:lg !important; }

/* Typography: fixed reading copy, a fixed menu and rem-based heading scales.
   The root breakpoints follow Villa Nena; reading text never follows that scale. */
html { font-size:62.5%; }
@media(max-width:1680px) { html { font-size:56.25%; } }
@media(max-width:1199.98px) { html { font-size:50.625%; } }
body.freewave-site { font-size:18px; line-height:1.5; }
@media(max-width:1199.98px) { body.freewave-site { font-size:17px; } }
body.freewave-site :is(input,textarea,select,table,.entry,.yacht-facts,.newsletter-consent) { font-size:inherit; }
/* Reading copy shares one responsive size across sections and forms. */
body.freewave-site p { font-size:inherit; line-height:1.5; }
body.freewave-site p :is(a,span,strong,b,em,i) { font-size:inherit; }
body.freewave-site .freewave-menu,
body.freewave-site .freewave-menu a { font-size:16px; }
:is(h1,.h1):not(.site-title) { font-size:5.6rem; }
h2 { font-size:4rem; }
h3 { font-size:3.2rem; }
h4 { font-size:2.6rem; }
h5 { font-size:2.2rem; }
h6 { font-size:2rem; }
body.freewave-site .slide-copy h2 { font-size:6.4rem; }
body.freewave-site .section-heading h1 { font-size:4.8rem; }
body.freewave-site .section-heading h3,
body.freewave-site .section-meta .section-heading h3,
.news-gallery-title,
body.freewave-site .freewave-contrast h2 { font-size:3.6rem; }
body.freewave-site .home-intro .section-heading h3 { font-size:2.8rem; }
body.freewave-site .featured-card h2 { font-size:3.6rem; }
body.freewave-site .card-copy h3,
body.freewave-site .freewave-card .card-copy h3,
body.freewave-site .news-info h4,
body.freewave-site .list-boat-content h3 { font-size:2.6rem; }
body.freewave-site .single-yacht-content .tech-block h1 { font-size:4rem; }
body.freewave-site .single-yacht-content .tech-block h1 span { font-size:inherit; }
body.freewave-site .freewave-footer h3 { font-size:2.4rem; }
body.freewave-site .button0,
body.freewave-site button[type="submit"],
body.freewave-site input[type="submit"] { font-size:17px; }
.news-badge strong { font-size:30px; }
@media(max-width:1199.98px) { body.freewave-site .slide-copy h2 { font-size:5.8rem; } }
@media(max-width:767.98px) {
    :is(h1,.h1):not(.site-title) { font-size:4.6rem; }
    body.freewave-site .slide-copy h2 { font-size:5.3rem; }
}
@media(max-width:575.98px) { body.freewave-site .slide-copy h2 { font-size:4.2rem; } }

/* Section title spacing and text measure follow Villa Nena's 8/12 column. */
.freewave-section > .section-title-area { margin-bottom:30px; text-align:center; }
body.freewave-site .freewave-section .section-title { margin:0; font-size:4rem; line-height:1.2; letter-spacing:normal; text-transform:none; }
.freewave-section .section-desc { margin-top:24px; color:inherit; }
.freewave-section .section-desc > :first-child { margin-top:0; }
.freewave-section .section-desc > :last-child { margin-bottom:0; }
body.freewave-site .freewave-section .section-subtitle { display:block; font-size:2.4rem; line-height:1.3; margin:0 0 13px; }
body.freewave-site .home-intro .section-desc h3 { font-size:2.8rem; line-height:1.4; margin:0 0 24px; }
body.freewave-site .fleet-banner .section-title { color:#fff; }
body.freewave-site .fleet-banner .section-subtitle { color:#7de1e7; letter-spacing:.15em; }
.fleet-banner .section-title-area { margin-bottom:0; }

@media (prefers-reduced-motion:reduce), (hover:none) { .fleet-banner { background-attachment:scroll; } }

/* Cabin group headings share the homepage section underline. */
.yacht-listing-section .fleet-group > h2::after,.yacht-listing-section .fleet-group > h3::after { content: ""; display: block; width: 60px; height: 2px; margin: 24px 0 32px; background: #85a5cc; }

/* Complete client supplements for the 2027 season. */
.price-terms-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px; margin: 48px 0; }
.price-terms-grid > div { min-width: 0; }
.price-terms-optional { grid-column: 1 / -1; }
.price-terms-optional .box > ul { columns: 2; column-gap: 48px; }
.price-terms-optional .box > ul > li { break-inside: avoid; margin-bottom: 12px; }
.price-terms-grid .box { padding: 0; background: transparent; }
.price-terms-grid h3 { font-size: 2.8rem; margin-bottom: 24px; }
.price-terms-grid h4 { font-size: 2.1rem; margin: 24px 0 12px; }
.price-supplement-scroll { overflow-x: auto; max-width: 900px; margin: 20px 0; }
.price-supplements { width: 100%; min-width: 460px; border-collapse: collapse; }
.price-supplements th, .price-supplements td { text-align: left; padding: 12px; border: 0; border-bottom: 1px solid #dbe4e8; }
.price-supplements tbody tr:nth-child(even) { background: #f1f5f6; }
.price-check-times { margin-bottom: 32px; }
.price-2027-reference { margin: 40px 0; }
.price-2027-notes { margin-bottom: 40px; }
@media(max-width: 767px) { .price-terms-grid { grid-template-columns: 1fr; gap: 32px; } .price-terms-optional .box > ul { columns: 1; } }

/* Equipment and competency notes align as two complete text columns. */
.price-2027-notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; align-items: start; }
.price-2027-notes > h3:nth-of-type(1) { grid-column: 1; grid-row: 1; }
.price-2027-notes > p:nth-of-type(1) { grid-column: 1; grid-row: 2; }
.price-2027-notes > h3:nth-of-type(2) { grid-column: 2; grid-row: 1; }
.price-2027-notes > p:nth-of-type(2) { grid-column: 2; grid-row: 2; }
@media (max-width: 767px) {
 .price-2027-notes { display: block; }
}

/* Pricing conditions follow the shared section-heading underline. */
.price-2027-notes > h3::after,
.price-terms-grid h3::after,
.price-terms-grid h4::after {
 content: "";
 display: block;
 width: 60px;
 height: 2px;
 margin: 24px 0;
 background: #85a5cc;
}

/* Retain the former compact Discounts / Extras / Info layout. */
.price-terms-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.price-terms-optional { grid-column: auto; }
.price-terms-optional .box > ul { columns: 1; }
@media (max-width: 767px) { .price-terms-grid { grid-template-columns: 1fr; } }

/* Public FAQ answers remain readable in HTML and keyboard accessible. */
.freewave-faq { max-width: 1000px; margin: 35px auto; }
.faq-item { border-bottom: 1px solid #dce5e9; padding: 20px 0; }
.faq-item summary { cursor: pointer; color: #123b58; font-size: 22px; font-weight: 600; line-height: 1.4; padding: 8px 32px 8px 0; }
.faq-item summary::marker { color: #85a5cc; }
.faq-answer { padding: 16px 0 0; }
.faq-item summary:focus-visible { outline: 2px solid #85a5cc; outline-offset: 4px; }
@media(max-width:575px) { .faq-item summary { font-size: 20px; } }
