# Apply to be a guest, PreVetted Podcast

The PreVetted Podcast is by application. Submit your details and you'll hear back if it's a fit.

<section class="guest-hero-section">
  <div class="container">
    <div class="breadcrumb">
      <a href="">PreVetted Podcast</a>
      <span>·</span>
      <span class="current">Apply to be a guest</span>
    </div>

    <div class="guest-hero-grid">
      <div class="guest-hero-content">
        <h1>By <em>invitation</em>, mostly. By application, sometimes.</h1>
        <p class="hero-lede">
          The PreVetted Podcast features founders, engineers, and operators who are doing the work, not just talking about it. Most guests come in through introductions, but the door is open if your story belongs in the room.
        </p>
        <p class="hero-lede">
          Tell me a little about yourself below. If it's a fit, you'll hear from me personally.
        </p>
        <div class="guest-hero-stats">
          <div class="guest-stat">
            <span class="guest-stat-num"></span>
            <span class="guest-stat-label">Episodes shipped</span>
          </div>
          <div class="guest-stat">
            <span class="guest-stat-num">~1&nbsp;in&nbsp;5</span>
            <span class="guest-stat-label">Applications accepted</span>
          </div>
          <div class="guest-stat">
            <span class="guest-stat-num">2023</span>
            <span class="guest-stat-label">Year&nbsp;one</span>
          </div>
        </div>
      </div>

      <aside class="guest-hero-aside">
        <div class="guest-hero-portrait-frame">
          <img src=""
               alt="Federico Ramallo, host of the PreVetted Podcast" class="guest-hero-portrait" />
          <div class="guest-hero-portrait-tag">
            <span class="ghpt-eyebrow">Host</span>
            <span class="ghpt-name">Federico Ramallo</span>
            <span class="ghpt-role">Founder, Density Labs</span>
          </div>
        </div>
      </aside>
    </div>
  </div>
</section>

<section class="guest-criteria-section">
  <div class="container container-narrow">
    <div class="criteria-head">
      <span class="criteria-eyebrow">Who we feature</span>
      <h2 class="criteria-title">Three things every guest brings.</h2>
    </div>
    <div class="criteria-grid">
      <div class="criteria-card">
        <span class="criteria-num">01</span>
        <h3>Skin in the game</h3>
        <p>You've shipped, hired, sold, scaled, lost, or rebuilt something real. Stories with receipts, not theory.</p>
      </div>
      <div class="criteria-card">
        <span class="criteria-num">02</span>
        <h3>A point of view</h3>
        <p>You'll say something most people in your field won't. We don't run safe takes that fit on a slide.</p>
      </div>
      <div class="criteria-card">
        <span class="criteria-num">03</span>
        <h3>Comfort with depth</h3>
        <p>Long-form is the default. If 60 unhurried minutes makes you sharper, not nervous, you'll fit right in.</p>
      </div>
    </div>
  </div>
</section>

