/* SurgiFacts.com content components (snippet 33 + request forms in snippet 08 + About / legal pages).
   Colours: --sfc-* tokens from sf.css only. */

/* ---------------- Listing CTA (sf_listing_cta_block) ---------------- */
.sfc-lcta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 32px;align-items:center;padding:28px 32px;border-radius:16px;background:var(--sfc-light);color:var(--sfc-primary);box-sizing:border-box}
.sfc-lcta__body{min-width:0}
.sfc-lcta__eyebrow{margin:0 0 8px;font:700 12px/1 var(--sf-body,inherit);letter-spacing:.12em;text-transform:uppercase;color:var(--sfc-secondary)}
html body .sfc-lcta .sfc-lcta__title{margin:0 0 8px;font:800 clamp(20px,2.1vw,26px)/1.2 var(--sf-head,inherit);letter-spacing:-.01em;color:var(--sfc-primary-deep)}
.sfc-lcta__text{margin:0;max-width:680px;font-size:15px;line-height:1.65;color:var(--sfc-text)}
.sfc-lcta__actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:220px}
html body .sfc-lcta__link{font:600 14px/1.3 var(--sf-body,inherit);color:var(--sfc-primary);text-align:center;text-decoration:underline;text-underline-offset:3px}
html body .sfc-lcta__link:hover{color:var(--sfc-accent-dark)}
.sfc-lcta__fine{grid-column:1/-1;margin:0;font-size:12.5px;color:var(--sfc-muted)}
html body .sfc-lcta__fine a{color:var(--sfc-primary);text-decoration:underline;text-underline-offset:2px}
.sfc-lcta-band{padding:8px 0 72px;background:var(--sfc-bg)}
.sfc-lcta--inline{margin:8px 0 0}
.sfc-lcta--compact{grid-template-columns:1fr;gap:10px;padding:18px;border-radius:14px}
html body .sfc-lcta--compact .sfc-lcta__title{font-size:17px;margin-bottom:6px}
.sfc-lcta--compact .sfc-lcta__text{font-size:13.5px;line-height:1.55}
.sfc-lcta--compact .sfc-lcta__actions{min-width:0}
html body .sfc-lcta--compact .sf-btn{width:100%;min-height:42px;white-space:normal;text-align:center}
.sfc-lcta--compact .sfc-lcta__fine{font-size:12px}
.sf-dir__side .sfc-lcta--compact{margin-top:16px}
@media(max-width:820px){
  .sfc-lcta{grid-template-columns:1fr;padding:22px 20px}
  .sfc-lcta__actions{min-width:0}
  html body .sfc-lcta .sf-btn{width:100%;white-space:normal;text-align:center}
  .sfc-lcta-band{padding:0 0 48px}
}

/* ---------------- Request forms (snippet 08) ---------------- */
.sfc-formnote{margin:0;font-size:13px;color:var(--sfc-muted)}
.sfc-typenote{margin:-6px 0 4px;padding:10px 14px;border-radius:10px;background:var(--sfc-light-soft);border:1px solid var(--sfc-light-2);font-size:13.5px;line-height:1.55;color:var(--sfc-primary)}
.sfc-typenote[hidden],.sfc-cf[hidden]{display:none!important}
.sfc-star{display:none;color:var(--sfc-accent)}
.sfc-cf.is-req .sfc-star{display:inline}
.sfc-cf>span[id]{font:600 12px/1 var(--sf-body,inherit);letter-spacing:.04em;text-transform:uppercase;color:var(--sfc-muted)}
.sfc-rform .sf-checks input[type=radio]{accent-color:var(--sfc-secondary)}
.sfc-rights span{color:var(--sfc-text)}
.sfc-errlist{margin:6px 0 0;padding-left:20px}
.sfc-errlist li{margin:2px 0}
.sfc-formwrap [data-sf-alert]:focus{outline:2px solid var(--sfc-focus);outline-offset:2px}
.sfc-rform select optgroup{font-weight:700;color:var(--sfc-heading)}
@media(max-width:600px){
  html body .sfc-rform .sf-btn,html body .sfc-formwrap .sf-form .sf-btn{width:100%;white-space:normal}
  html body .sfc-formwrap .sf-field input,html body .sfc-formwrap .sf-field select,html body .sfc-formwrap .sf-field textarea{font-size:16px} /* no zoom on iOS */
  html body .sfc-formwrap input[type=file]{max-width:100%}
}

