/* ============================================================
   HOW TO ADD YOUR IMAGES
   ============================================================
   Search this file for "IMAGE:" comments — they mark every
   place where a photo or logo should go.

   To replace a placeholder with your image:
   1. Upload your image to a free host such as:
      - Google Drive (right-click → Share → Anyone with link,
        then use https://drive.google.com/uc?id=YOUR_FILE_ID)
      - Dropbox (copy direct link, change ?dl=0 to ?raw=1)
      - Imgur (upload, copy direct .jpg/.png link)
      - Or place the image in the same folder as this HTML file
        and reference it as just "photo.jpg"

   2. Find the placeholder element with the matching IMAGE: comment
   3. Replace the <div class="photo-placeholder"> block with:
      <img src="YOUR_IMAGE_URL" alt="Description" style="width:100%;height:100%;object-fit:cover;">

   For logos, replace the logo-placeholder div with:
      <img src="YOUR_LOGO_URL" alt="Logo name" style="max-height:40px;object-fit:contain;">
   ============================================================ */

*{margin:0;padding:0;box-sizing:border-box}
a{text-decoration:none;color:inherit;cursor:pointer}
:root{
  --paper:#F5F0E8;--ecru:#DDD0B8;--ink:#1a1410;--sage:#4A7C59;
  --crimson:#8B1A1A;--gold:#C9A84C;--cosmos:#1A1428;
  --border:#d4c8b0;--muted:#7a7060;
  --serif:'Instrument Serif',serif;--sans:'Inter',sans-serif;--mono:'JetBrains Mono',monospace;
}
body{font-family:var(--sans);font-weight:300;color:var(--ink);background:var(--paper);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}

/* NAV */
nav{position:sticky;top:0;z-index:100;background:rgba(245,240,232,0.93);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.nav-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 2rem}
.wordmark{font-family:var(--serif);font-size:1.2rem;color:var(--ink);cursor:pointer;border:none;background:none;padding:0;display:flex;align-items:baseline;gap:0.6rem}
.wordmark-eyebrow{font-family:var(--mono);font-size:0.55rem;letter-spacing:0.15em;color:var(--sage);text-transform:uppercase}
.nav-links{display:flex;gap:1.5rem;list-style:none}
.nav-links a{font-size:0.75rem;color:var(--ink);text-decoration:none;cursor:pointer;opacity:0.5;transition:opacity 0.2s}
.nav-links a:hover,.nav-links a.active{opacity:1}

/* FOOTER */
footer{border-top:1px solid var(--border)}
.footer-inner{max-width:1200px;margin:0 auto;padding:3rem 2rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}
.footer-label{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--muted);margin-bottom:0.6rem;display:block}
.footer-bio{font-size:0.85rem;line-height:1.75;color:var(--muted);max-width:320px}
.footer-links{list-style:none}
.footer-links li{margin-bottom:0.35rem}
.footer-links a{font-size:0.85rem;color:var(--ink);text-decoration:none;opacity:0.55;cursor:pointer;transition:opacity 0.2s}
.footer-links a:hover{opacity:1}
.footer-tagline{font-family:var(--serif);font-style:italic;font-size:0.95rem;color:var(--muted);margin-top:1rem}
.footer-bottom{max-width:1200px;margin:0 auto;padding:1rem 2rem;border-top:1px solid var(--border);display:flex;justify-content:space-between}
.footer-bottom span{font-size:0.68rem;color:var(--muted)}
.footer-bottom .mono{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.08em}

/* SHARED */
.eyebrow{font-family:var(--mono);font-size:0.62rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);margin-bottom:0.6rem;display:block}
.eyebrow-gold{color:var(--gold)}.eyebrow-sage{color:var(--sage)}.eyebrow-crimson{color:var(--crimson)}
.container{max-width:1200px;margin:0 auto;padding:0 2rem}
.container-narrow{max-width:800px;margin:0 auto;padding:0 2rem}