<section class="guest-form-section" id="apply">
  <div class="container container-narrow">
    <div class="form-head">
      <span class="form-head-eyebrow">The application</span>
      <h2 class="form-head-title">Tell me about you, and what you'd bring.</h2>
      <p class="form-head-sub">Every submission is read personally. If it's a fit, you'll hear back within five business days.</p>
    </div>

    <form class="guest-form-light"
          action=""
          method="POST"
          id="becomeGuestForm">

      <!--
        Public guest intake — POSTs to the podcast_studio Rails app.
        Endpoint is set in _config.yml (forms.submissions_endpoint).
        See docs/forms-migration.md for the migration plan.
      -->

      <fieldset class="form-section">
        <legend class="form-section-title"><span class="form-section-num">01</span> About you</legend>

        <div class="form-row">
          <label for="name">Full name <span class="required">*</span></label>
          <input type="text" id="name" name="name" required autocomplete="name" />
        </div>

        <div class="form-row">
          <label for="email">Email <span class="required">*</span></label>
          <input type="email" id="email" name="email" required autocomplete="email" />
        </div>

        <div class="form-row">
          <label for="job_title">Job title <span class="required">*</span></label>
          <input type="text" id="job_title" name="job_title" required
                 placeholder="e.g. Co-founder &amp; CTO, VP Engineering, Senior Staff Engineer" />
        </div>

        <div class="form-row">
          <label for="company">Company</label>
          <input type="text" id="company" name="company" autocomplete="organization" />
        </div>

        <div class="form-row">
          <label for="linkedin">LinkedIn or personal site</label>
          <input type="url" id="linkedin" name="linkedin"
                 placeholder="https://linkedin.com/in/your-profile" />
        </div>
      </fieldset>

      <fieldset class="form-section">
        <legend class="form-section-title"><span class="form-section-num">02</span> About the conversation</legend>

        <div class="form-row">
          <label for="category">Category <span class="required">*</span></label>
          <select id="category" name="category" required>
            <option value="">Pick the closest fit…</option>
            
            <option value=""></option>
            
          </select>
          <span class="form-hint">Not sure? Pick the closest. We can adjust on the call.</span>
        </div>

        <div class="form-row">
          <label for="bringing">What are you bringing to the conversation? <span class="required">*</span></label>
          <textarea id="bringing" name="bringing" rows="5" required
            placeholder="The specific lesson, story, framework, or hot take you want to share. Specifics beat abstractions."></textarea>
          <span class="form-hint">"How we cut infra costs 60% switching from Snowflake to ClickHouse" beats "modern data infrastructure." Receipts beat theory.</span>
        </div>

        <div class="form-row">
          <label for="why_now">Why this, why now?</label>
          <textarea id="why_now" name="why_now" rows="3"
            placeholder="What's the recent thing that makes this conversation worth having now?"></textarea>
        </div>

        <div class="form-row">
          <label for="evidence">Show your work</label>
          <textarea id="evidence" name="evidence" rows="3"
            placeholder="Links to something you've shipped, written, talked about, or built. A repo, a post, a previous interview. Optional but helps."></textarea>
        </div>
      </fieldset>

      <fieldset class="form-section">
        <legend class="form-section-title"><span class="form-section-num">03</span> Logistics</legend>

        <div class="form-row">
          <label for="anything">Anything else?</label>
          <textarea id="anything" name="anything" rows="3"
            placeholder="Optional. Anything you want me to know that didn't fit above."></textarea>
        </div>

        <div class="form-row form-row-checkbox">
          <input type="checkbox" id="terms_ack" name="terms_ack" required />
          <label for="terms_ack">
            I understand the conversation will be recorded for distribution and have read the
            <a href="" target="_blank" rel="noopener">guest terms</a>.
            <span class="required">*</span>
          </label>
        </div>

      </fieldset>

      <!-- Honeypot for spam filtering, bots fill it; humans never see it -->
      <div style="position: absolute; left: -9999px;" aria-hidden="true">
        <label for="website-honeypot">Don't fill this out:</label>
        <input type="text" id="website-honeypot" name="_gotcha" tabindex="-1" autocomplete="off" />
      </div>

      <input type="hidden" name="source_form" value="podcast_become_a_guest_public" />
      <input type="hidden" name="show" value="prevetted-podcast" />
      <input type="hidden" name="_next" value="" />
      <input type="hidden" name="_subject" value="New PreVetted Podcast guest application (public)" />

      <div class="guest-form-submit-wrap">
        <button type="submit" class="btn-submit">Submit application →</button>
        <p class="form-fineprint">
          If selected you'll get a reply at the email you provided.
        </p>
      </div>
    </form>
  </div>
</section>

