/* Self-hosted fonts — no external requests (owner order 2026-07-10) */
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrEtGmSq17w.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrEtImSo.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrEtGmSq17w.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrEtImSo.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYp3tKgS4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYqXtK.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYp3tKgS4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYqXtK.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYp3tKgS4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYqXtK.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Sans 3';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqLlOxCcSmrfB.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Sans 3';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqLlOxCkSmg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/nwpStKy2OAdR1K-IwhWudF-R3wEaZfrc.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/nwpStKy2OAdR1K-IwhWudF-R3w8aZQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/nwpStKy2OAdR1K-IwhWudF-R3wEaZfrc.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/nwpStKy2OAdR1K-IwhWudF-R3w8aZQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/nwpStKy2OAdR1K-IwhWudF-R3wEaZfrc.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/nwpStKy2OAdR1K-IwhWudF-R3w8aZQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* ============================================================
   superyacht.pro — THEME A · "The Liner Brochure"
   Vintage maritime luxury. Warm ivory paper, deep ink-navy,
   gold as gilding only. Cormorant Garamond display, Source
   Sans 3 body. Hairline & double rules, letterspaced small
   caps, no rounded corners. 1930s liner brochure, typeset
   for the web. Light default; [data-theme="dark"] = moonlight.
   ============================================================ */

/* ---------- 0. Tokens ---------- */
:root{
  /* paper & ink */
  --paper:#f7f2e6;            /* warm ivory */
  --paper-2:#f0e9d8;          /* deck-plan tint (shaded sections) */
  --paper-3:#ece4d0;          /* deepest paper (wells) */
  --ink:#1d2d3c;              /* deep ink-navy: text */
  --ink-2:#33465a;            /* softened ink: prose */
  --mut:#55636e;              /* captions, hints — AA on ivory & shade */
  /* the night sea (dark bands, heroes, footer) */
  --sea:#12222f;
  --sea-2:#0e1b26;
  --sea-ink:#e9e2cf;          /* ivory type on sea */
  --sea-mut:#a3b0ba;
  /* gilding */
  --gold:#7d6234;             /* bronze-gold on ivory (rules, eyebrows) — AA */
  --gold-bright:#c99b33;      /* gold hover / on sea */
  --gold-logo:#d9a520;        /* matches the wordmark */
  /* rules */
  --rule:rgba(29,45,60,.22);          /* hairline on paper */
  --rule-faint:rgba(29,45,60,.12);
  --rule-sea:rgba(233,226,207,.22);   /* hairline on sea */
  --rule-gold:rgba(169,124,30,.55);
  /* type */
  --serif:'Cormorant Garamond',Garamond,'Times New Roman',serif;
  --sans:'Source Sans 3','Source Sans Pro',Seravek,'Gill Sans',Calibri,system-ui,sans-serif;
  --caps-ls:.22em;            /* the house letterspacing */
  /* misc */
  --err:#8c2f22;
  --hairline:1px solid var(--rule);
  --dblline:3px double var(--rule);
}

[data-theme="dark"]{
  /* moonlight: the night sea becomes the paper; bands sit clearly below it */
  --paper:#111e2b;
  --paper-2:#162636;
  --paper-3:#0d1723;
  --ink:#e9e2cf;
  --ink-2:#cfc9b6;
  --mut:#98a5ae;
  --sea:#081119;
  --sea-2:#060d14;
  --sea-ink:#e9e2cf;
  --sea-mut:#93a2ad;
  --gold:#c99b33;
  --gold-bright:#dcb457;
  --rule:rgba(233,226,207,.20);
  --rule-faint:rgba(233,226,207,.10);
  --rule-sea:rgba(233,226,207,.18);
  --rule-gold:rgba(201,155,51,.5);
  --err:#e08a7a;
}

/* ---------- 1. Reset & base typography ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body.sy-body{
  font:400 1.0625rem/1.72 var(--sans);
  color:var(--ink);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
svg{display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--ink);color:var(--paper)}
[data-theme="dark"] ::selection{background:var(--gold);color:#0e1822}
:focus{outline:none}
:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}

h1,h2,h3,h4{
  font-family:var(--serif);
  font-weight:600;
  line-height:1.15;
  color:var(--ink);
  letter-spacing:.01em;
}
h1{font-size:clamp(2.2rem,4.6vw,3.4rem);font-weight:500}
h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:1.5em 0 .5em}
h3{font-size:1.3rem}
h4{font-size:1.05rem}

.sy-main{background:var(--paper);display:block}
.sy-main a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-gold);text-underline-offset:3px;text-decoration-thickness:1px}
.sy-main a:hover{color:var(--gold);text-decoration-color:var(--gold)}

.sy-wrap{max-width:1140px;margin:0 auto;padding:0 1.5rem}

/* the house eyebrow: letterspaced small caps with a gilt tick */
.sy-eyebrow,.sy-eyebrow-light{
  display:block;
  font-family:var(--sans);
  font-weight:600;
  font-size:.72rem;
  letter-spacing:var(--caps-ls);
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:.9rem;
}
.sy-eyebrow::before,.sy-eyebrow-light::before{
  content:"";display:inline-block;vertical-align:middle;
  width:1.6rem;height:1px;background:var(--gold);
  margin-right:.7rem;transform:translateY(-1px);
}
.sy-eyebrow-light{color:var(--gold-bright)}

