/* Namespaced styles load after the legacy theme and WooCommerce. */
@font-face { font-family:Sora; font-style:normal; font-weight:100 800; font-display:swap; src:url('/css/webfonts/sora-latin.woff2') format('woff2'); }
body.seo500-wp { margin:0; padding:0; background:#fff; color:#14121a; font-family:Sora,sans-serif; }
.s5-header,.s5-shop,.s5-footer { font-family:Sora,sans-serif; line-height:1.5; }
.s5-header *,.s5-shop *,.s5-footer * { box-sizing:border-box; }
.s5-header a,.s5-shop a,.s5-footer a { text-decoration:none; }
.s5-container { width:100%; max-width:1280px; margin:0 auto; padding:0 32px; }
.s5-header { position:sticky; top:0; z-index:1000; background:rgba(255,255,255,.94); backdrop-filter:blur(12px); box-shadow:0 1px 4px #0000000d; color:#44403c; }
.admin-bar .s5-header { top:32px; }
.s5-nav { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:80px; }
.s5-header .s5-nav { max-width:1536px; min-height:88px; }
.s5-logo { flex-shrink:0; display:flex; align-items:center; }
.s5-logo img { display:block; height:44px; width:auto; max-width:none; }
.s5-header .s5-links { display:flex; align-items:center; gap:28px; padding:0; margin:0; list-style:none; }
.s5-nav-item { position:relative; display:flex; align-items:center; margin:0; }
.s5-header .s5-nav-item>a { padding:8px 0; color:#333; font-size:14px; font-weight:500; white-space:nowrap; border-radius:8px; }
.s5-header .s5-nav-item>a:hover,.s5-header .s5-submenu a:hover { color:#1e90ff; }
.s5-submenu-toggle { border:0; background:none; color:#44403c; padding:6px 4px; cursor:pointer; line-height:1; }
.s5-header .s5-submenu { position:absolute; top:100%; left:50%; transform:translateX(-50%); display:none; min-width:240px; max-width:320px; margin:0; padding:8px; list-style:none; background:#fff; border:1px solid #0000000d; border-radius:12px; box-shadow:0 12px 40px #00000014; }
.s5-header .s5-submenu a { display:block; color:#57534e; font-size:14px; padding:8px 12px; border-radius:8px; }
.s5-header .s5-submenu a:hover { background:#f9f5fb; }
.s5-nav-item[data-open] .s5-submenu,.s5-nav-item:focus-within .s5-submenu { display:block; }
.s5-nav-actions { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.s5-header .s5-button,.s5-shop .s5-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 24px; border:1px solid transparent; border-radius:999px; font-weight:600; font-size:14px; line-height:1.2; white-space:nowrap; transition:color .2s,border-color .2s,filter .2s; }
.s5-header .s5-button { padding:12px 24px; }
.s5-header .s5-button-primary,.s5-shop .s5-button-primary { color:#fff; background:linear-gradient(90deg,#1e90ff,#7ec8f2); box-shadow:0 10px 20px -10px #1e90ff99; }
.s5-button-primary:hover { filter:brightness(1.05); }
.s5-header .s5-button-outline,.s5-shop .s5-button-outline { color:#292524; background:#fff; border-color:#e7e5e4; }
.s5-header .s5-button-outline:hover,.s5-shop .s5-button-outline:hover { border-color:#1e90ff; color:#1670c7; }
.s5-menu-toggle { display:none; width:40px; height:40px; border:0; border-radius:12px; background:#f5f5f4; color:#57534e; align-items:center; justify-content:center; cursor:pointer; }
.s5-cta-short { display:none; }
.s5-skip { position:fixed; left:16px; top:-100px; z-index:100001; padding:12px; background:#fff; color:#1670c7; border:2px solid #1670c7; border-radius:8px; }
.s5-skip:focus { top:8px; }
.s5-header a:focus-visible,.s5-header button:focus-visible,.s5-shop a:focus-visible,.s5-footer a:focus-visible { outline:3px solid #1670c7; outline-offset:4px; }
.s5-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
body.seo500-wp .site-main { padding-top:0; }
.s5-shop { color:#292524; background:#fff; }
.s5-shop-hero { padding:24px 0 80px; background:linear-gradient(#f9f5fb,#fff); text-align:center; }
.s5-breadcrumb { display:flex; gap:10px; margin-bottom:44px; font-size:13px; color:#78716c; }
.s5-breadcrumb a { color:#57534e; }
.s5-eyebrow { display:inline-block; font-size:11px; font-weight:700; letter-spacing:.14em; color:#1670c7; }
.s5-shop h1 { font-size:clamp(36px,4.5vw,56px); font-weight:600; line-height:1.15; letter-spacing:-.035em; margin:32px 0 28px; color:#14121a; }
.s5-shop h1 span { color:#1670c7; }
.s5-shop-hero p { max-width:760px; margin:0 auto; color:#57534e; font-size:18px; line-height:1.7; }
.s5-hero-actions { display:flex; justify-content:center; gap:12px; margin-top:28px; flex-wrap:wrap; }
.s5-reassurance { display:flex; justify-content:center; gap:24px; flex-wrap:wrap; margin-top:32px; color:#57534e; font-size:12px; }
.s5-reassurance span::before { content:'✓'; display:inline-block; color:#1670c7; font-weight:700; margin-right:7px; }
.s5-shop-services { padding-top:64px; padding-bottom:56px; scroll-margin-top:110px; }
.s5-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:30px; }
.s5-shop h2 { font-size:clamp(26px,3vw,34px); line-height:1.2; font-weight:750; letter-spacing:-.035em; color:#1c1917; margin:10px 0 0; }
.s5-section-heading>p { max-width:360px; margin:0; font-size:14px; line-height:1.7; color:#78716c; }
.s5-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.s5-service-card { display:flex; flex-direction:column; padding:28px; border:1px solid #e7e5e4; border-radius:24px; background:#fff; box-shadow:0 4px 20px #00000003; transition:box-shadow .2s,border-color .2s; }
.s5-service-card:hover { border-color:#a9d3f7; box-shadow:0 12px 36px #1e90ff0a; }
.s5-card-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:26px; }
.s5-service-icon { width:48px; height:48px; display:grid; place-items:center; background:#e8f3fd; color:#1670c7; border-radius:14px; font-size:28px; }
.s5-card-number { color:#a8a29e; font-size:12px; font-weight:600; }
.s5-service-card .s5-card-label { color:#78716c; font-size:12px; margin:0 0 8px; }
.s5-service-card h3 { font-size:22px; letter-spacing:-.03em; font-weight:750; line-height:1.3; margin:0 0 12px; color:#1c1917; }
.s5-card-description { font-size:14px; color:#78716c; line-height:1.7; margin:0; min-height:72px; }
.s5-price { display:flex; align-items:baseline; gap:5px; font-size:52px; font-weight:750; line-height:1.1; letter-spacing:-.05em; margin:26px 0; }
.s5-price span { font-size:24px; color:#78716c; font-weight:500; }
.s5-features { padding:24px 0 0; margin:0 0 28px; list-style:none; border-top:1px solid #f0eeed; font-size:13px; color:#57534e; }
.s5-features li { margin:0 0 12px; display:flex; gap:10px; }
.s5-features li::before { content:'✓'; color:#1670c7; }
.s5-service-card .s5-button { margin-top:auto; width:100%; }
.s5-shop-help { display:flex; justify-content:space-between; align-items:center; gap:36px; padding-top:36px; padding-bottom:36px; margin-bottom:72px; border-radius:24px; background:#e8f3fd; max-width:1216px; }
.s5-shop-help p { color:#57534e; font-size:14px; margin:14px 0 0; max-width:600px; line-height:1.7; }
.s5-help-actions { display:flex; flex-direction:column; align-items:center; gap:14px; flex-shrink:0; }
.s5-text-link { color:#1670c7; font-size:13px; font-weight:600; }
.s5-footer { background:#14121a; color:#fff; padding:80px 0 32px; margin:0; }
.s5-footer-grid { display:grid; grid-template-columns:1.5fr repeat(3,minmax(0,1fr)); gap:40px; padding-bottom:64px; }
.s5-footer .s5-footer-logo { display:inline-block; padding:12px; border-radius:12px; background:#fff; margin-bottom:24px; }
.s5-footer-brand img { display:block; height:48px; width:auto; }
.s5-footer .s5-footer-cta { display:inline-flex; gap:8px; padding:12px 20px; border-radius:999px; background:#fff; color:#14121a; font-weight:600; margin-top:24px; }
.s5-footer .s5-footer-cta:hover { color:#1670c7; }
.s5-footer p { color:#a1a1aa; font-size:14px; line-height:1.7; margin:0; }
.s5-footer h2 { font-size:14px; color:#fff; font-weight:700; text-transform:uppercase; letter-spacing:.025em; margin:0 0 16px; line-height:1.4; }
.s5-footer ul { list-style:none; padding:0; margin:0 0 32px; }
.s5-footer li { margin:0 0 8px; color:#a1a1aa; font-size:14px; }
.s5-footer a { color:#a1a1aa; font-size:14px; }
.s5-footer a:hover { color:#7ec8f2; }
.s5-footer-badges { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.s5-footer-badges span { padding:4px 12px; background:#27272a; color:#d4d4d8; border-radius:8px; font-size:12px; }
.s5-footer-bottom { border-top:1px solid #27272a; padding-top:32px; text-align:center; color:#a1a1aa; font-size:12px; }
@media (hover:hover) and (min-width:1024px) { .s5-nav-item:hover .s5-submenu { display:block; } }
@media (max-width:1399px) { .s5-cta-long { display:none; } .s5-cta-short { display:inline; } .s5-nav { gap:8px; } .s5-header .s5-links { gap:14px; } .s5-header .s5-button { padding:11px 19px; } .s5-header .s5-nav-item>a { font-size:13px; } }
@media (max-width:1023px) {
  .s5-container { padding-left:20px; padding-right:20px; }
  .s5-nav { flex-wrap:wrap; gap:0; padding-top:18px; padding-bottom:18px; }
  .s5-menu-toggle { display:inline-flex; }
  .s5-header .s5-links { display:none; order:3; width:100%; padding:16px 0 0; margin-top:16px; border-top:1px solid #e7e5e4; max-height:calc(100dvh - 140px); overflow-y:auto; }
  .s5-header .s5-links[data-open] { display:block; }
  .s5-nav-item { flex-wrap:wrap; }
  .s5-header .s5-nav-item>a { flex:1; padding:12px; font-size:14px; }
  .s5-submenu-toggle { padding:12px; margin-right:4px; }
  .s5-header .s5-submenu { position:static; transform:none; min-width:0; max-width:none; width:100%; margin-left:12px; border:0; border-left:2px solid #d2e7fb; border-radius:0; box-shadow:none; }
  .s5-nav-item:focus-within .s5-submenu { display:none; }
  .s5-nav-item[data-open] .s5-submenu { display:block; }
  .s5-shop-help { width:calc(100% - 40px); }
  .s5-service-card { padding:24px; }
  .s5-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px) {
  .admin-bar .s5-header { top:46px; }
  .s5-logo img { height:38px; }
  .s5-header .s5-button { padding:9px 12px; font-size:12px; }
  .s5-nav-actions { gap:6px; }
  .s5-shop-hero { padding-bottom:40px; }
  .s5-breadcrumb { margin-bottom:32px; }
  .s5-shop-hero p { font-size:15px; }
  .s5-reassurance { gap:12px 20px; }
  .s5-shop-services { padding-top:40px; padding-bottom:36px; }
  .s5-section-heading { display:block; }
  .s5-section-heading>p { margin-top:16px; }
  .s5-service-grid { grid-template-columns:1fr; gap:16px; }
  .s5-card-description { min-height:0; }
  .s5-shop-help { display:block; margin-bottom:40px; padding-top:28px; padding-bottom:28px; }
  .s5-help-actions { align-items:flex-start; margin-top:24px; }
  .s5-footer { padding-top:48px; }
  .s5-footer-grid { grid-template-columns:1fr; gap:32px; padding-bottom:32px; }
  .s5-footer ul { margin-bottom:24px; }
}
@media (max-width:375px) { .s5-header .s5-button-outline svg { display:none; } .s5-logo img { height:34px; } .s5-container { padding-left:16px; padding-right:16px; } }
@media (prefers-reduced-motion:reduce) { .s5-header *,.s5-shop * { transition:none!important; } }