<section class="guest-next-section">
  <div class="container container-narrow">
    <div class="next-head">
      <span class="next-eyebrow">After you apply</span>
      <h2 class="next-title">What happens next.</h2>
    </div>

    <ol class="next-timeline">
      <li class="next-step">
        <div class="next-step-marker">
          <span class="next-step-num">01</span>
          <span class="next-step-eta">Within 24 hours</span>
        </div>
        <div class="next-step-body">
          <h3>Your application lands in my inbox.</h3>
          <p>Read personally, not by an assistant or a bot. Most replies go out within five business days.</p>
        </div>
      </li>

      <li class="next-step">
        <div class="next-step-marker">
          <span class="next-step-num">02</span>
          <span class="next-step-eta">If it's a fit</span>
        </div>
        <div class="next-step-body">
          <h3>A 30-minute prep call.</h3>
          <p>We talk through your work, find the threads worth pulling on, and agree on what's off limits before any tape rolls.</p>
        </div>
      </li>

      <li class="next-step">
        <div class="next-step-marker">
          <span class="next-step-num">03</span>
          <span class="next-step-eta">2 to 3 weeks out</span>
        </div>
        <div class="next-step-body">
          <h3>We schedule the recording.</h3>
          <p>Remote, on Riverside.fm, broadcast-grade audio and video. One hour booked, 45 to 55 minutes used.</p>
        </div>
      </li>

      <li class="next-step">
        <div class="next-step-marker">
          <span class="next-step-num">04</span>
          <span class="next-step-eta">Within 4 weeks</span>
        </div>
        <div class="next-step-body">
          <h3>Light edit, then live.</h3>
          <p>You see the cut before publish. Episode ships across Spotify, Apple, and YouTube, with permanent show notes here.</p>
        </div>
      </li>
    </ol>
  </div>
</section>

<section class="guest-faq-section">
  <div class="container container-narrow">
    <h2 class="faq-h2">Frequently asked questions</h2>

    <div class="faq-list">
      <details class="faq-item">
        <summary>What's the format of the show?</summary>
        <p>
          A relaxed, expert-led conversation. I introduce the topic, you decide how deep we
          dive technically, and I guide the flow so it stays accessible for a broader audience.
        </p>
      </details>

      <details class="faq-item">
        <summary>How do we record?</summary>
        <p>
          Remotely, using <a href="https://riverside.fm" target="_blank" rel="noopener">Riverside.fm</a>
          for high-quality audio and video.
        </p>
      </details>

      <details class="faq-item">
        <summary>How should I prepare?</summary>
        <p>
          Think of a topic you'd like to highlight: a recent project, a key lesson, or a trend
          you want the community to hear. We'll align on it during the discovery call.
        </p>
      </details>

      <details class="faq-item">
        <summary>How long is the podcast?</summary>
        <p>
          The recording session is booked for an hour. Final episodes typically run 45 to 55 minutes.
        </p>
      </details>

      <details class="faq-item">
        <summary>Will I be able to share my links?</summary>
        <p>
          Yes. After being accepted and picking a time slot, you'll receive a brief form to
          upload a photo, add your bio, and include any relevant links. They go in the show notes
          and stay there permanently.
        </p>
      </details>

      <details class="faq-item">
        <summary>How much does it cost to appear on the podcast?</summary>
        <p>
          Nothing. There's no fee, and no monetary compensation either way. It's a conversation,
          not a transaction.
        </p>
      </details>

      <details class="faq-item">
        <summary>What if my application isn't accepted?</summary>
        <p>
          You'll still hear back. Not every fit lines up the first time, and the queue is revisited
          regularly as new themes emerge. A "no for now" is rarely a permanent no.
        </p>
      </details>

      <details class="faq-item">
        <summary>Could I watch a sample episode?</summary>
        <p>
          Yes. Browse the
          <a href="">full episode archive</a>, or watch on
          <a href="https://www.youtube.com/@PreVettedPodcast" target="_blank" rel="noopener">YouTube</a>
          or
          <a href="https://open.spotify.com/show/6BRsI17RhePRjaHccEJ7md" target="_blank" rel="noopener">Spotify</a>.
        </p>
      </details>
    </div>
  </div>
</section>

<style>
.guest-hero-section {
  padding: 56px 0 88px;
  border-bottom: 1px solid var(--line);
  position: relative;
}