/* BUTTONS — all fully visible at rest */
.btn{font-family:var(--sans);font-size:0.78rem;letter-spacing:0.06em;padding:0.75rem 1.5rem;cursor:pointer;text-decoration:none;display:inline-block;transition:all 0.25s}
/* Sage filled — always visible */
.btn-sage{background:var(--sage) !important;color:#ffffff !important;border:2px solid var(--sage) !important}
.btn-sage:hover{background:#3a6347 !important;border-color:#3a6347 !important}
/* Hero outline — white border, white text, always visible on dark bg */
.btn-hero-outline{background:transparent !important;color:#ffffff !important;border:2px solid #ffffff !important}
.btn-hero-outline:hover{background:var(--crimson) !important;border-color:var(--crimson) !important}
/* Ink filled */
.btn-ink{background:var(--ink) !important;color:var(--paper) !important;border:2px solid var(--ink) !important}
.btn-ink:hover{opacity:0.82}
/* Sage outline on light bg */
.btn-sage-outline{background:transparent !important;color:var(--sage) !important;border:2px solid var(--sage) !important}
.btn-sage-outline:hover{background:var(--sage) !important;color:white !important}
/* Ink outline on light bg */
.btn-ink-outline{background:transparent !important;color:var(--ink) !important;border:2px solid var(--ink) !important}
.btn-ink-outline:hover{background:var(--ink) !important;color:var(--paper) !important}

/* PLACEHOLDERS */
.photo-placeholder{background:var(--ecru);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.5rem;border:1px dashed var(--border)}
.photo-placeholder-icon{width:36px;height:36px;border-radius:50%;background:var(--border);display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.photo-placeholder-label{font-family:var(--mono);font-size:0.55rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--muted)}
.logo-placeholder{background:var(--ecru);border:1px dashed var(--border);display:flex;align-items:center;justify-content:center;padding:1rem 1.5rem;min-height:60px}
.logo-placeholder-label{font-family:var(--mono);font-size:0.52rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted)}

/* HERO */
.hero{background:var(--cosmos);padding:4rem 2rem;position:relative;overflow:hidden}
.hero-blob1{position:absolute;top:-6rem;right:-6rem;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(80,40,120,0.35),transparent 70%);pointer-events:none}
.hero-blob2{position:absolute;bottom:-8rem;left:-4rem;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(139,26,26,0.18),transparent 70%);pointer-events:none}
.stars{position:absolute;inset:0;pointer-events:none}
.star{position:absolute;background:white;border-radius:50%}
.hero-inner{max-width:1200px;margin:0 auto;position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.hero-eyebrow{font-family:var(--mono);font-size:0.62rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);opacity:0.85;margin-bottom:1.5rem;display:block}
.hero-line{font-family:var(--serif);font-size:clamp(2.8rem,5.5vw,5rem);font-weight:400;line-height:0.97;display:block;color:white;letter-spacing:-0.01em}
.hero-line-gold{font-family:var(--serif);font-size:clamp(2.8rem,5.5vw,5rem);font-weight:400;font-style:italic;line-height:0.97;display:block;color:var(--gold);letter-spacing:-0.01em}
.hero-right{display:flex;flex-direction:column;gap:1.5rem}
.hero-subtext{font-size:0.95rem;line-height:1.85;color:rgba(245,240,232,0.72);font-weight:300}
.hero-ctas{display:flex;gap:0.75rem;flex-wrap:wrap;align-items:center}

/* PILLARS */
.pillars-header{max-width:1200px;margin:0 auto;padding:3rem 2rem 0.5rem;border-top:1px solid var(--border)}
.pillars-label{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--muted);margin-bottom:0.75rem;display:block}
.pillars-headline{font-family:var(--serif);font-size:clamp(1.2rem,2.5vw,1.85rem);line-height:1.25;font-weight:400;margin-bottom:0.75rem}
.pillars-subhead{font-size:0.9rem;line-height:1.8;color:var(--muted);max-width:780px}
.pillars-grid{max-width:1200px;margin:0 auto;padding:2rem 2rem 0;display:grid;grid-template-columns:repeat(4,1fr);border-right:1px solid var(--border)}
.pillar{padding:2rem 1.5rem;border-left:1px solid var(--border);border-bottom:1px solid var(--border);min-height:220px;display:flex;flex-direction:column;gap:0.5rem;cursor:pointer;transition:background 0.2s,color 0.2s}
.pillar:hover{background:var(--sage);color:white}
.pillar:hover .eyebrow,.pillar:hover .pillar-text{color:rgba(255,255,255,0.75)}
.pillar:hover .pillar-arrow{color:var(--gold);opacity:1}
.pillar-title{font-family:var(--serif);font-size:1.2rem;line-height:1.2}
.pillar-text{font-size:0.82rem;line-height:1.7;color:var(--muted);margin-top:0.25rem}
.pillar-arrow{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.12em;margin-top:auto;padding-top:1rem;opacity:0.3;transition:color 0.2s,opacity 0.2s}