/* ---------- 2. Header (.sy-top) ---------- */
.sy-top{
  position:sticky;top:0;z-index:50;
  background:var(--sea-2);
  border-bottom:3px double var(--rule-gold);
}
.sy-top-in{
  display:flex;align-items:center;justify-content:space-between;gap:1.2rem;
  max-width:1240px;padding:.8rem 1.5rem;
}
.sy-brand{display:flex;align-items:center;gap:.7rem}
.sy-logo{height:46px;width:auto;display:block}
.sy-logo-foot{height:52px;width:auto;display:block;margin-bottom:.7rem}

.sy-nav{display:flex;align-items:center;gap:1.7rem}
.sy-nav>a{
  font-family:var(--sans);font-weight:500;font-size:.74rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;
  color:var(--sea-mut);padding:.4rem 0;
  border-bottom:1px solid transparent;
  transition:color .15s,border-color .15s;
}
.sy-nav>a:hover{color:var(--gold-bright);border-bottom-color:var(--gold-bright)}
.sy-nav-tools{display:flex;align-items:center;gap:.9rem;margin-left:.6rem}

/* theme toggle */
.sy-theme{
  display:inline-flex;align-items:center;justify-content:center;
  width:34px;height:34px;background:transparent;
  border:1px solid var(--rule-sea);border-radius:0;
  color:var(--sea-ink);cursor:pointer;transition:color .15s,border-color .15s;
}
.sy-theme:hover{color:var(--gold-bright);border-color:var(--gold-bright)}
.sy-theme svg{width:17px;height:17px}
.sy-ic-moon{fill:currentColor;display:block}
.sy-ic-sun{fill:none;stroke:currentColor;stroke-width:1.6;display:none}
[data-theme="dark"] .sy-ic-moon{display:none}
[data-theme="dark"] .sy-ic-sun{display:block}