.breadcrumb {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-muted);
  margin-bottom: 36px;
}
.breadcrumb a {
  color: var(--ink-muted);
  text-decoration: none;
  transition: color 0.2s;
}
.breadcrumb a:hover { color: var(--rust); }
.breadcrumb span { margin: 0 10px; }
.breadcrumb .current { color: var(--rust); }

.guest-hero-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 64px;
  align-items: center;
}

.guest-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--rust);
  font-weight: 500;
  margin-bottom: 28px;
}
.guest-hero-pulse {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--rust);
  animation: ghPulse 2s infinite;
}
@keyframes ghPulse {
  0%   { box-shadow: 0 0 0 0 rgba(255, 84, 54, 0.55); }
  70%  { box-shadow: 0 0 0 10px rgba(255, 84, 54, 0); }
  100% { box-shadow: 0 0 0 0 rgba(255, 84, 54, 0); }
}

.guest-hero-content h1 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(40px, 5.4vw, 68px);
  line-height: 1.0;
  letter-spacing: -0.035em;
  color: var(--ink);
  margin-bottom: 28px;
}
.guest-hero-content h1 em {
  font-style: normal;
  color: var(--rust);
  background: linear-gradient(180deg, transparent 60%, rgba(255, 84, 54, 0.18) 60%);
  padding: 0 0.05em;
}

.guest-hero-content .hero-lede {
  font-size: 18px;
  line-height: 1.6;
  color: var(--ink-soft);
  margin-bottom: 16px;
  max-width: 580px;
}
.guest-hero-content .hero-lede a {
  color: var(--ink);
  border-bottom: 1px solid var(--rust);
  text-decoration: none;
  transition: color 0.2s;
}
.guest-hero-content .hero-lede a:hover { color: var(--rust); }

.guest-hero-stats {
  display: flex;
  gap: 40px;
  padding-top: 32px;
  margin-top: 32px;
  border-top: 1px solid var(--line);
  flex-wrap: wrap;
}
.guest-stat { display: flex; flex-direction: column; gap: 6px; }
.guest-stat-num {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 30px;
  letter-spacing: -0.02em;
  color: var(--rust);
  line-height: 1;
}
.guest-stat-label {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-muted);
}

.guest-hero-aside { display: flex; justify-content: center; }
.guest-hero-portrait-frame {
  position: relative;
  width: 100%;
  max-width: 360px;
}
.guest-hero-portrait {
  width: 100%;
  aspect-ratio: 4/5;
  border-radius: 16px;
  object-fit: cover;
  object-position: center 22%;
  display: block;
  box-shadow:
    0 30px 80px -20px rgba(0, 0, 0, 0.7),
    0 0 0 1px var(--line);
  filter: saturate(0.85) contrast(1.05);
}
.guest-hero-portrait-tag {
  position: absolute;
  bottom: -16px;
  left: -16px;
  padding: 14px 18px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  box-shadow: 0 12px 32px -10px rgba(0, 0, 0, 0.6);
}
.ghpt-eyebrow {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--rust);
}
.ghpt-name {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 14px;
  color: var(--ink);
  letter-spacing: -0.01em;
}
.ghpt-role {
  font-family: var(--font-body);
  font-size: 12px;
  color: var(--ink-muted);
}

/* CRITERIA */
.guest-criteria-section { padding: 88px 0 64px; }
.criteria-head { margin-bottom: 40px; max-width: 720px; }
.criteria-eyebrow {
  display: block;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ink-muted);
  margin-bottom: 16px;
}
.criteria-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(28px, 3.4vw, 40px);
  line-height: 1.05;
  letter-spacing: -0.025em;
  color: var(--ink);
}
.criteria-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.criteria-card {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 28px 28px 32px;
  transition: border-color 0.2s, transform 0.2s;
}
.criteria-card:hover { border-color: var(--line-strong); transform: translateY(-3px); }
.criteria-num {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.15em;
  color: var(--rust);
  margin-bottom: 18px;
}
.criteria-card h3 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 19px;
  letter-spacing: -0.015em;
  color: var(--ink);
  margin-bottom: 10px;
}
.criteria-card p {
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.6;
  color: var(--ink-soft);
}

