/*
Theme Name: Gulf Fleet
Theme URI: https://thegulffleet.com
Author: Gulf Fleet
Description: UAE luxury yacht brokerage — bilingual (EN/RU) brochure theme with an editable Yachts directory, single-yacht pages, and a built-in lead form. Light design, electric-blue accent, Plus Jakarta Sans + DM Mono. Faithful port of the gulf-fleet-v2 app.
Version: 2.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gulffleet
*/

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
img{max-width:100%;display:block}

/* ── Tokens (match gulf-fleet-v2 globals.css) ── */
:root{
  --bg:#FFFFFF;
  --surface:#F4F3EF;
  --fg:#0D0D0D;
  --muted:#797774;
  --blue:#0047FF;
  --blue-dim:rgba(0,71,255,.06);
  --blue-mid:rgba(0,71,255,.12);
  --border:#E6E4DE;
  --font-sans:'Plus Jakarta Sans',system-ui,sans-serif;
  --font-mono:'DM Mono',ui-monospace,monospace;
  --shadow-hover:0 0 0 2px var(--blue),0 8px 32px rgba(0,71,255,.12);
  --tr:240ms cubic-bezier(.4,0,.2,1);
}
body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
.wrap{max-width:1400px;margin:0 auto;padding:0 24px}
.mono{font-family:var(--font-mono)}
.eyebrow{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:14px}
h1,h2,h3{font-weight:800;letter-spacing:-.02em;line-height:1.04}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:999px;font-weight:700;font-size:15px;text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:transform var(--tr),background var(--tr),color var(--tr),border-color var(--tr)}
.btn-blue{background:var(--blue);color:#fff}
.btn-blue:hover{transform:translateY(-2px)}
.btn-ghost{background:transparent;border-color:var(--border);color:var(--fg)}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}

