:root{
  --maxw: 800px;
  /* Salamanders Theme Colors */
  --salamander-green: #1a5c3a;
  --salamander-bright-green: #2d8659;
  --fire-orange: #ff6b35;
  --fire-red: #d93a2b;
  --flame-yellow: #ffb627;
  --dark-bg: #1a1a1a;
  --light-text: #f5f5f5;
  --accent-gold: #c9a961;
  
  /* Legacy mappings for compatibility */
  --fg: var(--light-text);
  --muted: var(--accent-gold);
  --bg: var(--dark-bg);
  --link: var(--salamander-bright-green);
  --link-hover: var(--fire-orange);
  --border: rgba(45, 134, 89, 0.3);
  --subtle-bg: rgba(26, 92, 58, 0.1);
  --heading: var(--salamander-bright-green);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{
  margin:0;
  padding:0;
  background: linear-gradient(135deg, var(--dark-bg) 0%, #2a2a2a 100%);
  color:var(--fg);
  min-height: 100vh;
}

body{
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height:1.65;
  font-size:16px;
}

article{
  max-width:var(--maxw);
  margin:3rem auto 5rem;
  padding: 2rem;
  background: rgba(255, 255, 255, 0.03);
  border-radius: 8px;
  border-left: 4px solid var(--salamander-green);
}

/* Name/Title */
h1{
  font-size:2.5rem;
  line-height:1.2;
  margin:0 0 0.5rem 0;
  font-weight:700;
  color:var(--heading);
  letter-spacing:-0.025em;
  border-bottom: 2px solid var(--salamander-green);
  padding-bottom: 0.5rem;
}

/* Contact info paragraph */
h1 + p{
  font-size:1.05rem;
  margin:0.5rem 0 1rem;
  color:var(--muted);
}

h1 + p a{
  color:var(--link);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color 0.2s;
}

h1 + p a:hover{
  color: var(--link-hover);
  border-bottom-color:var(--link-hover);
}

/* Section headings */
h2{
  font-size:1.5rem;
  margin:2.5rem 0 1rem;
  border-left: 3px solid var(--fire-orange);
  padding-left: 0.75rem;
  padding-bottom:0.5rem;
  font-weight:600;
  color:var(--heading);
  letter-spacing:-0.02em;
}

/* Job titles / subsection headings */
h3{
  font-size:1.15rem;
  margin:1.5rem 0 0.5rem;
  font-weight:600;
  color:var(--accent-gold);
}

/* Subtle background for job blocks */
h3 + p,
h3 + ul{
  padding-left:1.25rem;
  border-left:3px solid rgba(45, 134, 89, 0.3);
  margin-left:0;
}

p,li{
  font-size:1rem;
  color:var(--fg);
  line-height:1.65;
}

ul{
  margin:0.5rem 0 1.5rem 0;
  padding-left:2rem;
  list-style-type:none;
}

ul li{
  position:relative;
  margin-bottom:0.5rem;
  padding-left:1.5rem;
}

ul li::before{
  content:"▸";
  position:absolute;
  left:0;
  color:var(--fire-orange);
  font-weight:bold;
}

ul ul {
  margin: 0.35rem 0 0.35rem 0;
  padding-left: 1.5rem;
}

ul ul li {
  margin-bottom: 0.35rem;
}

/* Blockquote (summary) */
blockquote{
  margin:1rem 0 2rem;
  padding:1.25rem 1.5rem;
  border-left:4px solid var(--fire-orange);
  color:var(--accent-gold);
  background: rgba(255, 107, 53, 0.05);
  font-style:italic;
  border-radius:0 8px 8px 0;
  font-size:1.05rem;
}

/* Images */
img{
  max-width:120px;
  height:auto;
  border-radius:50%;
  border: 3px solid var(--salamander-green);
  display:block;
  margin:1.5rem 0;
  box-shadow:0 4px 6px rgba(0,0,0,0.3);
}

/* Links */
a{
  color:var(--link);
  text-decoration:none;
  transition:color 0.2s;
}

a:hover{
  color:var(--link-hover);
  text-decoration:underline;
}

/* Code */
code{
  font-family: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;
  background: rgba(26, 92, 58, 0.2);
  color: var(--salamander-bright-green);
  padding:0.2em 0.4em;
  border-radius:3px;
  font-size:0.9em;
  border:1px solid rgba(45, 134, 89, 0.3);
}

pre{
  background: #0f1a14;
  color:#e2e8f0;
  padding:1rem;
  border-radius:8px;
  overflow:auto;
  line-height:1.5;
  border:1px solid var(--salamander-green);
}

pre code{
  background:transparent;
  border:none;
  padding:0;
  color:inherit;
}

/* Bold text in lists (like "Tech:") */
strong, b{
  font-weight:600;
  color:var(--salamander-bright-green);
}

hr{
  border:0;
  border-top:2px solid rgba(45, 134, 89, 0.3);
  margin:3rem 0;
}

/* Back Button Styling */
.back-button {
  display: inline-block;
  margin: 1rem 0;
  padding: 0.5rem 1rem;
  background: rgba(26, 92, 58, 0.2);
  border: 2px solid var(--salamander-green);
  border-radius: 6px;
  color: var(--salamander-bright-green) !important;
  text-decoration: none !important;
  transition: all 0.3s ease;
  font-weight: bold;
}

.back-button:hover {
  background: rgba(45, 134, 89, 0.3);
  border-color: var(--salamander-bright-green);
  transform: translateX(-3px);
  box-shadow: 0 2px 8px rgba(45, 134, 89, 0.3);
}

/* Responsive */
@media (max-width: 768px){
  article{
    padding: 1.5rem 1.25rem;
    margin:2rem auto 3rem;
  }
  h1{font-size:2rem}
  h2{font-size:1.3rem}
  h3{font-size:1.1rem}
}

@media (min-width: 900px){
  h1{font-size:2.75rem}
}

/* Print styles */
@media print{
  body{background:white;color:black}
  article{margin:0;max-width:none;padding:0 0.5rem;background:white;border:none}
  a{color:inherit;text-decoration:none}
  blockquote{background:transparent;border-color:#999}
  img{max-width:80px;border:1px solid #ccc}
  .back-button{display:none}
}