/* CURRENTLY */
.currently-section{border-top:1px solid var(--border);background:color-mix(in srgb,var(--sage) 8%,var(--paper))}
.currently-grid{max-width:1200px;margin:0 auto;padding:3rem 2rem;display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--border)}
.currently-item{padding:0 2rem 0 1.5rem;border-right:1px solid var(--border)}
.currently-item:last-child{border-right:none}
.currently-label{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--crimson);margin-bottom:0.6rem;display:block}
.currently-text{font-family:var(--serif);font-size:0.95rem;line-height:1.6}

/* THEMES */
.themes-section{border-top:1px solid var(--border);padding:4rem 0}
.themes-grid{display:grid;grid-template-columns:repeat(4,1fr);border-right:1px solid var(--border);margin-top:2rem}
.theme-card{padding:2rem 1.5rem;border-left:1px solid var(--border);border-top:1px solid var(--border)}
.theme-title{font-family:var(--serif);font-size:1.15rem;margin-bottom:0.75rem}
.theme-text{font-size:0.82rem;line-height:1.75;color:var(--muted)}

/* PARTNERS */
.partners-section{border-top:1px solid var(--border);padding:3.5rem 0}
.logos-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--border);border:1px solid var(--border);margin-top:2rem}

/* PULL QUOTE */
.quote-section{padding:5rem 2rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--cosmos)}
.quote-inner{max-width:900px;margin:0 auto;text-align:center}
.quote-text{font-family:var(--serif);font-style:italic;font-size:clamp(1.4rem,3vw,2.2rem);line-height:1.45;color:white}
.quote-accent{color:var(--gold)}

/* CTA BLOCK */
.cta-block{padding:4rem 2rem;text-align:center;border-top:1px solid var(--border)}
.cta-eyebrow{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--crimson);margin-bottom:1rem;display:block}
.cta-headline{font-family:var(--serif);font-size:clamp(1.4rem,2.8vw,2.2rem);line-height:1.3;max-width:680px;margin:0 auto 0.75rem}
.cta-sub{font-size:0.9rem;color:var(--muted);max-width:500px;margin:0 auto 1.75rem;line-height:1.75}
.cta-rule{width:4rem;height:1px;background:var(--crimson);margin:0 auto 1.75rem}

/* PAGE HERO */
.page-hero{padding:4rem 2rem 3rem;border-bottom:1px solid var(--border)}
.page-hero-inner{max-width:1200px;margin:0 auto}
.page-hero h1{font-family:var(--serif);font-size:clamp(2rem,4.5vw,4rem);font-weight:400;line-height:1.1;max-width:820px;margin-top:0.5rem}

/* ABOUT */
.about-grid{display:grid;grid-template-columns:3fr 2fr;gap:4rem;align-items:start;margin-top:3.5rem}
.bio-text p{font-size:0.95rem;line-height:1.9;margin-bottom:1.25rem;color:rgba(26,20,16,0.85)}
.bio-text .opening-q{font-family:var(--serif);font-size:1.05rem;font-style:italic;line-height:1.7;color:var(--ink);margin-bottom:0.75rem}
.bio-divider{border:none;border-top:1px solid var(--border);margin:2rem 0}
.edu-entry{margin-bottom:0.875rem}
.edu-title{font-family:var(--serif);font-size:1.05rem;line-height:1.3}
.edu-sub{font-size:0.78rem;color:var(--muted);margin-top:0.15rem}
.affil-item{padding:0.875rem 0;border-bottom:1px solid var(--border)}
.affil-name{font-size:0.9rem}
.affil-role{font-size:0.78rem;color:var(--muted);margin-top:0.1rem}
.belief-box{border:1px solid var(--sage);padding:1.75rem;margin-top:2rem;background:color-mix(in srgb,var(--sage) 5%,var(--paper))}
.belief-text{font-family:var(--serif);font-style:italic;font-size:1.05rem;line-height:1.65;color:var(--ink)}