/* ── NAV ── */
.nav{position:fixed;inset:0 0 auto 0;z-index:100;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;transition:background var(--tr),border-color var(--tr);border-bottom:1px solid transparent}
.nav.scrolled{background:rgba(255,255,255,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:var(--border)}
/* logo + links are WHITE over the hero, turn dark once the nav gets a white bg */
.nav-logo{font-weight:800;font-size:20px;color:#fff;text-decoration:none;letter-spacing:-.02em;font-family:var(--font-sans);z-index:2}
.nav-logo b{color:#fff;font-weight:800}
.nav.scrolled .nav-logo{color:var(--fg)}
.nav.scrolled .nav-logo b{color:var(--blue)}
.nav-links{display:flex;align-items:center;gap:30px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.nav-links a{color:rgba(255,255,255,.85);text-decoration:none;font-size:14px;font-weight:600;transition:color var(--tr)}
.nav-links a:hover{color:#fff}
.nav.scrolled .nav-links a{color:var(--fg)}
.nav.scrolled .nav-links a:hover{color:var(--blue)}
.nav-actions{display:flex;align-items:center;gap:14px;z-index:2}
.lang-toggle{display:inline-flex;border:1px solid rgba(255,255,255,.4);border-radius:999px;overflow:hidden;font-family:var(--font-mono);font-size:11px}
.lang-toggle a{padding:5px 11px;color:rgba(255,255,255,.85);text-decoration:none;letter-spacing:.06em}
.lang-toggle a.active{background:var(--blue);color:#fff}
.nav.scrolled .lang-toggle{border-color:var(--border)}
.nav.scrolled .lang-toggle a{color:var(--muted)}
.nav.scrolled .lang-toggle a.active{background:var(--blue);color:#fff}
.nav-burger{display:none;flex-direction:column;gap:4px;width:34px;height:34px;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:0}
.nav-burger span{display:block;width:20px;height:2px;background:#fff;transition:transform var(--tr),opacity var(--tr)}
.nav.scrolled .nav-burger span{background:var(--fg)}
.nav-burger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.nav-mobile{display:none;position:fixed;top:64px;left:0;right:0;z-index:99;background:rgba(255,255,255,.98);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);flex-direction:column;padding:14px 24px 22px;gap:4px}
.nav-mobile.open{display:flex}
.nav-mobile a{color:var(--fg);text-decoration:none;font-size:16px;font-weight:600;padding:12px 0;border-bottom:1px solid var(--border)}
.nav-mobile a:last-child{border-bottom:none}
@media(max-width:880px){.nav-links{display:none}.nav-burger{display:flex}}

/* ── HERO ── */
.hero{position:relative;min-height:92vh;display:flex;align-items:flex-end;overflow:hidden;background:#0D0D0D}
.hero-bg{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;opacity:.62}
.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(13,13,13,.85) 0%,rgba(13,13,13,.2) 55%,rgba(13,13,13,.4) 100%)}
.hero-inner{position:relative;z-index:2;width:100%;max-width:1400px;margin:0 auto;padding:0 24px 80px}
.hero-badge{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:8px 16px;border-radius:999px;margin-bottom:26px;backdrop-filter:blur(6px)}
.hero-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px rgba(0,71,255,.25)}
.hero h1{font-size:clamp(60px,12vw,170px);color:#fff;letter-spacing:-.04em;line-height:.9;margin-bottom:20px}
.hero-sub{font-family:var(--font-mono);font-size:14px;letter-spacing:.04em;color:rgba(255,255,255,.7);margin-bottom:34px}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px}
.hero .btn-ghost{border-color:rgba(255,255,255,.3);color:#fff}
.hero .btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);color:#fff}

/* ── SCROLL-EXPAND HERO (matches ScrollExpandMedia) ── */
.hero-x{position:relative;height:200vh;background:#0D0D0D}
.hero-x-sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center}
.hero-x-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;will-change:opacity}
.hero-x-media{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:62vw;height:34.9vw;border-radius:16px;overflow:hidden;box-shadow:0 0 60px rgba(0,0,0,.4);will-change:width,height,border-radius;z-index:1}
.hero-x-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hero-x-tint{position:absolute;inset:0;background:#000;opacity:.6;pointer-events:none}
.hero-x-meta{position:absolute;left:0;right:0;top:22%;text-align:center;z-index:3;width:100%;will-change:opacity}
.hero-x-meta .hx-date,.hero-x-meta .hx-scroll{will-change:transform;display:block}
.hero-x-meta .hx-date{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.hero-x-meta .hx-scroll{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-top:8px}
.hero-x-title{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;z-index:3;pointer-events:none}
.hero-x-title span{display:block;color:#fff;font-weight:800;letter-spacing:-.04em;line-height:.88;font-size:clamp(72px,10.5vw,148px);text-shadow:0 2px 40px rgba(0,0,0,.35);will-change:transform}
@media(prefers-reduced-motion:reduce){.hero-x{height:100vh}.hero-x-media{width:100vw;height:100vh;border-radius:0}.hero-x-bg{opacity:0}.hero-x-meta{opacity:0}}

/* ── CREDIBILITY ── */
.cred{background:var(--fg);color:#fff;padding:0}
.cred-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1400px;margin:0 auto}
.cred-cell{padding:40px 28px;border-right:1px solid rgba(255,255,255,.08)}
.cred-cell:last-child{border-right:none}
.cred-val{font-size:34px;font-weight:800;letter-spacing:-.02em;line-height:1}
.cred-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:8px}
.cred-note{text-align:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.4);padding:18px 24px;border-top:1px solid rgba(255,255,255,.08)}
@media(max-width:760px){.cred-grid{grid-template-columns:repeat(2,1fr)}.cred-cell:nth-child(2){border-right:none}}

/* ── SECTION ── */
.section{padding:88px 0}
.section.surface{background:var(--surface)}
.section-head{max-width:760px;margin-bottom:48px}
.section-head h2{font-size:clamp(34px,5vw,60px);letter-spacing:-.03em;margin-bottom:16px}
.section-head p{color:var(--muted);font-size:17px;line-height:1.75}

/* ── SERVICES ── */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:1024px){.svc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.svc-grid{grid-template-columns:1fr}}
.svc{padding:30px 26px;border:1px solid var(--border);border-radius:18px;background:var(--bg);text-decoration:none;color:var(--fg);display:flex;flex-direction:column;gap:12px;transition:box-shadow var(--tr),transform var(--tr)}
.svc:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}
.svc-n{font-family:var(--font-mono);font-size:11px;color:var(--blue);letter-spacing:.1em}
.svc h3{font-size:21px}
.svc p{color:var(--muted);font-size:14px;line-height:1.7;flex:1}
.svc .more{font-family:var(--font-mono);font-size:12px;color:var(--blue);letter-spacing:.04em}

/* ── FLEET ── */
.fleet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:1024px){.fleet-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.fleet-grid{grid-template-columns:1fr}}
.yacht{background:var(--bg);border:1px solid var(--border);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--fg);display:flex;flex-direction:column;transition:box-shadow var(--tr),transform var(--tr)}
.yacht:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}
.yacht-img{aspect-ratio:16/11;position:relative;overflow:hidden;background:var(--surface)}
.yacht-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.yacht:hover .yacht-img img{transform:scale(1.05)}
.yacht-cond{position:absolute;top:12px;left:12px;font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);background:rgba(255,255,255,.92);padding:5px 11px;border-radius:999px}
.yacht-body{padding:20px;display:flex;flex-direction:column;gap:12px;flex:1}
.yacht-brand{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.yacht-name{font-size:21px;font-weight:800;letter-spacing:-.02em}
.yacht-specs{display:flex;flex-wrap:wrap;gap:6px 14px;font-family:var(--font-mono);font-size:12px;color:var(--muted)}
.yacht-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid var(--border)}
.yacht-price{color:var(--blue);font-weight:700;font-size:14px}
.yacht-link{font-family:var(--font-mono);font-size:12px;color:var(--muted)}
.yacht:hover .yacht-link{color:var(--blue)}

