/* Healing Flows From Grace — the rhythm of a quiet editorial journal. */
@font-face{font-family:'Atkinson Hyperlegible';src:url('/fonts/atkinson-hyperlegible/regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Atkinson Hyperlegible';src:url('/fonts/atkinson-hyperlegible/italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:'Atkinson Hyperlegible';src:url('/fonts/atkinson-hyperlegible/bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:'Atkinson Hyperlegible';src:url('/fonts/atkinson-hyperlegible/bold-italic.woff2') format('woff2');font-style:italic;font-weight:700;font-display:swap}
:root{--bg:#f7f6ee;--surface:#fffef8;--surface-2:#e9ede1;--text:#2c3b2d;--text-muted:#66705f;--text-faint:#73796a;--accent:#40543e;--accent-2:#997032;--ink-blue:#40543e;--border:#d9dccd;--shadow:0 18px 50px #26382a12;--max-width:1440px;--reading-width:780px;--font-sans:'Atkinson Hyperlegible',Arial,sans-serif;--font-serif:var(--font-sans)}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;scroll-padding-top:32px;-webkit-font-smoothing:antialiased}
body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-weight:400;line-height:1.6;min-width:320px}
button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}svg{flex-shrink:0}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-color:var(--accent-2)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #a78036;outline-offset:5px}::selection{background:#d9dfc8;color:#243121}[hidden]{display:none!important}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-wrapper{max-width:var(--max-width);padding:0 32px;margin:0 auto}.skip-link{position:absolute;top:-100px;left:24px;background:var(--text);color:var(--bg);padding:12px 18px;z-index:20}.skip-link:focus{top:12px}
.site-header{height:112px;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:0 14px;position:relative;z-index:5}.site-title{display:inline-flex;align-items:center;gap:17px;text-decoration:none;font-size:25px;line-height:1.1;letter-spacing:-.7px;flex-shrink:0}.brand-icon{width:76px;height:52px;color:#5c6c50}.brand-icon .sun{color:#b48c40}.brand-subtitle{display:block;font-size:11px;letter-spacing:5.7px;margin-top:9px;font-weight:400}.site-nav{display:flex;align-items:center;gap:34px}.site-nav>a{font-size:15px;text-decoration:none;white-space:nowrap}.site-nav>a:not(.button){position:relative;padding:9px 0}.site-nav>a[aria-current=page]::after{content:'';height:2px;position:absolute;bottom:2px;left:0;right:0;background:#ad8a45}.site-nav>a:hover{color:#8a692f}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:48px;padding:12px 24px;border-radius:99px;font-size:15px;line-height:1.2;text-decoration:none;transition:background .2s,color .2s,transform .2s;border:1px solid transparent;white-space:nowrap}.button:hover{transform:translateY(-2px)}.button>span{font-size:20px;line-height:1}.button-outline{border-color:var(--accent);background:transparent}.button-outline:hover{background:var(--accent);color:var(--bg)}.button-ivory{background:var(--bg);color:#283727;padding:17px 28px;min-height:56px}.button-ivory:hover{background:#e9eddc}.button-olive{background:var(--accent);color:var(--bg)}.button-light-outline{border-color:#c9cfb4;color:var(--bg);min-width:190px}.button-light-outline:hover{background:var(--bg);color:var(--text)}
.eyebrow{font-size:11px;letter-spacing:2.5px;line-height:1.6;font-weight:400;text-transform:uppercase}.home-hero{position:relative;min-height:592px;border-radius:16px;overflow:hidden;isolation:isolate;color:#fffef1;display:flex;align-items:center}.hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}.home-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#122011b0 0%,#13200f6e 34%,#18231112 68%,#15200d0d 100%)}.hero-copy{padding:62px 64px 88px;max-width:810px}.hero-copy .eyebrow{color:#e6ead9;font-size:11px;letter-spacing:3px;margin-bottom:22px}.hero-copy h1{font-size:clamp(48px,5.6vw,78px);font-weight:400;letter-spacing:-3.2px;line-height:1.07;margin-bottom:25px}.hero-description{font-size:20px;line-height:1.55;color:#f0f1e7;margin-bottom:30px}.hero-location{position:absolute;right:28px;bottom:27px;border:1px solid #f6f5dc6b;border-radius:99px;padding:10px 17px;font-size:10px;letter-spacing:1.4px;display:flex;gap:9px;align-items:center;background:#27381b38}.location-dot{width:5px;height:5px;border-radius:50%;background:#e5c878}.hero-caption{position:absolute;left:64px;bottom:30px;color:#e4e7d6;font-size:9px;letter-spacing:3px}
.welcome{padding:55px 24px 64px;text-align:center;max-width:940px;margin:0 auto}.leaf-divider{display:flex;align-items:center;justify-content:center;gap:23px;margin-bottom:15px}.leaf-divider>span{height:1px;background:#b4914d;width:57px}.leaf-divider svg{width:44px;height:47px;color:#6c7b5f}.welcome>.eyebrow{color:#7a806c;letter-spacing:2.8px;font-size:9px;margin-bottom:8px}.welcome h2{font-size:40px;font-weight:400;letter-spacing:-1.4px;line-height:1.2;margin-bottom:17px}.welcome>p:not(.eyebrow){font-size:18px;line-height:1.65;color:#636b5b}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:14px;text-decoration:none;line-height:1.5}.text-link>span{font-size:21px;color:#9e783b}.text-link:hover{color:#8a692f}.welcome .text-link{margin-top:19px}
.reflections-section{padding:32px 8px 56px;border-top:1px solid var(--border)}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:26px}.section-heading .eyebrow{font-size:9px;color:#8a743d;margin-bottom:5px}.section-heading h2{font-size:35px;font-weight:400;letter-spacing:-1.2px;line-height:1.2}.section-heading>.text-link{padding-bottom:2px}.reflection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.reflection-card{min-width:0;display:flex;flex-direction:column}.card-image-link{display:block;overflow:hidden;border-radius:9px}.card-image-link img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;transition:transform .6s}.reflection-card:first-child .card-image-link img{object-position:65% 70%}.reflection-card:hover .card-image-link img{transform:scale(1.035)}.card-body{padding:19px 2px 0;flex:1;display:flex;flex-direction:column}.card-body>.eyebrow{font-size:9px;letter-spacing:1.9px;color:#907035;display:flex;justify-content:space-between;gap:4px;margin-bottom:9px}.read-time{color:#747b6b;letter-spacing:1px;font-size:8px;white-space:nowrap}.card-body h3{font-size:24px;font-weight:400;letter-spacing:-.6px;line-height:1.22;margin-bottom:11px}.card-body h3 a{text-decoration:none}.card-body h3 a:hover{color:#8a692f}.card-body>p:not(.eyebrow){color:#68705f;font-size:16px;line-height:1.55;margin-bottom:21px}.card-read{border-top:1px solid var(--border);padding-top:12px;margin-top:auto;font-size:13px;display:flex;justify-content:space-between;text-decoration:none}.card-read>span{font-size:21px;color:#a47d3c;line-height:1}.card-read:hover{color:#8a692f}
.contact-banner{background:#344635;border-radius:13px;padding:42px 49px;color:#f4f4e7;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden;isolation:isolate;margin-bottom:9px;gap:30px}.contact-banner .eyebrow{color:#dddac0;font-size:9px;letter-spacing:2.7px;margin-bottom:10px}.contact-banner h2{font-size:32px;line-height:1.15;font-weight:400;letter-spacing:-.8px;margin-bottom:13px}.contact-banner p:not(.eyebrow){font-size:15px;line-height:1.6;color:#dfe4d5}.contact-banner>.button{margin-right:110px}.banner-leaf{position:absolute;right:14px;bottom:-20px;transform:rotate(10deg);width:143px;color:#728468;opacity:.44;z-index:-1}.banner-leaf svg{width:100%;height:200px}
.site-footer{padding:56px 14px 0}.footer-main{display:grid;grid-template-columns:1.1fr 1fr 1.2fr;gap:40px;padding-bottom:38px}.footer-brand .site-title{font-size:21px;gap:12px}.footer-brand .brand-icon{width:59px}.footer-brand .brand-subtitle{font-size:9px;letter-spacing:4.6px;margin-top:7px}.footer-brand>p{font-size:13px;color:#737866;margin-top:15px;padding-left:71px;line-height:1.7}.footer-main .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:14px;color:#8b7848}.footer-main address{font-style:normal;font-size:14px;line-height:1.8}.small-link{font-size:12px;display:inline-flex;gap:14px;margin-top:12px;text-decoration:none}.small-link>span{color:#9d7b41}.footer-contact>a{display:block;font-size:14px;text-decoration:none;line-height:1.9;overflow-wrap:anywhere}.footer-contact>a:hover{text-decoration:underline}.footer-contact>p:last-child{font-size:12px;margin-top:10px;color:#737866}.footer-bottom{border-top:1px solid var(--border);padding:22px 0 26px;display:flex;align-items:center;gap:30px;font-size:10px;color:#727865}.footer-bottom>a{text-decoration:none}.footer-bottom>a:hover{text-decoration:underline}.back-to-top{margin-left:auto}
.page-intro{padding:65px 24px 63px;text-align:center}.page-intro>.eyebrow{color:#9a7a3d;font-size:10px;margin-bottom:16px}.page-intro h1{font-size:clamp(38px,4.5vw,62px);line-height:1.12;font-weight:400;letter-spacing:-2px;margin-bottom:22px}.page-intro>p:not(.eyebrow){font-size:18px;color:var(--text-muted);line-height:1.7}.story-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:16px 45px 72px}.story-section>img{width:100%;height:540px;object-fit:cover;border-radius:12px;object-position:60%}.story-copy>.eyebrow{font-size:9px;color:#97753a;margin-bottom:13px}.story-copy h2{font-size:39px;line-height:1.15;font-weight:400;letter-spacing:-1.1px;margin-bottom:22px}.story-copy>p:not(.eyebrow){font-size:17px;line-height:1.75;color:var(--text-muted);margin-bottom:17px}.story-copy .text-link{margin-top:7px}.values-section{display:grid;grid-template-columns:repeat(3,1fr);padding:36px 45px 60px;border-top:1px solid var(--border);gap:45px}.value-number{font-size:11px;color:#9c7c42;letter-spacing:2px}.values-section h3{font-size:23px;font-weight:400;letter-spacing:-.4px;margin:12px 0}.values-section p{font-size:16px;color:var(--text-muted)}
.journal-section{padding:4px 8px 65px}.journal-controls{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.filter-buttons{display:flex;gap:7px;flex-wrap:wrap}.filter-buttons button{border:1px solid transparent;border-radius:25px;background:transparent;padding:9px 15px;font-size:13px;color:#626d59}.filter-buttons button[aria-pressed=true]{background:#3b4e38;color:var(--bg)}.filter-buttons button:hover:not([aria-pressed=true]){border-color:#bac4ab}.search-label{display:flex;align-items:center;gap:8px;border-bottom:1px solid #b7bfa9;max-width:210px;padding:8px 0;color:#798168}.search-label input{min-width:0;width:100%;border:0;background:transparent;color:var(--text);font-size:13px;outline-offset:8px}.search-label input::placeholder{color:#798168}.filter-status{font-size:12px;color:#778068;padding:20px 0}.journal-grid{row-gap:45px}.no-results{text-align:center;padding:60px 10px}.no-results h2{font-size:30px;font-weight:400}.no-results p{margin:12px 0 24px;color:var(--text-muted)}
.journal-article{max-width:920px;margin:0 auto;padding:32px 0 65px}.back-link{display:block;font-size:13px;color:#737d67;text-decoration:none;margin-bottom:42px}.article-header{max-width:750px;margin:0 auto 33px;text-align:center}.article-header>.eyebrow{color:#957638;font-size:10px}.article-dot{padding:0 12px}.article-header h1{font-size:clamp(36px,4.5vw,60px);line-height:1.1;font-weight:400;letter-spacing:-2px;margin:16px 0 20px;text-wrap:balance}.article-deck{font-size:19px;color:var(--text-muted);max-width:600px;margin:auto}.article-image{width:100%;height:390px;object-fit:cover;border-radius:12px;margin-bottom:40px}.post-content{max-width:680px;margin:0 auto;font-size:18px;line-height:1.85;color:#53604e}.post-content>p{margin-bottom:1.45em}.post-content>h2{font-size:26px;font-weight:400;color:var(--text);margin:35px 0 12px}.pause-prompt{border-left:2px solid #a58e55;padding:5px 0 5px 25px;margin:35px 0;background:none}.pause-prompt .eyebrow{font-size:9px;color:#8b7442;margin-bottom:9px}.pause-prompt>p:last-child{font-size:23px;line-height:1.45;color:#43563e}.article-signoff{font-size:15px;font-style:italic}.article-signoff span{display:block}.next-reflection{max-width:680px;margin:40px auto 0;border-top:1px solid var(--border);padding-top:25px;display:block;text-decoration:none}.next-reflection>.eyebrow{display:block;font-size:9px;color:#887343;margin-bottom:9px}.next-reflection>span:last-child{display:flex;justify-content:space-between;gap:20px;font-size:23px;line-height:1.3}.next-reflection>span>span{color:#97753a}.policy-content{padding:0 12px 70px}.policy-note{font-size:13px;color:#77806e;margin-top:35px;padding-top:20px;border-top:1px solid var(--border)}.not-found{min-height:55vh;padding-top:100px}.not-found .button{margin-top:30px}
/* Dynamic watch pages share the site's font and palette. */
.video-container{max-width:980px;margin:25px auto 55px}.video-player{display:block;width:100%;aspect-ratio:16/9;max-height:75vh;background:#182219;border-radius:10px}.video-info{padding:25px 0}.video-title{font-size:32px;font-weight:400;line-height:1.2;overflow-wrap:anywhere}.video-date{font-size:13px;color:var(--text-muted);margin-top:9px}.video-description{margin-top:16px}.video-provenance{margin-top:25px;font-size:12px;color:var(--text-muted)}.video-provenance>div{display:flex;gap:20px;overflow-wrap:anywhere}.video-provenance dt{min-width:125px}.video-provenance dd{min-width:0}.error-page{padding:100px 20px;text-align:center}.error-page h1{font-size:70px;font-weight:400}.error-page p{margin:10px 0 25px}.contact-info{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;font-size:14px;margin-bottom:25px}.contact-heading{font-size:17px;font-weight:400}.contact-details a{overflow-wrap:anywhere}
/* ── Admin page ──────────────────────────────────────────── */
.admin-wrapper {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 1.5rem 4rem;
}

.admin-header {
  padding: 2.5rem 0 2rem;
  border-bottom: 1px solid var(--border);
  margin-bottom: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.admin-header h1 {
  font-family: var(--font-sans);
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text-muted);
}

.admin-section {
  margin-bottom: 3rem;
}

.admin-section h2 {
  font-family: var(--font-sans);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-faint);
  margin-bottom: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--border);
}

/* Forms */
.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
}

.form-row.full { grid-template-columns: 1fr; }
.form-row.two  { grid-template-columns: 1fr 1fr; }

.form-group {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.form-group label {
  font-family: var(--font-sans);
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--text-muted);
  letter-spacing: 0.03em;
}

.form-group input,
.form-group select,
.form-group textarea {
  font-family: var(--font-sans);
  font-size: 0.9rem;
  color: var(--text);
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 0.5rem 0.75rem;
  outline: none;
  transition: border-color 0.15s;
  width: 100%;
}

.form-group textarea {
  min-height: 80px;
  resize: vertical;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  border-color: var(--accent);
}

/* Drop zone */
.drop-zone {
  border: 2px dashed var(--border);
  border-radius: 6px;
  padding: 2.5rem 1.5rem;
  text-align: center;
  cursor: pointer;
  transition: border-color 0.2s, background 0.2s;
  margin-bottom: 1rem;
}

.drop-zone:hover,
.drop-zone.drag-over {
  border-color: var(--accent);
  background: #f4f5f1;
}

.drop-zone.disabled {
  opacity: 0.55;
  pointer-events: none;
}

.upload-queue {
  margin-bottom: 1rem;
}

.upload-queue-heading,
.queue-item-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  font-family: var(--font-sans);
}

.upload-queue-heading {
  margin-bottom: 0.75rem;
  color: var(--text-muted);
  font-size: 0.85rem;
}

.queue-item {
  padding: 1rem;
  margin-bottom: 0.75rem;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.45);
}

.queue-file-name {
  overflow-wrap: anywhere;
}

.queue-file-size,
.queue-description-field label span {
  color: var(--text-faint);
  font-weight: 400;
}

.queue-remove {
  border: 0;
  background: transparent;
  color: #a33;
  cursor: pointer;
  font: inherit;
}

.queue-metadata {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 0.75rem;
}

.queue-title-field,
.queue-description-field {
  margin-top: 0.75rem;
}

.queue-description-field textarea {
  min-height: 4rem;
}

.queue-provenance {
  margin-top: 0.9rem;
  border-top: 1px solid var(--border);
  padding-top: 0.8rem;
}

.queue-provenance summary {
  cursor: pointer;
  color: var(--text-muted);
  font-family: var(--font-sans);
  font-size: 0.85rem;
  font-weight: 600;
}

.queue-provenance summary span {
  color: var(--text-faint);
  font-weight: 400;
}

.queue-metadata.provenance-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.provenance-status {
  display: block;
  margin-top: 0.25rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
}

.provenance-status.complete { color: #287a4a; }
.provenance-status.missing { color: var(--text-faint); }

.inline-edit-label {
  display: block;
  margin-top: 0.45rem;
  color: var(--text-muted);
  font-family: var(--font-sans);
  font-size: 0.72rem;
}

.inline-edit-label .inline-edit-input {
  display: block;
  width: 100%;
  margin-top: 0.2rem;
}

.queue-progress {
  margin-top: 0.75rem;
}

.queue-result {
  margin-top: 0.5rem;
  color: var(--accent);
  font-family: var(--font-sans);
  font-size: 0.78rem;
  overflow-wrap: anywhere;
}

@media (max-width: 600px) {
  .queue-metadata,
  .queue-metadata.provenance-grid {
    grid-template-columns: 1fr;
  }
}

.drop-zone-text {
  font-family: var(--font-sans);
  font-size: 0.9rem;
  color: var(--text-muted);
}

.drop-zone-text strong {
  color: var(--accent);
}

.drop-zone-hint {
  margin-top: 0.4rem;
  font-family: var(--font-sans);
  font-size: 0.78rem;
  color: var(--text-faint);
}

/* Progress */
.progress-wrapper {
  display: none;
  margin-bottom: 1rem;
}

.progress-bar-track {
  height: 4px;
  background: var(--border);
  border-radius: 2px;
  overflow: hidden;
  margin-bottom: 0.5rem;
}

.progress-bar-fill {
  height: 100%;
  background: var(--accent);
  border-radius: 2px;
  width: 0%;
  transition: width 0.3s ease;
}

.progress-label {
  font-family: var(--font-sans);
  font-size: 0.8rem;
  color: var(--text-muted);
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--font-sans);
  font-size: 0.85rem;
  font-weight: 600;
  padding: 0.55rem 1.1rem;
  border-radius: 4px;
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
  letter-spacing: 0.02em;
}

.btn-primary {
  background: var(--accent);
  color: #fff;
  border-color: var(--accent);
}

.btn-primary:hover {
  background: #5a6a4d;
  border-color: #5a6a4d;
}

.btn-primary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.btn-secondary {
  background: transparent;
  color: var(--text-muted);
  border-color: var(--border);
}

.btn-secondary:hover {
  border-color: var(--text-muted);
  color: var(--text);
}

.btn-danger {
  background: transparent;
  color: #c0392b;
  border-color: #e8c5c2;
}

.btn-danger:hover {
  background: #fdf2f1;
}

.btn-sm {
  font-size: 0.78rem;
  padding: 0.35rem 0.75rem;
}

/* Upload result */
.upload-result {
  display: none;
  margin-top: 1rem;
  padding: 1rem 1.25rem;
  background: #f0f4ec;
  border: 1px solid #ccd8c1;
  border-radius: 4px;
}

.upload-result p {
  font-family: var(--font-sans);
  font-size: 0.82rem;
  color: var(--text-muted);
  margin-bottom: 0.5rem;
}

.upload-result-url {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.upload-result-url input {
  font-family: var(--font-sans);
  font-size: 0.85rem;
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 0.4rem 0.6rem;
  flex: 1;
  background: #fff;
  color: var(--text);
}

/* Video table */
.video-table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-sans);
  font-size: 0.85rem;
}

.video-table th {
  text-align: left;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--text-faint);
  padding: 0 0.75rem 0.75rem;
  border-bottom: 1px solid var(--border);
}

.video-table th:first-child { padding-left: 0; }

.video-table td {
  padding: 0.85rem 0.75rem;
  border-bottom: 1px solid var(--border);
  color: var(--text);
  vertical-align: middle;
}

.video-table td:first-child { padding-left: 0; }

.video-table tr:last-child td {
  border-bottom: none;
}

.video-table .col-date  { width: 110px; white-space: nowrap; color: var(--text-muted); }
.video-table .col-title { }
.video-table .col-url   { width: 80px; }
.video-table .col-act   { width: 140px; white-space: nowrap; text-align: right; }

.video-table .actions {
  display: flex;
  gap: 0.4rem;
  justify-content: flex-end;
}

/* Login page */
.login-page {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  background: var(--bg);
}

.login-box {
  width: 100%;
  max-width: 340px;
  padding: 2.5rem 2rem;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 6px;
}

.login-box h1 {
  font-family: var(--font-sans);
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: 1.75rem;
  text-align: center;
}

.login-box .form-group {
  margin-bottom: 1rem;
}

.login-box .btn {
  width: 100%;
  justify-content: center;
  margin-top: 0.25rem;
}

.login-error {
  display: none;
  font-family: var(--font-sans);
  font-size: 0.82rem;
  color: #c0392b;
  margin-top: 0.75rem;
  text-align: center;
}

/* Logout btn */
.logout-btn {
  font-family: var(--font-sans);
  font-size: 0.78rem;
  color: var(--text-faint);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.logout-btn:hover { color: var(--text); }

/* Alert / toast */
.toast {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  background: var(--text);
  color: #fff;
  font-family: var(--font-sans);
  font-size: 0.85rem;
  padding: 0.65rem 1rem;
  border-radius: 4px;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.2s, transform 0.2s;
  pointer-events: none;
  z-index: 1000;
}

.toast.show {
  opacity: 1;
  transform: translateY(0);
}

/* Empty state */
.empty-state {
  text-align: center;
  padding: 3rem 0;
  font-family: var(--font-sans);
  font-size: 0.88rem;
  color: var(--text-faint);
}

/* Inline edit */
.inline-edit-input {
  font-family: var(--font-sans);
  font-size: 0.85rem;
  border: 1px solid var(--accent);
  border-radius: 3px;
  padding: 0.25rem 0.45rem;
  color: var(--text);
  background: #fff;
  width: 100%;
}


@media(min-width:1500px){.home-hero{min-height:620px}}
@media(max-width:1100px){.site-wrapper{padding:0 24px}.site-header{padding:0 7px;height:100px}.site-title{font-size:23px;gap:12px}.brand-icon{width:63px}.brand-subtitle{letter-spacing:5px}.site-nav{gap:24px}.site-nav>a{font-size:14px}.nav-contact{padding:11px 18px;gap:15px}.hero-copy{padding:62px 44px 82px}.hero-copy h1{font-size:65px}.hero-caption{left:44px}.home-hero{min-height:560px}.card-body h3{font-size:22px}.card-body>.eyebrow{display:block}.read-time{display:none}.contact-banner>.button{margin-right:65px}.footer-main{gap:25px}.footer-brand>p{padding-left:0}.footer-brand .site-title{font-size:19px;gap:8px}.footer-brand .brand-icon{width:50px}.story-section{gap:38px;padding:10px 10px 60px}.story-section>img{height:570px}.values-section{padding-left:10px;padding-right:10px}.journal-controls{align-items:flex-start}.filter-buttons{gap:0}.filter-buttons button{padding:9px 12px}}
@media(max-width:800px){.site-wrapper{padding:0 20px}.site-header{height:92px}.site-title{font-size:21px}.brand-subtitle{font-size:9px;letter-spacing:4.6px;margin-top:7px}.brand-icon{width:59px}.site-nav{gap:19px}.site-nav>a{font-size:13px}.site-nav .nav-contact{display:none}.home-hero{min-height:540px}.hero-copy{padding:55px 32px 85px}.hero-copy h1{font-size:59px;letter-spacing:-2.5px}.hero-copy .eyebrow{font-size:9px;letter-spacing:2.2px}.hero-description{font-size:18px}.hero-caption{left:32px}.hero-location{right:22px;bottom:27px;font-size:8px;letter-spacing:1px}.welcome{padding:44px 10px 50px}.welcome h2{font-size:34px}.welcome>p:not(.eyebrow){font-size:16px}.reflection-grid{gap:20px}.card-body h3{font-size:20px}.card-body>p:not(.eyebrow){font-size:14px}.card-read{font-size:12px}.section-heading h2{font-size:30px}.section-heading>.text-link{font-size:12px;gap:8px}.contact-banner{padding:32px}.contact-banner h2{font-size:29px}.contact-banner>.button{margin-right:0}.contact-banner p:not(.eyebrow){font-size:14px}.banner-leaf{opacity:.25}.site-footer{padding-top:40px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.footer-brand>p{margin:0}.footer-bottom{flex-wrap:wrap;gap:14px;font-size:9px}.story-section{gap:26px}.story-copy h2{font-size:31px}.story-copy>p:not(.eyebrow){font-size:15px}.story-section>img{height:520px}.values-section{gap:25px}.values-section h3{font-size:21px}.values-section p{font-size:15px}.journal-controls{flex-direction:column;gap:15px}.search-label{width:100%;max-width:none}.article-image{height:330px}.post-content{padding:0 20px}.next-reflection{margin-left:20px;margin-right:20px}.journal-article{padding-top:20px}.contact-info{grid-template-columns:1fr 1fr}}
@media(max-width:600px){html{scroll-padding-top:20px}.site-wrapper{padding:0 14px}.site-header{height:88px;padding:0 6px}.site-title{font-size:21px;gap:10px}.brand-icon{width:53px;height:46px}.brand-subtitle{font-size:8px;letter-spacing:5px;margin-top:6px}.menu-toggle{display:flex;align-items:center;gap:8px;border:1px solid #c5ccb9;border-radius:30px;padding:8px 11px;background:transparent;color:var(--text);font-size:12px;min-height:42px}.site-nav{display:none;position:absolute;top:77px;left:0;right:0;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:15px;box-shadow:0 15px 25px #25362315;flex-direction:column;align-items:stretch;gap:3px}.site-nav.is-open{display:flex}.site-nav>a:not(.button){padding:10px 14px;font-size:15px}.site-nav>a[aria-current=page]::after{left:14px;right:auto;width:22px;bottom:7px}.site-nav .nav-contact{display:flex;margin-top:10px}.home-hero{min-height:570px;border-radius:12px;align-items:flex-start}.hero-image{object-position:59% center}.home-hero::after{background:linear-gradient(90deg,#122011b0,#13200f57 80%),linear-gradient(0deg,#1426108a,transparent 35%)}.hero-copy{padding:62px 25px 100px;max-width:100%}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.9px;margin-bottom:24px}.hero-copy h1{font-size:clamp(41px,10.5vw,61px);letter-spacing:-1.8px;line-height:1.12;margin-bottom:23px}.hero-description{font-size:16px;line-height:1.6;margin-bottom:27px}.button-ivory{min-height:52px;padding:15px 22px;font-size:13px;gap:20px}.hero-location{left:25px;right:auto;bottom:26px;font-size:8px;padding:9px 12px}.hero-caption{display:none}.welcome{padding:37px 5px 41px}.leaf-divider{gap:20px;margin-bottom:14px}.leaf-divider>span{width:44px}.leaf-divider svg{width:36px;height:39px}.welcome>.eyebrow{font-size:8px;margin-bottom:12px}.welcome h2{font-size:30px;letter-spacing:-.9px}.welcome>p:not(.eyebrow){font-size:16px;line-height:1.75;padding:0 7px}.desktop-break{display:none}.welcome .text-link{font-size:13px;margin-top:17px}.reflections-section{padding:25px 4px 38px}.section-heading{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:22px}.section-heading h2{font-size:30px;letter-spacing:-1px}.section-heading .eyebrow{font-size:8px;margin-bottom:8px}.section-heading>.text-link{font-size:13px}.reflection-grid{grid-template-columns:1fr;gap:34px}.card-image-link img{aspect-ratio:1.55}.card-body{padding-top:17px}.card-body>.eyebrow{display:flex;font-size:9px;letter-spacing:1.8px}.read-time{display:inline;font-size:8px}.card-body h3{font-size:25px;letter-spacing:-.6px;margin-bottom:10px}.card-body>p:not(.eyebrow){font-size:16px;margin-bottom:17px}.card-read{font-size:13px;padding-top:12px}.contact-banner{padding:31px 27px;flex-direction:column;align-items:flex-start;gap:24px;border-radius:11px}.contact-banner h2{font-size:30px}.contact-banner p:not(.eyebrow){font-size:15px}.contact-banner .eyebrow{font-size:8px}.contact-banner>.button{font-size:13px;min-width:170px;min-height:46px}.banner-leaf{width:135px;right:8px;bottom:-5px}.site-footer{padding:37px 8px 0}.footer-main{grid-template-columns:1fr;gap:26px;padding-bottom:28px}.footer-brand{display:block;grid-column:auto}.footer-brand .site-title{font-size:22px;gap:12px}.footer-brand .brand-icon{width:54px}.footer-brand>p{font-size:13px;margin-top:13px;padding-left:66px}.footer-main .eyebrow{margin-bottom:8px}.footer-main address,.footer-contact>a{font-size:15px}.footer-contact>p:last-child{font-size:13px}.small-link{font-size:13px;margin-top:10px}.footer-bottom{gap:12px;font-size:10px;padding:19px 0 24px;align-items:flex-start}.footer-bottom>p{width:100%}.footer-bottom>.back-to-top{margin-left:auto}.page-intro{padding:45px 10px 40px}.page-intro h1{font-size:39px;letter-spacing:-1.4px;margin-bottom:18px}.page-intro>p:not(.eyebrow){font-size:16px}.story-section{grid-template-columns:1fr;gap:30px;padding:0 5px 38px}.story-section>img{height:340px}.story-copy{padding:0 8px}.story-copy h2{font-size:34px}.story-copy>p:not(.eyebrow){font-size:16px}.values-section{grid-template-columns:1fr;padding:26px 13px 38px;gap:25px}.values-section>div{border-bottom:1px solid var(--border);padding-bottom:22px}.values-section>div:last-child{border-bottom:0;padding-bottom:0}.values-section h3{margin:7px 0;font-size:24px}.values-section p{font-size:16px}.journal-section{padding:0 4px 38px}.journal-controls{padding:17px 0}.filter-buttons{gap:7px 4px}.filter-buttons button{font-size:12px;padding:8px 12px}.search-label{margin:4px 8px 0;width:calc(100% - 16px)}.filter-status{font-size:11px;padding:16px 0}.journal-grid{row-gap:34px}.journal-article{padding:15px 4px 40px}.back-link{margin-bottom:30px;font-size:12px}.article-header{padding:0 7px;margin-bottom:25px}.article-header .eyebrow{font-size:8px;letter-spacing:1.7px}.article-dot{padding:0 5px}.article-header h1{font-size:39px;letter-spacing:-1.4px;margin-top:14px}.article-deck{font-size:17px}.article-image{height:260px;border-radius:9px;margin-bottom:28px}.post-content{font-size:17px;padding:0 10px;line-height:1.85}.pause-prompt{padding-left:18px}.pause-prompt>p:last-child{font-size:22px}.next-reflection{margin-left:10px;margin-right:10px}.next-reflection>span:last-child{font-size:22px}.policy-content{padding-bottom:30px}.policy-content>h2{font-size:24px;margin-top:20px}.not-found{padding-top:60px;min-height:60vh}.video-title{font-size:26px}.video-provenance>div{display:block;padding-bottom:10px}.video-provenance dt{font-weight:700}.video-info{padding:20px 5px}.contact-info{grid-template-columns:1fr}.admin-header{flex-direction:column;align-items:flex-start;gap:15px}.admin-header h1{font-size:20px}.form-row{grid-template-columns:1fr 1fr}.form-row.three{grid-template-columns:1fr}.video-table .col-url,.video-table .col-act{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
