/* ============================================================
   New Victorian — A Common Style for the XM Establishment
   Inspired by 1860s broadsides, damask wallpapers, & Pugin
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cinzel+Decorative:wght@400;700&family=IM+Fell+English:ital@0;1&family=IM+Fell+English+SC&family=EB+Garamond:ital,wght@0,400;0,500;0,600;1,400&display=swap');

/* ---------- Color tokens ---------- */
:root{
  --ink:        #1a0f08;          /* deep walnut */
  --ink-2:      #2a1810;          /* slightly lighter walnut */
  --parchment:  #f0e4c8;          /* aged paper */
  --parchment-2:#e8d9b0;          /* older paper */
  --vellum:     #f7eed6;          /* fresh parchment */
  --brass:      #b8893d;          /* aged brass */
  --brass-hi:   #d4af6a;          /* polished brass */
  --brass-lo:   #6e4a1c;          /* tarnished brass */
  --wine:       #6b1a1a;          /* claret */
  --wine-hi:    #8b2222;          /* carmine */
  --forest:     #1f3a2e;          /* huntsman green */
  --teal:       #2d5a5a;          /* verdigris */
  --gold-line:  #8b6914;          /* gilt edge */
  --shadow:     rgba(0,0,0,.55);
}

/* ---------- Reset & base ---------- */
*,*::before,*::after{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }

body{
  font-family: 'EB Garamond', 'IM Fell English', Georgia, serif;
  font-size: 17px;
  line-height: 1.65;
  color: var(--ink);
  /* Damask wallpaper: subtle repeating ornamental motif */
  background-color: var(--ink);
  background-image:
    /* Vignette */
    radial-gradient(ellipse at center, rgba(60,30,10,.0) 0%, rgba(0,0,0,.55) 100%),
    /* Repeating damask motif (SVG) */
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'><g fill='none' stroke='%23b8893d' stroke-width='0.6' opacity='0.18'><path d='M80 10 C 95 25, 110 25, 120 40 C 130 55, 125 75, 110 85 C 100 92, 95 105, 80 110 C 65 105, 60 92, 50 85 C 35 75, 30 55, 40 40 C 50 25, 65 25, 80 10 Z'/><path d='M80 30 C 90 40, 100 40, 105 50 C 110 60, 105 72, 95 78 C 88 82, 85 90, 80 95 C 75 90, 72 82, 65 78 C 55 72, 50 60, 55 50 C 60 40, 70 40, 80 30 Z'/><circle cx='80' cy='70' r='3'/><path d='M10 80 Q 40 75, 70 80' /><path d='M150 80 Q 120 75, 90 80' /><path d='M80 10 Q 75 40, 80 70' /><path d='M80 150 Q 75 120, 80 90' /><path d='M20 20 L 35 35' /><path d='M140 20 L 125 35' /><path d='M20 140 L 35 125' /><path d='M140 140 L 125 125' /></g></svg>");
  background-attachment: fixed, fixed;
  min-height: 100vh;
}

/* ---------- Page frame (every page sits inside this) ---------- */
.frame{
  max-width: 1040px;
  margin: 0 auto;
  padding: 28px 22px 60px;
  position: relative;
}
/* The double-rule border + corner flourishes */
.frame::before,
.frame::after{
  content:"";
  position:absolute;
  pointer-events:none;
  background-repeat: no-repeat;
}
/* Outer thin rule */
.frame{
  border: 1px solid rgba(184,137,61,.45);
  outline: 1px solid rgba(184,137,61,.25);
  outline-offset: -8px;
  margin-top: 22px;
  background:
    /* Inner dark fill, very subtle texture */
    linear-gradient(180deg, rgba(20,10,4,.30), rgba(10,5,2,.55)),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2'/><feColorMatrix values='0 0 0 0 0.3  0 0 0 0 0.18  0 0 0 0 0.05  0 0 0 0.18 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
}

