/* Scoped to the Nitos configurator and its shared delivery fieldset. */
#top #nitos-configurator .nitos-checkout{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
#top #nitos-configurator .nitos-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px;margin:20px 0 28px;padding:24px;background:#f8f3eb;border:1px solid #e5d9ca;border-radius:18px}
#top #nitos-configurator .nitos-contact-fields p{margin:0!important;width:auto!important;float:none!important}
#top #nitos-configurator .nitos-contact-fields label,#top .nitos-delivery label{display:block;font-weight:600;font-size:17px;line-height:1.45;color:#332d25;margin:0 0 8px}
#top #nitos-configurator .nitos-checkout input:not([type=checkbox]):not([type=hidden]),#top #nitos-configurator .nitos-checkout select,#top .nitos-delivery input:not([type=hidden]),#top .nitos-delivery select{display:block;font:18px/1.4 'Open Sans',sans-serif;min-height:52px;width:100%;background:#fff;border:1px solid #bbad9c;border-radius:12px;color:#28241f;padding:13px 15px;box-sizing:border-box;margin:8px 0 0;box-shadow:0 1px 2px rgb(67 43 17 / 4%);transition:border-color .15s,box-shadow .15s}
#top #nitos-configurator .nitos-checkout input::placeholder,#top .nitos-delivery input::placeholder{color:#776e62;opacity:1;font-size:16px}
#top #nitos-configurator .nitos-checkout input:focus,#top #nitos-configurator .nitos-checkout select:focus,#top .nitos-delivery input:focus,#top .nitos-delivery select:focus{outline:2px solid #ad4b13;outline-offset:3px;border-color:#ad4b13;box-shadow:0 0 0 4px rgb(173 75 19 / 10%)}
#top .nitos-delivery input:disabled,#top .nitos-delivery select:disabled{background:#eee9e1;color:#71685d;border-color:#d7cdbf;box-shadow:none;cursor:not-allowed;opacity:1}
#top .nitos-delivery input[aria-invalid=true],#top #nitos-configurator .nitos-checkout .woocommerce-invalid input{border-color:#a23120;background:#fff9f7}
#top .nitos-delivery{border:1px solid #e5d9ca!important;padding:24px!important;min-width:0;margin:24px 0!important;border-radius:18px;background:#f8f3eb;color:#332d25;box-sizing:border-box}
#top .nitos-delivery legend{float:none;width:auto;padding:0 8px;font-size:23px;font-weight:700;color:#332d25;margin:0 0 6px}
#top .nitos-delivery [hidden]{display:none!important}
#top .nitos-delivery>label,#top .nitos-delivery>.nitos-combo,#top .nitos-delivery .nitos-address-field>.nitos-combo{margin-bottom:20px}
#top .nitos-delivery select{appearance:none;-webkit-appearance:none;padding-right:46px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m5 7 5 5 5-5' fill='none' stroke='%234b4135' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 15px center}
#top .nitos-delivery .nitos-combo{position:relative}
#top .nitos-delivery .nitos-combo-control{position:relative}
#top .nitos-delivery input[role=combobox]{padding-right:42px}
#top .nitos-delivery .nitos-combo-arrow{pointer-events:none;position:absolute;right:18px;top:24px;width:8px;height:8px;border-right:2px solid #655847;border-bottom:2px solid #655847;transform:rotate(45deg)}
#top .nitos-delivery .nitos-suggestions{position:absolute;z-index:5;top:100%;left:0;right:0;margin:3px 0 0;padding:6px;list-style:none;max-height:244px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #b8a38b;border-radius:12px;background:#fff;box-shadow:0 12px 24px rgb(59 38 13 / 16%)}
#top .nitos-delivery .nitos-suggestions li{font-size:17px;line-height:1.45;min-height:48px;padding:12px;margin:0;border-radius:8px;color:#332d25;cursor:pointer;box-sizing:border-box;list-style:none}
#top .nitos-delivery .nitos-suggestions li:hover,#top .nitos-delivery .nitos-suggestions li[aria-selected=true]{background:#f6e6d3;color:#532706;outline:1px solid #d08b4d}
#top .nitos-delivery .nitos-field-hint{display:block;font-size:15px;line-height:1.5;color:#625747;margin:7px 0 0;font-weight:400}
#top .nitos-delivery .nitos-field-hint:empty{display:none}
#top .nitos-delivery .nitos-address-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:16px 0}
#top .nitos-delivery .nitos-address-grid label{margin:0}
#top .nitos-delivery .nitos-manual-toggle,#top .nitos-delivery .nitos-econt-retry{background:#fff;border:1px solid #ab682f;border-radius:10px;padding:12px 16px;min-height:48px;font:600 16px/1.4 'Open Sans',sans-serif;color:#76360f;cursor:pointer;margin:12px 0}
#top .nitos-delivery button:focus-visible{outline:2px solid #ad4b13;outline-offset:3px}
#top .nitos-delivery .nitos-manual-toggle:disabled{opacity:.6;cursor:not-allowed}
#top .nitos-delivery .nitos-econt-status{font-size:16px;line-height:1.5;color:#5f4e38;margin:12px 0}
#top .nitos-delivery .nitos-econt-status.is-error{color:#9a2c20;font-weight:600}
#top .nitos-delivery[aria-busy=true] .nitos-econt-status::before{content:'';display:inline-block;width:14px;height:14px;border:2px solid #dac4ac;border-top-color:#ad4b13;border-radius:50%;margin-right:9px;vertical-align:-2px;animation:nitos-loading .8s linear infinite}
#top .nitos-delivery .nitos-test-delivery-note{font-size:15px;line-height:1.5;background:#efe5d7;border-radius:10px;padding:12px 14px;color:#554735;margin:16px 0 0}
#top #nitos-configurator .nitos-terms{display:flex;align-items:flex-start;gap:12px;font-size:17px;margin:20px 0}
#top #nitos-configurator .nitos-terms input{width:22px;height:22px;flex-shrink:0;margin-top:4px;accent-color:var(--orange)}
#top #nitos-configurator .nitos-order-totals{border-block:1px solid var(--line);padding:16px 0}.nitos-order-totals p{display:flex;justify-content:space-between;gap:20px;margin:8px 0}
#top #nitos-configurator .nitos-place-order{border:0;border-radius:12px;background:var(--orange);color:#fff;padding:13px 22px;font-weight:700;min-height:52px}
#top #nitos-configurator .nitos-refresh-cart{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 16px}
#top #nitos-configurator .nitos-summary-price{display:none}
#top #nitos-configurator h2,#top #nitos-configurator h3,#top #nitos-configurator h4{font-family:'Open Sans Condensed','Open Sans',sans-serif!important}
#top #nitos-configurator .nitos-cart-summary{overflow-wrap:anywhere}
@keyframes nitos-loading{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#top .nitos-delivery[aria-busy=true] .nitos-econt-status::before{animation:none}}
@media(max-width:760px){#top #nitos-configurator .nitos-contact-fields{grid-template-columns:1fr;padding:18px;gap:18px}#top #nitos-configurator .nitos-place-order{flex:1;font-size:17px;padding:12px 14px}#top .nitos-delivery{padding:18px!important}#top .nitos-delivery .nitos-suggestions{max-height:190px}}
/* Inline errors remain scoped to our controls; colour is accompanied by text. */
#top #nitos-configurator .nitos-invalid input:not([type=radio]):not([type=checkbox]):not([type=hidden]),#top #nitos-configurator .nitos-invalid textarea,#top .nitos-delivery .nitos-invalid input{border:2px solid #a12418;background:#fff7f5}
#top #nitos-configurator .nitos-invalid .nitos-choice>span,#top #nitos-configurator .nitos-invalid .nitos-upload-surface{border:2px solid #a12418;background:#fff7f5}
#top #nitos-configurator .nitos-terms.nitos-invalid{outline:2px solid #a12418;outline-offset:6px;border-radius:5px}
#top .nitos-field-error{font:600 15px/1.45 'Open Sans',sans-serif;color:#9c241a!important;margin:7px 0!important}
#top #nitos-configurator .nitos-shake,#top .nitos-delivery .nitos-shake{animation:nitos-error-shake .25s ease-in-out}
@keyframes nitos-error-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@media(prefers-reduced-motion:reduce){#top #nitos-configurator .nitos-shake,#top .nitos-delivery .nitos-shake{animation:none}}
#top #nitos-configurator .nitos-upload-status{font-size:15px;margin:8px 0;color:#605444}
#top #nitos-configurator .nitos-upload-retry,#top #nitos-configurator .nitos-prepare-retry{border:1px solid #aa5825;border-radius:8px;background:#fff;padding:8px 12px;color:#75350f}

/* Same typography and spacing scale for contacts, delivery and totals. */
#top #nitos-configurator .nitos-checkout{margin-top:24px;padding-top:24px}
#top #nitos-configurator .nitos-contact-fields{padding:16px;margin:24px 0;gap:24px 16px;border-radius:12px}
#top #nitos-configurator .nitos-contact-fields label,#top .nitos-delivery label{font-size:16px;margin:0 0 8px}
#top #nitos-configurator .nitos-checkout input:not([type=checkbox]):not([type=hidden]),#top #nitos-configurator .nitos-checkout select,#top .nitos-delivery input:not([type=hidden]),#top .nitos-delivery select{font-size:16px;line-height:1.5;min-height:48px;padding:11px 16px;margin:8px 0 0}
#top .nitos-delivery{padding:16px!important;margin:24px 0!important;border-radius:12px}
#top .nitos-delivery legend{font-size:20px;margin:0 0 8px;padding:0 8px}
#top .nitos-delivery>label,#top .nitos-delivery>.nitos-combo,#top .nitos-delivery .nitos-address-field>.nitos-combo{margin-bottom:24px}
#top .nitos-delivery select{padding-right:44px}
#top .nitos-delivery input[role=combobox]{padding-right:40px}
#top .nitos-delivery .nitos-combo-arrow{top:22px;right:16px}
#top .nitos-delivery .nitos-suggestions li{font-size:16px;padding:12px;min-height:48px}
#top .nitos-delivery .nitos-field-hint{font-size:14px;margin:8px 0 0}
#top .nitos-delivery .nitos-address-grid{gap:24px 16px;margin:24px 0}
#top .nitos-delivery .nitos-manual-toggle,#top .nitos-delivery .nitos-econt-retry{font-size:15px;padding:10px 16px;margin:16px 0;min-height:48px}
#top .nitos-delivery .nitos-econt-status{font-size:14px;margin:16px 0}
#top .nitos-delivery .nitos-test-delivery-note{font-size:14px;padding:12px 16px;margin:16px 0 0}
#top #nitos-configurator .nitos-checkout>p{font-size:15px;line-height:1.55;margin:16px 0}
#top #nitos-configurator .nitos-terms{font-size:15px;line-height:1.55;gap:12px;margin:24px 0}
#top #nitos-configurator .nitos-order-totals{padding:12px 16px;margin:24px 0;border:1px solid var(--line);border-radius:12px;background:var(--cream)}
#top #nitos-configurator .nitos-order-totals p{font-size:15px!important;line-height:1.5;margin:8px 0!important;gap:16px;align-items:baseline}
#top #nitos-configurator .nitos-order-totals strong,#top #nitos-configurator .nitos-order-totals .woocommerce-Price-amount{font-size:16px!important;line-height:1.4}
#top #nitos-configurator .nitos-order-totals p:last-child{border-top:1px solid var(--line);padding-top:12px;margin-top:12px!important;font-weight:600}
#top #nitos-configurator .nitos-order-totals p:last-child strong,#top #nitos-configurator .nitos-order-totals p:last-child .woocommerce-Price-amount{font-size:20px!important}
#top #nitos-configurator .nitos-cart-summary{font-size:15px;line-height:1.55;margin:16px 0}
#top #nitos-configurator .nitos-refresh-cart{font-size:15px;padding:10px 16px;min-height:48px}
#top #nitos-configurator .nitos-save-status{font-size:14px;line-height:1.55;margin:24px 0 0}
#top #nitos-configurator .nitos-field-error,#top .nitos-delivery .nitos-field-error{font-size:14px;margin-top:8px!important}
@media(max-width:760px){#top #nitos-configurator .nitos-contact-fields{padding:16px;gap:24px}#top .nitos-delivery{padding:16px!important}#top #nitos-configurator .nitos-place-order{font-size:16px;padding:10px 16px}}

#top #nitos-configurator .nitos-cart-summary .woocommerce-Price-amount{font-size:16px!important;line-height:1.5;display:inline}

/* Async updates keep the caret and a stable status line. */
#top .nitos-delivery .nitos-econt-status{min-height:22px}
#top .nitos-delivery input[aria-busy=true]{cursor:text}
#top .nitos-confirmation {
  box-sizing:border-box;max-width:100%;padding:24px;border:1px solid #dbcab6;
  border-radius:16px;background:#fffaf2;color:#302b25;font-size:16px;line-height:1.55;
}
#top .nitos-confirmation h2 {margin:0 0 16px;font-family:inherit;font-weight:700;font-size:24px;line-height:1.3;letter-spacing:0;text-transform:none;color:#302b25;}
#top .nitos-confirmation p {margin:0 0 16px;font-size:16px;}
#top .nitos-confirmation .nitos-confirmation-label {margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.08em;color:#73583d;}
#top .nitos-confirmation .nitos-confirmation-mail {padding:20px;border-radius:12px;background:white;border-left:4px solid #be4b12;}
#top .nitos-confirmation .nitos-confirmation-mail p:last-child {margin-bottom:0;}
#top .nitos-confirmation .nitos-confirmation-address {display:block;margin:-8px 0 16px;overflow-wrap:anywhere;font-size:18px;}
#top .nitos-confirmation:focus-visible {outline:3px solid #be4b12;outline-offset:3px;}
@media(max-width:600px){#top .nitos-confirmation{padding:18px;}#top .nitos-confirmation h2{font-size:21px;}#top .nitos-confirmation .nitos-confirmation-mail{padding:16px;}}

#top .nitos-confirmation strong {color:#493625;}

/* Enfold sets display:block on form rows, overriding the native hidden attribute. */
#top form.checkout.nitos-standard-checkout .form-row[hidden]{display:none!important}
#top form.checkout.nitos-standard-checkout .form-row input:not([type=checkbox]):not([type=hidden]),#top form.checkout.nitos-standard-checkout textarea{border-radius:12px;border:1px solid #bbad9c;min-height:48px;padding:11px 16px;background:#fff;color:#28241f;font-size:16px}

/* Standalone success dialog: independent of the four-step configurator. */
html.nitos-receipt-open{overflow:hidden}
#top dialog.nitos-receipt-dialog{box-sizing:border-box;width:calc(100% - 32px);max-width:620px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid #ddcdbb;border-radius:20px;background:#fffaf2;color:#302b25;box-shadow:0 22px 80px #302b2538;overflow:auto;font-family:'Open Sans',sans-serif}
#top dialog.nitos-receipt-dialog::backdrop{background:rgba(38,30,22,.55)}
#top .nitos-receipt-dialog>.nitos-confirmation{padding:32px;border:0;border-radius:0}
#top .nitos-receipt-dialog h2{font-family:'Open Sans Condensed',sans-serif;font-size:30px;line-height:1.15;padding-right:0}
#top .nitos-review-invitation{margin-top:24px;padding-top:24px;border-top:1px solid #ddcdbb}
#top .nitos-review-invitation h3{font-family:'Open Sans',sans-serif;font-weight:700;font-size:18px;line-height:1.4;text-transform:none;letter-spacing:0;margin:0 0 8px;color:#302b25}
#top .nitos-confirmation .nitos-review-invitation p{font-size:15px;line-height:1.6;margin-bottom:14px}
#top .nitos-review-link,#top .nitos-receipt-reopen{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:48px;padding:10px 16px;border:1px solid #b64610;border-radius:10px;background:white;color:#a73e0b;font-size:15px;font-weight:700;text-decoration:none;line-height:1.4;white-space:normal}
#top .nitos-receipt-actions{display:flex;justify-content:flex-end;margin-top:24px}
#top .nitos-receipt-close{min-height:48px;min-width:120px;padding:10px 24px;border:0;border-radius:10px;background:#b64610;color:#fff;font:700 16px/1.4 'Open Sans',sans-serif;cursor:pointer}
#top .nitos-receipt-dialog :is(a,button):focus-visible{outline:3px solid #302b25;outline-offset:3px}
@media(max-width:600px){#top dialog.nitos-receipt-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:16px}#top .nitos-receipt-dialog>.nitos-confirmation{padding:22px}#top .nitos-receipt-dialog h2{font-size:26px}#top .nitos-review-link{width:100%}#top .nitos-receipt-close{width:100%}}
