.s-intro{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding-block:clamp(64px,9vw,132px);
  background:var(--c-bg);
  color:var(--c-text);
  border-block-end:1px solid var(--c-border);
}
.s-intro::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset-block-start:-32%;
  inset-inline-end:-14%;
  inline-size:min(760px,92vw);
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle at center,var(--c-secondary),transparent 68%);
  opacity:.14;
  pointer-events:none;
}
.s-intro__grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:center;
  gap:clamp(32px,5vw,72px);
}
.s-intro__copy{max-inline-size:56ch;}

.s-intro__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin:0 0 20px;
  font-family:var(--font-body);
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--c-secondary);
}
.s-intro__eyebrow::before{
  content:"";
  inline-size:32px;
  block-size:1px;
  background:currentColor;
  opacity:.7;
}

.s-intro__title{
  margin:0 0 24px;
  font-family:var(--font-head);
  font-weight:600;
  font-size:clamp(2rem,4.2vw,3.5rem);
  line-height:1.16;
  letter-spacing:-.01em;
  color:var(--c-secondary);
  background:linear-gradient(100deg,var(--c-accent),var(--c-secondary) 58%,var(--c-secondary));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
  .s-intro__title{background:none;color:var(--c-secondary);-webkit-text-fill-color:currentColor;}
}

.s-intro__text{
  margin:0 0 28px;
  font-family:var(--font-body);
  font-size:clamp(1rem,1.15vw,1.12rem);
  line-height:1.85;
  color:var(--c-text);
  opacity:.82;
}

.s-intro__promise{
  margin:0;
  padding-inline-start:20px;
  border-inline-start:2px solid var(--c-secondary);
  font-family:var(--font-head);
  font-size:clamp(1.02rem,1.3vw,1.2rem);
  line-height:1.7;
  color:var(--c-accent);
}

.s-intro__media{
  position:relative;
  margin:0;
  aspect-ratio:4/5;
  border-radius:var(--radius-lg);
  overflow:hidden;
  background:var(--c-surface);
  box-shadow:var(--shadow-md);
}
.s-intro__media img{
  display:block;
  inline-size:100%;
  block-size:100%;
  object-fit:cover;
  filter:contrast(1.05) saturate(.95);
}
.s-intro__media::after{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid var(--c-secondary);
  border-radius:calc(var(--radius-lg) - 8px);
  opacity:.35;
  pointer-events:none;
}

@media (max-width:900px){
  .s-intro__grid{grid-template-columns:1fr;gap:40px;}
  .s-intro__copy{max-inline-size:none;}
  .s-intro__media{aspect-ratio:16/11;}
}
@media (max-width:600px){
  .s-intro{padding-block:56px;}
  .s-intro__title{font-size:clamp(1.75rem,7vw,2.4rem);}
  .s-intro__eyebrow{font-size:.72rem;letter-spacing:.2em;}
  .s-intro__media{aspect-ratio:4/3;border-radius:var(--radius);}
  .s-intro__media::after{inset:8px;border-radius:calc(var(--radius) - 6px);}
}