/* Corner ornaments on the frame (SVG flourishes) */
.frame::before{
  top: -14px; left: -14px;
  width: 90px; height: 90px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 90'><g fill='none' stroke='%23b8893d' stroke-width='1.2'><path d='M5 5 L 35 5 M 5 5 L 5 35'/><path d='M12 12 Q 22 12, 22 22 M 12 12 Q 12 22, 22 22'/><path d='M30 5 Q 38 10, 38 18 M 5 30 Q 10 38, 18 38'/><circle cx='30' cy='30' r='2.5' fill='%23b8893d'/><path d='M40 5 Q 50 5, 55 12 M 5 40 Q 5 50, 12 55'/><path d='M60 8 L 65 12 L 60 16 M 8 60 L 12 65 L 16 60'/></g></svg>");
}
.frame::after{
  bottom: -14px; right: -14px;
  width: 90px; height: 90px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 90'><g fill='none' stroke='%23b8893d' stroke-width='1.2'><path d='M85 85 L 55 85 M 85 85 L 85 55'/><path d='M78 78 Q 68 78, 68 68 M 78 78 Q 78 68, 68 68'/><path d='M60 85 Q 52 80, 52 72 M 85 60 Q 80 52, 72 52'/><circle cx='60' cy='60' r='2.5' fill='%23b8893d'/><path d='M50 85 Q 40 85, 35 78 M 85 50 Q 85 40, 78 35'/><path d='M30 82 L 25 78 L 30 74 M 82 30 L 78 25 L 74 30'/></g></svg>");
}

/* ---------- Header / masthead ---------- */
.masthead{
  text-align: center;
  padding: 18px 12px 14px;
  border-bottom: 1px solid rgba(184,137,61,.45);
  position: relative;
  margin-bottom: 18px;
}
.masthead .crest{
  width: 64px; height: 64px;
  margin: 0 auto 6px;
  display: block;
}
.masthead h1{
  font-family: 'Cinzel Decorative', 'Cinzel', serif;
  font-weight: 700;
  font-size: 34px;
  letter-spacing: .12em;
  color: var(--brass-hi);
  margin: 4px 0 2px;
  text-shadow: 0 2px 0 rgba(0,0,0,.5);
}
.masthead .sub{
  font-family: 'IM Fell English SC', serif;
  font-style: italic;
  color: rgba(232,217,176,.75);
  letter-spacing: .08em;
  font-size: 14px;
}
.masthead .rule{
  margin: 12px auto 0;
  width: 70%;
  height: 18px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 18'><g fill='none' stroke='%23b8893d' stroke-width='1'><path d='M0 9 L 80 9 M 120 9 L 200 9'/><path d='M85 9 L 95 4 L 105 9 L 95 14 Z' fill='%23b8893d'/><path d='M110 9 L 95 4 L 100 9 L 95 14 Z' fill='%23b8893d'/><circle cx='100' cy='9' r='2.5' fill='%23d4af6a'/></g></svg>") no-repeat center / contain;
}