/* FORM */
.guest-form-section {
  padding: 80px 0 96px;
  background: var(--paper);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.form-head { margin-bottom: 40px; max-width: 640px; }
.form-head-eyebrow {
  display: block;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--rust);
  margin-bottom: 12px;
}
.form-head-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(26px, 3vw, 36px);
  letter-spacing: -0.025em;
  color: var(--ink);
  margin-bottom: 14px;
}
.form-head-sub {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.55;
  color: var(--ink-soft);
}

/* Sections */
.form-section {
  border: none;
  padding: 0;
  margin: 0 0 48px;
}
.form-section-title {
  display: flex;
  align-items: baseline;
  gap: 14px;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 20px;
  letter-spacing: -0.015em;
  color: var(--ink);
  padding: 0 0 20px;
  margin: 0 0 28px;
  border-bottom: 1px solid var(--line);
  width: 100%;
}
.form-section-num {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.15em;
  color: var(--rust);
}

.form-row { margin-bottom: 22px; }
.form-row label {
  display: block;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin-bottom: 10px;
  font-weight: 500;
}
.required { color: var(--rust); }
.form-hint {
  display: block;
  margin-top: 8px;
  font-family: var(--font-body);
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--ink-muted);
}

.form-row input[type="text"],
.form-row input[type="email"],
.form-row input[type="url"],
.form-row select,
.form-row textarea {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.5;
  color: var(--ink);
  background: var(--bg);
  transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
}
.form-row textarea {
  resize: vertical;
  min-height: 96px;
  font-family: var(--font-body);
}
.form-row select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23FF5436' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 12px;
  padding-right: 44px;
  cursor: pointer;
}
.form-row input:focus,
.form-row select:focus,
.form-row textarea:focus {
  outline: none;
  border-color: var(--rust);
  background-color: var(--paper-soft);
  box-shadow: 0 0 0 3px rgba(255, 84, 54, 0.1);
}
.form-row input::placeholder,
.form-row textarea::placeholder { color: var(--ink-muted); opacity: 0.7; }

/* Checkbox rows */
.form-row-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.form-row-checkbox input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  border: 1px solid var(--line-strong);
  border-radius: 5px;
  background: var(--bg);
  cursor: pointer;
  position: relative;
  margin-top: 2px;
  transition: all 0.18s;
}
.form-row-checkbox input[type="checkbox"]:hover {
  border-color: var(--rust);
}
.form-row-checkbox input[type="checkbox"]:checked {
  background: var(--rust);
  border-color: var(--rust);
}
.form-row-checkbox input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M3 7.5L6 10.5L11.5 4' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}
.form-row-checkbox label {
  display: block;
  font-family: var(--font-body);
  font-size: 14px;
  letter-spacing: 0;
  text-transform: none;
  font-weight: 400;
  color: var(--ink-soft);
  line-height: 1.55;
  margin: 0;
  cursor: pointer;
}
.form-row-checkbox label a {
  color: var(--ink);
  border-bottom: 1px solid var(--rust);
  text-decoration: none;
  transition: color 0.2s;
}
.form-row-checkbox label a:hover { color: var(--rust); }

.guest-form-submit-wrap { padding-top: 16px; }
.btn-submit {
  display: inline-flex;
  align-items: center;
  background: var(--rust);
  color: #fff;
  padding: 16px 32px;
  border: none;
  border-radius: 999px;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.01em;
  cursor: pointer;
  transition: all 0.2s;
}
.btn-submit:hover {
  background: var(--rust-deep);
  transform: translateY(-1px);
}

.form-fineprint {
  margin-top: 18px;
  font-size: 13px;
  color: var(--ink-muted);
}
.form-fineprint a {
  color: var(--ink-soft);
  border-bottom: 1px solid var(--rust);
  text-decoration: none;
  transition: color 0.2s;
}
.form-fineprint a:hover { color: var(--rust); }

