/*
Theme Name: NEXO Yachts
Theme URI: https://nexoyachts.eu/
Author: NEXO Yachts
Description: Custom lightweight theme for the NEXO Yachts catalogue powered by NEXO Core.
Version: 1.4.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: nexo-yachts
*/

:root{
  --nexo-navy:#071a33;
  --nexo-navy-2:#0d2848;
  --nexo-orange:#ff5b0a;
  --nexo-cream:#f6f3eb;
  --nexo-paper:#fbfaf6;
  --nexo-line:#d8d7d0;
  --nexo-muted:#67717e;
  --nexo-white:#ffffff;
  --nexo-radius:22px;
  --nexo-shadow:0 20px 60px rgba(6,24,49,.08);
  --nexo-width:1240px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--nexo-paper);color:var(--nexo-navy);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}.nexo-shell{width:min(calc(100% - 40px),var(--nexo-width));margin-inline:auto}.screen-reader-text{position:absolute;left:-9999px}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(251,250,246,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(7,26,51,.08)}
.nexo-header-inner{min-height:86px;display:grid;grid-template-columns:230px 1fr auto;gap:28px;align-items:center}.nexo-logo{display:flex;align-items:center}.nexo-logo img{width:150px;height:auto;display:block}.nexo-logo-text{display:flex;flex-direction:column;line-height:.9;font-weight:800;letter-spacing:.12em;font-size:26px}.nexo-logo-text small{font-size:9px;letter-spacing:.22em;margin-top:7px}
.nexo-nav{display:flex;justify-content:center;gap:34px;align-items:center;font-size:14px;font-weight:700;text-transform:uppercase}.nexo-nav a{position:relative;padding:32px 0}.nexo-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:23px;height:2px;background:var(--nexo-orange);transition:.25s}.nexo-nav a:hover:after{right:0}.nexo-cta{display:inline-flex;align-items:center;justify-content:center;background:var(--nexo-orange);color:#fff;border-radius:8px;padding:13px 22px;font-size:13px;font-weight:800;text-transform:uppercase;box-shadow:0 10px 24px rgba(255,91,10,.18);transition:.2s}.nexo-cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(255,91,10,.28)}
.nexo-menu-toggle{display:none;border:1px solid var(--nexo-navy);background:transparent;border-radius:8px;width:44px;height:44px;font-size:20px;color:var(--nexo-navy)}

/* Home hero */
.nexo-home-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--nexo-line);background:linear-gradient(90deg,#fbfaf6 0%,#f8f5ed 45%,#eae8df 100%)}
.nexo-home-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 73% 35%,rgba(255,255,255,.1),rgba(255,255,255,.72) 44%,rgba(251,250,246,.98) 72%);pointer-events:none}
.nexo-home-hero .nexo-shell{min-height:630px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:40px;position:relative;z-index:2}.nexo-home-copy{padding:82px 0 92px}.nexo-kicker{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--nexo-orange);margin-bottom:20px}.nexo-kicker:before{content:"";width:34px;height:2px;background:var(--nexo-orange)}
.nexo-home-copy h1{font-size:clamp(50px,5.4vw,82px);line-height:.95;letter-spacing:-.045em;text-transform:uppercase;margin:0 0 24px;max-width:800px}.nexo-home-copy p{font-size:18px;max-width:650px;margin:0 0 30px;color:#25354a}.nexo-actions{display:flex;gap:12px;flex-wrap:wrap}.nexo-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:8px;border:1.5px solid var(--nexo-navy);font-weight:800;font-size:13px;text-transform:uppercase;transition:.2s}.nexo-btn--primary{background:var(--nexo-orange);border-color:var(--nexo-orange);color:#fff}.nexo-btn:hover{transform:translateY(-2px)}
.nexo-home-visual{position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center}.nexo-home-visual img{width:115%;max-width:none;object-fit:contain;filter:drop-shadow(0 24px 25px rgba(7,26,51,.18));transform:translateX(2%)}.nexo-home-visual-placeholder{width:100%;aspect-ratio:4/3;border:1px dashed rgba(7,26,51,.25);border-radius:28px;display:grid;place-items:center;color:var(--nexo-muted);background:rgba(255,255,255,.45)}

/* Sections */
.nexo-section{padding:86px 0}.nexo-section--soft{background:var(--nexo-cream)}.nexo-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.nexo-section-head h2{font-size:clamp(34px,4vw,56px);line-height:1;margin:0;letter-spacing:-.03em;text-transform:uppercase}.nexo-section-head p{max-width:560px;color:var(--nexo-muted);margin:0}.nexo-eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--nexo-orange);margin-bottom:12px}
.nexo-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.nexo-boat-card{background:rgba(255,255,255,.65);border:1.5px solid var(--nexo-navy);border-radius:12px;padding:18px;display:flex;flex-direction:column;min-height:100%;transition:.24s}.nexo-boat-card:hover{transform:translateY(-6px);box-shadow:var(--nexo-shadow);background:#fff}.nexo-card-media{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px;background:#fff}.nexo-card-media img{width:100%;height:100%;object-fit:cover}.nexo-card-type{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--nexo-orange);margin:17px 0 6px}.nexo-boat-card h3{font-size:24px;line-height:1.1;margin:0 0 8px}.nexo-boat-card p{margin:0;color:var(--nexo-muted);font-size:14px}.nexo-card-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:auto;padding-top:18px;font-size:12px;font-weight:700}.nexo-card-meta span{border-top:1px solid var(--nexo-line);padding-top:8px}.nexo-card-arrow{margin-top:18px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.nexo-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.nexo-feature{border-top:2px solid var(--nexo-navy);padding-top:20px}.nexo-feature strong{display:block;font-size:22px;margin-bottom:7px}.nexo-feature p{margin:0;color:var(--nexo-muted)}

/* Single boat */
.nexo-boat-hero{position:relative;min-height:650px;background:var(--nexo-cream);overflow:hidden;border-bottom:1px solid var(--nexo-line)}.nexo-boat-hero-grid{min-height:650px;display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.nexo-boat-intro{padding:70px 0}.nexo-boat-intro h1{font-size:clamp(54px,7vw,96px);line-height:.9;letter-spacing:-.05em;margin:0 0 22px;text-transform:uppercase}.nexo-boat-intro .nexo-lead{font-size:18px;color:#26384f;max-width:580px;margin:0 0 28px}.nexo-language-tag{display:inline-block;border:1px solid rgba(7,26,51,.18);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;margin-bottom:15px;text-transform:uppercase}.nexo-boat-hero-image{position:relative;height:100%;min-height:540px}.nexo-boat-hero-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.nexo-boat-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--nexo-cream) 0%,rgba(246,243,235,.2) 17%,rgba(246,243,235,0) 45%)}
.nexo-spec-strip{background:var(--nexo-navy);color:#fff}.nexo-spec-strip-inner{display:grid;grid-template-columns:repeat(4,1fr)}.nexo-spec-strip-item{padding:26px 26px;border-right:1px solid rgba(255,255,255,.16)}.nexo-spec-strip-item:last-child{border-right:0}.nexo-spec-strip-item small{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#aeb8c6;margin-bottom:6px}.nexo-spec-strip-item strong{font-size:22px;font-weight:700}
.nexo-prose{font-size:17px;max-width:780px}.nexo-prose h2,.nexo-prose h3{color:var(--nexo-navy)}.nexo-prose p{color:#314056}.nexo-two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.nexo-spec-table{width:100%;border-collapse:collapse;border-top:2px solid var(--nexo-navy)}.nexo-spec-table tr{border-bottom:1px solid var(--nexo-line)}.nexo-spec-table th,.nexo-spec-table td{padding:14px 0;text-align:left;vertical-align:top}.nexo-spec-table th{width:48%;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--nexo-muted)}.nexo-spec-table td{font-weight:700}.nexo-text-panel{background:#fff;border:1px solid var(--nexo-line);border-radius:14px;padding:28px;box-shadow:0 10px 30px rgba(7,26,51,.04)}.nexo-text-panel h3{font-size:24px;margin:0 0 14px}.nexo-text-panel p{white-space:pre-line;color:#39485b;margin:0}
.nexo-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.nexo-gallery a{grid-column:span 4;display:block;overflow:hidden;border-radius:10px;min-height:260px;background:#e8e7e1}.nexo-gallery a:nth-child(1),.nexo-gallery a:nth-child(6n+1){grid-column:span 8}.nexo-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.nexo-gallery a:hover img{transform:scale(1.03)}
.nexo-downloads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.nexo-download{background:#fff;border:1px solid var(--nexo-line);border-radius:12px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:800}.nexo-download span:last-child{color:var(--nexo-orange)}
.nexo-next-cta{background:var(--nexo-navy);color:#fff;border-radius:22px;padding:52px;display:flex;justify-content:space-between;align-items:center;gap:30px}.nexo-next-cta h2{font-size:clamp(34px,4vw,58px);line-height:1;margin:0;letter-spacing:-.03em;text-transform:uppercase}.nexo-next-cta p{margin:10px 0 0;color:#b7c1cf}

/* Archive / pages */
.nexo-page-hero{padding:90px 0 54px;background:var(--nexo-cream);border-bottom:1px solid var(--nexo-line)}.nexo-page-hero h1{font-size:clamp(48px,6vw,84px);line-height:.95;margin:0;text-transform:uppercase;letter-spacing:-.04em}.nexo-content{padding:70px 0}.nexo-content .entry-content{max-width:850px;font-size:17px}.nexo-empty{padding:50px;border:1px dashed var(--nexo-line);border-radius:16px;color:var(--nexo-muted);text-align:center}

/* Footer */
.site-footer{border-top:1px solid var(--nexo-line);padding:34px 0;background:var(--nexo-paper)}.nexo-footer-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;font-size:13px}.nexo-footer-tech{text-align:center;color:var(--nexo-muted)}.nexo-footer-contact{text-align:right}.nexo-footer-brand{font-weight:800;letter-spacing:.08em}

/* Responsive */
@media(max-width:980px){.nexo-header-inner{grid-template-columns:1fr auto}.nexo-nav,.nexo-header-inner>.nexo-cta{display:none}.nexo-menu-toggle{display:block}.nexo-nav.is-open{position:absolute;display:flex;flex-direction:column;align-items:flex-start;gap:0;top:86px;left:0;right:0;background:var(--nexo-paper);padding:15px 24px 24px;border-bottom:1px solid var(--nexo-line)}.nexo-nav.is-open a{padding:12px 0}.nexo-home-hero .nexo-shell,.nexo-boat-hero-grid{grid-template-columns:1fr}.nexo-home-copy{padding-bottom:30px}.nexo-home-visual{min-height:380px}.nexo-boat-hero-image{min-height:460px}.nexo-card-grid,.nexo-feature-grid{grid-template-columns:repeat(2,1fr)}.nexo-two-col{grid-template-columns:1fr;gap:30px}.nexo-spec-strip-inner{grid-template-columns:repeat(2,1fr)}.nexo-gallery a,.nexo-gallery a:nth-child(1),.nexo-gallery a:nth-child(6n+1){grid-column:span 6}.nexo-footer-inner{grid-template-columns:1fr;text-align:left}.nexo-footer-tech,.nexo-footer-contact{text-align:left}}
@media(max-width:640px){.nexo-shell{width:min(calc(100% - 24px),var(--nexo-width))}.nexo-header-inner{min-height:74px}.nexo-logo img{width:126px}.nexo-nav.is-open{top:74px}.nexo-home-hero .nexo-shell{min-height:auto}.nexo-home-copy{padding:60px 0 20px}.nexo-home-copy h1{font-size:46px}.nexo-home-visual{min-height:300px}.nexo-section{padding:62px 0}.nexo-card-grid,.nexo-feature-grid{grid-template-columns:1fr}.nexo-boat-hero,.nexo-boat-hero-grid{min-height:auto}.nexo-boat-intro{padding:52px 0 16px}.nexo-boat-intro h1{font-size:50px}.nexo-boat-hero-image{min-height:330px;margin-inline:-12px}.nexo-spec-strip-inner{grid-template-columns:1fr 1fr}.nexo-spec-strip-item{padding:20px 14px}.nexo-gallery{grid-template-columns:1fr}.nexo-gallery a,.nexo-gallery a:nth-child(1),.nexo-gallery a:nth-child(6n+1){grid-column:auto;min-height:230px}.nexo-downloads{grid-template-columns:1fr}.nexo-next-cta{padding:34px 24px;align-items:flex-start;flex-direction:column}.nexo-section-head{align-items:flex-start;flex-direction:column}.nexo-footer-inner{font-size:12px}}


/* =========================================================
   NEXO motion / depth layer — v1.1.0
   Subtle premium interactions. Respects reduced-motion.
   ========================================================= */
:root{
  --nexo-shadow-soft:0 16px 44px rgba(7,26,51,.08);
  --nexo-shadow-hover:0 28px 70px rgba(7,26,51,.16);
  --nexo-glow:0 14px 38px rgba(255,91,10,.20);
  --nexo-ease:cubic-bezier(.2,.7,.2,1);
}

/* ambient background depth */
.nexo-home-hero:after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-180px;
  top:-190px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,91,10,.11),rgba(255,91,10,0) 70%);
  transform:translate3d(0,var(--nexo-parallax-bg,0px),0);
  pointer-events:none;
  z-index:1;
}
.nexo-section{position:relative}
.nexo-section--soft:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 9% 10%,rgba(255,255,255,.82),transparent 28%),
    radial-gradient(circle at 89% 84%,rgba(7,26,51,.035),transparent 30%);
}

/* hero motion */
.nexo-home-copy,.nexo-home-visual,
.nexo-boat-intro,.nexo-boat-hero-image{
  will-change:transform;
}
.nexo-home-visual{
  transform:translate3d(0,var(--nexo-parallax-visual,0px),0);
}
.nexo-home-visual img{
  transition:transform .7s var(--nexo-ease),filter .7s var(--nexo-ease);
}
.nexo-home-visual:hover img{
  transform:translateX(2%) scale(1.025);
  filter:drop-shadow(0 34px 34px rgba(7,26,51,.24));
}
.nexo-boat-hero-image img{
  transform:scale(1.025) translate3d(0,var(--nexo-parallax-boat,0px),0);
  transition:transform .7s var(--nexo-ease),filter .7s var(--nexo-ease);
}
.nexo-boat-hero-image:hover img{
  transform:scale(1.055) translate3d(0,var(--nexo-parallax-boat,0px),0);
  filter:saturate(1.04) contrast(1.02);
}

/* buttons */
.nexo-btn,.nexo-cta{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transition:transform .3s var(--nexo-ease),box-shadow .3s var(--nexo-ease),
             background .3s ease,border-color .3s ease,color .3s ease;
}
.nexo-btn:before,.nexo-cta:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.32) 48%,transparent 80%);
  transform:translateX(-135%);
  transition:transform .65s var(--nexo-ease);
}
.nexo-btn:hover:before,.nexo-cta:hover:before{transform:translateX(135%)}
.nexo-btn:hover{transform:translateY(-3px);box-shadow:var(--nexo-shadow-soft)}
.nexo-btn--primary:hover,.nexo-cta:hover{box-shadow:var(--nexo-glow)}
.nexo-btn:not(.nexo-btn--primary):hover{background:var(--nexo-navy);color:#fff}

/* boat cards */
.nexo-boat-card{
  position:relative;
  overflow:hidden;
  box-shadow:0 1px 0 rgba(7,26,51,.02);
  transition:transform .4s var(--nexo-ease),box-shadow .4s var(--nexo-ease),
             background .35s ease,border-color .35s ease;
}
.nexo-boat-card:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(145deg,rgba(255,255,255,.7),transparent 45%);
  opacity:.55;
}
.nexo-boat-card:hover{
  transform:translateY(-10px);
  box-shadow:var(--nexo-shadow-hover);
  border-color:rgba(7,26,51,.72);
}
.nexo-card-media{transition:transform .4s var(--nexo-ease),box-shadow .4s var(--nexo-ease)}
.nexo-card-media img{
  transition:transform .65s var(--nexo-ease),filter .65s var(--nexo-ease);
}
.nexo-boat-card:hover .nexo-card-media{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(7,26,51,.10);
}
.nexo-boat-card:hover .nexo-card-media img{transform:scale(1.055);filter:saturate(1.05)}
.nexo-card-arrow{transition:transform .3s var(--nexo-ease),color .3s ease}
.nexo-boat-card:hover .nexo-card-arrow{transform:translateX(5px);color:var(--nexo-orange)}