/* ---------- Top tagline banner ---------- */
.tagline{
  position: relative;
  height: 110px;
  margin-bottom: 18px;
  border: 1px solid var(--brass);
  outline: 1px solid rgba(184,137,61,.3);
  outline-offset: -6px;
  display: flex; align-items: center; justify-content: center;
  overflow: hidden;
  /* Decorative Victorian ribbon background */
  background:
    /* Subtle filigree on dark backdrop */
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='80'><g fill='none' stroke='%23b8893d' stroke-width='0.4' opacity='0.35'><path d='M0 40 L 80 40 M 40 0 L 40 80'/><circle cx='40' cy='40' r='20'/><circle cx='40' cy='40' r='10'/></g></svg>"),
    linear-gradient(180deg, #2a1810 0%, #1a0f08 50%, #2a1810 100%);
  box-shadow: 0 8px 22px -10px rgba(0,0,0,.7);
}
.tagline::before, .tagline::after{
  content:""; position:absolute; top:50%; width: 40px; height: 60px;
  transform: translateY(-50%);
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 60'><g fill='none' stroke='%23b8893d' stroke-width='1'><path d='M20 4 L 20 56'/><path d='M20 8 L 12 14 M 20 8 L 28 14'/><path d='M20 52 L 12 46 M 20 52 L 28 46'/><circle cx='20' cy='30' r='4'/></g></svg>") center/contain no-repeat;
  opacity: 0.6;
}
.tagline::before{ left: 16px; }
.tagline::after{ right: 16px; transform: translateY(-50%) scaleX(-1); }
.tagline p{
  margin: 0;
  font-family: 'IM Fell English', serif;
  font-style: italic;
  font-size: 20px;
  color: #f3e7c6;
  text-shadow: 0 2px 6px rgba(0,0,0,.85), 0 0 18px rgba(0,0,0,.6);
  letter-spacing: .04em;
  padding: 0 80px;
  text-align: center;
  position: relative;
  z-index: 2;
}
.tagline p::before, .tagline p::after{
  content:""; display:inline-block; width: 24px; height: 1px;
  background: var(--brass); vertical-align: middle;
  margin: 0 14px;
  box-shadow: 0 6px 0 var(--brass), 0 -6px 0 var(--brass);
}

/* ---------- Navbar (links bar) ---------- */
.linkbar{
  background:
    linear-gradient(180deg, rgba(20,10,4,.55), rgba(10,5,2,.85)),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40'><path d='M0 20 L 40 20 M 20 0 L 20 40' stroke='%23b8893d' stroke-width='0.3' opacity='0.25'/></svg>");
  border-top: 1px solid var(--brass);
  border-bottom: 1px solid var(--brass);
  position: relative;
}
.linkbar::before, .linkbar::after{
  content:""; position:absolute; top:50%; width:24px; height:1px;
  background: var(--brass); transform: translateY(-50%);
}
.linkbar::before{ left: 6px; box-shadow: 0 6px 0 var(--brass), 0 -6px 0 var(--brass); }
.linkbar::after{ right: 6px; box-shadow: 0 6px 0 var(--brass), 0 -6px 0 var(--brass); }

.linkbar ul{
  list-style: none; margin: 0; padding: 0;
  display: flex; justify-content: center; gap: 0;
  flex-wrap: wrap;
}
.linkbar li{ display: block; }
.linkbar a{
  display: block;
  padding: 14px 28px;
  font-family: 'Cinzel', serif;
  font-size: 14px;
  letter-spacing: .25em;
  color: var(--parchment);
  text-decoration: none;
  text-transform: uppercase;
  position: relative;
  transition: color .25s ease, background .25s ease;
}
.linkbar li + li a{
  border-left: 1px solid rgba(184,137,61,.35);
}
.linkbar a:hover{
  color: #1a0f08;
  background: var(--brass-hi);
  text-shadow: none;
}

/* ---------- Main content area ---------- */
.content{
  padding: 26px 30px 30px;
  min-height: 480px;
  position: relative;
}

/* ---------- The "framed card" (modular sections) ---------- */
.card{
  background:
    /* Paper texture */
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='p'><feTurbulence baseFrequency='0.85' numOctaves='2' seed='3'/><feColorMatrix values='0 0 0 0 0.45  0 0 0 0 0.32  0 0 0 0 0.12  0 0 0 0.16 0'/></filter><rect width='100%25' height='100%25' filter='url(%23p)'/></svg>"),
    /* Vignette to age edges */
    radial-gradient(ellipse at center, var(--vellum) 55%, var(--parchment) 100%);
  color: var(--ink);
  border: 1px solid var(--brass-lo);
  outline: 1px solid rgba(184,137,61,.4);
  outline-offset: -7px;
  padding: 34px 30px 30px;
  margin: 0 0 30px;
  position: relative;
  box-shadow:
    0 1px 0 rgba(255,255,255,.4) inset,
    0 0 0 1px rgba(110,74,28,.15) inset,
    0 18px 40px -18px rgba(0,0,0,.7);
}
.card::before, .card::after{
  content:""; position:absolute; width: 56px; height: 56px;
  background-repeat: no-repeat; pointer-events: none;
}
.card::before{
  top:-10px; left:-10px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 56'><g fill='none' stroke='%236e4a1c' stroke-width='1.4'><path d='M4 4 L 28 4 M 4 4 L 4 28'/><path d='M10 10 Q 18 10, 18 18 M 10 10 Q 10 18, 18 18'/><circle cx='26' cy='26' r='2' fill='%236e4a1c'/><path d='M14 4 Q 20 4, 24 8 M 4 14 Q 4 20, 8 24'/></g></svg>");
}
.card::after{
  bottom:-10px; right:-10px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 56'><g fill='none' stroke='%236e4a1c' stroke-width='1.4'><path d='M52 52 L 28 52 M 52 52 L 52 28'/><path d='M46 46 Q 38 46, 38 38 M 46 46 Q 46 38, 38 38'/><circle cx='30' cy='30' r='2' fill='%236e4a1c'/><path d='M42 52 Q 36 52, 32 48 M 52 42 Q 52 36, 48 32'/></g></svg>");
}
.card > h2, .card > h1{
  font-family: 'Cinzel', serif;
  text-align: center;
  letter-spacing: .08em;
  color: var(--wine);
  margin: 0 0 14px;
  font-weight: 600;
}
.card > h1{ font-size: 30px; }
.card > h2{ font-size: 22px; }

/* Decorative divider inside cards */
.divider{
  display:block;
  margin: 14px auto;
  width: 220px; height: 16px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 16'><g fill='none' stroke='%236e4a1c' stroke-width='0.9'><path d='M0 8 L 90 8 M 130 8 L 220 8'/><path d='M95 8 L 105 3 L 110 8 L 105 13 Z' fill='%236e4a1c'/><path d='M115 8 L 110 3 L 125 8 L 110 13 Z' fill='%236e4a1c'/><circle cx='110' cy='8' r='1.8' fill='%23b8893d'/><circle cx='90' cy='8' r='1.2' fill='%236e4a1c'/><circle cx='130' cy='8' r='1.2' fill='%236e4a1c'/></g></svg>") no-repeat center/contain;
}

/* Drop cap for first paragraph in a card */
.card .lead::first-letter{
  font-family: 'Cinzel Decorative', 'Cinzel', serif;
  font-size: 64px;
  line-height: 0.9;
  float: left;
  padding: 6px 8px 0 0;
  color: var(--wine);
  font-weight: 700;
  text-shadow: 1px 1px 0 var(--brass-hi);
}

/* Banner image inside cards (uses existing ServerH.png) */
.banner{
  display: block;
  width: 100%;
  max-height: 380px;
  object-fit: cover;
  border: 1px solid var(--brass-lo);
  outline: 1px solid rgba(184,137,61,.3);
  outline-offset: -5px;
  margin: 8px 0 16px;
  box-shadow: 0 8px 20px -8px rgba(0,0,0,.4);
}

/* ---------- Game / feature tile grid ---------- */
.tiles{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 18px 0 6px;
}
@media (max-width: 720px){
  .tiles{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 460px){
  .tiles{ grid-template-columns: 1fr; }
}
.tile{
  background:
    linear-gradient(180deg, rgba(255,247,222,.7), rgba(232,217,176,.85)),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100'><path d='M0 50 L 100 50 M 50 0 L 50 100' stroke='%23b8893d' stroke-width='0.25' opacity='0.4'/></svg>");
  border: 1px solid var(--brass-lo);
  padding: 16px 14px 14px;
  position: relative;
  text-align: left;
  transition: transform .2s ease, box-shadow .2s ease;
}
.tile:hover{
  transform: translateY(-3px);
  box-shadow: 0 8px 18px -8px rgba(0,0,0,.5);
}
.tile::before{
  content:""; position:absolute; top:6px; left:6px; right:6px; bottom:6px;
  border: 1px dashed rgba(110,74,28,.4);
  pointer-events: none;
}
.tile h3{
  font-family: 'Cinzel', serif;
  font-size: 18px;
  letter-spacing: .04em;
  color: var(--wine);
  margin: 0 0 6px;
  font-weight: 600;
}
.tile h3 .roman{
  font-family: 'IM Fell English', serif;
  font-style: italic;
  color: var(--brass-lo);
  font-size: 14px;
  margin-right: 6px;
  font-weight: 400;
}
.tile p{
  margin: 0;
  font-family: 'IM Fell English', serif;
  font-size: 15px;
  color: #3a2616;
  line-height: 1.45;
}

/* ---------- Call-to-action panel (bottom of homepage) ---------- */
.cta{
  margin-top: 18px;
  padding: 22px 24px 20px;
  background:
    linear-gradient(180deg, rgba(20,10,4,.78), rgba(40,18,8,.85)),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='80'><g fill='none' stroke='%23b8893d' stroke-width='0.4' opacity='0.5'><path d='M0 40 L 80 40 M 40 0 L 40 80'/><circle cx='40' cy='40' r='15'/></g></svg>");
  border: 1px solid var(--brass);
  outline: 1px solid rgba(184,137,61,.3);
  outline-offset: -5px;
  color: var(--parchment);
  text-align: center;
  position: relative;
}
.cta h2{
  font-family: 'Cinzel', serif;
  font-weight: 600;
  letter-spacing: .1em;
  margin: 0 0 12px;
  color: var(--brass-hi);
  font-size: 22px;
}
.cta .stamp{
  display: inline-block;
  width: 100%;
  max-width: 720px;
  height: 90px;
  background: var(--ink) url("./img/XMS/Server.png") center/cover no-repeat;
  border: 1px solid var(--brass);
  margin: 8px 0 14px;
  box-shadow: 0 6px 18px -8px rgba(0,0,0,.6);
}
.cta .links{
  display: flex; justify-content: center; gap: 14px; flex-wrap: wrap;
}
.btn{
  display: inline-block;
  font-family: 'Cinzel', serif;
  font-size: 13px;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--parchment);
  padding: 12px 22px;
  border: 1px solid var(--brass);
  background:
    linear-gradient(180deg, rgba(110,74,28,.35), rgba(20,10,4,.6));
  position: relative;
  transition: all .2s ease;
}
.btn::before, .btn::after{
  content:""; position:absolute; width:8px; height:8px;
  background: var(--brass); border-radius: 50%;
  top: 50%; transform: translateY(-50%);
}
.btn::before{ left: -4px; box-shadow: 0 0 4px rgba(0,0,0,.6); }
.btn::after{ right: -4px; box-shadow: 0 0 4px rgba(0,0,0,.6); }
.btn:hover{
  background: var(--brass);
  color: var(--ink);
  text-shadow: none;
}

/* ---------- Single-link choice page (Alist, ConvertX, etc.) ---------- */
.choices{
  max-width: 560px;
  margin: 60px auto;
  padding: 40px 30px 50px;
  text-align: center;
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='p'><feTurbulence baseFrequency='0.85' numOctaves='2' seed='5'/><feColorMatrix values='0 0 0 0 0.45  0 0 0 0 0.32  0 0 0 0 0.12  0 0 0 0.16 0'/></filter><rect width='100%25' height='100%25' filter='url(%23p)'/></svg>"),
    radial-gradient(ellipse at center, var(--vellum) 55%, var(--parchment) 100%);
  color: var(--ink);
  border: 1px solid var(--brass-lo);
  outline: 1px solid rgba(184,137,61,.4);
  outline-offset: -8px;
  position: relative;
  box-shadow: 0 25px 50px -20px rgba(0,0,0,.7);
}
.choices::before, .choices::after{
  content:""; position:absolute; width: 60px; height: 60px;
  background-repeat: no-repeat; pointer-events: none;
}
.choices::before{
  top:-12px; left:-12px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'><g fill='none' stroke='%236e4a1c' stroke-width='1.4'><path d='M4 4 L 30 4 M 4 4 L 4 30'/><path d='M10 10 Q 18 10, 18 18 Q 18 26, 26 26'/><circle cx='28' cy='28' r='2' fill='%236e4a1c'/></g></svg>");
}
.choices::after{
  bottom:-12px; right:-12px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'><g fill='none' stroke='%236e4a1c' stroke-width='1.4'><path d='M56 56 L 30 56 M 56 56 L 56 30'/><path d='M50 50 Q 42 50, 42 42 Q 42 34, 34 34'/><circle cx='32' cy='32' r='2' fill='%236e4a1c'/></g></svg>");
}
.choices .seal{
  width: 96px; height: 96px;
  margin: 0 auto 10px;
  display: block;
}
.choices h1{
  font-family: 'Cinzel Decorative', 'Cinzel', serif;
  font-weight: 700;
  font-size: 30px;
  letter-spacing: .15em;
  color: var(--wine);
  margin: 0 0 4px;
}
.choices .motto{
  font-family: 'IM Fell English', serif;
  font-style: italic;
  color: var(--brass-lo);
  margin: 0 0 18px;
  font-size: 14px;
  letter-spacing: .04em;
}
.choices .divider{ margin: 8px auto 22px; }

.choice{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  text-decoration: none;
  color: var(--ink);
  font-family: 'Cinzel', serif;
  letter-spacing: .15em;
  text-transform: uppercase;
  font-size: 15px;
  padding: 14px 22px;
  margin: 12px auto;
  max-width: 380px;
  background:
    linear-gradient(180deg, rgba(255,247,222,.6), rgba(232,217,176,.7));
  border: 1px solid var(--brass-lo);
  position: relative;
  transition: all .25s ease;
}
.choice::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:6px;
  background: var(--wine);
  transition: width .25s ease;
}
.choice .glyph{
  font-family: 'IM Fell English', serif;
  font-style: italic;
  font-size: 18px;
  color: var(--wine);
  text-transform: none;
  letter-spacing: 0;
}
.choice .arrow{
  color: var(--brass-lo);
  font-size: 18px;
}
.choice:hover{
  background: var(--brass-hi);
  color: var(--ink);
  transform: translateX(2px);
  border-color: var(--brass-lo);
}
.choice:hover::before{ width: 12px; }