/* WHAT HAPPENS NEXT */
.guest-next-section { padding: 96px 0; }
.next-head { margin-bottom: 48px; max-width: 720px; }
.next-eyebrow {
  display: block;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--rust);
  margin-bottom: 16px;
}
.next-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--ink);
}

.next-timeline {
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative;
}
.next-timeline::before {
  content: '';
  position: absolute;
  left: 16px;
  top: 24px;
  bottom: 24px;
  width: 1px;
  background: linear-gradient(180deg, var(--rust) 0%, var(--line) 30%, var(--line) 100%);
}

.next-step {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 40px;
  padding: 24px 0;
  position: relative;
}
.next-step-marker {
  display: flex;
  align-items: baseline;
  gap: 16px;
  padding-left: 48px;
  position: relative;
}
.next-step-marker::before {
  content: '';
  position: absolute;
  left: 10px;
  top: 8px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: var(--bg);
  border: 2px solid var(--rust);
  box-shadow: 0 0 0 4px var(--bg);
}
.next-step-num {
  font-family: var(--font-mono);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--rust);
}
.next-step-eta {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--ink-muted);
}
.next-step-body h3 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 22px;
  letter-spacing: -0.02em;
  color: var(--ink);
  margin-bottom: 8px;
  line-height: 1.2;
}
.next-step-body p {
  font-family: var(--font-body);
  font-size: 15.5px;
  line-height: 1.6;
  color: var(--ink-soft);
}

/* TESTIMONIALS / What to expect */
.guest-testimonials-section {
  padding: 80px 0;
  background: var(--paper);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.gt-label {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--rust);
  margin-bottom: 40px;
  text-align: center;
}
.gt-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
.gt-card {
  background: var(--paper-soft);
  border: 1px solid var(--line);
  border-left: 3px solid var(--rust);
  padding: 28px 32px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  border-radius: 8px;
}
.gt-pillar-label {
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--rust);
}
.gt-pillar-body {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  color: var(--ink-soft);
  margin: 0;
}

/* FAQ */
.guest-faq-section { padding: 96px 0 120px; }

.faq-h2 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--ink);
  margin-bottom: 40px;
}

.faq-list { border-top: 1px solid var(--line); }

.faq-item { border-bottom: 1px solid var(--line); }

.faq-item summary {
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.015em;
  color: var(--ink);
  padding: 24px 40px 24px 0;
  cursor: pointer;
  list-style: none;
  position: relative;
  transition: color 0.2s;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after {
  content: '+';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--font-mono);
  font-size: 22px;
  color: var(--rust);
  font-weight: 300;
  transition: transform 0.2s;
}
.faq-item[open] summary::after { content: '\2212'; }
.faq-item summary:hover { color: var(--rust); }

.faq-item p {
  padding: 0 40px 24px 0;
  font-size: 16px;
  line-height: 1.65;
  color: var(--ink-soft);
}
.faq-item p a {
  color: var(--ink);
  border-bottom: 1px solid rgba(255, 84, 54, 0.45);
  text-decoration: none;
  transition: color 0.2s, border-color 0.2s;
}
.faq-item p a:hover { color: var(--rust); border-bottom-color: var(--rust); }

@media (max-width: 880px) {
  .guest-hero-grid { grid-template-columns: 1fr; gap: 48px; }
  .guest-hero-aside { order: -1; }
  .guest-hero-portrait-frame { max-width: 280px; }
  .criteria-grid { grid-template-columns: 1fr; }
  .gt-grid { grid-template-columns: 1fr; }
  .next-step { grid-template-columns: 1fr; gap: 12px; }
  .next-step-marker { padding-left: 40px; }
  .next-step-body { padding-left: 40px; }
  .next-timeline::before { left: 12px; }
  .next-step-marker::before { left: 6px; }
}
</style>
