@font-face{font-family:"Gloock";src:url("/fonts/gloock.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("/fonts/figtree-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("/fonts/figtree-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("/fonts/figtree-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("/fonts/figtree-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("/fonts/figtree-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}

:root{
  --ink:#04161e;--deep:#07242e;--panel:#0b2c36;--aqua:#2ef5e0;--lilac:#c9a6ff;
  --gold:#f0d57a;--pearl:#f3efe6;--teal:#1a8a88;--mute:#b7c9c8;--wood:#3a2416;
}
*{box-sizing:border-box}
html{background:var(--ink)}
body{
  margin:0;color:var(--pearl);font-family:"Figtree",system-ui,sans-serif;
  font-size:16px;line-height:1.55;font-weight:400;
  background:
    radial-gradient(1000px 480px at 8% -10%, #1a4a5a66, transparent 58%),
    radial-gradient(900px 420px at 100% 0%, #4a2a6a44, transparent 52%),
    var(--ink);
  min-height:100%;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--aqua)}
.sv-skip{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}
.sv-skip:focus{left:8px;top:8px;width:auto;height:auto;padding:8px 12px;background:var(--gold);color:var(--ink);z-index:80}

/* lily-pad header: logo >=40px, nav pills 36-40px */
.sv-pad{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  max-width:1280px;margin:0 auto;padding:6px 16px 4px;min-height:64px;
}
.sv-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;flex-shrink:0}
.sv-mono{
  width:46px;height:46px;border-radius:50%;
  display:grid;place-items:center;
  background:radial-gradient(circle at 35% 30%, #fff4c4, #d4a84a 55%, #8a6a20);
  border:2px solid var(--gold);
  box-shadow:0 0 14px #f0d57a99, inset 0 1px 0 #fff8;
  font-family:"Gloock",serif;font-size:20px;font-weight:400;color:#2a1a08;line-height:1;
}
.sv-mark{
  font-family:"Gloock",serif;font-size:44px;line-height:1;color:#fff8e8;
  letter-spacing:.01em;text-shadow:0 0 16px #f0d57a99, 0 2px 0 #04161e;
  -webkit-text-stroke:.4px #f0d57a;
}
.sv-lanterns{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.sv-lanterns a{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;
  padding:7px 13px;border-radius:999px;min-height:38px;
  font-weight:700;font-size:13.5px;color:#f7fff8;text-decoration:none;
  border:1px solid #f0d57acc;
  background:linear-gradient(180deg,#156e72,#0a3c44);
  box-shadow:0 0 10px #2ef5e044, inset 0 1px 0 #ffffff44;
}
.sv-lanterns a:nth-child(2),.sv-lanterns a:nth-child(5),.sv-lanterns a:nth-child(7){
  background:linear-gradient(180deg,#6a3aa8,#3a1860);
}
.sv-lanterns a:nth-child(3),.sv-lanterns a:nth-child(6){
  background:linear-gradient(180deg,#c9a030,#8a6a18);
  color:#1a1004;
}
.sv-lanterns a[aria-current="page"]{box-shadow:0 0 0 2px #f0d57a,0 0 14px #f0d57a99}
.sv-ico{width:14px;height:14px;flex-shrink:0}

/* tide ticker */
.sv-tide{
  height:24px;overflow:hidden;background:#031016;
  border-top:1px solid #f0d57a44;border-bottom:1px solid #2ef5e055;
  font-size:12.5px;font-weight:600;color:var(--gold);
}
.sv-tide-track{display:inline-flex;gap:56px;white-space:nowrap;padding:3px 0;animation:sv-marquee 36s linear infinite}
@keyframes sv-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.sv-tide b{color:var(--aqua);font-weight:700}

/* compact full-width hero 280px + overlaid H1 >=46px */
.sv-lagoon{max-width:1280px;margin:0 auto;padding:8px 16px 4px}
.sv-hero{
  position:relative;height:280px;border-radius:18px;overflow:hidden;
  border:2px solid var(--gold);
  box-shadow:0 0 26px #2ef5e055,0 8px 18px #000a;
}
.sv-hero img{width:100%;height:280px;object-fit:cover;object-position:62% 46%;display:block}
.sv-hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,#04161ef0 0%,#04161e99 26%,transparent 54%);
  pointer-events:none;
}
.sv-copy{position:absolute;left:22px;top:22px;max-width:440px;z-index:2}
.sv-copy h1{
  margin:0 0 14px;font-family:"Gloock",serif;font-weight:400;
  font-size:48px;line-height:1.02;color:#fff;
  text-shadow:0 2px 0 #04161e,0 0 16px #000c,0 0 12px #2ef5e066;
}
.sv-copy h1 em{font-style:normal;color:var(--gold);display:block}
a.sv-cta,.sv-cta{
  display:inline-flex;align-items:center;gap:6px;
  background:linear-gradient(180deg,#5af8ea,#12b0a8);
  color:#042022;font-weight:800;font-size:15px;letter-spacing:.04em;
  text-decoration:none;text-transform:uppercase;
  padding:11px 20px;border-radius:999px;border:1px solid var(--gold);
  box-shadow:0 0 18px #2ef5e0aa;
}
a.sv-cta-gold{background:linear-gradient(180deg,#ffe08a,#d9a628);color:#2a1208;box-shadow:0 0 14px #f0d57a99}
a.sv-cta-lilac{background:linear-gradient(180deg,#d4b8ff,#8a5ad0);color:#14081e;box-shadow:0 0 14px #c9a6ff99}
.sv-gauge{
  position:absolute;right:18px;top:50%;transform:translateY(-50%);z-index:2;
  width:118px;height:118px;border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  background:radial-gradient(circle at 40% 32%, #1a3a44, #04161ee8 72%);
  border:3px solid var(--gold);
  box-shadow:0 0 20px #f0d57a88, inset 0 0 18px #2ef5e033;
  padding:8px;
}
.sv-gauge span{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--aqua);font-weight:800}
.sv-gauge strong{font-family:"Gloock",serif;font-size:1.05rem;color:var(--gold);line-height:1.1;margin-top:2px}
.sv-gauge em{font-style:normal;color:var(--pearl);font-weight:700;font-size:.68rem;margin-top:2px}

/* slim promo row ~128px */
.sv-boats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;
  max-width:1280px;margin:0 auto;padding:8px 16px 4px;
}
.sv-boat{
  display:grid;grid-template-columns:128px 1fr;gap:10px;align-items:center;
  height:128px;overflow:hidden;border-radius:14px;text-decoration:none;color:inherit;
  background:linear-gradient(90deg,#0b2c36,#072028);
  border:1px solid #f0d57a77;
  box-shadow:0 0 12px #2ef5e022;
}
.sv-boat img{width:128px;height:128px;object-fit:cover}
.sv-boat h2{margin:0 0 4px;font-family:"Gloock",serif;font-size:1.05rem;color:var(--gold);font-weight:400;line-height:1.15}
.sv-boat p{margin:0;font-size:.82rem;color:var(--pearl);font-weight:600;line-height:1.3;padding-right:10px}

/* jetty of 8 tiles — fully visible on 1280x800 */
.sv-jetty{
  max-width:1280px;margin:0 auto 0;padding:6px 16px 10px;
  background:
    linear-gradient(180deg,transparent, #2a160c55 8%, #2a160c00 100%);
  border-radius:0 0 12px 12px;
}
.sv-planks{
  display:grid;grid-template-columns:repeat(8,1fr);gap:8px;
}
.sv-tile{
  position:relative;display:block;text-decoration:none;color:inherit;
  border-radius:12px;overflow:hidden;
  border:2px solid #f0d57acc;
  box-shadow:0 4px 10px #0008,0 0 10px #2ef5e033;
  background:#0a1c22;
}
.sv-tile img{width:100%;height:148px;object-fit:cover;display:block}
.sv-badge{
  position:absolute;top:6px;left:6px;z-index:2;
  font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  padding:3px 7px;border-radius:999px;color:#140806;
  background:linear-gradient(180deg,#ff8a3a,#e03a2a);
  box-shadow:0 1px 4px #0008;
}
.sv-badge.novo{background:linear-gradient(180deg,#5af8ea,#1aa0c8);color:#042022}
.sv-plaque{
  background:linear-gradient(180deg,#2a1c10,#161008);
  border-top:1px solid #f0d57a66;
  padding:6px 4px 7px;text-align:center;
  font-family:"Gloock",serif;font-size:.78rem;line-height:1.15;color:var(--gold);
  min-height:36px;display:flex;align-items:center;justify-content:center;
}

/* below-fold lobby extras */
.sv-rank{
  max-width:1280px;margin:10px auto 0;padding:0 16px;
}
.sv-rank-board{
  background:linear-gradient(180deg,#0b2c36,#071c24);
  border:2px solid #f0d57aaa;border-radius:16px;padding:12px 16px;
}
.sv-rank-board h2{
  margin:0 0 8px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold);font-weight:800;
}
.sv-rank-board ol{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:6px 16px}
.sv-rank-board li{
  display:flex;justify-content:space-between;align-items:baseline;gap:8px;
  padding:5px 0;border-bottom:1px solid #f0d57a22;font-size:.86rem;font-weight:600;
}
.sv-rank-board b{color:var(--aqua)}
.sv-facts{
  max-width:1280px;margin:12px auto;padding:0 16px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px;
}
.sv-fact{
  background:#0b2c36;border:1px solid #2ef5e044;border-radius:12px;padding:10px 12px;
}
.sv-fact strong{display:block;font-family:"Gloock",serif;color:var(--gold);font-size:1rem;margin-bottom:2px}
.sv-fact span{font-size:.8rem;color:var(--mute);font-weight:600}

/* inner pages */
.sv-wrap{max-width:980px;margin:0 auto;padding:22px 16px 48px}
.sv-crumb{font-size:.85rem;color:var(--mute);margin:0 0 12px}
.sv-crumb a{color:var(--aqua)}
.sv-pagehero{margin:0 0 18px;border-radius:16px;overflow:hidden;border:2px solid #f0d57a77}
.sv-pagehero img{width:100%;height:280px;object-fit:cover}
.sv-wrap h1{
  font-family:"Gloock",serif;font-weight:400;font-size:clamp(1.8rem,3.4vw,2.5rem);
  line-height:1.15;color:#fff;margin:0 0 14px;
  text-shadow:0 0 12px #2ef5e044;
}
.sv-wrap h2{font-family:"Gloock",serif;font-weight:400;font-size:1.45rem;color:var(--gold);margin:1.4em 0 .5em}
.sv-wrap h3{font-size:1.05rem;color:var(--aqua);margin:1.1em 0 .4em}
.sv-wrap p,.sv-wrap li{color:var(--pearl)}
.sv-wrap figure{margin:18px 0;border-radius:12px;overflow:hidden}
.sv-wrap figcaption{font-size:.82rem;color:var(--mute);padding:6px 2px}
.sv-note{font-size:.9rem;color:var(--lilac);background:#0b2c36;border-left:3px solid var(--gold);padding:10px 12px;border-radius:0 10px 10px 0}
.sv-cta-row{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}

/* reviews hub */
.sv-hub{max-width:1280px;margin:0 auto;padding:18px 16px 56px}
.sv-hub h1{font-family:"Gloock",serif;font-size:clamp(1.8rem,3vw,2.4rem);margin:0 0 10px}
.sv-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 14px}
.sv-tools input[type="search"]{
  flex:1;min-width:220px;background:#072028;border:1px solid #f0d57a66;color:var(--pearl);
  border-radius:999px;padding:10px 16px;font:inherit;
}
.sv-tab{
  border:1px solid #f0d57a66;background:#0b2c36;color:var(--pearl);
  border-radius:999px;padding:8px 14px;font-weight:700;cursor:pointer;min-height:36px;
}
.sv-tab[aria-selected="true"]{background:linear-gradient(180deg,#5af8ea,#12b0a8);color:#042022;border-color:var(--gold)}
.sv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.sv-slip{
  background:linear-gradient(180deg,#0b2c36,#071c24);
  border:1px solid #f0d57a55;border-radius:14px;padding:12px;
  display:flex;flex-direction:column;gap:8px;
}
.sv-slip header{display:flex;align-items:center;gap:8px}
.sv-mono-sm{
  width:36px;height:36px;border-radius:50%;flex-shrink:0;
  display:grid;place-items:center;font-weight:800;font-size:.7rem;
  background:radial-gradient(circle at 35% 30%, #c9a6ff, #3a1860);
  color:#fff;border:1px solid var(--gold);
}
.sv-slip h2{margin:0;font-size:1rem;color:var(--gold);font-family:"Gloock",serif;font-weight:400}
.sv-slip p{margin:0;font-size:.8rem;color:var(--mute)}
.sv-slip .sv-btns{display:flex;flex-wrap:wrap;gap:6px}
.sv-mini{
  display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;
  font-size:.75rem;font-weight:800;text-decoration:none;border:1px solid #f0d57a77;
  background:#0a3c44;color:var(--pearl);
}
.sv-more{
  margin:16px auto 0;display:block;cursor:pointer;
  background:linear-gradient(180deg,#5af8ea,#12b0a8);color:#042022;
  border:1px solid var(--gold);border-radius:999px;padding:10px 18px;font-weight:800;
}
.sv-shown{font-size:.85rem;color:var(--mute);margin:0 0 8px}

/* footer */
.sv-foot{
  border-top:1px solid #f0d57a33;margin-top:28px;padding:22px 16px 32px;
  background:#031016;color:var(--mute);font-size:.86rem;
}
.sv-foot-inner{max-width:1280px;margin:0 auto;display:grid;gap:8px}
.sv-foot a{color:var(--aqua)}
.sv-18{color:var(--gold);font-weight:800}

@media (max-width:1100px){
  .sv-planks{grid-template-columns:repeat(4,1fr)}
  .sv-copy h1{font-size:40px}
  .sv-rank-board ol,.sv-facts,.sv-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  .sv-pad{flex-wrap:wrap;min-height:auto}
  .sv-mark{font-size:34px}
  .sv-hero{height:220px}
  .sv-hero img{height:220px}
  .sv-copy{top:16px;left:14px}
  .sv-copy h1{font-size:28px}
  .sv-gauge{width:86px;height:86px;right:8px}
  .sv-boats{grid-template-columns:1fr}
  .sv-boat{height:110px;grid-template-columns:110px 1fr}
  .sv-boat img{width:110px;height:110px}
  .sv-planks{grid-template-columns:repeat(2,1fr)}
  .sv-grid,.sv-facts,.sv-rank-board ol{grid-template-columns:1fr}
  .sv-lanterns a{min-height:34px;padding:6px 10px;font-size:12px}
}