/* ---------- Plain IP display pages (TS / VC / index / get-IP) ---------- */
.parchment-page{
  max-width: 760px;
  margin: 60px auto;
  padding: 50px 40px 56px;
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='p'><feTurbulence baseFrequency='0.7' numOctaves='2' seed='9'/><feColorMatrix values='0 0 0 0 0.45  0 0 0 0 0.32  0 0 0 0 0.12  0 0 0 0.18 0'/></filter><rect width='100%25' height='100%25' filter='url(%23p)'/></svg>"),
    radial-gradient(ellipse at center, var(--vellum) 60%, var(--parchment) 100%);
  color: var(--ink);
  border: 1px solid var(--brass-lo);
  outline: 1px solid rgba(184,137,61,.4);
  outline-offset: -9px;
  text-align: center;
  position: relative;
  box-shadow: 0 30px 60px -20px rgba(0,0,0,.7);
}
.parchment-page::before, .parchment-page::after{
  content:""; position:absolute; width: 70px; height: 70px;
  background-repeat: no-repeat; pointer-events: none;
}
.parchment-page::before{
  top:-14px; left:-14px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 70'><g fill='none' stroke='%236e4a1c' stroke-width='1.4'><path d='M4 4 L 34 4 M 4 4 L 4 34'/><path d='M10 10 Q 22 10, 22 22 Q 22 34, 34 34'/><circle cx='32' cy='32' r='2.5' fill='%236e4a1c'/><path d='M16 4 Q 24 4, 28 10 M 4 16 Q 4 24, 10 28'/></g></svg>");
}
.parchment-page::after{
  bottom:-14px; right:-14px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 70'><g fill='none' stroke='%236e4a1c' stroke-width='1.4'><path d='M66 66 L 36 66 M 66 66 L 66 36'/><path d='M60 60 Q 48 60, 48 48 Q 48 36, 36 36'/><circle cx='38' cy='38' r='2.5' fill='%236e4a1c'/><path d='M54 66 Q 46 66, 42 60 M 66 54 Q 66 46, 60 42'/></g></svg>");
}
.parchment-page h1{
  font-family: 'Cinzel Decorative', 'Cinzel', serif;
  font-weight: 700;
  font-size: 28px;
  letter-spacing: .14em;
  color: var(--wine);
  margin: 0 0 6px;
  text-transform: uppercase;
}
.parchment-page .sub{
  font-family: 'IM Fell English', serif;
  font-style: italic;
  color: var(--brass-lo);
  margin: 0 0 14px;
  font-size: 14px;
}
.parchment-page .divider{ margin: 14px auto 22px; }
.address-box{
  display: inline-block;
  min-width: 60%;
  padding: 20px 28px;
  margin: 6px auto 14px;
  background: var(--ink);
  color: var(--brass-hi);
  font-family: 'Cinzel', 'IM Fell English', monospace;
  font-size: 22px;
  letter-spacing: .12em;
  border: 1px solid var(--brass);
  outline: 1px solid rgba(184,137,61,.3);
  outline-offset: -5px;
  text-shadow: 0 0 8px rgba(184,137,61,.3);
  position: relative;
}
.address-box::before, .address-box::after{
  content:""; position:absolute; width: 14px; height: 14px;
  border: 1px solid var(--brass);
}
.address-box::before{ top:-6px; left:-6px; border-right:none; border-bottom:none; }
.address-box::after{ bottom:-6px; right:-6px; border-left:none; border-top:none; }

