/* ==========================================================
   New Quay – sitewide stylesheet (legacy-table friendly)
   Usage: add ONE line inside <head> of every page, AFTER any
   existing <style> blocks:
   <link rel="stylesheet" href="/css/newquay.css">
   No HTML changes needed. Overrides old bgcolor/width/font attrs.
   ========================================================== */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap");

:root{
  --navy:#0b2a5b; --navy-2:#003399; --sea:#0e8aa8; --foam:#eaf4f8;
  --sand:#f7f4ee; --ink:#1c2733; --muted:#5b6b7b; --line:#e3e9ef;
  --gold:#f2b705; --radius:14px; --shadow:0 6px 24px rgba(11,42,91,.08);
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body,body[bgcolor]{
  background:var(--sand) !important;
  background-image:none !important;
  color:var(--ink) !important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif !important;
  font-size:16px !important;
  font-weight:400 !important;
  line-height:1.65;
  text-align:center;
  margin:0;padding:0 0 40px;
}
img{max-width:100%;height:auto;border:0}
p{line-height:1.7}
hr{border:0;border-top:1px solid var(--line);margin:24px 0}

/* ---------- Legacy font classes: unify (colours/size/family) ---------- */
[class^="style"],[class*=" style"],.basetext,.todaysdaily,.stolenbox,.box2,font,span,div,td,th,li{
  font-family:Inter,system-ui,Arial,sans-serif !important;
}
[class^="style"],[class*=" style"],.basetext,font,td,th,li{font-size:15px !important}
.style60{font-size:13px !important}
.style1{font-size:1.35rem !important;font-weight:700 !important;font-family:"Playfair Display",Georgia,serif !important;color:var(--navy) !important}
.style58,.style63,.style93,.style99,.style47,.todaysdaily{font-weight:600 !important}
.todaysdaily{color:var(--sea) !important}
.style25,.style100{color:#8a6500 !important}
.style8{color:#c0392b !important}

/* ---------- Links ---------- */
a,a:link,a:visited{
  color:var(--navy-2) !important;text-decoration:none;
  font-family:inherit !important;font-size:inherit !important;
  transition:color .15s,background .15s;
}
a:hover,a:active{color:var(--sea) !important;text-decoration:underline}
a img{transition:transform .2s,box-shadow .2s}
a:hover img{transform:translateY(-2px)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:4px}

/* ---------- Headings (if a page uses them) ---------- */
h1,h2,h3,h4{font-family:"Playfair Display",Georgia,serif !important;color:var(--navy) !important;line-height:1.2;margin:.8em 0 .5em}
h1{font-size:clamp(2rem,4.5vw,3rem)}
h2{font-size:1.8rem}
h3{font-size:1.35rem}

/* ---------- Layout tables: fluid & centred ---------- */
table{
  max-width:100% !important;
  border-collapse:separate;
  margin-left:auto;margin-right:auto;
}
/* Outer page wrappers (the old 1200/1250/950/930 tables) */
table[width="1250"],table[width="1200"],table[width="95%"],table[width="98%"],
table[width="950"],table[width="930"],table[width="800"]{
  width:100% !important;max-width:1200px !important;
}
td,th{vertical-align:top}
td[valign="middle"]{vertical-align:middle}

/* Content panels: any cell/table with a cream/white legacy bgcolor */
table[bgcolor],td[bgcolor]{background-color:transparent !important}
table[bgcolor="#FFFFCC"],td[bgcolor="#FFFFCC"],table[bgcolor="#ffffcc"],td[bgcolor="#ffffcc"],
table[bgcolor="#FFFFFF"],td[bgcolor="#FFFFFF"],table[bgcolor="#ffffff"],td[bgcolor="#ffffff"]{
  background-color:#fff !important;color:var(--ink) !important;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
table[bgcolor="#FFFFCC"] td,table[bgcolor="#ffffcc"] td,td[bgcolor="#FFFFCC"]{padding:14px 18px}
/* Dark legacy backgrounds (maroon/blue) -> brand navy */
table[bgcolor="#660000"],td[bgcolor="#660000"],table[bgcolor="#003399"],td[bgcolor="#003399"]{
  background-color:transparent !important;
}
/* Strip legacy table backgrounds (tiles/header strips) */
table[background],td[background]{background-image:none !important}

/* Borders: soften old 1px white/coloured borders around images and boxes */
table[border="1"]{
  border:1px solid var(--line) !important;
  border-radius:var(--radius);
  background:#fff;
  box-shadow:var(--shadow);
  overflow:hidden;
}
table[border="1"] td{border:0 !important;padding:8px}
table[border="1"] img{margin:0 auto;border-radius:8px}
img[border="1"]{border:0;border-radius:8px}

/* Text-over-blue legacy: the old pages used white text on dark body.
   Body is now light, so force readable text everywhere. */
td,th,p,li,span,div,.style3,.style24,.style27,.style41,.style77,.style95,.style96,.style98,.style53{
  color:var(--ink) !important;
}
.style27,.style3,.style98,.style96,.style41,.style77,.style95{color:var(--muted) !important}
.style59{color:#34414f !important}

/* ---------- Lists (nav lists, link lists) ---------- */
ul,ol{padding-left:1.25em;text-align:left}
ul[id]{list-style:none;margin:0;padding:8px}
ul[id] li{padding:9px 12px;border-radius:10px}
ul[id] li:hover{background:var(--foam)}

/* ---------- Header strip: first table on every page ---------- */
body > table:first-of-type{
  background:#fff;
  border-bottom:1px solid var(--line);
  box-shadow:0 2px 12px rgba(0,0,0,.04);
  border-radius:0 0 var(--radius) var(--radius);
  margin-bottom:24px;
}
body > table:first-of-type td[background]{
  background-size:cover !important;background-position:center;
  background-image:revert-layer;
}

/* ---------- Forms & buttons ---------- */
input,select,textarea,button{
  font:inherit;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);
}
input[type=submit],input[type=button],button{
  background:var(--gold);border-color:var(--gold);color:var(--navy);font-weight:600;cursor:pointer;
}
input[type=submit]:hover,button:hover{filter:brightness(.96)}

/* ---------- Footer / copyright ---------- */
.basetext,.basetext *{color:var(--muted) !important;font-size:14px !important}
body > table:last-of-type + p,
p.basetext{margin-top:32px;padding-top:20px;border-top:1px solid var(--line)}

/* ---------- Optional utility classes for new/updated pages ---------- */
.nq-wrap{max-width:1200px;margin:0 auto;padding:0 20px}
.nq-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;margin-bottom:20px}
.nq-btn{display:inline-block;padding:12px 24px;border-radius:999px;font-weight:600;background:var(--gold);color:var(--navy) !important}
.nq-btn:hover{text-decoration:none}
.nq-badge{font-size:12px;font-weight:600;background:var(--foam);color:var(--sea);padding:2px 10px;border-radius:999px}

/* ---------- Responsive: collapse legacy tables on tablets/phones ---------- */
@media (max-width:900px){
  body{font-size:15px !important}
  table,tbody,tr{max-width:100% !important}
  /* stack columns of layout tables */
  table[width="1250"] > tbody > tr > td,
  table[width="1200"] > tbody > tr > td,
  table[width="95%"] > tbody > tr > td,
  table[width="98%"] > tbody > tr > td,
  table[width="950"] > tbody > tr > td,
  table[width="930"] > tbody > tr > td,
  table[width="800"] > tbody > tr > td{
    display:block;width:100% !important;padding-left:12px;padding-right:12px;
  }
  table[width="1250"],table[width="1200"],table[width="95%"],table[width="98%"],
  table[width="950"],table[width="930"],table[width="800"]{display:block}
  td[width],table[width]{width:auto !important}
  table[width="1250"] table,table[width="1200"] table{width:100% !important}
  img{max-width:100% !important;height:auto !important}
  h1{font-size:2rem}
}
@media (max-width:480px){
  body{font-size:14px !important}
  [class^="style"],[class*=" style"],td,th,li{font-size:14px !important}
}

@media print{
  body{background:#fff !important}
  table[border="1"],table[bgcolor]{box-shadow:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important;scroll-behavior:auto !important}}