/* feature blocks */
.nexo-feature{
  position:relative;
  padding:24px 22px 22px;
  border:1px solid rgba(7,26,51,.10);
  border-top:2px solid var(--nexo-navy);
  border-radius:12px;
  background:rgba(255,255,255,.42);
  box-shadow:0 10px 28px rgba(7,26,51,.025);
  transition:transform .38s var(--nexo-ease),box-shadow .38s var(--nexo-ease),
             border-color .3s ease,background .3s ease;
}
.nexo-feature:after{
  content:"";
  position:absolute;
  left:22px;
  right:calc(100% - 22px);
  bottom:0;
  height:3px;
  background:var(--nexo-orange);
  transition:right .45s var(--nexo-ease);
}
.nexo-feature:hover{
  transform:translateY(-7px);
  box-shadow:var(--nexo-shadow-soft);
  background:#fff;
  border-color:rgba(7,26,51,.18);
}
.nexo-feature:hover:after{right:22px}

/* specification strip */
.nexo-spec-strip-item{
  position:relative;
  transition:background .3s ease,transform .3s var(--nexo-ease);
}
.nexo-spec-strip-item:hover{background:rgba(255,255,255,.06);transform:translateY(-3px)}
.nexo-spec-strip-item strong{transition:color .3s ease}
.nexo-spec-strip-item:hover strong{color:#ff8b52}

/* content panels / rows */
.nexo-text-panel,.nexo-download{
  transition:transform .35s var(--nexo-ease),box-shadow .35s var(--nexo-ease),
             border-color .3s ease,background .3s ease;
}
.nexo-text-panel:hover{
  transform:translateY(-6px);
  box-shadow:var(--nexo-shadow-soft);
  border-color:rgba(7,26,51,.18);
}
.nexo-spec-table tr{transition:background .25s ease,transform .25s var(--nexo-ease)}
.nexo-spec-table tr:hover{background:rgba(255,91,10,.035)}
.nexo-download:hover{
  transform:translateY(-5px);
  box-shadow:var(--nexo-shadow-soft);
  border-color:rgba(255,91,10,.35);
  background:#fff;
}
.nexo-download span:last-child{transition:transform .3s var(--nexo-ease)}
.nexo-download:hover span:last-child{transform:translate(3px,-2px)}

/* gallery */
.nexo-gallery a{
  position:relative;
  box-shadow:0 12px 28px rgba(7,26,51,.05);
  transition:transform .45s var(--nexo-ease),box-shadow .45s var(--nexo-ease);
}
.nexo-gallery a:after{
  content:"↗";
  position:absolute;
  right:14px;
  bottom:14px;
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.9);
  color:var(--nexo-navy);
  font-weight:800;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .3s ease,transform .3s var(--nexo-ease);
}
.nexo-gallery a:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 50px rgba(7,26,51,.15);
}
.nexo-gallery a:hover img{transform:scale(1.065)}
.nexo-gallery a:hover:after{opacity:1;transform:none}

