.so-site{background:hsl(var(--background));color:#14353b}.so-offer-hero{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);padding-top:4rem;padding-bottom:4rem;align-items:center}.so-offer-copy h1{font-family:var(--font-outfit),sans-serif;font-size:clamp(2.8rem,4.8vw,4.8rem);font-weight:600;line-height:1.08;letter-spacing:-.035em;margin:0 0 1.5rem}.so-offer-copy>p{max-width:47ch;font-size:1.12rem;line-height:1.75}.so-price-line{display:flex;flex-direction:column;gap:.25rem;margin:1.5rem 0 2rem}.so-price-line strong{font-size:1.45rem}.so-price-line span{font-size:.94rem;color:#496269}.so-primary,.so-secondary{display:inline-flex;gap:.65rem;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.2rem;border-radius:12px;font-weight:700;font-size:.95rem;text-decoration:none;cursor:pointer;transition:background-color .18s,transform .18s}.so-primary{background:#b74731;color:#fff;border:1px solid transparent}.so-primary:hover{background:#943b29}.so-secondary{border:1px solid #14353b;color:#14353b;background:#fff}.so-secondary:hover{background:#f0f5f4}.so-primary:active,.so-secondary:active{transform:translateY(1px)}.so-primary:disabled,.so-secondary:disabled{opacity:.5;cursor:not-allowed}.so-text-link{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-weight:600;font-size:.95rem}.so-search{margin:1.5rem 0 1rem}.so-search>label{display:block;font-weight:700;margin-bottom:.65rem}.so-search-input{display:flex;gap:.75rem;align-items:center;background:white;border:1px solid #819596;border-radius:12px;padding:0 1rem;min-height:54px}.so-search-input input{width:100%;min-width:0;background:transparent;outline:none;padding:.85rem 0;font-size:1rem}.so-search-input:focus-within{outline:3px solid #b74731;outline-offset:3px}.so-subtle{font-size:.875rem!important;line-height:1.6!important;color:#496269;margin:.6rem 0}.so-search-results{padding:0;list-style:none;background:white;border:1px solid #a5b5b5;border-radius:12px;overflow:hidden;margin:.8rem 0}.so-search-results li+li{border-top:1px solid #dce4e3}.so-search-results a,.so-search-results button{display:flex;width:100%;align-items:center;justify-content:space-between;text-align:left;padding:.9rem 1rem;gap:1rem;min-height:64px}.so-search-results a:hover,.so-search-results button:hover{background:#eaf3f0}.so-search-results small,.so-search-results strong{display:block}.so-search-results small{margin-top:.3rem;color:#496269;font-size:.8rem}.so-profile{background:white;border-radius:16px;overflow:hidden;color:#14353b}.so-profile-demo{box-shadow:0 20px 50px -20px #14353b40;pointer-events:auto}.so-cover{height:clamp(240px,28vw,420px);position:relative;background:#eaf0ee}.so-cover>img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.so-cover>span{position:absolute;bottom:1rem;left:1rem;background:#fff;color:#14353b;padding:.4rem .7rem;border-radius:6px;font-size:.75rem;font-weight:700}.so-profile-heading{display:flex;gap:1.25rem;align-items:flex-start;flex-wrap:wrap;padding:2rem 2.5rem}.so-profile-heading>div{flex:1;min-width:min(100%,200px)}.so-profile-heading h1,.so-profile-heading h2{font-family:var(--font-outfit),sans-serif;font-weight:600;font-size:clamp(1.8rem,3vw,3rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 .7rem}.so-profile-heading .so-primary{align-self:center}.so-address{display:flex;gap:.4rem;align-items:center;color:#496269;font-size:.9rem;line-height:1.5}.so-intro{font-size:1.15rem;line-height:1.7;margin-top:1rem;max-width:60ch}.so-studio-logo{width:88px;height:88px;-o-object-fit:contain;object-fit:contain;border:1px solid #dce4e3;border-radius:12px;padding:8px}.so-profile-body{padding:0 2.5rem 2.5rem}.so-profile-body>section{border-top:1px solid #dce4e3;padding:1.75rem 0 0;margin-top:1.75rem}.so-profile-body>section:first-child{margin-top:0}.so-profile-body h2{font-family:var(--font-outfit),sans-serif;font-size:1.55rem;line-height:1.3;font-weight:600;margin-bottom:1rem}.so-profile-body p{max-width:70ch;line-height:1.75}.so-preserve{white-space:pre-wrap;overflow-wrap:anywhere}.so-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.so-gallery a{border-radius:12px;overflow:hidden;display:block}.so-gallery img{width:100%;height:100%;aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;transition:transform .25s ease-out}.so-gallery a:hover img{transform:scale(1.035)}.so-class{display:flex;gap:1.5rem;justify-content:space-between;align-items:center;padding:1.25rem 0}.so-class+.so-class{border-top:1px solid #dce4e3}.so-class>div{flex:1}.so-class h3{font-size:1.1rem;font-weight:700}.so-class-meta{display:flex;align-items:center;gap:.4rem;color:#496269;font-size:.85rem;margin:.4rem 0}.so-class .so-text-link{flex-shrink:0}.so-facilities{display:flex;flex-wrap:wrap;gap:.6rem;padding:0;list-style:none}.so-facilities li{background:#eaf3f0;padding:.5rem .8rem;border-radius:6px;font-size:.9rem}.so-links{padding:0;list-style:none}.so-links li+li{border-top:1px solid #dce4e3}.so-links a{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;font-weight:600;text-decoration:underline;text-underline-offset:4px}.so-links span{overflow-wrap:anywhere}.so-example-caption{font-size:.75rem;color:#496269;margin:.9rem .3rem}.so-profile-demo .so-cover{height:245px}.so-profile-demo .so-profile-heading{padding:1.5rem 1.8rem}.so-profile-demo .so-profile-heading h2{font-size:1.7rem}.so-profile-demo .so-profile-body{padding:0 1.8rem 1.3rem}.so-profile-demo .so-profile-body>section{padding-top:1rem;margin-top:1rem}.so-profile-demo .so-profile-body h2{font-size:1.1rem;margin-bottom:.6rem}.so-profile-demo .so-profile-body p{font-size:.85rem}.so-profile-demo .so-intro{font-size:.95rem}.so-profile-demo .so-class{padding:.4rem 0}.so-profile-demo .so-class h3{font-size:1rem}.so-offer-plans{display:grid;grid-template-columns:.8fr 2fr;gap:2.5rem;padding-top:3rem;padding-bottom:5rem;border-top:1px solid #bdccca}.so-faq h2,.so-how h2,.so-offer-plans h2{font-family:var(--font-outfit),sans-serif;font-size:clamp(2rem,3vw,3rem);font-weight:600;letter-spacing:-.025em;line-height:1.15;margin-bottom:1.25rem}.so-plan-free{padding:2rem 0}.so-plan-free>p,.so-plan-plus>div>p{line-height:1.7;max-width:38ch}.so-plan-free ul,.so-plan-plus ul{list-style:none;padding:0;margin:1.5rem 0 2rem;display:grid;gap:1rem}.so-plan-free li,.so-plan-plus li{display:flex;gap:.65rem;font-size:.94rem;line-height:1.5}.so-plan-free li svg,.so-plan-plus li svg{flex-shrink:0;margin-top:2px}.so-plan-plus{background:#14353b;color:#fff;display:grid;grid-template-columns:1.15fr 1fr;gap:2rem;padding:2.5rem;border-radius:16px}.so-plan-plus .so-subtle{color:#d3e3df}.so-plan-plus .so-text-link{color:#fff}.so-plan-options{margin:0 0 1.5rem;border:0;padding:0;min-width:0}.so-plan-options legend{font-size:.9rem;font-weight:700;margin-bottom:.9rem}.so-plan-options label{display:flex;gap:.6rem;padding:1rem;border:1px solid #91aaa7;border-radius:12px;margin-bottom:.75rem;align-items:center;cursor:pointer}.so-plan-options input{width:18px;height:18px;accent-color:#b74731;flex-shrink:0}.so-plan-options label>span{flex:1}.so-plan-options strong{font-size:1.7rem;display:block;line-height:1.2}.so-plan-options strong small{font-size:.85rem;font-weight:500}.so-plan-options label>span>span{display:block;font-size:.8rem;margin-top:.4rem}.so-plan-options label>svg{visibility:hidden}.so-plan-options .so-plan-selected{background:#fff;color:#14353b;border-color:#fff}.so-plan-options .so-plan-selected>svg{visibility:visible}.so-plan-purchase>.so-primary{width:100%;margin-bottom:.5rem}.so-how{display:grid;grid-template-columns:1fr 1.8fr;gap:3rem;padding-top:2rem;padding-bottom:4rem}.so-how ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;list-style:none;padding:0;counter-reset:step}.so-how li{border-top:2px solid #14353b;padding-top:1.2rem}.so-how strong{display:block;font-size:1.1rem;line-height:1.5}.so-how p{font-size:.95rem;line-height:1.75;margin-top:.75rem;color:#496269}.so-faq{padding-top:2rem;padding-bottom:5rem;max-width:900px}.so-faq details{border-top:1px solid #bdccca;padding:1.25rem 0}.so-faq summary{font-size:1.05rem;font-weight:700;cursor:pointer;min-height:32px}.so-faq details p{padding-top:1rem;line-height:1.8;max-width:65ch;color:#496269}.so-editor :focus-visible,.so-site :focus-visible{outline:3px solid #b74731;outline-offset:4px}.so-editor ::-moz-selection,.so-site ::-moz-selection{background:#c9e3dc;color:#14353b}.so-editor ::selection,.so-site ::selection{background:#c9e3dc;color:#14353b}.so-editor{color:#14353b;max-width:1250px;margin:auto}.so-editor h1{font-family:var(--font-outfit),sans-serif;font-size:clamp(2rem,3vw,3rem);font-weight:600;letter-spacing:-.025em;line-height:1.15}.so-editor-header{display:flex;gap:1.5rem;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap}.so-editor h2{font-size:1.45rem;font-weight:700;margin-bottom:.75rem}.so-editor h3{font-size:1.05rem;font-weight:700}.so-editor-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:2rem;align-items:flex-start}.so-editor-form section{background:white;border:1px solid #bdccca;border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.so-editor-form section>p{line-height:1.6;margin-bottom:1rem}.so-field{display:block;margin-bottom:1rem}.so-field>span{display:block;font-size:.9rem;font-weight:700;margin-bottom:.5rem}.so-field input,.so-field select,.so-field textarea,.so-select{display:block;width:100%;min-height:46px;padding:.7rem .8rem;font-size:1rem;background:#fff;border:1px solid #819596;border-radius:8px;color:#14353b}.so-field textarea{min-height:100px;resize:vertical}.so-field input::-moz-placeholder,.so-field textarea::-moz-placeholder{color:#5a7074;opacity:1}.so-field input::placeholder,.so-field textarea::placeholder{color:#5a7074;opacity:1}.so-editor select{font-size:1rem}.so-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.so-edit-row{padding:1.2rem 0;border-top:1px solid #dce4e3}.so-edit-row h3{margin-bottom:1rem}.so-upload{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1rem 0}.so-upload img{width:96px;height:72px;-o-object-fit:cover;object-fit:cover;border-radius:8px}.so-upload input{max-width:100%;font-size:.85rem}.so-editor-actions{position:sticky;bottom:0;display:flex;gap:.75rem;flex-wrap:wrap;padding:1rem;background:#fefcf4;border:1px solid #bdccca;border-radius:12px;z-index:10}.so-editor-actions p{flex-basis:100%;font-size:.85rem;line-height:1.5}.so-owner-notice{padding:1.2rem 1.5rem;background:#eaf3f0;border-radius:12px;line-height:1.65;margin:1.5rem 0}.so-owner-error{background:#fbeeea;color:#7d2f22;border:1px solid #dbb9b0;padding:1rem;border-radius:12px;margin:1rem 0;line-height:1.6}.so-preview-title{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem}.so-preview-wrap{position:sticky;top:1.5rem}.so-preview-wrap .so-profile{border:1px solid #bdccca}.so-preview-wrap .so-profile-heading{padding:1.5rem}.so-preview-wrap .so-profile-heading h1{font-size:1.8rem}.so-preview-wrap .so-profile-body{padding:0 1.5rem 1.5rem}.so-preview-wrap .so-cover{height:200px}.so-preview-wrap .so-class{flex-direction:column;align-items:flex-start;gap:.5rem}.so-claim-list{display:grid;gap:1rem;margin:1.5rem 0}.so-claim-item{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:1.25rem;background:white;border:1px solid #bdccca;border-radius:12px}.so-claim-item p{font-size:.9rem;color:#496269;margin-top:.4rem}.so-loader{height:90px;margin:1rem 0;background:#e6efec;border-radius:12px;animation:so-loading 1.4s ease-in-out infinite alternate}.so-billing-panel{background:#14353b;color:white;padding:1.5rem;border-radius:16px;margin:1.5rem 0}.so-billing-panel .so-subtle{color:#d3e3df}.so-billing-panel .so-plan-options{max-width:600px}.so-billing-status{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap}.so-status{display:inline-block;background:#eaf3f0;color:#14353b;border-radius:6px;padding:.3rem .6rem;font-size:.8rem;font-weight:700}.so-admin-claim{border:1px solid #bdccca;background:white;border-radius:16px;padding:1.5rem;margin:1.25rem 0}.so-admin-claim-header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem}.so-admin-claim p{line-height:1.7;margin:.7rem 0;overflow-wrap:anywhere}.so-admin-claim-actions{display:flex;gap:.75rem;flex-wrap:wrap}.so-public-contact,.so-public-enhanced{margin:2rem 0}.so-public-contact a{display:inline-flex;align-items:center;gap:.5rem;margin-right:1.5rem;min-height:44px}.so-editor .so-plan-options label:has(input:focus-visible){outline:3px solid #b74731;outline-offset:3px}@keyframes so-loading{to{opacity:.45}}@media(max-width:1100px){.so-offer-plans{grid-template-columns:1fr 2fr}.so-plan-plus{grid-template-columns:1fr}.so-plan-purchase{max-width:500px}.so-how{grid-template-columns:1fr}.so-class{flex-direction:column;align-items:flex-start;gap:.5rem}}@media(max-width:800px){.so-offer-hero{grid-template-columns:1fr;padding-top:2.5rem;padding-bottom:2.5rem;gap:2.5rem}.so-offer-copy h1{font-size:clamp(2.8rem,9vw,4rem)}.so-offer-copy>p{font-size:1rem}.so-example{max-width:580px;width:100%;margin:auto}.so-offer-plans{grid-template-columns:1fr;gap:1.5rem;padding-bottom:2.5rem}.so-plan-free{padding:1rem 0}.so-plan-plus{padding:1.5rem}.so-how ol{grid-template-columns:1fr}.so-how{gap:1rem;padding-bottom:2rem}.so-editor-grid{grid-template-columns:1fr}.so-preview-wrap{position:static}.so-profile-heading{padding:1.5rem}.so-profile-body{padding:0 1.5rem 1.5rem}.so-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.so-inline-fields{grid-template-columns:1fr}.so-editor-form section{padding:1.1rem}.so-claim-item{align-items:flex-start;flex-direction:column}.so-cover{height:240px}.so-profile-heading .so-primary{width:100%}.so-studio-logo{width:64px;height:64px}.so-faq{padding-bottom:3rem}.so-editor-actions{bottom:0}.so-admin-claim-header{flex-direction:column}.so-profile-body h2{font-size:1.35rem}}@media(prefers-reduced-motion:reduce){.so-loader{animation:none}.so-gallery img,.so-primary,.so-secondary{transition:none}}.so-editor .so-billing-panel h2,.so-site .so-billing-panel h2,.so-site .so-plan-plus h2{color:#fff}.so-editor-jumps{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin:1.25rem 0 1.5rem;padding:1rem 0;border-top:1px solid #bdccca;border-bottom:1px solid #bdccca}.so-editor-jumps a{font-size:.9rem;font-weight:700;min-height:40px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}.so-editor-form section,.so-preview-wrap{scroll-margin-top:160px}