html {
  scroll-behavior: smooth;
}

@font-face {
  font-family: 'Geist';
  src: url('fonts/Geist-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Geist';
  src: url('fonts/Geist-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Geist';
  src: url('fonts/Geist-SemiBold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Geist';
  src: url('fonts/Geist-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Geist Mono';
  src: url('fonts/GeistMono-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

body {
  margin: 0px;  
  background-image: url('');
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-color: #D1D3CF;
  font-family: 'Geist', sans-serif;
}

.content {
  margin: 0px;
  padding: 0px;
  max-width: 100%;
  height: auto;
  display: block;
}

.full-width-header {
   top: 0;
   width: 50%;
   max-height: 400px;
   object-fit: cover;
   padding: 10px 0px 0px 20px;
   margin-bottom: 100px;
}

.container {
   display: flex;
   max-width: 70%;
   margin: 0px auto;
   padding: 0px;
}

.spacer-large {
   height: 250px;
}

.spacer-small {
   height: 50px;
}

.column {
   flex: 1;
   padding: 20px 20px 10px 20px;
}

.left-column {
   padding: 20px;
}

.right-column {
   padding: 20px;
}

.divider {
   border-top: 1px solid #999999;
   margin: 32px 0;
   width: 100%;
}

.header {
  font-size: 24px;
}

h1, h2, h3, h4 {
  color: #000000;
  font-weight: 500;
}

h1 {
  margin-top: 38px;
  padding: 0px;
  line-height: 0px;
  font-size: 32px;
}

.hero-text {
  margin: 0px;
  padding: 0px;
  line-height: 78px;
  font-size: 64px;
  font-weight: 600;
}

.sub-head {
  margin: 0px;
  padding: 0px;
  line-height: 58px;
  font-size: 44px;
  font-weight: 600;
}

h3 {
  margin: 0px;
  line-height: 34px;
  font-size: 24px;
}

h4 {
  margin: 0px;
  padding: 10px 0px 0px 0px;
  line-height: 28px;
  font-size: 18px;
}

.nav {
  color: #000000;
  font-family: 'Geist Mono', monospace;
  font-size: 18px;
  line-height: 38px;
}

a {
  color: #000000;
  padding: 0px 0px 5px 0px; 
  border-bottom: solid;
  border-width: 1px;
  cursor: pointer;
  text-decoration: none;
}

a:hover {
  color: #000000;
  padding: 0px 0px 5px 0px;
  border-bottom: solid;
  border-width: 4px;
  text-decoration: none;
}

a.copy {
  color: #000000;
  padding: 0px 0px 2px 0px;
  border-bottom: solid;
  border-width: 1px;
  cursor: pointer;
  text-decoration: none;
}

a.copy:hover {
  color: #000000;
  padding: 0px 0px 2px 0px;
  border-bottom: solid;
  border-width: 4px;
  text-decoration: none;
}

.text {
  color: #000000;
  line-height: 28px;
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  display: block;
}

.list-tag {
  color: #666666;
  font-size: 18px;
}

.line-list {
  font-size: 21px;
  line-height: 32px;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.line-list li {
  padding: 16px 0;
  border-bottom: 1px solid #999999;
}

.profile-photo {
  max-width: 100%;
  height: auto;
  display: block;
}

.images {
  position: relative;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  margin: 0px;
  padding: 0px;
}

.video {
  margin: 0px;
  padding: 0px;
  max-width: 100%;
  display: block;
}

.full-width-image {
  width: 100%;
  max-height: 400px;
  object-fit: cover;
  padding: 0px;
}

.footer {
 height: 300px;
 background-color: #000000;
 margin-top: 150px;
 padding-top: 50px;
}

/* Agent-readable content modal (llms.txt) */
.llms-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.93);
  z-index: 1000;
  display: flex;
  flex-direction: column;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.15s ease, visibility 0s linear 0.15s;
}

.llms-overlay.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
  .llms-overlay {
    transition: none;
  }
}

.llms-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 32px;
  flex-shrink: 0;
}

.llms-path {
  font-family: 'Geist Mono', monospace;
  font-size: 14px;
  color: #888888;
}

.llms-close {
  background: none;
  border: none;
  font-family: 'Geist Mono', monospace;
  font-size: 13px;
  letter-spacing: 0.1em;
  color: #888888;
  cursor: pointer;
  padding: 8px;
}

.llms-close:hover {
  color: #D1D3CF;
}

.llms-body {
  flex: 1;
  overflow-y: auto;
  padding: 40px 32px;
}

.llms-prompt {
  font-family: 'Geist Mono', monospace;
  font-size: 15px;
  color: #666666;
  margin: 0 auto 24px auto;
  max-width: 900px;
}

.llms-content {
  font-family: 'Geist Mono', monospace;
  font-size: 15px;
  line-height: 1.7;
  color: #D1D3CF;
  white-space: pre-wrap;
  max-width: 900px;
  margin: 0 auto;
}

.llms-content .llms-title {
  font-size: 22px;
  font-weight: 600;
  color: #ffffff;
  display: block;
  margin-bottom: 12px;
}

.llms-content .llms-quote {
  display: block;
  font-style: italic;
  color: #C9A66B;
  border-left: 2px solid #C9A66B;
  padding-left: 16px;
  margin: 0 0 28px 0;
}

.llms-content .llms-h2 {
  display: block;
  color: #C9A66B;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin: 28px 0 10px 0;
}

.llms-content .llms-bullet {
  display: block;
  color: #D1D3CF;
}

.llms-content .llms-dim {
  color: #777777;
}

@media (max-width: 1000px) {
  .llms-topbar { padding: 16px 20px; }
  .llms-body { padding: 24px 20px; }
  .llms-content, .llms-prompt { font-size: 14px; }
}

.nav-footer a {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
  color: #D1D3CF;
  font-family: 'Geist Mono', monospace;
  font-size: 16px;
  line-height: 38px;
}

.img3 {
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
}

.copyright {
  color: #D1D3CF;
  font-family: 'Geist Mono', monospace;
  font-size: 14px;
  line-height: 38px;
}

@media (max-width: 1000px) {

.header {
  max-width: 100%;
  }

.container {
  flex-direction: column;
  max-width: 100%;
  }

.full-width-header {
  margin-bottom: 25px;
  }

.spacer-large {
  height: 200px;
  }
  
.spacer-small {
  height: 0px;
  }

h1 {
  font-size: 28px;
  }

.hero-text {
  font-size: 42px;
  line-height: 48px;
  }
   
.sub-head {
  font-size: 32px;
  line-height: 42px;
  }

.line-list li {
  padding: 12px 0;
  font-size: 18px;
  line-height: 28px;
  }
  
.footer {
  height: 325px;
  margin-top: 75px;
  padding-top: 10px;
  }
}