/* COMMUNITY WALL */
.community-section{border-top:1px solid var(--border);padding:4rem 0;background:color-mix(in srgb,var(--gold) 5%,var(--paper))}
.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.note-card{background:white;border:1px solid var(--border);padding:1.5rem}
.note-text{font-family:var(--serif);font-style:italic;font-size:0.95rem;line-height:1.7;color:var(--ink);margin-bottom:1rem}
.note-author{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted)}
.note-form{margin-top:2.5rem;border:1px solid var(--border);padding:2rem;background:white}
.note-form-title{font-family:var(--serif);font-size:1.15rem;margin-bottom:1.25rem}
.note-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.note-field{width:100%;padding:0.65rem 0;border:none;border-bottom:1px solid var(--border);background:transparent;font-family:var(--sans);font-size:0.875rem;color:var(--ink);outline:none}
.note-field::placeholder{color:var(--muted)}
.note-field:focus{border-bottom-color:var(--sage)}
.note-textarea{width:100%;padding:0.65rem 0;border:none;border-bottom:1px solid var(--border);background:transparent;font-family:var(--sans);font-size:0.875rem;color:var(--ink);outline:none;resize:none;min-height:80px;margin-bottom:1rem}
.note-textarea:focus{border-bottom-color:var(--sage)}

/* RESEARCH */
.research-intro{font-size:1rem;line-height:1.9;max-width:700px;color:rgba(26,20,16,0.82);margin-bottom:2.5rem}
.current-research-box{border:1px solid var(--border);padding:2rem;margin-bottom:3rem;background:color-mix(in srgb,var(--gold) 6%,var(--paper))}
.research-row{display:grid;grid-template-columns:70px 1fr 2fr;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--border);align-items:start}
.research-num{font-family:var(--mono);font-size:0.7rem;color:var(--muted);padding-top:0.2rem}
.research-title{font-family:var(--serif);font-size:1.25rem;line-height:1.2}
.research-text{font-size:0.875rem;line-height:1.8;color:rgba(26,20,16,0.72)}
.pres-item{padding:1.75rem 0;border-bottom:1px solid var(--border)}
.pres-title{font-family:var(--serif);font-size:1.05rem;line-height:1.35;margin-bottom:0.4rem}
.pres-meta{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--sage);margin-bottom:0.5rem}
.pres-desc{font-size:0.85rem;line-height:1.75;color:var(--muted)}
.rip-item{padding:1.5rem 0;border-bottom:1px solid var(--border)}
.rip-title{font-family:var(--serif);font-size:1rem;line-height:1.3;margin-bottom:0.3rem}
.rip-meta{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--crimson);margin-bottom:0.4rem}
.rip-desc{font-size:0.85rem;line-height:1.75;color:var(--muted)}
.cv-box{border:1px solid var(--border);padding:2rem;margin-top:1.25rem}
.cv-download{display:inline-flex;align-items:center;gap:0.5rem;font-family:var(--mono);font-size:0.6rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--sage);text-decoration:none;border:2px solid var(--sage);padding:0.65rem 1.25rem;cursor:pointer;transition:all 0.2s}
.cv-download:hover{background:var(--sage);color:white}