/* CTA depth */
.nexo-next-cta{
  position:relative;
  overflow:hidden;
  box-shadow:0 24px 65px rgba(7,26,51,.18);
  transition:transform .4s var(--nexo-ease),box-shadow .4s var(--nexo-ease);
}
.nexo-next-cta:before{
  content:"";
  position:absolute;
  width:360px;height:360px;border-radius:50%;
  right:-150px;top:-180px;
  background:radial-gradient(circle,rgba(255,91,10,.30),rgba(255,91,10,0) 68%);
  pointer-events:none;
  transform:translate3d(0,var(--nexo-parallax-cta,0px),0);
}
.nexo-next-cta:hover{transform:translateY(-5px);box-shadow:0 34px 80px rgba(7,26,51,.24)}

/* reveal-on-scroll */
.nexo-reveal{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .75s var(--nexo-ease),transform .75s var(--nexo-ease);
}
.nexo-reveal.nexo-in-view{opacity:1;transform:none}
.nexo-reveal-delay-1{transition-delay:.08s}
.nexo-reveal-delay-2{transition-delay:.16s}
.nexo-reveal-delay-3{transition-delay:.24s}

/* desktop-only pointer tilt; JS writes CSS variables */
@media (hover:hover) and (pointer:fine){
  .nexo-boat-card[data-nexo-tilt="1"]{
    transform:
      perspective(1000px)
      rotateX(var(--nexo-tilt-x,0deg))
      rotateY(var(--nexo-tilt-y,0deg))
      translateY(var(--nexo-lift,0px));
  }
  .nexo-boat-card[data-nexo-tilt="1"]:hover{
    --nexo-lift:-8px;
  }
}

