/* Page-level odds and ends that do not belong to a component */
.page-links{
  display:flex;gap:.5rem;flex-wrap:wrap;
  margin-top:var(--space-lg);
  font-size:.9rem;
}
.page-links a,
.page-links > span{
  border:1px solid var(--color-border);
  border-radius:var(--radius-sm);
  padding:.35rem .75rem;
}

.single-post .prose{margin-top:0}

.comment-list{list-style:none;margin:var(--space-xl) 0 0;padding:0;max-width:76ch;margin-inline:auto}
.comment-list li{
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  padding:var(--space-md);
  margin-bottom:var(--space-sm);
  background:rgba(11,19,32,.5);
}
.comment-meta{font-size:var(--fs-small);color:var(--color-text-secondary);margin-bottom:.6rem}
.comment-respond{max-width:76ch;margin:var(--space-xl) auto 0}
.comment-form label{display:block;font-size:.9rem;margin-bottom:.35rem}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea{
  width:100%;
  padding:.8rem 1rem;
  margin-bottom:var(--space-sm);
  border:1px solid var(--color-border);
  border-radius:var(--radius-sm);
  background:rgba(255,255,255,.03);
  color:#fff;
}
.comment-form textarea{min-height:150px;resize:vertical}
.comment-form input:focus,
.comment-form textarea:focus{outline:none;border-color:var(--color-border-strong)}
.comment-form .submit{
  background:var(--grad-cta);
  color:#02070E;
  font-weight:700;
  border-radius:var(--radius-pill);
  padding:.85rem 1.6rem;
  cursor:pointer;
}

/* Common contact-form plugin markup, styled to match the theme.
   Selectors are additive so nothing breaks if the plugin is absent. */
.wpcf7-form label,
.wpforms-field-label,
.gform_wrapper label{
  display:block;
  font-size:.88rem;
  font-weight:600;
  margin-bottom:.4rem;
  color:#DCE6F1;
}
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form select,
.wpcf7-form textarea,
.wpforms-field input,
.wpforms-field textarea,
.wpforms-field select,
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper textarea{
  width:100%;
  padding:.85rem 1.05rem;
  border:1px solid var(--color-border);
  border-radius:var(--radius-sm);
  background:rgba(255,255,255,.03);
  color:#fff;
  margin-bottom:var(--space-sm);
}
.wpcf7-form textarea,
.wpforms-field textarea{min-height:150px;resize:vertical}
.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.wpforms-field input:focus,
.wpforms-field textarea:focus{outline:none;border-color:var(--color-border-strong)}
.wpcf7-submit,
.wpforms-submit,
.gform_button{
  background:var(--grad-cta)!important;
  color:#02070E!important;
  border:0!important;
  border-radius:var(--radius-pill)!important;
  padding:.9rem 1.8rem!important;
  font-weight:700!important;
  cursor:pointer;
}

/* ============================================================
   CAREERS
   ============================================================ */

/* Intro reads as a centred statement, not an article. */
.prose--center{text-align:center;max-width:68ch}
.prose--center h2{
  font-size:clamp(1.75rem,3.2vw,2.75rem);
  color:#fff;
  margin-top:0;
}
.prose--center > * + *{margin-top:1.15em}
.prose--center p{font-size:clamp(1rem,1.1vw,1.08rem)}

/* Pull quote. Deliberately the largest type on the page after the H1. */
.careers-statement{
  position:relative;
  padding-block:clamp(3.5rem,8vw,7rem);
  overflow:hidden;
  isolation:isolate;
}
.careers-statement::before{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  translate:-50% -50%;
  width:min(900px,90vw);
  aspect-ratio:2/1;
  z-index:-1;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(25,199,242,.12),transparent 68%);
  filter:blur(8px);
}
.careers-statement__text{
  max-width:min(1060px,92%);
  margin-inline:auto;
  text-align:center;
  font-size:clamp(1.75rem,4.4vw,3.4rem);
  font-weight:700;
  line-height:1.16;
  letter-spacing:-.03em;
  text-wrap:balance;
}

/* People. Photo and quote side by side, alternating so a run of them
   does not march down the page in one rigid column. */
.people-list{display:grid;gap:clamp(2.5rem,5vw,4.5rem)}
.person{
  display:grid;
  grid-template-columns:minmax(0,260px) minmax(0,1fr);
  gap:clamp(1.5rem,3.5vw,3rem);
  align-items:center;
}
.person:nth-child(even) .person__media{order:2}

.person__media{
  position:relative;
  aspect-ratio:4/5;
  border-radius:var(--radius-lg);
  overflow:hidden;
  border:1px solid var(--color-border);
  background:linear-gradient(150deg,#0E2337,#061019);
  display:grid;
  place-items:center;
  box-shadow:0 28px 60px -34px rgba(0,0,0,.95);
}
.person__media img{width:100%;height:100%;object-fit:cover}
.person__initials{
  font-size:2.5rem;
  font-weight:800;
  color:var(--color-primary);
  letter-spacing:.04em;
}

.person__quote{
  margin:0 0 var(--space-md);
  padding-left:1.25rem;
  border-left:2px solid rgba(25,199,242,.45);
}
.person__quote p{
  color:var(--color-text-secondary);
  font-size:clamp(.98rem,1.1vw,1.06rem);
  line-height:1.72;
}
.person__quote p + p{margin-top:.9em}
.person__name{
  font-size:clamp(1.5rem,2.6vw,2.15rem);
  font-weight:700;
  letter-spacing:-.025em;
  color:#fff;
}
.person__role{
  margin-top:.3rem;
  font-size:.86rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--color-primary);
}
.person__link{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  margin-top:.9rem;
  font-size:.86rem;
  font-weight:700;
  color:#DCE6F1;
}
.person__link:hover{color:var(--color-primary)}

/* Life at Sails: full-bleed horizontal strip with scroll snapping. */
.careers-life{padding-bottom:clamp(3.5rem,7vw,6rem)}
.life-strip{
  display:flex;
  gap:clamp(.75rem,1.4vw,1.15rem);
  padding:0 var(--gutter) 1rem;
  margin-top:clamp(1.5rem,3vw,2.5rem);
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:thin;
  scrollbar-color:rgba(25,199,242,.5) transparent;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
}
.life-strip::-webkit-scrollbar{height:6px}
.life-strip::-webkit-scrollbar-track{background:rgba(255,255,255,.04);border-radius:99px}
.life-strip::-webkit-scrollbar-thumb{background:rgba(25,199,242,.45);border-radius:99px}
.life-strip:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}

.life-strip__item{
  flex:0 0 clamp(240px,30vw,380px);
  scroll-snap-align:center;
  border-radius:var(--radius-md);
  overflow:hidden;
  border:1px solid var(--color-border);
}
.life-strip__item img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  transition:transform .6s var(--ease);
}
.life-strip__item:hover img{transform:scale(1.04)}
