/* Diva Vibe | Boutique checkout, size chart, receipts and tracking */
.dv-order-page,.dv-success-page,.dv-track-page{background:#f7f4ee}
.dv-order-section,.dv-track-section{padding-top:18px;padding-bottom:52px}
.dv-checkout-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,1fr);gap:26px;align-items:start}
.dv-checkout-form,.dv-side-card,.dv-track-card,.dv-success-card{background:#fffefb;border:1px solid #ded4c1;border-radius:15px;padding:24px;box-shadow:0 7px 35px #42331e08}
.dv-checkout-form{padding:0 25px}
.dv-checkout-step{padding:25px 0;border-bottom:1px solid #e8e2d7}
.dv-step-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px}
.dv-step-heading>span{font:600 13px Arial,sans-serif;display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:10px;background:#181612;color:#d3b784}
.dv-step-heading h2,.dv-side-card h2,.dv-track-card h3,.dv-size-heading h2{margin:0;font:normal 28px/1.16 Georgia,serif;letter-spacing:-.04em;color:#191712}
.dv-step-heading p,.dv-size-heading p{margin:5px 0 0;color:#777168;font:14px/1.5 Arial,sans-serif}
.dv-checkout-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 15px}
.dv-checkout-fields label,.dv-field-block{display:block;font:600 13px/1.5 Arial,sans-serif;color:#3e3830}
.dv-checkout-fields label input,.dv-checkout-fields label select,.dv-checkout-fields label textarea,.dv-field-block textarea{margin-top:7px;width:100%;padding:14px;border:1px solid #dbd4c9;border-radius:8px;background:#fff;color:#171612;font:15px Arial,sans-serif;outline-color:#a58b5c;min-height:49px;box-shadow:none}
.dv-checkout-fields input:focus,.dv-checkout-fields select:focus,.dv-checkout-fields textarea:focus{border-color:#ab9468}
.dv-span2{grid-column:1/-1}
.dv-shipping-options,.dv-payment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}
.dv-radio-card{position:relative;display:flex;align-items:flex-start;gap:10px;border:1px solid #ddd5c8;border-radius:9px;padding:13px;min-height:86px;cursor:pointer;background:#faf8f4;transition:border-color .2s,background .2s}
.dv-radio-card:has(input:checked){border-color:#ae9060;background:#f4ebdc;box-shadow:inset 0 0 0 1px #ae9060}
.dv-radio-card input{margin:4px 0 0;accent-color:#5b4a30;flex:none}
.dv-radio-card strong{display:block;font:600 14px/1.4 Arial,sans-serif;color:#201b15}
.dv-radio-card small{display:block;color:#777069;font:12px/1.4 Arial,sans-serif;margin-top:5px}
.dv-field-block textarea{width:100%;display:block}
.dv-order-submit{padding:23px 0 25px}.dv-order-submit .button{width:100%;padding:16px}
.dv-order-submit p{font:12px/1.55 Arial,sans-serif;color:#807b73;text-align:center;margin:12px 0 0}
.dv-side-card{position:sticky;top:124px}.dv-side-card h2{margin:10px 0 18px}
.dv-side-card .cart-item{padding:10px 0;gap:10px}.dv-side-card .cart-item img{width:57px;height:72px}
.dv-side-card .cart-item h3{font:600 13px/1.4 Arial,sans-serif}
.dv-review-modal{padding:22px;max-height:calc(90dvh - 90px);overflow-y:auto}
.dv-review-section{border-bottom:1px solid #e7e0d3;padding:13px 0}
.dv-review-section>strong{display:block;color:#9e8254;font:600 11px/1.5 Arial,sans-serif;letter-spacing:1.3px;text-transform:uppercase}
.dv-review-section p{font:14px/1.6 Arial,sans-serif;margin:7px 0 0;overflow-wrap:anywhere}
.dv-review-item{display:flex;justify-content:space-between;gap:12px;font:13px/1.4 Arial,sans-serif;padding:10px 0;border-bottom:1px solid #ede8df}
.dv-review-item span{min-width:0}.dv-review-item small{display:block;color:#898177;margin-top:4px}
.dv-review-item strong{flex:none;white-space:nowrap}
.dv-review-total{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #d6c9b4;margin-top:18px;padding:17px 0;font:600 14px Arial,sans-serif}
.dv-review-total strong{font:normal 23px Georgia,serif}
.dv-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dv-review-actions .button{padding:13px 7px;font-size:11px;min-width:0}
.dv-success-card{max-width:660px;text-align:center;margin:0 auto;padding:36px 28px}
.dv-big-ref{font:normal 36px Georgia,serif;margin:16px 0;color:#191612;letter-spacing:.03em}
.dv-success-card>p{color:#756e64;font:14px/1.6 Arial,sans-serif}
.dv-receipt-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0 12px}
.dv-receipt-actions .button{padding:13px 7px;min-width:0;font-size:11px;line-height:1.4;white-space:normal}
.dv-success-card .dv-private-note{font-size:11px;color:#8e8476}
.dv-track-card{max-width:820px;margin:auto;padding:28px}
.dv-track-card h3{font-size:23px;margin:24px 0 16px}
.dv-track-result:empty{display:none}
.dv-tracking-top{border-bottom:1px solid #e9e2d6;padding-bottom:18px}
.dv-tracking-top h2{font:normal 33px Georgia,serif;margin:10px 0 2px;letter-spacing:.02em}
.dv-tracking-top p{font:12px Arial,sans-serif;color:#80776f}
.dv-order-badge{display:inline-flex;padding:8px 14px;border-radius:50px;border:1px solid #cab58d;background:#f2ebde;color:#79603c;font:600 12px Arial,sans-serif}
.dv-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:22px 0;position:relative}
.dv-progress:before{content:'';height:2px;background:#e4ddcf;position:absolute;top:17px;left:13%;right:13%;z-index:0}
.dv-progress-step{position:relative;display:flex;align-items:center;flex-direction:column;gap:9px;text-align:center;font:11px/1.4 Arial,sans-serif;color:#968d81}
.dv-progress-icon{width:36px;height:36px;display:grid;place-items:center;background:#f6f2ea;border:1px solid #d3c6b3;border-radius:50%;color:#8d8477;font:700 12px Arial,sans-serif;z-index:1}
.dv-progress-step.is-done .dv-progress-icon{background:#241f18;border-color:#241f18;color:#f4db9e}
.dv-progress-step.is-current{color:#30251a;font-weight:700}
.dv-progress-step.is-current .dv-progress-icon{outline:3px solid #e9dbc3}
.dv-await-note,.dv-cancelled{padding:14px;background:#f7f0e3;color:#816d4d;border:1px solid #e5d5b7;border-radius:8px;font:13px/1.5 Arial,sans-serif}
.dv-cancelled{color:#9b442f;background:#fff1ed;border-color:#eed0c7}
.dv-track-summary{margin-top:24px;padding-top:7px;border-top:1px solid #e8dfd0}
.dv-size-guide{max-width:880px;margin:0 auto}
.dv-size-section{padding-top:18px;padding-bottom:45px}
.dv-size-heading{text-align:center;margin:6px 0 22px}
.dv-size-heading h2{font-size:34px;margin:13px 0}
.dv-size-heading p{max-width:500px;margin:0 auto}
.dv-size-table-wrap{overflow-x:auto;border:1px solid #e3d9c9;border-radius:10px;background:#fffdf9}
.dv-size-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:0;color:#24201a;font:13px/1.45 Arial,sans-serif}
.dv-size-table th{font-weight:600;background:#eee7da;color:#50422e}
.dv-size-table th,.dv-size-table td{padding:15px 10px;text-align:center;border-right:1px solid #eee8df;border-bottom:1px solid #eee8df}
.dv-size-table tbody tr:last-child td{border-bottom:0}.dv-size-table tr>*:last-child{border-right:0}
.dv-size-table .dv-size-name{font-weight:700;color:#221b11}
.dv-size-note{font:12px/1.6 Arial,sans-serif;text-align:center;max-width:680px;color:#85786b;margin:18px auto}
.dv-size-guide>a.button{display:block;max-width:285px;margin:22px auto;text-align:center}
#sizeDialog{max-width:780px;width:min(96vw,780px)}#sizeDialog .size-body{padding:18px 24px 26px;overflow:auto;max-height:75dvh}
#sizeDialog .dv-size-heading h2{font-size:27px}
/* Compact boutique footer retains access to key pages */
footer{padding:25px 5% 13px!important;background:#080808;color:#f6f1e7}
.footer-top{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:20px!important}
footer .brand-logo{width:77px!important;height:67px!important;object-fit:contain}
.footer-top>div:first-child p{display:none}
.footer-top h3{letter-spacing:1.6px;margin:5px 0 9px!important;font-size:9px!important}
.footer-top a:not(.brand),.footer-top button{font-size:12px!important;line-height:1.45;margin-bottom:8px!important}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px!important;padding-top:12px!important;font-size:11px!important}
@media(max-width:700px){
 .dv-checkout-layout{grid-template-columns:minmax(0,1fr);gap:14px}
 .dv-order-section,.dv-track-section{padding:12px 4.2% 35px}
 .dv-checkout-form{padding:0 17px;border-radius:11px}
 .dv-checkout-step{padding:22px 0}
 .dv-step-heading h2{font-size:23px}
 .dv-checkout-fields{gap:12px}
 .dv-checkout-fields label{font-size:12px}
 .dv-checkout-fields label input,.dv-checkout-fields label select,.dv-checkout-fields label textarea{font-size:16px;padding:13px}
 .dv-radio-card{min-height:85px;padding:12px 10px}
 .dv-radio-card strong{font-size:12px}.dv-radio-card small{font-size:11px}
 .dv-side-card{position:static;padding:17px}
 .dv-side-card h2{font-size:24px}
 .dv-track-card{padding:19px 16px}
 .dv-review-modal{padding:18px}
 .dv-success-card{padding:25px 17px}
 .dv-big-ref{font-size:29px}
 .dv-size-heading h2{font-size:27px}
 .dv-size-table{font-size:12px}
 .dv-size-table th,.dv-size-table td{padding:13px 5px}
 .dv-size-section{padding:12px 5% 35px}
 #sizeDialog .size-body{padding:15px 12px}
 .footer-top{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:19px 14px!important}
 .footer-top>div:first-child{grid-column:1/-1;display:flex!important;align-items:center;gap:0!important}
 footer .brand-logo{width:70px!important;height:58px!important}
 .footer-top a:not(.brand),.footer-top button{font-size:11px!important}
 .footer-top h3{font-size:9px!important}
 .footer-bottom{padding-bottom:55px!important;font-size:10px!important}
}
[dir=rtl] .dv-step-heading,[dir=rtl] .dv-radio-card{direction:rtl}
[dir=rtl] .dv-review-item,[dir=rtl] .dv-review-total{direction:rtl}
/* Keep checkout and tracking summaries unobstructed by the floating chat shortcut. */
body:has(.dv-order-page)>.whatsapp,body:has(.dv-track-page)>.whatsapp,body:has(.dv-success-page)>.whatsapp{display:none}

/* 2026-10-24: final compact mobile footer */
footer{padding:14px 5% 9px!important}
footer .footer-top{gap:10px 14px!important}
footer .brand-logo{width:54px!important;height:42px!important}
footer .footer-top h3{margin:0 0 6px!important;font-size:9px!important}
footer .footer-top a:not(.brand),footer .footer-top button{display:block;margin-bottom:3px!important;font-size:10px!important;line-height:1.3!important}
footer .footer-bottom{margin-top:10px!important;padding-top:8px!important;padding-bottom:0!important;font-size:9px!important}
@media(max-width:700px){footer{padding:13px 5% 10px!important}.footer-top{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px 8px!important}.footer-top>div:first-child{grid-column:1/-1!important;min-height:0!important}.footer-top>div:last-child{grid-column:auto!important}.footer-top h3{font-size:8px!important;letter-spacing:.7px!important}.footer-top a:not(.brand),.footer-top button{font-size:9px!important;line-height:1.35!important}.footer-bottom{display:flex!important;flex-wrap:wrap;gap:3px 12px!important;padding-bottom:0!important;margin-top:8px!important}.footer-bottom>span{margin:0!important}}
/* Checkout without duplicated order summary */
.dv-checkout-layout{grid-template-columns:minmax(0,1fr);max-width:780px;margin-inline:auto}
.dv-review-locked{position:fixed!important;width:100%;left:0;right:0;overflow:hidden!important}
#bagDialog:has(.dv-review-modal){overscroll-behavior:contain;max-height:92dvh;overflow:hidden;display:flex;flex-direction:column}
#bagDialog:has(.dv-review-modal) .dv-review-modal{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;flex:1}
#bagDialog:has(.dv-review-modal) .dialog-head{flex-shrink:0}
.dv-pickup-location{background:#f8f5ee;border:1px solid #d8c7a9;border-radius:8px;padding:17px;margin-top:18px}
.dv-pickup-location[hidden]{display:none!important}
.dv-pickup-location h3{font-size:23px;margin:6px 0 8px}
.dv-pickup-location p{font-size:13px;line-height:1.6}
.dv-pickup-location iframe{display:block;width:100%;height:245px;border:0;border-radius:5px;margin-top:12px}
.dv-map-link{display:inline-block;margin-top:12px;text-decoration:underline;text-underline-offset:4px;font-size:12px}
.dv-product-back{display:inline-flex;align-items:center;gap:9px;margin:0 0 15px;color:#2d261d;font-size:12px;font-weight:600;text-decoration:none}
.dv-product-back svg{width:17px;height:17px;transform:rotate(180deg)}
[dir=rtl] .dv-product-back svg{transform:none}
@media(max-width:700px){.dv-checkout-layout{display:block}.dv-product-back{margin:0 0 14px}.dv-pickup-location iframe{height:220px}}