.multi-cols{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 18px;
}
@media (max-width: 700px){
  .multi-cols{ grid-template-columns: 1fr; }
}
.col-card{
  background:
    linear-gradient(180deg, rgba(255,247,222,.6), rgba(232,217,176,.85));
  border: 1px solid var(--brass-lo);
  padding: 18px 16px 22px;
  position: relative;
}
.col-card::before{
  content:""; position:absolute; inset:6px;
  border: 1px dashed rgba(110,74,28,.35);
  pointer-events: none;
}
.col-card h2{
  font-family: 'Cinzel', serif;
  font-size: 18px;
  letter-spacing: .15em;
  color: var(--wine);
  margin: 0 0 12px;
  text-transform: uppercase;
}
.col-card .address-box{
  width: 100%;
  min-width: 0;
  font-size: 15px;
  padding: 14px 8px;
  word-break: break-all;
  line-height: 1.4;
}

/* ---------- Stat row page (Cloud.html) ---------- */
.stat-list{
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-direction: column; gap: 14px;
}
.stat-list li{
  display: flex; align-items: center; gap: 18px;
  padding: 16px 22px;
  background:
    linear-gradient(180deg, rgba(255,247,222,.6), rgba(232,217,176,.85));
  border: 1px solid var(--brass-lo);
  position: relative;
}
.stat-list li::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:4px;
  background: var(--wine);
}
.stat-list .num{
  font-family: 'Cinzel Decorative', 'Cinzel', serif;
  font-size: 28px;
  font-weight: 700;
  color: var(--brass);
  min-width: 110px;
  text-align: right;
  letter-spacing: .04em;
  text-shadow: 0 1px 0 rgba(0,0,0,.15);
}
.stat-list .label{
  font-family: 'IM Fell English', serif;
  font-size: 17px;
  color: var(--ink);
  flex: 1;
}

