body.services-refresh { --services-ink:#1C355E; --services-muted:#536779; --services-ground:#F7F8FA; --services-white:#fff; --services-accent:#9BB9CC; --services-line:rgba(28,53,94,.16); background:var(--services-white); color:var(--services-ink); }
.services-refresh [hidden] { display:none!important; }
.services-refresh ::selection { background:var(--services-accent); color:var(--services-ink); }
.services-refresh :is(input,button) { accent-color:var(--services-ink); caret-color:var(--services-ink); }
.services-refresh :is(a,button,input,summary):focus-visible { outline:3px solid var(--services-ink); outline-offset:5px; }
.services-refresh .services-close a:focus-visible { outline-color:white; }
.services-refresh .services-shell { width:min(1200px,calc(100% - 64px)); max-width:1200px; margin-inline:auto; }
.services-refresh .services-main { font-family:Manrope,Arial,sans-serif; }
.services-refresh .services-main h1 { font-size:clamp(3rem,5vw,4.5rem); font-weight:800; letter-spacing:-.04em; line-height:1.04; margin:0; }
.services-refresh .services-main h2 { font-size:clamp(2rem,3vw,2.75rem); font-weight:800; letter-spacing:-.03em; line-height:1.16; margin:0; text-wrap:balance; }
.services-refresh .services-main h3 { margin:0; font-weight:750; letter-spacing:-.02em; }
.services-refresh .services-main p { color:var(--services-muted); font-size:1rem; line-height:1.65; margin:0; }
.services-refresh .services-main svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.5; flex-shrink:0; }
.services-refresh .button { border-radius:10px; font-size:.9375rem; min-height:48px; padding:14px 20px; gap:18px; box-shadow:none; transform:none; }
.services-refresh .button:hover { box-shadow:none; transform:none; }
.services-refresh .services-text-link { display:inline-flex; align-items:center; gap:14px; color:var(--services-ink); font-size:1rem; font-weight:700; line-height:1.5; text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:1px; }
.services-refresh .services-text-link:hover { text-decoration-thickness:2px; }
.services-refresh .services-hero { display:grid; grid-template-columns:1fr 1.05fr; gap:48px; align-items:center; padding-block:52px 48px; }
.services-refresh .services-hero-copy > p { max-width:36ch; font-size:1.125rem; line-height:1.55; margin-top:22px; }
.services-refresh .services-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px 24px; margin-top:28px; }
.services-refresh .services-actions .dark { white-space:nowrap; }
.services-refresh .services-hero-media { display:grid; grid-template-columns:1fr 1fr; gap:12px; height:348px; }
.services-refresh .services-hero-media img { display:block; width:100%; height:100%; min-width:0; object-fit:cover; border-radius:12px; }
.services-refresh .services-hero-media img:first-child { object-position:52% center; }
.services-refresh .services-hero-media img:last-child { object-position:63% center; }
.services-refresh .services-catalogue { padding-block:40px 56px; scroll-margin-top:104px; }
.services-refresh .services-section-head { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.services-refresh .services-audience { display:inline-flex; flex-shrink:0; padding:3px; gap:3px; background:var(--services-ground); border-radius:10px; }
.services-refresh .services-audience button { border:0; border-radius:8px; background:transparent; color:var(--services-muted); font:650 .9375rem/1.4 Manrope,Arial,sans-serif; padding:11px 18px; min-height:44px; cursor:pointer; transition:background-color 120ms,color 120ms; }
.services-refresh .services-audience [aria-selected=true] { color:white; background:var(--services-ink); }
.services-refresh .services-catalogue .services-intro { margin-top:18px; max-width:75ch; }
.services-refresh .services-panel { margin-top:28px; }
.services-refresh .services-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; align-items:stretch; }
.services-refresh .services-card { min-width:0; margin:0; border:1px solid var(--services-line); border-radius:12px; background:white; overflow:visible; }
.services-refresh .services-card-link { display:flex; flex-direction:column; height:100%; color:var(--services-ink); text-decoration:none; border-radius:12px; transition:background-color 140ms; }
.services-refresh .services-card-surface { display:flex; flex-direction:column; height:100%; border-radius:12px; }
.services-refresh .services-card-link:hover { background:var(--services-ground); }
.services-refresh :is(.services-card-link,.services-card-surface) > img { display:block; width:100%; height:184px; object-fit:cover; border-radius:12px 12px 0 0; }
.services-refresh .services-card:nth-child(2) img { object-position:64% 45%; }
.services-refresh .services-card-copy { display:flex; flex-direction:column; flex:1; padding:26px 24px 24px; }
.services-refresh .services-card h3 { font-size:1.5rem; line-height:1.25; }
.services-refresh .services-card .services-card-need { margin-top:14px; color:var(--services-ink); font-size:1.0625rem; font-weight:650; line-height:1.45; min-height:3.1em; }
.services-refresh .services-card .services-card-description { margin-top:12px; font-size:1rem; line-height:1.6; }
.services-refresh .services-card-offer { padding-top:28px; margin-top:auto; }
.services-refresh .services-main .services-card-price { color:var(--services-ink); font-size:1.6rem; font-weight:750; line-height:1.4; letter-spacing:-.025em; font-variant-numeric:tabular-nums; }
.services-refresh .services-card-price span { color:var(--services-muted); font-size:.875rem; font-weight:500; letter-spacing:0; white-space:nowrap; }
.services-refresh .services-main .services-card-condition { font-size:.875rem; line-height:1.55; margin-top:7px; }
.services-refresh .services-card .services-card-condition { min-height:3.1em; }
.services-refresh .services-card-action { display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--services-ink); font-size:.9375rem; line-height:1.5; font-weight:700; margin-top:24px; }
.services-refresh .services-card-link:hover .services-card-action { text-decoration:underline; text-underline-offset:5px; }
.services-refresh .services-choice-help { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:26px 0 18px; }
.services-refresh .services-choice-help h3 { font-size:1.125rem; line-height:1.4; }
.services-refresh .services-choice-help p { margin-top:5px; }
.services-refresh .services-choice-help a { flex-shrink:0; }
.services-refresh .services-main .services-price-note { font-size:.875rem; max-width:90ch; }
.services-refresh .services-card .services-card-action-primary { background:var(--services-ink); color:white; border-radius:8px; padding:13px 16px; min-height:48px; }
.services-refresh .services-card-upcoming { background:var(--services-ground); }
.services-refresh .services-card-upcoming .services-card-offer { padding-bottom:4px; }
.services-refresh .services-main .services-card-development { color:var(--services-ink); font-size:1rem; font-weight:750; line-height:1.5; margin-bottom:18px; }
.services-refresh .services-main .services-upcoming-note { font-size:.875rem; line-height:1.6; margin-top:8px; }
.services-refresh .services-individual-grid .services-card:last-child img { object-position:center top; }
.services-refresh .services-founder { display:grid; grid-template-columns:minmax(0,1fr) 232px; align-items:center; gap:36px 72px; border-top:1px solid var(--services-line); padding-block:64px 0; }
.services-refresh .services-founder-copy { max-width:64ch; }
.services-refresh .services-founder-copy p { margin-top:22px; font-size:1.0625rem; }
.services-refresh .services-founder-copy a { margin-top:22px; }
.services-refresh .services-founder > img { width:232px; height:260px; border-radius:12px; object-fit:cover; object-position:center 24%; }
.services-refresh .services-method { grid-column:1/-1; border:1px solid var(--services-line); border-radius:12px; background:var(--services-ground); }
.services-refresh .services-method summary { display:flex; align-items:center; justify-content:space-between; gap:20px; list-style:none; cursor:pointer; padding:22px 24px; font-size:1rem; line-height:1.5; font-weight:700; }
.services-refresh summary::-webkit-details-marker { display:none; }
.services-refresh .services-disclosure-icon { position:relative; display:inline-block; flex:0 0 20px; width:20px; height:20px; }
.services-refresh .services-disclosure-icon::before,.services-refresh .services-disclosure-icon::after { content:''; position:absolute; background:currentColor; top:9px; left:3px; width:14px; height:1.5px; }
.services-refresh .services-disclosure-icon::after { transform:rotate(90deg); }
.services-refresh details[open] > summary .services-disclosure-icon::after { transform:rotate(0); }
.services-refresh .services-method-content { padding:0 24px 28px; }
.services-refresh .services-method-content > h3 { font-size:1.5rem; line-height:1.3; margin:8px 0 24px; }
.services-refresh .services-method-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.services-refresh .services-method-grid h4 { margin:0 0 10px; font-size:1.0625rem; line-height:1.4; }
.services-refresh .services-method-content > a { margin-top:24px; }
.services-refresh .services-followup { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:34px 0; margin-top:48px; border-block:1px solid var(--services-line); }
.services-refresh .services-followup h2 { font-size:1.625rem; line-height:1.25; }
.services-refresh .services-followup p { margin-top:12px; max-width:65ch; }
.services-refresh .services-followup .services-followup-offer { font-size:.875rem; margin-top:8px; }
.services-refresh .services-followup > a { max-width:235px; flex-shrink:0; }
.services-refresh .services-close { display:grid; grid-template-columns:1fr auto; gap:48px; align-items:center; margin-top:64px; margin-bottom:64px; background:var(--services-ink); border-radius:12px; padding:44px; }
.services-refresh .services-close h2 { color:white; }
.services-refresh .services-close > div > p { color:white; margin-top:18px; max-width:57ch; }
.services-refresh .services-close .button { background:white; color:var(--services-ink); border-color:white; white-space:nowrap; }
.services-refresh .services-close .button:hover { background:var(--services-ground); }
.services-refresh .services-close-action > p { font-size:.8125rem!important; line-height:1.5; margin-top:12px!important; }
.services-refresh .site-footer { background:var(--services-ground); color:var(--services-ink); margin-top:0; }
.services-refresh .site-footer :is(h3,a,p,span,.form-note) { color:var(--services-ink); }
.services-refresh .site-footer p,.services-refresh .site-footer .newsletter-privacy,.services-refresh .site-footer .form-note { color:var(--services-muted); }
.services-refresh .site-footer .footer-top { width:min(1200px,calc(100% - 64px)); padding:48px 0; margin:auto; gap:44px; grid-template-columns:1fr .85fr 1.25fr; }
.services-refresh .site-footer .swim-brand img { width:auto; height:66px; }
.services-refresh .site-footer .swim-brand span { display:none; }
.services-refresh .site-footer .footer-top > div > h3 { font-size:1rem; margin:0 0 14px; }
.services-refresh .site-footer .footer-top > div > p { font-size:.875rem; line-height:1.65; }
.services-refresh .site-footer .footer-links a { font-size:.9375rem; }
.services-refresh .site-footer .footer-bottom { width:min(1200px,calc(100% - 64px)); margin:auto; padding:22px 0; border-top:1px solid var(--services-line); }
.services-refresh .site-footer .footer-bottom :is(span,a) { color:var(--services-muted); font-size:.8125rem; }
.services-refresh .newsletter-disclosure { margin-top:18px; }
.services-refresh .newsletter-disclosure > summary { display:flex; justify-content:space-between; align-items:center; gap:20px; list-style:none; border:1px solid var(--services-line); border-radius:10px; padding:12px 14px; font-size:.9375rem; font-weight:650; cursor:pointer; }
.services-refresh .newsletter-disclosure .newsletter { display:flex; flex-direction:column; align-items:stretch; gap:14px; margin-top:20px; }
.services-refresh .newsletter-disclosure .newsletter > * { flex:0 0 auto; }
.services-refresh .newsletter input[type=email] { width:100%; flex:none; height:48px; min-height:48px; background:white; color:var(--services-ink); border:1px solid var(--services-line); border-radius:8px; }
.services-refresh .newsletter input::placeholder { color:var(--services-muted); opacity:1; }
.services-refresh .newsletter .newsletter-consent { color:var(--services-ink); font-size:.875rem; line-height:1.55; }
.services-refresh .newsletter .newsletter-consent input { flex:0 0 18px; width:18px; height:18px; }
.services-refresh .newsletter .newsletter-privacy { font-size:.8125rem; line-height:1.55; }
.services-refresh .newsletter .newsletter-privacy a { color:var(--services-ink); text-decoration:underline; }
.services-refresh .newsletter button { background:var(--services-ink); color:white; align-self:flex-start; min-width:145px; border:0; }
.services-refresh .site-footer .newsletter button:hover { background:var(--services-ink); color:white; }
.services-refresh .services-actions .button.dark:hover { background:var(--services-ink); border-color:var(--services-ink); color:white; }
.services-refresh .site-footer .newsletter-disclosure .form-note { font-size:.8125rem; color:var(--services-muted)!important; }
.services-refresh .back-top { box-shadow:none; border:1px solid var(--services-line); border-radius:8px; }
@media(max-width:1100px) {
  .services-refresh .services-hero { gap:28px; }
  .services-refresh .services-hero-media { height:330px; gap:10px; }
  .services-refresh .services-card-grid { gap:16px; }
  .services-refresh .services-card-copy { padding:24px 20px; }
  .services-refresh .services-card h3 { font-size:1.375rem; }
  .services-refresh .services-card-price span { display:block; }
  .services-refresh .services-close { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:900px) {
  .services-refresh .services-hero { grid-template-columns:1fr; padding-block:34px 40px; gap:28px; }
  .services-refresh .services-hero-copy > p { max-width:55ch; }
  .services-refresh .services-hero-media { height:230px; }
  .services-refresh .services-section-head { align-items:flex-start; flex-direction:column; gap:22px; }
  .services-refresh .services-card-grid { grid-template-columns:1fr; gap:22px; }
  .services-refresh :is(.services-card-link,.services-card-surface) { display:grid; grid-template-columns:.85fr 1.15fr; }
  .services-refresh :is(.services-card-link,.services-card-surface) > img { height:100%; min-height:350px; border-radius:12px 0 0 12px; }
  .services-refresh .services-individual-grid :is(.services-card-link,.services-card-surface) > img { aspect-ratio:1; }
  .services-refresh .services-card .services-card-need { min-height:0; }
  .services-refresh .services-card .services-card-condition { min-height:0; }
  .services-refresh .services-card-price span { display:inline; }
  .services-refresh .services-founder { grid-template-columns:1fr 200px; gap:32px; }
  .services-refresh .services-founder > img { width:200px; height:240px; }
  .services-refresh .services-followup { flex-direction:column; align-items:flex-start; gap:24px; }
  .services-refresh .services-followup > a { max-width:none; }
  .services-refresh .site-footer .footer-top { grid-template-columns:1fr 1fr; }
  .services-refresh .site-footer .footer-top > div:last-child { grid-column:1/-1; max-width:480px; }
}
@media(max-width:600px) {
  .services-refresh .services-shell { width:calc(100% - 40px); }
  .services-refresh .services-main h1 { font-size:clamp(2.5rem,10.8vw,2.75rem); line-height:1.08; }
  .services-refresh .services-main h2 { font-size:1.875rem; }
  .services-refresh .services-hero { padding-block:28px 32px; gap:24px; }
  .services-refresh .services-hero-copy > p { font-size:1rem; margin-top:18px; }
  .services-refresh .services-actions { margin-top:22px; gap:18px; }
  .services-refresh .services-hero-media { height:160px; gap:10px; }
  .services-refresh .services-hero-media img { border-radius:10px; }
  .services-refresh .services-hero-media img:first-child { object-position:55% center; }
  .services-refresh .services-hero-media img:last-child { object-position:65% center; }
  .services-refresh .services-catalogue { padding-block:24px 40px; scroll-margin-top:92px; }
  .services-refresh .services-section-head { gap:20px; }
  .services-refresh .services-audience button { padding:11px 15px; }
  .services-refresh .services-panel { margin-top:24px; }
  .services-refresh :is(.services-card-link,.services-card-surface) { display:flex; }
  .services-refresh :is(.services-card-link,.services-card-surface) > img { height:180px; min-height:0; border-radius:12px 12px 0 0; }
  .services-refresh .services-card-copy { padding:24px; }
  .services-refresh .services-card h3 { font-size:1.5rem; }
  .services-refresh .services-card-offer { padding-top:24px; }
  .services-refresh .services-card-action { margin-top:20px; }
  .services-refresh .services-choice-help { display:block; padding-top:28px; }
  .services-refresh .services-choice-help a { margin-top:14px; }
  .services-refresh .services-founder { grid-template-columns:1fr; padding-top:40px; gap:28px; }
  .services-refresh .services-founder-copy { order:1; }
  .services-refresh .services-founder > img { order:2; width:180px; height:210px; }
  .services-refresh .services-method { order:3; }
  .services-refresh .services-founder-copy p { font-size:1rem; }
  .services-refresh .services-method summary { padding:20px; }
  .services-refresh .services-method-content { padding:0 20px 24px; }
  .services-refresh .services-method-grid { grid-template-columns:1fr; gap:24px; }
  .services-refresh .services-followup { margin-top:32px; padding-block:28px; }
  .services-refresh .services-followup h2 { font-size:1.5rem; }
  .services-refresh .services-followup > a { align-items:flex-start; }
  .services-refresh .services-close { margin-block:40px; padding:28px 24px; gap:24px; }
  .services-refresh .services-close .button { width:100%; font-size:.875rem; padding-inline:14px; gap:12px; white-space:normal; }
  .services-refresh .services-close-action > p { font-size:.8125rem; }
  .services-refresh .site-footer .footer-top { width:calc(100% - 40px); grid-template-columns:1fr; gap:32px; padding-block:36px; }
  .services-refresh .site-footer .footer-top > div:last-child { grid-column:auto; max-width:none; }
  .services-refresh .site-footer .footer-bottom { width:calc(100% - 40px); flex-direction:column; align-items:flex-start; gap:12px; }
}
@media(prefers-reduced-motion:reduce) {
  .services-refresh { scroll-behavior:auto; }
  .services-refresh :is(a,button,.services-card-link) { transition:none; transform:none; }
}
