:root{
  --ocean:#0b6b7c;
  --ocean-deep:#084a56;
  --teal:#12909f;
  --coral:#ff6b4a;
  --coral-deep:#e8532f;
  --sun:#ffb43d;
  --sand:#fbf6ec;
  --ink:#20302f;
  --muted:#5d6f6d;
  --line:#e3ddcd;
  --radius:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Helvetica Neue',system-ui,-apple-system,Arial,sans-serif;color:var(--ink);background:var(--sand);line-height:1.72;font-size:17px}
h1,h2,h3,h4{font-family:'Georgia','Times New Roman',serif;color:var(--ocean-deep);line-height:1.22}
h1{font-size:2.15rem;margin:.3em 0 .55em}
h2{font-size:1.5rem;margin:1.9em 0 .5em;padding-bottom:.22em;border-bottom:2px solid var(--line)}
h3{font-size:1.18rem;color:var(--teal);margin:1.5em 0 .4em}
a{color:var(--teal)}
a:hover{color:var(--coral-deep)}
p{margin:.7em 0}
img{max-width:100%;height:auto;display:block;border-radius:var(--radius)}
figure{margin:1.6em 0}
figcaption{font-size:.85em;color:var(--muted);margin-top:.45em;text-align:center}

/* Header */
header.site{background:linear-gradient(120deg,var(--ocean-deep),var(--teal));color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 14px rgba(8,74,86,.25)}
.site-inner{max-width:1080px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.5em 1.5em;padding:.7em 1em}
.site-name{font-family:Georgia,serif;font-weight:700;font-size:1.28em;color:#fff;text-decoration:none;display:flex;align-items:center;gap:.5em;white-space:nowrap}
.site-name svg{width:30px;height:30px;flex:none}
header.site nav{display:flex;flex-wrap:wrap;gap:.1em;font-size:.93em}
header.site nav a{color:#eafcff;text-decoration:none;padding:.4em .6em;border-radius:9px;white-space:nowrap}
header.site nav a:hover,header.site nav a[aria-current]{background:rgba(255,255,255,.18);color:#fff}

/* Hero */
.hero{position:relative;margin:0 0 1.4em}
.hero img{border-radius:0;width:100%;max-height:420px;object-fit:cover}
main{max-width:820px;margin:0 auto;padding:0 1em 3.5em}
.wrap{max-width:820px;margin:0 auto;padding:1em}

/* Breadcrumbs */
.crumbs{font-size:.84em;color:var(--muted);margin:1em 0 .2em}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--coral-deep)}
.crumbs span[aria-current]{color:var(--ocean)}

/* TL;DR */
.tldr{background:#fff;border:1px solid var(--line);border-left:6px solid var(--coral);border-radius:var(--radius);padding:1em 1.3em;margin:1.3em 0 1.8em;box-shadow:0 4px 18px rgba(11,107,124,.07)}
.tldr-label{display:inline-flex;align-items:center;gap:.4em;font-weight:800;color:var(--coral-deep);text-transform:uppercase;letter-spacing:.07em;font-size:.8em;margin-bottom:.35em;font-family:'Helvetica Neue',sans-serif}
.tldr p{margin:.35em 0}
.tldr ul{margin:.4em 0 .2em;padding-left:1.2em}
.tldr li{margin:.25em 0}

/* Tables */
.table-wrap{overflow-x:auto;margin:1.4em 0}
table{border-collapse:collapse;width:100%;font-size:.95em;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 3px 14px rgba(11,107,124,.08)}
th{background:var(--ocean);color:#fff;text-align:left;padding:.62em .85em;font-family:'Helvetica Neue',sans-serif}
td{padding:.58em .85em;border-top:1px solid var(--line);vertical-align:top}
tr:nth-child(even) td{background:#fcf9f1}

/* Cards */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.1em;margin:1.7em 0;padding:0;list-style:none}
.cards li{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 3px 14px rgba(11,107,124,.06);display:flex;flex-direction:column}
.cards li img{border-radius:0;height:150px;width:100%;object-fit:cover}
.cards .cbody{padding:.9em 1.1em}
.cards li a.ctitle{font-family:Georgia,serif;font-weight:700;text-decoration:none;font-size:1.05em;color:var(--ocean-deep)}
.cards li p{margin:.4em 0 0;font-size:.9em;color:var(--muted)}

/* FAQ */
.faq h3{background:#fff;border:1px solid var(--line);border-radius:11px;padding:.65em .95em;margin:.9em 0 .35em;color:var(--ocean-deep)}
.faq h3+p{margin:.2em 0 1em;padding:0 .95em}

blockquote{border-left:4px solid var(--sun);margin:1.4em 0;padding:.5em 1.1em;background:#fff;border-radius:0 var(--radius) var(--radius) 0;color:var(--muted)}

.key-facts{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:.4em 1.2em;margin:1.3em 0}

/* Contact form */
.cform{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.3em;margin:1.4em 0}
.cform label{display:block;font-size:.9em;font-weight:600;margin:.7em 0 .25em}
.cform input,.cform textarea{width:100%;padding:.6em;border:1px solid var(--line);border-radius:9px;font:inherit}
.cform button{margin-top:1em;background:var(--coral);color:#fff;border:0;padding:.7em 1.5em;border-radius:10px;font-weight:700;cursor:pointer;font-size:1em}
.cform button:hover{background:var(--coral-deep)}

/* Footer */
footer.site{background:var(--ocean-deep);color:#bfe0e6;margin-top:3em;padding:2.4em 1em;font-size:.9em}
footer.site .fx{max-width:1080px;margin:0 auto}
footer.site a{color:#eafcff}
footer.site .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.4em;margin-bottom:1.4em}
footer.site h4{color:#fff;margin:0 0 .5em;font-size:1em}
footer.site ul{list-style:none;padding:0;margin:0}
footer.site li{margin:.3em 0}

@media (max-width:640px){
  body{font-size:16px}
  h1{font-size:1.65rem}
  h2{font-size:1.3rem}
  .site-inner{gap:.4em 1em}
  header.site nav{width:100%;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:.15em}
  .hero img{max-height:260px}
}