/* SPEAKING */
.speaking-intro{font-size:1rem;line-height:1.9;max-width:700px;color:rgba(26,20,16,0.8);margin:1.75rem 0 2.5rem}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2.5rem}
.list-box{border:1px solid var(--border);padding:2rem}
.list-box ul{list-style:none;padding:0}
.list-box ul li{font-size:0.85rem;padding:0.55rem 0;border-bottom:1px solid var(--border);line-height:1.5;color:rgba(26,20,16,0.78)}
.list-box ul li:last-child{border-bottom:none}
.booking-box{border:1px solid var(--border);padding:2rem;background:color-mix(in srgb,var(--sage) 6%,var(--paper))}

/* VOICE */
.voice-hero{background:var(--cosmos);padding:5rem 2rem 4rem;border-bottom:1px solid rgba(255,255,255,0.07)}
.voice-desc{font-size:1rem;line-height:1.9;max-width:680px;color:rgba(245,240,232,0.72);margin-bottom:1.25rem}
.voice-section{padding:3.5rem 0;border-bottom:1px solid var(--border)}
.voice-topics{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border:1px solid var(--border);border-bottom:none;margin-top:1.5rem}
.voice-topic{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);border-right:1px solid var(--border);font-size:0.875rem;color:rgba(26,20,16,0.8)}
.voice-topic:nth-child(even){border-right:none}
.waitlist-form{display:flex;border-bottom:1px solid var(--ink);max-width:440px;margin-top:1.75rem}
.waitlist-input{flex:1;padding:0.75rem 0;background:transparent;border:none;font-family:var(--sans);font-size:0.875rem;color:var(--ink);outline:none}
.waitlist-input::placeholder{color:var(--muted)}
.waitlist-btn{padding:0.75rem 0 0.75rem 1rem;background:transparent;border:none;font-family:var(--mono);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--ink);cursor:pointer;opacity:0.65;transition:opacity 0.2s}
.waitlist-btn:hover{opacity:1}

/* ART */
.art-logo-placeholder{border:1px dashed var(--border);background:var(--ecru);height:80px;display:flex;align-items:center;justify-content:center;max-width:280px;margin-bottom:2rem}
.art-grid{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--border);border-bottom:none}
.art-card{border-bottom:1px solid var(--border);border-right:1px solid var(--border)}
.art-card:nth-child(even){border-right:none}
.art-placeholder{height:220px;display:flex;align-items:center;justify-content:center}
.art-ph-label{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.12em;text-transform:uppercase;opacity:0.28}
.art-card-body{padding:1.75rem}
.art-card-title{font-family:var(--serif);font-size:1.1rem;margin-bottom:0.4rem}
.art-card-text{font-size:0.83rem;line-height:1.75;color:rgba(26,20,16,0.68)}
.art-multi-img{display:flex;width:100%;height:320px;background:#111}

/* CONTACT */
.contact-grid{display:grid;grid-template-columns:3fr 2fr;gap:4rem;margin-top:2.5rem}
.form-group{margin-bottom:1.75rem}
.form-label{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;display:block;margin-bottom:0.4rem;color:var(--muted)}
.form-field{width:100%;padding:0.65rem 0;border:none;border-bottom:1px solid var(--border);background:transparent;font-family:var(--sans);font-size:0.875rem;font-weight:300;color:var(--ink);outline:none;transition:border-color 0.2s}
.form-field:focus{border-bottom-color:var(--sage)}
.form-field::placeholder{color:var(--muted)}
.form-textarea{width:100%;padding:0.65rem 0;border:none;border-bottom:1px solid var(--border);background:transparent;font-family:var(--sans);font-size:0.875rem;font-weight:300;color:var(--ink);outline:none;resize:none;min-height:120px}
.form-textarea:focus{border-bottom-color:var(--sage)}
.contact-info-item{padding:1rem 0;border-bottom:1px solid var(--border)}
.contact-info-label{font-family:var(--mono);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--sage);margin-bottom:0.3rem;display:block}
.contact-info-val{font-size:0.85rem;line-height:1.6}
.collab-list{list-style:none;padding:0;margin-top:1.5rem}
.collab-list li{font-size:0.85rem;padding:0.5rem 0;border-bottom:1px solid var(--border);color:rgba(26,20,16,0.78)}
.collab-list li:last-child{border-bottom:none}
.final-message{margin-top:2rem;padding:2rem;border:1px solid var(--border);background:color-mix(in srgb,var(--sage) 5%,var(--paper))}
.final-message p{font-size:0.9rem;line-height:1.85;color:rgba(26,20,16,0.8)}