/* ---------------- About page ---------------- */
.sfc-explore{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
html body .sfc-explore a{display:flex;flex-direction:column;gap:6px;height:100%;box-sizing:border-box;padding:18px 18px 16px;border:1px solid var(--sfc-border);border-radius:12px;background:var(--sfc-surface);color:var(--sfc-text);text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}
html body .sfc-explore a:hover{border-color:var(--sfc-secondary);box-shadow:0 10px 30px color-mix(in srgb,var(--sfc-primary-deep) 8%,transparent);transform:translateY(-1px)}
.sfc-explore strong{font:700 17px/1.3 var(--sf-head,inherit);color:var(--sfc-heading)}
.sfc-explore span{font-size:14px;line-height:1.55}
.sfc-explore .sfc-count{display:inline-block;margin-top:auto;padding-top:6px;font:600 12.5px/1.2 var(--sf-body,inherit);color:var(--sfc-secondary)}
.sfc-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;counter-reset:sfcstep}
.sfc-steps li{position:relative;padding:20px 18px 18px 18px;border-radius:12px;background:var(--sfc-bg-alt);line-height:1.6;counter-increment:sfcstep}
.sfc-steps li:before{content:counter(sfcstep);display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-bottom:10px;border-radius:50%;background:var(--sfc-primary);color:var(--sfc-white);font:700 14px/1 var(--sf-body,inherit)}
.sfc-steps strong{display:block;color:var(--sfc-heading);margin-bottom:4px}
.sfc-note{margin:16px 0 0;padding:14px 16px;border-left:3px solid var(--sfc-accent);background:var(--sfc-surface-soft);border-radius:0 10px 10px 0;font-size:14.5px;line-height:1.6;color:var(--sfc-text)}
@media(max-width:820px){.sfc-steps{grid-template-columns:1fr}}

/* ---------------- 404 ---------------- */
.sfc-404{display:block}
.sfc-404__hero{position:relative;padding:72px 0 64px;background:var(--sfc-gradient);color:var(--sfc-white);overflow:hidden}
.sfc-404__in{max-width:860px}
.sfc-404__logo{display:inline-block;margin-bottom:32px}
html body .sfc-404__logo img{display:block;width:220px;height:auto}
.sfc-404__code{margin:0 0 10px;font:700 13px/1 var(--sf-body,inherit);letter-spacing:.12em;text-transform:uppercase;color:var(--sfc-light)}
html body .sfc-404 h1{margin:0;font:800 clamp(32px,4.6vw,54px)/1.08 var(--sf-head,inherit);letter-spacing:-.02em;color:var(--sfc-white)}
.sfc-404__lead{margin:16px 0 0;max-width:640px;font-size:17px;line-height:1.65;color:color-mix(in srgb,var(--sfc-white) 80%,transparent)}
.sfc-404__search{display:flex;gap:10px;margin-top:28px;max-width:640px}
html body .sfc-404__search input{flex:1;min-width:0;min-height:50px;padding:0 16px;border-radius:10px;border:1px solid transparent;background:var(--sfc-white);color:var(--sfc-heading);font-size:16px}
html body .sfc-404__search input:focus{outline:2px solid var(--sfc-light);outline-offset:2px}
html body .sfc-404__search .sf-btn{min-height:50px}
.sfc-404__search .sf-btn svg{width:18px;height:18px}
.sfc-404__links{padding:56px 0 80px;background:var(--sfc-bg)}
html body .sfc-404__h2{margin:0 0 20px;font:800 24px/1.2 var(--sf-head,inherit);color:var(--sfc-heading)}
.sfc-404__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
html body .sfc-404__card{display:flex;gap:14px;align-items:flex-start;height:100%;box-sizing:border-box;padding:18px;border:1px solid var(--sfc-border);border-radius:12px;background:var(--sfc-surface);color:var(--sfc-text);text-decoration:none;transition:border-color .2s,box-shadow .2s}
html body .sfc-404__card:hover{border-color:var(--sfc-secondary);box-shadow:0 10px 30px color-mix(in srgb,var(--sfc-primary-deep) 8%,transparent)}
.sfc-404__ic{flex:0 0 42px;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:11px;background:var(--sfc-light-soft);color:var(--sfc-secondary)}
.sfc-404__ic svg{width:21px;height:21px}
.sfc-404__ct{display:flex;flex-direction:column;gap:4px;min-width:0}
.sfc-404__ct strong{font:700 16px/1.3 var(--sf-head,inherit);color:var(--sfc-heading)}
.sfc-404__ct span{font-size:14px;line-height:1.5}
.sfc-404__help{margin:28px 0 0;font-size:14.5px;color:var(--sfc-muted)}
html body .sfc-404__help a{color:var(--sfc-secondary)}
@media(max-width:600px){
  .sfc-404__hero{padding:48px 0 44px}
  .sfc-404__logo{margin-bottom:24px}
  html body .sfc-404__logo img{width:180px}
  .sfc-404__search{flex-direction:column}
  .sfc-404__links{padding:40px 0 56px}
}
