#sintro-connected { color-scheme:light; --paper:#fcf9f3; --ink:#33312b; --accent:#ba5435; --line:#ddd7ca; --muted:#6c665b; --yellow:#f2df9b; --lilac:#e0dcee; --peach:#f3ccb6; --brown:#824926; --purple:#64507b; --sans:'DM Sans',Arial,sans-serif; --serif:'Instrument Serif',Georgia,serif; --ease:cubic-bezier(.2,0,0,1); width:100%; max-width:1280px; margin:auto; background:var(--paper); color:var(--ink); font:400 14px/1.6 var(--sans); container-type:inline-size; overflow:clip; }
#sintro-connected * { box-sizing:border-box; }
#sintro-connected :where(h1,h2,h3,p) { margin:0; color:inherit; }
#sintro-connected :where(a) { color:inherit; text-decoration:none; }
#sintro-connected :where(button,summary,a) { -webkit-tap-highlight-color:transparent; }
#sintro-connected button { font:inherit; color:inherit; }
#sintro-connected ::selection { background:var(--yellow); color:var(--ink); }
#sintro-connected p { text-wrap:pretty; }
#sintro-connected em { font-weight:400; }
#sintro-connected .sn-nav { min-height:100px; display:flex; align-items:center; justify-content:space-between; gap:22px; margin:0 5.5%; position:relative; z-index:3; }
#sintro-connected .sn-logo { display:inline-flex; align-items:center; gap:4px; font-size:37px; font-weight:700; letter-spacing:-1.8px; line-height:1; }
#sintro-connected .sn-star { display:inline-block; position:relative; width:1em; height:1em; flex:none; vertical-align:-.1em; color:var(--accent); }
#sintro-connected .sn-star i { position:absolute; width:1.6px; height:100%; left:calc(50% - .8px); top:0; background:currentColor; border-radius:2px; }
#sintro-connected .sn-star i:nth-child(2) { transform:rotate(45deg); }
#sintro-connected .sn-star i:nth-child(3) { transform:rotate(90deg); }
#sintro-connected .sn-star i:nth-child(4) { transform:rotate(135deg); }
#sintro-connected .sn-logo .sn-star { font-size:25px; align-self:flex-start; margin-top:-1px; transition:transform 150ms var(--ease); }
#sintro-connected .sn-logo:hover .sn-star { transform:rotate(45deg); }
#sintro-connected .sn-arrow { display:inline-block; width:16px; height:16px; position:relative; flex:none; transition:transform 150ms var(--ease); }
#sintro-connected .sn-arrow::before { content:''; position:absolute; width:17px; height:1.5px; background:currentColor; top:8px; left:0; transform:rotate(-45deg); border-radius:2px; }
#sintro-connected .sn-arrow::after { content:''; position:absolute; top:1px; right:1px; width:11px; height:11px; border-top:1.5px solid currentColor; border-right:1.5px solid currentColor; }
#sintro-connected a:hover .sn-arrow { transform:translate(2px,-2px); }
#sintro-connected .desktop-nav { display:flex; gap:26px; font-size:13px; }
#sintro-connected .desktop-nav a { padding:12px 0; }
#sintro-connected .desktop-nav a:hover { color:var(--accent); }
#sintro-connected .sn-nav-cta { display:inline-flex; align-items:center; gap:14px; border:1px solid var(--line); border-radius:99px; padding:11px 16px; font-size:12px; }
#sintro-connected .mobile-nav { display:none; }
#sintro-connected .eyebrow { font-size:11px; letter-spacing:1.3px; line-height:1.6; font-weight:500; }
#sintro-connected .hero { padding:62px 7% 54px; text-align:center; }
#sintro-connected h1 { font:400 clamp(48px,7.8cqw,85px)/1.04 var(--serif); letter-spacing:-1.6px; margin:24px 0 23px; }
#sintro-connected h1 em { color:var(--accent); }
#sintro-connected .hero-line { display:block; }
#sintro-connected .hero .lead { font-size:16px; line-height:1.85; color:var(--muted); max-width:580px; margin:0 auto; }
#sintro-connected .sn-button { display:inline-flex; align-items:center; justify-content:center; gap:24px; border:0; border-radius:99px; padding:17px 24px; font-size:14px; font-weight:500; line-height:1.4; background:var(--ink); color:var(--paper); transition:transform 150ms var(--ease),opacity 150ms; }
#sintro-connected .sn-button:hover { opacity:.87; }
#sintro-connected .sn-button:active { transform:scale(.96); }
#sintro-connected .hero .sn-button { margin-top:27px; }
#sintro-connected .signoff { display:flex; align-items:center; justify-content:center; gap:9px; font-size:12px; margin-top:20px; color:var(--muted); }
#sintro-connected .signoff .sn-star { font-size:17px; }
#sintro-connected .services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding:10px 5.5% 54px; }
#sintro-connected .service { border-radius:140px 140px 6px 6px; padding:24px 24px 25px; display:flex; flex-direction:column; position:relative; }
#sintro-connected .yellow { background:var(--yellow); }
#sintro-connected .lilac { background:var(--lilac); }
#sintro-connected .peach { background:var(--peach); }
#sintro-connected .illustration { position:relative; height:178px; width:100%; color:var(--brown); }
#sintro-connected .flower-shape { width:128px; height:128px; position:absolute; top:calc(50% - 64px); left:calc(50% - 64px); transition:transform 150ms var(--ease); }
#sintro-connected .petal { position:absolute; width:35px; height:61px; border:1px solid currentColor; border-radius:50%; left:calc(50% - 17.5px); top:calc(50% - 61px); transform-origin:50% 100%; transform:rotate(var(--angle)); }
#sintro-connected .petal:nth-child(1) { --angle:0deg; }
#sintro-connected .petal:nth-child(2) { --angle:60deg; }
#sintro-connected .petal:nth-child(3) { --angle:120deg; }
#sintro-connected .petal:nth-child(4) { --angle:180deg; }
#sintro-connected .petal:nth-child(5) { --angle:240deg; }
#sintro-connected .petal:nth-child(6) { --angle:300deg; }
#sintro-connected .flower-center { position:absolute; width:20px; height:20px; border-radius:50%; background:currentColor; top:calc(50% - 10px); left:calc(50% - 10px); }
#sintro-connected .rings span { position:absolute; width:67px; height:90px; border:12px solid var(--purple); border-radius:50%; top:calc(50% - 45px); transform:rotate(38deg); transition:transform 150ms var(--ease); }
#sintro-connected .rings span:first-child { left:calc(50% - 48px); }
#sintro-connected .rings span:last-child { left:calc(50% - 14px); border-style:double; }
#sintro-connected .sheets span { width:78px; height:95px; border:1px solid var(--brown); border-radius:45px 45px 3px 3px; background:var(--peach); position:absolute; top:calc(50% - 47px); left:calc(50% - 39px); transition:transform 150ms var(--ease); }
#sintro-connected .sheets span:first-child { transform:rotate(-19deg) translate(-8px,0); }
#sintro-connected .sheets span:last-child { transform:rotate(19deg) translate(8px,0); background:var(--brown); }
#sintro-connected .service-label { font-size:11px; letter-spacing:.9px; margin:12px 0 16px; }
#sintro-connected .service h2 { font:400 35px/1.06 var(--serif); letter-spacing:-.5px; min-height:2.12em; }
#sintro-connected .service p { font-size:14px; line-height:1.8; margin:16px 0 24px; }
#sintro-connected .service-bottom { margin-top:auto; font-size:11px; display:flex; align-items:center; justify-content:space-between; border-top:1px solid color-mix(in srgb,var(--ink) 20%,transparent); padding-top:16px; gap:8px; min-height:44px; }
#sintro-connected .about { margin:0 5.5%; display:grid; grid-template-columns:1fr 1.6fr; gap:36px; padding:62px 0 64px; border-top:1px solid var(--line); }
#sintro-connected .about h2 { font:400 51px/1.06 var(--serif); letter-spacing:-.7px; }
#sintro-connected .about-copy>p { font-size:16px; line-height:1.85; margin-top:23px; color:var(--muted); max-width:610px; }
#sintro-connected .about-copy>.about-note { color:var(--accent); font-size:13px; }
#sintro-connected .particle-art { width:min(100%,300px); aspect-ratio:1; position:relative; margin:28px auto 0; color:var(--brown); }
#sintro-connected .particle-art canvas { display:block; width:100%; height:100%; }
#sintro-connected .particle-art .static-orbit { position:absolute; inset:20%; border:1px solid var(--line); border-radius:50%; }
#sintro-connected .particle-art .static-orbit:nth-child(2) { transform:scaleX(.45) rotate(40deg); }
#sintro-connected .particle-art .static-orbit:nth-child(3) { transform:scaleX(.45) rotate(-40deg); }
#sintro-connected .particle-art.ready .static-orbit { display:none; }
#sintro-connected .art-caption { text-align:center; font-size:11px; color:var(--muted); margin-top:7px; letter-spacing:.4px; }
#sintro-connected .team { margin:0 5.5%; padding:8px 0 66px; display:grid; grid-template-columns:1fr 1.6fr; gap:36px; align-items:center; }
#sintro-connected .team-heading h2 { font:400 38px/1.1 var(--serif); letter-spacing:-.7px; margin-top:18px; }
#sintro-connected .person { display:flex; gap:28px; padding:30px; align-items:center; background:var(--lilac); border-radius:6px; }
#sintro-connected .monogram { flex:none; width:122px; height:145px; display:flex; align-items:center; justify-content:center; font:italic 400 68px/1 var(--serif); letter-spacing:-3px; border:1px solid color-mix(in srgb,var(--purple) 35%,transparent); border-radius:70px 70px 6px 6px; position:relative; color:var(--purple); }
#sintro-connected .monogram .sn-star { position:absolute; top:17px; right:17px; font-size:23px; color:var(--purple); }
#sintro-connected .person h3 { font:400 43px/1.1 var(--serif); letter-spacing:-.5px; margin-top:7px; }
#sintro-connected .person-role { font-size:14px; margin-top:7px; }
#sintro-connected .profile { font-size:12px; display:inline-flex; align-items:center; gap:20px; padding:12px 0 8px; margin-top:8px; border-bottom:1px solid currentColor; min-height:44px; }
#sintro-connected .faq { margin:0 5.5%; display:grid; grid-template-columns:1fr 1.6fr; gap:36px; padding:0 0 65px; }
#sintro-connected .faq h2 { font:400 40px/1.1 var(--serif); }
#sintro-connected .faq details { border-bottom:1px solid var(--line); }
#sintro-connected .faq details:first-child { border-top:1px solid var(--line); }
#sintro-connected .faq summary { display:flex; align-items:center; justify-content:space-between; gap:15px; list-style:none; padding:20px 0; font-size:14px; }
#sintro-connected summary::-webkit-details-marker { display:none; }
#sintro-connected summary>span { font-size:20px; font-weight:400; transition:transform 150ms var(--ease); }
#sintro-connected details[open]>summary>span { transform:rotate(45deg); }
#sintro-connected .faq details p { font-size:14px; color:var(--muted); line-height:1.8; padding-bottom:20px; }
#sintro-connected .contact { margin:0 5.5% 35px; padding:45px 7% 48px; background:var(--yellow); text-align:center; border-radius:6px; position:relative; }
#sintro-connected .contact>.sn-star { display:block; font-size:40px; color:var(--brown); margin:0 auto 22px; }
#sintro-connected .contact h2 { font:400 61px/1.04 var(--serif); letter-spacing:-1px; margin:18px 0; }
#sintro-connected .contact .contact-note { max-width:405px; margin:0 auto 25px; font-size:14px; color:var(--brown); line-height:1.8; }
#sintro-connected .footer { margin:0 5.5%; padding:25px 0; display:flex; align-items:center; justify-content:space-between; gap:18px; font-size:11px; border-top:1px solid var(--line); color:var(--muted); flex-wrap:wrap; }
#sintro-connected .footer .sn-logo { font-size:25px; color:var(--ink); }
#sintro-connected .footer .sn-star { font-size:18px; }
#sintro-connected .motion-control { padding:10px 0; font-size:11px; color:var(--muted); border:0; background:transparent; text-decoration:underline; text-underline-offset:4px; min-height:44px; }
#sintro-connected .motion-control[hidden] { display:none; }
#sintro-connected .reveal { opacity:1; transform:none; }
#sintro-connected .sn-pending { opacity:0; transform:translateY(22px); }
#sintro-connected .sn-visible { transition:opacity 800ms var(--ease),transform 800ms var(--ease); transition-delay:var(--delay,0ms); }
#sintro-connected .service.sn-arrive .petal { animation:sn-bloom 1250ms var(--ease) both; animation-delay:calc(var(--delay,0ms) + 100ms); }
#sintro-connected .service.sn-arrive .rings span:first-child { animation:sn-link-left 1250ms var(--ease) both; }
#sintro-connected .service.sn-arrive .rings span:last-child { animation:sn-link-right 1250ms var(--ease) both; }
#sintro-connected .service.sn-arrive .sheets span:first-child { animation:sn-fan-left 1250ms var(--ease) both; }
#sintro-connected .service.sn-arrive .sheets span:last-child { animation:sn-fan-right 1250ms var(--ease) both; }
#sintro-connected .service.sn-arrive .sheets span:nth-child(2) { animation:sn-sheet-rise 1250ms var(--ease) both; }
@keyframes sn-bloom { from { transform:rotate(var(--angle)) scaleY(.18); opacity:.15; } to { transform:rotate(var(--angle)) scaleY(1); opacity:1; } }
@keyframes sn-link-left { from { transform:translateX(-37px) rotate(-5deg); } to { transform:translateX(0) rotate(38deg); } }
@keyframes sn-link-right { from { transform:translateX(37px) rotate(80deg); } to { transform:translateX(0) rotate(38deg); } }
@keyframes sn-fan-left { from { transform:rotate(0) translate(0,18px); } to { transform:rotate(-19deg) translate(-8px,0); } }
@keyframes sn-fan-right { from { transform:rotate(0) translate(0,18px); } to { transform:rotate(19deg) translate(8px,0); } }
@keyframes sn-sheet-rise { from { transform:translateY(18px); } to { transform:translateY(0); } }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  #sintro-connected[data-motion="expressive"] .service:hover .flower-shape { transform:rotate(32deg) scale(1.06); }
  #sintro-connected[data-motion="expressive"] .service:hover .rings span:first-child { transform:translateX(-6px) rotate(18deg); }
  #sintro-connected[data-motion="expressive"] .service:hover .rings span:last-child { transform:translateX(6px) rotate(58deg); }
  #sintro-connected[data-motion="expressive"] .service:hover .sheets span:first-child { transform:rotate(-32deg) translate(-13px,-3px); }
  #sintro-connected[data-motion="expressive"] .service:hover .sheets span:last-child { transform:rotate(32deg) translate(13px,-3px); }
}
#sintro-connected[data-motion="off"] *,#sintro-connected[data-motion="off"] *::before,#sintro-connected[data-motion="off"] *::after { animation:none !important; transition:none !important; }
#sintro-connected[data-motion="off"] .sn-pending { opacity:1; transform:none; }
@container (max-width:850px) {
  #sintro-connected .hero .lead { font-size:14px; max-width:490px; }
  #sintro-connected .service { padding:18px 20px 24px; }
  #sintro-connected .service h2 { font-size:29px; }
  #sintro-connected .service p { font-size:12px; }
  #sintro-connected .illustration { height:156px; }
  #sintro-connected .about h2 { font-size:43px; }
  #sintro-connected .about-copy>p { font-size:14px; }
  #sintro-connected .team-heading h2 { font-size:33px; }
  #sintro-connected .person { padding:24px; gap:20px; }
  #sintro-connected .monogram { width:85px; height:113px; font-size:55px; }
  #sintro-connected .monogram .sn-star { font-size:18px; right:12px; top:13px; }
  #sintro-connected .person h3 { font-size:33px; }
  #sintro-connected .profile { font-size:11px; gap:10px; }
  #sintro-connected .faq summary,#sintro-connected .faq details p { font-size:13px; }
  #sintro-connected .faq h2 { font-size:35px; }
}
@container (max-width:760px) {
  #sintro-connected .desktop-nav { display:none; }
  #sintro-connected .sn-nav { min-height:86px; gap:18px; }
  #sintro-connected .sn-nav>.sn-nav-cta { margin-left:auto; }
  #sintro-connected .mobile-nav { display:block; }
  #sintro-connected .mobile-nav summary { display:flex; align-items:center; gap:10px; list-style:none; padding:12px 0 12px 6px; font-size:12px; min-height:44px; }
  #sintro-connected .mobile-nav nav { display:flex; position:absolute; top:calc(100% - 4px); right:0; min-width:210px; flex-direction:column; gap:0; padding:12px; background:var(--paper); border:1px solid var(--line); border-radius:6px; box-shadow:0 8px 24px #0000000c; }
  #sintro-connected .mobile-nav nav a { padding:12px; font-size:14px; }
  #sintro-connected .team { grid-template-columns:1fr; gap:25px; }
}
@container (max-width:560px) {
  #sintro-connected .sn-nav { gap:14px; min-height:82px; }
  #sintro-connected .sn-logo { font-size:30px; }
  #sintro-connected .sn-logo .sn-star { font-size:22px; }
  #sintro-connected .sn-nav-cta { font-size:11px; gap:10px; padding:9px 13px; min-height:44px; }
  #sintro-connected .hero { padding:36px 5.5% 34px; }
  #sintro-connected h1 { font-size:clamp(36px,10.9cqw,55px); letter-spacing:-1.2px; margin:24px 0; }
  #sintro-connected .hero .lead { font-size:14px; line-height:1.85; }
  #sintro-connected .hero .eyebrow { font-size:10px; letter-spacing:1.1px; }
  #sintro-connected .sn-button { font-size:12px; padding:16px 20px; gap:22px; }
  #sintro-connected .signoff { font-size:11px; }
  #sintro-connected .services { grid-template-columns:1fr; gap:18px; padding-bottom:42px; }
  #sintro-connected .service { padding:18px 28px 25px; border-radius:140px 140px 6px 6px; }
  #sintro-connected .illustration { height:155px; }
  #sintro-connected .service h2 { font-size:37px; min-height:0; }
  #sintro-connected .service p { font-size:14px; }
  #sintro-connected .service-bottom { font-size:11px; }
  #sintro-connected .about { grid-template-columns:1fr; gap:26px; padding:34px 0 46px; }
  #sintro-connected .about-art { display:grid; grid-template-columns:1fr 92px; align-items:center; }
  #sintro-connected .particle-art { width:92px; margin:0; }
  #sintro-connected .art-caption { display:none; }
  #sintro-connected .about h2 { font-size:42px; }
  #sintro-connected .about-copy>p { font-size:14px; margin-top:21px; }
  #sintro-connected .team { padding-bottom:45px; }
  #sintro-connected .team-heading h2 { font-size:34px; }
  #sintro-connected .person { padding:23px; gap:20px; }
  #sintro-connected .faq { grid-template-columns:1fr; gap:24px; padding-bottom:44px; }
  #sintro-connected .faq summary { font-size:13px; padding:18px 0; }
  #sintro-connected .faq details p { font-size:13px; }
  #sintro-connected .contact { padding:34px 20px 37px; }
  #sintro-connected .contact h2 { font-size:43px; }
  #sintro-connected .contact .contact-note { font-size:13px; }
  #sintro-connected .footer { column-gap:12px; row-gap:8px; }
  #sintro-connected .footer-tagline { width:100%; order:4; }
}
@container (max-width:350px) {
  #sintro-connected .sn-nav>.sn-nav-cta { display:none; }
  #sintro-connected .mobile-nav { margin-left:auto; }
  #sintro-connected .person { gap:14px; padding:18px; }
  #sintro-connected .monogram { width:66px; height:97px; font-size:46px; }
  #sintro-connected .person h3 { font-size:30px; }
}
@media (prefers-reduced-motion:reduce) {
  #sintro-connected *,#sintro-connected *::before,#sintro-connected *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  #sintro-connected .sn-pending { opacity:1; transform:none; }
}
