/* Shared discount dialog. The extra class isolates this design from every other form. */
html body #totobi-discount.td-popup.td-redesign {
  width:900px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);
  padding:0!important;border:1px solid #e8dff3;border-radius:26px;background:#fff;color:#29232f;
  overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;
  box-shadow:0 30px 100px #1e102750;text-align:left;font-family:"Onest-Regular",Arial,sans-serif;
  grid-template-columns:38% minmax(0,1fr);grid-template-rows:auto;
}
html body #totobi-discount.td-redesign.fancybox-content {display:inline-grid!important}
html body #totobi-discount.td-redesign .td-close {
  grid-area:1/2;position:sticky;align-self:start;justify-self:end;top:12px;right:auto;
  margin:12px 12px -56px 0;width:44px;height:44px;padding:11px;z-index:5;
  color:#62566f;background:#fffffff5;border:1px solid #eee7f3;border-radius:50%;box-shadow:0 3px 14px #2516360b;
}
html body #totobi-discount.td-redesign .td-close:hover {color:#29232f;background:#f3edf9}
html body #totobi-discount.td-redesign .td-close svg {width:22px;height:22px}
html body #totobi-discount.td-redesign .td-photo {grid-area:1/1;width:100%;min-height:520px;position:relative;background:#30243e;overflow:hidden}
html body #totobi-discount.td-redesign .td-photo img {position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:34% center}
html body #totobi-discount.td-redesign .td-photo::after {content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#26153726 0%,transparent 40%,#21132bdd 100%)}
html body #totobi-discount.td-redesign .td-photo-caption {position:absolute;left:26px;right:22px;bottom:30px;z-index:1;color:#fff}
html body #totobi-discount.td-redesign .td-photo-caption span {display:inline-block;font-size:11px;line-height:1.4;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:12px;color:#eee4f9}
html body #totobi-discount.td-redesign .td-photo-caption strong {display:block;font:700 28px/1.16 "Onest-Bold",Arial,sans-serif;letter-spacing:-.5px}
html body #totobi-discount.td-redesign .td-content {grid-area:1/2;width:100%;min-width:0;padding:42px 38px 28px;display:flex;flex-direction:column;background:radial-gradient(ellipse at 100% 0,#f1eafa 0,transparent 55%),#fff}
html body #totobi-discount.td-redesign .td-eyebrow {margin:0 46px 18px 0;font:500 11px/1.5 "Onest-Medium",Arial,sans-serif;letter-spacing:1.1px;text-transform:uppercase;color:#765497}
html body #totobi-discount.td-redesign #td-title {margin:0 0 18px;font:700 38px/1.08 "Onest-Bold",Arial,sans-serif;letter-spacing:-1.2px;color:#29232f}
html body #totobi-discount.td-redesign #td-title span {display:block;font-size:52px;line-height:1.12;color:#7b48df;white-space:nowrap;margin-bottom:6px;letter-spacing:-1.5px}
html body #totobi-discount.td-redesign #td-title span::before {content:none}
html body #totobi-discount.td-redesign #td-description {font-size:16px;line-height:1.5;margin:0 0 24px;color:#706578}
html body #totobi-discount.td-redesign label {font:500 13px/1.4 "Onest-Medium",Arial,sans-serif;margin:0 0 8px;color:#4c4057}
html body #totobi-discount.td-redesign .td-input {display:flex;align-items:center;padding:0 16px;gap:12px;margin-bottom:12px;border:1px solid #ded4e8;border-radius:14px;background:#fff}
html body #totobi-discount.td-redesign .td-input:focus-within {border-color:#8753d4;box-shadow:0 0 0 3px #8753d414}
html body #totobi-discount.td-redesign .td-input>svg {width:22px;height:22px;color:#8a739e;flex-shrink:0}
html body #totobi-discount.td-redesign #td-phone {height:58px;width:100%;min-width:0;padding:0;font:18px/1.4 "Onest-Regular",Arial,sans-serif;color:#29232f;background:transparent;border:0!important}
html body #totobi-discount.td-redesign #td-phone::placeholder {font-size:18px;color:#928799;opacity:1}
/* Keep the existing permanent +7 field on the signage page. */
html body #totobi-discount.td-redesign .td-input.sg-phone-parent {padding:0;gap:0;border:0;background:transparent;box-shadow:none}
html body #totobi-discount.td-redesign #td-form .sg-phone-field {width:100%;border:1px solid #ded4e8;border-radius:14px;background:#fff}
html body #totobi-discount.td-redesign #td-form .sg-phone-field:focus-within {border-color:#8753d4;box-shadow:0 0 0 3px #8753d414}
html body #totobi-discount.td-redesign #td-form .sg-phone-field #td-phone {height:58px;padding:16px 12px 16px 61px;border-radius:14px;font-size:18px}
html body #totobi-discount.td-redesign #td-form .sg-phone-prefix {top:18px;left:16px;font-size:18px;padding-right:10px}
html body #totobi-discount.td-redesign .td-submit {min-height:58px;width:100%;padding:14px 12px;border:0;border-radius:14px;font:700 18px/1.35 "Onest-Bold",Arial,sans-serif;color:#302334;background:linear-gradient(110deg,#ffb13e,#ff813c);box-shadow:0 8px 24px #ff913522;animation:none;transition:filter .15s,box-shadow .15s}
html body #totobi-discount.td-redesign .td-submit::after {content:none;animation:none}
html body #totobi-discount.td-redesign .td-submit:hover {background:linear-gradient(110deg,#ffab30,#ff7633);box-shadow:0 10px 26px #ff913532}
html body #totobi-discount.td-redesign .td-submit:disabled {opacity:.65;cursor:wait;box-shadow:none}
html body #totobi-discount.td-redesign .td-error {font-size:12px;line-height:1.5;color:#b22342;margin:0 0 12px}
html body #totobi-discount.td-redesign .td-error:empty {display:none}
html body #totobi-discount.td-redesign .td-privacy {font-size:11px;line-height:1.5;color:#827589;margin:12px 0 0}
html body #totobi-discount.td-redesign .td-privacy a {color:inherit;text-decoration:underline;text-underline-offset:2px}
html body #totobi-discount.td-redesign .td-benefits {margin:24px 0 0;padding:20px 0 0;border-top:1px solid #eee7f3;display:flex;gap:12px;list-style:none;justify-content:space-between}
html body #totobi-discount.td-redesign .td-benefits li {flex:1;margin:0;font-size:11px;line-height:1.4;text-align:center;color:#76687f}
html body #totobi-discount.td-redesign .td-benefits svg {display:block;margin:0 auto 8px;width:24px;height:24px;color:#9876b5}
html body #totobi-discount.td-redesign .td-success {margin:auto 0;padding:36px 0;text-align:center}
html body #totobi-discount.td-redesign .td-success>svg {width:64px;height:64px;color:#7b48df;margin:0 auto 22px}
html body #totobi-discount.td-redesign #td-success-title {font:700 32px/1.15 "Onest-Bold",Arial,sans-serif;letter-spacing:-.6px;margin:0 0 16px;color:#29232f}
html body #totobi-discount.td-redesign .td-success p {font-size:16px;line-height:1.5;margin:0;color:#706578}
html body #totobi-discount.td-redesign [hidden] {display:none!important}
html body #totobi-discount.td-redesign :focus-visible {outline:3px solid #7b48df;outline-offset:4px}
html body #totobi-discount.td-redesign:focus {outline:none}
html body #totobi-discount.td-redesign .sg-form-contact-options {margin-top:16px;font-size:12px}
body .td-fancybox .fancybox-bg {background:#21132e;opacity:.65}
body .td-fancybox .fancybox-slide {padding:16px}
@media(max-width:700px) {
 html body #totobi-discount.td-popup.td-redesign {width:410px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border-radius:22px;grid-template-columns:minmax(0,1fr);grid-template-rows:100px auto}
 html body #totobi-discount.td-redesign .td-close {grid-area:1/1;top:8px;margin:8px 8px -52px 0}
 html body #totobi-discount.td-redesign .td-photo {grid-area:1/1;height:100px;min-height:100px}
 html body #totobi-discount.td-redesign .td-photo img {object-position:34% 44%}
 html body #totobi-discount.td-redesign .td-photo::after {background:linear-gradient(90deg,#24143299,transparent)}
 html body #totobi-discount.td-redesign .td-photo-caption {left:22px;bottom:19px}
 html body #totobi-discount.td-redesign .td-photo-caption span {margin:0;font-size:11px;color:#fff}
 html body #totobi-discount.td-redesign .td-photo-caption strong {display:none}
 html body #totobi-discount.td-redesign .td-content {grid-area:2/1;padding:24px 22px 22px}
 html body #totobi-discount.td-redesign .td-eyebrow {font-size:10px;margin:0 0 12px;letter-spacing:.7px}
 html body #totobi-discount.td-redesign #td-title {font-size:28px;line-height:1.12;letter-spacing:-.65px;margin-bottom:14px}
 html body #totobi-discount.td-redesign #td-title span {font-size:40px;margin-bottom:3px;letter-spacing:-1px}
 html body #totobi-discount.td-redesign #td-description {font-size:14px;line-height:1.45;margin-bottom:18px}
 html body #totobi-discount.td-redesign .td-submit {font-size:17px;min-height:56px}
 html body #totobi-discount.td-redesign .td-benefits {margin-top:20px;padding-top:16px;gap:8px}
 html body #totobi-discount.td-redesign .td-benefits li {font-size:10px}
 html body #totobi-discount.td-redesign .td-benefits svg {width:21px;height:21px;margin-bottom:6px}
 html body #totobi-discount.td-redesign #td-success-title {font-size:28px}
 body.sg-phone-page .td-fancybox .fancybox-slide,body .td-fancybox .fancybox-slide {padding:12px}
}
@media(max-width:360px) {html body #totobi-discount.td-redesign .td-content {padding:20px 18px}html body #totobi-discount.td-redesign #td-title span {font-size:36px}html body #totobi-discount.td-redesign .td-eyebrow {font-size:9px}}
@media(max-height:700px) and (max-width:700px) {html body #totobi-discount.td-popup.td-redesign {grid-template-rows:72px auto}html body #totobi-discount.td-redesign .td-photo {height:72px;min-height:72px}html body #totobi-discount.td-redesign .td-content {padding-top:18px}html body #totobi-discount.td-redesign .td-eyebrow {margin-bottom:8px}}
@media(prefers-reduced-motion:reduce) {html body #totobi-discount.td-redesign * {animation:none!important;transition:none!important}}
/* Compact the footer on pages with extra contact options, keeping every link. */
@media(min-width:701px) {
 html body #totobi-discount.td-redesign .td-content {padding-top:34px;padding-bottom:24px}
 html body #totobi-discount.td-redesign .td-benefits {margin-top:18px;padding-top:16px}
 html body #totobi-discount.td-redesign .td-benefits li {display:flex;align-items:center;gap:7px;text-align:left}
 html body #totobi-discount.td-redesign .td-benefits svg {flex-shrink:0;width:20px;height:20px;margin:0}
 html body #totobi-discount.td-redesign .sg-form-contact-options {margin-top:12px;gap:6px}
 html body #totobi-discount.td-redesign .sg-form-contact-options>a {min-height:40px;padding:8px 10px}
 html body #totobi-discount.td-redesign .sg-contact-call {min-height:52px;padding:8px 12px;gap:10px;grid-template-columns:32px minmax(0,1fr) 16px}
 html body #totobi-discount.td-redesign .sg-call-icon {width:32px;height:32px;border-radius:10px}
 html body #totobi-discount.td-redesign .sg-call-icon svg {width:20px;height:20px}
 html body #totobi-discount.td-redesign .sg-call-label {font-size:10px;margin-bottom:1px}
 html body #totobi-discount.td-redesign .sg-contact-call a.sg-contact-phone {font-size:15px}
}
/* Avoid Fancybox's inline spacer wrapping the dialog on narrow service pages. */
html body .td-fancybox.fancybox-container .fancybox-slide--html {display:flex;align-items:center;justify-content:center}
html body .td-fancybox.fancybox-container .fancybox-slide--html::before {display:none}
html body #totobi-discount.td-popup.td-redesign {max-width:100%;flex-shrink:1}

/* Keep the close control above the WordPress toolbar for signed-in owners too. */
html body .td-fancybox.fancybox-container {z-index:100010}