/* accessibility */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
    scroll-behavior:auto!important;
  }
  .nexo-reveal{opacity:1;transform:none}
  .nexo-home-visual,.nexo-boat-hero-image img,.nexo-next-cta:before,.nexo-home-hero:after{
    transform:none!important;
  }
}


/* Language switcher */
.nexo-header-actions{display:flex;align-items:center;gap:14px}
.nexo-lang-switch{display:flex;align-items:center;border:1px solid rgba(7,26,51,.18);border-radius:999px;padding:3px;background:rgba(255,255,255,.72);backdrop-filter:blur(10px)}
.nexo-lang-switch a{display:grid;place-items:center;min-width:38px;height:32px;padding:0 8px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--nexo-navy);text-decoration:none;transition:background .25s ease,color .25s ease,transform .25s ease}
.nexo-lang-switch a:hover{transform:translateY(-1px);background:rgba(7,26,51,.07)}
.nexo-lang-switch a.is-active{background:var(--nexo-navy);color:#fff;box-shadow:0 8px 20px rgba(7,26,51,.16)}
@media(max-width:900px){
  .nexo-header-actions{margin-left:auto}
  .nexo-header-actions>.nexo-cta{display:none}
  .nexo-lang-switch a{min-width:34px;height:30px}
}
@media(max-width:560px){
  .nexo-lang-switch{padding:2px}
  .nexo-lang-switch a{min-width:31px;height:28px;padding:0 6px;font-size:11px}
}


/* =========================================================
   Boat detail layout refinement — v1.2.1
   Full-width specs + cleaner equipment grid
   ========================================================= */

.nexo-about-section{
  padding-top:78px;
  padding-bottom:72px;
}
.nexo-content-heading{
  max-width:920px;
  margin-bottom:28px;
}
.nexo-content-heading h2{
  margin:8px 0 0;
  font-size:clamp(32px,4vw,58px);
  line-height:.98;
  letter-spacing:-.045em;
  color:var(--nexo-navy);
}
.nexo-prose--wide{
  max-width:1080px;
  columns:2;
  column-gap:64px;
  font-size:17px;
  line-height:1.72;
}
.nexo-prose--wide > *:first-child{margin-top:0}
.nexo-prose--wide img{
  max-width:100%;
  height:auto;
  break-inside:avoid;
}

.nexo-section-head--compact{
  margin-bottom:26px;
}
.nexo-section-head--compact h2{
  margin-top:6px;
}

/* Technical specs as cards across the full content width */
.nexo-specs-section{
  overflow:hidden;
}
.nexo-spec-cards{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.nexo-spec-card{
  position:relative;
  min-height:126px;
  padding:22px 22px 20px;
  border:1px solid rgba(7,26,51,.10);
  border-radius:14px;
  background:rgba(255,255,255,.78);
  box-shadow:0 14px 34px rgba(7,26,51,.045);
  transition:transform .34s var(--nexo-ease),box-shadow .34s var(--nexo-ease),
             border-color .3s ease,background .3s ease;
  overflow:hidden;
}
.nexo-spec-card:before{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:0;
  height:3px;
  background:var(--nexo-orange);
  transition:right .42s var(--nexo-ease);
}
.nexo-spec-card span{
  display:block;
  margin-bottom:14px;
  color:#6e7b8d;
  font-size:11px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.nexo-spec-card strong{
  display:block;
  color:var(--nexo-navy);
  font-size:clamp(17px,1.5vw,23px);
  line-height:1.32;
  font-weight:750;
}
.nexo-spec-card:hover{
  transform:translateY(-6px);
  border-color:rgba(7,26,51,.22);
  background:#fff;
  box-shadow:0 24px 56px rgba(7,26,51,.11);
}
.nexo-spec-card:hover:before{right:0}

/* Equipment no longer appears as one long narrow paragraph */
.nexo-equipment-section{
  padding-top:82px;
  padding-bottom:86px;
}
.nexo-equipment-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.nexo-equipment-item{
  display:flex;
  align-items:flex-start;
  gap:12px;
  min-height:74px;
  padding:17px 18px;
  border:1px solid rgba(7,26,51,.09);
  border-radius:12px;
  background:#fff;
  color:var(--nexo-navy);
  font-size:14px;
  line-height:1.5;
  box-shadow:0 10px 26px rgba(7,26,51,.035);
  transition:transform .3s var(--nexo-ease),box-shadow .3s var(--nexo-ease),
             border-color .3s ease;
}
.nexo-equipment-item:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 38px rgba(7,26,51,.10);
  border-color:rgba(255,91,10,.28);
}
.nexo-equipment-dot{
  flex:0 0 auto;
  width:8px;
  height:8px;
  margin-top:7px;
  border-radius:50%;
  background:var(--nexo-orange);
  box-shadow:0 0 0 5px rgba(255,91,10,.08);
}

.nexo-extra-specs-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.nexo-extra-spec-item{
  padding:16px 18px;
  border-left:3px solid var(--nexo-orange);
  border-radius:8px;
  background:rgba(7,26,51,.035);
  color:var(--nexo-navy);
  line-height:1.55;
}

/* Keep old table readable if used elsewhere */
.nexo-spec-table{
  width:100%;
  table-layout:fixed;
}
.nexo-spec-table th{
  width:38%;
}
.nexo-spec-table th,
.nexo-spec-table td{
  padding:15px 16px;
  vertical-align:top;
}

@media(max-width:1100px){
  .nexo-spec-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nexo-equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .nexo-prose--wide{columns:1}
  .nexo-spec-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nexo-extra-specs-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .nexo-about-section,.nexo-equipment-section{padding-top:58px;padding-bottom:60px}
  .nexo-spec-cards,
  .nexo-equipment-grid{grid-template-columns:1fr}
  .nexo-spec-card{min-height:auto}
}


/* =========================================================
   Client corrections — model page v1.3.0
   ========================================================= */

/* Hero: remove old white overlay, show a clean framed photo */
.nexo-boat-hero{padding:34px 0 0;overflow:visible}
.nexo-boat-hero-grid{gap:42px;align-items:stretch}
.nexo-boat-hero-image{
  height:auto;
  min-height:560px;
  margin:20px 0 26px;
  border:1px solid rgba(7,26,51,.12);
  border-radius:20px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 18px 45px rgba(7,26,51,.10);
  transition:transform .38s var(--nexo-ease),box-shadow .38s var(--nexo-ease),border-color .3s ease;
}
.nexo-boat-hero-image:after{display:none!important}
.nexo-boat-hero-image:hover{
  transform:translateY(-7px);
  box-shadow:0 30px 70px rgba(7,26,51,.17);
  border-color:rgba(7,26,51,.22);
}
.nexo-boat-hero-image img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:none!important;
  filter:none!important;
}
.nexo-boat-hero-image:hover img{transform:scale(1.015)!important}
.nexo-boat-kicker-row{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.nexo-boat-kicker-row .nexo-language-tag,.nexo-boat-kicker-row .nexo-kicker{margin-bottom:0}

/* Hero anchor navigation */
.nexo-model-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.nexo-btn--small{padding:13px 17px;font-size:12px}
.nexo-model-nav .nexo-btn{white-space:nowrap}

/* Dark quick-data strip supports 4 or 5 facts automatically */
.nexo-spec-strip{position:relative;z-index:4}
.nexo-spec-strip-inner{
  grid-template-columns:repeat(var(--nexo-spec-count,4),minmax(0,1fr));
}
.nexo-spec-strip-item{min-width:0}
.nexo-spec-strip-item strong{font-size:clamp(17px,1.55vw,22px);line-height:1.25}

/* About: media left, text right */
.nexo-about-section{padding-top:86px;padding-bottom:88px}
.nexo-about-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:64px;
  align-items:start;
}
.nexo-about-media{
  position:sticky;
  top:112px;
}
.nexo-video-frame,.nexo-about-graphic{
  display:block;
  width:100%;
  border:1px solid rgba(7,26,51,.10);
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 18px 46px rgba(7,26,51,.09);
  transition:transform .35s var(--nexo-ease),box-shadow .35s var(--nexo-ease);
}
.nexo-video-frame{aspect-ratio:16/9}
.nexo-video-frame iframe{width:100%;height:100%;border:0;display:block}
.nexo-about-graphic{height:auto}
.nexo-video-frame:hover,.nexo-about-graphic:hover{
  transform:translateY(-5px);
  box-shadow:0 28px 62px rgba(7,26,51,.15);
}
.nexo-about-copy{font-size:17px;line-height:1.72;max-width:720px}
.nexo-about-copy p:first-child{margin-top:0}

/* Key information replaces duplicated technical-data block */
.nexo-key-info-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.nexo-key-info-card{
  position:relative;
  min-height:118px;
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:22px;
  border:1px solid rgba(7,26,51,.10);
  border-radius:14px;
  background:#fff;
  box-shadow:0 12px 30px rgba(7,26,51,.045);
  transition:transform .32s var(--nexo-ease),box-shadow .32s var(--nexo-ease),border-color .3s ease;
}
.nexo-key-info-card:hover{
  transform:translateY(-5px);
  box-shadow:0 22px 50px rgba(7,26,51,.11);
  border-color:rgba(255,91,10,.30);
}
.nexo-key-info-card p{margin:0;color:var(--nexo-navy);font-size:15px;line-height:1.55}
.nexo-key-info-dot{
  flex:0 0 auto;width:9px;height:9px;margin-top:7px;border-radius:50%;
  background:var(--nexo-orange);box-shadow:0 0 0 5px rgba(255,91,10,.08)
}

/* Equipment exactly as requested: compact two-column horizontal rows */
.nexo-equipment-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 14px;
}
.nexo-equipment-row{
  min-height:58px;
  display:flex;
  align-items:center;
  padding:14px 18px;
  border-left:3px solid var(--nexo-orange);
  border-radius:8px;
  background:rgba(7,26,51,.035);
  color:var(--nexo-navy);
  font-size:14px;
  line-height:1.45;
  transition:transform .28s var(--nexo-ease),background .28s ease,box-shadow .28s ease;
}
.nexo-equipment-row:hover{
  transform:translateX(4px);
  background:#fff;
  box-shadow:0 12px 28px rgba(7,26,51,.075);
}