/* ── SPLIT (charter / newbuild / sell) ── */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:32px}}
.split-body p{color:var(--muted);font-size:16px;line-height:1.85;margin-bottom:24px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.chip{font-family:var(--font-mono);font-size:12px;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:8px 14px}
.split-art{aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:var(--surface);border:1px solid var(--border)}
.split-art img{width:100%;height:100%;object-fit:cover}

/* ── MANAGEMENT GRID ── */
.mgmt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:1024px){.mgmt-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.mgmt-grid{grid-template-columns:1fr}}
.mgmt-card{padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--bg);transition:border-color var(--tr)}
.mgmt-card:hover{border-color:var(--blue)}
.mgmt-card h3{font-size:16px;margin-bottom:8px}
.mgmt-card p{color:var(--muted);font-size:13px;line-height:1.7}

/* ── ABOUT ── */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:32px}}
.about-copy p{color:var(--muted);font-size:16px;line-height:1.9;margin-bottom:20px}
.about-media{border-radius:20px;overflow:hidden;border:1px solid var(--border);background:var(--surface);aspect-ratio:4/5;max-height:600px}
.about-media video{width:100%;height:100%;object-fit:cover;display:block}
.about-role{font-family:var(--font-mono);font-size:13px;letter-spacing:.02em;color:var(--blue);margin:-6px 0 22px}
.about-source{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--muted);border-top:1px solid var(--border);padding-top:18px}
.dot-green{width:5px;height:5px;border-radius:50%;background:#22c55e;flex:none}
/* About Us page (Mikael) */
.aboutus{padding:120px 0 90px}
.aboutus-grid{display:grid;grid-template-columns:0.85fr 1fr;gap:56px;align-items:center;max-width:1100px;margin:0 auto}
@media(max-width:900px){.aboutus-grid{grid-template-columns:1fr;gap:32px}}
.aboutus-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1100px;margin:52px auto 0}
.aboutus-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;border:1px solid var(--border);image-orientation:from-image}
@media(max-width:700px){.aboutus-gallery{grid-template-columns:1fr 1fr;gap:12px}}

