/* Field focus rings meet their borders; links and action buttons retain their spacing. */
.sithon-public-v2 :is(input,select,textarea):focus-visible{outline-offset:0}
.sithon-public-v2 .form-status{font-size:16px;line-height:1.5;margin:20px 0;color:#c4d9c6;min-height:24px}
.sithon-public-v2 .form-status.is-error{color:#ffb5a2}
/* Finder controls remain available above a normal-flow, independently announced list. */
.sithon-public-v2 #finder-form .finder-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px}
.sithon-public-v2 #finder-form .form-field{min-width:0}
.sithon-public-v2 #finder-form .finder-search-row .button{height:48px;min-height:48px;padding:10px 20px;white-space:nowrap}
.sithon-public-v2 #finder-form .form-status{margin:24px 0 0;min-height:0;overflow-wrap:anywhere}
.sithon-public-v2 #finder-form .form-status:empty{margin:0}
.sithon-public-v2 #finder-form .form-status.is-error:not(:empty){background:#351e1b;border:1px solid #c77765;border-radius:8px;color:#ffd0c4;font-weight:600;padding:12px}
.sithon-public-v2 #finder-result{display:grid;gap:12px;list-style:none;padding:0;margin:24px 0 0}
.sithon-public-v2 #finder-result:empty{display:none;margin:0}
.sithon-public-v2 #finder-result li{min-width:0}
.sithon-public-v2 #finder-form .finder-result{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:16px;border:1px solid #53402a;border-radius:8px;background:#272018;font-size:16px;line-height:1.5;color:var(--text);overflow-wrap:anywhere}
.sithon-public-v2 #finder-form .finder-result:is(:hover,:focus-visible){border-color:var(--orange);background:#30261c}
.sithon-public-v2 #finder-form .finder-result-copy{min-width:0;display:grid;gap:4px}
.sithon-public-v2 #finder-form .finder-result strong{font-weight:600}
.sithon-public-v2 #finder-form .finder-result-location{color:#c0b8b0}
@media(max-width:767px){
  .sithon-public-v2 #finder-form .finder-search-row{grid-template-columns:minmax(0,1fr)}
}
.sithon-public-v2 .field-hint,.sithon-public-v2 .form-field>span{font-size:16px;line-height:1.5;color:#c0b8b0}
.sithon-public-v2 form[aria-busy=true]{cursor:progress}
.sithon-public-v2 .footer-bottom form{margin:0}
.sithon-public-v2 .legal-copy [onclick]{cursor:pointer}
.sithon-public-v2 .article-body table{width:100%;table-layout:fixed;border-collapse:collapse}
.sithon-public-v2 .article-body td,.sithon-public-v2 .article-body th{border:1px solid #444;padding:10px;overflow-wrap:anywhere}
.sithon-public-v2 .article-body pre{white-space:pre-wrap;overflow-wrap:anywhere}

/* Native select menus with consistent closed-field geometry across marketing UI. */
.sithon-public-v2 select:not([multiple]){appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23d4c3ad' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px;padding-right:36px}
.sithon-public-v2 dialog .form-field :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select){height:48px;line-height:24px}
.sithon-public-v2 :is(.app-filter,.selection-bar select,.app-search input){height:calc(1.5em + 14px);min-height:29px;line-height:1.5}
@media(max-width:599px){
  .sithon-public-v2 :is(.app-filter,.selection-bar select,.app-search input){height:36px;min-height:36px}
}
@media(forced-colors:active){
  .sithon-public-v2 select:not([multiple]){appearance:auto;-webkit-appearance:auto;background-image:none;padding-right:12px}
}

/* Keep login and password reset equally compact without changing other dialogs. */
.sithon-public-v2 dialog:is(.dialog-login,.dialog-reset){width:min(520px,calc(100% - 32px))}
.sithon-public-v2 #login-form .form-grid{grid-template-columns:minmax(0,1fr);gap:16px}
.sithon-public-v2 #login-form .check-label{margin-top:20px}
/* Marketing agreements stay readable without enlarging product-demo controls. */
.sithon-public-v2 :is(#login-form,#registration-form) .check-label{align-items:center}
.sithon-public-v2 :is(#login-form,#registration-form) .check-label input[type=checkbox]{width:20px;height:20px;margin:0;flex:0 0 20px}
.sithon-public-v2 :is(#login-form,#registration-form) .check-label input[type=checkbox]:not(:checked){appearance:none;-webkit-appearance:none;background:#211f1c;border:1px solid #4b4135;border-radius:3px}
@media(forced-colors:active){
  .sithon-public-v2 :is(#login-form,#registration-form) .check-label input[type=checkbox]:not(:checked){appearance:auto;-webkit-appearance:auto;background:revert;border:revert;border-radius:revert}
}
.sithon-public-v2 #login-form .form-status:empty{min-height:0;margin:0}
.sithon-public-v2 #login-form .form-status.is-error:not(:empty){background:#351e1b;border:1px solid #c77765;border-radius:8px;color:#ffd0c4;font-size:16px;font-weight:600;line-height:1.5;padding:12px;overflow-wrap:anywhere}

/* Registration restores the original field groups without changing other forms. */
.sithon-public-v2 .dialog-registration .dialog-header{padding-bottom:16px;margin-bottom:16px;border-bottom:0}
.sithon-public-v2 .dialog-registration .wizard-steps{margin-bottom:16px}
.sithon-public-v2 .dialog-registration .wizard-step{display:flex;align-items:center;gap:8px;border-bottom:2px solid #4a4138}
.sithon-public-v2 .dialog-registration .wizard-step.active{color:var(--orange);border-bottom-color:var(--orange)}
.sithon-public-v2 .dialog-registration .wizard-step.active b{border-color:var(--orange);color:var(--orange)}
.sithon-public-v2 .dialog-registration .wizard-step b{display:flex;align-items:center;justify-content:center;flex:0 0 26px;width:26px;height:26px;line-height:1;margin-right:0}
.sithon-public-v2 #registration-form .dialog-intro{margin-bottom:24px;line-height:1.5}
.sithon-public-v2 #registration-form .form-actions{margin-top:24px}
.sithon-public-v2 #registration-form .form-status{margin:12px 0}
.sithon-public-v2 #registration-form .form-status:empty{min-height:0;margin:0}
.sithon-public-v2 #registration-form .form-status.is-error:not(:empty){background:#351e1b;border:1px solid #c77765;border-radius:8px;color:#ffd0c4;font-size:16px;font-weight:600;line-height:1.5;padding:12px;overflow-wrap:anywhere}
.sithon-public-v2 #registration-form .terms-scroll{margin-bottom:0}
.sithon-public-v2 #registration-form .check-label{margin-top:20px}
.sithon-public-v2 #registration-form :is(.registration-business-layout,.registration-business-fields,.registration-address-row,.registration-type-row){display:grid;gap:20px 16px;min-width:0}
.sithon-public-v2 #registration-form .registration-business-layout{gap:16px 28px}
.sithon-public-v2 #registration-form :is(.form-field,.registration-plan-field){min-width:0}
.sithon-public-v2 #registration-form :is(input,select){min-width:0}
.sithon-public-v2 #registration-form .registration-account-grid{grid-template-columns:minmax(0,1fr);row-gap:20px}
.sithon-public-v2 #registration-form .registration-logo{min-width:0;text-align:center;font-size:16px;line-height:1.5}
.sithon-public-v2 #registration-form .registration-logo-label{color:#c7bbaa;margin:0 0 12px}
.sithon-public-v2 #registration-form .registration-logo-label span{color:#c0b8b0}
.sithon-public-v2 #registration-logo-preview{display:block;width:106px;height:106px;object-fit:contain;background:#24211c;border:1px solid #4b4135;border-radius:12px;margin:0 auto 12px}
.sithon-public-v2 #registration-form .registration-logo-picker{position:relative;overflow:hidden;min-height:44px;padding:9px 16px;cursor:pointer}
.sithon-public-v2 #registration-form .registration-logo-picker:focus-within{outline:2px solid var(--orange);outline-offset:0}
.sithon-public-v2 #registration-form .registration-logo-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.sithon-public-v2 #registration-logo-name{color:#c0b8b0;overflow-wrap:anywhere;margin:12px 0 8px}
.sithon-public-v2 #registration-logo-name:empty{margin:0}
@media(min-width:768px){
  .sithon-public-v2 #registration-form .registration-address-row{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}
  .sithon-public-v2 #registration-form .registration-type-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
  .sithon-public-v2 #registration-form .registration-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:992px){
  .sithon-public-v2 #registration-form .registration-business-layout{grid-template-columns:minmax(0,1fr) minmax(0,3fr);align-items:start}
}
@media(max-width:767px){
  .sithon-public-v2 #registration-form :is(.registration-business-fields,.registration-address-row,.registration-type-row){column-gap:13px}
  .sithon-public-v2 .dialog-registration .wizard-step{gap:4px}
}

/* Visible actions use normal flow. On hover-capable screens, the illustration
   and details make room for an overlaid action without an empty resting row. */
.sithon-public-v2 .plan-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px 16px;margin:24px 0 16px}
.sithon-public-v2 .plan{--plan-heading-row:minmax(84px,auto);--plan-artwork-row:128px;min-width:0;position:relative;display:grid;grid-template-rows:var(--plan-heading-row) var(--plan-artwork-row) 1fr auto;padding:20px 16px;border:1px solid #403428;border-radius:12px;background:#201c17;text-align:center}
.sithon-public-v2 .plan.popular{border-color:var(--orange);background:#2b2117}
.sithon-public-v2 .popular-tag{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);white-space:nowrap;padding:4px 16px;border-radius:99px;background:var(--orange);color:#1e130a;font-size:14px;font-weight:500}
.sithon-public-v2 .plan h3{font-size:22px;font-weight:400;line-height:1.2}
.sithon-public-v2 .plan-tagline{margin:10px auto 0;max-width:27ch;font-size:16px;line-height:1.5;color:#c0b4a3}
.sithon-public-v2 .plan-artwork{display:grid;place-items:center}
.sithon-public-v2 .plan-artwork img{display:block;width:96px;height:96px;object-fit:contain}
.sithon-public-v2 .plan-details{min-width:0}
.sithon-public-v2 .plan-price{font-size:32px;line-height:1.2;font-weight:400;letter-spacing:-.035em}
.sithon-public-v2 .plan-price small{font-size:16px;color:#c0b4a3;letter-spacing:0;margin-left:3px}
.sithon-public-v2 .plan .billing-note{font-size:16px;line-height:1.5;color:#c0b4a3;margin:4px 0 0}
.sithon-public-v2 .plan ul{padding:0;margin:12px 0 0;list-style:none;text-align:left;font-size:16px;line-height:1.5;color:#d1bda2}
.sithon-public-v2 .plan li{display:flex;gap:7px;margin-top:4px}
.sithon-public-v2 .plan li:first-child{margin-top:0}
.sithon-public-v2 .plan li::before{content:'\2713';color:var(--orange);flex:none}
.sithon-public-v2 .plan-action{min-width:0;display:flex;align-items:stretch;margin-top:12px}
.sithon-public-v2 .plan .plan-cta{width:100%;min-height:44px;padding:9px 12px;gap:8px;font-size:16px;line-height:1.5}
.sithon-public-v2 .pricing-trust{font-size:16px;line-height:1.8;color:#bdb3a3}
@media(min-width:768px){
  .sithon-public-v2 .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1200px){
  .sithon-public-v2 .plan-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:767px){
  .sithon-public-v2 .plan{--plan-heading-row:auto;--plan-artwork-row:112px;padding-inline:24px}
  .sithon-public-v2 .plan-artwork img{width:88px;height:88px}
}
/* Opacity leaves the action in the keyboard order. Focus reveals it without
   waiting for the pointer animation; touch and reduced motion use the base. */
@media(min-width:768px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .sithon-public-v2 .plan{grid-template-rows:var(--plan-heading-row) var(--plan-artwork-row) 1fr}
  .sithon-public-v2 .plan-artwork img,.sithon-public-v2 .plan-details{transition:transform 300ms ease}
  /* Reveal only after the features clear the CTA; hide before they return. */
  .sithon-public-v2 .plan-action{position:absolute;inset:auto 16px 20px;height:44px;margin:0;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity 60ms linear,transform 60ms linear}
  .sithon-public-v2 .plan:is(:hover,:focus-within) .plan-artwork img{transform:translateY(-28px) scale(.6)}
  .sithon-public-v2 .plan:is(:hover,:focus-within) .plan-details{transform:translateY(-56px)}
  .sithon-public-v2 .plan:is(:hover,:focus-within) .plan-action{opacity:1;transform:none;pointer-events:auto;transition:opacity 120ms ease 180ms,transform 120ms ease 180ms}
  .sithon-public-v2 .plan:focus-within :is(.plan-artwork img,.plan-details,.plan-action){transition:none}
}
.sithon-public-v2.motion-reduced .plan{grid-template-rows:var(--plan-heading-row) var(--plan-artwork-row) 1fr auto}
.sithon-public-v2.motion-reduced .plan :is(.plan-artwork img,.plan-details,.plan-action){transform:none;transition:none}
.sithon-public-v2.motion-reduced .plan-action{position:static;inset:auto;height:auto;margin-top:12px;opacity:1;pointer-events:auto}