/* Old duplicated technical-card section is no longer used in the new single template */
.nexo-specs-section{display:none}

/* Smooth anchor landing below sticky header */
#opis,#kluczowe-informacje,#wyposazenie,#galeria,#specyfikacja,#contact{scroll-margin-top:110px}

@media(max-width:1050px){
  .nexo-spec-strip-inner{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nexo-about-grid{grid-template-columns:1fr;gap:34px}
  .nexo-about-media{position:relative;top:auto;max-width:780px}
  .nexo-key-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .nexo-boat-hero{padding-top:0}
  .nexo-boat-hero-grid{gap:10px}
  .nexo-boat-hero-image{min-height:360px;margin:0 0 20px;border-radius:14px}
  .nexo-model-nav{gap:8px}
  .nexo-model-nav .nexo-btn{flex:1 1 auto;text-align:center}
  .nexo-spec-strip-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nexo-key-info-grid,.nexo-equipment-list{grid-template-columns:1fr}
}
@media(max-width:480px){
  .nexo-spec-strip-inner{grid-template-columns:1fr 1fr}
  .nexo-spec-strip-item{padding:18px 12px}
  .nexo-spec-strip-item strong{font-size:17px}
}


/* =========================================================
   Final consolidated client corrections — v1.4.0
   ========================================================= */

/* 1. HERO: a little wider and image shifted visually to the right */
.nexo-boat-hero .nexo-shell{
  max-width:1480px;
}
.nexo-boat-hero-grid{
  grid-template-columns:minmax(0,1.02fr) minmax(620px,1.18fr);
  gap:50px;
}
.nexo-boat-hero-image{
  margin-left:20px;
}

/* all desktop navigation buttons in one row */
.nexo-model-nav{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:8px;
  width:100%;
}
.nexo-model-nav .nexo-btn{
  flex:0 0 auto;
  padding:12px 14px;
  font-size:11px;
  line-height:1;
  white-space:nowrap;
}
.nexo-model-nav .nexo-btn--primary{
  padding-left:18px;
  padding-right:18px;
}

/* 2. Full-width characteristics: each fact in its own equal-height cell */
.nexo-spec-strip{
  width:100%;
  overflow:hidden;
}
.nexo-spec-strip-inner{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(var(--nexo-spec-columns,7),minmax(0,1fr));
}
.nexo-spec-strip-inner.nexo-spec-count-1{--nexo-spec-columns:1}
.nexo-spec-strip-inner.nexo-spec-count-2{--nexo-spec-columns:2}
.nexo-spec-strip-inner.nexo-spec-count-3{--nexo-spec-columns:3}
.nexo-spec-strip-inner.nexo-spec-count-4{--nexo-spec-columns:4}
.nexo-spec-strip-inner.nexo-spec-count-5{--nexo-spec-columns:5}
.nexo-spec-strip-inner.nexo-spec-count-6{--nexo-spec-columns:6}
.nexo-spec-strip-inner.nexo-spec-count-7{--nexo-spec-columns:7}
.nexo-spec-strip-item{
  min-width:0;
  min-height:126px;
  padding:24px 22px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  border-right:1px solid rgba(255,255,255,.15);
}
.nexo-spec-strip-item:last-child{border-right:0}
.nexo-spec-strip-item small{
  min-height:26px;
  line-height:1.25;
}
.nexo-spec-strip-item strong{
  margin-top:10px;
  font-size:clamp(16px,1.15vw,22px);
  line-height:1.18;
  overflow-wrap:anywhere;
}

/* 3. About section: media and text visually finish at the same height */
.nexo-about-grid{
  align-items:stretch;
}
.nexo-about-media{
  position:relative;
  top:auto;
  height:100%;
  min-height:360px;
}
.nexo-video-frame{
  aspect-ratio:auto;
  height:100%;
  min-height:360px;
}
.nexo-about-graphic{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
}
.nexo-about-copy{
  height:100%;
  margin:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  font-size:clamp(14px,.95vw,17px);
  line-height:1.56;
}
.nexo-about-copy p{margin:0 0 16px}
.nexo-about-copy p:last-child{margin-bottom:0}

/* 4 & 5. Editorial split layout: title left, content right */
.nexo-split-heading-layout{
  display:grid;
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);
  gap:80px;
  align-items:start;
}
.nexo-split-heading{
  position:sticky;
  top:112px;
}
.nexo-split-heading h2{
  margin:8px 0 0;
  max-width:560px;
  font-size:clamp(38px,4.3vw,72px);
  line-height:.98;
  letter-spacing:-.045em;
  color:var(--nexo-navy);
}