/* ── PARTNERS ── */
.partners{display:flex;flex-wrap:wrap;gap:14px}
.partner{font-family:var(--font-mono);font-size:14px;letter-spacing:.02em;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:12px 22px}

/* ── CONTACT + FORM ── */
.contact{background:var(--surface)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:36px}}
.contact-details{display:flex;flex-direction:column;gap:18px;margin-top:28px}
.cd-row{display:flex;flex-direction:column;gap:2px}
.cd-row .l{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cd-row a,.cd-row span{color:var(--fg);text-decoration:none;font-size:16px;font-weight:600}
.cd-row a:hover{color:var(--blue)}
.lead-form{background:var(--bg);border:1px solid var(--border);border-radius:20px;padding:28px}
.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin-bottom:20px}
.lead-field{display:flex;flex-direction:column;gap:7px}
.lead-field.full{grid-column:1/-1}
.lead-field>span{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lead-field input,.lead-field select,.lead-field textarea{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--fg);font-family:var(--font-sans);font-size:15px;padding:12px 13px;transition:border-color var(--tr)}
.lead-field textarea{resize:vertical;min-height:84px}
.lead-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%230047FF' d='M6 8 0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:34px;cursor:pointer}
.lead-field input:focus,.lead-field select:focus,.lead-field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-dim)}
.lead-submit{width:100%;justify-content:center}
.lead-note{font-family:var(--font-mono);font-size:11px;color:var(--muted);text-align:center;margin-top:12px}
.lead-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lead-banner{margin-bottom:18px;padding:13px 18px;border-radius:12px;font-size:14px}
.lead-banner.ok{background:var(--blue-dim);border:1px solid var(--blue-mid);color:var(--blue)}
.lead-banner.err{background:rgba(220,38,38,.06);border:1px solid rgba(220,38,38,.25);color:#dc2626}
@media(max-width:560px){.lead-grid{grid-template-columns:1fr}}

/* ── SINGLE YACHT ── */
.single-yacht{padding:108px 0 80px}
.sy-back{font-family:var(--font-mono);font-size:12px;color:var(--blue);text-decoration:none;display:inline-block;margin-bottom:22px}
.sy-head{display:grid;grid-template-columns:1.25fr 1fr;gap:44px;align-items:start}
@media(max-width:900px){.sy-head{grid-template-columns:1fr;gap:26px}}
.sy-img{border-radius:18px;overflow:hidden;border:1px solid var(--border);aspect-ratio:16/11;background:var(--surface)}
.sy-img img{width:100%;height:100%;object-fit:cover}
.sy-name{font-size:clamp(32px,5vw,52px);letter-spacing:-.03em;margin:8px 0 14px}
.sy-price{color:var(--blue);font-size:20px;font-weight:700;margin-bottom:22px}
.sy-specs{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-bottom:26px}
.sy-spec{background:var(--bg);padding:15px 16px}
.sy-spec .l{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sy-spec .v{font-size:15px;font-weight:700;margin-top:3px}
.sy-source{font-family:var(--font-mono);font-size:12px;color:var(--muted);margin-top:24px}
.sy-source a{color:var(--blue)}

/* ── FOOTER ── */
.site-footer{background:var(--fg);color:#fff;padding:56px 24px 36px}
.footer-inner{max-width:1400px;margin:0 auto}
.footer-top{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-logo{font-size:24px;font-weight:800}
.footer-logo b{color:var(--blue)}
.footer-disclaimer{color:rgba(255,255,255,.45);font-size:12px;line-height:1.7;max-width:520px;margin-top:14px}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:24px;font-family:var(--font-mono);font-size:11px;color:rgba(255,255,255,.4);letter-spacing:.04em}

/* ── FLEET toolbar + rich card (matches live FleetGrid/YachtCard) ── */
.fleet-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-bottom:24px}
.fleet-count{font-family:var(--font-mono);font-size:13px;color:var(--muted);background:rgba(0,0,0,.05);padding:8px 18px;border-radius:100px;letter-spacing:.04em}
.fleet-count span:first-child{color:var(--fg);font-weight:600}
.fleet-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.fleet-search{position:relative;flex:1 1 240px;max-width:360px}
.fleet-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--muted);pointer-events:none}
.fleet-search input{width:100%;background:var(--bg);border:1.5px solid var(--border);color:var(--fg);font-family:var(--font-sans);font-size:14px;padding:11px 16px 11px 38px;border-radius:100px;outline:none}
.fleet-search input:focus{border-color:var(--blue)}
.fleet-sels{display:flex;gap:10px;margin-left:auto;flex-wrap:wrap}
.fleet-sel{font-family:var(--font-sans);font-size:12px;font-weight:500;background:rgba(255,255,255,.8);border:1.5px solid var(--border);color:var(--fg);padding:9px 32px 9px 16px;border-radius:100px;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%230047FF' d='M6 8 0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.fleet-filters{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:32px}
.fleet-brands,.fleet-conds{display:flex;flex-wrap:wrap;gap:8px}
.fchip{font-family:var(--font-sans);font-size:13px;font-weight:600;background:var(--bg);border:1.5px solid var(--border);color:var(--fg);padding:8px 16px;border-radius:100px;cursor:pointer;transition:all var(--tr)}
.fchip:hover{border-color:var(--blue)}
.fchip.active{background:var(--blue);border-color:var(--blue);color:#fff}
.fcond{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:transparent;border:1.5px solid var(--border);color:var(--muted);padding:8px 16px;border-radius:100px;cursor:pointer;transition:all var(--tr)}
.fcond.active{background:var(--fg);border-color:var(--fg);color:#fff}
.fleet-empty{text-align:center;color:var(--muted);font-size:16px;padding:60px 0}
.yacht-img{aspect-ratio:3/2}
.yacht-top{position:absolute;inset:0 0 auto 0;display:flex;align-items:flex-start;justify-content:space-between;padding:12px;z-index:2}
.yacht-top-l{display:flex;align-items:center;gap:8px}
.yacht-fav{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:100px;border:none;cursor:pointer;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);color:var(--muted);transition:color var(--tr)}
.yacht-fav svg{width:15px;height:15px}
.yacht-fav:hover{color:var(--blue)}
.yacht-fav.on{color:var(--blue)}
.yacht-fav.on svg{fill:var(--blue)}
.yacht-badge{font-family:var(--font-mono);font-size:9px;font-weight:500;letter-spacing:.1em;color:#fff;background:rgba(13,13,13,.82);padding:6px 10px;border-radius:100px}
.yacht-ft{font-family:var(--font-mono);font-size:10px;font-weight:600;color:var(--fg);background:rgba(255,255,255,.92);backdrop-filter:blur(8px);padding:6px 11px;border-radius:100px}
.yacht-chips{display:flex;flex-wrap:wrap;gap:6px 8px}
.yacht-chips span{font-family:var(--font-mono);font-size:11px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:5px 9px}
.yacht-chips b{color:var(--fg);font-weight:600}
.yacht-link{display:inline-flex;align-items:center;gap:3px}

/* ── New Build brand grid ── */
.nb-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--bg);align-self:start}
.nb-cell{padding:26px 18px;text-align:center;font-weight:800;font-size:18px;letter-spacing:-.01em;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
.nb-cell:nth-child(2n){border-right:none}
.nb-more{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--fg);display:flex;align-items:center;justify-content:center}

/* ── lead actions (two buttons) ── */
.lead-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}
.lead-actions .btn{flex:1 1 160px;justify-content:center}

