/* Base */
:root{
  --sea:#27A6B5; --light-sea:#CFEDF0; --sand:#F7E9D4; --coral:#FF6F61; --navy:#0B2E4E; --off:#FCFCFA;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--off);color:#24323d}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy)}
.container{width:min(1120px,92%);margin-inline:auto}
.narrow{width:min(800px,92%)}
.section{padding:64px 0}
.lead{font-size:1.125rem;color:#3b4b57}

/* Header */
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e6ecef;z-index:10}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.logo{display:flex;flex-direction:column;text-decoration:none;color:var(--navy)}
.logo-line1{font-family:"Playfair Display",serif;font-weight:700;letter-spacing:.2px;font-size:1.2rem;line-height:1}
.logo-line2{font-weight:600;letter-spacing:.8px;text-transform:uppercase;font-size:.8rem;color:#3b4b57}
.nav ul{display:flex;gap:20px;align-items:center;list-style:none;margin:0;padding:0}
.nav a{text-decoration:none;color:#24323d}
.nav a[aria-current="page"]:not(.btn){color:var(--sea)}
.nav .btn{color:#fff}
.btn{background:var(--sea);color:#fff;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:600}
.btn:hover{background:#1e8c99}
.btn-secondary{background:#e5f6f8;color:#0b2e4e}

/* Mobile nav */
.nav-toggle{display:none;position:relative;width:40px;height:40px;border:1px solid #d9e5e8;border-radius:10px;background:#fff}
.nav-toggle span{position:absolute;left:9px;right:9px;height:2px;background:#24323d;transition:.2s}
.nav-toggle span:nth-child(1){top:12px}
.nav-toggle span:nth-child(2){top:19px}
.nav-toggle span:nth-child(3){top:26px}
@media (max-width: 920px){
  .nav-toggle{display:inline-block}
  .nav{position:fixed;inset:64px 0 auto 0;background:#fff;border-bottom:1px solid #e6ecef;transform:translateY(-120%);transition:.25s}
  .nav.open{transform:translateY(0)}
  .nav ul{flex-direction:column;align-items:flex-start;gap:0}
  .nav li{width:100%}
  .nav a, .nav .btn{display:block;width:100%;padding:16px 4%}
}

/* Hero */
.hero{background:linear-gradient(180deg,var(--light-sea),#ffffff)}
.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center;padding:64px 0}
.hero h1{font-family:"Playfair Display",serif;color:var(--navy);font-size:2.4rem;line-height:1.2;margin:0 0 12px}
.hero p{margin:0 0 20px}
.hero .hero-media img{border-radius:14px;box-shadow:0 8px 28px rgba(11,46,78,.15)}
@media (max-width: 920px){
  .hero-inner{grid-template-columns:1fr}
}

/* Cards and grids */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width: 920px){.grid-3{grid-template-columns:1fr 1fr}}
@media (max-width: 640px){.grid-3{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid #e6ecef;border-radius:14px;padding:18px;box-shadow:0 4px 16px rgba(11,46,78,.06)}
.card h3{margin-top:12px}
.card-link{display:inline-block;margin-top:8px;color:var(--sea);text-decoration:none;font-weight:600}

/* Split */
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start}
.split img.rounded{border-radius:14px}
.hubs-illustration{display:block;max-width:100%;height:auto;border-radius:14px}
.split.split--single{grid-template-columns:1fr}
@media (max-width: 920px){.split{grid-template-columns:1fr}}

/* Accordion */
.accordion{border:1px solid #e6ecef;border-radius:12px;background:#fff}
.accordion-header{width:100%;text-align:left;padding:14px 16px;background:#fff;border:0;border-bottom:1px solid #e6ecef;border-radius:12px;cursor:pointer;font-weight:600}
.accordion-panel{display:none;padding:6px 16px 16px}
.accordion[open] .accordion-panel{display:block}

/* Theme grid */
.theme-grid .theme img{border-radius:10px}

/* Join */
.iframe-wrap{margin:16px 0}
.qr-block{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid #e6ecef;border-radius:12px;padding:12px}

/* Footer */
.site-footer{border-top:1px solid #e6ecef;background:#fff}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0}

/* A11y */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:static;width:auto;height:auto;padding:8px;background:var(--sea);color:#fff;border-radius:8px}

/* Social links */
.social-links{margin-top:16px}
.social-links h2{font-size:1rem;margin:0 0 8px;color:#3b4b57}
.social-links ul{list-style:none;margin:0;padding:0;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.social-links li{display:flex}
.social-links a{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e6ecef;border-radius:10px;background:#fff;text-decoration:none;color:#24323d}
.social-links a:hover{border-color:#cfe3e8;background:#f7fbfc}
.social-links svg{width:18px;height:18px;fill:currentColor}