/* Key info content stays on the right */
.nexo-key-info-grid{
  grid-template-columns:1fr;
  gap:12px;
}
.nexo-key-info-card{
  min-height:auto;
  padding:20px 22px;
}

/* Documents: clear title + clear action button */
.nexo-document-list{
  display:grid;
  gap:12px;
}
.nexo-document-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:76px;
  padding:14px 16px 14px 18px;
  border:1px solid rgba(7,26,51,.10);
  border-radius:12px;
  background:#fff;
  box-shadow:0 12px 30px rgba(7,26,51,.045);
  transition:transform .3s var(--nexo-ease),box-shadow .3s var(--nexo-ease),border-color .3s ease;
}
.nexo-document-row:hover{
  transform:translateY(-4px);
  border-color:rgba(255,91,10,.26);
  box-shadow:0 20px 46px rgba(7,26,51,.10);
}
.nexo-document-title{
  min-width:0;
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--nexo-navy);
}
.nexo-document-title strong{
  overflow-wrap:anywhere;
}
.nexo-document-icon{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:10px;
  background:rgba(255,91,10,.09);
  color:var(--nexo-orange);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
}
.nexo-btn--document{
  flex:0 0 auto;
  color:#fff;
  background:var(--nexo-orange);
  border-color:var(--nexo-orange);
}
.nexo-btn--document:hover{
  color:#fff;
  background:var(--nexo-navy);
  border-color:var(--nexo-navy);
}

