/* Indigo Apple Store storefront (site 21) - first-party styles, loaded AFTER the legacy Apple store theme
 * (bootstrap, style-custom, demo - migrated from ecom_apple_new_fe to /mnt/bigdisk/applestore_newsite/theme).
 * Only what the theme does not already cover: Klaro, search suggestions, flash/toast, the header account icon
 * and the page helpers this storefront adds. The variable NAMES are shared with the page files; the VALUES are the
 * legacy Apple palette: primary navy #08205E -> #395CCC (the BUY button gradient), ink #1D1D1F, grey ground
 * #F5F5F7, hairline #D2D2D7, muted #6E6E73. Font: SF Pro (theme). Served from /static/ias/css/ias.css. */

:root {
    --ias-maroon: #08205E;
    --ias-maroon-dark: #06174A;
    --ias-gold: #395CCC;
    --ias-gold-2: #0071E3;
    --ias-ink: #1D1D1F;
    --ias-beige: #F5F5F7;
    --ias-beige-2: #E8EDFB;
    --ias-taupe: #D2D2D7;
    --ias-muted: #6E6E73;
    --ias-gradient: linear-gradient(90deg, #08205E 0, #395CCC 100%);
}

.visually-hidden-focusable:not(:focus):not(:focus-within) { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 2000; background: #fff; color: var(--ias-maroon); padding: 8px 12px; }

main.ias-main { min-height: 40vh; padding: 0; }
.ias-flash { border-radius: 0; }
.ias-link-btn { background: none; border: 0; padding: 0; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.ias-link-btn:hover, .ias-link-btn:focus { text-decoration: underline; }
.footer-links .ias-link-btn { color: #383C42; font-size: 14px; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; }

/* ---------------------------------------------------------------- buttons in the Maharaja style */
.ias-primary-btn, .ias-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 48px; padding: 12px 24px; border: 1px solid var(--ias-maroon); border-radius: 0;
    background: var(--ias-maroon); color: #fff; font-family: "NunitoSamiBoldDisplay", "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif;
    letter-spacing: .04em; text-decoration: none; cursor: pointer;
}
.ias-primary-btn:hover, .ias-btn:hover, .ias-primary-btn:focus, .ias-btn:focus { background: var(--ias-maroon-dark); color: #fff; }
.ias-btn-outline {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 48px; padding: 12px 24px; border: 1px solid var(--ias-maroon); border-radius: 0;
    background: transparent; color: var(--ias-maroon); text-decoration: none; cursor: pointer;
}
.ias-btn-outline:hover, .ias-btn-outline:focus { background: var(--ias-beige-2); color: var(--ias-maroon); }
.ias-btn-sm { min-height: 36px; padding: 6px 14px; font-size: 14px; }
button[disabled].ias-primary-btn { opacity: .6; cursor: default; }

/* ---------------------------------------------------------------- search suggestions */
.autoSearchList[hidden] { display: none !important; }
.autoSearchList { position: absolute; left: 0; right: 0; top: 100%; background: #fff; z-index: 1060; border: 1px solid var(--ias-taupe); max-height: 360px; overflow: auto; }
.ias-suggest-list li a { display: block; padding: 10px 16px; color: var(--ias-ink); text-decoration: none; }
.ias-suggest-list li a:hover, .ias-suggest-list li a:focus { background: var(--ias-beige); color: var(--ias-maroon); }
.ias-suggest-list .ias-suggest-all { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; color: var(--ias-maroon); }
.ias-suggest-list small { color: var(--ias-muted); }


/* ---------------------------------------------------------------- loader */
.ias-loader { position: fixed; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(245, 241, 236, .6); z-index: 3000; }
.ias-loader[hidden] { display: none; }

/* ---------------------------------------------------------------- login panel */
#loginPanel { max-width: 460px; width: 100%; background: #fff; }
.login-panel-header { padding: 32px 32px 8px; }
.login-title { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; color: var(--ias-maroon); font-size: 28px; margin: 0; }
.login-panel-body { padding: 8px 32px 32px; }
.login-subtitle { color: var(--ias-muted); }

/* ---------------------------------------------------------------- redirect modal (theme classes; safety net) */
.redirect-modal-content { border-radius: 24px; border: 0; }
.redirect-primary-btn { background: var(--ias-maroon); color: #fff; border: 1px solid var(--ias-maroon); border-radius: 10px; padding: 12px 24px; }
.redirect-outline-btn { background: #fff; color: var(--ias-maroon); border: 1px solid var(--ias-maroon); border-radius: 10px; padding: 12px 24px; }
.redirect-primary-btn:hover, .redirect-primary-btn:focus { background: var(--ias-maroon-dark); }

/* ---------------------------------------------------------------- Klaro in the Maharaja palette */
.klaro .cookie-notice:not(.cookie-modal-notice), .klaro .cookie-modal .cm-modal.cm-klaro {
    background: #fff !important; color: var(--ias-ink) !important; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif;
    border-radius: 16px !important; box-shadow: 0 12px 40px rgba(33, 29, 26, .18) !important;
}
.klaro .cookie-notice:not(.cookie-modal-notice) { border: 1px solid var(--ias-beige-2) !important; }
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body p, .klaro .cookie-modal p, .klaro .cookie-modal .cm-list-description { color: #383C42 !important; }
.klaro .cookie-notice a, .klaro .cookie-modal a { color: var(--ias-maroon) !important; }
.klaro .cm-btn { border-radius: 10px !important; padding: 10px 18px !important; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; }
.klaro .cm-btn.cm-btn-success, .klaro .cm-btn.cm-btn-accept-all { background: var(--ias-maroon) !important; color: #fff !important; }
.klaro .cm-btn.cm-btn-danger, .klaro .cm-btn.cn-decline { background: #fff !important; color: var(--ias-maroon) !important; border: 1px solid var(--ias-maroon) !important; }
.klaro .cm-btn.cm-btn-info, .klaro .cm-btn.cm-btn-accept { background: var(--ias-beige-2) !important; color: var(--ias-maroon) !important; }
.klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider { background-color: var(--ias-maroon) !important; }
.klaro .cookie-modal .cm-list-input.required:checked + .cm-list-label .slider { background-color: var(--ias-gold) !important; opacity: .8; }
.klaro .cookie-modal .cm-header h1, .klaro .cookie-modal .cm-header .title { color: var(--ias-maroon) !important; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; }
.klaro .cn-learn-more { color: var(--ias-maroon) !important; text-decoration: underline; }
.ias-cc-title { display: block; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; font-size: 18px; color: var(--ias-maroon); margin-bottom: 6px; }
.ias-cc-verbose { display: block; }

/* ---------------------------------------------------------------- generic page chrome for added pages */
.ias-page { padding-block: 40px 64px; }
.ias-page-title { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; color: var(--ias-maroon); font-size: 32px; margin-bottom: 8px; }
.ias-page-sub { color: var(--ias-muted); margin-bottom: 24px; }
.ias-card { background: #fff; border: 1px solid var(--ias-beige); padding: 24px; margin-bottom: 24px; }
.ias-card h2, .ias-card h3 { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; color: var(--ias-ink); font-size: 18px; }
.ias-muted { color: var(--ias-muted); }
.ias-form .form-control, .ias-form .form-select { border-radius: 0; min-height: 48px; border-color: var(--ias-taupe); }
.ias-form .form-control:focus, .ias-form .form-select:focus { border-color: var(--ias-maroon); box-shadow: 0 0 0 .2rem rgba(91, 31, 42, .15); }
.ias-form .form-label { color: #383C42; font-size: 14px; }
.ias-empty { text-align: center; padding: 64px 16px; background: #fff; }
.ias-empty h2 { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; color: var(--ias-maroon); }

@media (max-width: 767.98px) {
    .ias-page { padding-block: 24px 40px; }
    .ias-page-title { font-size: 26px; }
    .login-panel-header, .login-panel-body { padding-left: 20px; padding-right: 20px; }
}

/* ---------------------------------------------------------------- listing (skuproductsearch look) */
.sku-listing-section a.filter-chip { display: inline-flex; align-items: center; flex-shrink: 0; color: #8B837A; font-size: 13px; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; }
.sku-listing-section a.filter-chip.active { background: var(--ias-beige); border-color: var(--ias-taupe); color: var(--ias-ink); }
.filter-left .filter-category { display: block; width: 100%; background: transparent; border: 0; text-align: left; }
.ias-filter-check { width: 18px; height: 18px; accent-color: var(--ias-maroon); cursor: pointer; }
.filter-option span { flex: 1; }
.ias-oos { color: #A33; font-size: 13px; margin-top: 4px; }
.product-card .wishlist button img { width: 24px; }

/* ---------------------------------------------------------------- product page */
.ias-pdp-breadcrumb { padding: 0 .75rem; }
.ias-pdp-brand { color: var(--ias-gold); letter-spacing: .08em; text-transform: uppercase; font-size: 13px; }
.ias-pdp-short { color: #383C42; }
.qty-box .ias-qty-input { width: 48px; text-align: center; border: 0; background: transparent; -moz-appearance: textfield; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; }
.qty-box .ias-qty-input::-webkit-outer-spin-button, .qty-box .ias-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.option-box.ias-variant-current { border-color: var(--ias-maroon) !important; background: var(--ias-beige-2); color: var(--ias-maroon); }
.option-box { color: var(--ias-ink); }
.ias-gallery .img-thumbnail.active, .ias-gallery [data-ias-thumb].active img { outline: 2px solid var(--ias-maroon); }
.ias-stars span { color: var(--ias-taupe); font-size: 18px; }
.ias-stars span.on { color: var(--ias-gold); }
.ias-spec-table th { width: 40%; font-weight: normal; color: var(--ias-muted); }
.pincode-message:empty { display: none; }
.ias-related { margin-top: 24px; }
.breadcrumb-item.ias-bc-current { color: var(--ias-ink); display: inline-flex; align-items: center; }
.breadcrumb-item + .breadcrumb-item::before { content: none; }

/* ---- account & auth (agent) */
.ias-auth { max-width: 480px; margin: 0 auto; background: #fff; border: 1px solid var(--ias-beige); padding: 40px 40px 32px; }
.ias-auth-wide { max-width: 640px; }
.ias-auth .login_logo { margin: 0 auto 24px; text-align: center; }
.ias-auth .ias-page-title, .ias-auth .ias-page-sub { text-align: center; }
.ias-auth .ias-primary-btn { width: 100%; text-transform: uppercase; }
.ias-auth-switch { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin-top: 24px; }
.ias-auth-switch p { margin: 0; color: var(--ias-ink); }
.ias-auth-switch a { color: var(--ias-maroon); font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; }
.ias-otp-input { text-align: center; letter-spacing: .5em; font-size: 22px; }
.ias-hint { color: var(--ias-muted); font-size: 13px; margin: 6px 0 0; }
.ias-form .input-group-text { border-radius: 0; border: 1px solid var(--ias-taupe); border-right: 0; background: var(--ias-beige); color: var(--ias-ink); }
.ias-form .form-check-input:checked { background-color: var(--ias-maroon); border-color: var(--ias-maroon); }
.ias-segment { display: flex; border: 1px solid var(--ias-maroon); margin-bottom: 8px; }
.ias-segment a { flex: 1; text-align: center; padding: 10px; color: var(--ias-maroon); text-decoration: none; }
.ias-segment a[aria-current] { background: var(--ias-maroon); color: #fff; }
.ias-acct-head .profile-header-body { display: flex; gap: 20px; align-items: flex-start; padding: 28px 32px; }
.ias-acct-head .profile_user_name { margin-top: 0; }
.ias-avatar { flex-shrink: 0; width: 64px; height: 64px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--ias-gold); color: #fff; font-size: 28px; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; }
.ias-acct-tabs .nav-link { min-width: 0; padding: 10px 18px; }
.ias-acct-tabs button.nav-link { background: none; }
.ias-tag { display: inline-block; padding: 1px 8px; background: var(--ias-gold); color: #fff; font-size: 12px; letter-spacing: .04em; }
.ias-status { display: inline-block; padding: 2px 10px; background: var(--ias-beige-2); color: var(--ias-maroon); font-size: 13px; }
.ias-thumb { width: 72px; height: 72px; object-fit: cover; background: var(--ias-beige); }
.ias-timeline { list-style: none; margin: 12px 0 0 6px; padding: 0; border-left: 2px solid var(--ias-taupe); }
.ias-timeline li { position: relative; padding: 0 0 10px 16px; }
.ias-timeline li::before { content: ""; position: absolute; left: -6px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: var(--ias-taupe); }
.ias-timeline li[aria-current]::before { background: var(--ias-maroon); }
.ias-note-unread { border-left: 3px solid var(--ias-gold); }
.ias-table th { color: var(--ias-muted); font-weight: normal; font-size: 13px; }
.ias-pager .page-link { border-radius: 0 !important; color: var(--ias-maroon); }
.ias-pager .page-item.active .page-link { background: var(--ias-maroon); border-color: var(--ias-maroon); color: #fff; }
@media (max-width: 767.98px) {
    .ias-auth { padding: 28px 20px 24px; }
    .ias-acct-tabs { flex-wrap: nowrap; justify-content: flex-start !important; }
    .ias-acct-tabs .nav-item { flex: 0 0 auto; }
    .ias-acct-head .profile-header-body { padding: 20px 16px; }
}

/* ---------------------------------------------------------------- checkout (Maharaja palette on the flow's own classes) */
.ias-checkout .steps { display: flex; flex-wrap: wrap; gap: 8px 24px; list-style: none; padding: 0; margin: 0 0 24px; }
.ias-checkout .steps li { display: flex; align-items: center; gap: 8px; color: var(--ias-muted); font-size: 14px; }
.ias-checkout .steps li a { color: inherit; text-decoration: none; display: flex; align-items: center; gap: 8px; }
.ias-checkout .steps .step-no { width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--ias-taupe); display: inline-flex; align-items: center; justify-content: center; background: #fff; }
.ias-checkout .steps li[aria-current="step"] { color: var(--ias-maroon); font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; }
.ias-checkout .steps li[aria-current="step"] .step-no { background: var(--ias-maroon); border-color: var(--ias-maroon); color: #fff; }
.checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 24px; align-items: start; }
.co-section, .review-block { background: #fff; border: 1px solid var(--ias-beige); padding: 24px; margin-bottom: 24px; }
.co-heading, .review-block h2 { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; font-size: 18px; color: var(--ias-ink); display: flex; align-items: center; gap: 10px; margin-bottom: 16px; }
.co-no { width: 28px; height: 28px; border-radius: 50%; background: var(--ias-maroon); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 14px; }
.choice-group { border: 0; padding: 0; margin: 0; display: grid; gap: 12px; }
.choice-group > legend { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; font-size: 15px; margin-bottom: 8px; }
.choice-card { display: flex; gap: 12px; align-items: flex-start; border: 1px solid var(--ias-taupe); padding: 16px; background: #fff; cursor: pointer; color: var(--ias-ink); text-decoration: none; }
.choice-card:hover { border-color: var(--ias-gold); }
.choice-card input[type="radio"], .choice-card input[type="checkbox"], .check input { accent-color: var(--ias-maroon); margin-top: 4px; }
.choice-card:has(input:checked) { border-color: var(--ias-maroon); background: var(--ias-beige-2); }
.add-card { align-items: center; border-style: dashed; color: var(--ias-maroon); }
.add-card[hidden] { display: none; }
.add-plus { width: 28px; height: 28px; border: 1px solid var(--ias-maroon); border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.add-head { display: flex; justify-content: space-between; align-items: center; }
.add-cancel { color: var(--ias-maroon); }
.tag { display: inline-block; background: var(--ias-beige-2); color: var(--ias-maroon); font-size: 12px; padding: 2px 8px; margin-left: 6px; }
.check, .billing-toggle { display: flex; gap: 8px; align-items: flex-start; margin: 12px 0; }
.reveal[hidden] { display: none; }
.cart-summary { background: #fff; border: 1px solid var(--ias-beige); padding: 24px; position: sticky; top: 16px; }
.cart-summary h2 { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; font-size: 16px; text-transform: uppercase; letter-spacing: .06em; color: var(--ias-maroon); }
.totals { margin: 16px 0; }
.totals > div { display: flex; justify-content: space-between; padding: 8px 0; border-bottom: 1px solid var(--ias-beige); }
.totals dt { font-weight: normal; color: #383C42; }
.totals dd { margin: 0; }
.totals .total { border-bottom: 0; font-family: "NunitoBoldDisplay", sans-serif; font-size: 18px; color: var(--ias-ink); }
.co-lines, .cart-lines, .plain-list { list-style: none; padding: 0; margin: 0; }
.co-lines li { display: grid; grid-template-columns: 48px 1fr auto; gap: 12px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--ias-beige); }
.co-thumb { width: 48px; height: 48px; background: var(--ias-beige); display: block; }
.cart-line { display: grid; grid-template-columns: 72px 1fr auto; gap: 16px; align-items: start; padding: 16px 0; border-bottom: 1px solid var(--ias-beige); }
.cart-thumb img { width: 72px; height: 72px; object-fit: contain; }
.cart-name { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; color: var(--ias-ink); }
.cart-line-total { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; white-space: nowrap; }
.stock-out { color: #A33; font-size: 13px; }
.you-save { color: #2E7D32; font-size: 14px; }
.inline-fields { display: flex; gap: 8px; flex-wrap: wrap; }
.inline-fields input { flex: 1 1 200px; min-height: 48px; border: 1px solid var(--ias-taupe); padding: 0 12px; }
.stack-form { display: grid; gap: 12px; }
.stack-form label { font-size: 14px; color: #383C42; }
.stack-form input[type="text"], .stack-form input[type="tel"], .stack-form input[type="email"], .stack-form input[type="number"], .stack-form select, .stack-form textarea {
    width: 100%; min-height: 48px; border: 1px solid var(--ias-taupe); padding: 10px 12px; background: #fff; border-radius: 0; }
.stack-form input:focus, .stack-form select:focus, .stack-form textarea:focus { outline: 2px solid rgba(91, 31, 42, .25); border-color: var(--ias-maroon); }
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.input-prefix { display: flex; align-items: stretch; }
.input-prefix > span { display: inline-flex; align-items: center; padding: 0 12px; border: 1px solid var(--ias-taupe); border-right: 0; background: var(--ias-beige); }
.hint, .muted { color: var(--ias-muted); }
.small { font-size: 13px; }
.mono { font-variant-numeric: tabular-nums; }
.form-subhead { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; margin: 8px 0 0; }
.pin-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; align-items: end; }
.pin-row .pin-hint { grid-column: 1 / -1; order: 4; margin: 0; }
.pin-row input[readonly] { background: var(--ias-beige); }
.ias-auth-card { max-width: 560px; }
.ias-thanks .lead { font-size: 18px; }
.ias-thanks-img { max-width: 220px; }
.ias-membership { max-width: 520px; }
.ias-membership-logo { width: 180px; }
@media (max-width: 991.98px) {
    .checkout-layout { grid-template-columns: 1fr; }
    .cart-summary { position: static; }
}
@media (max-width: 575.98px) {
    .grid-2, .pin-row { grid-template-columns: 1fr; }
}

/* ---- services & content (agent) */
.ias-sd .breadcrumb { font-size: 14px; }
.ias-sd-heading { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; color: var(--ias-ink); font-size: 20px; margin-bottom: 16px; }
.ias-sd-service h3 a { color: var(--ias-maroon); }
.ias-sd-day { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; font-size: 16px; color: var(--ias-ink); margin: 20px 0 10px; }
.ias-slot-list, .ias-pill-list, .ias-provider-list, .ias-booking-list { list-style: none; padding: 0; margin-left: 0; }
.ias-slot-list, .ias-pill-list { display: flex; flex-wrap: wrap; gap: 8px; }
.ias-slot-list form { margin: 0; }
.ias-slot { display: inline-flex; align-items: center; justify-content: center; min-width: 84px; min-height: 40px; padding: 6px 18px; border: 1px solid var(--ias-maroon); border-radius: 999px; background: #fff; color: var(--ias-maroon); cursor: pointer; }
.ias-slot:hover, .ias-slot:focus-visible { background: var(--ias-maroon); color: #fff; }
.ias-slot:disabled { background: var(--ias-maroon); color: #fff; opacity: .7; }
.ias-slot-static { border-color: var(--ias-taupe); color: var(--ias-muted); cursor: default; }
.ias-slot-static:hover { background: #fff; color: var(--ias-muted); }
.ias-pill { display: inline-block; padding: 4px 14px; border: 1px solid var(--ias-gold); border-radius: 999px; color: var(--ias-ink); background: var(--ias-beige); font-size: 14px; }
.ias-provider { display: flex; align-items: center; gap: 12px; padding: 12px; background: #fff; border: 1px solid var(--ias-beige); height: 100%; }
.ias-provider .ias-avatar { width: 44px; height: 44px; font-size: 16px; }
.ias-dl > div { display: flex; justify-content: space-between; gap: 16px; padding: 8px 0; border-bottom: 1px solid var(--ias-beige); }
.ias-dl > div:last-child { border-bottom: 0; }
.ias-dl dt { font-weight: normal; color: var(--ias-muted); }
.ias-dl dd { margin: 0; text-align: right; color: var(--ias-ink); }
.ias-dl .ias-dl-total dt, .ias-dl .ias-dl-total dd { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; color: var(--ias-maroon); }
.ias-hold-timer { padding: 12px 16px; background: var(--ias-beige-2); border-left: 3px solid var(--ias-gold); }
.ias-danger-zone { border-color: var(--ias-taupe); }
.ias-error { max-width: 720px; }
.ias-error-code { font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; font-size: 96px; line-height: 1; color: var(--ias-gold); margin-bottom: 8px; }
.ias-error-search { max-width: 520px; }
.ias-contact-care { padding: 12px 16px; background: var(--ias-beige); }
.ias-contact-care a { color: var(--ias-maroon); }

/* ---- Checkout in The Maharaja Shop markup (bag, delivery, review, result) ---------------------------------
   The Maharaja Shop checkout has no <main> ground: the body's beige shows behind the white cards
   (the theme's demo.css paints every <main> white with !important, so this needs it too). */
body.ias-ground main.ias-main { background: transparent !important; }
/* Saved-address / pickup / payment cards chosen with a visually hidden radio (the theme marks .active). */
.checkout-address-card { position: relative; display: block; }
.ias-card-radio { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.checkout-address-card:has(.ias-card-radio:checked) { border-color: #0071E3 !important; box-shadow: inset 0 0 0 1px #0071E3; }
.checkout-address-card:has(.ias-card-radio:checked) .checkout-address-line,
.checkout-address-card:has(.ias-card-radio:checked) .checkout-address-name,
.checkout-address-card:has(.ias-card-radio:checked) .checkout-address-type-label { color: #211d1a; font-family: "SFProTextDisplay", -apple-system, "Helvetica Neue", Arial, sans-serif; font-weight: 700; }
.checkout-address-card:has(.ias-card-radio:focus-visible) { outline: 2px solid #0071E3; outline-offset: 2px; }
.checkout-address-panel legend.saved_address, .checkout-address-form h2.saved_address, .card_inner h2.saved_address { float: none; width: auto; }
/* +91 in the phone group (a label, not a control: the site is India-only). */
.ias-phone-code { display: flex; align-items: center; background-image: none; padding: 0 12px; color: #211d1a; }
.checkout-phone-verify-row { display: flex; gap: 10px; align-items: stretch; }
.ias-send-otp-btn { flex: 0 0 182px; background: #0071E3; color: #fff; border: 1px solid #0071E3; border-radius: 0; font-size: 14px; font-weight: 600; letter-spacing: .7px; min-height: 44px; }
.ias-send-otp-btn:hover, .ias-send-otp-btn:focus-visible { background: #06174A; color: #fff; }
.ias-resend-btn { flex: 0 0 182px; border-radius: 0; min-height: 44px; }
.ias-otp-single { max-width: 220px; height: 44px; letter-spacing: .5em; text-align: center; font-size: 18px; }
.ias-thanku-img { width: 100px; }
.ias-form-legend { font-size: 14px; margin-bottom: 8px; float: none; }
@media (max-width: 767px) {
    .checkout-phone-verify-row { flex-wrap: wrap; }
    .ias-send-otp-btn, .ias-resend-btn { flex: 1 1 100%; }
    body.ias-ground main.ias-main { padding-bottom: 72px; }
}
/* A guest's billing form is locked until the code is verified; it keeps The Maharaja Shop's white fields. */
.checkout-billing-address-form fieldset:disabled .form-control { background-color: #fff; }
.checkout-address-form-actions a.back__to__store { text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
.ias-thanku-emblem { width: 134px; height: 157px; object-fit: contain; display: block; }
/* Long item names: the theme sets a 2-line clamp but not the box it needs, so a third line bled through. */
.cart-item-info .parent_sku_name, .review-bag-item-info .parent_sku_name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; line-height: 1.35 !important; height: auto !important; max-height: 2.7em; }

/* ---- The Maharaja Shop page ground (all pages): beige behind white cards, as the old site has no <main> -------- */
main.ias-main { background: transparent !important; }
/* /login: the "Welcome back" panel over the darkened hero, as the old site opens #loginPanel over its home page. */
.ias-login-stage { position: relative; min-height: 640px; background: #211d1a url("../../www/images/hero_image.png") center / cover no-repeat; }
.ias-login-stage::before { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .55); }
.ias-login-panel { position: relative; margin-left: auto; width: 572px; max-width: 100%; min-height: 640px; background: #f5f1ec; padding: 44px 40px; }
.ias-panel-close { position: absolute; top: 16px; right: 16px; z-index: 2; }
@media (max-width: 767px) {
    .ias-login-stage { min-height: 0; background: #f5f1ec; }
    .ias-login-stage::before { display: none; }
    .ias-login-panel { width: 100%; min-height: 0; padding: 32px 20px; }
}

/* Home "Featured Global Brands": The Maharaja Shop shows transparent PNG logos; the shared brand images here are
   JPGs on white. multiply blends the white into the beige ground. The slick track's transform isolates the blend,
   so the track itself carries the ground colour as the backdrop (a backdrop on the link left a white seam where
   slick clips a slide; the theme also forces background:0 0 !important on slide, link and image). */
.global-brands-section #brand_slider.product-slider .slick-track { background: var(--ias-beige); }
.global-brands-section #brand_slider.product-slider .slide-item img { mix-blend-mode: multiply; }
/* The image background per feature (brand / category / banner) is painted by /ias/site.css, generated from
   site_config *_IMAGE_BG (owner) or ias.properties ias.image.bg.* (developer); see ImageBackground. */

/* ------------------------------------------------------------------ site 21: legacy Apple layout helpers */
body { background: #F5F5F7; }
main.ias-main { padding-top: 0; }
.logo-width-new { max-width: 252px; height: auto; }
.ias-primary-btn, .ias-btn { background: var(--ias-gradient); border: 0; border-radius: 8px; }
.ias-account-icon a { display: inline-flex; align-items: center; justify-content: center; }
.ias-initials { width: 26px; height: 26px; border-radius: 50%; background: var(--ias-gradient); color: #fff; font-size: 11px;
    text-decoration: none; letter-spacing: .02em; }
.ias-initials:hover, .ias-initials:focus { color: #fff; }
.ias-menu-back { width: 40px; }
.footer-link-item .ias-link-btn { color: #424245; font-size: 14px; }

.footer-link-item .ias-link-btn { background: none; border: 0; padding: 0; color: #424245; font-size: 14px; line-height: inherit; }
.footer-link-item .ias-link-btn:focus-visible { outline: 2px solid #0071E3; }
.logo [data-ias-back] { flex: 0 0 24px; }
.logo [data-ias-back] img { width: 24px; min-width: 24px; }
.inner-page main.ias-main { padding-top: 40px; }
/* help / policy pages */
.ias-placeholder-note { background: #FFF8E1; border: 1px solid #F5D77A; color: #6B5300; padding: 8px 12px; border-radius: 8px; font-size: 13px; }
.ias-help-text p { font-size: 15px; line-height: 1.6; }
@media (max-width: 575.98px) {
    .apple-header .logo-width-new { max-width: 150px; }
    .apple-header .logo.gap-3 { gap: .5rem !important; }
    .apple-header .header-right .block-search { margin-left: 10px; }
}