/* ── contact map ── */
.contact-map{margin-top:18px;border-radius:14px;overflow:hidden;border:1px solid var(--border);aspect-ratio:16/9;background:var(--surface)}
.contact-map iframe{width:100%;height:100%;border:0;display:block}

/* ── footer columns ── */
.footer-cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1)}
@media(max-width:760px){.footer-cols{grid-template-columns:1fr 1fr;gap:26px}}
.footer-tag{font-family:var(--font-mono);font-size:11px;color:rgba(255,255,255,.45);letter-spacing:.04em;margin:10px 0 16px}
.footer-social{display:flex;gap:16px}
.footer-social a{color:var(--blue);font-size:13px;text-decoration:none}
.footer-col{display:flex;flex-direction:column;gap:10px}
.footer-h{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:4px}
.footer-col a,.footer-col span{color:rgba(255,255,255,.7);text-decoration:none;font-size:14px}
.footer-col a:hover{color:#fff}
.footer-disclaimer{color:rgba(255,255,255,.4);font-size:12px;line-height:1.7;max-width:820px;margin:22px 0 0}

/* ── SINGLE YACHT (rich detail) ── */
.sy-hero{position:relative;min-height:78vh;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:var(--fg)}
.sy-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;opacity:.82}
.sy-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(13,13,13,.92),rgba(13,13,13,.1) 60%,rgba(13,13,13,.5))}
.sy-hero-inner{position:relative;z-index:2;max-width:1400px;width:100%;margin:0 auto;padding:120px 24px 28px}
.sy-back{font-family:var(--font-mono);font-size:12px;color:rgba(255,255,255,.8);text-decoration:none;display:inline-block;margin-bottom:22px}
.sy-hero-meta{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.sy-hero-brand{font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.sy-hero-cond{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;color:#fff;background:rgba(255,255,255,.18);padding:5px 10px;border-radius:100px}
.sy-hero-title{font-size:clamp(48px,7.5vw,110px);font-weight:800;letter-spacing:-.04em;line-height:.9;color:#fff;margin-bottom:14px}
.sy-hero-price{display:flex;flex-direction:column;gap:2px}
.sy-hero-price span{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.sy-hero-price b{font-size:22px;font-weight:700;color:#fff}
.sy-stats{position:relative;z-index:2;background:rgba(13,13,13,.6);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.08);display:flex;overflow-x:auto}
.sy-stat{padding:22px 30px;border-right:1px solid rgba(255,255,255,.06);min-width:110px;flex:none;text-align:center}
.sy-stat .v{font-size:18px;font-weight:700;color:#fff}
.sy-stat .l{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-top:4px}
.sy-body{padding:72px 0}
.sy-cols{display:grid;grid-template-columns:1fr 340px;gap:56px;align-items:start}
@media(max-width:900px){.sy-cols{grid-template-columns:1fr;gap:36px}}
.sy-sec{margin-bottom:48px}
.sy-overview p{color:var(--muted);font-size:16px;font-weight:300;line-height:1.85;margin-bottom:16px}
.sy-spectable{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-top:18px}
.sy-specrow{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border);font-size:14px}
.sy-specrow:nth-child(odd){border-right:1px solid var(--border)}
.sy-specrow .l{color:var(--muted)}
.sy-specrow .v{color:var(--fg);font-weight:600;text-align:right}
.sy-verified{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;color:var(--muted);margin-top:16px}
.sy-verified a{color:var(--blue);text-decoration:none}
.sy-side{position:sticky;top:84px}
@media(max-width:900px){.sy-side{position:static}}
.sy-card{background:var(--bg);border:1px solid var(--border);border-radius:18px;padding:24px}
.sy-card-price{display:flex;flex-direction:column;gap:3px;padding-bottom:18px;border-bottom:1px solid var(--border);margin-bottom:18px}
.sy-card-price span{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sy-card-price b{font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--blue)}
.sy-card-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}
.sy-card-facts span{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.sy-card-facts b{font-size:16px;font-weight:700}
.sy-related{padding:0 0 80px}

/* ── REVEAL ── */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
