/* Modern, mobile-first site stylesheet */
:root{
	--bg: #ffffff;
	--text: #222222;
	--muted: #6b6b6b;
	--accent: #0b74de;
	--border: #e9e9e9;
	--max-width: 960px;
}

html,body{
	margin:0;
	padding:0;
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
	line-height:1.6;
	color:var(--text);
	background:var(--bg);
	-webkit-font-smoothing:antialiased;
}

/* Container */
.wrap{max-width:var(--max-width);margin:0 auto;padding:1rem}

/* Header (mobile-first: stacked / compact) */
.site-header{background:transparent;border-bottom:1px solid var(--border)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{display:inline-flex;align-items:center;text-decoration:none}
.site-logo{height:40px;width:auto;display:block}

/* Nav toggle (hamburger) */
.nav-toggle{background:transparent;border:0;padding:0.5rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.nav-toggle:focus{outline:2px solid rgba(11,116,222,0.2);outline-offset:3px}
.nav-toggle .hamburger{width:20px;height:2px;background:var(--text);position:relative;display:block}
.nav-toggle .hamburger::before,
.nav-toggle .hamburger::after{content:"";position:absolute;left:0;width:20px;height:2px;background:var(--text)}
.nav-toggle .hamburger::before{top:-6px}
.nav-toggle .hamburger::after{top:6px}

/* Navigation (hidden by default on small screens) */
.site-nav{display:none;position:absolute;top:64px;right:1rem;background:var(--bg);border:1px solid var(--border);padding:0.5rem;border-radius:6px;box-shadow:0 8px 24px rgba(0,0,0,0.06)}
.site-nav.open{display:block}
.site-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.25rem}
.site-nav a{display:block;padding:0.4rem 0.6rem;color:var(--text);text-decoration:none;border-radius:4px}
.site-nav a:hover,.site-nav a:focus{background:#f6f6f6;outline:none}

/* Main content */
.content, .main-content{padding:1.25rem}
h1{font-size:1.5rem;margin:0 0 0.5rem}
h2{font-size:1.25rem;margin:1rem 0 0.5rem}
p{margin:0 0 1rem}
ul,ol{margin:0 0 1rem 1.25rem;padding:0}

.site-footer{border-top:1px solid var(--border);padding:1rem 0;color:var(--muted);font-size:0.95rem}

/* Larger screens: horizontal navigation */
@media (min-width:700px){
	.nav-toggle{display:none}
	.site-nav{position:static;display:block;background:transparent;border:0;padding:0;box-shadow:none}
	.site-nav ul{flex-direction:row;gap:1rem;align-items:center}
	.site-nav a{padding:0;color:var(--accent)}
	.wrap.header-inner{display:flex;align-items:center}
}
