/* CRISTAL DE LA MAISON D’ITALIE® — DESIGN V2
   Public-facing templates only. Loaded after main.css and design-v1.css.
   Photographs are referenced from the existing site; no image files are changed. */
:root{--cdmi-ivory:#fcfaf7;--cdmi-paper:#fff;--cdmi-ink:#25201c;--cdmi-gold:#a58249;--cdmi-muted:#746a60;--cdmi-line:#e8dfd4}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body.design-v2{background:var(--cdmi-ivory)!important;color:var(--cdmi-ink)!important;font-family:Georgia,'Times New Roman',serif!important;width:100%!important;overflow-x:hidden!important}
body.design-v2 #page-loader{background:#fff!important;z-index:100!important}
body.design-v2 #loader-logo{max-width:min(280px,64vw)!important;width:min(260px,60vw)!important;height:auto!important;object-fit:contain}
body.design-v2 #main-header{background:#fff;position:relative;top:auto;z-index:50;box-shadow:0 2px 13px #362a1710}
body.design-v2 .cdmi-header-inner{max-width:1480px;min-height:100px;grid-template-columns:minmax(205px,265px) 1fr 104px;gap:18px;padding:10px clamp(16px,3.5%,54px)}
body.design-v2 .cdmi-logo{justify-content:flex-start;min-height:75px}
body.design-v2 .cdmi-logo img{width:100%!important;height:auto!important;max-width:255px!important;max-height:83px!important;object-fit:contain!important;object-position:left center!important}
body.design-v2 .cdmi-desktop-nav{gap:clamp(9px,1.6vw,30px);flex-wrap:wrap;row-gap:4px}
body.design-v2 .cdmi-desktop-nav a{font-size:clamp(12px,1.04vw,15px);color:var(--cdmi-ink)}
body.design-v2 .cdmi-header-actions{gap:7px}
body.design-v2 #mobile-menu-overlay{background:#fff!important;overflow-y:auto;overscroll-behavior:contain}
body.design-v2 #mobile-menu-overlay nav{padding:85px 20px 38px}
body.design-v2 #mobile-menu-overlay a{color:var(--cdmi-ink)!important}
/* Existing full-screen scroll/snap was designed for the dark V2 landing page. */
body.design-v2 main{height:auto!important;min-height:52vh!important;overflow:visible!important;width:100%!important;max-width:100vw!important;background:transparent!important;color:var(--cdmi-ink)!important;scroll-snap-type:none!important}
body.design-v2 .scroll-snap-desktop{scroll-snap-type:none!important}
body.design-v2 .snap-section-desktop{scroll-snap-align:none!important}
body.design-v2 main>div,body.design-v2 main>section{scroll-snap-align:none!important}
body.design-v2 main h1,body.design-v2 main h2,body.design-v2 main h3,body.design-v2 main h4{color:var(--cdmi-ink);letter-spacing:.005em}
body.design-v2 main p,body.design-v2 main li,body.design-v2 main label,body.design-v2 main span{color:inherit}
body.design-v2 main .text-white,body.design-v2 main .text-gray-100,body.design-v2 main .text-gray-200,body.design-v2 main .text-gray-300,body.design-v2 main .text-gray-400,body.design-v2 main .text-gray-500{color:var(--cdmi-ink)!important}
body.design-v2 main .text-amber-400,body.design-v2 main .text-amber-500{color:var(--cdmi-gold)!important}
body.design-v2 main .bg-white\/5,body.design-v2 main .bg-white\/10,body.design-v2 main .bg-black\/30,body.design-v2 main .bg-black\/80,body.design-v2 main .bg-gray-800{background:var(--cdmi-paper)!important}
body.design-v2 main .border-white\/10,body.design-v2 main .border-white\/20,body.design-v2 main .border-gray-700{border-color:var(--cdmi-line)!important}
body.design-v2 main .glass-card{background:#fff!important;color:var(--cdmi-ink)!important;border-color:var(--cdmi-line)!important;box-shadow:0 7px 30px #5b442010}
body.design-v2 main .gold-text{background:none!important;-webkit-text-fill-color:var(--cdmi-gold)!important;color:var(--cdmi-gold)!important}
/* Dark background/video overlays obscure the collection pages in the old theme. */
body.design-v2 #collections-overlay{display:none!important}
body.design-v2 main input:not([type=checkbox]):not([type=radio]),body.design-v2 main select,body.design-v2 main textarea{color:var(--cdmi-ink)!important;background:#fff!important;border-color:#d8cabc!important;max-width:100%}
body.design-v2 main input::placeholder,body.design-v2 main textarea::placeholder{color:#85796d!important}
body.design-v2 main a:not(.cdmi-btn):not(.cdmi-product-card):not(.cdmi-category-card):not(.cdmi-product-photo):not(.cdmi-view-product){transition:color .2s ease,border-color .2s ease}
body.design-v2 main a:hover{color:var(--cdmi-gold)}
body.design-v2 main :is(button,a,input,textarea,select):focus-visible{outline:2px solid var(--cdmi-gold)!important;outline-offset:3px}
body.design-v2 main [style*="color: #daa520"]{color:var(--cdmi-gold)!important}
body.design-v2 main .collection-section{background:#fff;border:1px solid var(--cdmi-line);padding:clamp(15px,2vw,32px);border-radius:8px}
body.design-v2 main .collection-section .grid>a,body.design-v2 main #products-grid>a{background:#fff;border:1px solid var(--cdmi-line);border-radius:6px;overflow:hidden;box-shadow:0 4px 18px #4a37100d}
body.design-v2 main .collection-section .grid>a>div:last-child,body.design-v2 main #products-grid>a>div:last-child{background:#fff!important;backdrop-filter:none!important;color:var(--cdmi-ink)!important}
body.design-v2 main .collection-section img,body.design-v2 main #products-grid img,body.design-v2 main .products-grid img{object-fit:cover}
body.design-v2 main .products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.design-v2 main .product-card{min-width:0;background:#fff;color:var(--cdmi-ink);border:1px solid var(--cdmi-line);border-radius:8px;overflow:hidden}
body.design-v2 main .product-card>a{display:block;padding:10px;color:var(--cdmi-ink)}
body.design-v2 main .product-card img{width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;border-radius:4px}
body.design-v2 main .product-card h3{font-size:16px;margin:12px 0 5px}
body.design-v2 main .product-card .price{font-size:15px}
body.design-v2 main #main-product-image{object-fit:contain;background:#fff}
body.design-v2 main #variant-selector button,body.design-v2 main #qty-minus,body.design-v2 main #qty-plus{border:1px solid var(--cdmi-line)!important;background:#fff!important;color:var(--cdmi-ink)!important}
body.design-v2 main #product-qty{background:#fff!important;color:var(--cdmi-ink)!important}
body.design-v2 main .prose{color:var(--cdmi-ink)!important}
body.design-v2 main .prose *{color:inherit}
body.design-v2 main nav.fixed{top:120px;max-height:75vh;overflow:auto}
body.design-v2 main .nav-link{color:var(--cdmi-ink)!important;opacity:1!important;transform:none!important}
body.design-v2 main .nav-link .indicator{background:var(--cdmi-gold)!important}
/* Hero is intentionally dark to keep the existing hero photograph legible. */
body.design-v2 main .cdmi-hero h1,body.design-v2 main .cdmi-hero p,body.design-v2 main .cdmi-hero .cdmi-btn,body.design-v2 main .cdmi-hero span{color:#fff!important}
body.design-v2 main .cdmi-hero .cdmi-btn-outline:hover,body.design-v2 main .cdmi-hero .cdmi-btn-outline:hover span{color:var(--cdmi-ink)!important}
body.design-v2 .cdmi-hero h1{font-weight:400;letter-spacing:.005em}
body.design-v2 .cdmi-hero p{font:400 clamp(16px,1.4vw,20px)/1.5 Georgia,serif;max-width:500px}
body.design-v2 .cdmi-hero-photo{object-position:50% center}
/* Updated homepage sections, all using the actual catalog/admin data. */
body.design-v2 .cdmi-section{padding-top:clamp(42px,5vw,80px);padding-bottom:clamp(34px,4vw,65px)}
body.design-v2 .cdmi-section-heading{margin-bottom:clamp(22px,3vw,36px)}
body.design-v2 .cdmi-inspirations{background:transparent}
.cdmi-inspiration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cdmi-inspiration-card{overflow:hidden;background:#fff;border:1px solid var(--cdmi-line);border-radius:7px;min-width:0}
.cdmi-inspiration-photo{aspect-ratio:4/3;background:#eee6db;overflow:hidden}
.cdmi-inspiration-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.cdmi-inspiration-card:hover img{transform:scale(1.03)}
.cdmi-inspiration-info{padding:20px}
.cdmi-inspiration-info h3{font:400 clamp(19px,1.5vw,24px)/1.25 Georgia,serif;margin:0 0 8px;color:var(--cdmi-ink)}
.cdmi-inspiration-info p{font:400 15px/1.6 Georgia,serif;color:var(--cdmi-muted)!important;margin:0}
.cdmi-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.cdmi-service-card{background:#fff;padding:26px 19px 24px;border:1px solid var(--cdmi-line);border-radius:7px;text-align:center;min-width:0;display:flex;flex-direction:column;align-items:center}
.cdmi-service-icon{font:400 27px/1 Georgia,serif;color:var(--cdmi-gold)!important;display:flex;align-items:center;justify-content:center;border:1px solid #dac8ac;width:54px;height:54px;border-radius:50%;margin-bottom:14px}
.cdmi-service-card h3{font:400 21px/1.2 Georgia,serif;margin:0 0 12px}
.cdmi-service-card p{font:400 15px/1.6 Georgia,serif;color:var(--cdmi-muted)!important;flex:1;margin:0 0 18px}
.cdmi-service-card a{font:400 14px/1.5 Georgia,serif;color:var(--cdmi-gold)!important;text-decoration:underline;text-underline-offset:4px}
.cdmi-testimonials{margin-bottom:20px}
.cdmi-testimonials-inner{background:#fff;border:1px solid var(--cdmi-line);border-radius:8px;padding:clamp(30px,4vw,55px) 25px;display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}
.cdmi-testimonials-inner p{max-width:650px;color:var(--cdmi-muted)!important;font:400 clamp(17px,1.5vw,21px)/1.6 Georgia,serif;margin:0}
body.design-v2 footer{position:relative!important;background:#211c18!important;color:#f5f0e9!important;left:auto!important;bottom:auto!important;overflow:hidden;padding:30px clamp(16px,3.5%,54px)!important}
body.design-v2 footer p,body.design-v2 footer a{color:#f4eae0!important;font:400 13px/1.55 Georgia,serif}
body.design-v2 footer a:hover{color:#dbbb86!important}
/* The existing cart panel is a deliberate dark UI; preserve its contrast and event hooks. */
body.design-v2 #cart-popup{color:#fff;font-family:'Quicksand',Arial,sans-serif}
body.design-v2 #cart-popup h2,body.design-v2 #cart-popup h3,body.design-v2 #cart-popup p,body.design-v2 #cart-popup span{color:inherit}
body.design-v2 #cart-popup #cart-panel{background:#211c18}
body.design-v2 #cart-popup #cart-checkout-btn{color:#211c18}
/* Dynamic forms have their own inline styles: override just palette, not order validation or layout. */
body.cdmi-dynamic-v2{background:var(--cdmi-ivory)!important;color:var(--cdmi-ink)!important;font-family:Georgia,'Times New Roman',serif!important}
body.cdmi-dynamic-v2 .header-light,body.cdmi-dynamic-v2>header{background:#fff!important;border-bottom:1px solid var(--cdmi-line)!important;color:var(--cdmi-ink)}
body.cdmi-dynamic-v2 .form-section,body.cdmi-dynamic-v2 .order-summary,body.cdmi-dynamic-v2 .summary-section{border:1px solid var(--cdmi-line);box-shadow:0 7px 27px #5b44200c!important;border-radius:7px}
body.cdmi-dynamic-v2 .section-title{border-bottom-color:var(--cdmi-gold)!important}
body.cdmi-dynamic-v2 .page-title{font-family:Georgia,serif!important;font-weight:400!important}
body.cdmi-dynamic-v2 .checkout-container{max-width:1250px}
body.cdmi-dynamic-v2 input:focus-visible,body.cdmi-dynamic-v2 select:focus-visible,body.cdmi-dynamic-v2 textarea:focus-visible{outline:2px solid var(--cdmi-gold);outline-offset:2px}
@media(max-width:1250px){body.design-v2 .cdmi-header-inner{grid-template-columns:200px 1fr 88px}body.design-v2 .cdmi-logo img{max-width:196px!important;max-height:77px!important}body.design-v2 .cdmi-desktop-nav{gap:12px}}
@media(max-width:1023px){body.design-v2 .cdmi-header-inner{grid-template-columns:1fr 58px;min-height:78px;padding:8px 14px 8px 68px}body.design-v2 .cdmi-logo{justify-content:center;min-height:62px}body.design-v2 .cdmi-logo img{max-width:210px!important;max-height:68px!important;object-position:center!important}body.design-v2 #mobile-menu-btn{top:22px!important;left:16px!important}body.design-v2 main nav.fixed{position:static!important}body.design-v2 main .products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cdmi-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body.design-v2 .cdmi-header-inner{padding-left:58px;grid-template-columns:1fr 48px}body.design-v2 .cdmi-logo img{max-width:190px!important;max-height:60px!important}body.design-v2 .cdmi-hero{min-height:490px}body.design-v2 .cdmi-hero-photo{object-position:62% center}.cdmi-inspiration-grid{grid-template-columns:1fr;gap:14px}.cdmi-inspiration-photo{aspect-ratio:1.3}.cdmi-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.cdmi-service-card{padding:19px 12px}.cdmi-service-card h3{font-size:17px}.cdmi-service-card p{font-size:13px}.cdmi-service-card a{font-size:12px}body.design-v2 main .products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}body.design-v2 footer{padding:26px 16px!important}body.design-v2 main>div{max-width:100%}}
@media(max-width:360px){body.design-v2 .cdmi-logo img{max-width:140px!important}.cdmi-service-grid{grid-template-columns:1fr}.cdmi-service-card{padding:20px}}
@media(prefers-reduced-motion:reduce){.cdmi-inspiration-photo img{transition:none!important}html{scroll-behavior:auto}}
/* Favorites and recently viewed: these links never submit a server-side order. */
.cdmi-favorites-link{width:38px;height:38px;position:relative;display:flex;align-items:center;justify-content:center;color:var(--cdmi-ink)}
.cdmi-favorites-link svg{width:23px;height:23px}
.cdmi-favorite-count{position:absolute;top:-1px;right:-4px;font:600 10px/17px Arial,sans-serif!important;text-align:center;background:var(--cdmi-gold);color:#fff!important;width:17px;height:17px;border-radius:50%}
.cdmi-favorite-count[hidden]{display:none!important}
.cdmi-product-card{position:relative}
.cdmi-fav-toggle{position:absolute;right:10px;top:10px;z-index:3;display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--cdmi-line);border-radius:50%;background:#fff;color:var(--cdmi-ink);font:26px/1 Georgia,serif;box-shadow:0 2px 8px #0002;cursor:pointer}
.cdmi-fav-toggle.is-favorite{color:#a76556}
.cdmi-fav-detail{position:relative;inset:auto;border-radius:5px;width:auto;min-height:42px;padding:7px 15px;display:inline-flex;gap:8px;font-size:20px;margin:0 0 14px}
.cdmi-fav-detail span{font:400 14px/1.4 Georgia,serif}
.cdmi-recent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cdmi-fav-remove{color:var(--cdmi-ink);border:1px solid var(--cdmi-line);padding:9px 12px;margin-top:10px;width:100%;background:#fff;border-radius:4px;cursor:pointer}
.cdmi-fav-remove:hover{background:#f6efe6}
.cdmi-wishlist .cdmi-section-heading h1{font:400 clamp(28px,3.1vw,40px)/1.3 Georgia,serif;color:var(--cdmi-ink)}
#cdmi-recent[hidden],#cdmi-favorites-empty[hidden]{display:none!important}
@media(max-width:700px){.cdmi-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.cdmi-fav-toggle{width:32px;height:32px;font-size:22px;right:7px;top:7px}.cdmi-fav-detail{width:auto;height:auto;font-size:20px;margin:0 0 14px}.cdmi-favorites-link{width:35px;height:35px}}