/* Keep equipment in the client's preferred compact two-column format */
.nexo-equipment-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

/* Laptop desktop widths: still keep the hero nav in one line */
@media (min-width:901px) and (max-width:1280px){
  .nexo-boat-hero .nexo-shell{max-width:1240px}
  .nexo-boat-hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(500px,1.05fr);
    gap:28px;
  }
  .nexo-model-nav{gap:5px}
  .nexo-model-nav .nexo-btn{
    padding:11px 10px;
    font-size:10px;
  }
  .nexo-model-nav .nexo-btn--primary{
    padding-left:13px;
    padding-right:13px;
  }
  .nexo-spec-strip-item{
    padding:20px 14px;
  }
  .nexo-spec-strip-item strong{
    font-size:15px;
  }
}

/* Mobile/tablet */
@media(max-width:900px){
  .nexo-boat-hero-grid{
    grid-template-columns:1fr;
  }
  .nexo-boat-hero-image{
    margin-left:0;
  }
  .nexo-model-nav{
    flex-wrap:wrap;
  }

  /* Requested mobile characteristics layout:
     first 6 = 3 columns x 2 rows, 7th = full-width bottom bar */
  .nexo-spec-strip-inner{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .nexo-spec-strip-item{
    min-height:118px;
    aspect-ratio:1.05/1;
    padding:14px 10px;
    border-bottom:1px solid rgba(255,255,255,.15);
  }
  .nexo-spec-strip-inner.nexo-spec-count-7 .nexo-spec-strip-item:last-child{
    grid-column:1 / -1;
    min-height:76px;
    aspect-ratio:auto;
    justify-content:center;
  }
  .nexo-spec-strip-item small{
    min-height:auto;
    font-size:9px;
  }
  .nexo-spec-strip-item strong{
    font-size:14px;
  }

  .nexo-about-grid{
    grid-template-columns:1fr;
  }
  .nexo-about-media,
  .nexo-video-frame,
  .nexo-about-graphic{
    min-height:0;
    height:auto;
  }
  .nexo-video-frame{
    aspect-ratio:16/9;
  }

  .nexo-split-heading-layout{
    grid-template-columns:1fr;
    gap:28px;
  }
  .nexo-split-heading{
    position:relative;
    top:auto;
  }
  .nexo-split-heading h2{
    font-size:clamp(34px,10vw,54px);
  }

  .nexo-document-row{
    align-items:flex-start;
    flex-direction:column;
  }
  .nexo-btn--document{
    width:100%;
    text-align:center;
  }

  .nexo-equipment-list{
    grid-template-columns:1fr;
  }
}

@media(max-width:520px){
  .nexo-spec-strip-item{
    min-height:104px;
    padding:12px 8px;
  }
  .nexo-spec-strip-item strong{
    font-size:12.5px;
  }
  .nexo-spec-strip-item small{
    font-size:8px;
  }
}

/* =========================================================
   MOBILE HEADER FIX
   logo left / languages center / menu right
   ========================================================= */

@media (max-width: 980px) {

  .nexo-header-inner {
    position: relative;
    min-height: 74px;

    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
  }

  /* LOGO — LEFT */
  .nexo-logo {
    grid-column: 1;
    justify-self: start;
    margin: 0;
  }

  .nexo-logo img {
    width: 126px;
    height: auto;
  }

  /* LANGUAGES — CENTER */
  .nexo-header-actions {
    grid-column: 2;
    justify-self: center;
    margin: 0 !important;
    display: flex;
    align-items: center;
  }

  .nexo-header-actions > .nexo-cta {
    display: none;
  }

  .nexo-lang-switch {
    margin: 0;
  }

  /* BURGER — RIGHT */
  .nexo-menu-toggle {
    grid-column: 3;
    justify-self: end;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 44px;
    height: 44px;
    margin: 0;
  }

  /* dropdown menu */
  .nexo-nav {
    display: none;
  }

  .nexo-nav.is-open {
    position: absolute;
    display: flex;

    top: 74px;
    left: 0;
    right: 0;

    flex-direction: column;
    align-items: flex-start;
    gap: 0;

    padding: 15px 24px 24px;

    background: var(--nexo-paper);
    border-bottom: 1px solid var(--nexo-line);

    z-index: 999;
  }

  .nexo-nav.is-open a {
    width: 100%;
    padding: 12px 0;
  }
}


@media (max-width: 560px) {

  .nexo-header-inner {
    grid-template-columns: minmax(105px, 1fr) auto minmax(44px, 1fr);
    gap: 8px;
  }

  .nexo-logo img {
    width: 118px;
  }

  .nexo-lang-switch {
    padding: 2px;
  }

  .nexo-lang-switch a {
    min-width: 29px;
    height: 28px;
    padding: 0 5px;
    font-size: 10px;
  }

  .nexo-menu-toggle {
    width: 42px;
    height: 42px;
  }

}