.sy-btn-top{padding:.5rem 1.1rem;font-size:.7rem}
.sy-top .sy-btn,.sy-top a.sy-btn{background:var(--gold-logo);border-color:var(--gold-logo);color:#14212d}
.sy-top .sy-btn:hover{box-shadow:inset 0 0 0 1px #14212d}

/* burger + checkbox nav */
.sy-nav-toggle{position:absolute;opacity:0;pointer-events:none}
.sy-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;border:1px solid transparent}
.sy-burger span{display:block;width:22px;height:1px;background:var(--sea-ink)}
.sy-burger:hover span{background:var(--gold-bright)}
.sy-nav-toggle:focus-visible~.sy-burger{outline:2px solid var(--gold-bright);outline-offset:2px}

@media (max-width:900px){
  .sy-top{position:relative}
  .sy-burger{display:flex}
  .sy-nav{
    display:none;position:absolute;top:100%;left:0;right:0;z-index:49;
    background:var(--sea-2);
    flex-direction:column;align-items:stretch;gap:0;
    padding:.6rem 1.5rem 1.4rem;
    border-bottom:3px double var(--rule-gold);
  }
  .sy-nav>a{width:100%;padding:.75rem 0;border-bottom:1px solid var(--rule-sea);font-size:.8rem}
  .sy-nav>a:hover{border-bottom-color:var(--gold-bright)}
  .sy-nav-tools{margin:1rem 0 0;width:100%;justify-content:space-between}
  .sy-nav-toggle:checked~.sy-nav{display:flex}
}

/* ---------- 3. Buttons ---------- */
.sy-btn{
  display:inline-block;
  font-family:var(--sans);font-weight:600;font-size:.74rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;text-align:center;
  color:var(--paper);background:var(--ink);
  border:1px solid var(--ink);border-radius:0;
  padding:.78rem 1.7rem;cursor:pointer;
  transition:color .15s,background .15s,border-color .15s,outline-color .15s;
  text-decoration:none;
}
.sy-btn:hover{box-shadow:inset 0 0 0 1px var(--gold-bright);text-decoration:none}
.sy-main a.sy-btn{color:var(--paper);text-decoration:none}
[data-theme="dark"] .sy-btn{color:#0e1822;background:var(--ink);border-color:var(--ink)}
[data-theme="dark"] .sy-main a.sy-btn{color:#0e1822}
[data-theme="dark"] .sy-btn:hover{box-shadow:inset 0 0 0 1px #0e1822}

.sy-btn-ghost,.sy-main a.sy-btn-ghost{
  background:transparent;color:var(--ink);border-color:var(--rule);
}
.sy-btn-ghost:hover,.sy-main a.sy-btn-ghost:hover{
  color:var(--gold);border-color:var(--gold);box-shadow:none;
}
.sy-btn-light,.sy-main a.sy-btn-light{
  background:transparent;color:var(--sea-ink);border-color:var(--rule-sea);
}
.sy-btn-light:hover,.sy-main a.sy-btn-light:hover{
  color:var(--gold-bright);border-color:var(--gold-bright);box-shadow:none;
}
.sy-btn-block{display:block;width:100%}
.sy-btn-block+.sy-btn-block{margin-top:.7rem}

/* ---------- 4. Heroes & bands ---------- */
/* Home hero — photo behind (inline background-image), white text */
.sy-home-hero{
  position:relative;min-height:70vh;display:flex;align-items:center;
  background-size:cover!important;background-position:center!important;
  color:#fff;padding:5rem 0 5.5rem;
  border-bottom:var(--dblline);
}
.sy-home-hero-in{max-width:820px}
.sy-home-hero h1{
  color:#fff;font-weight:500;
  font-size:clamp(2.4rem,5.4vw,3.9rem);
  text-shadow:0 1px 22px rgba(0,0,0,.45);
}
.sy-home-hero .sy-eyebrow{color:var(--gold-logo)}
.sy-home-hero .sy-eyebrow::before{background:var(--gold-logo)}
.sy-home-lead{
  font-family:var(--serif);font-style:italic;font-weight:500;
  font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.55;
  margin:1.2rem 0 2rem;max-width:600px;color:#f2ecdd;
  text-shadow:0 1px 12px rgba(0,0,0,.5);
}
.sy-home-cta{display:flex;gap:.9rem;flex-wrap:wrap}
.sy-home-hero .sy-btn{background:var(--gold-logo);border-color:var(--gold-logo);color:#14212d}
.sy-home-hero .sy-btn:hover{box-shadow:inset 0 0 0 1px #14212d}

/* Interior heroes — the night sea, pure CSS, no photo
   (every hero section carries .sy-hero; no attribute catch-all needed) */
.sy-hero{background-color:var(--sea)}
.sy-hero{
  color:var(--sea-ink);padding:4.2rem 0 3rem;
  border-bottom:var(--dblline);border-bottom-color:var(--rule-gold);
}
.sy-hero-in{position:relative}
.sy-hero h1{color:var(--sea-ink)}
.sy-hero-sub{color:var(--sea-mut);max-width:720px;margin-top:1rem;font-size:1.02rem}
.sy-hero-price{
  font-family:var(--serif);font-weight:600;font-size:1.5rem;
  color:var(--gold-bright);margin-top:1rem;letter-spacing:.01em;
}
.sy-hero .sy-eyebrow{color:var(--gold-bright)}
.sy-hero .sy-eyebrow::before{background:var(--gold-bright)}
.sy-hero-dest,.sy-hero-yacht{color:var(--sea-ink)}

.sy-statusline{
  display:inline-block;
  font-family:var(--sans);font-weight:600;font-size:.66rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;
  color:var(--gold-bright);
  border:1px solid var(--rule-gold);border-radius:0;
  padding:.3rem .85rem;margin-bottom:1.1rem;
}
.sy-place{
  font-family:var(--sans);font-weight:500;font-size:.72rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;color:var(--mut);
}
.sy-hero .sy-place,.sy-band-dark .sy-place{color:var(--sea-mut)}

/* Bands — intro strips on index pages */
.sy-band{padding:3.6rem 0 1.8rem;background:var(--paper)}
.sy-band h1::after,.sy-band-dark h1::after{
  content:"";display:block;width:4.5rem;height:1px;
  background:var(--gold);margin-top:1.1rem;
}
.sy-band-lead{
  font-family:var(--serif);font-weight:500;font-size:1.22rem;line-height:1.6;
  color:var(--ink-2);max-width:760px;margin-top:1.2rem;
}
.sy-band-dark{
  background:var(--sea);color:var(--sea-ink);padding:4rem 0 2.6rem;
  border-bottom:var(--dblline);border-bottom-color:var(--rule-gold);
}
.sy-band-dark h1{color:var(--sea-ink)}
.sy-band-dark .sy-band-lead{color:var(--sea-mut)}
.sy-band-dark .sy-eyebrow{color:var(--gold-bright)}
.sy-band-dark .sy-eyebrow::before{background:var(--gold-bright)}
.sy-band-cta{margin-top:1.8rem}
.sy-band-note{color:var(--mut);font-size:.88rem;margin-top:1rem;font-style:italic}
.sy-band-dark .sy-band-note{color:var(--sea-mut)}

/* ---------- 5. Sections ---------- */
.sy-sec{padding:3.6rem 0}
.sy-sec-shade{background:var(--paper-2);border-top:var(--hairline);border-bottom:var(--hairline)}
.sy-h2{font-size:clamp(1.6rem,2.8vw,2.1rem);margin:0 0 .4rem;font-weight:600}
.sy-h2::after{content:"";display:block;width:3.4rem;height:1px;background:var(--gold);margin-top:.8rem}
.sy-sub{color:var(--mut);margin:.9rem 0 2rem;max-width:720px}
.sy-footnote{color:var(--mut);font-size:.85rem;font-style:italic;margin-top:2rem;padding-top:.9rem;border-top:var(--hairline)}

/* Two-up dark lanes on home */
.sy-lanes{background:var(--sea);color:var(--sea-ink);padding:3.4rem 0;border-bottom:var(--dblline);border-bottom-color:var(--rule-gold)}
.sy-lanes-in{display:grid;grid-template-columns:1fr 1fr;gap:0}
.sy-lane{display:flex;flex-direction:column;padding:0 2.6rem}
.sy-lane:first-child{padding-left:0}
.sy-lane+.sy-lane{border-left:1px solid var(--rule-sea);padding-right:0}
.sy-lane h2{color:var(--sea-ink);margin:.3rem 0 .7rem;font-size:1.65rem}
.sy-lane p{color:var(--sea-mut);margin-bottom:1.4rem}
.sy-lane .sy-eyebrow{color:var(--gold-bright)}
.sy-lane .sy-eyebrow::before{background:var(--gold-bright)}
.sy-lane-b{margin-top:auto;padding-top:.4rem}
@media (max-width:820px){
  .sy-lanes-in{grid-template-columns:1fr}
  .sy-lane{padding:0}
  .sy-lane+.sy-lane{border-left:none;border-top:1px solid var(--rule-sea);margin-top:2.2rem;padding-top:2.2rem}
}

/* ---------- 6. Grids, cards, tiles ---------- */
.sy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.6rem}
.sy-grid-yacht{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.sy-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.4rem}

.sy-card,.sy-tile{
  position:relative;display:block;
  background:var(--paper);
  border:var(--hairline);border-radius:0;
  transition:border-color .18s;
}
.sy-tile{padding:1.5rem 1.5rem 1.4rem}
.sy-card{padding:0;overflow:hidden}
.sy-card:hover,.sy-tile:hover{border-color:var(--gold)}
.sy-main a.sy-card,.sy-main a.sy-tile{text-decoration:none;color:var(--ink)}
.sy-card-yacht{background:var(--paper)}
.sy-tile-dest{background:var(--paper)}
[data-theme="dark"] .sy-card,[data-theme="dark"] .sy-tile{background:var(--paper-2)}

.sy-card h3,.sy-tile h3{font-size:1.35rem;margin:.2rem 0 .45rem}
.sy-tile p{color:var(--mut);font-size:.94rem}
.sy-tile-tag{
  display:block;font-family:var(--sans);font-weight:500;font-size:.68rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;color:var(--mut);margin-top:.9rem;
}
.sy-tcount{
  font-family:var(--sans);font-weight:600;font-size:.68rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;color:var(--gold);
}

/* Thumbs — deliberate plates, not missing photos:
   flat night-sea tint, fine chart-grid, gilt monogram */
.sy-card-thumb,[class*="sy-thumb-"]{
  position:relative;height:160px;
  background:
    repeating-linear-gradient(0deg,transparent 0 27px,rgba(233,226,207,.07) 27px 28px),
    repeating-linear-gradient(90deg,transparent 0 27px,rgba(233,226,207,.07) 27px 28px),
    linear-gradient(160deg,#1b2f40,#12222f 70%);
  border-bottom:var(--hairline);
}
.sy-card-thumb::before,[class*="sy-thumb-"]::before{
  content:"";position:absolute;inset:9px;
  border:1px solid rgba(217,165,32,.32);
  pointer-events:none;
}
.sy-card-thumb::after,[class*="sy-thumb-"]::after{
  content:"S ✦ Y";
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-weight:500;font-size:1.05rem;
  letter-spacing:.45em;text-indent:.45em;
  color:rgba(217,165,32,.62);
  pointer-events:none;
}
.sy-card:hover .sy-card-thumb::after,.sy-card:hover [class*="sy-thumb-"]::after{color:rgba(217,165,32,.9)}
.sy-thumb-yacht{height:160px}

.sy-card-body{padding:1.2rem 1.4rem 1.4rem}
.sy-overlay{position:absolute;inset:0;z-index:2;border-radius:0}
.sy-meta{
  display:flex;flex-wrap:wrap;gap:.4rem 1rem;
  color:var(--mut);font-size:.82rem;margin:.5rem 0;
}
.sy-price{font-family:var(--serif);font-weight:600;font-size:1.2rem;color:var(--ink);margin-top:.5rem}
.sy-price-from{
  font-family:var(--sans);font-weight:500;font-size:.66rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;color:var(--gold);
  margin-right:.35rem;
}

/* tag chips on thumbs */
.sy-tag{
  position:absolute;top:12px;left:12px;z-index:3;
  font-family:var(--sans);font-weight:600;font-size:.62rem;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold-logo);background:rgba(10,18,27,.72);
  border:1px solid rgba(217,165,32,.45);border-radius:0;
  padding:.28rem .7rem;
}
.sy-tag-editorial{color:#f2ecdd;border-color:rgba(233,226,207,.4)}
.sy-tag-inst{color:var(--gold-logo)}

.sy-count{
  font-family:var(--sans);font-weight:500;font-size:.72rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;color:var(--mut);
}
.sy-empty{
  border:var(--dblline);background:transparent;
  padding:2.4rem 1.8rem;text-align:center;
  font-family:var(--serif);font-style:italic;font-weight:500;
  font-size:1.1rem;color:var(--mut);
}

/* ---------- 7. Breadcrumbs ---------- */
.sy-crumb{
  background:var(--paper);border-bottom:var(--hairline);
  font-family:var(--sans);font-size:.7rem;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--mut);padding:.7rem 0;
}
.sy-crumb a{color:var(--mut);text-decoration:none}
.sy-crumb a:hover{color:var(--gold);text-decoration:none}
.sy-sep{margin:0 .55rem;color:var(--rule-gold)}
.sy-here{color:var(--ink);font-weight:600}

/* ---------- 8. Article layout, prose ---------- */
.sy-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:3.4rem;align-items:start}
@media (max-width:940px){.sy-layout{grid-template-columns:1fr;gap:2.4rem}}
.sy-narr{min-width:0}

.sy-lead-p{
  font-family:var(--serif);font-weight:500;font-size:1.28rem;line-height:1.6;
  color:var(--ink);
}
.sy-lead-p::first-letter{
  font-size:3.1em;line-height:.82;float:left;
  padding:.06em .12em 0 0;color:var(--gold);font-weight:500;
}
.sy-prose p,.sy-narr p{margin:1em 0;color:var(--ink-2)}
.sy-prose h2,.sy-narr h2{margin-top:2em}
.sy-prose h2::after,.sy-narr h2::after{
  content:"";display:block;width:2.6rem;height:1px;background:var(--gold);margin-top:.6rem;
}
.sy-prose h3,.sy-narr h3{margin:1.6em 0 .5em}
.sy-prose ul,.sy-prose ol,.sy-narr ul,.sy-narr ol{margin:1em 0 1em 1.4em;color:var(--ink-2)}
.sy-prose blockquote,.sy-narr blockquote{
  font-family:var(--serif);font-style:italic;font-weight:500;font-size:1.18rem;
  border-left:1px solid var(--gold);
  padding:.2rem 0 .2rem 1.4rem;margin:1.6em 0;color:var(--ink-2);
}

/* highlight list — gilt em-dash markers */
.sy-hl{list-style:none;margin:1em 0}
.sy-hl li{position:relative;padding-left:1.7rem;margin:.55em 0;color:var(--ink-2)}
.sy-hl li::before{
  content:"—";position:absolute;left:0;top:0;
  color:var(--gold);font-weight:500;
}

/* spec table — a ship's particulars sheet */
.sy-spec{width:100%;border-collapse:collapse;margin:1em 0;border-top:var(--dblline)}
.sy-spec th{
  width:38%;text-align:left;vertical-align:top;
  font-family:var(--sans);font-weight:600;font-size:.68rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--mut);
  padding:.7rem .3rem .7rem 0;
}
.sy-spec td{
  border-bottom:1px solid var(--rule-faint);
  padding:.62rem .3rem;vertical-align:top;color:var(--ink);
}
.sy-spec th{border-bottom:1px solid var(--rule-faint)}
.sy-spec tr:last-child th,.sy-spec tr:last-child td{border-bottom:var(--hairline)}

/* attribution / notes */
.sy-attr{
  font-family:var(--serif);font-style:italic;font-weight:500;font-size:1.02rem;
  border-top:var(--hairline);border-bottom:var(--hairline);
  padding:.9rem .2rem;margin-bottom:1.6rem;color:var(--mut);
}
.sy-note{
  background:var(--paper-2);border:var(--hairline);border-radius:0;
  padding:1.1rem 1.3rem;margin:1.4em 0;color:var(--ink-2);font-size:.96rem;
}
[data-theme="dark"] .sy-note{background:var(--paper-2)}
.sy-note-pi{border-left:2px solid var(--gold);padding-left:1.25rem}

/* numbered steps — engraved roman numerals */
.sy-steps{counter-reset:st;list-style:none;margin:1.4em 0}
.sy-steps li{
  counter-increment:st;position:relative;
  padding:0 0 1.1em 3.4rem;margin:0;
}
.sy-steps li::before{
  content:counter(st,upper-roman) ".";
  position:absolute;left:0;top:-.18em;
  font-family:var(--serif);font-weight:600;font-size:1.45rem;
  color:var(--gold);min-width:2.6rem;
}
.sy-steps li+li{border-top:1px solid var(--rule-faint);padding-top:1.1em}
.sy-steps li+li::before{top:.75em}

/* itinerary — the day-book */
.sy-itin{border-top:var(--dblline);border-bottom:var(--hairline);margin:1.4em 0}
.sy-itin-day{border-bottom:1px solid var(--rule-faint);padding:1rem .2rem}
.sy-itin-day:last-child{border-bottom:none}
.sy-itin-row{display:flex;gap:1.4rem}
.sy-itin-t{
  flex:0 0 auto;min-width:88px;
  font-family:var(--sans);font-weight:600;font-size:.68rem;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);padding-top:.35em;
}

/* windows / availability chips (kept for compat) */
.sy-windows{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem;margin:1.2em 0}
.sy-win{border:var(--hairline);border-radius:0;padding:1rem 1.1rem;background:var(--paper)}
[data-theme="dark"] .sy-win{background:var(--paper-2)}
.sy-win-m{font-family:var(--serif);font-weight:600;font-size:1.1rem;color:var(--ink)}
.sy-win-n{color:var(--mut);font-size:.88rem}

/* ---------- 9. Aside panels ---------- */
.sy-aside{display:flex;flex-direction:column;gap:1.6rem;position:sticky;top:96px}
@media (max-width:940px){.sy-aside{position:static}}
.sy-panel{
  background:var(--paper);border:var(--hairline);border-radius:0;
  padding:1.5rem 1.5rem 1.4rem;
}
[data-theme="dark"] .sy-panel{background:var(--paper-2)}
.sy-panel h3{
  font-size:1.25rem;margin-bottom:.6rem;
  padding-bottom:.6rem;border-bottom:1px solid var(--rule-faint);
}
.sy-panel-txt{color:var(--mut);font-size:.92rem;margin-bottom:1rem}

/* the tariff panel */
.sy-panel-from{border:var(--dblline)}
.sy-from-lbl{
  font-family:var(--sans);font-weight:600;font-size:.66rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;color:var(--gold);
}
.sy-from-big{
  font-family:var(--serif);font-weight:600;font-size:2rem;line-height:1.15;
  color:var(--ink);margin:.3rem 0 .1rem;
}
.sy-from-sub{color:var(--mut);font-size:.85rem;font-style:italic}

/* chart panel */
.sy-panel-chart .sy-chart{
  width:100%;height:auto;display:block;
  color:var(--gold);background:var(--paper-2);
  border:1px solid var(--rule-faint);border-radius:0;
  padding:.4rem;
}
[data-theme="dark"] .sy-panel-chart .sy-chart{background:var(--paper-3)}
.sy-chart{color:var(--gold)}
.sy-chart-cap{
  color:var(--mut);font-size:.78rem;font-style:italic;margin-top:.6rem;
  padding-top:.5rem;border-top:1px solid var(--rule-faint);
}

/* ---------- 10. Forms ---------- */
.sy-form-wrap{max-width:640px;margin-top:2.2rem}
.sy-form{display:flex;flex-direction:column;gap:1.15rem}
.sy-form-intro{color:var(--mut);font-style:italic}
.sy-field label{
  display:block;
  font-family:var(--sans);font-weight:600;font-size:.68rem;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink);margin-bottom:.4rem;
}
.sy-form input,.sy-form select,.sy-form textarea,
.sy-news-row input,.sy-rf input,.sy-rf select{
  width:100%;font:inherit;color:var(--ink);
  background:var(--paper);
  border:var(--hairline);border-radius:0;
  padding:.62rem .8rem;
  transition:border-color .15s;
}
[data-theme="dark"] .sy-form input,[data-theme="dark"] .sy-form select,
[data-theme="dark"] .sy-form textarea,[data-theme="dark"] .sy-news-row input,
[data-theme="dark"] .sy-rf input,[data-theme="dark"] .sy-rf select{background:var(--paper-3)}
.sy-form textarea{min-height:120px;resize:vertical}
.sy-form input::placeholder,.sy-form textarea::placeholder,
.sy-news-row input::placeholder,.sy-rf input::placeholder{
  color:var(--mut);opacity:.75;font-style:italic;
}
.sy-form input:focus-visible,.sy-form select:focus-visible,.sy-form textarea:focus-visible,
.sy-news-row input:focus-visible,.sy-rf input:focus-visible,.sy-rf select:focus-visible{
  outline:none;border-color:var(--gold);box-shadow:0 1px 0 0 var(--gold);
}
.sy-channel{display:grid;grid-template-columns:170px 1fr;gap:.7rem}
@media (max-width:520px){.sy-channel{grid-template-columns:1fr}}

.sy-err{display:none;color:var(--err);font-size:.82rem;margin-top:.35rem;font-style:italic}
.sy-field.sy-bad .sy-err{display:block}
.sy-field.sy-bad input,.sy-field.sy-bad select,.sy-field.sy-bad textarea{border-color:var(--err)}
.sy-field.sy-bad label{color:var(--err)}

.sy-more{margin:.4rem 0}
.sy-more summary{
  cursor:pointer;list-style:none;
  font-family:var(--sans);font-weight:600;font-size:.7rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--mut);
  padding:.4rem 0;border-bottom:1px solid var(--rule-faint);
}
.sy-more summary::-webkit-details-marker{display:none}
.sy-more summary::after{content:"+";float:right;color:var(--gold);font-size:.95rem}
.sy-more[open] summary::after{content:"−"}
.sy-more summary:hover{color:var(--gold)}
.sy-more-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}
@media (max-width:520px){.sy-more-grid{grid-template-columns:1fr}}