/* PLACEHOLDER PAGES */
.placeholder-page{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:4rem 2rem;border-top:1px solid var(--border)}
.placeholder-inner{max-width:560px;text-align:center}
.placeholder-icon{width:64px;height:64px;border-radius:50%;background:var(--ecru);border:1px dashed var(--border);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:1.5rem}

/* ============================================================
   MOBILE RESPONSIVE STYLES
   ============================================================ */

/* Hamburger button */
.hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
}
.hamburger span {
  display: block;
  width: 22px;
  height: 2px;
  background: var(--ink);
  transition: all 0.2s;
}
.mobile-menu {
  display: none;
  position: absolute;
  top: 60px;
  left: 0;
  right: 0;
  background: var(--paper);
  border-bottom: 1px solid var(--border);
  padding: 1rem 2rem 1.5rem;
  z-index: 99;
}
.mobile-menu a {
  display: block;
  font-size: 0.9rem;
  padding: 0.6rem 0;
  border-bottom: 1px solid var(--border);
  color: var(--ink);
  text-decoration: none;
  cursor: pointer;
  opacity: 0.75;
}
.mobile-menu a:last-child { border-bottom: none; }

@media (max-width: 768px) {

  /* NAV */
  nav { position: sticky; top: 0; }
  .nav-links { display: none !important; }
  .hamburger { display: flex; }
  .wordmark { font-size: 1rem; }
  .wordmark-eyebrow { display: none; }

  /* HERO */
  .hero { padding: 3rem 1.5rem; }
  .hero-inner {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
  .hero-line, .hero-line-gold {
    font-size: clamp(2.2rem, 12vw, 3.5rem) !important;
  }
  .hero-subtext { font-size: 0.9rem; }
  .hero-ctas { flex-direction: column; }
  .hero-ctas .btn { width: 100%; text-align: center; }

  /* HOME PHOTO BLOCK */
  .home-photo-block > div {
    grid-template-columns: 1fr !important;
  }
  .home-photo-block img {
    height: 360px !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: var(--cosmos) !important;
  }

  /* PILLARS HEADER */
  .pillars-header {
    padding: 2rem 1.5rem 0.5rem !important;
    grid-template-columns: 1fr !important;
  }

  /* PILLARS GRID */
  .pillars-grid {
    grid-template-columns: 1fr !important;
    padding: 1rem 1.5rem 0 !important;
    border-right: none !important;
  }
  .pillar {
    border-left: none !important;
    border-right: none !important;
    border-top: 1px solid var(--border) !important;
    min-height: auto !important;
    padding: 1.5rem 0 !important;
  }

  /* CURRENTLY */
  .currently-grid {
    grid-template-columns: 1fr !important;
    padding: 2rem 1.5rem !important;
    border-left: none !important;
  }
  .currently-item {
    padding: 0 0 1.5rem 0 !important;
    border-right: none !important;
    border-bottom: 1px solid var(--border) !important;
  }
  .currently-item:last-child { border-bottom: none !important; padding-bottom: 0 !important; }

  /* THEMES */
  .themes-section { padding: 2.5rem 0; }
  .themes-grid {
    grid-template-columns: 1fr !important;
    border-right: none !important;
  }
  .theme-card {
    border-left: none !important;
    border-right: none !important;
    padding: 1.5rem 1.5rem !important;
  }

  /* PARTNERS */
  .partners-section { padding: 2.5rem 0; }
  .partners-section > .container > div[style*="display:flex"] {
    flex-direction: column !important;
  }
  .partners-section a {
    border-right: none !important;
    border-bottom: 1px solid var(--border) !important;
    padding: 1rem 1.5rem !important;
  }

  /* QUOTE */
  .quote-section { padding: 3rem 1.5rem; }
  .quote-text { font-size: clamp(1.1rem, 5vw, 1.5rem) !important; }

  /* CTA BLOCK */
  .cta-block { padding: 3rem 1.5rem; }
  .cta-headline { font-size: clamp(1.2rem, 5vw, 1.8rem) !important; }

  /* PAGE HERO */
  .page-hero { padding: 2.5rem 1.5rem 2rem; }
  .page-hero h1 { font-size: clamp(1.6rem, 7vw, 2.5rem) !important; }

  /* CONTAINER */
  .container { padding: 0 1.5rem !important; }
  .container-narrow { padding: 0 1.5rem !important; }

  /* ABOUT GRID */
  .about-grid {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
    margin-top: 2rem !important;
  }
  .about-grid > div:first-child img {
    height: 240px !important;
  }

  /* COMMUNITY WALL */
  .notes-grid {
    grid-template-columns: 1fr !important;
  }
  .note-fields {
    grid-template-columns: 1fr !important;
  }

  /* RESEARCH ROWS */
  .research-row {
    grid-template-columns: 1fr !important;
    gap: 0.5rem !important;
    padding: 1.5rem 0 !important;
  }
  .research-num { display: none; }

  /* PRESENTATIONS */
  .pres-item { padding: 1.25rem 0; }

  /* SPEAKING */
  .two-col {
    grid-template-columns: 1fr !important;
  }
  .booking-box { padding: 1.5rem; }

  /* VOICE */
  .voice-hero { padding: 3rem 1.5rem 2.5rem; }
  .voice-topics {
    grid-template-columns: 1fr !important;
  }
  .voice-topic {
    border-right: none !important;
  }
  .waitlist-form { max-width: 100% !important; }

  /* ART PAGE */
  .art-grid {
    grid-template-columns: 1fr !important;
  }
  .art-card { border-right: none !important; }
  .art-card:nth-child(even) { border-right: none !important; }
  .art-multi-img { flex-direction: column !important; height: auto !important; }
  .art-multi-img img { width: 100% !important; height: 220px !important; }

  /* PODCAST THUMBNAILS */
  .podcast-grid {
    grid-template-columns: 1fr !important;
  }

  /* RESEARCH IN ACTION */
  .ria-grid {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }

  /* SPEAKING INTRO GRID */
  .speaking-intro-grid {
    grid-template-columns: 1fr !important;
  }

  /* CONTACT */
  .contact-grid {
    grid-template-columns: 1fr !important;
    gap: 2.5rem !important;
  }

  /* FOOTER */
  .footer-inner {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
    padding: 2.5rem 1.5rem !important;
  }
  .footer-bottom {
    flex-direction: column !important;
    gap: 0.5rem !important;
    padding: 1rem 1.5rem !important;
  }

  /* SECTION PADDING */
  section[style*="padding:4rem 0"] { padding: 2.5rem 0 !important; }
  section[style*="padding:3.5rem 0"] { padding: 2rem 0 !important; }

  /* SPEAKING INTRO GRID - mobile */
  .speaking-intro-grid {
    grid-template-columns: 1fr !important;
  }
  .speaking-intro-grid > div:last-child img {
    aspect-ratio: 16/9 !important;
    object-position: center 20% !important;
  }
}

@media (max-width: 480px) {
  .hero-line, .hero-line-gold {
    font-size: clamp(2rem, 11vw, 3rem) !important;
  }
  .btn { padding: 0.7rem 1.25rem; font-size: 0.75rem; }
  .page-hero h1 { font-size: clamp(1.4rem, 7vw, 2rem) !important; }
}


/* ============================================================
   HEADING-TAG NORMALIZATION
   Several visual "titles" and "eyebrow" labels were upgraded
   from <div>/<span> to real <h1>-<h3> tags for SEO heading
   hierarchy. This resets browser default bold/margin so the
   visual design is unaffected by the tag change.
   ============================================================ */
.eyebrow, .eyebrow-gold, .eyebrow-sage,
.pillar-title, .theme-title, .research-title, .pres-title,
.rip-title, .art-card-title, .edu-title, .current-research-title {
  font-weight: 400;
  margin-top: 0;
}
h1, h2, h3 { font-weight: 400; }