/* ---------- Footer ---------- */
.footer{
  margin: 16px 0 0;
  padding: 18px 20px 0;
  border-top: 1px solid rgba(184,137,61,.4);
  text-align: center;
  color: rgba(232,217,176,.6);
  font-family: 'IM Fell English', serif;
  font-style: italic;
  font-size: 13px;
  letter-spacing: .04em;
}
.footer .fleur{
  display: inline-block;
  width: 22px; height: 22px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'><g fill='none' stroke='%23b8893d' stroke-width='1'><path d='M11 2 L 11 20 M 2 11 L 20 11'/><path d='M11 2 Q 8 6, 8 9 Q 8 11, 11 11 Q 14 11, 14 9 Q 14 6, 11 2 Z' fill='%23b8893d'/><path d='M2 11 Q 6 8, 9 8 Q 11 8, 11 11 Q 11 14, 9 14 Q 6 14, 2 11 Z' fill='%23b8893d'/><path d='M20 11 Q 16 8, 13 8 Q 11 8, 11 11 Q 11 14, 13 14 Q 16 14, 20 11 Z' fill='%23b8893d'/><path d='M11 20 Q 8 16, 8 13 Q 8 11, 11 11 Q 14 11, 14 13 Q 14 16, 11 20 Z' fill='%23b8893d'/></g></svg>") center/contain no-repeat;
  vertical-align: middle;
  margin: 0 8px;
}

/* ---------- Misc ---------- */
a{ color: var(--wine); }
a:hover{ color: var(--brass); }
p{ margin: 0 0 12px; }
em{ font-family: 'IM Fell English', serif; }

@media (max-width: 720px){
  .masthead h1{ font-size: 24px; }
  .linkbar a{ padding: 10px 14px; font-size: 12px; letter-spacing: .15em; }
  .content{ padding: 18px 16px; }
  .card{ padding: 24px 18px 22px; }
  .tagline{ height: 72px; }
  .tagline p{ font-size: 15px; }
}