.sy-hint{color:var(--mut);font-size:.8rem;font-style:italic}
.sy-hint-after{margin-top:.3rem}

/* confirmations — a gilt-sealed slip */
.sy-lead-done,.sy-reserve-done{
  border:var(--dblline);border-color:var(--rule-gold);
  background:transparent;border-radius:0;
  padding:1.3rem 1.5rem;
}
.sy-lead-done-h{
  font-family:var(--serif);font-weight:600;font-size:1.25rem;color:var(--ink);
  margin-bottom:.3rem;
}

/* ---------- 11. Newsletter — a gilded card on the night sea ---------- */
.sy-news{
  background:var(--sea);color:var(--sea-ink);border-radius:0;
  border:1px solid var(--rule-gold);
  outline:1px solid var(--rule-gold);outline-offset:5px;
  padding:2.6rem 2.8rem;margin:2.4rem 0;
}
@media (max-width:640px){.sy-news{padding:1.8rem 1.5rem}}
.sy-news-compact{padding:1.4rem 1.5rem;margin:0;outline-offset:3px}
.sy-news-compact .sy-news-h{font-size:1.25rem}
.sy-news .sy-eyebrow{color:var(--gold-bright)}
.sy-news .sy-eyebrow::before{background:var(--gold-bright)}
.sy-news-copy{max-width:640px}
.sy-news-h{color:var(--sea-ink);font-size:1.7rem;margin:.1rem 0 .6rem}
.sy-news-sub{color:var(--sea-mut);font-size:.98rem;max-width:600px}
.sy-news-row{display:flex;gap:.8rem;margin-top:1.4rem;flex-wrap:wrap}
.sy-news-row input{
  flex:1;min-width:220px;background:transparent;color:var(--sea-ink);
  border:1px solid var(--rule-sea);
}
.sy-news-row input::placeholder{color:var(--sea-mut)}
.sy-news-row input:focus-visible{border-color:var(--gold-bright);box-shadow:0 1px 0 0 var(--gold-bright)}
.sy-news-row .sy-btn{background:var(--gold-logo);border-color:var(--gold-logo);color:#14212d}
.sy-news-row .sy-btn:hover{box-shadow:inset 0 0 0 1px #14212d}
.sy-news-note{margin-top:.9rem;color:var(--gold-bright);font-style:italic;font-size:.92rem}
.sy-news .sy-hint{color:var(--sea-mut);margin-top:.7rem}
.sy-news .sy-err{color:#e8a396}

/* ---------- 12. FAQ (.sy-answers) — a ruled column, not a box ---------- */
.sy-answers{
  background:transparent;
  border-top:var(--dblline);border-bottom:var(--hairline);
  padding:2.6rem 0 2.2rem;margin:3rem 0 1rem;
}
.sy-answers>*{max-width:1140px;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}
.sy-answers-h{
  font-family:var(--serif);font-weight:600;font-size:1.6rem;margin-bottom:1.4rem;
}
.sy-ans{margin:0;padding:1.1rem 1.5rem}
.sy-ans+.sy-ans{border-top:1px solid var(--rule-faint)}
.sy-ans-q{
  font-family:var(--serif);font-weight:600;font-size:1.18rem;color:var(--ink);
  margin-bottom:.25rem;
}
.sy-ans-a{color:var(--ink-2);max-width:780px}

/* ---------- 13. Reserve & pay widgets ---------- */
.sy-reserve{
  background:var(--paper);border:var(--dblline);border-radius:0;
  padding:1.5rem 1.5rem 1.4rem;
}
[data-theme="dark"] .sy-reserve{background:var(--paper-2)}
.sy-reserve-head{
  display:flex;align-items:baseline;justify-content:space-between;gap:.7rem;
  padding-bottom:.7rem;border-bottom:1px solid var(--rule-faint);margin-bottom:.4rem;
}
.sy-reserve-h{font-family:var(--serif);font-weight:600;font-size:1.3rem;color:var(--ink)}
.sy-reserve-badge{
  font-family:var(--sans);font-weight:600;font-size:.6rem;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);border:1px solid var(--rule-gold);border-radius:0;
  padding:.24rem .6rem;white-space:nowrap;
}
.sy-reserve-sub{color:var(--mut);font-size:.88rem;font-style:italic;margin:.5rem 0 1rem}
.sy-reserve-body{display:flex;flex-direction:column;gap:1rem}

/* the ledger */
.sy-reserve-calc{
  background:var(--paper-2);border:1px solid var(--rule-faint);border-radius:0;
  padding:.9rem 1.1rem;
}
[data-theme="dark"] .sy-reserve-calc{background:var(--paper-3)}
.sy-rc-row{
  display:flex;justify-content:space-between;gap:1rem;
  font-size:.9rem;color:var(--ink-2);padding:.22rem 0;
}
.sy-rc-row>:last-child{font-variant-numeric:tabular-nums}
.sy-rc-dep{
  font-weight:600;color:var(--ink);
  border-top:var(--dblline);margin-top:.5rem;padding-top:.55rem;
}
.sy-rc-bal{color:var(--mut)}
.sy-reserve-enq{font-size:.84rem;color:var(--mut);font-style:italic}

/* pay tabs — flat index tabs, gilt underline marks the open page */
.sy-pay{display:flex;flex-direction:column;gap:.9rem}
.sy-pay-tabs{display:flex;gap:0;border-bottom:var(--hairline)}
.sy-pay-tab{
  flex:1;text-align:center;cursor:pointer;
  background:transparent;border:none;border-radius:0;
  border-bottom:2px solid transparent;margin-bottom:-1px;
  font-family:var(--sans);font-weight:600;font-size:.68rem;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--mut);padding:.65rem .4rem;
  transition:color .15s,border-color .15s;
}
.sy-pay-tab:hover{color:var(--ink)}
.sy-pay-tab.is-on,.sy-pay-tab.on,.sy-pay-tab[aria-selected="true"]{
  color:var(--ink);border-bottom-color:var(--gold);
}
.sy-pay-note{
  background:var(--paper-2);border:1px solid var(--rule-faint);border-radius:0;
  padding:.8rem 1rem;font-size:.85rem;color:var(--mut);
}
[data-theme="dark"] .sy-pay-note{background:var(--paper-3)}
.sy-pay-off{opacity:.5;filter:grayscale(.4)}

/* ---------- 14. Toolbar / filters ---------- */
.sy-toolbar{
  display:flex;flex-wrap:wrap;gap:.8rem 1.1rem;align-items:center;
  background:transparent;border-top:var(--hairline);border-bottom:var(--hairline);
  border-radius:0;padding:.9rem .2rem;margin-bottom:2rem;
}
.sy-rf{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center}
.sy-rf input,.sy-rf select{width:auto;min-width:150px}

/* ---------- 15. Footer ---------- */
.sy-close,.sy-close-water,.sy-close-cap{display:none}

.sy-foot{
  background:var(--sea-2);color:var(--sea-mut);
  margin-top:4rem;
  border-top:3px double var(--rule-gold);
}
.sy-foot-grid{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.6rem;
  padding-top:3.2rem;padding-bottom:2.4rem;
}
@media (max-width:820px){.sy-foot-grid{grid-template-columns:1fr 1fr;gap:2rem}}
@media (max-width:520px){.sy-foot-grid{grid-template-columns:1fr}}
.sy-foot h4{
  font-family:var(--sans);font-weight:600;font-size:.66rem;
  letter-spacing:var(--caps-ls);text-transform:uppercase;
  color:var(--sea-ink);margin-bottom:1rem;
  padding-bottom:.55rem;border-bottom:1px solid var(--rule-sea);
}
.sy-foot nav a{
  display:block;color:var(--sea-mut);font-size:.9rem;padding:.24rem 0;
  transition:color .15s;
}
.sy-foot nav a:hover{color:var(--gold-bright)}
.sy-foot-brand{max-width:340px}
.sy-foot-mark{margin-bottom:.6rem}
.sy-foot-memo{
  font-family:var(--serif);font-style:italic;font-weight:500;
  font-size:1.02rem;line-height:1.6;color:var(--sea-mut);margin-top:.5rem;
}
.sy-foot-contact{font-size:.88rem;margin-top:.9rem}
.sy-foot-contact a{color:var(--sea-ink);text-decoration:underline;text-decoration-color:var(--rule-gold);text-underline-offset:3px}
.sy-foot-contact a:hover{color:var(--gold-bright)}
.sy-foot-base{
  border-top:1px solid var(--rule-sea);
  padding-top:1.2rem;padding-bottom:1.8rem;
  font-size:.78rem;letter-spacing:.05em;color:var(--sea-mut);
}

/* ---------- 16. WAKE magazine + micro classes ----------
   wk-* / alc-grid carry their own inline CSS on top of this base
   (body type, headings, links, .sy-sec, .sy-tile above) — per the
   brief they are NOT styled here. The bare utility classes from
   those pages (.in, .k, .v, .sub, .is-on beyond pay-tabs) inherit
   base typography deliberately; only give them what is safe: */
.k{color:var(--mut);font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.v{color:var(--ink);font-variant-numeric:tabular-nums}
.sub{color:var(--mut);font-size:.88em}

/* ---------- 16b. Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
}

/* ---------- 17. Print ---------- */
@media print{
  .sy-top,.sy-foot,.sy-burger,.sy-news,.sy-aside,.sy-theme,.sy-crumb{display:none!important}
  body.sy-body{background:#fff;color:#000;font-size:11pt}
  .sy-hero,.sy-band-dark,.sy-lanes{background:#fff!important;color:#000;border:none}
  .sy-hero h1,.sy-lane h2{color:#000}
  .sy-main a{text-decoration:none;color:#000}
  .sy-layout{grid-template-columns:1fr}
}

/* ---------- 18. Dark theme — moonlight passage ----------
   Most surfaces re-skin via the token block at the top; below are
   the pieces that need explicit treatment so dark is a designed
   night edition, not an invert. */

[data-theme="dark"] body.sy-body{background:var(--paper)}
[data-theme="dark"] .sy-main{background:var(--paper)}

/* header: the night-sea band is theme-invariant — the gold logo reads
   as a lamp in both editions; no dark re-inks needed */

/* heroes & bands sit a shade below the page */
[data-theme="dark"] .sy-hero{background-color:var(--sea)}
[data-theme="dark"] .sy-band{background:var(--paper)}
[data-theme="dark"] .sy-band-dark,[data-theme="dark"] .sy-lanes{background:var(--sea)}
[data-theme="dark"] .sy-sec-shade{background:var(--paper-2)}
[data-theme="dark"] .sy-home-hero{border-bottom-color:var(--rule)}

/* buttons: filled = ivory plate with navy text (moonlit reverse) */
[data-theme="dark"] .sy-btn-ghost,[data-theme="dark"] .sy-main a.sy-btn-ghost{color:var(--ink);border-color:var(--rule)}
[data-theme="dark"] .sy-btn-ghost:hover,[data-theme="dark"] .sy-main a.sy-btn-ghost:hover{color:var(--gold-bright);border-color:var(--gold-bright)}

/* thumbs: keep the chart plate slightly lighter than the page */
[data-theme="dark"] .sy-card-thumb,[data-theme="dark"] [class*="sy-thumb-"]{
  background:
    repeating-linear-gradient(0deg,transparent 0 27px,rgba(233,226,207,.06) 27px 28px),
    repeating-linear-gradient(90deg,transparent 0 27px,rgba(233,226,207,.06) 27px 28px),
    linear-gradient(160deg,#17293a,#101d2a 70%);
  border-bottom-color:var(--rule);
}

/* links & selection already tokenised; small re-inks */
[data-theme="dark"] .sy-main a{color:var(--ink)}
[data-theme="dark"] .sy-main a:hover{color:var(--gold-bright)}
[data-theme="dark"] .sy-price,[data-theme="dark"] .sy-win-m,
[data-theme="dark"] .sy-ans-q,[data-theme="dark"] .sy-here,
[data-theme="dark"] .sy-lead-done-h,[data-theme="dark"] .sy-reserve-h,
[data-theme="dark"] .sy-from-big{color:var(--ink)}
[data-theme="dark"] .sy-crumb{background:var(--paper);border-bottom-color:var(--rule)}
[data-theme="dark"] .sy-news{background:var(--sea)}
[data-theme="dark"] .sy-foot{background:var(--sea-2)}
[data-theme="dark"] .sy-home-hero .sy-btn,[data-theme="dark"] .sy-news-row .sy-btn{
  background:var(--gold-logo);border-color:var(--gold-logo);color:#14212d;
}
[data-theme="dark"] .sy-statusline{color:var(--gold-bright);border-color:var(--rule-gold)}
[data-theme="dark"] .sy-empty{border-color:var(--rule)}
[data-theme="dark"] .sy-field.sy-bad input,[data-theme="dark"] .sy-field.sy-bad select,
[data-theme="dark"] .sy-field.sy-bad textarea{border-color:var(--err)}
